markdown-text-editor 1.9.0 → 2.0.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (68) hide show
  1. package/README.md +87 -5
  2. package/dist/markdown-text-editor.css +3 -0
  3. package/dist/markdown-text-editor.es.js +730 -786
  4. package/dist/markdown-text-editor.es.js.map +1 -1
  5. package/dist/markdown-text-editor.min.js +65 -64
  6. package/dist/markdown-text-editor.min.js.map +1 -1
  7. package/dist/markdown-text-editor.umd.js +65 -64
  8. package/dist/markdown-text-editor.umd.js.map +1 -1
  9. package/locale/ar.js +55 -0
  10. package/locale/az.js +55 -0
  11. package/locale/bg.js +55 -0
  12. package/locale/bn.js +55 -0
  13. package/locale/bs.js +55 -0
  14. package/locale/ca.js +55 -0
  15. package/locale/cs.js +55 -0
  16. package/locale/da.js +55 -0
  17. package/locale/de.js +55 -0
  18. package/locale/el.js +55 -0
  19. package/locale/es.js +55 -0
  20. package/locale/et.js +55 -0
  21. package/locale/fa.js +55 -0
  22. package/locale/fi.js +55 -0
  23. package/locale/fil.js +55 -0
  24. package/locale/fr.js +55 -0
  25. package/locale/ga.js +55 -0
  26. package/locale/he.js +55 -0
  27. package/locale/hi.js +55 -0
  28. package/locale/hr.js +55 -0
  29. package/locale/hu.js +55 -0
  30. package/locale/hy.js +55 -0
  31. package/locale/id.js +55 -0
  32. package/locale/is.js +55 -0
  33. package/locale/it.js +55 -0
  34. package/locale/ja.js +55 -0
  35. package/locale/kn.js +55 -0
  36. package/locale/ko.js +55 -0
  37. package/locale/locale.d.ts +10 -0
  38. package/locale/lt.js +55 -0
  39. package/locale/lv.js +55 -0
  40. package/locale/mk.js +55 -0
  41. package/locale/mr.js +55 -0
  42. package/locale/ms.js +55 -0
  43. package/locale/mt.js +55 -0
  44. package/locale/nl.js +55 -0
  45. package/locale/no.js +55 -0
  46. package/locale/pl.js +55 -0
  47. package/locale/pt.js +55 -0
  48. package/locale/ro.js +55 -0
  49. package/locale/ru.js +55 -0
  50. package/locale/sk.js +55 -0
  51. package/locale/sl.js +55 -0
  52. package/locale/sq.js +55 -0
  53. package/locale/sr.js +55 -0
  54. package/locale/sv.js +55 -0
  55. package/locale/sw.js +55 -0
  56. package/locale/ta.js +55 -0
  57. package/locale/te.js +55 -0
  58. package/locale/template.js +62 -0
  59. package/locale/th.js +55 -0
  60. package/locale/tr.js +55 -0
  61. package/locale/uk.js +55 -0
  62. package/locale/ur.js +55 -0
  63. package/locale/uz.js +55 -0
  64. package/locale/vi.js +55 -0
  65. package/locale/zh-hk.js +55 -0
  66. package/locale/zh.js +55 -0
  67. package/package.json +22 -9
  68. package/types/index.d.ts +35 -5
@@ -1,4 +1,3 @@
1
- (function(){try{if(typeof document<`u`){var e=document.createElement(`style`);e.appendChild(document.createTextNode(`/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){.markdown-editor-wrapper *,.markdown-editor-wrapper :before,.markdown-editor-wrapper :after,.markdown-editor-wrapper ::backdrop{--tw-border-style:solid;--tw-font-weight:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-content:""}}}:root,:host{--fj-spacing:.25rem;--fj-container-sm:24rem;--fj-text-xs:.75rem;--fj-text-xs--line-height:calc(1 / .75);--fj-font-weight-medium:500;--fj-font-weight-bold:700}.fj\\:me-modal{color:inherit;--radius-modal:calc(var(--border-radius) * 4);z-index:999;overscroll-behavior:contain;pointer-events:none;visibility:hidden;width:100%;max-width:none;height:100%;max-height:none;transition:visibility .2s ease allow-discrete, overlay .2s ease allow-discrete;background-color:#0000;border:none;place-items:center;margin:0;padding:.75rem;display:grid;position:fixed;inset:0;overflow:hidden}.fj\\:me-modal::backdrop{background-color:#000}@supports (color:color-mix(in lab, red, red)){.fj\\:me-modal::backdrop{background-color:var(--lightningcss-light,color-mix(in oklch, black 10%, var(--color-base-600) 40%))var(--lightningcss-dark,color-mix(in oklch, black 10%, var(--color-base-400) 40%))}}.fj\\:me-modal::backdrop{opacity:0;transition:opacity .2s ease-out}.fj\\:me-modal[open]{pointer-events:auto;visibility:visible}.fj\\:me-modal[open]::backdrop{opacity:1}@starting-style{.fj\\:me-modal[open]::backdrop{opacity:0}}.fj\\:me-modal[open]{--modal-content--translate:0 0;--modal-content--scale:1;--modal-content--opacity:1}.fj\\:me-btn{font:inherit;appearance:none;--radius-btn:calc(var(--border-radius) * 2);--color-btn:var(--color-base-soft);--color-on-btn:var(--color-on-base);--color-btn-active:var(--color-base-active);--btn-variant-text:var(--color-on-base);background-color:var(--color-btn);color:var(--color-on-btn,color-contrast(var(--color-btn) vs white, black));--btn--opacity:1;--btn--cursor:pointer;--btn--pointer-events:auto;--btn--border-width:0;--btn--border-style:solid;--btn--border-color:transparent;border-width:var(--btn--border-width);border-style:var(--btn--border-style);border-color:var(--btn--border-color)}.fj\\:me-btn:is(:disabled,[disabled]){--btn--opacity:.5;--btn--cursor:not-allowed;--btn--pointer-events:none}.fj\\:me-btn{opacity:var(--btn--opacity);cursor:pointer;pointer-events:var(--btn--pointer-events);-webkit-user-select:none;user-select:none;text-wrap:nowrap;text-decoration:none}@media (hover:hover){.fj\\:me-btn:hover{background-color:var(--color-btn-active);color:var(--color-on-btn);transition-duration:.22s}}.fj\\:me-btn{border-radius:var(--btn--radius,var(--radius-btn));display:var(--btn--display,inline-flex);padding-inline:var(--btn--shape-padding-inline,var(--btn--padding-inline,1.125rem));padding-block:var(--btn--shape-padding-block,var(--btn--padding-block,.625rem));font-size:var(--btn--font-size,1rem);line-height:calc(var(--btn--font-size,1rem) * var(--btn--line-height,1.5));width:var(--btn--width);max-width:var(--btn--max-width);vertical-align:middle;text-align:center;box-sizing:border-box;flex-wrap:nowrap;flex-shrink:0;justify-content:center;align-items:center;gap:.375rem;font-weight:500;transition:background-color .18s cubic-bezier(.4,0,.2,1),color .18s cubic-bezier(.4,0,.2,1),border-color .18s cubic-bezier(.4,0,.2,1),opacity .2s;position:relative}.fj\\:me-btn:is(input[type=checkbox],input[type=radio]){appearance:none}.fj\\:me-btn:is(input[type=checkbox],input[type=radio]):after{content:attr(aria-label)}.fj\\:me-btn:is(input[type=checkbox],input[type=radio]):checked{isolation:isolate;background-color:var(--color-btn-active)}.fj\\:me-btn:focus-visible{outline-width:2px;outline-style:solid;outline-color:var(--lightningcss-light,var(--color-base-950,currentColor))var(--lightningcss-dark,var(--color-base-50,currentColor));outline-offset:3px;isolation:isolate}.fj\\:me-input{font:inherit;--radius-input:calc(var(--border-radius) * 2);--color-input:var(--color-base-soft);--color-on-input:var(--color-on-base-soft);--color-input-soft:var(--color-base-soft);--color-input-active:var(--color-base-active);--color-on-input-active:var(--color-on-base);--input--inline:.75rem;--input--block:.625rem;--input--font-size:1rem;border-style:solid;border-width:1px;border-color:var(--color-input-active);background-color:#0000}.fj\\:me-input:not([type=file]){padding-inline:var(--input--inline);padding-block:var(--input--block)}.fj\\:me-input{font-size:var(--input--font-size);color:var(--color-on-base);appearance:none;border-radius:var(--radius-input);vertical-align:middle;white-space:nowrap;flex-shrink:0;align-self:flex-start;align-items:center;gap:.5rem;font-weight:500;transition:border-color .25s ease-in-out;display:inline-flex;position:relative}.fj\\:me-input::-moz-placeholder{font-size:var(--input--font-size);color:var(--input-disabled--color)}@supports (color:color-mix(in lab, red, red)){.fj\\:me-input::-moz-placeholder{color:color-mix(in oklab, var(--color-on-base) 30%, transparent)}}.fj\\:me-input::-moz-placeholder{font-weight:400}.fj\\:me-input::placeholder{font-size:var(--input--font-size);color:var(--input-disabled--color)}@supports (color:color-mix(in lab, red, red)){.fj\\:me-input::placeholder{color:color-mix(in oklab, var(--color-on-base) 30%, transparent)}}.fj\\:me-input::placeholder{font-weight:400}.fj\\:me-input::file-selector-button{font-size:var(--input--font-size);padding-inline:var(--input--inline);padding-block:var(--input--block);background-color:var(--color-input);border-inline-end-width:1px;border-style:solid;border-color:var(--color-input-active);font-weight:semibold;color:var(--color-on-input);border-start-start-radius:calc(var(--radius-input) / 2);border-end-start-radius:calc(var(--radius-input) / 2);align-items:center;margin-inline-end:1rem;transition:border-color .3s ease-in-out,background-color .3s ease-in-out,display .3s ease-in-out;display:inline-flex}@media (hover:hover){.fj\\:me-input::file-selector-button:hover{background-color:var(--color-input-active);color:var(--color-on-input-active)}}.fj\\:me-input:is(:disabled,[disabled],.fj\\:me-input-disabled){--input-disabled--cursor:not-allowed;--input-disabled--opacity:.6;--input-disabled--pointer-events:none;--input-disabled--user-select:none;--input-disabled--bg-color:var(--color-base-soft);--input-disabled--color:var(--lightningcss-light,var(--color-base-700))var(--lightningcss-dark,var(--color-base-400));--input-disabled--border-color:var(--input)}@supports (color:color-mix(in lab, red, red)){.fj\\:me-input:is(:disabled,[disabled],.fj\\:me-input-disabled){--input-disabled--border-color:color-mix(in oklab, var(--input) 20%, transparent)}}.fj\\:me-input:is(:disabled,[disabled],.fj\\:me-input-disabled){cursor:var(--input-disabled--cursor);opacity:var(--input-disabled--opacity);pointer-events:var(--input-disabled--pointer-events);background-color:var(--input-disabled--bg-color);color:var(--input-disabled--color);-webkit-user-select:var(--input-disabled--user-select);-moz-user-select:var(--input-disabled--user-select);user-select:var(--input-disabled--user-select);border-color:var(--input-disabled--border-color)}.fj\\:me-input:focus,.fj\\:me-input:focus-within{border-color:var(--lightningcss-light,var(--color-base-800))var(--lightningcss-dark,var(--color-base-300))}@supports (color:color-mix(in lab, red, red)){.fj\\:me-input:focus,.fj\\:me-input:focus-within{border-color:var(--lightningcss-light,var(--color-base-800))var(--lightningcss-dark,color-mix(in oklab, var(--color-base-300) 80%, transparent))}}.fj\\:pointer-events-none{pointer-events:none}.fj\\:me-popover-content{inset:unset;color:inherit;border-radius:var(--radius-popover);visibility:var(--popover-hover--visibility,hidden);opacity:var(--popover-hover--opacity,0);z-index:100;position-anchor:var(--popover--anchor-name);position-area:var(--popover--position-area,block-end span-inline-end);position-try-fallbacks:var(--popover--position-try,none);background-color:var(--color-popover);outline-width:1px;outline-style:solid;outline-color:var(--color-popover-border);transition-behavior:allow-discrete;width:max-content;max-width:min(20rem,90vw);transition-property:opacity,visibility,transform;transition-duration:.2s;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-delay:var(--popover-hover--transition-delay,revert);border:none;margin:0;margin-block-start:var(--popover-placement--mt,0);margin-block-end:var(--popover-placement--mb,0);margin-inline-start:var(--popover-placement--ms,0);margin-inline-end:var(--popover-placement--me,0);padding:.6rem;position:fixed}.fj\\:me-popover-content:hover{--popover-hover--visibility:visible;--popover-hover--opacity:1}.fj\\:me-popover-content[popover]:popover-open{visibility:visible;opacity:1}@starting-style{.fj\\:me-popover-content[popover]:popover-open{visibility:hidden;opacity:0}}.fj\\:me-menu{--color-menu:var(--color-base-soft);--color-on-menu:var(--color-on-base-soft);--color-menu-active:var(--color-base-active);--radius-menu:calc(var(--border-radius) * 4);border-radius:var(--radius-menu);color:currentColor;flex-flow:column wrap;width:fit-content;margin:0;padding:0;font-size:.875rem;list-style:none;display:flex}.fj\\:me-menu :where(ul,li:not(:first-child)){margin-block-start:.375rem}.fj\\:me-menu :where(li ul){white-space:nowrap;color:currentColor;padding:0;margin-block:0;margin-inline-start:.1rem;padding-inline-start:1.4rem;font-size:.875rem;list-style:none;position:relative}.fj\\:me-menu :where(li ul):before{content:"";background-color:var(--color-on-menu);opacity:.1;width:1px;position:absolute;inset-block:.7rem 0;inset-inline-start:.7rem}.fj\\:me-menu :where(summary){margin-block:.375rem;margin-inline:.75rem}.fj\\:me-popover{--radius-popover:calc(var(--border-radius) * 2);--color-popover:var(--color-base);--color-popover-border:var(--color-base-soft);--popover--anchor-name:--popover-anchor;--popover--position-try:flip-block, flip-inline, flip-block flip-inline;anchor-scope:all;display:inline-block;position:relative}.fj\\:absolute{position:absolute}.fj\\:relative{position:relative}.fj\\:sticky{position:sticky}.fj\\:inset-0{inset:0}.fj\\:top-1{top:var(--fj-spacing)}.fj\\:-right-2{right:calc(var(--fj-spacing) * -2)}.fj\\:right-1{right:var(--fj-spacing)}.fj\\:z-0{z-index:0}.fj\\:z-10{z-index:10}.fj\\:z-20{z-index:20}.fj\\:me-modal-content{translate:var(--modal-content--translate,var(--modal-slide--translate,none));scale:var(--modal-content--scale,var(--modal-slide--scale,95%));opacity:var(--modal-content--opacity,0);overscroll-behavior:contain;background-color:var(--color-base);border-radius:var(--radius-modal);border:1px solid var(--color-base-soft);width:91.6667%;max-width:32rem;max-height:100vh;box-shadow:0 4px 6px -1px var(--lightningcss-light,var(--color-base-950))var(--lightningcss-dark,#00000073), 0 10px 32px -4px var(--lightningcss-light,var(--color-base-950))var(--lightningcss-dark,#0000008c);grid-row-start:1;grid-column-start:1;padding:1.5rem;overflow-y:auto}@supports (color:color-mix(in lab, red, red)){.fj\\:me-modal-content{box-shadow:0 4px 6px -1px var(--lightningcss-light,color-mix(in oklch, var(--color-base-950) 12%, transparent))var(--lightningcss-dark,oklch(0% none none/.45)), 0 10px 32px -4px var(--lightningcss-light,color-mix(in oklch, var(--color-base-950) 10%, transparent))var(--lightningcss-dark,oklch(0% none none/.55))}}.fj\\:me-modal-content{transition:translate .2s ease-out,scale .2s ease-out,opacity .2s ease-out,box-shadow .2s ease-out}@media (forced-colors:active){.fj\\:me-modal-content{outline:1px solid}}.fj\\:me-divider{--divider--margin:1rem 0;--color-divider:var(--color-base-soft);--divider-direction:right;--divider--flex-direction:row;--divider--width:100%;--divider--height:1px;--divider-dash-length:10px;--divider-gap-length:0px;flex-direction:var(--divider--flex-direction);width:var(--divider--width);height:var(--divider--height);justify-content:center;align-items:center;display:flex}.fj\\:me-divider:not(:empty){-moz-column-gap:.5rem;text-wrap:nowrap;column-gap:.5rem}.fj\\:me-divider:before,.fj\\:me-divider:after{content:"";margin:var(--divider--margin);width:var(--divider--width);height:var(--divider--height);background:repeating-linear-gradient(to var(--divider-direction), var(--color-divider) 0px, var(--color-divider) var(--divider-dash-length), transparent var(--divider-dash-length), transparent calc(var(--divider-dash-length) + var(--divider-gap-length)))}.fj\\:m-0{margin:0}.fj\\:my-1{margin-block:var(--fj-spacing)}.fj\\:mte-prose{color:var(--tw-prose-body);max-width:65ch}.fj\\:mte-prose :where(p):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.fj\\:mte-prose :where([class~=lead]):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){color:var(--tw-prose-lead);margin-top:1.2em;margin-bottom:1.2em;font-size:1.25em;line-height:1.6}.fj\\:mte-prose :where(a):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){color:var(--tw-prose-links);font-weight:500;text-decoration:underline}.fj\\:mte-prose :where(strong):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){color:var(--tw-prose-bold);font-weight:600}.fj\\:mte-prose :where(a strong):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)),.fj\\:mte-prose :where(blockquote strong):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)),.fj\\:mte-prose :where(thead th strong):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){color:inherit}.fj\\:mte-prose :where(ol):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em;list-style-type:decimal}.fj\\:mte-prose :where(ol[type=A]):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){list-style-type:upper-alpha}.fj\\:mte-prose :where(ol[type=a]):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){list-style-type:lower-alpha}.fj\\:mte-prose :where(ol[type=A s]):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){list-style-type:upper-alpha}.fj\\:mte-prose :where(ol[type=a s]):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){list-style-type:lower-alpha}.fj\\:mte-prose :where(ol[type=I]):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){list-style-type:upper-roman}.fj\\:mte-prose :where(ol[type=i]):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){list-style-type:lower-roman}.fj\\:mte-prose :where(ol[type=I s]):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){list-style-type:upper-roman}.fj\\:mte-prose :where(ol[type=i s]):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){list-style-type:lower-roman}.fj\\:mte-prose :where(ol[type="1"]):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){list-style-type:decimal}.fj\\:mte-prose :where(ul):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em;list-style-type:disc}.fj\\:mte-prose :where(ol>li):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *))::marker{color:var(--tw-prose-counters);font-weight:400}.fj\\:mte-prose :where(ul>li):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *))::marker{color:var(--tw-prose-bullets)}.fj\\:mte-prose :where(dt):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){color:var(--tw-prose-headings);margin-top:1.25em;font-weight:600}.fj\\:mte-prose :where(hr):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){border-color:var(--tw-prose-hr);border-top-width:1px;margin-top:3em;margin-bottom:3em}.fj\\:mte-prose :where(blockquote):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){color:var(--tw-prose-quotes);border-inline-start-width:.25rem;border-inline-start-color:var(--tw-prose-quote-borders);quotes:"“""”""‘""’";margin-top:1.6em;margin-bottom:1.6em;padding-inline-start:1em;font-style:italic;font-weight:500}.fj\\:mte-prose :where(blockquote p:first-of-type):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)):before{content:open-quote}.fj\\:mte-prose :where(blockquote p:last-of-type):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)):after{content:close-quote}.fj\\:mte-prose :where(h1):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){color:var(--tw-prose-headings);margin-top:0;margin-bottom:.888889em;font-size:2.25em;font-weight:800;line-height:1.11111}.fj\\:mte-prose :where(h1 strong):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){color:inherit;font-weight:900}.fj\\:mte-prose :where(h2):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){color:var(--tw-prose-headings);margin-top:2em;margin-bottom:1em;font-size:1.5em;font-weight:700;line-height:1.33333}.fj\\:mte-prose :where(h2 strong):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){color:inherit;font-weight:800}.fj\\:mte-prose :where(h3):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){color:var(--tw-prose-headings);margin-top:1.6em;margin-bottom:.6em;font-size:1.25em;font-weight:600;line-height:1.6}.fj\\:mte-prose :where(h3 strong):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){color:inherit;font-weight:700}.fj\\:mte-prose :where(h4):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){color:var(--tw-prose-headings);margin-top:1.5em;margin-bottom:.5em;font-weight:600;line-height:1.5}.fj\\:mte-prose :where(h4 strong):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){color:inherit;font-weight:700}.fj\\:mte-prose :where(img):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:2em;margin-bottom:2em}.fj\\:mte-prose :where(picture):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:2em;margin-bottom:2em;display:block}.fj\\:mte-prose :where(video):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:2em;margin-bottom:2em}.fj\\:mte-prose :where(kbd):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){color:var(--tw-prose-kbd);box-shadow:0 0 0 1px var(--tw-prose-kbd-shadows), 0 3px 0 var(--tw-prose-kbd-shadows);padding-top:.1875em;padding-inline-end:.375em;padding-bottom:.1875em;border-radius:.3125rem;padding-inline-start:.375em;font-family:inherit;font-size:.875em;font-weight:500}.fj\\:mte-prose :where(code):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){color:var(--tw-prose-code);font-size:.875em;font-weight:600}.fj\\:mte-prose :where(code):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)):before,.fj\\:mte-prose :where(code):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)):after{content:"\`"}.fj\\:mte-prose :where(a code):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)),.fj\\:mte-prose :where(h1 code):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){color:inherit}.fj\\:mte-prose :where(h2 code):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){color:inherit;font-size:.875em}.fj\\:mte-prose :where(h3 code):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){color:inherit;font-size:.9em}.fj\\:mte-prose :where(h4 code):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)),.fj\\:mte-prose :where(blockquote code):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)),.fj\\:mte-prose :where(thead th code):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){color:inherit}.fj\\:mte-prose :where(pre):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){color:var(--tw-prose-pre-code);background-color:var(--tw-prose-pre-bg);padding-top:.857143em;padding-inline-end:1.14286em;padding-bottom:.857143em;border-radius:.375rem;margin-top:1.71429em;margin-bottom:1.71429em;padding-inline-start:1.14286em;font-size:.875em;font-weight:400;line-height:1.71429;overflow-x:auto}.fj\\:mte-prose :where(pre code):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){font-weight:inherit;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit;background-color:#0000;border-width:0;border-radius:0;padding:0}.fj\\:mte-prose :where(pre code):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)):before,.fj\\:mte-prose :where(pre code):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)):after{content:none}.fj\\:mte-prose :where(table):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){table-layout:auto;width:100%;margin-top:2em;margin-bottom:2em;font-size:.875em;line-height:1.71429}.fj\\:mte-prose :where(thead):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-th-borders)}.fj\\:mte-prose :where(thead th):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){color:var(--tw-prose-headings);vertical-align:bottom;padding-inline-end:.571429em;padding-bottom:.571429em;padding-inline-start:.571429em;font-weight:600}.fj\\:mte-prose :where(tbody tr):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-td-borders)}.fj\\:mte-prose :where(tbody tr:last-child):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){border-bottom-width:0}.fj\\:mte-prose :where(tbody td):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){vertical-align:baseline}.fj\\:mte-prose :where(tfoot):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){border-top-width:1px;border-top-color:var(--tw-prose-th-borders)}.fj\\:mte-prose :where(tfoot td):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){vertical-align:top}.fj\\:mte-prose :where(th,td):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){text-align:start}.fj\\:mte-prose :where(figure>*):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:0;margin-bottom:0}.fj\\:mte-prose :where(figcaption):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){color:var(--tw-prose-captions);margin-top:.857143em;font-size:.875em;line-height:1.42857}.fj\\:mte-prose{--tw-prose-body:oklch(37.3% .034 259.733);--tw-prose-headings:oklch(21% .034 264.665);--tw-prose-lead:oklch(44.6% .03 256.802);--tw-prose-links:oklch(21% .034 264.665);--tw-prose-bold:oklch(21% .034 264.665);--tw-prose-counters:oklch(55.1% .027 264.364);--tw-prose-bullets:oklch(87.2% .01 258.338);--tw-prose-hr:oklch(92.8% .006 264.531);--tw-prose-quotes:oklch(21% .034 264.665);--tw-prose-quote-borders:oklch(92.8% .006 264.531);--tw-prose-captions:oklch(55.1% .027 264.364);--tw-prose-kbd:oklch(21% .034 264.665);--tw-prose-kbd-shadows:oklab(21% -.00316127 -.0338527/.1);--tw-prose-code:oklch(21% .034 264.665);--tw-prose-pre-code:oklch(92.8% .006 264.531);--tw-prose-pre-bg:oklch(27.8% .033 256.848);--tw-prose-th-borders:oklch(87.2% .01 258.338);--tw-prose-td-borders:oklch(92.8% .006 264.531);--tw-prose-invert-body:oklch(87.2% .01 258.338);--tw-prose-invert-headings:#fff;--tw-prose-invert-lead:oklch(70.7% .022 261.325);--tw-prose-invert-links:#fff;--tw-prose-invert-bold:#fff;--tw-prose-invert-counters:oklch(70.7% .022 261.325);--tw-prose-invert-bullets:oklch(44.6% .03 256.802);--tw-prose-invert-hr:oklch(37.3% .034 259.733);--tw-prose-invert-quotes:oklch(96.7% .003 264.542);--tw-prose-invert-quote-borders:oklch(37.3% .034 259.733);--tw-prose-invert-captions:oklch(70.7% .022 261.325);--tw-prose-invert-kbd:#fff;--tw-prose-invert-kbd-shadows:#ffffff1a;--tw-prose-invert-code:#fff;--tw-prose-invert-pre-code:oklch(87.2% .01 258.338);--tw-prose-invert-pre-bg:#00000080;--tw-prose-invert-th-borders:oklch(44.6% .03 256.802);--tw-prose-invert-td-borders:oklch(37.3% .034 259.733);font-size:1rem;line-height:1.75}.fj\\:mte-prose :where(picture>img):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:0;margin-bottom:0}.fj\\:mte-prose :where(li):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:.5em;margin-bottom:.5em}.fj\\:mte-prose :where(ol>li):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)),.fj\\:mte-prose :where(ul>li):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){padding-inline-start:.375em}.fj\\:mte-prose :where(.fj\\:mte-prose>ul>li p):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:.75em;margin-bottom:.75em}.fj\\:mte-prose :where(.fj\\:mte-prose>ul>li>p:first-child):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:1.25em}.fj\\:mte-prose :where(.fj\\:mte-prose>ul>li>p:last-child):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-bottom:1.25em}.fj\\:mte-prose :where(.fj\\:mte-prose>ol>li>p:first-child):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:1.25em}.fj\\:mte-prose :where(.fj\\:mte-prose>ol>li>p:last-child):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-bottom:1.25em}.fj\\:mte-prose :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:.75em;margin-bottom:.75em}.fj\\:mte-prose :where(dl):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.fj\\:mte-prose :where(dd):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:.5em;padding-inline-start:1.625em}.fj\\:mte-prose :where(hr+*):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)),.fj\\:mte-prose :where(h2+*):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)),.fj\\:mte-prose :where(h3+*):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)),.fj\\:mte-prose :where(h4+*):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:0}.fj\\:mte-prose :where(thead th:first-child):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){padding-inline-start:0}.fj\\:mte-prose :where(thead th:last-child):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){padding-inline-end:0}.fj\\:mte-prose :where(tbody td,tfoot td):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){padding-top:.571429em;padding-inline-end:.571429em;padding-bottom:.571429em;padding-inline-start:.571429em}.fj\\:mte-prose :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){padding-inline-start:0}.fj\\:mte-prose :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){padding-inline-end:0}.fj\\:mte-prose :where(figure):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:2em;margin-bottom:2em}.fj\\:mte-prose :where(.fj\\:mte-prose>:first-child):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:0}.fj\\:mte-prose :where(.fj\\:mte-prose>:last-child):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-bottom:0}.fj\\:mte-prose-sm{font-size:.875rem;line-height:1.71429}.fj\\:mte-prose-sm :where(p):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:1.14286em;margin-bottom:1.14286em}.fj\\:mte-prose-sm :where([class~=lead]):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:.888889em;margin-bottom:.888889em;font-size:1.28571em;line-height:1.55556}.fj\\:mte-prose-sm :where(blockquote):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:1.33333em;margin-bottom:1.33333em;padding-inline-start:1.11111em}.fj\\:mte-prose-sm :where(h1):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:0;margin-bottom:.8em;font-size:2.14286em;line-height:1.2}.fj\\:mte-prose-sm :where(h2):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:1.6em;margin-bottom:.8em;font-size:1.42857em;line-height:1.4}.fj\\:mte-prose-sm :where(h3):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:1.55556em;margin-bottom:.444444em;font-size:1.28571em;line-height:1.55556}.fj\\:mte-prose-sm :where(h4):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:1.42857em;margin-bottom:.571429em;line-height:1.42857}.fj\\:mte-prose-sm :where(img):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)),.fj\\:mte-prose-sm :where(picture):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:1.71429em;margin-bottom:1.71429em}.fj\\:mte-prose-sm :where(picture>img):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:0;margin-bottom:0}.fj\\:mte-prose-sm :where(video):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:1.71429em;margin-bottom:1.71429em}.fj\\:mte-prose-sm :where(kbd):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){padding-top:.142857em;padding-inline-end:.357143em;padding-bottom:.142857em;border-radius:.3125rem;padding-inline-start:.357143em;font-size:.857143em}.fj\\:mte-prose-sm :where(code):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){font-size:.857143em}.fj\\:mte-prose-sm :where(h2 code):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){font-size:.9em}.fj\\:mte-prose-sm :where(h3 code):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){font-size:.888889em}.fj\\:mte-prose-sm :where(pre):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){padding-top:.666667em;padding-inline-end:1em;padding-bottom:.666667em;border-radius:.25rem;margin-top:1.66667em;margin-bottom:1.66667em;padding-inline-start:1em;font-size:.857143em;line-height:1.66667}.fj\\:mte-prose-sm :where(ol):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)),.fj\\:mte-prose-sm :where(ul):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:1.14286em;margin-bottom:1.14286em;padding-inline-start:1.57143em}.fj\\:mte-prose-sm :where(li):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:.285714em;margin-bottom:.285714em}.fj\\:mte-prose-sm :where(ol>li):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)),.fj\\:mte-prose-sm :where(ul>li):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){padding-inline-start:.428571em}.fj\\:mte-prose-sm :where(.fj\\:mte-prose-sm>ul>li p):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:.571429em;margin-bottom:.571429em}.fj\\:mte-prose-sm :where(.fj\\:mte-prose-sm>ul>li>p:first-child):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:1.14286em}.fj\\:mte-prose-sm :where(.fj\\:mte-prose-sm>ul>li>p:last-child):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-bottom:1.14286em}.fj\\:mte-prose-sm :where(.fj\\:mte-prose-sm>ol>li>p:first-child):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:1.14286em}.fj\\:mte-prose-sm :where(.fj\\:mte-prose-sm>ol>li>p:last-child):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-bottom:1.14286em}.fj\\:mte-prose-sm :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:.571429em;margin-bottom:.571429em}.fj\\:mte-prose-sm :where(dl):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:1.14286em;margin-bottom:1.14286em}.fj\\:mte-prose-sm :where(dt):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:1.14286em}.fj\\:mte-prose-sm :where(dd):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:.285714em;padding-inline-start:1.57143em}.fj\\:mte-prose-sm :where(hr):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:2.85714em;margin-bottom:2.85714em}.fj\\:mte-prose-sm :where(hr+*):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)),.fj\\:mte-prose-sm :where(h2+*):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)),.fj\\:mte-prose-sm :where(h3+*):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)),.fj\\:mte-prose-sm :where(h4+*):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:0}.fj\\:mte-prose-sm :where(table):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){font-size:.857143em;line-height:1.5}.fj\\:mte-prose-sm :where(thead th):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){padding-inline-end:1em;padding-bottom:.666667em;padding-inline-start:1em}.fj\\:mte-prose-sm :where(thead th:first-child):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){padding-inline-start:0}.fj\\:mte-prose-sm :where(thead th:last-child):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){padding-inline-end:0}.fj\\:mte-prose-sm :where(tbody td,tfoot td):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){padding-top:.666667em;padding-inline-end:1em;padding-bottom:.666667em;padding-inline-start:1em}.fj\\:mte-prose-sm :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){padding-inline-start:0}.fj\\:mte-prose-sm :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){padding-inline-end:0}.fj\\:mte-prose-sm :where(figure):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:1.71429em;margin-bottom:1.71429em}.fj\\:mte-prose-sm :where(figure>*):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:0;margin-bottom:0}.fj\\:mte-prose-sm :where(figcaption):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:.666667em;font-size:.857143em;line-height:1.33333}.fj\\:mte-prose-sm :where(.fj\\:mte-prose-sm>:first-child):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:0}.fj\\:mte-prose-sm :where(.fj\\:mte-prose-sm>:last-child):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-bottom:0}.fj\\:mt-4{margin-top:calc(var(--fj-spacing) * 4)}.fj\\:mb-1{margin-bottom:var(--fj-spacing)}.fj\\:box-border{box-sizing:border-box}.fj\\:me-menu-item{font:inherit;color:currentColor;border-radius:calc(var(--radius-menu) / 2);text-align:start;text-wrap:balance;-webkit-user-select:none;user-select:none;appearance:none;cursor:pointer;width:100%;padding-block:.375rem;padding-inline:.75rem;background:0 0;border:none;grid-auto-columns:minmax(auto,max-content) auto max-content;grid-auto-flow:column;align-content:flex-start;align-items:center;gap:.5rem;padding-inline-end:var(--menu-horizontal--padding-inline-end,.75rem);font-size:.875rem;text-decoration:none;transition-property:color,background-color,box-shadow;transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1);display:grid}@media (hover:hover){.fj\\:me-menu-item:hover{background-color:var(--color-menu);color:var(--color-on-menu)}}.fj\\:me-menu-item:focus-within{background-color:var(--color-menu);color:var(--color-on-menu);cursor:pointer;outline-style:none}@media (forced-colors:active){.fj\\:me-menu-item:focus-within{outline-offset:2px;outline:2px solid #0000}}.fj\\:me-menu-item :where(a,button):focus-visible{outline:2px solid #0000}@media (forced-colors:active){.fj\\:me-menu-item :where(a,button):focus-visible{outline-offset:2px;outline:2px solid #0000}}.fj\\:flex{display:flex}.fj\\:grid{display:grid}.fj\\:hidden{display:none}.fj\\:me-btn-circle{--btn--radius:9999px;--btn--shape-padding-inline:var(--btn-circle--padding-block,.625rem);--btn--shape-padding-block:var(--btn-circle--padding-block,.625rem);aspect-ratio:1}.fj\\:me-btn-square{--btn--shape-padding-inline:var(--btn-square--padding-block,.625rem);--btn--shape-padding-block:var(--btn-square--padding-block,.625rem);aspect-ratio:1}.fj\\:h-full{height:100%}.fj\\:h-full\\!{height:100%!important}.fj\\:min-h-0{min-height:0}.fj\\:w-36{width:calc(var(--fj-spacing) * 36)}.fj\\:w-full{width:100%}.fj\\:max-w-full{max-width:100%}.fj\\:max-w-sm{max-width:var(--fj-container-sm)}.fj\\:min-w-\\[3\\.5rem\\]{min-width:3.5rem}.fj\\:flex-1{flex:1}.fj\\:resize-none{resize:none}.fj\\:appearance-none{appearance:none}.fj\\:grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.fj\\:flex-col{flex-direction:column}.fj\\:items-center{align-items:center}.fj\\:me-modal-top{align-items:start}.fj\\:justify-between{justify-content:space-between}.fj\\:justify-center{justify-content:center}.fj\\:me-modal-center{justify-items:center}.fj\\:gap-1{gap:var(--fj-spacing)}.fj\\:gap-3{gap:calc(var(--fj-spacing) * 3)}.fj\\:gap-x-1{column-gap:var(--fj-spacing)}.fj\\:gap-y-4{row-gap:calc(var(--fj-spacing) * 4)}.fj\\:gap-y-4\\.5{row-gap:calc(var(--fj-spacing) * 4.5)}.fj\\:self-end{align-self:flex-end}.fj\\:overflow-hidden{overflow:hidden}.fj\\:overflow-x-auto{overflow-x:auto}.fj\\:overflow-y-auto{overflow-y:auto}.fj\\:me-surface-rounded{border-radius:calc(var(--border-radius) * 2)}.fj\\:me-surface-outline{border-style:solid;border-width:1px;border-color:var(--color-base-soft);background-color:#0000}.fj\\:border-0{border-style:var(--tw-border-style);border-width:0}.fj\\:border-t{border-top-style:var(--tw-border-style);border-top-width:1px}.fj\\:border-b{border-bottom-style:var(--tw-border-style);border-bottom-width:1px}.fj\\:border-l{border-left-style:var(--tw-border-style);border-left-width:1px}.fj\\:border-base-soft{border-color:var(--color-base-soft)}.fj\\:me-surface{--surface--bg-color:var(--color-base);--surface--color:var(--color-on-base);background-color:var(--surface--bg-color);color:var(--surface--color);padding:var(--surface--padding)}.fj\\:me-btn-ghost{color:var(--btn-variant-text);--btn--border-width:0;background-color:#0000}.fj\\:bg-transparent{background-color:#0000}.fj\\:p-1\\.5{padding:calc(var(--fj-spacing) * 1.5)}.fj\\:p-2{padding:calc(var(--fj-spacing) * 2)}.fj\\:me-menu-title{color:var(--color-base-700);padding-inline:.75rem;padding-block:var(--menu-title--padding-block,.375rem);font-size:.875rem;font-weight:600}.fj\\:px-1\\.5{padding-inline:calc(var(--fj-spacing) * 1.5)}.fj\\:px-3{padding-inline:calc(var(--fj-spacing) * 3)}.fj\\:px-4{padding-inline:calc(var(--fj-spacing) * 4)}.fj\\:py-1{padding-block:var(--fj-spacing)}.fj\\:py-2{padding-block:calc(var(--fj-spacing) * 2)}.fj\\:text-center{text-align:center}.fj\\:me-heading-lg{--heading-size:1.125rem;color:var(--color-on-base);text-wrap-style:balance;font-weight:700;font-size:var(--heading-size);line-height:1.15}.fj\\:me-heading-md{color:var(--color-on-base);text-wrap-style:balance;font-weight:700;font-size:var(--heading-size);--heading-size:1rem;line-height:1.15}.fj\\:me-heading-sm{--heading-size:.875rem;color:var(--color-on-base);text-wrap-style:balance;font-weight:700;font-size:var(--heading-size);line-height:1.15}.fj\\:me-heading-xl{--heading-size:1.25rem;color:var(--color-on-base);text-wrap-style:balance;font-weight:700;font-size:var(--heading-size);line-height:1.15}.fj\\:me-heading-xs{--heading-size:.75rem;color:var(--color-on-base);text-wrap-style:balance;font-weight:700;font-size:var(--heading-size);line-height:1.15}.fj\\:text-xs{font-size:var(--fj-text-xs);line-height:var(--tw-leading,var(--fj-text-xs--line-height))}.fj\\:font-bold{--tw-font-weight:var(--fj-font-weight-bold);font-weight:var(--fj-font-weight-bold)}.fj\\:font-medium{--tw-font-weight:var(--fj-font-weight-medium);font-weight:var(--fj-font-weight-medium)}.fj\\:wrap-break-word{overflow-wrap:break-word}.fj\\:whitespace-nowrap{white-space:nowrap}.fj\\:whitespace-pre-wrap{white-space:pre-wrap}.fj\\:text-accent{color:var(--lightningcss-light,var(--color-accent-700))var(--lightningcss-dark,var(--color-accent-300))}.fj\\:text-primary{color:var(--lightningcss-light,var(--color-primary-700))var(--lightningcss-dark,var(--color-primary-300))}.fj\\:text-secondary{color:var(--lightningcss-light,var(--color-secondary-700))var(--lightningcss-dark,var(--color-secondary-300))}.fj\\:text-transparent{color:#0000}.fj\\:line-through{text-decoration-line:line-through}.fj\\:underline{text-decoration-line:underline}.fj\\:caret-primary{caret-color:var(--color-primary-500)}.fj\\:opacity-25{opacity:.25}.fj\\:opacity-30{opacity:.3}.fj\\:opacity-40{opacity:.4}.fj\\:opacity-50{opacity:.5}.fj\\:opacity-60{opacity:.6}.fj\\:opacity-70{opacity:.7}.fj\\:shadow-lg{--tw-shadow:0 10px 15px -3px var(--tw-shadow-color,#0000001a), 0 4px 6px -4px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.fj\\:outline-0{outline-style:var(--tw-outline-style);outline-width:0}.fj\\:me-prose-frutjam{--tw-prose-body:var(--color-body);--tw-prose-headings:var(--color-on-base);--tw-prose-lead:var(--color-on-neutral);--tw-prose-bold:var(--color-on-base);--tw-prose-links:var(--color-primary);--tw-prose-counters:var(--color-neutral);--tw-prose-bullets:var(--color-neutral);--tw-prose-hr:var(--color-base-soft);--tw-prose-quotes:var(--color-on-base);--tw-prose-quote-borders:var(--color-primary);--tw-prose-code:var(--color-on-base);--tw-prose-pre-code:var(--color-on-base);--tw-prose-pre-bg:var(--color-base-soft);--tw-prose-th-borders:var(--color-base-soft);--tw-prose-td-borders:var(--color-base-soft);--tw-prose-captions:var(--color-on-neutral);--tw-prose-kbd:var(--color-body);--tw-prose-invert-body:var(--color-on-neutral);--tw-prose-invert-headings:var(--color-on-base);--tw-prose-invert-links:var(--color-primary)}.fj\\:me-btn-sm{--btn--padding-inline:1rem;--btn--padding-block:.5rem;--btn--font-size:.875rem;--btn--line-height:1.4;--btn-square--padding-block:.5rem;--btn-circle--padding-block:.5rem}.fj\\:me-btn-xs{--btn--padding-inline:.875rem;--btn--padding-block:.375rem;--btn--font-size:.75rem;--btn--line-height:1.3;--btn-square--padding-block:.375rem;--btn-circle--padding-block:.375rem}.fj\\:me-input-xs{--input--inline:.475rem;--input--block:.375rem;--input--font-size:.75rem;--input--square-size:2rem}.fj\\:outline-none{--tw-outline-style:none;outline-style:none}.fj\\:select-none{-webkit-user-select:none;user-select:none}.fj\\:me-btn-active{--color-btn:var(--color-btn-active)}.fj\\:me-popover-toggle{anchor-name:var(--popover--anchor-name)}.fj\\:empty\\:after\\:absolute:empty:after{content:var(--tw-content);position:absolute}.fj\\:empty\\:after\\:inset-0:empty:after{content:var(--tw-content);inset:0}.fj\\:empty\\:after\\:px-4:empty:after{content:var(--tw-content);padding-inline:calc(var(--fj-spacing) * 4)}.fj\\:empty\\:after\\:py-2:empty:after{content:var(--tw-content);padding-block:calc(var(--fj-spacing) * 2)}.fj\\:empty\\:after\\:text-\\[CanvasText\\]:empty:after{content:var(--tw-content);color:canvastext}.fj\\:empty\\:after\\:opacity-50:empty:after{content:var(--tw-content);opacity:.5}.fj\\:empty\\:after\\:content-\\[attr\\(data-placeholder\\)\\]:empty:after{--tw-content:attr(data-placeholder);content:var(--tw-content)}.fj\\:focus\\:ring-0:focus{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.fj\\:focus\\:outline-0:focus{outline-style:var(--tw-outline-style);outline-width:0}@media (width>=48rem){.fj\\:md\\:pointer-events-auto{pointer-events:auto}.fj\\:md\\:mte-prose-base{font-size:1rem;line-height:1.75}.fj\\:md\\:mte-prose-base :where(p):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.fj\\:md\\:mte-prose-base :where([class~=lead]):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:1.2em;margin-bottom:1.2em;font-size:1.25em;line-height:1.6}.fj\\:md\\:mte-prose-base :where(blockquote):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:1.6em;margin-bottom:1.6em;padding-inline-start:1em}.fj\\:md\\:mte-prose-base :where(h1):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:0;margin-bottom:.888889em;font-size:2.25em;line-height:1.11111}.fj\\:md\\:mte-prose-base :where(h2):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:2em;margin-bottom:1em;font-size:1.5em;line-height:1.33333}.fj\\:md\\:mte-prose-base :where(h3):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:1.6em;margin-bottom:.6em;font-size:1.25em;line-height:1.6}.fj\\:md\\:mte-prose-base :where(h4):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:1.5em;margin-bottom:.5em;line-height:1.5}.fj\\:md\\:mte-prose-base :where(img):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)),.fj\\:md\\:mte-prose-base :where(picture):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:2em;margin-bottom:2em}.fj\\:md\\:mte-prose-base :where(picture>img):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:0;margin-bottom:0}.fj\\:md\\:mte-prose-base :where(video):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:2em;margin-bottom:2em}.fj\\:md\\:mte-prose-base :where(kbd):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){padding-top:.1875em;padding-inline-end:.375em;padding-bottom:.1875em;border-radius:.3125rem;padding-inline-start:.375em;font-size:.875em}.fj\\:md\\:mte-prose-base :where(code):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)),.fj\\:md\\:mte-prose-base :where(h2 code):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){font-size:.875em}.fj\\:md\\:mte-prose-base :where(h3 code):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){font-size:.9em}.fj\\:md\\:mte-prose-base :where(pre):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){padding-top:.857143em;padding-inline-end:1.14286em;padding-bottom:.857143em;border-radius:.375rem;margin-top:1.71429em;margin-bottom:1.71429em;padding-inline-start:1.14286em;font-size:.875em;line-height:1.71429}.fj\\:md\\:mte-prose-base :where(ol):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)),.fj\\:md\\:mte-prose-base :where(ul):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em}.fj\\:md\\:mte-prose-base :where(li):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:.5em;margin-bottom:.5em}.fj\\:md\\:mte-prose-base :where(ol>li):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)),.fj\\:md\\:mte-prose-base :where(ul>li):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){padding-inline-start:.375em}.fj\\:md\\:mte-prose-base :where(.fj\\:mte-prose-base>ul>li p):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:.75em;margin-bottom:.75em}.fj\\:md\\:mte-prose-base :where(.fj\\:mte-prose-base>ul>li>p:first-child):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:1.25em}.fj\\:md\\:mte-prose-base :where(.fj\\:mte-prose-base>ul>li>p:last-child):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-bottom:1.25em}.fj\\:md\\:mte-prose-base :where(.fj\\:mte-prose-base>ol>li>p:first-child):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:1.25em}.fj\\:md\\:mte-prose-base :where(.fj\\:mte-prose-base>ol>li>p:last-child):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-bottom:1.25em}.fj\\:md\\:mte-prose-base :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:.75em;margin-bottom:.75em}.fj\\:md\\:mte-prose-base :where(dl):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.fj\\:md\\:mte-prose-base :where(dt):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:1.25em}.fj\\:md\\:mte-prose-base :where(dd):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:.5em;padding-inline-start:1.625em}.fj\\:md\\:mte-prose-base :where(hr):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:3em;margin-bottom:3em}.fj\\:md\\:mte-prose-base :where(hr+*):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)),.fj\\:md\\:mte-prose-base :where(h2+*):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)),.fj\\:md\\:mte-prose-base :where(h3+*):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)),.fj\\:md\\:mte-prose-base :where(h4+*):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:0}.fj\\:md\\:mte-prose-base :where(table):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){font-size:.875em;line-height:1.71429}.fj\\:md\\:mte-prose-base :where(thead th):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){padding-inline-end:.571429em;padding-bottom:.571429em;padding-inline-start:.571429em}.fj\\:md\\:mte-prose-base :where(thead th:first-child):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){padding-inline-start:0}.fj\\:md\\:mte-prose-base :where(thead th:last-child):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){padding-inline-end:0}.fj\\:md\\:mte-prose-base :where(tbody td,tfoot td):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){padding-top:.571429em;padding-inline-end:.571429em;padding-bottom:.571429em;padding-inline-start:.571429em}.fj\\:md\\:mte-prose-base :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){padding-inline-start:0}.fj\\:md\\:mte-prose-base :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){padding-inline-end:0}.fj\\:md\\:mte-prose-base :where(figure):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:2em;margin-bottom:2em}.fj\\:md\\:mte-prose-base :where(figure>*):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:0;margin-bottom:0}.fj\\:md\\:mte-prose-base :where(figcaption):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:.857143em;font-size:.875em;line-height:1.42857}.fj\\:md\\:mte-prose-base :where(.fj\\:mte-prose-base>:first-child):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-top:0}.fj\\:md\\:mte-prose-base :where(.fj\\:mte-prose-base>:last-child):not(:where([class~=not-mte-prose],[class~=not-mte-prose] *)){margin-bottom:0}.fj\\:md\\:grid{display:grid}.fj\\:md\\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.fj\\:md\\:opacity-100{opacity:1}}@media (width>=64rem){.fj\\:lg\\:me-modal-middle{align-items:center}}.markdown-editor-wrapper{--lightningcss-light:initial;--lightningcss-dark: ;resize:vertical}@media (prefers-color-scheme:dark){.markdown-editor-wrapper{--lightningcss-light: ;--lightningcss-dark:initial}}.markdown-editor-wrapper[data-theme=dark],[data-theme=dark] .markdown-editor-wrapper,.markdown-editor-wrapper[data-theme=darkberry],[data-theme=darkberry] .markdown-editor-wrapper{--lightningcss-light: ;--lightningcss-dark:initial}.markdown-editor-wrapper[data-theme=light],[data-theme=light] .markdown-editor-wrapper,.markdown-editor-wrapper[data-theme=snowberry],[data-theme=snowberry] .markdown-editor-wrapper{--lightningcss-light:initial;--lightningcss-dark: }.textarea-wrapper:has(.display-layer) .editor-textarea{scrollbar-gutter:stable}.display-layer{scrollbar-gutter:stable;scrollbar-color:transparent transparent}.display-layer::-webkit-scrollbar{background:0 0}.display-layer::-webkit-scrollbar-track{background:0 0}.display-layer::-webkit-scrollbar-thumb{background:0 0;border-color:#0000}.display-layer .faux-bold{text-shadow:0 0 .5px,0 0 .5px}.editor-textarea{font:inherit;box-sizing:border-box;scrollbar-gutter:stable}.textarea-wrapper:has(.display-layer) .editor-textarea::selection{background:var(--color-primary)}@supports (color:color-mix(in lab, red, red)){.textarea-wrapper:has(.display-layer) .editor-textarea::selection{background:color-mix(in oklch, var(--color-primary), transparent 80%)}}.textarea-wrapper:has(.display-layer) .editor-textarea::selection{color:#0000;caret-color:var(--color-primary)}.markdown-editor-wrapper.is-fullscreen{resize:none;height:100dvh;z-index:var(--mte-fullscreen-z-index,10000);top:0;border-radius:0;position:fixed;inset-inline:0}@layer base{@layer base{.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--palette-shade-light-color:white;--palette-shade-dark-color:black;--color-body:currentColor}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-body:color-mix(in oklch, currentColor 80%, transparent)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color-scheme:var(--scheme-color,light);color:var(--color-on-base);background-color:var(--color-base);--color-base-soft:var(--lightningcss-light,var(--color-on-base))var(--lightningcss-dark,var(--color-on-base))}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-base-soft:var(--lightningcss-light,color-mix(in oklch, var(--color-on-base) 8%, var(--color-base) 92%))var(--lightningcss-dark,color-mix(in oklch, var(--color-on-base) 16%, var(--color-base) 84%))}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-on-base-soft:var(--color-on-base);--color-base-active:var(--lightningcss-light,var(--color-on-base))var(--lightningcss-dark,var(--color-on-base))}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-base-active:var(--lightningcss-light,color-mix(in oklch, var(--color-on-base) 14%, var(--color-base) 86%))var(--lightningcss-dark,color-mix(in oklch, var(--color-on-base) 26%, var(--color-base) 74%))}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-base-50:var(--color-on-base)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-base-50:color-mix(in oklch, var(--color-on-base) 4%, var(--color-base) 96%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-base-100:var(--color-on-base)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-base-100:color-mix(in oklch, var(--color-on-base) 8%, var(--color-base) 92%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-base-200:var(--color-on-base)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-base-200:color-mix(in oklch, var(--color-on-base) 16%, var(--color-base) 84%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-base-300:var(--color-on-base)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-base-300:color-mix(in oklch, var(--color-on-base) 26%, var(--color-base) 74%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-base-400:var(--color-on-base)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-base-400:color-mix(in oklch, var(--color-on-base) 36%, var(--color-base) 64%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-base-500:var(--color-base);--color-base-600:var(--color-on-base)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-base-600:color-mix(in oklch, var(--color-on-base) 50%, var(--color-base) 50%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-base-700:var(--color-on-base)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-base-700:color-mix(in oklch, var(--color-on-base) 62%, var(--color-base) 38%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-base-800:var(--color-on-base)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-base-800:color-mix(in oklch, var(--color-on-base) 74%, var(--color-base) 26%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-base-900:var(--color-on-base)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-base-900:color-mix(in oklch, var(--color-on-base) 86%, var(--color-base) 14%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-base-950:var(--color-on-base)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-base-950:color-mix(in oklch, var(--color-on-base) 92%, var(--color-base) 8%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-neutral-soft:var(--lightningcss-light,var(--color-neutral-50))var(--lightningcss-dark,var(--color-neutral))}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-neutral-soft:var(--lightningcss-light,var(--color-neutral-50))var(--lightningcss-dark,color-mix(in srgb, var(--color-neutral) 20%, var(--color-base) 80%))}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-on-neutral-soft:var(--lightningcss-light,var(--color-neutral-700))var(--lightningcss-dark,var(--color-neutral-300));--color-neutral-active:var(--lightningcss-light,var(--palette-shade-dark-color))var(--lightningcss-dark,var(--palette-shade-light-color))}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-neutral-active:var(--lightningcss-light,color-mix(in oklch, var(--palette-shade-dark-color) 15%, var(--color-neutral) 85%))var(--lightningcss-dark,color-mix(in oklch, var(--palette-shade-light-color) 15%, var(--color-neutral) 85%))}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-neutral-50:var(--palette-shade-light-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-neutral-50:color-mix(in oklch, var(--palette-shade-light-color) 80%, var(--color-neutral) 20%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-neutral-100:var(--palette-shade-light-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-neutral-100:color-mix(in oklch, var(--palette-shade-light-color) 65%, var(--color-neutral) 35%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-neutral-200:var(--palette-shade-light-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-neutral-200:color-mix(in oklch, var(--palette-shade-light-color) 50%, var(--color-neutral) 50%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-neutral-300:var(--palette-shade-light-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-neutral-300:color-mix(in oklch, var(--palette-shade-light-color) 35%, var(--color-neutral) 65%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-neutral-400:var(--palette-shade-light-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-neutral-400:color-mix(in oklch, var(--palette-shade-light-color) 18%, var(--color-neutral) 82%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-neutral-500:var(--color-neutral);--color-neutral-600:var(--palette-shade-dark-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-neutral-600:color-mix(in oklch, var(--palette-shade-dark-color) 18%, var(--color-neutral) 82%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-neutral-700:var(--palette-shade-dark-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-neutral-700:color-mix(in oklch, var(--palette-shade-dark-color) 34%, var(--color-neutral) 66%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-neutral-800:var(--palette-shade-dark-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-neutral-800:color-mix(in oklch, var(--palette-shade-dark-color) 50%, var(--color-neutral) 50%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-neutral-900:var(--palette-shade-dark-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-neutral-900:color-mix(in oklch, var(--palette-shade-dark-color) 65%, var(--color-neutral) 35%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-neutral-950:var(--palette-shade-dark-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-neutral-950:color-mix(in oklch, var(--palette-shade-dark-color) 80%, var(--color-neutral) 20%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-primary-soft:var(--lightningcss-light,var(--color-primary-50))var(--lightningcss-dark,var(--color-primary))}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-primary-soft:var(--lightningcss-light,var(--color-primary-50))var(--lightningcss-dark,color-mix(in srgb, var(--color-primary) 20%, var(--color-base) 80%))}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-on-primary-soft:var(--lightningcss-light,var(--color-primary-700))var(--lightningcss-dark,var(--color-primary-300));--color-primary-active:var(--lightningcss-light,var(--palette-shade-dark-color))var(--lightningcss-dark,var(--palette-shade-light-color))}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-primary-active:var(--lightningcss-light,color-mix(in oklch, var(--palette-shade-dark-color) 15%, var(--color-primary) 85%))var(--lightningcss-dark,color-mix(in oklch, var(--palette-shade-light-color) 15%, var(--color-primary) 85%))}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-primary-50:var(--palette-shade-light-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-primary-50:color-mix(in oklch, var(--palette-shade-light-color) 80%, var(--color-primary) 20%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-primary-100:var(--palette-shade-light-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-primary-100:color-mix(in oklch, var(--palette-shade-light-color) 65%, var(--color-primary) 35%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-primary-200:var(--palette-shade-light-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-primary-200:color-mix(in oklch, var(--palette-shade-light-color) 50%, var(--color-primary) 50%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-primary-300:var(--palette-shade-light-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-primary-300:color-mix(in oklch, var(--palette-shade-light-color) 35%, var(--color-primary) 65%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-primary-400:var(--palette-shade-light-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-primary-400:color-mix(in oklch, var(--palette-shade-light-color) 18%, var(--color-primary) 82%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-primary-500:var(--color-primary);--color-primary-600:var(--palette-shade-dark-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-primary-600:color-mix(in oklch, var(--palette-shade-dark-color) 18%, var(--color-primary) 82%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-primary-700:var(--palette-shade-dark-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-primary-700:color-mix(in oklch, var(--palette-shade-dark-color) 34%, var(--color-primary) 66%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-primary-800:var(--palette-shade-dark-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-primary-800:color-mix(in oklch, var(--palette-shade-dark-color) 50%, var(--color-primary) 50%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-primary-900:var(--palette-shade-dark-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-primary-900:color-mix(in oklch, var(--palette-shade-dark-color) 65%, var(--color-primary) 35%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-primary-950:var(--palette-shade-dark-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-primary-950:color-mix(in oklch, var(--palette-shade-dark-color) 80%, var(--color-primary) 20%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-secondary-soft:var(--lightningcss-light,var(--color-secondary-50))var(--lightningcss-dark,var(--color-secondary))}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-secondary-soft:var(--lightningcss-light,var(--color-secondary-50))var(--lightningcss-dark,color-mix(in srgb, var(--color-secondary) 20%, var(--color-base) 80%))}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-on-secondary-soft:var(--lightningcss-light,var(--color-secondary-700))var(--lightningcss-dark,var(--color-secondary-300));--color-secondary-active:var(--lightningcss-light,var(--palette-shade-dark-color))var(--lightningcss-dark,var(--palette-shade-light-color))}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-secondary-active:var(--lightningcss-light,color-mix(in oklch, var(--palette-shade-dark-color) 15%, var(--color-secondary) 85%))var(--lightningcss-dark,color-mix(in oklch, var(--palette-shade-light-color) 15%, var(--color-secondary) 85%))}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-secondary-50:var(--palette-shade-light-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-secondary-50:color-mix(in oklch, var(--palette-shade-light-color) 80%, var(--color-secondary) 20%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-secondary-100:var(--palette-shade-light-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-secondary-100:color-mix(in oklch, var(--palette-shade-light-color) 65%, var(--color-secondary) 35%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-secondary-200:var(--palette-shade-light-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-secondary-200:color-mix(in oklch, var(--palette-shade-light-color) 50%, var(--color-secondary) 50%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-secondary-300:var(--palette-shade-light-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-secondary-300:color-mix(in oklch, var(--palette-shade-light-color) 35%, var(--color-secondary) 65%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-secondary-400:var(--palette-shade-light-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-secondary-400:color-mix(in oklch, var(--palette-shade-light-color) 18%, var(--color-secondary) 82%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-secondary-500:var(--color-secondary);--color-secondary-600:var(--palette-shade-dark-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-secondary-600:color-mix(in oklch, var(--palette-shade-dark-color) 18%, var(--color-secondary) 82%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-secondary-700:var(--palette-shade-dark-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-secondary-700:color-mix(in oklch, var(--palette-shade-dark-color) 34%, var(--color-secondary) 66%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-secondary-800:var(--palette-shade-dark-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-secondary-800:color-mix(in oklch, var(--palette-shade-dark-color) 50%, var(--color-secondary) 50%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-secondary-900:var(--palette-shade-dark-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-secondary-900:color-mix(in oklch, var(--palette-shade-dark-color) 65%, var(--color-secondary) 35%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-secondary-950:var(--palette-shade-dark-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-secondary-950:color-mix(in oklch, var(--palette-shade-dark-color) 80%, var(--color-secondary) 20%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-accent-soft:var(--lightningcss-light,var(--color-accent-50))var(--lightningcss-dark,var(--color-accent))}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-accent-soft:var(--lightningcss-light,var(--color-accent-50))var(--lightningcss-dark,color-mix(in srgb, var(--color-accent) 20%, var(--color-base) 80%))}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-on-accent-soft:var(--lightningcss-light,var(--color-accent-700))var(--lightningcss-dark,var(--color-accent-300));--color-accent-active:var(--lightningcss-light,var(--palette-shade-dark-color))var(--lightningcss-dark,var(--palette-shade-light-color))}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-accent-active:var(--lightningcss-light,color-mix(in oklch, var(--palette-shade-dark-color) 15%, var(--color-accent) 85%))var(--lightningcss-dark,color-mix(in oklch, var(--palette-shade-light-color) 15%, var(--color-accent) 85%))}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-accent-50:var(--palette-shade-light-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-accent-50:color-mix(in oklch, var(--palette-shade-light-color) 80%, var(--color-accent) 20%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-accent-100:var(--palette-shade-light-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-accent-100:color-mix(in oklch, var(--palette-shade-light-color) 65%, var(--color-accent) 35%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-accent-200:var(--palette-shade-light-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-accent-200:color-mix(in oklch, var(--palette-shade-light-color) 50%, var(--color-accent) 50%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-accent-300:var(--palette-shade-light-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-accent-300:color-mix(in oklch, var(--palette-shade-light-color) 35%, var(--color-accent) 65%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-accent-400:var(--palette-shade-light-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-accent-400:color-mix(in oklch, var(--palette-shade-light-color) 18%, var(--color-accent) 82%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-accent-500:var(--color-accent);--color-accent-600:var(--palette-shade-dark-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-accent-600:color-mix(in oklch, var(--palette-shade-dark-color) 18%, var(--color-accent) 82%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-accent-700:var(--palette-shade-dark-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-accent-700:color-mix(in oklch, var(--palette-shade-dark-color) 34%, var(--color-accent) 66%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-accent-800:var(--palette-shade-dark-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-accent-800:color-mix(in oklch, var(--palette-shade-dark-color) 50%, var(--color-accent) 50%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-accent-900:var(--palette-shade-dark-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-accent-900:color-mix(in oklch, var(--palette-shade-dark-color) 65%, var(--color-accent) 35%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-accent-950:var(--palette-shade-dark-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-accent-950:color-mix(in oklch, var(--palette-shade-dark-color) 80%, var(--color-accent) 20%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-info-soft:var(--lightningcss-light,var(--color-info-50))var(--lightningcss-dark,var(--color-info))}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-info-soft:var(--lightningcss-light,var(--color-info-50))var(--lightningcss-dark,color-mix(in srgb, var(--color-info) 20%, var(--color-base) 80%))}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-on-info-soft:var(--lightningcss-light,var(--color-info-700))var(--lightningcss-dark,var(--color-info-300));--color-info-active:var(--lightningcss-light,var(--palette-shade-dark-color))var(--lightningcss-dark,var(--palette-shade-light-color))}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-info-active:var(--lightningcss-light,color-mix(in oklch, var(--palette-shade-dark-color) 15%, var(--color-info) 85%))var(--lightningcss-dark,color-mix(in oklch, var(--palette-shade-light-color) 15%, var(--color-info) 85%))}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-info-50:var(--palette-shade-light-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-info-50:color-mix(in oklch, var(--palette-shade-light-color) 80%, var(--color-info) 20%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-info-100:var(--palette-shade-light-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-info-100:color-mix(in oklch, var(--palette-shade-light-color) 65%, var(--color-info) 35%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-info-200:var(--palette-shade-light-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-info-200:color-mix(in oklch, var(--palette-shade-light-color) 50%, var(--color-info) 50%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-info-300:var(--palette-shade-light-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-info-300:color-mix(in oklch, var(--palette-shade-light-color) 35%, var(--color-info) 65%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-info-400:var(--palette-shade-light-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-info-400:color-mix(in oklch, var(--palette-shade-light-color) 18%, var(--color-info) 82%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-info-500:var(--color-info);--color-info-600:var(--palette-shade-dark-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-info-600:color-mix(in oklch, var(--palette-shade-dark-color) 18%, var(--color-info) 82%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-info-700:var(--palette-shade-dark-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-info-700:color-mix(in oklch, var(--palette-shade-dark-color) 34%, var(--color-info) 66%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-info-800:var(--palette-shade-dark-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-info-800:color-mix(in oklch, var(--palette-shade-dark-color) 50%, var(--color-info) 50%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-info-900:var(--palette-shade-dark-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-info-900:color-mix(in oklch, var(--palette-shade-dark-color) 65%, var(--color-info) 35%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-info-950:var(--palette-shade-dark-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-info-950:color-mix(in oklch, var(--palette-shade-dark-color) 80%, var(--color-info) 20%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-success-soft:var(--lightningcss-light,var(--color-success-50))var(--lightningcss-dark,var(--color-success))}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-success-soft:var(--lightningcss-light,var(--color-success-50))var(--lightningcss-dark,color-mix(in srgb, var(--color-success) 20%, var(--color-base) 80%))}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-on-success-soft:var(--lightningcss-light,var(--color-success-700))var(--lightningcss-dark,var(--color-success-300));--color-success-active:var(--lightningcss-light,var(--palette-shade-dark-color))var(--lightningcss-dark,var(--palette-shade-light-color))}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-success-active:var(--lightningcss-light,color-mix(in oklch, var(--palette-shade-dark-color) 15%, var(--color-success) 85%))var(--lightningcss-dark,color-mix(in oklch, var(--palette-shade-light-color) 15%, var(--color-success) 85%))}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-success-50:var(--palette-shade-light-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-success-50:color-mix(in oklch, var(--palette-shade-light-color) 80%, var(--color-success) 20%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-success-100:var(--palette-shade-light-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-success-100:color-mix(in oklch, var(--palette-shade-light-color) 65%, var(--color-success) 35%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-success-200:var(--palette-shade-light-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-success-200:color-mix(in oklch, var(--palette-shade-light-color) 50%, var(--color-success) 50%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-success-300:var(--palette-shade-light-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-success-300:color-mix(in oklch, var(--palette-shade-light-color) 35%, var(--color-success) 65%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-success-400:var(--palette-shade-light-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-success-400:color-mix(in oklch, var(--palette-shade-light-color) 18%, var(--color-success) 82%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-success-500:var(--color-success);--color-success-600:var(--palette-shade-dark-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-success-600:color-mix(in oklch, var(--palette-shade-dark-color) 18%, var(--color-success) 82%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-success-700:var(--palette-shade-dark-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-success-700:color-mix(in oklch, var(--palette-shade-dark-color) 34%, var(--color-success) 66%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-success-800:var(--palette-shade-dark-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-success-800:color-mix(in oklch, var(--palette-shade-dark-color) 50%, var(--color-success) 50%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-success-900:var(--palette-shade-dark-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-success-900:color-mix(in oklch, var(--palette-shade-dark-color) 65%, var(--color-success) 35%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-success-950:var(--palette-shade-dark-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-success-950:color-mix(in oklch, var(--palette-shade-dark-color) 80%, var(--color-success) 20%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-warning-soft:var(--lightningcss-light,var(--color-warning-50))var(--lightningcss-dark,var(--color-warning))}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-warning-soft:var(--lightningcss-light,var(--color-warning-50))var(--lightningcss-dark,color-mix(in srgb, var(--color-warning) 20%, var(--color-base) 80%))}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-on-warning-soft:var(--lightningcss-light,var(--color-warning-800))var(--lightningcss-dark,var(--color-warning-300));--color-warning-active:var(--lightningcss-light,var(--palette-shade-dark-color))var(--lightningcss-dark,var(--palette-shade-light-color))}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-warning-active:var(--lightningcss-light,color-mix(in oklch, var(--palette-shade-dark-color) 15%, var(--color-warning) 85%))var(--lightningcss-dark,color-mix(in oklch, var(--palette-shade-light-color) 15%, var(--color-warning) 85%))}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-warning-50:var(--palette-shade-light-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-warning-50:color-mix(in oklch, var(--palette-shade-light-color) 80%, var(--color-warning) 20%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-warning-100:var(--palette-shade-light-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-warning-100:color-mix(in oklch, var(--palette-shade-light-color) 65%, var(--color-warning) 35%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-warning-200:var(--palette-shade-light-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-warning-200:color-mix(in oklch, var(--palette-shade-light-color) 50%, var(--color-warning) 50%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-warning-300:var(--palette-shade-light-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-warning-300:color-mix(in oklch, var(--palette-shade-light-color) 35%, var(--color-warning) 65%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-warning-400:var(--palette-shade-light-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-warning-400:color-mix(in oklch, var(--palette-shade-light-color) 18%, var(--color-warning) 82%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-warning-500:var(--color-warning);--color-warning-600:var(--palette-shade-dark-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-warning-600:color-mix(in oklch, var(--palette-shade-dark-color) 18%, var(--color-warning) 82%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-warning-700:var(--palette-shade-dark-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-warning-700:color-mix(in oklch, var(--palette-shade-dark-color) 34%, var(--color-warning) 66%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-warning-800:var(--palette-shade-dark-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-warning-800:color-mix(in oklch, var(--palette-shade-dark-color) 50%, var(--color-warning) 50%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-warning-900:var(--palette-shade-dark-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-warning-900:color-mix(in oklch, var(--palette-shade-dark-color) 65%, var(--color-warning) 35%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-warning-950:var(--palette-shade-dark-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-warning-950:color-mix(in oklch, var(--palette-shade-dark-color) 80%, var(--color-warning) 20%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-error-soft:var(--lightningcss-light,var(--color-error-50))var(--lightningcss-dark,var(--color-error))}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-error-soft:var(--lightningcss-light,var(--color-error-50))var(--lightningcss-dark,color-mix(in srgb, var(--color-error) 20%, var(--color-base) 80%))}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-on-error-soft:var(--lightningcss-light,var(--color-error-700))var(--lightningcss-dark,var(--color-error-300));--color-error-active:var(--lightningcss-light,var(--palette-shade-dark-color))var(--lightningcss-dark,var(--palette-shade-light-color))}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-error-active:var(--lightningcss-light,color-mix(in oklch, var(--palette-shade-dark-color) 15%, var(--color-error) 85%))var(--lightningcss-dark,color-mix(in oklch, var(--palette-shade-light-color) 15%, var(--color-error) 85%))}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-error-50:var(--palette-shade-light-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-error-50:color-mix(in oklch, var(--palette-shade-light-color) 80%, var(--color-error) 20%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-error-100:var(--palette-shade-light-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-error-100:color-mix(in oklch, var(--palette-shade-light-color) 65%, var(--color-error) 35%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-error-200:var(--palette-shade-light-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-error-200:color-mix(in oklch, var(--palette-shade-light-color) 50%, var(--color-error) 50%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-error-300:var(--palette-shade-light-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-error-300:color-mix(in oklch, var(--palette-shade-light-color) 35%, var(--color-error) 65%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-error-400:var(--palette-shade-light-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-error-400:color-mix(in oklch, var(--palette-shade-light-color) 18%, var(--color-error) 82%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-error-500:var(--color-error);--color-error-600:var(--palette-shade-dark-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-error-600:color-mix(in oklch, var(--palette-shade-dark-color) 18%, var(--color-error) 82%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-error-700:var(--palette-shade-dark-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-error-700:color-mix(in oklch, var(--palette-shade-dark-color) 34%, var(--color-error) 66%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-error-800:var(--palette-shade-dark-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-error-800:color-mix(in oklch, var(--palette-shade-dark-color) 50%, var(--color-error) 50%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-error-900:var(--palette-shade-dark-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-error-900:color-mix(in oklch, var(--palette-shade-dark-color) 65%, var(--color-error) 35%)}}.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-error-950:var(--palette-shade-dark-color)}@supports (color:color-mix(in lab, red, red)){.markdown-editor-wrapper,.markdown-editor-wrapper[data-theme],[data-theme] .markdown-editor-wrapper{--color-error-950:color-mix(in oklch, var(--palette-shade-dark-color) 80%, var(--color-error) 20%)}}}@layer theme{.markdown-editor-wrapper[data-theme=darkberry],[data-theme=darkberry] .markdown-editor-wrapper,.markdown-editor-wrapper[data-theme=dark],[data-theme=dark] .markdown-editor-wrapper{--scheme-color:dark;--border-radius:.25rem;--color-base:oklch(10.889% .00301 17.398);--color-on-base:oklch(98% .01 270);--color-neutral:oklch(85% 0 0);--color-on-neutral:oklch(20% 0 0);--color-primary:oklch(66.385% .18368 285.592);--color-on-primary:oklch(10% .01 270);--color-secondary:oklch(65% .18 220);--color-on-secondary:oklch(10% .01 220);--color-accent:oklch(75% .18 50);--color-on-accent:oklch(10% .01 50);--color-info:oklch(91.67% .077 205.04);--color-on-info:oklch(10% .01 250);--color-success:oklch(65% .18 140);--color-on-success:oklch(10% .01 140);--color-warning:oklch(75% .2 85);--color-on-warning:oklch(10% .01 85);--color-error:oklch(60% .22 30);--color-on-error:oklch(10% .01 30)}.markdown-editor-wrapper:not([data-theme]),.markdown-editor-wrapper[data-theme=snowberry],[data-theme=snowberry] .markdown-editor-wrapper,.markdown-editor-wrapper[data-theme=light],[data-theme=light] .markdown-editor-wrapper{--scheme-color:light;--border-radius:.25rem;--color-base:oklch(100% 0 0);--color-on-base:oklch(22% 0 0);--color-neutral:oklch(15% 0 0);--color-on-neutral:oklch(100% 0 0);--color-primary:oklch(51.1% .262 276.966);--color-on-primary:oklch(96.2% .018 272.314);--color-secondary:oklch(59.1% .293 322.896);--color-on-secondary:oklch(100% 0 0);--color-accent:oklch(54.1% .281 293.009);--color-on-accent:oklch(100% 0 0);--color-info:oklch(68.5% .169 237.323);--color-on-info:oklch(15% 0 0);--color-success:oklch(79.2% .209 151.711);--color-on-success:oklch(15% 0 0);--color-warning:oklch(85.2% .199 91.936);--color-on-warning:oklch(15% 0 0);--color-error:oklch(57.7% .245 27.325);--color-on-error:oklch(100% 0 0)}}@container countdown style(--digits:3){span:before{content:"000\\a 001\\a 002\\a 003\\a 004\\a 005\\a 006\\a 007\\a 008\\a 009\\a 010\\a 011\\a 012\\a 013\\a 014\\a 015\\a 016\\a 017\\a 018\\a 019\\a 020\\a 021\\a 022\\a 023\\a 024\\a 025\\a 026\\a 027\\a 028\\a 029\\a 030\\a 031\\a 032\\a 033\\a 034\\a 035\\a 036\\a 037\\a 038\\a 039\\a 040\\a 041\\a 042\\a 043\\a 044\\a 045\\a 046\\a 047\\a 048\\a 049\\a 050\\a 051\\a 052\\a 053\\a 054\\a 055\\a 056\\a 057\\a 058\\a 059\\a 060\\a 061\\a 062\\a 063\\a 064\\a 065\\a 066\\a 067\\a 068\\a 069\\a 070\\a 071\\a 072\\a 073\\a 074\\a 075\\a 076\\a 077\\a 078\\a 079\\a 080\\a 081\\a 082\\a 083\\a 084\\a 085\\a 086\\a 087\\a 088\\a 089\\a 090\\a 091\\a 092\\a 093\\a 094\\a 095\\a 096\\a 097\\a 098\\a 099\\a 100\\a 101\\a 102\\a 103\\a 104\\a 105\\a 106\\a 107\\a 108\\a 109\\a 110\\a 111\\a 112\\a 113\\a 114\\a 115\\a 116\\a 117\\a 118\\a 119\\a 120\\a 121\\a 122\\a 123\\a 124\\a 125\\a 126\\a 127\\a 128\\a 129\\a 130\\a 131\\a 132\\a 133\\a 134\\a 135\\a 136\\a 137\\a 138\\a 139\\a 140\\a 141\\a 142\\a 143\\a 144\\a 145\\a 146\\a 147\\a 148\\a 149\\a 150\\a 151\\a 152\\a 153\\a 154\\a 155\\a 156\\a 157\\a 158\\a 159\\a 160\\a 161\\a 162\\a 163\\a 164\\a 165\\a 166\\a 167\\a 168\\a 169\\a 170\\a 171\\a 172\\a 173\\a 174\\a 175\\a 176\\a 177\\a 178\\a 179\\a 180\\a 181\\a 182\\a 183\\a 184\\a 185\\a 186\\a 187\\a 188\\a 189\\a 190\\a 191\\a 192\\a 193\\a 194\\a 195\\a 196\\a 197\\a 198\\a 199\\a 200\\a 201\\a 202\\a 203\\a 204\\a 205\\a 206\\a 207\\a 208\\a 209\\a 210\\a 211\\a 212\\a 213\\a 214\\a 215\\a 216\\a 217\\a 218\\a 219\\a 220\\a 221\\a 222\\a 223\\a 224\\a 225\\a 226\\a 227\\a 228\\a 229\\a 230\\a 231\\a 232\\a 233\\a 234\\a 235\\a 236\\a 237\\a 238\\a 239\\a 240\\a 241\\a 242\\a 243\\a 244\\a 245\\a 246\\a 247\\a 248\\a 249\\a 250\\a 251\\a 252\\a 253\\a 254\\a 255\\a 256\\a 257\\a 258\\a 259\\a 260\\a 261\\a 262\\a 263\\a 264\\a 265\\a 266\\a 267\\a 268\\a 269\\a 270\\a 271\\a 272\\a 273\\a 274\\a 275\\a 276\\a 277\\a 278\\a 279\\a 280\\a 281\\a 282\\a 283\\a 284\\a 285\\a 286\\a 287\\a 288\\a 289\\a 290\\a 291\\a 292\\a 293\\a 294\\a 295\\a 296\\a 297\\a 298\\a 299\\a 300\\a 301\\a 302\\a 303\\a 304\\a 305\\a 306\\a 307\\a 308\\a 309\\a 310\\a 311\\a 312\\a 313\\a 314\\a 315\\a 316\\a 317\\a 318\\a 319\\a 320\\a 321\\a 322\\a 323\\a 324\\a 325\\a 326\\a 327\\a 328\\a 329\\a 330\\a 331\\a 332\\a 333\\a 334\\a 335\\a 336\\a 337\\a 338\\a 339\\a 340\\a 341\\a 342\\a 343\\a 344\\a 345\\a 346\\a 347\\a 348\\a 349\\a 350\\a 351\\a 352\\a 353\\a 354\\a 355\\a 356\\a 357\\a 358\\a 359\\a 360\\a 361\\a 362\\a 363\\a 364\\a 365\\a 366\\a 367\\a 368\\a 369\\a 370\\a 371\\a 372\\a 373\\a 374\\a 375\\a 376\\a 377\\a 378\\a 379\\a 380\\a 381\\a 382\\a 383\\a 384\\a 385\\a 386\\a 387\\a 388\\a 389\\a 390\\a 391\\a 392\\a 393\\a 394\\a 395\\a 396\\a 397\\a 398\\a 399\\a 400\\a 401\\a 402\\a 403\\a 404\\a 405\\a 406\\a 407\\a 408\\a 409\\a 410\\a 411\\a 412\\a 413\\a 414\\a 415\\a 416\\a 417\\a 418\\a 419\\a 420\\a 421\\a 422\\a 423\\a 424\\a 425\\a 426\\a 427\\a 428\\a 429\\a 430\\a 431\\a 432\\a 433\\a 434\\a 435\\a 436\\a 437\\a 438\\a 439\\a 440\\a 441\\a 442\\a 443\\a 444\\a 445\\a 446\\a 447\\a 448\\a 449\\a 450\\a 451\\a 452\\a 453\\a 454\\a 455\\a 456\\a 457\\a 458\\a 459\\a 460\\a 461\\a 462\\a 463\\a 464\\a 465\\a 466\\a 467\\a 468\\a 469\\a 470\\a 471\\a 472\\a 473\\a 474\\a 475\\a 476\\a 477\\a 478\\a 479\\a 480\\a 481\\a 482\\a 483\\a 484\\a 485\\a 486\\a 487\\a 488\\a 489\\a 490\\a 491\\a 492\\a 493\\a 494\\a 495\\a 496\\a 497\\a 498\\a 499\\a 500\\a 501\\a 502\\a 503\\a 504\\a 505\\a 506\\a 507\\a 508\\a 509\\a 510\\a 511\\a 512\\a 513\\a 514\\a 515\\a 516\\a 517\\a 518\\a 519\\a 520\\a 521\\a 522\\a 523\\a 524\\a 525\\a 526\\a 527\\a 528\\a 529\\a 530\\a 531\\a 532\\a 533\\a 534\\a 535\\a 536\\a 537\\a 538\\a 539\\a 540\\a 541\\a 542\\a 543\\a 544\\a 545\\a 546\\a 547\\a 548\\a 549\\a 550\\a 551\\a 552\\a 553\\a 554\\a 555\\a 556\\a 557\\a 558\\a 559\\a 560\\a 561\\a 562\\a 563\\a 564\\a 565\\a 566\\a 567\\a 568\\a 569\\a 570\\a 571\\a 572\\a 573\\a 574\\a 575\\a 576\\a 577\\a 578\\a 579\\a 580\\a 581\\a 582\\a 583\\a 584\\a 585\\a 586\\a 587\\a 588\\a 589\\a 590\\a 591\\a 592\\a 593\\a 594\\a 595\\a 596\\a 597\\a 598\\a 599\\a 600\\a 601\\a 602\\a 603\\a 604\\a 605\\a 606\\a 607\\a 608\\a 609\\a 610\\a 611\\a 612\\a 613\\a 614\\a 615\\a 616\\a 617\\a 618\\a 619\\a 620\\a 621\\a 622\\a 623\\a 624\\a 625\\a 626\\a 627\\a 628\\a 629\\a 630\\a 631\\a 632\\a 633\\a 634\\a 635\\a 636\\a 637\\a 638\\a 639\\a 640\\a 641\\a 642\\a 643\\a 644\\a 645\\a 646\\a 647\\a 648\\a 649\\a 650\\a 651\\a 652\\a 653\\a 654\\a 655\\a 656\\a 657\\a 658\\a 659\\a 660\\a 661\\a 662\\a 663\\a 664\\a 665\\a 666\\a 667\\a 668\\a 669\\a 670\\a 671\\a 672\\a 673\\a 674\\a 675\\a 676\\a 677\\a 678\\a 679\\a 680\\a 681\\a 682\\a 683\\a 684\\a 685\\a 686\\a 687\\a 688\\a 689\\a 690\\a 691\\a 692\\a 693\\a 694\\a 695\\a 696\\a 697\\a 698\\a 699\\a 700\\a 701\\a 702\\a 703\\a 704\\a 705\\a 706\\a 707\\a 708\\a 709\\a 710\\a 711\\a 712\\a 713\\a 714\\a 715\\a 716\\a 717\\a 718\\a 719\\a 720\\a 721\\a 722\\a 723\\a 724\\a 725\\a 726\\a 727\\a 728\\a 729\\a 730\\a 731\\a 732\\a 733\\a 734\\a 735\\a 736\\a 737\\a 738\\a 739\\a 740\\a 741\\a 742\\a 743\\a 744\\a 745\\a 746\\a 747\\a 748\\a 749\\a 750\\a 751\\a 752\\a 753\\a 754\\a 755\\a 756\\a 757\\a 758\\a 759\\a 760\\a 761\\a 762\\a 763\\a 764\\a 765\\a 766\\a 767\\a 768\\a 769\\a 770\\a 771\\a 772\\a 773\\a 774\\a 775\\a 776\\a 777\\a 778\\a 779\\a 780\\a 781\\a 782\\a 783\\a 784\\a 785\\a 786\\a 787\\a 788\\a 789\\a 790\\a 791\\a 792\\a 793\\a 794\\a 795\\a 796\\a 797\\a 798\\a 799\\a 800\\a 801\\a 802\\a 803\\a 804\\a 805\\a 806\\a 807\\a 808\\a 809\\a 810\\a 811\\a 812\\a 813\\a 814\\a 815\\a 816\\a 817\\a 818\\a 819\\a 820\\a 821\\a 822\\a 823\\a 824\\a 825\\a 826\\a 827\\a 828\\a 829\\a 830\\a 831\\a 832\\a 833\\a 834\\a 835\\a 836\\a 837\\a 838\\a 839\\a 840\\a 841\\a 842\\a 843\\a 844\\a 845\\a 846\\a 847\\a 848\\a 849\\a 850\\a 851\\a 852\\a 853\\a 854\\a 855\\a 856\\a 857\\a 858\\a 859\\a 860\\a 861\\a 862\\a 863\\a 864\\a 865\\a 866\\a 867\\a 868\\a 869\\a 870\\a 871\\a 872\\a 873\\a 874\\a 875\\a 876\\a 877\\a 878\\a 879\\a 880\\a 881\\a 882\\a 883\\a 884\\a 885\\a 886\\a 887\\a 888\\a 889\\a 890\\a 891\\a 892\\a 893\\a 894\\a 895\\a 896\\a 897\\a 898\\a 899\\a 900\\a 901\\a 902\\a 903\\a 904\\a 905\\a 906\\a 907\\a 908\\a 909\\a 910\\a 911\\a 912\\a 913\\a 914\\a 915\\a 916\\a 917\\a 918\\a 919\\a 920\\a 921\\a 922\\a 923\\a 924\\a 925\\a 926\\a 927\\a 928\\a 929\\a 930\\a 931\\a 932\\a 933\\a 934\\a 935\\a 936\\a 937\\a 938\\a 939\\a 940\\a 941\\a 942\\a 943\\a 944\\a 945\\a 946\\a 947\\a 948\\a 949\\a 950\\a 951\\a 952\\a 953\\a 954\\a 955\\a 956\\a 957\\a 958\\a 959\\a 960\\a 961\\a 962\\a 963\\a 964\\a 965\\a 966\\a 967\\a 968\\a 969\\a 970\\a 971\\a 972\\a 973\\a 974\\a 975\\a 976\\a 977\\a 978\\a 979\\a 980\\a 981\\a 982\\a 983\\a 984\\a 985\\a 986\\a 987\\a 988\\a 989\\a 990\\a 991\\a 992\\a 993\\a 994\\a 995\\a 996\\a 997\\a 998\\a 999"}}@keyframes loading-spin{to{transform:rotate(360deg)}}@keyframes loading-pulse{0%,80%,to{opacity:.5;transform:scale(.6)}40%{opacity:1;transform:scale(1)}}@keyframes loading-bars{0%,to{transform:scaleY(.4)}50%{transform:scaleY(1)}}@keyframes marquee-scroll{0%{translate:0}to{translate:var(--marquee--axis)}}@keyframes progress{50%{background-position-x:-115%}}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}:where(.me-swap-rotate) :where(.me-swap-on),:where(.me-swap-rotate) :where(.me-swap-indeterminate){rotate:45deg}:where(.me-table-pin-cols) :where(tr th){background-color:var(--color-table);position:sticky;inset-inline:0}:where(.me-table-pin-rows) :where(thead tr){background-color:var(--color-table);z-index:1;position:sticky;inset-block-start:0}:where(.me-table-hover) :where(tbody tr){transition-property:background-color;transition-duration:.15s;transition-timing-function:linear}:where(.me-table-hover) :where(tbody tr):hover,:where(.me-table-zebra) :where(tbody tr:nth-child(2n)),:where(.me-table-zebra-cols) :where(tbody tr td:nth-child(2n)),:where(.me-table-zebra-rows) :where(tbody tr:nth-child(2n)){background-color:var(--color-table-soft)}:where(.me-table-lg) :where(:not(thead,tfoot) tr){font-size:1.125rem}:where(.me-table-lg) :where(th,td){padding-block:1rem;padding-inline:1.25rem}:where(.me-table-md) :where(:not(thead,tfoot) tr){font-size:.875rem}:where(.me-table-md) :where(th,td){padding-block:.75rem;padding-inline:1rem}:where(.me-table-sm) :where(:not(thead,tfoot) tr){font-size:.75rem}:where(.me-table-sm) :where(th,td){padding-block:.5rem;padding-inline:.75rem}:where(.me-table-xl) :where(:not(thead,tfoot) tr){font-size:1.375rem}:where(.me-table-xl) :where(th,td){padding-block:1.25rem;padding-inline:1.5rem}:where(.me-table-xs) :where(:not(thead,tfoot) tr){font-size:.6875rem}:where(.me-table-xs) :where(th,td){padding-block:.25rem;padding-inline:.5rem}}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-content{syntax:"*";inherits:false;initial-value:""}/*$vite$:1*/`)),document.head.appendChild(e)}}catch(e){console.error(`vite-plugin-css-injected-by-js`,e)}})();
2
1
  //#region node_modules/marked/lib/marked.esm.js
3
2
  function e() {
4
3
  return {
@@ -102,105 +101,105 @@ var o = ((e = "") => {
102
101
  headingBeginRegex: i((e) => RegExp(`^ {0,${e}}#`)),
103
102
  htmlBeginRegex: i((e) => RegExp(`^ {0,${e}}(?:</?(?:${y})(?: +|$|/?>)|<(?:script|pre|style|textarea|!--))`, "i")),
104
103
  blockquoteBeginRegex: i((e) => RegExp(`^ {0,${e}}>`))
105
- }, c = /^(?:[ \t]*(?:\n|$))+/, l = /^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/, u = /^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/, d = /^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/, f = /^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/, p = / {0,3}(?:[*+-]|\d{1,9}[.)])/, m = /^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |fences|blockquote|heading|hr|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/, h = a(m).replace(/bull/g, p).replace(/blockCode/g, /(?: {4}| {0,3}\t)/).replace(/fences/g, / {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g, / {0,3}>/).replace(/heading/g, / {0,3}#{1,6}(?:\s|$)/).replace(/hr/g, / {0,3}(?:(?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/).replace(/html/g, / {0,3}<[^\n>]+>\n/).replace(/\|table/g, "").getRegex(), g = a(m).replace(/bull/g, p).replace(/blockCode/g, /(?: {4}| {0,3}\t)/).replace(/fences/g, / {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g, / {0,3}>/).replace(/heading/g, / {0,3}#{1,6}(?:\s|$)/).replace(/hr/g, / {0,3}(?:(?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/).replace(/html/g, / {0,3}<[^\n>]+>\n/).replace(/table/g, / {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(), _ = /^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table|[ \t]+\n)[^\n]+)*)/, v = /^[^\n]+/, ee = /(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/, te = a(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label", ee).replace("title", /(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(), ne = a(/^(bull)([ \t][^\n]*?)?(?:\n|$)/).replace(/bull/g, p).getRegex(), y = "address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul", b = /<!--(?:-?>|[\s\S]*?(?:-->|$))/, re = a("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n*|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>[^\\n]*\\n*|$)|<![A-Z][\\s\\S]*?(?:>[^\\n]*\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>[^\\n]*\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][a-z0-9-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][a-z0-9-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))", "i").replace("comment", b).replace("tag", y).replace("attribute", / +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(), x = (e) => a(_).replace("hr", d).replace("heading", " {0,3}#{1,6}(?:\\s|$)").replace("|lheading", "").replace("|table", "").replace("blockquote", " {0,3}>").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*(?:\\n|$))|~~~)[^\\n]*(?:\\n|$)").replace("list", e).replace("html", "</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", y).getRegex(), ie = x(/ {0,3}(?:[*+-]|1[.)])[ \t]+[^ \t\n]/), ae = x(/ {0,3}(?:[*+-]|\d{1,9}[.)])(?:[ \t]|\n|$)/), oe = {
106
- blockquote: a(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph", ae).getRegex(),
104
+ }, c = /^(?:[ \t]*(?:\n|$))+/, l = /^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/, u = /^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/, d = /^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/, f = /^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/, p = / {0,3}(?:[*+-]|\d{1,9}[.)])/, m = /^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |fences|blockquote|heading|hr|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/, ee = a(m).replace(/bull/g, p).replace(/blockCode/g, /(?: {4}| {0,3}\t)/).replace(/fences/g, / {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g, / {0,3}>/).replace(/heading/g, / {0,3}#{1,6}(?:\s|$)/).replace(/hr/g, / {0,3}(?:(?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/).replace(/html/g, / {0,3}<[^\n>]+>\n/).replace(/\|table/g, "").getRegex(), h = a(m).replace(/bull/g, p).replace(/blockCode/g, /(?: {4}| {0,3}\t)/).replace(/fences/g, / {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g, / {0,3}>/).replace(/heading/g, / {0,3}#{1,6}(?:\s|$)/).replace(/hr/g, / {0,3}(?:(?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/).replace(/html/g, / {0,3}<[^\n>]+>\n/).replace(/table/g, / {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(), g = /^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table|[ \t]+\n)[^\n]+)*)/, _ = /^[^\n]+/, te = /(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/, v = a(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label", te).replace("title", /(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(), ne = a(/^(bull)([ \t][^\n]*?)?(?:\n|$)/).replace(/bull/g, p).getRegex(), y = "address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul", re = /<!--(?:-?>|[\s\S]*?(?:-->|$))/, ie = a("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:</\\1>[^\\n]*\\n*|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>[^\\n]*\\n*|$)|<![A-Z][\\s\\S]*?(?:>[^\\n]*\\n*|$)|<!\\[CDATA\\[[\\s\\S]*?(?:\\]\\]>[^\\n]*\\n*|$)|</?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][a-z0-9-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|</(?!script|pre|style|textarea)[a-z][a-z0-9-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))", "i").replace("comment", re).replace("tag", y).replace("attribute", / +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(), b = (e) => a(g).replace("hr", d).replace("heading", " {0,3}#{1,6}(?:\\s|$)").replace("|lheading", "").replace("|table", "").replace("blockquote", " {0,3}>").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*(?:\\n|$))|~~~)[^\\n]*(?:\\n|$)").replace("list", e).replace("html", "</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", y).getRegex(), ae = b(/ {0,3}(?:[*+-]|1[.)])[ \t]+[^ \t\n]/), oe = b(/ {0,3}(?:[*+-]|\d{1,9}[.)])(?:[ \t]|\n|$)/), se = {
105
+ blockquote: a(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph", oe).getRegex(),
107
106
  code: l,
108
- def: te,
107
+ def: v,
109
108
  fences: u,
110
109
  heading: f,
111
110
  hr: d,
112
- html: re,
113
- lheading: h,
111
+ html: ie,
112
+ lheading: ee,
114
113
  list: ne,
115
114
  newline: c,
116
- paragraph: ie,
115
+ paragraph: ae,
117
116
  table: r,
118
- text: v
119
- }, se = a("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr", d).replace("heading", " {0,3}#{1,6}(?:\\s|$)").replace("blockquote", " {0,3}>").replace("code", "(?: {4}| {0,3} )[^\\n]").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*(?:\\n|$))|~~~)[^\\n]*(?:\\n|$)").replace("list", " {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html", "</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", y).getRegex(), ce = {
120
- ...oe,
121
- lheading: g,
122
- table: se,
123
- paragraph: a(_).replace("hr", d).replace("heading", " {0,3}#{1,6}(?:\\s|$)").replace("|lheading", "").replace("table", se).replace("blockquote", " {0,3}>").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*(?:\\n|$))|~~~)[^\\n]*(?:\\n|$)").replace("list", " {0,3}(?:[*+-]|1[.)])[ \\t]+[^ \\t\\n]").replace("html", "</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", y).getRegex()
124
- }, le = {
125
- ...oe,
126
- html: a("^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:\"[^\"]*\"|'[^']*'|\\s[^'\"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))").replace("comment", b).replace(/tag/g, "(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),
117
+ text: _
118
+ }, ce = a("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr", d).replace("heading", " {0,3}#{1,6}(?:\\s|$)").replace("blockquote", " {0,3}>").replace("code", "(?: {4}| {0,3} )[^\\n]").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*(?:\\n|$))|~~~)[^\\n]*(?:\\n|$)").replace("list", " {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html", "</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", y).getRegex(), le = {
119
+ ...se,
120
+ lheading: h,
121
+ table: ce,
122
+ paragraph: a(g).replace("hr", d).replace("heading", " {0,3}#{1,6}(?:\\s|$)").replace("|lheading", "").replace("table", ce).replace("blockquote", " {0,3}>").replace("fences", " {0,3}(?:`{3,}(?=[^`\\n]*(?:\\n|$))|~~~)[^\\n]*(?:\\n|$)").replace("list", " {0,3}(?:[*+-]|1[.)])[ \\t]+[^ \\t\\n]").replace("html", "</?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag", y).getRegex()
123
+ }, ue = {
124
+ ...se,
125
+ html: a("^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?</\\1> *(?:\\n{2,}|\\s*$)|<tag(?:\"[^\"]*\"|'[^']*'|\\s[^'\"/>\\s]*)*?/?> *(?:\\n{2,}|\\s*$))").replace("comment", re).replace(/tag/g, "(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),
127
126
  def: /^ *\[([^\]]+)\]: *<?([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,
128
127
  heading: /^(#{1,6})(.*)(?:\n+|$)/,
129
128
  fences: r,
130
129
  lheading: /^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,
131
- paragraph: a(_).replace("hr", d).replace("heading", " *#{1,6} *[^\n]").replace("lheading", h).replace("|table", "").replace("blockquote", " {0,3}>").replace("|fences", "").replace("|list", "").replace("|html", "").replace("|tag", "").getRegex()
132
- }, ue = /^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/, de = /^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/, fe = /^( {2,}|\\)\n(?!\s*$)[ \t]*/, pe = /^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/, S = /[\p{P}\p{S}]/u, me = /[\s\p{P}\p{S}]/u, he = /[^\s\p{P}\p{S}]/u, ge = a(/^((?![*_])punctSpace)/, "u").replace(/punctSpace/g, me).getRegex(), C = /[\p{Pi}\p{Ps}"']/u, _e = /(?!~)[\p{P}\p{S}]/u, ve = /(?!~)[\s\p{P}\p{S}]/u, ye = /(?:[^\s\p{P}\p{S}]|~)/u, be = a(/link|precode-code|html/, "g").replace("link", /\[(?:[^\[\]`]|(?<a>`+)[^`]+\k<a>(?!`))*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)/).replace("precode-", o ? "(?<!`)()" : "(^^|[^`])").replace("code", /(?<b>`+)[^`]+\k<b>(?!`)/).replace("html", /<(?! )[^<>]*?>/).getRegex(), xe = /^(?:\*+(?:((?!\*)punct)|([^\s*]))?)|^_+(?:((?!_)punct)|([^\s_]))?/, Se = a(xe, "u").replace(/punct/g, S).getRegex(), Ce = a(xe, "u").replace(/punct/g, _e).getRegex(), we = a(/^(?:\*+(?:((?!\*)(?!openQuote)punct)|([^\s*]))?)|^_+(?:((?!_)(?!openQuote)punct)|([^\s_]))?/, "u").replace(/openQuote/g, C).replace(/punct/g, S).getRegex(), Te = "^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)", w = a(Te, "gu").replace(/notPunctSpace/g, he).replace(/punctSpace/g, me).replace(/punct/g, S).getRegex(), Ee = a(Te, "gu").replace(/notPunctSpace/g, ye).replace(/punctSpace/g, ve).replace(/punct/g, _e).getRegex(), T = a("^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)[\\s](\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|(?:(?!\\*)punct|notPunctSpace)(\\*+)(?!\\*)(?=notPunctSpace)", "gu").replace(/notPunctSpace/g, he).replace(/punctSpace/g, me).replace(/punct/g, S).getRegex(), De = a("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)", "gu").replace(/notPunctSpace/g, he).replace(/punctSpace/g, me).replace(/punct/g, S).getRegex(), E = a("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)[\\s](_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)|(?:(?!_)punct|notPunctSpace)(_+)(?!_)(?=notPunctSpace)", "gu").replace(/notPunctSpace/g, he).replace(/punctSpace/g, me).replace(/punct/g, S).getRegex(), Oe = a(/^~~?(?:((?!~)punct)|[^\s~])/, "u").replace(/punct/g, S).getRegex(), ke = a("^[^~]+(?=[^~])|(?!~)punct(~~?)(?=[\\s]|$)|notPunctSpace(~~?)(?!~)(?=punctSpace|$)|(?!~)punctSpace(~~?)(?=notPunctSpace)|[\\s](~~?)(?!~)(?=punct)|(?!~)punct(~~?)(?!~)(?=punct)|notPunctSpace(~~?)(?=notPunctSpace)", "gu").replace(/notPunctSpace/g, he).replace(/punctSpace/g, me).replace(/punct/g, S).getRegex(), D = a(/\\(punct)/, "gu").replace(/punct/g, S).getRegex(), Ae = a(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme", /[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email", /[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(), je = a(b).replace("(?:-->|$)", "-->").getRegex(), Me = a("^comment|^</[a-zA-Z][a-zA-Z0-9-]*\\s*>|^<[a-zA-Z][a-zA-Z0-9-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>").replace("comment", je).replace("attribute", /\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(), Ne = /\[(?:\\[\s\S]|[^\[\]\\])*\]/, O = a(/(?:\[(?:brackets|\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+(?!`)[^`]*?`+(?!`)|``+(?=\])|[^\[\]\\`])*?/).replace("brackets", Ne).getRegex(), Pe = a(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]+(?:\n[ \t]*)?|\n[ \t]*)(title))?\s*\)/).replace("label", O).replace("href", /<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]+|(?=\))/).replace("title", /"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(), Fe = a(/^!?\[(label)\]\[(ref)\]/).replace("label", O).replace("ref", ee).getRegex(), Ie = a(/^!?\[(ref)\](?:\[\])?/).replace("ref", ee).getRegex(), Le = /(?!\s*\])(?:\\[\s\S]|[^\[\]\\]){1,999}/, Re = a(/(?:[^\[\]\\`]*(?:\[(?:brackets|\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+(?!`)[^`]*?`+(?!`)|``+(?=\]))){0,999}?[^\[\]\\`]*?/).replace("brackets", Ne).getRegex(), ze = a("reflink|nolink(?!\\()", "g").replace("reflink", a(/^!?\[(label)\]\[(ref)\]/).replace("label", Re).replace("ref", Le).getRegex()).replace("nolink", a(/^!?\[(ref)\](?:\[\])?/).replace("ref", Le).getRegex()).getRegex(), Be = /[hH][tT][tT][pP][sS]?|[fF][tT][pP]/, Ve = a(/(?:mailto:email|xmpp:email(?:\/[A-Za-z0-9@.]+)?)/).replace(/email/g, /[A-Za-z0-9._+-]+@[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![\w-])/).getRegex(), He = {
130
+ paragraph: a(g).replace("hr", d).replace("heading", " *#{1,6} *[^\n]").replace("lheading", ee).replace("|table", "").replace("blockquote", " {0,3}>").replace("|fences", "").replace("|list", "").replace("|html", "").replace("|tag", "").getRegex()
131
+ }, de = /^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/, fe = /^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/, pe = /^( {2,}|\\)\n(?!\s*$)[ \t]*/, me = /^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\<!\[`*_]|\b_|$)|[^ ](?= {2,}\n)))/, x = /[\p{P}\p{S}]/u, he = /[\s\p{P}\p{S}]/u, ge = /[^\s\p{P}\p{S}]/u, _e = a(/^((?![*_])punctSpace)/, "u").replace(/punctSpace/g, he).getRegex(), S = /[\p{Pi}\p{Ps}"']/u, ve = /(?!~)[\p{P}\p{S}]/u, ye = /(?!~)[\s\p{P}\p{S}]/u, be = /(?:[^\s\p{P}\p{S}]|~)/u, xe = a(/link|precode-code|html/, "g").replace("link", /\[(?:[^\[\]`]|(?<a>`+)[^`]+\k<a>(?!`))*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)/).replace("precode-", o ? "(?<!`)()" : "(^^|[^`])").replace("code", /(?<b>`+)[^`]+\k<b>(?!`)/).replace("html", /<(?! )[^<>]*?>/).getRegex(), Se = /^(?:\*+(?:((?!\*)punct)|([^\s*]))?)|^_+(?:((?!_)punct)|([^\s_]))?/, Ce = a(Se, "u").replace(/punct/g, x).getRegex(), we = a(Se, "u").replace(/punct/g, ve).getRegex(), Te = a(/^(?:\*+(?:((?!\*)(?!openQuote)punct)|([^\s*]))?)|^_+(?:((?!_)(?!openQuote)punct)|([^\s_]))?/, "u").replace(/openQuote/g, S).replace(/punct/g, x).getRegex(), Ee = "^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)", C = a(Ee, "gu").replace(/notPunctSpace/g, ge).replace(/punctSpace/g, he).replace(/punct/g, x).getRegex(), De = a(Ee, "gu").replace(/notPunctSpace/g, be).replace(/punctSpace/g, ye).replace(/punct/g, ve).getRegex(), w = a("^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)[\\s](\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|(?:(?!\\*)punct|notPunctSpace)(\\*+)(?!\\*)(?=notPunctSpace)", "gu").replace(/notPunctSpace/g, ge).replace(/punctSpace/g, he).replace(/punct/g, x).getRegex(), Oe = a("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)", "gu").replace(/notPunctSpace/g, ge).replace(/punctSpace/g, he).replace(/punct/g, x).getRegex(), T = a("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)[\\s](_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)|(?:(?!_)punct|notPunctSpace)(_+)(?!_)(?=notPunctSpace)", "gu").replace(/notPunctSpace/g, ge).replace(/punctSpace/g, he).replace(/punct/g, x).getRegex(), ke = a(/^~~?(?:((?!~)punct)|[^\s~])/, "u").replace(/punct/g, x).getRegex(), Ae = a("^[^~]+(?=[^~])|(?!~)punct(~~?)(?=[\\s]|$)|notPunctSpace(~~?)(?!~)(?=punctSpace|$)|(?!~)punctSpace(~~?)(?=notPunctSpace)|[\\s](~~?)(?!~)(?=punct)|(?!~)punct(~~?)(?!~)(?=punct)|notPunctSpace(~~?)(?=notPunctSpace)", "gu").replace(/notPunctSpace/g, ge).replace(/punctSpace/g, he).replace(/punct/g, x).getRegex(), E = a(/\\(punct)/, "gu").replace(/punct/g, x).getRegex(), je = a(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme", /[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email", /[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(), Me = a(re).replace("(?:-->|$)", "-->").getRegex(), Ne = a("^comment|^</[a-zA-Z][a-zA-Z0-9-]*\\s*>|^<[a-zA-Z][a-zA-Z0-9-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^<![a-zA-Z]+\\s[\\s\\S]*?>|^<!\\[CDATA\\[[\\s\\S]*?\\]\\]>").replace("comment", Me).replace("attribute", /\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(), Pe = /\[(?:\\[\s\S]|[^\[\]\\])*\]/, D = a(/(?:\[(?:brackets|\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+(?!`)[^`]*?`+(?!`)|``+(?=\])|[^\[\]\\`])*?/).replace("brackets", Pe).getRegex(), Fe = a(/^!?\[(label)\]\([ \t\n]*(href)(?:(?:[ \t]+(?:\n[ \t]*)?|\n[ \t]*)(title))?[ \t\n]*\)/).replace("label", D).replace("href", /<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]+|(?=\))/).replace("title", /"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(), O = a(/^!?\[(label)\]\[(ref)\]/).replace("label", D).replace("ref", te).getRegex(), Ie = a(/^!?\[(ref)\](?:\[\])?/).replace("ref", te).getRegex(), Le = /(?!\s*\])(?:\\[\s\S]|[^\[\]\\]){1,999}/, Re = a(/(?:[^\[\]\\`]*(?:\[(?:brackets|\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+(?!`)[^`]*?`+(?!`)|``+(?=\]))){0,999}?[^\[\]\\`]*?/).replace("brackets", Pe).getRegex(), ze = a("reflink|nolink(?!\\()", "g").replace("reflink", a(/^!?\[(label)\]\[(ref)\]/).replace("label", Re).replace("ref", Le).getRegex()).replace("nolink", a(/^!?\[(ref)\](?:\[\])?/).replace("ref", Le).getRegex()).getRegex(), k = /[hH][tT][tT][pP][sS]?|[fF][tT][pP]/, Be = a(/(?:mailto:email|xmpp:email(?:\/[A-Za-z0-9@.]+)?)/).replace(/email/g, /[A-Za-z0-9._+-]+@[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![\w-])/).getRegex(), Ve = {
133
132
  _backpedal: r,
134
- anyPunctuation: D,
135
- autolink: Ae,
136
- blockSkip: be,
137
- br: fe,
138
- code: de,
133
+ anyPunctuation: E,
134
+ autolink: je,
135
+ blockSkip: xe,
136
+ br: pe,
137
+ code: fe,
139
138
  del: r,
140
139
  delLDelim: r,
141
140
  delRDelim: r,
142
- emStrongLDelim: Se,
143
- emStrongRDelimAst: w,
144
- emStrongRDelimUnd: De,
145
- escape: ue,
146
- link: Pe,
141
+ emStrongLDelim: Ce,
142
+ emStrongRDelimAst: C,
143
+ emStrongRDelimUnd: Oe,
144
+ escape: de,
145
+ link: Fe,
147
146
  nolink: Ie,
148
- punctuation: ge,
149
- reflink: Fe,
147
+ punctuation: _e,
148
+ reflink: O,
150
149
  reflinkSearch: ze,
151
- tag: Me,
152
- text: pe,
150
+ tag: Ne,
151
+ text: me,
153
152
  url: r
153
+ }, He = {
154
+ ...Ve,
155
+ emStrongLDelim: Te,
156
+ emStrongRDelimAst: w,
157
+ emStrongRDelimUnd: T,
158
+ link: a(/^!?\[(label)\]\((.*?)\)/).replace("label", D).getRegex(),
159
+ reflink: a(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label", D).getRegex()
154
160
  }, Ue = {
155
- ...He,
161
+ ...Ve,
162
+ emStrongRDelimAst: De,
156
163
  emStrongLDelim: we,
157
- emStrongRDelimAst: T,
158
- emStrongRDelimUnd: E,
159
- link: a(/^!?\[(label)\]\((.*?)\)/).replace("label", O).getRegex(),
160
- reflink: a(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label", O).getRegex()
161
- }, We = {
162
- ...He,
163
- emStrongRDelimAst: Ee,
164
- emStrongLDelim: Ce,
165
- delLDelim: Oe,
166
- delRDelim: ke,
167
- url: a(/^emailProtocol|^((?:protocol):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/).replace("emailProtocol", Ve).replace("protocol", Be).replace("email", /[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![\w-])/).getRegex(),
164
+ delLDelim: ke,
165
+ delRDelim: Ae,
166
+ url: a(/^emailProtocol|^((?:protocol):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/).replace("emailProtocol", Be).replace("protocol", k).replace("email", /[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![\w-])/).getRegex(),
168
167
  _backpedal: /(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,
169
168
  del: /^(~~?)(?=[^\s~])((?:\\[\s\S]|[^\\])*?(?:\\[\s\S]|[^\s~\\]))\1(?=[^~]|$)/,
170
- text: a(/^(?:[^a-zA-Z0-9](?=emailProtocol)|(`+|~+|[^`~])(?:(?=[`~])|(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|protocol:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9](?=emailProtocol)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@))))/).replace("protocol", Be).replace(/emailProtocol/g, /(?:mailto|xmpp):/).getRegex()
169
+ text: a(/^(?:[^a-zA-Z0-9](?=emailProtocol)|(`+|~+|[^`~])(?:(?=[`~])|(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\<!\[`*~_]|\b_|protocol:\/\/|www\.|$)|[^ ](?= {2,}\n)|[^a-zA-Z0-9](?=emailProtocol)|[^a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-](?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@))))/).replace("protocol", k).replace(/emailProtocol/g, /(?:mailto|xmpp):/).getRegex()
170
+ }, We = {
171
+ ...Ue,
172
+ br: a(pe).replace("{2,}", "*").getRegex(),
173
+ text: a(Ue.text).replace("\\b_", "\\b_| {2,}\\n").replace(/\{2,\}/g, "*").getRegex()
171
174
  }, Ge = {
172
- ...We,
173
- br: a(fe).replace("{2,}", "*").getRegex(),
174
- text: a(We.text).replace("\\b_", "\\b_| {2,}\\n").replace(/\{2,\}/g, "*").getRegex()
175
+ normal: se,
176
+ gfm: le,
177
+ pedantic: ue
178
+ }, A = {
179
+ normal: Ve,
180
+ gfm: Ue,
181
+ breaks: We,
182
+ pedantic: He
175
183
  }, Ke = {
176
- normal: oe,
177
- gfm: ce,
178
- pedantic: le
179
- }, qe = {
180
- normal: He,
181
- gfm: We,
182
- breaks: Ge,
183
- pedantic: Ue
184
- }, Je = {
185
184
  "&": "&amp;",
186
185
  "<": "&lt;",
187
186
  ">": "&gt;",
188
187
  "\"": "&quot;",
189
188
  "'": "&#39;"
190
- }, Ye = (e) => Je[e];
191
- function k(e, t) {
189
+ }, j = (e) => Ke[e];
190
+ function M(e, t) {
192
191
  if (t) {
193
- if (s.escapeTest.test(e)) return e.replace(s.escapeReplace, Ye);
194
- } else if (s.escapeTestNoEncode.test(e)) return e.replace(s.escapeReplaceNoEncode, Ye);
192
+ if (s.escapeTest.test(e)) return e.replace(s.escapeReplace, j);
193
+ } else if (s.escapeTestNoEncode.test(e)) return e.replace(s.escapeReplaceNoEncode, j);
195
194
  return e;
196
195
  }
197
- function Xe(e) {
196
+ function qe(e) {
198
197
  return e.replace(s.numericCharacterReference, (e, t, n) => {
199
198
  let r = t === void 0 ? Number.parseInt(n, 16) : Number.parseInt(t, 10);
200
199
  return r === 0 || r > 1114111 || r >= 55296 && r <= 57343 ? "�" : String.fromCodePoint(r);
201
200
  });
202
201
  }
203
- function Ze(e) {
202
+ function Je(e) {
204
203
  try {
205
204
  e = encodeURI(e).replace(s.percentDecode, "%");
206
205
  } catch {
@@ -208,7 +207,7 @@ function Ze(e) {
208
207
  }
209
208
  return e;
210
209
  }
211
- function Qe(e, t) {
210
+ function Ye(e, t) {
212
211
  let n = e.replace(s.findPipe, (e, t, n) => {
213
212
  let r = !1, i = t;
214
213
  for (; --i >= 0 && n[i] === "\\";) r = !r;
@@ -221,7 +220,7 @@ function Qe(e, t) {
221
220
  for (; r < n.length; r++) n[r] = n[r].trim().replace(s.slashPipe, "|");
222
221
  return n;
223
222
  }
224
- function A(e, t, n) {
223
+ function N(e, t, n) {
225
224
  let r = e.length;
226
225
  if (r === 0) return "";
227
226
  let i = 0;
@@ -233,23 +232,23 @@ function A(e, t, n) {
233
232
  }
234
233
  return e.slice(0, r - i);
235
234
  }
236
- function $e(e) {
235
+ function Xe(e) {
237
236
  let t = e.split("\n"), n = t.length - 1;
238
237
  for (; n >= 0 && s.blankLine.test(t[n]);) n--;
239
238
  return t.length - n <= 2 ? e : t.slice(0, n + 1).join("\n");
240
239
  }
241
- function j(e) {
240
+ function P(e) {
242
241
  return e.trim().toLowerCase().toUpperCase().toLowerCase();
243
242
  }
244
- function M(e, t) {
245
- if (e.indexOf(t[1]) === -1) return -1;
243
+ function F(e, t) {
244
+ if (e.indexOf(t[0]) === -1 && e.indexOf(t[1]) === -1) return -1;
246
245
  let n = 0;
247
246
  for (let r = 0; r < e.length; r++) if (e[r] === "\\") r++;
248
247
  else if (e[r] === t[0]) n++;
249
248
  else if (e[r] === t[1] && (n--, n < 0)) return r;
250
249
  return n > 0 ? -2 : -1;
251
250
  }
252
- function N(e, t = 0) {
251
+ function I(e, t = 0) {
253
252
  let n = t, r = "";
254
253
  for (let t of e) if (t === " ") {
255
254
  let e = 4 - n % 4;
@@ -257,7 +256,7 @@ function N(e, t = 0) {
257
256
  } else r += t, n++;
258
257
  return r;
259
258
  }
260
- function et(e, t, n, r, i) {
259
+ function Ze(e, t, n, r, i) {
261
260
  let a = t.href, o = t.title || null, s = e[1].replace(i.other.outputLinkReplace, "$1"), c = e[0].charAt(0) === "!";
262
261
  r.state.inLink = !0;
263
262
  let l = r.state.linkEmitted, u = r.state.inRawBlock;
@@ -279,7 +278,7 @@ function et(e, t, n, r, i) {
279
278
  tokens: d
280
279
  };
281
280
  }
282
- function tt(e, t, n) {
281
+ function Qe(e, t, n) {
283
282
  let r = e.match(n.other.indentCodeCompensation);
284
283
  if (r === null) return t;
285
284
  let i = r[1];
@@ -290,7 +289,7 @@ function tt(e, t, n) {
290
289
  return e.slice(Math.min(r.length, i.length));
291
290
  }).join("\n");
292
291
  }
293
- function nt(e, t, n, r) {
292
+ function $e(e, t, n, r) {
294
293
  if (!t.includes("<")) return !1;
295
294
  for (let i = 0; i < t.length; i++) {
296
295
  if (t[i] === "\\") {
@@ -313,7 +312,7 @@ function nt(e, t, n, r) {
313
312
  }
314
313
  return !1;
315
314
  }
316
- var rt = class {
315
+ var et = class {
317
316
  options;
318
317
  rules;
319
318
  lexer;
@@ -330,7 +329,7 @@ var rt = class {
330
329
  code(e) {
331
330
  let t = this.rules.block.code.exec(e);
332
331
  if (t) {
333
- let e = this.options.pedantic ? t[0] : $e(t[0]);
332
+ let e = this.options.pedantic ? t[0] : Xe(t[0]);
334
333
  return {
335
334
  type: "code",
336
335
  raw: e,
@@ -342,7 +341,7 @@ var rt = class {
342
341
  fences(e) {
343
342
  let t = this.rules.block.fences.exec(e);
344
343
  if (t) {
345
- let e = t[0], n = tt(e, t[3] || "", this.rules);
344
+ let e = t[0], n = Qe(e, t[3] || "", this.rules);
346
345
  return {
347
346
  type: "code",
348
347
  raw: e,
@@ -356,12 +355,12 @@ var rt = class {
356
355
  if (t) {
357
356
  let e = t[2].trim();
358
357
  if (this.rules.other.endingHash.test(e)) {
359
- let t = A(e, "#");
358
+ let t = N(e, "#");
360
359
  (this.options.pedantic || !t || this.rules.other.endingSpaceTabChar.test(t)) && (e = t.trim());
361
360
  }
362
361
  return {
363
362
  type: "heading",
364
- raw: A(t[0], "\n"),
363
+ raw: N(t[0], "\n"),
365
364
  depth: t[1].length,
366
365
  text: e,
367
366
  tokens: this.lexer.inline(e)
@@ -372,13 +371,13 @@ var rt = class {
372
371
  let t = this.rules.block.hr.exec(e);
373
372
  if (t) return {
374
373
  type: "hr",
375
- raw: A(t[0], "\n")
374
+ raw: N(t[0], "\n")
376
375
  };
377
376
  }
378
377
  blockquote(e) {
379
378
  let t = this.rules.block.blockquote.exec(e);
380
379
  if (t) {
381
- let e = A(t[0], "\n").split("\n"), n = "", r = "", i = [];
380
+ let e = N(t[0], "\n").split("\n"), n = "", r = "", i = [];
382
381
  for (; e.length > 0;) {
383
382
  let t = !1, a = [], o = 0;
384
383
  for (; o < e.length; o++) if (this.rules.other.blockquoteStart.test(e[o])) a.push(e[o]), t = !0;
@@ -404,7 +403,6 @@ ${d.join("\n")}`), r = r.substring(0, r.length - t.text.length) + s.text;
404
403
  if (u?.type === "list") {
405
404
  let t = u, a = t.raw + "\n" + e.join("\n"), o = this.list(a);
406
405
  i[i.length - 1] = o, n = n.substring(0, n.length - u.raw.length) + o.raw, r = r.substring(0, r.length - t.raw.length) + o.raw, e = a.substring(i.at(-1).raw.length).split("\n");
407
- continue;
408
406
  }
409
407
  }
410
408
  return {
@@ -432,7 +430,7 @@ ${d.join("\n")}`), r = r.substring(0, r.length - t.text.length) + s.text;
432
430
  let n = !1, r = "", s = "";
433
431
  if (!(t = a.exec(e)) || this.rules.block.hr.test(e)) break;
434
432
  r = t[0], e = e.substring(r.length);
435
- let c = t[2].split("\n", 1)[0], l = t[1].length, u = this.options.pedantic ? N(c, l) : c.replace(this.rules.other.leadingSpaceTab, (e) => N(e, l)), d = e.split("\n", 1)[0], f = !u.trim(), p = 0;
433
+ let c = t[2].split("\n", 1)[0], l = t[1].length, u = this.options.pedantic ? I(c, l) : c.replace(this.rules.other.leadingSpaceTab, (e) => I(e, l)), d = e.split("\n", 1)[0], f = !u.trim(), p = 0;
436
434
  if (this.options.pedantic ? (p = 2, s = u.trimStart()) : f ? p = l + 1 : (p = u.search(this.rules.other.nonSpaceChar), p = p > 4 ? 1 : p, s = u.slice(p), p += l), f && this.rules.other.blankLine.test(d) && (r += d + "\n", e = e.substring(d.length + 1), n = !0), !n) {
437
435
  let t = this.rules.other.nextBulletRegex(p), n = this.rules.other.hrRegex(p), i = this.rules.other.fencesBeginRegex(p), a = this.rules.other.headingBeginRegex(p), o = this.rules.other.htmlBeginRegex(p), c = this.rules.other.blockquoteBeginRegex(p);
438
436
  for (; e;) {
@@ -497,7 +495,7 @@ ${d.join("\n")}`), r = r.substring(0, r.length - t.text.length) + s.text;
497
495
  html(e) {
498
496
  let t = this.rules.block.html.exec(e);
499
497
  if (t) {
500
- let e = $e(t[0]);
498
+ let e = Xe(t[0]);
501
499
  return {
502
500
  type: "html",
503
501
  block: !0,
@@ -510,11 +508,12 @@ ${d.join("\n")}`), r = r.substring(0, r.length - t.text.length) + s.text;
510
508
  def(e) {
511
509
  let t = this.rules.block.def.exec(e);
512
510
  if (t) {
513
- let e = j(t[1]).replace(this.rules.other.multipleSpaceGlobal, " "), n = t[2] ? t[2].replace(this.rules.other.hrefBrackets, "$1").replace(this.rules.inline.anyPunctuation, "$1") : "", r = t[3] ? t[3].substring(1, t[3].length - 1).replace(this.rules.inline.anyPunctuation, "$1") : t[3];
511
+ if (!this.rules.other.startAngleBracket.test(t[2]) && F(t[2], "()") !== -1) return;
512
+ let e = P(t[1]).replace(this.rules.other.multipleSpaceGlobal, " "), n = t[2] ? t[2].replace(this.rules.other.hrefBrackets, "$1").replace(this.rules.inline.anyPunctuation, "$1") : "", r = t[3] ? t[3].substring(1, t[3].length - 1).replace(this.rules.inline.anyPunctuation, "$1") : t[3];
514
513
  return {
515
514
  type: "def",
516
515
  tag: e,
517
- raw: A(t[0], "\n"),
516
+ raw: N(t[0], "\n"),
518
517
  href: n,
519
518
  title: r
520
519
  };
@@ -523,9 +522,9 @@ ${d.join("\n")}`), r = r.substring(0, r.length - t.text.length) + s.text;
523
522
  table(e) {
524
523
  let t = this.rules.block.table.exec(e);
525
524
  if (!t || !this.rules.other.tableDelimiter.test(t[2])) return;
526
- let n = Qe(t[1]), r = t[2].replace(this.rules.other.tableAlignChars, "").split("|"), i = t[3]?.trim() ? t[3].replace(this.rules.other.tableRowBlankLine, "").split("\n") : [], a = {
525
+ let n = Ye(t[1]), r = t[2].replace(this.rules.other.tableAlignChars, "").split("|"), i = t[3]?.trim() ? t[3].replace(this.rules.other.tableRowBlankLine, "").split("\n") : [], a = {
527
526
  type: "table",
528
- raw: A(t[0], "\n"),
527
+ raw: N(t[0], "\n"),
529
528
  header: [],
530
529
  align: [],
531
530
  rows: []
@@ -538,7 +537,7 @@ ${d.join("\n")}`), r = r.substring(0, r.length - t.text.length) + s.text;
538
537
  header: !0,
539
538
  align: a.align[e]
540
539
  });
541
- for (let e of i) a.rows.push(Qe(e, a.header.length).map((e, t) => ({
540
+ for (let e of i) a.rows.push(Ye(e, a.header.length).map((e, t) => ({
542
541
  text: e,
543
542
  tokens: this.lexer.inline(e),
544
543
  header: !1,
@@ -553,7 +552,7 @@ ${d.join("\n")}`), r = r.substring(0, r.length - t.text.length) + s.text;
553
552
  let e = t[1].trim();
554
553
  return {
555
554
  type: "heading",
556
- raw: A(t[0], "\n"),
555
+ raw: N(t[0], "\n"),
557
556
  depth: t[2].charAt(0) === "=" ? 1 : 2,
558
557
  text: e,
559
558
  tokens: this.lexer.inline(e)
@@ -601,17 +600,18 @@ ${d.join("\n")}`), r = r.substring(0, r.length - t.text.length) + s.text;
601
600
  };
602
601
  }
603
602
  link(e) {
603
+ if (this.lexer.state.linkParenPossible === !1) return;
604
604
  let t = this.rules.inline.link.exec(e);
605
605
  if (t) {
606
606
  let n = t[0].charAt(0) === "!" ? 2 : 1;
607
- if (!this.options.pedantic && nt(e, t[1], n, this.rules)) return;
607
+ if (!this.options.pedantic && $e(e, t[1], n, this.rules)) return;
608
608
  let r = t[2].trim();
609
609
  if (!this.options.pedantic && this.rules.other.startAngleBracket.test(r)) {
610
610
  if (!this.rules.other.endAngleBracket.test(r)) return;
611
- let e = A(r.slice(0, -1), "\\");
611
+ let e = N(r.slice(0, -1), "\\");
612
612
  if ((r.length - e.length) % 2 == 0) return;
613
613
  } else {
614
- let e = M(t[2], "()");
614
+ let e = F(t[2], "()");
615
615
  if (e === -2) return;
616
616
  if (e > -1) {
617
617
  let n = (t[0].indexOf("!") === 0 ? 5 : 4) + t[1].length + e;
@@ -623,7 +623,7 @@ ${d.join("\n")}`), r = r.substring(0, r.length - t.text.length) + s.text;
623
623
  let e = this.rules.other.pedanticHrefTitle.exec(i);
624
624
  e && (i = e[1], a = e[3]);
625
625
  } else a = t[3] ? t[3].slice(1, -1) : "";
626
- return i = i.trim(), this.rules.other.startAngleBracket.test(i) && (i = this.options.pedantic && !this.rules.other.endAngleBracket.test(r) ? i.slice(1) : i.slice(1, -1)), et(t, {
626
+ return i = i.trim(), this.rules.other.startAngleBracket.test(i) && (i = this.options.pedantic && !this.rules.other.endAngleBracket.test(r) ? i.slice(1) : i.slice(1, -1)), Ze(t, {
627
627
  href: i && i.replace(this.rules.inline.anyPunctuation, "$1"),
628
628
  title: a && a.replace(this.rules.inline.anyPunctuation, "$1")
629
629
  }, t[0], this.lexer, this.rules);
@@ -633,8 +633,8 @@ ${d.join("\n")}`), r = r.substring(0, r.length - t.text.length) + s.text;
633
633
  let n;
634
634
  if ((n = this.rules.inline.reflink.exec(e)) || (n = this.rules.inline.nolink.exec(e))) {
635
635
  let r = n[0].charAt(0) === "!" ? 2 : 1;
636
- if (!this.options.pedantic && nt(e, n[1], r, this.rules)) return;
637
- let i = t[j((n[2] || n[1]).replace(this.rules.other.multipleSpaceGlobal, " "))];
636
+ if (!this.options.pedantic && $e(e, n[1], r, this.rules)) return;
637
+ let i = t[P((n[2] || n[1]).replace(this.rules.other.multipleSpaceGlobal, " "))];
638
638
  if (!i) {
639
639
  let e = n[0].charAt(0);
640
640
  return {
@@ -643,7 +643,7 @@ ${d.join("\n")}`), r = r.substring(0, r.length - t.text.length) + s.text;
643
643
  text: e
644
644
  };
645
645
  }
646
- return et(n, i, n[0], this.lexer, this.rules);
646
+ return Ze(n, i, n[0], this.lexer, this.rules);
647
647
  }
648
648
  }
649
649
  emStrong(e, t, n = "") {
@@ -776,35 +776,36 @@ ${d.join("\n")}`), r = r.substring(0, r.length - t.text.length) + s.text;
776
776
  return {
777
777
  type: "text",
778
778
  raw: t[0],
779
- text: e ? t[0] : Xe(t[0]),
779
+ text: e ? t[0] : qe(t[0]),
780
780
  escaped: e
781
781
  };
782
782
  }
783
783
  }
784
- }, P = class e {
784
+ }, L = class e {
785
785
  tokens;
786
786
  options;
787
787
  state;
788
788
  inlineQueue;
789
789
  tokenizer;
790
790
  constructor(e) {
791
- this.tokens = [], this.tokens.links = Object.create(null), this.options = e || t, this.options.tokenizer = this.options.tokenizer || new rt(), this.tokenizer = this.options.tokenizer, this.tokenizer.options = this.options, this.tokenizer.lexer = this, this.inlineQueue = [], this.state = {
791
+ this.tokens = [], this.tokens.links = Object.create(null), this.options = e || t, this.options.tokenizer = this.options.tokenizer || new et(), this.tokenizer = this.options.tokenizer, this.tokenizer.options = this.options, this.tokenizer.lexer = this, this.inlineQueue = [], this.state = {
792
792
  inLink: !1,
793
793
  inRawBlock: !1,
794
794
  linkEmitted: !1,
795
+ linkParenPossible: !0,
795
796
  top: !0
796
797
  };
797
798
  let n = {
798
799
  other: s,
799
- block: Ke.normal,
800
- inline: qe.normal
800
+ block: Ge.normal,
801
+ inline: A.normal
801
802
  };
802
- this.options.pedantic ? (n.block = Ke.pedantic, n.inline = qe.pedantic) : this.options.gfm && (n.block = Ke.gfm, n.inline = this.options.breaks ? qe.breaks : qe.gfm), this.tokenizer.rules = n;
803
+ this.options.pedantic ? (n.block = Ge.pedantic, n.inline = A.pedantic) : this.options.gfm && (n.block = Ge.gfm, n.inline = this.options.breaks ? A.breaks : A.gfm), this.tokenizer.rules = n;
803
804
  }
804
805
  static get rules() {
805
806
  return {
806
- block: Ke,
807
- inline: qe
807
+ block: Ge,
808
+ inline: A
808
809
  };
809
810
  }
810
811
  static lex(t, n) {
@@ -844,27 +845,7 @@ ${d.join("\n")}`), r = r.substring(0, r.length - t.text.length) + s.text;
844
845
  n?.type === "paragraph" || n?.type === "text" ? (n.raw += (n.raw.endsWith("\n") ? "" : "\n") + i.raw, n.text += "\n" + i.text, this.inlineQueue.at(-1).src = n.text) : t.push(i);
845
846
  continue;
846
847
  }
847
- if (i = this.tokenizer.fences(e)) {
848
- e = e.substring(i.raw.length), t.push(i);
849
- continue;
850
- }
851
- if (i = this.tokenizer.heading(e)) {
852
- e = e.substring(i.raw.length), t.push(i);
853
- continue;
854
- }
855
- if (i = this.tokenizer.hr(e)) {
856
- e = e.substring(i.raw.length), t.push(i);
857
- continue;
858
- }
859
- if (i = this.tokenizer.blockquote(e)) {
860
- e = e.substring(i.raw.length), t.push(i);
861
- continue;
862
- }
863
- if (i = this.tokenizer.list(e)) {
864
- e = e.substring(i.raw.length), t.push(i);
865
- continue;
866
- }
867
- if (i = this.tokenizer.html(e)) {
848
+ if ((i = this.tokenizer.fences(e)) || (i = this.tokenizer.heading(e)) || (i = this.tokenizer.hr(e)) || (i = this.tokenizer.blockquote(e)) || (i = this.tokenizer.list(e)) || (i = this.tokenizer.html(e))) {
868
849
  e = e.substring(i.raw.length), t.push(i);
869
850
  continue;
870
851
  }
@@ -877,11 +858,7 @@ ${d.join("\n")}`), r = r.substring(0, r.length - t.text.length) + s.text;
877
858
  }, t.push(i));
878
859
  continue;
879
860
  }
880
- if (i = this.tokenizer.table(e)) {
881
- e = e.substring(i.raw.length), t.push(i);
882
- continue;
883
- }
884
- if (i = this.tokenizer.lheading(e)) {
861
+ if ((i = this.tokenizer.table(e)) || (i = this.tokenizer.lheading(e))) {
885
862
  e = e.substring(i.raw.length), t.push(i);
886
863
  continue;
887
864
  }
@@ -895,15 +872,11 @@ ${d.join("\n")}`), r = r.substring(0, r.length - t.text.length) + s.text;
895
872
  if (this.state.top && (i = this.tokenizer.paragraph(a))) {
896
873
  let r = t.at(-1);
897
874
  n && r?.type === "paragraph" ? (r.raw += (r.raw.endsWith("\n") ? "" : "\n") + i.raw, r.text += "\n" + i.text, this.inlineQueue.pop(), this.inlineQueue.at(-1).src = r.text) : t.push(i), n = a.length !== e.length, e = e.substring(i.raw.length);
898
- continue;
899
- }
900
- if (i = this.tokenizer.text(e)) {
875
+ } else if (i = this.tokenizer.text(e)) {
901
876
  e = e.substring(i.raw.length);
902
877
  let n = t.at(-1);
903
878
  n?.type === "text" ? (n.raw += (n.raw.endsWith("\n") ? "" : "\n") + i.raw, n.text += "\n" + i.text, this.inlineQueue.pop(), this.inlineQueue.at(-1).src = n.text) : t.push(i);
904
- continue;
905
- }
906
- if (e) {
879
+ } else if (e) {
907
880
  this.infiniteLoopError(e.charCodeAt(0));
908
881
  break;
909
882
  }
@@ -922,17 +895,26 @@ ${d.join("\n")}`), r = r.substring(0, r.length - t.text.length) + s.text;
922
895
  for (let n of e.matchAll(this.tokenizer.rules.inline.blockSkip)) if (t.test(n[0]) && e.charAt(n.index - 1) !== "!") return !0;
923
896
  for (let t of e.matchAll(this.tokenizer.rules.inline.reflinkSearch)) {
924
897
  let e = t[0], n = e.lastIndexOf("[");
925
- if (e.charAt(0) !== "!" && Object.hasOwn(this.tokens.links, j(e.slice(n + 1, -1))) && !(n > 1 && this.linkInText(e.slice(1, n - 1)))) return !0;
898
+ if (e.charAt(0) !== "!" && Object.hasOwn(this.tokens.links, P(e.slice(n + 1, -1))) && !(n > 1 && this.linkInText(e.slice(1, n - 1)))) return !0;
926
899
  }
927
900
  return !1;
928
901
  }
929
902
  inlineTokens(e, t = []) {
930
903
  this.tokenizer.lexer = this;
904
+ let n = this.state.linkParenPossible;
905
+ this.state.linkParenPossible = n && e.includes(")");
906
+ try {
907
+ return this.#e(e, t);
908
+ } finally {
909
+ this.state.linkParenPossible = n;
910
+ }
911
+ }
912
+ #e(e, t) {
931
913
  let n = e;
932
914
  if (this.tokens.links && e.includes("[")) {
933
915
  let e = this.tokenizer.rules.inline.reflinkSearch, t = (n) => {
934
916
  let r = n.lastIndexOf("[");
935
- if (!Object.hasOwn(this.tokens.links, j(n.slice(r + 1, -1)))) return n;
917
+ if (!Object.hasOwn(this.tokens.links, P(n.slice(r + 1, -1)))) return n;
936
918
  if (r > 1 && n.charAt(0) !== "!") {
937
919
  let i = n.slice(1, r - 1);
938
920
  if (this.linkInText(i)) return "[" + i.replace(e, t) + "][" + "a".repeat(n.length - r - 2) + "]";
@@ -955,15 +937,7 @@ ${d.join("\n")}`), r = r.substring(0, r.length - t.text.length) + s.text;
955
937
  r || (i = ""), r = !1;
956
938
  let o;
957
939
  if (this.options.extensions?.inline?.some((n) => (o = n.call({ lexer: this }, e, t)) ? (e = e.substring(o.raw.length), t.push(o), !0) : !1)) continue;
958
- if (o = this.tokenizer.escape(e)) {
959
- e = e.substring(o.raw.length), t.push(o);
960
- continue;
961
- }
962
- if (o = this.tokenizer.tag(e)) {
963
- e = e.substring(o.raw.length), t.push(o);
964
- continue;
965
- }
966
- if (o = this.tokenizer.link(e)) {
940
+ if ((o = this.tokenizer.escape(e)) || (o = this.tokenizer.tag(e)) || (o = this.tokenizer.link(e))) {
967
941
  e = e.substring(o.raw.length), t.push(o);
968
942
  continue;
969
943
  }
@@ -973,27 +947,7 @@ ${d.join("\n")}`), r = r.substring(0, r.length - t.text.length) + s.text;
973
947
  o.type === "text" && n?.type === "text" ? (n.raw += o.raw, n.text += o.text) : t.push(o);
974
948
  continue;
975
949
  }
976
- if (o = this.tokenizer.emStrong(e, n, i)) {
977
- e = e.substring(o.raw.length), t.push(o);
978
- continue;
979
- }
980
- if (o = this.tokenizer.codespan(e)) {
981
- e = e.substring(o.raw.length), t.push(o);
982
- continue;
983
- }
984
- if (o = this.tokenizer.br(e)) {
985
- e = e.substring(o.raw.length), t.push(o);
986
- continue;
987
- }
988
- if (o = this.tokenizer.del(e, n, i)) {
989
- e = e.substring(o.raw.length), t.push(o);
990
- continue;
991
- }
992
- if (o = this.tokenizer.autolink(e)) {
993
- e = e.substring(o.raw.length), t.push(o);
994
- continue;
995
- }
996
- if (!this.state.inLink && (o = this.tokenizer.url(e))) {
950
+ if ((o = this.tokenizer.emStrong(e, n, i)) || (o = this.tokenizer.codespan(e)) || (o = this.tokenizer.br(e)) || (o = this.tokenizer.del(e, n, i)) || (o = this.tokenizer.autolink(e)) || !this.state.inLink && (o = this.tokenizer.url(e))) {
997
951
  e = e.substring(o.raw.length), t.push(o);
998
952
  continue;
999
953
  }
@@ -1008,9 +962,7 @@ ${d.join("\n")}`), r = r.substring(0, r.length - t.text.length) + s.text;
1008
962
  e = e.substring(o.raw.length), o.raw.slice(-1) !== "_" && (i = o.raw.slice(-1)), r = !0;
1009
963
  let n = t.at(-1);
1010
964
  n?.type === "text" ? (n.raw += o.raw, n.text += o.text) : t.push(o);
1011
- continue;
1012
- }
1013
- if (e) {
965
+ } else if (e) {
1014
966
  this.infiniteLoopError(e.charCodeAt(0));
1015
967
  break;
1016
968
  }
@@ -1022,7 +974,7 @@ ${d.join("\n")}`), r = r.substring(0, r.length - t.text.length) + s.text;
1022
974
  if (this.options.silent) console.error(t);
1023
975
  else throw Error(t);
1024
976
  }
1025
- }, it = class {
977
+ }, tt = class {
1026
978
  options;
1027
979
  parser;
1028
980
  constructor(e) {
@@ -1033,7 +985,7 @@ ${d.join("\n")}`), r = r.substring(0, r.length - t.text.length) + s.text;
1033
985
  }
1034
986
  code({ text: e, lang: t, escaped: n }) {
1035
987
  let r = (t || "").match(s.notSpaceStart)?.[0], i = e ? e.replace(s.endingNewline, "") + "\n" : "";
1036
- return r ? "<pre><code class=\"language-" + k(r) + "\">" + (n ? i : k(i, !0)) + "</code></pre>\n" : "<pre><code>" + (n ? i : k(i, !0)) + "</code></pre>\n";
988
+ return r ? "<pre><code class=\"language-" + M(r) + "\">" + (n ? i : M(i, !0)) + "</code></pre>\n" : "<pre><code>" + (n ? i : M(i, !0)) + "</code></pre>\n";
1037
989
  }
1038
990
  blockquote({ tokens: e }) {
1039
991
  return `<blockquote>
@@ -1103,7 +1055,7 @@ ${e}</tr>
1103
1055
  return `<em>${this.parser.parseInline(e)}</em>`;
1104
1056
  }
1105
1057
  codespan({ text: e }) {
1106
- return `<code>${k(e, !0)}</code>`;
1058
+ return `<code>${M(e, !0)}</code>`;
1107
1059
  }
1108
1060
  br(e) {
1109
1061
  return "<br>";
@@ -1112,24 +1064,24 @@ ${e}</tr>
1112
1064
  return `<del>${this.parser.parseInline(e)}</del>`;
1113
1065
  }
1114
1066
  link({ href: e, title: t, text: n, tokens: r, autolink: i }) {
1115
- let a = i ? k(n, !0) : this.parser.parseInline(r), o = Ze(e);
1067
+ let a = i ? M(n, !0) : this.parser.parseInline(r), o = Je(e);
1116
1068
  if (o === null) return a;
1117
- e = k(o, i);
1069
+ e = M(o, i);
1118
1070
  let s = "<a href=\"" + e + "\"";
1119
- return t && (s += " title=\"" + k(t) + "\""), s += ">" + a + "</a>", s;
1071
+ return t && (s += " title=\"" + M(t) + "\""), s += ">" + a + "</a>", s;
1120
1072
  }
1121
1073
  image({ href: e, title: t, text: n, tokens: r }) {
1122
1074
  r && (n = this.parser.parseInline(r, this.parser.textRenderer));
1123
- let i = Ze(e);
1124
- if (i === null) return k(n);
1075
+ let i = Je(e);
1076
+ if (i === null) return M(n);
1125
1077
  e = i;
1126
- let a = `<img src="${k(e)}" alt="${k(n)}"`;
1127
- return t && (a += ` title="${k(t)}"`), a += ">", a;
1078
+ let a = `<img src="${M(e)}" alt="${M(n)}"`;
1079
+ return t && (a += ` title="${M(t)}"`), a += ">", a;
1128
1080
  }
1129
1081
  text(e) {
1130
- return "tokens" in e && e.tokens ? this.parser.parseInline(e.tokens) : "escaped" in e && e.escaped ? e.text : k(e.text);
1082
+ return "tokens" in e && e.tokens ? this.parser.parseInline(e.tokens) : "escaped" in e && e.escaped ? e.text : M(e.text);
1131
1083
  }
1132
- }, at = class {
1084
+ }, nt = class {
1133
1085
  strong({ text: e }) {
1134
1086
  return e;
1135
1087
  }
@@ -1160,12 +1112,12 @@ ${e}</tr>
1160
1112
  checkbox({ raw: e }) {
1161
1113
  return e;
1162
1114
  }
1163
- }, F = class e {
1115
+ }, R = class e {
1164
1116
  options;
1165
1117
  renderer;
1166
1118
  textRenderer;
1167
1119
  constructor(e) {
1168
- this.options = e || t, this.options.renderer = this.options.renderer || new it(), this.renderer = this.options.renderer, this.renderer.options = this.options, this.renderer.parser = this, this.textRenderer = new at();
1120
+ this.options = e || t, this.options.renderer = this.options.renderer || new tt(), this.renderer = this.options.renderer, this.renderer.options = this.options, this.renderer.parser = this, this.textRenderer = new nt();
1169
1121
  }
1170
1122
  static parse(t, n) {
1171
1123
  return new e(n).parse(t);
@@ -1313,7 +1265,7 @@ ${e}</tr>
1313
1265
  }
1314
1266
  return n;
1315
1267
  }
1316
- }, I = class {
1268
+ }, z = class {
1317
1269
  options;
1318
1270
  block;
1319
1271
  constructor(e) {
@@ -1343,22 +1295,22 @@ ${e}</tr>
1343
1295
  return e;
1344
1296
  }
1345
1297
  provideLexer(e = this.block) {
1346
- return e ? P.lex : P.lexInline;
1298
+ return e ? L.lex : L.lexInline;
1347
1299
  }
1348
1300
  provideParser(e = this.block) {
1349
- return e ? F.parse : F.parseInline;
1301
+ return e ? R.parse : R.parseInline;
1350
1302
  }
1351
- }, ot = class {
1303
+ }, rt = class {
1352
1304
  defaults = e();
1353
1305
  options = this.setOptions;
1354
1306
  parse = this.parseMarkdown(!0);
1355
1307
  parseInline = this.parseMarkdown(!1);
1356
- Parser = F;
1357
- Renderer = it;
1358
- TextRenderer = at;
1359
- Lexer = P;
1360
- Tokenizer = rt;
1361
- Hooks = I;
1308
+ Parser = R;
1309
+ Renderer = tt;
1310
+ TextRenderer = nt;
1311
+ Lexer = L;
1312
+ Tokenizer = et;
1313
+ Hooks = z;
1362
1314
  constructor(...e) {
1363
1315
  this.use(...e);
1364
1316
  }
@@ -1409,7 +1361,7 @@ ${e}</tr>
1409
1361
  }
1410
1362
  "childTokens" in e && e.childTokens && (t.childTokens[e.name] = e.childTokens);
1411
1363
  }), n.extensions = t), e.renderer) {
1412
- let t = this.defaults.renderer || new it(this.defaults);
1364
+ let t = this.defaults.renderer || new tt(this.defaults);
1413
1365
  for (let n in e.renderer) {
1414
1366
  if (!(n in t)) throw Error(`renderer '${n}' does not exist`);
1415
1367
  if (["options", "parser"].includes(n)) continue;
@@ -1422,7 +1374,7 @@ ${e}</tr>
1422
1374
  n.renderer = t;
1423
1375
  }
1424
1376
  if (e.tokenizer) {
1425
- let t = this.defaults.tokenizer || new rt(this.defaults);
1377
+ let t = this.defaults.tokenizer || new et(this.defaults);
1426
1378
  for (let n in e.tokenizer) {
1427
1379
  if (!(n in t)) throw Error(`tokenizer '${n}' does not exist`);
1428
1380
  if ([
@@ -1439,13 +1391,13 @@ ${e}</tr>
1439
1391
  n.tokenizer = t;
1440
1392
  }
1441
1393
  if (e.hooks) {
1442
- let t = this.defaults.hooks || new I();
1394
+ let t = this.defaults.hooks || new z();
1443
1395
  for (let n in e.hooks) {
1444
1396
  if (!(n in t)) throw Error(`hook '${n}' does not exist`);
1445
1397
  if (["options", "block"].includes(n)) continue;
1446
1398
  let r = n, i = e.hooks[r], a = t[r];
1447
- t[r] = I.passThroughHooks.has(n) ? (e) => {
1448
- if (this.defaults.async && I.passThroughHooksRespectAsync.has(n)) return (async () => {
1399
+ t[r] = z.passThroughHooks.has(n) ? (e) => {
1400
+ if (this.defaults.async && z.passThroughHooksRespectAsync.has(n)) return (async () => {
1449
1401
  let n = await i.call(t, e);
1450
1402
  return a.call(t, n);
1451
1403
  })();
@@ -1482,10 +1434,10 @@ ${e}</tr>
1482
1434
  }, this;
1483
1435
  }
1484
1436
  lexer(e, t) {
1485
- return P.lex(e, t ?? this.defaults);
1437
+ return L.lex(e, t ?? this.defaults);
1486
1438
  }
1487
1439
  parser(e, t) {
1488
- return F.parse(e, t ?? this.defaults);
1440
+ return R.parse(e, t ?? this.defaults);
1489
1441
  }
1490
1442
  parseMarkdown(e) {
1491
1443
  return (t, n) => {
@@ -1497,16 +1449,16 @@ ${e}</tr>
1497
1449
  if (typeof t > "u" || t === null) return a(/* @__PURE__ */ Error("marked(): input parameter is undefined or null"));
1498
1450
  if (typeof t != "string") return a(/* @__PURE__ */ Error("marked(): input parameter is of type " + Object.prototype.toString.call(t) + ", string expected"));
1499
1451
  if (i.hooks && (i.hooks.options = i, i.hooks.block = e), i.async) return (async () => {
1500
- let n = i.hooks ? await i.hooks.preprocess(t) : t, r = await (i.hooks ? await i.hooks.provideLexer(e) : e ? P.lex : P.lexInline)(n, i), a = i.hooks ? await i.hooks.processAllTokens(r) : r;
1452
+ let n = i.hooks ? await i.hooks.preprocess(t) : t, r = await (i.hooks ? await i.hooks.provideLexer(e) : e ? L.lex : L.lexInline)(n, i), a = i.hooks ? await i.hooks.processAllTokens(r) : r;
1501
1453
  i.walkTokens && await Promise.all(this.walkTokens(a, i.walkTokens));
1502
- let o = await (i.hooks ? await i.hooks.provideParser(e) : e ? F.parse : F.parseInline)(a, i);
1454
+ let o = await (i.hooks ? await i.hooks.provideParser(e) : e ? R.parse : R.parseInline)(a, i);
1503
1455
  return i.hooks ? await i.hooks.postprocess(o) : o;
1504
1456
  })().catch(a);
1505
1457
  try {
1506
1458
  i.hooks && (t = i.hooks.preprocess(t));
1507
- let n = (i.hooks ? i.hooks.provideLexer(e) : e ? P.lex : P.lexInline)(t, i);
1459
+ let n = (i.hooks ? i.hooks.provideLexer(e) : e ? L.lex : L.lexInline)(t, i);
1508
1460
  i.hooks && (n = i.hooks.processAllTokens(n)), i.walkTokens && this.walkTokens(n, i.walkTokens);
1509
- let r = (i.hooks ? i.hooks.provideParser(e) : e ? F.parse : F.parseInline)(n, i);
1461
+ let r = (i.hooks ? i.hooks.provideParser(e) : e ? R.parse : R.parseInline)(n, i);
1510
1462
  return i.hooks && (r = i.hooks.postprocess(r)), r;
1511
1463
  } catch (e) {
1512
1464
  return a(e);
@@ -1516,40 +1468,40 @@ ${e}</tr>
1516
1468
  onError(e, t) {
1517
1469
  return (n) => {
1518
1470
  if (n.message += "\nPlease report this to https://github.com/markedjs/marked.", e) {
1519
- let e = "<p>An error occurred:</p><pre>" + k(n.message + "", !0) + "</pre>";
1471
+ let e = "<p>An error occurred:</p><pre>" + M(n.message + "", !0) + "</pre>";
1520
1472
  return t ? Promise.resolve(e) : e;
1521
1473
  }
1522
1474
  if (t) return Promise.reject(n);
1523
1475
  throw n;
1524
1476
  };
1525
1477
  }
1526
- }, L = new ot();
1527
- function R(e, t) {
1528
- return L.parse(e, t);
1478
+ }, B = new rt();
1479
+ function V(e, t) {
1480
+ return B.parse(e, t);
1529
1481
  }
1530
- R.options = R.setOptions = function(e) {
1531
- return L.setOptions(e), R.defaults = L.defaults, n(R.defaults), R;
1532
- }, R.getDefaults = e, R.defaults = t;
1533
- function st(...e) {
1534
- return L.use(...e), R.defaults = L.defaults, n(R.defaults), R;
1482
+ V.options = V.setOptions = function(e) {
1483
+ return B.setOptions(e), V.defaults = B.defaults, n(V.defaults), V;
1484
+ }, V.getDefaults = e, V.defaults = t;
1485
+ function it(...e) {
1486
+ return B.use(...e), V.defaults = B.defaults, n(V.defaults), V;
1535
1487
  }
1536
- R.use = st, R.walkTokens = function(e, t) {
1537
- return L.walkTokens(e, t);
1538
- }, R.parseInline = L.parseInline, R.Parser = F, R.parser = F.parse, R.Renderer = it, R.TextRenderer = at, R.Lexer = P, R.lexer = P.lex, R.Tokenizer = rt, R.Hooks = I, R.parse = R, R.options, R.setOptions, R.walkTokens, R.parseInline, F.parse, P.lex;
1488
+ V.use = it, V.walkTokens = function(e, t) {
1489
+ return B.walkTokens(e, t);
1490
+ }, V.parseInline = B.parseInline, V.Parser = R, V.parser = R.parse, V.Renderer = tt, V.TextRenderer = nt, V.Lexer = L, V.lexer = L.lex, V.Tokenizer = et, V.Hooks = z, V.parse = V, V.options, V.setOptions, V.walkTokens, V.parseInline, R.parse, L.lex;
1539
1491
  //#endregion
1540
1492
  //#region node_modules/dompurify/dist/purify.es.mjs
1541
- function ct(e, t) {
1493
+ function at(e, t) {
1542
1494
  this.v = e, this.k = t;
1543
1495
  }
1544
- function lt(e, t) {
1496
+ function ot(e, t) {
1545
1497
  (t == null || t > e.length) && (t = e.length);
1546
1498
  for (var n = 0, r = Array(t); n < t; n++) r[n] = e[n];
1547
1499
  return r;
1548
1500
  }
1549
- function ut(e) {
1501
+ function st(e) {
1550
1502
  if (Array.isArray(e)) return e;
1551
1503
  }
1552
- function dt(e, t) {
1504
+ function ct(e, t) {
1553
1505
  var n = e == null ? null : typeof Symbol < "u" && e[Symbol.iterator] || e["@@iterator"];
1554
1506
  if (n != null) {
1555
1507
  var r, i, a, o, s = [], c = !0, l = !1;
@@ -1570,24 +1522,24 @@ function dt(e, t) {
1570
1522
  return s;
1571
1523
  }
1572
1524
  }
1573
- function ft() {
1525
+ function lt() {
1574
1526
  throw TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
1575
1527
  }
1576
- function pt(e, t) {
1577
- return ut(e) || dt(e, t) || mt(e, t) || ft();
1528
+ function ut(e, t) {
1529
+ return st(e) || ct(e, t) || dt(e, t) || lt();
1578
1530
  }
1579
- function mt(e, t) {
1531
+ function dt(e, t) {
1580
1532
  if (e) {
1581
- if (typeof e == "string") return lt(e, t);
1533
+ if (typeof e == "string") return ot(e, t);
1582
1534
  var n = {}.toString.call(e).slice(8, -1);
1583
- return n === "Object" && e.constructor && (n = e.constructor.name), n === "Map" || n === "Set" ? Array.from(e) : n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n) ? lt(e, t) : void 0;
1535
+ return n === "Object" && e.constructor && (n = e.constructor.name), n === "Map" || n === "Set" ? Array.from(e) : n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n) ? ot(e, t) : void 0;
1584
1536
  }
1585
1537
  }
1586
- function ht(e) {
1538
+ function ft(e) {
1587
1539
  var t, n;
1588
1540
  function r(t, n) {
1589
1541
  try {
1590
- var a = e[t](n), o = a.value, s = o instanceof ct;
1542
+ var a = e[t](n), o = a.value, s = o instanceof at;
1591
1543
  Promise.resolve(s ? o.v : o).then(function(n) {
1592
1544
  if (s) {
1593
1545
  var c = t === "return" && o.k ? t : "next";
@@ -1621,113 +1573,113 @@ function ht(e) {
1621
1573
  });
1622
1574
  }, typeof e.return != "function" && (this.return = void 0);
1623
1575
  }
1624
- ht.prototype[typeof Symbol == "function" && Symbol.asyncIterator || "@@asyncIterator"] = function() {
1576
+ ft.prototype[typeof Symbol == "function" && Symbol.asyncIterator || "@@asyncIterator"] = function() {
1625
1577
  return this;
1626
- }, ht.prototype.next = function(e) {
1578
+ }, ft.prototype.next = function(e) {
1627
1579
  return this._invoke("next", e);
1628
- }, ht.prototype.throw = function(e) {
1580
+ }, ft.prototype.throw = function(e) {
1629
1581
  return this._invoke("throw", e);
1630
- }, ht.prototype.return = function(e) {
1582
+ }, ft.prototype.return = function(e) {
1631
1583
  return this._invoke("return", e);
1632
1584
  };
1633
- var gt = Object.entries, z = Object.setPrototypeOf, _t = Object.isFrozen, vt = Object.getPrototypeOf, yt = Object.getOwnPropertyDescriptor, B = Object.freeze, V = Object.seal, bt = Object.create, xt = typeof Reflect < "u" && Reflect, St = xt.apply, Ct = xt.construct;
1634
- B ||= function(e) {
1585
+ var pt = Object.entries, H = Object.setPrototypeOf, mt = Object.isFrozen, ht = Object.getPrototypeOf, gt = Object.getOwnPropertyDescriptor, U = Object.freeze, W = Object.seal, _t = Object.create, vt = typeof Reflect < "u" && Reflect, yt = vt.apply, bt = vt.construct;
1586
+ U ||= function(e) {
1635
1587
  return e;
1636
- }, V ||= function(e) {
1588
+ }, W ||= function(e) {
1637
1589
  return e;
1638
- }, St ||= function(e, t) {
1590
+ }, yt ||= function(e, t) {
1639
1591
  var n = [...arguments].slice(2);
1640
1592
  return e.apply(t, n);
1641
- }, Ct ||= function(e) {
1593
+ }, bt ||= function(e) {
1642
1594
  return new e(...[...arguments].slice(1));
1643
1595
  };
1644
- var wt = K(Array.prototype.forEach);
1596
+ var xt = q(Array.prototype.forEach);
1645
1597
  Array.prototype.indexOf;
1646
- var Tt = K(Array.prototype.lastIndexOf), Et = K(Array.prototype.pop), Dt = K(Array.prototype.push);
1598
+ var St = q(Array.prototype.lastIndexOf), Ct = q(Array.prototype.pop), wt = q(Array.prototype.push);
1647
1599
  Array.prototype.slice;
1648
- var Ot = K(Array.prototype.splice), kt = Array.isArray, At = K(String.prototype.toLowerCase), jt = K(String.prototype.toString), Mt = K(String.prototype.match), Nt = K(String.prototype.replace), Pt = K(String.prototype.indexOf), Ft = K(String.prototype.trim), It = K(Number.prototype.toString), Lt = K(Boolean.prototype.toString), Rt = typeof BigInt > "u" ? null : K(BigInt.prototype.toString), zt = typeof Symbol > "u" ? null : K(Symbol.prototype.toString), H = K(Object.prototype.hasOwnProperty), U = K(Object.prototype.toString), W = K(RegExp.prototype.test), G = Bt(TypeError);
1649
- function K(e) {
1600
+ var Tt = q(Array.prototype.splice), Et = Array.isArray, Dt = q(String.prototype.toLowerCase), Ot = q(String.prototype.toString), kt = q(String.prototype.match), At = q(String.prototype.replace), jt = q(String.prototype.indexOf), Mt = q(String.prototype.trim), Nt = q(Number.prototype.toString), Pt = q(Boolean.prototype.toString), Ft = typeof BigInt > "u" ? null : q(BigInt.prototype.toString), It = typeof Symbol > "u" ? null : q(Symbol.prototype.toString), G = q(Object.prototype.hasOwnProperty), Lt = q(Object.prototype.toString), K = q(RegExp.prototype.test), Rt = zt(TypeError);
1601
+ function q(e) {
1650
1602
  return function(t) {
1651
1603
  t instanceof RegExp && (t.lastIndex = 0);
1652
1604
  var n = [...arguments].slice(1);
1653
- return St(e, t, n);
1605
+ return yt(e, t, n);
1654
1606
  };
1655
1607
  }
1656
- function Bt(e) {
1608
+ function zt(e) {
1657
1609
  return function() {
1658
- return Ct(e, [...arguments]);
1610
+ return bt(e, [...arguments]);
1659
1611
  };
1660
1612
  }
1661
- function q(e, t) {
1662
- let n = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : At;
1663
- if (z && z(e, null), !kt(t)) return e;
1613
+ function J(e, t) {
1614
+ let n = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : Dt;
1615
+ if (H && H(e, null), !Et(t)) return e;
1664
1616
  let r = t.length;
1665
1617
  for (; r--;) {
1666
1618
  let i = t[r];
1667
1619
  if (typeof i == "string") {
1668
1620
  let e = n(i);
1669
- e !== i && (_t(t) || (t[r] = e), i = e);
1621
+ e !== i && (mt(t) || (t[r] = e), i = e);
1670
1622
  }
1671
1623
  e[i] = !0;
1672
1624
  }
1673
1625
  return e;
1674
1626
  }
1675
- function Vt(e) {
1676
- for (let t = 0; t < e.length; t++) H(e, t) || (e[t] = null);
1627
+ function Bt(e) {
1628
+ for (let t = 0; t < e.length; t++) G(e, t) || (e[t] = null);
1677
1629
  return e;
1678
1630
  }
1679
- function J(e) {
1680
- let t = bt(null);
1681
- for (let r of gt(e)) {
1682
- var n = pt(r, 2);
1631
+ function Y(e) {
1632
+ let t = _t(null);
1633
+ for (let r of pt(e)) {
1634
+ var n = ut(r, 2);
1683
1635
  let i = n[0], a = n[1];
1684
- H(e, i) && (t[i] = kt(a) ? Vt(a) : a && typeof a == "object" && a.constructor === Object ? J(a) : a);
1636
+ G(e, i) && (t[i] = Et(a) ? Bt(a) : a && typeof a == "object" && a.constructor === Object ? Y(a) : a);
1685
1637
  }
1686
1638
  return t;
1687
1639
  }
1688
- function Ht(e) {
1640
+ function Vt(e) {
1689
1641
  switch (typeof e) {
1690
1642
  case "string": return e;
1691
- case "number": return It(e);
1692
- case "boolean": return Lt(e);
1693
- case "bigint": return Rt ? Rt(e) : "0";
1694
- case "symbol": return zt ? zt(e) : "Symbol()";
1695
- case "undefined": return U(e);
1643
+ case "number": return Nt(e);
1644
+ case "boolean": return Pt(e);
1645
+ case "bigint": return Ft ? Ft(e) : "0";
1646
+ case "symbol": return It ? It(e) : "Symbol()";
1647
+ case "undefined": return Lt(e);
1696
1648
  case "function":
1697
1649
  case "object": {
1698
- if (e === null) return U(e);
1699
- let t = e, n = Y(t, "toString");
1650
+ if (e === null) return Lt(e);
1651
+ let t = e, n = X(t, "toString");
1700
1652
  if (typeof n == "function") {
1701
1653
  let e = n(t);
1702
- return typeof e == "string" ? e : U(e);
1654
+ return typeof e == "string" ? e : Lt(e);
1703
1655
  }
1704
- return U(e);
1656
+ return Lt(e);
1705
1657
  }
1706
- default: return U(e);
1658
+ default: return Lt(e);
1707
1659
  }
1708
1660
  }
1709
- function Y(e, t) {
1661
+ function X(e, t) {
1710
1662
  for (; e !== null;) {
1711
- let n = yt(e, t);
1663
+ let n = gt(e, t);
1712
1664
  if (n) {
1713
- if (n.get) return K(n.get);
1714
- if (typeof n.value == "function") return K(n.value);
1665
+ if (n.get) return q(n.get);
1666
+ if (typeof n.value == "function") return q(n.value);
1715
1667
  }
1716
- e = vt(e);
1668
+ e = ht(e);
1717
1669
  }
1718
1670
  function n() {
1719
1671
  return null;
1720
1672
  }
1721
1673
  return n;
1722
1674
  }
1723
- function Ut(e) {
1675
+ function Ht(e) {
1724
1676
  try {
1725
- return W(e, ""), !0;
1677
+ return K(e, ""), !0;
1726
1678
  } catch {
1727
1679
  return !1;
1728
1680
  }
1729
1681
  }
1730
- var Wt = B(/* @__PURE__ */ "a.abbr.acronym.address.area.article.aside.audio.b.bdi.bdo.big.blink.blockquote.body.br.button.canvas.caption.center.cite.code.col.colgroup.content.data.datalist.dd.decorator.del.details.dfn.dialog.dir.div.dl.dt.element.em.fieldset.figcaption.figure.font.footer.form.h1.h2.h3.h4.h5.h6.head.header.hgroup.hr.html.i.img.input.ins.kbd.label.legend.li.main.map.mark.marquee.menu.menuitem.meter.nav.nobr.ol.optgroup.option.output.p.picture.pre.progress.q.rp.rt.ruby.s.samp.search.section.select.shadow.slot.small.source.spacer.span.strike.strong.style.sub.summary.sup.table.tbody.td.template.textarea.tfoot.th.thead.time.tr.track.tt.u.ul.var.video.wbr".split(".")), Gt = B(/* @__PURE__ */ "svg.a.altglyph.altglyphdef.altglyphitem.animatecolor.animatemotion.animatetransform.circle.clippath.defs.desc.ellipse.enterkeyhint.exportparts.filter.font.g.glyph.glyphref.hkern.image.inputmode.line.lineargradient.marker.mask.metadata.mpath.part.path.pattern.polygon.polyline.radialgradient.rect.stop.style.switch.symbol.text.textpath.title.tref.tspan.view.vkern".split(".")), Kt = B([
1682
+ var Ut = U(/* @__PURE__ */ "a.abbr.acronym.address.area.article.aside.audio.b.bdi.bdo.big.blink.blockquote.body.br.button.canvas.caption.center.cite.code.col.colgroup.content.data.datalist.dd.decorator.del.details.dfn.dialog.dir.div.dl.dt.element.em.fieldset.figcaption.figure.font.footer.form.h1.h2.h3.h4.h5.h6.head.header.hgroup.hr.html.i.img.input.ins.kbd.label.legend.li.main.map.mark.marquee.menu.menuitem.meter.nav.nobr.ol.optgroup.option.output.p.picture.pre.progress.q.rp.rt.ruby.s.samp.search.section.select.shadow.slot.small.source.spacer.span.strike.strong.style.sub.summary.sup.table.tbody.td.template.textarea.tfoot.th.thead.time.tr.track.tt.u.ul.var.video.wbr".split(".")), Wt = U(/* @__PURE__ */ "svg.a.altglyph.altglyphdef.altglyphitem.animatecolor.animatemotion.animatetransform.circle.clippath.defs.desc.ellipse.enterkeyhint.exportparts.filter.font.g.glyph.glyphref.hkern.image.inputmode.line.lineargradient.marker.mask.metadata.mpath.part.path.pattern.polygon.polyline.radialgradient.rect.stop.style.switch.symbol.text.textpath.title.tref.tspan.view.vkern".split(".")), Gt = U([
1731
1683
  "feBlend",
1732
1684
  "feColorMatrix",
1733
1685
  "feComponentTransfer",
@@ -1753,7 +1705,7 @@ var Wt = B(/* @__PURE__ */ "a.abbr.acronym.address.area.article.aside.audio.b.bd
1753
1705
  "feSpotLight",
1754
1706
  "feTile",
1755
1707
  "feTurbulence"
1756
- ]), qt = B([
1708
+ ]), Kt = U([
1757
1709
  "animate",
1758
1710
  "color-profile",
1759
1711
  "cursor",
@@ -1776,7 +1728,7 @@ var Wt = B(/* @__PURE__ */ "a.abbr.acronym.address.area.article.aside.audio.b.bd
1776
1728
  "solidcolor",
1777
1729
  "unknown",
1778
1730
  "use"
1779
- ]), Jt = B(/* @__PURE__ */ "math.menclose.merror.mfenced.mfrac.mglyph.mi.mlabeledtr.mmultiscripts.mn.mo.mover.mpadded.mphantom.mroot.mrow.ms.mspace.msqrt.mstyle.msub.msup.msubsup.mtable.mtd.mtext.mtr.munder.munderover.mprescripts".split(".")), Yt = B([
1731
+ ]), qt = U(/* @__PURE__ */ "math.menclose.merror.mfenced.mfrac.mglyph.mi.mlabeledtr.mmultiscripts.mn.mo.mover.mpadded.mphantom.mroot.mrow.ms.mspace.msqrt.mstyle.msub.msup.msubsup.mtable.mtd.mtext.mtr.munder.munderover.mprescripts".split(".")), Jt = U([
1780
1732
  "maction",
1781
1733
  "maligngroup",
1782
1734
  "malignmark",
@@ -1792,13 +1744,13 @@ var Wt = B(/* @__PURE__ */ "a.abbr.acronym.address.area.article.aside.audio.b.bd
1792
1744
  "annotation-xml",
1793
1745
  "mprescripts",
1794
1746
  "none"
1795
- ]), Xt = B(["#text"]), Zt = B(/* @__PURE__ */ "accept.action.align.alt.autocapitalize.autocomplete.autopictureinpicture.autoplay.background.bgcolor.border.capture.cellpadding.cellspacing.checked.cite.class.clear.color.cols.colspan.command.commandfor.controls.controlslist.coords.crossorigin.datetime.decoding.default.dir.disabled.disablepictureinpicture.disableremoteplayback.download.draggable.enctype.enterkeyhint.exportparts.face.for.headers.height.hidden.high.href.hreflang.id.inert.inputmode.integrity.ismap.kind.label.lang.list.loading.loop.low.max.maxlength.media.method.min.minlength.multiple.muted.name.nonce.noshade.novalidate.nowrap.open.optimum.part.pattern.placeholder.playsinline.popover.popovertarget.popovertargetaction.poster.preload.pubdate.radiogroup.readonly.rel.required.rev.reversed.role.rows.rowspan.spellcheck.scope.selected.shape.size.sizes.slot.span.srclang.start.src.srcset.step.style.summary.tabindex.title.translate.type.usemap.valign.value.width.wrap.xmlns".split(".")), Qt = B(/* @__PURE__ */ "accent-height.accumulate.additive.alignment-baseline.amplitude.ascent.attributename.attributetype.azimuth.basefrequency.baseline-shift.begin.bias.by.class.clip.clippathunits.clip-path.clip-rule.color.color-interpolation.color-interpolation-filters.color-profile.color-rendering.cx.cy.d.dx.dy.diffuseconstant.direction.display.divisor.dominant-baseline.dur.edgemode.elevation.end.exponent.fill.fill-opacity.fill-rule.filter.filterunits.flood-color.flood-opacity.font-family.font-size.font-size-adjust.font-stretch.font-style.font-variant.font-weight.fx.fy.g1.g2.glyph-name.glyphref.gradientunits.gradienttransform.height.href.id.image-rendering.in.in2.intercept.k.k1.k2.k3.k4.kerning.keypoints.keysplines.keytimes.lang.lengthadjust.letter-spacing.kernelmatrix.kernelunitlength.lighting-color.local.marker-end.marker-mid.marker-start.markerheight.markerunits.markerwidth.maskcontentunits.maskunits.max.mask.mask-type.media.method.mode.min.name.numoctaves.offset.operator.opacity.order.orient.orientation.origin.overflow.paint-order.path.pathlength.patterncontentunits.patterntransform.patternunits.pointer-events.points.preservealpha.preserveaspectratio.primitiveunits.r.rx.ry.radius.refx.refy.repeatcount.repeatdur.restart.result.rotate.scale.seed.shape-rendering.slope.specularconstant.specularexponent.spreadmethod.startoffset.stddeviation.stitchtiles.stop-color.stop-opacity.stroke-dasharray.stroke-dashoffset.stroke-linecap.stroke-linejoin.stroke-miterlimit.stroke-opacity.stroke.stroke-width.style.surfacescale.systemlanguage.tabindex.tablevalues.targetx.targety.transform.transform-origin.text-anchor.text-decoration.text-orientation.text-rendering.textlength.type.u1.u2.unicode.values.vector-effect.viewbox.visibility.version.vert-adv-y.vert-origin-x.vert-origin-y.width.word-spacing.wrap.writing-mode.xchannelselector.ychannelselector.x.x1.x2.xmlns.y.y1.y2.z.zoomandpan".split(".")), $t = B(/* @__PURE__ */ "accent.accentunder.align.bevelled.close.columnalign.columnlines.columnspacing.columnspan.denomalign.depth.dir.display.displaystyle.encoding.fence.frame.height.href.id.largeop.length.linethickness.lquote.lspace.mathbackground.mathcolor.mathsize.mathvariant.maxsize.minsize.movablelimits.notation.numalign.open.rowalign.rowlines.rowspacing.rowspan.rspace.rquote.scriptlevel.scriptminsize.scriptsizemultiplier.selection.separator.separators.stretchy.subscriptshift.supscriptshift.symmetric.voffset.width.xmlns".split(".")), en = B([
1747
+ ]), Yt = U(["#text"]), Xt = U(/* @__PURE__ */ "accept.action.align.alt.autocapitalize.autocomplete.autopictureinpicture.autoplay.background.bgcolor.border.capture.cellpadding.cellspacing.checked.cite.class.clear.color.cols.colspan.command.commandfor.controls.controlslist.coords.crossorigin.datetime.decoding.default.dir.disabled.disablepictureinpicture.disableremoteplayback.download.draggable.enctype.enterkeyhint.exportparts.face.for.headers.height.hidden.high.href.hreflang.id.inert.inputmode.integrity.ismap.kind.label.lang.list.loading.loop.low.max.maxlength.media.method.min.minlength.multiple.muted.name.nonce.noshade.novalidate.nowrap.open.optimum.part.pattern.placeholder.playsinline.popover.popovertarget.popovertargetaction.poster.preload.pubdate.radiogroup.readonly.rel.required.rev.reversed.role.rows.rowspan.spellcheck.scope.selected.shape.size.sizes.slot.span.srclang.start.src.srcset.step.style.summary.tabindex.title.translate.type.usemap.valign.value.width.wrap.xmlns".split(".")), Zt = U(/* @__PURE__ */ "accent-height.accumulate.additive.alignment-baseline.amplitude.ascent.attributename.attributetype.azimuth.basefrequency.baseline-shift.begin.bias.by.class.clip.clippathunits.clip-path.clip-rule.color.color-interpolation.color-interpolation-filters.color-profile.color-rendering.cx.cy.d.dx.dy.diffuseconstant.direction.display.divisor.dominant-baseline.dur.edgemode.elevation.end.exponent.fill.fill-opacity.fill-rule.filter.filterunits.flood-color.flood-opacity.font-family.font-size.font-size-adjust.font-stretch.font-style.font-variant.font-weight.fx.fy.g1.g2.glyph-name.glyphref.gradientunits.gradienttransform.height.href.id.image-rendering.in.in2.intercept.k.k1.k2.k3.k4.kerning.keypoints.keysplines.keytimes.lang.lengthadjust.letter-spacing.kernelmatrix.kernelunitlength.lighting-color.local.marker-end.marker-mid.marker-start.markerheight.markerunits.markerwidth.maskcontentunits.maskunits.max.mask.mask-type.media.method.mode.min.name.numoctaves.offset.operator.opacity.order.orient.orientation.origin.overflow.paint-order.path.pathlength.patterncontentunits.patterntransform.patternunits.pointer-events.points.preservealpha.preserveaspectratio.primitiveunits.r.rx.ry.radius.refx.refy.repeatcount.repeatdur.restart.result.rotate.scale.seed.shape-rendering.slope.specularconstant.specularexponent.spreadmethod.startoffset.stddeviation.stitchtiles.stop-color.stop-opacity.stroke-dasharray.stroke-dashoffset.stroke-linecap.stroke-linejoin.stroke-miterlimit.stroke-opacity.stroke.stroke-width.style.surfacescale.systemlanguage.tabindex.tablevalues.targetx.targety.transform.transform-origin.text-anchor.text-decoration.text-orientation.text-rendering.textlength.type.u1.u2.unicode.values.vector-effect.viewbox.visibility.version.vert-adv-y.vert-origin-x.vert-origin-y.width.word-spacing.wrap.writing-mode.xchannelselector.ychannelselector.x.x1.x2.xmlns.y.y1.y2.z.zoomandpan".split(".")), Qt = U(/* @__PURE__ */ "accent.accentunder.align.bevelled.close.columnalign.columnlines.columnspacing.columnspan.denomalign.depth.dir.display.displaystyle.encoding.fence.frame.height.href.id.largeop.length.linethickness.lquote.lspace.mathbackground.mathcolor.mathsize.mathvariant.maxsize.minsize.movablelimits.notation.numalign.open.rowalign.rowlines.rowspacing.rowspan.rspace.rquote.scriptlevel.scriptminsize.scriptsizemultiplier.selection.separator.separators.stretchy.subscriptshift.supscriptshift.symmetric.voffset.width.xmlns".split(".")), $t = U([
1796
1748
  "xlink:href",
1797
1749
  "xml:id",
1798
1750
  "xlink:title",
1799
1751
  "xml:space",
1800
1752
  "xmlns:xlink"
1801
- ]), tn = V(/{{[\w\W]*|^[\w\W]*}}/g), nn = V(/<%[\w\W]*|^[\w\W]*%>/g), rn = V(/\${[\w\W]*/g), an = V(/^data-[\-\w.\u00B7-\uFFFF]+$/), on = V(/^aria-[\-\w]+$/), sn = V(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i), cn = V(/^(?:\w+script|data):/i), ln = V(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g), un = V(/^html$/i), dn = V(/^[a-z][.\w]*(-[.\w]+)+$/i), fn = V(/<[/\w!]/g), pn = V(/<[/\w]/g), mn = V(/<\/no(script|embed|frames)/i), hn = V(/\/>/i), X = {
1753
+ ]), en = W(/{{[\w\W]*|^[\w\W]*}}/g), tn = W(/<%[\w\W]*|^[\w\W]*%>/g), nn = W(/\${[\w\W]*/g), rn = W(/^data-[\-\w.\u00B7-\uFFFF]+$/), an = W(/^aria-[\-\w]+$/), on = W(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i), sn = W(/^(?:\w+script|data):/i), cn = W(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g), ln = W(/^html$/i), un = W(/^[a-z][.\w]*(-[.\w]+)+$/i), dn = W(/<[/\w!]/g), fn = W(/<[/\w]/g), pn = W(/<\/no(script|embed|frames)/i), mn = W(/\/>/i), Z = {
1802
1754
  element: 1,
1803
1755
  attribute: 2,
1804
1756
  text: 3,
@@ -1811,7 +1763,7 @@ var Wt = B(/* @__PURE__ */ "a.abbr.acronym.address.area.article.aside.audio.b.bd
1811
1763
  documentType: 10,
1812
1764
  documentFragment: 11,
1813
1765
  notation: 12
1814
- }, Z = [
1766
+ }, Q = [
1815
1767
  "style",
1816
1768
  "script",
1817
1769
  "xmp",
@@ -1820,14 +1772,14 @@ var Wt = B(/* @__PURE__ */ "a.abbr.acronym.address.area.article.aside.audio.b.bd
1820
1772
  "noframes",
1821
1773
  "plaintext",
1822
1774
  "noscript"
1823
- ], gn = B(q({}, Z)), _n = function() {
1775
+ ], hn = U(J({}, Q)), gn = function() {
1824
1776
  let e = {};
1825
- return wt(Z, (t) => {
1826
- e[t] = V(RegExp("</" + t + "(?=[\\t\\n\\f\\r />])", "i"));
1827
- }), B(e);
1828
- }(), vn = function() {
1777
+ return xt(Q, (t) => {
1778
+ e[t] = W(RegExp("</" + t + "(?=[\\t\\n\\f\\r />])", "i"));
1779
+ }), U(e);
1780
+ }(), _n = function() {
1829
1781
  return typeof window > "u" ? null : window;
1830
- }, yn = function(e, t) {
1782
+ }, vn = function(e, t) {
1831
1783
  if (typeof e != "object" || typeof e.createPolicy != "function") return null;
1832
1784
  let n = null, r = "data-tt-policy-suffix";
1833
1785
  t && t.hasAttribute(r) && (n = t.getAttribute(r));
@@ -1844,7 +1796,7 @@ var Wt = B(/* @__PURE__ */ "a.abbr.acronym.address.area.article.aside.audio.b.bd
1844
1796
  } catch {
1845
1797
  return console.warn("TrustedTypes policy " + i + " could not be created."), null;
1846
1798
  }
1847
- }, bn = function() {
1799
+ }, yn = function() {
1848
1800
  return {
1849
1801
  afterSanitizeAttributes: [],
1850
1802
  afterSanitizeElements: [],
@@ -1856,60 +1808,60 @@ var Wt = B(/* @__PURE__ */ "a.abbr.acronym.address.area.article.aside.audio.b.bd
1856
1808
  uponSanitizeElement: [],
1857
1809
  uponSanitizeShadowNode: []
1858
1810
  };
1859
- }, xn = function(e, t, n, r) {
1860
- return H(e, t) && kt(e[t]) ? q(r.base ? J(r.base) : {}, e[t], r.transform) : n;
1861
- }, Sn = function(e, t, n) {
1862
- let r = H(e, t) ? e[t] : void 0;
1863
- return r && typeof r == "object" ? J(r) : n();
1811
+ }, bn = function(e, t, n, r) {
1812
+ return G(e, t) && Et(e[t]) ? J(r.base ? Y(r.base) : {}, e[t], r.transform) : n;
1813
+ }, xn = function(e, t, n) {
1814
+ let r = G(e, t) ? e[t] : void 0;
1815
+ return r && typeof r == "object" ? Y(r) : n();
1864
1816
  };
1865
- function Cn() {
1866
- let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : vn(), t = (e) => Cn(e);
1867
- if (t.version = "3.4.16", t.removed = [], !e || !e.document || e.document.nodeType !== X.document || !e.Element) return t.isSupported = !1, t;
1817
+ function Sn() {
1818
+ let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : _n(), t = (e) => Sn(e);
1819
+ if (t.version = "3.4.16", t.removed = [], !e || !e.document || e.document.nodeType !== Z.document || !e.Element) return t.isSupported = !1, t;
1868
1820
  let n = e.document, r = n, i = r.currentScript;
1869
1821
  e.DocumentFragment;
1870
1822
  let a = e.HTMLTemplateElement, o = e.Node, s = e.Element, c = e.NodeFilter;
1871
1823
  e.NamedNodeMap === void 0 && (e.NamedNodeMap || e.MozNamedAttrMap), e.HTMLFormElement;
1872
- let l = e.DOMParser, u = e.trustedTypes, d = s.prototype, f = Y(d, "cloneNode"), p = Y(d, "remove"), m = Y(d, "removeAttributeNode"), h = Y(d, "nextSibling"), g = Y(d, "childNodes"), _ = Y(d, "parentNode"), v = Y(d, "shadowRoot"), ee = Y(d, "attributes"), te = o && o.prototype ? Y(o.prototype, "nodeType") : null, ne = o && o.prototype ? Y(o.prototype, "nodeName") : null, y = o && o.prototype ? Y(o.prototype, "ownerDocument") : null, b = function(e) {
1873
- return te ? te(e) : e.nodeType;
1874
- }, re = function(e) {
1824
+ let l = e.DOMParser, u = e.trustedTypes, d = s.prototype, f = X(d, "cloneNode"), p = X(d, "remove"), m = X(d, "removeAttributeNode"), ee = X(d, "nextSibling"), h = X(d, "childNodes"), g = X(d, "parentNode"), _ = X(d, "shadowRoot"), te = X(d, "attributes"), v = o && o.prototype ? X(o.prototype, "nodeType") : null, ne = o && o.prototype ? X(o.prototype, "nodeName") : null, y = o && o.prototype ? X(o.prototype, "ownerDocument") : null, re = function(e) {
1825
+ return v ? v(e) : e.nodeType;
1826
+ }, ie = function(e) {
1875
1827
  return ne ? ne(e) : e.nodeName;
1876
1828
  };
1877
1829
  if (typeof a == "function") {
1878
1830
  let e = n.createElement("template");
1879
1831
  e.content && e.content.ownerDocument && (n = e.content.ownerDocument);
1880
1832
  }
1881
- let x, ie = "", ae, oe = !1, se = 0, ce = function() {
1882
- if (se > 0) throw G("A configured TRUSTED_TYPES_POLICY callback (createHTML or createScriptURL) must not call DOMPurify.sanitize, as that causes infinite recursion. Do not pass a policy whose callbacks wrap DOMPurify as TRUSTED_TYPES_POLICY; see the \"DOMPurify and Trusted Types\" section of the README.");
1883
- }, le = function(e) {
1884
- ce(), se++;
1833
+ let b, ae = "", oe, se = !1, ce = 0, le = function() {
1834
+ if (ce > 0) throw Rt("A configured TRUSTED_TYPES_POLICY callback (createHTML or createScriptURL) must not call DOMPurify.sanitize, as that causes infinite recursion. Do not pass a policy whose callbacks wrap DOMPurify as TRUSTED_TYPES_POLICY; see the \"DOMPurify and Trusted Types\" section of the README.");
1835
+ }, ue = function(e) {
1836
+ le(), ce++;
1885
1837
  try {
1886
- return x.createHTML(e);
1838
+ return b.createHTML(e);
1887
1839
  } finally {
1888
- se--;
1840
+ ce--;
1889
1841
  }
1890
- }, ue = function(e) {
1891
- ce(), se++;
1842
+ }, de = function(e) {
1843
+ le(), ce++;
1892
1844
  try {
1893
- return x.createScriptURL(e);
1845
+ return b.createScriptURL(e);
1894
1846
  } finally {
1895
- se--;
1896
- }
1897
- }, de = function() {
1898
- return oe ||= (ae = yn(u, i), !0), ae;
1899
- }, fe = n, pe = fe.implementation, S = fe.createNodeIterator, me = fe.createDocumentFragment, he = fe.getElementsByTagName, ge = r.importNode, C = bn();
1900
- t.isSupported = typeof gt == "function" && typeof _ == "function" && pe && pe.createHTMLDocument !== void 0;
1901
- let _e = tn, ve = nn, ye = rn, be = an, xe = on, Se = cn, Ce = ln, we = dn, Te = sn, w = null, Ee = q({}, [
1847
+ ce--;
1848
+ }
1849
+ }, fe = function() {
1850
+ return se ||= (oe = vn(u, i), !0), oe;
1851
+ }, pe = n, me = pe.implementation, x = pe.createNodeIterator, he = pe.createDocumentFragment, ge = pe.getElementsByTagName, _e = r.importNode, S = yn();
1852
+ t.isSupported = typeof pt == "function" && typeof g == "function" && me && me.createHTMLDocument !== void 0;
1853
+ let ve = en, ye = tn, be = nn, xe = rn, Se = an, Ce = sn, we = cn, Te = un, Ee = on, C = null, De = J({}, [
1854
+ ...Ut,
1902
1855
  ...Wt,
1903
1856
  ...Gt,
1904
- ...Kt,
1905
- ...Jt,
1906
- ...Xt
1907
- ]), T = null, De = q({}, [
1857
+ ...qt,
1858
+ ...Yt
1859
+ ]), w = null, Oe = J({}, [
1860
+ ...Xt,
1908
1861
  ...Zt,
1909
1862
  ...Qt,
1910
- ...$t,
1911
- ...en
1912
- ]), E = Object.seal(bt(null, {
1863
+ ...$t
1864
+ ]), T = Object.seal(_t(null, {
1913
1865
  tagNameCheck: {
1914
1866
  writable: !0,
1915
1867
  configurable: !1,
@@ -1928,7 +1880,7 @@ function Cn() {
1928
1880
  enumerable: !0,
1929
1881
  value: !1
1930
1882
  }
1931
- })), Oe = null, ke = null, D = Object.seal(bt(null, {
1883
+ })), ke = null, Ae = null, E = Object.seal(_t(null, {
1932
1884
  tagCheck: {
1933
1885
  writable: !0,
1934
1886
  configurable: !1,
@@ -1941,14 +1893,14 @@ function Cn() {
1941
1893
  enumerable: !0,
1942
1894
  value: null
1943
1895
  }
1944
- })), Ae = !0, je = !0, Me = !1, Ne = !0, O = !1, Pe = !0, Fe = !1, Ie = !1, Le = null, Re = null, ze = !1, Be = !1, Ve = !1, He = !1, Ue = !0, We = !1, Ge = "user-content-", Ke = !0, qe = !1, Je = {}, Ye = null, k = q({}, /* @__PURE__ */ "annotation-xml.audio.colgroup.desc.foreignobject.head.iframe.math.mi.mn.mo.ms.mtext.noembed.noframes.noscript.plaintext.script.selectedcontent.style.svg.template.thead.title.video.xmp".split(".")), Xe = null, Ze = q({}, [
1896
+ })), je = !0, Me = !0, Ne = !1, Pe = !0, D = !1, Fe = !0, O = !1, Ie = !1, Le = null, Re = null, ze = !1, k = !1, Be = !1, Ve = !1, He = !0, Ue = !1, We = "user-content-", Ge = !0, A = !1, Ke = {}, j = null, M = J({}, /* @__PURE__ */ "annotation-xml.audio.colgroup.desc.foreignobject.head.iframe.math.mi.mn.mo.ms.mtext.noembed.noframes.noscript.plaintext.script.selectedcontent.style.svg.template.thead.title.video.xmp".split(".")), qe = null, Je = J({}, [
1945
1897
  "audio",
1946
1898
  "video",
1947
1899
  "img",
1948
1900
  "source",
1949
1901
  "image",
1950
1902
  "track"
1951
- ]), Qe = null, A = q({}, [
1903
+ ]), Ye = null, N = J({}, [
1952
1904
  "alt",
1953
1905
  "class",
1954
1906
  "for",
@@ -1963,77 +1915,77 @@ function Cn() {
1963
1915
  "value",
1964
1916
  "style",
1965
1917
  "xmlns"
1966
- ]), $e = "http://www.w3.org/1998/Math/MathML", j = "http://www.w3.org/2000/svg", M = "http://www.w3.org/1999/xhtml", N = M, et = !1, tt = null, nt = q({}, [
1967
- $e,
1968
- j,
1969
- M
1970
- ], jt), rt = B([
1918
+ ]), Xe = "http://www.w3.org/1998/Math/MathML", P = "http://www.w3.org/2000/svg", F = "http://www.w3.org/1999/xhtml", I = F, Ze = !1, Qe = null, $e = J({}, [
1919
+ Xe,
1920
+ P,
1921
+ F
1922
+ ], Ot), et = U([
1971
1923
  "mi",
1972
1924
  "mo",
1973
1925
  "mn",
1974
1926
  "ms",
1975
1927
  "mtext"
1976
- ]), P = q({}, rt), it = B(["annotation-xml"]), at = q({}, it), F = q({}, [
1928
+ ]), L = J({}, et), tt = U(["annotation-xml"]), nt = J({}, tt), R = J({}, [
1977
1929
  "title",
1978
1930
  "style",
1979
1931
  "font",
1980
1932
  "a",
1981
1933
  "script"
1982
- ]), I = null, ot = ["application/xhtml+xml", "text/html"], L = null, R = null, st = n.createElement("form"), ct = function(e) {
1934
+ ]), z = null, rt = ["application/xhtml+xml", "text/html"], B = null, V = null, it = n.createElement("form"), at = function(e) {
1983
1935
  return e instanceof RegExp || e instanceof Function;
1984
- }, lt = function() {
1936
+ }, ot = function() {
1985
1937
  let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
1986
- if (R && R === e) return;
1987
- (!e || typeof e != "object") && (e = {}), e = J(e), I = ot.indexOf(e.PARSER_MEDIA_TYPE) === -1 ? "text/html" : e.PARSER_MEDIA_TYPE, L = I === "application/xhtml+xml" ? jt : At, w = xn(e, "ALLOWED_TAGS", Ee, { transform: L }), T = xn(e, "ALLOWED_ATTR", De, { transform: L }), tt = xn(e, "ALLOWED_NAMESPACES", nt, { transform: jt }), Qe = xn(e, "ADD_URI_SAFE_ATTR", A, {
1988
- transform: L,
1989
- base: A
1990
- }), Xe = xn(e, "ADD_DATA_URI_TAGS", Ze, {
1991
- transform: L,
1992
- base: Ze
1993
- }), Ye = xn(e, "FORBID_CONTENTS", k, { transform: L }), Oe = xn(e, "FORBID_TAGS", J({}), { transform: L }), ke = xn(e, "FORBID_ATTR", J({}), { transform: L }), Je = H(e, "USE_PROFILES") ? e.USE_PROFILES && typeof e.USE_PROFILES == "object" ? J(e.USE_PROFILES) : e.USE_PROFILES : !1, Ae = e.ALLOW_ARIA_ATTR !== !1, je = e.ALLOW_DATA_ATTR !== !1, Me = e.ALLOW_UNKNOWN_PROTOCOLS || !1, Ne = e.ALLOW_SELF_CLOSE_IN_ATTR !== !1, O = e.SAFE_FOR_TEMPLATES || !1, Pe = e.SAFE_FOR_XML !== !1, Fe = e.WHOLE_DOCUMENT || !1, Be = e.RETURN_DOM || !1, Ve = e.RETURN_DOM_FRAGMENT || !1, He = e.RETURN_TRUSTED_TYPE || !1, ze = e.FORCE_BODY || !1, Ue = e.SANITIZE_DOM !== !1, We = e.SANITIZE_NAMED_PROPS || !1, Ke = e.KEEP_CONTENT !== !1, qe = e.IN_PLACE || !1, Te = Ut(e.ALLOWED_URI_REGEXP) ? e.ALLOWED_URI_REGEXP : sn, N = typeof e.NAMESPACE == "string" ? e.NAMESPACE : M, P = Sn(e, "MATHML_TEXT_INTEGRATION_POINTS", () => q({}, rt)), at = Sn(e, "HTML_INTEGRATION_POINTS", () => q({}, it));
1994
- let t = Sn(e, "CUSTOM_ELEMENT_HANDLING", () => bt(null));
1995
- if (E = bt(null), H(t, "tagNameCheck") && ct(t.tagNameCheck) && (E.tagNameCheck = t.tagNameCheck), H(t, "attributeNameCheck") && ct(t.attributeNameCheck) && (E.attributeNameCheck = t.attributeNameCheck), H(t, "allowCustomizedBuiltInElements") && typeof t.allowCustomizedBuiltInElements == "boolean" && (E.allowCustomizedBuiltInElements = t.allowCustomizedBuiltInElements), V(E), O && (je = !1), Ve && (Be = !0), Je && (w = q({}, Xt), T = bt(null), Je.html === !0 && (q(w, Wt), q(T, Zt)), Je.svg === !0 && (q(w, Gt), q(T, Qt), q(T, en)), Je.svgFilters === !0 && (q(w, Kt), q(T, Qt), q(T, en)), Je.mathMl === !0 && (q(w, Jt), q(T, $t), q(T, en))), D.tagCheck = null, D.attributeCheck = null, H(e, "ADD_TAGS") && (typeof e.ADD_TAGS == "function" ? D.tagCheck = e.ADD_TAGS : kt(e.ADD_TAGS) && (w === Ee && (w = J(w)), q(w, e.ADD_TAGS, L))), H(e, "ADD_ATTR") && (typeof e.ADD_ATTR == "function" ? D.attributeCheck = e.ADD_ATTR : kt(e.ADD_ATTR) && (T === De && (T = J(T)), q(T, e.ADD_ATTR, L))), H(e, "ADD_FORBID_CONTENTS") && kt(e.ADD_FORBID_CONTENTS) && (Ye === k && (Ye = J(Ye)), q(Ye, e.ADD_FORBID_CONTENTS, L)), Ke && (w["#text"] = !0), Fe && q(w, [
1938
+ if (V && V === e) return;
1939
+ (!e || typeof e != "object") && (e = {}), e = Y(e), z = rt.indexOf(e.PARSER_MEDIA_TYPE) === -1 ? "text/html" : e.PARSER_MEDIA_TYPE, B = z === "application/xhtml+xml" ? Ot : Dt, C = bn(e, "ALLOWED_TAGS", De, { transform: B }), w = bn(e, "ALLOWED_ATTR", Oe, { transform: B }), Qe = bn(e, "ALLOWED_NAMESPACES", $e, { transform: Ot }), Ye = bn(e, "ADD_URI_SAFE_ATTR", N, {
1940
+ transform: B,
1941
+ base: N
1942
+ }), qe = bn(e, "ADD_DATA_URI_TAGS", Je, {
1943
+ transform: B,
1944
+ base: Je
1945
+ }), j = bn(e, "FORBID_CONTENTS", M, { transform: B }), ke = bn(e, "FORBID_TAGS", Y({}), { transform: B }), Ae = bn(e, "FORBID_ATTR", Y({}), { transform: B }), Ke = G(e, "USE_PROFILES") ? e.USE_PROFILES && typeof e.USE_PROFILES == "object" ? Y(e.USE_PROFILES) : e.USE_PROFILES : !1, je = e.ALLOW_ARIA_ATTR !== !1, Me = e.ALLOW_DATA_ATTR !== !1, Ne = e.ALLOW_UNKNOWN_PROTOCOLS || !1, Pe = e.ALLOW_SELF_CLOSE_IN_ATTR !== !1, D = e.SAFE_FOR_TEMPLATES || !1, Fe = e.SAFE_FOR_XML !== !1, O = e.WHOLE_DOCUMENT || !1, k = e.RETURN_DOM || !1, Be = e.RETURN_DOM_FRAGMENT || !1, Ve = e.RETURN_TRUSTED_TYPE || !1, ze = e.FORCE_BODY || !1, He = e.SANITIZE_DOM !== !1, Ue = e.SANITIZE_NAMED_PROPS || !1, Ge = e.KEEP_CONTENT !== !1, A = e.IN_PLACE || !1, Ee = Ht(e.ALLOWED_URI_REGEXP) ? e.ALLOWED_URI_REGEXP : on, I = typeof e.NAMESPACE == "string" ? e.NAMESPACE : F, L = xn(e, "MATHML_TEXT_INTEGRATION_POINTS", () => J({}, et)), nt = xn(e, "HTML_INTEGRATION_POINTS", () => J({}, tt));
1946
+ let t = xn(e, "CUSTOM_ELEMENT_HANDLING", () => _t(null));
1947
+ if (T = _t(null), G(t, "tagNameCheck") && at(t.tagNameCheck) && (T.tagNameCheck = t.tagNameCheck), G(t, "attributeNameCheck") && at(t.attributeNameCheck) && (T.attributeNameCheck = t.attributeNameCheck), G(t, "allowCustomizedBuiltInElements") && typeof t.allowCustomizedBuiltInElements == "boolean" && (T.allowCustomizedBuiltInElements = t.allowCustomizedBuiltInElements), W(T), D && (Me = !1), Be && (k = !0), Ke && (C = J({}, Yt), w = _t(null), Ke.html === !0 && (J(C, Ut), J(w, Xt)), Ke.svg === !0 && (J(C, Wt), J(w, Zt), J(w, $t)), Ke.svgFilters === !0 && (J(C, Gt), J(w, Zt), J(w, $t)), Ke.mathMl === !0 && (J(C, qt), J(w, Qt), J(w, $t))), E.tagCheck = null, E.attributeCheck = null, G(e, "ADD_TAGS") && (typeof e.ADD_TAGS == "function" ? E.tagCheck = e.ADD_TAGS : Et(e.ADD_TAGS) && (C === De && (C = Y(C)), J(C, e.ADD_TAGS, B))), G(e, "ADD_ATTR") && (typeof e.ADD_ATTR == "function" ? E.attributeCheck = e.ADD_ATTR : Et(e.ADD_ATTR) && (w === Oe && (w = Y(w)), J(w, e.ADD_ATTR, B))), G(e, "ADD_FORBID_CONTENTS") && Et(e.ADD_FORBID_CONTENTS) && (j === M && (j = Y(j)), J(j, e.ADD_FORBID_CONTENTS, B)), Ge && (C["#text"] = !0), O && J(C, [
1996
1948
  "html",
1997
1949
  "head",
1998
1950
  "body"
1999
- ]), w.table && (q(w, ["tbody"]), delete Oe.tbody), e.TRUSTED_TYPES_POLICY) {
2000
- if (typeof e.TRUSTED_TYPES_POLICY.createHTML != "function") throw G("TRUSTED_TYPES_POLICY configuration option must provide a \"createHTML\" hook.");
2001
- if (typeof e.TRUSTED_TYPES_POLICY.createScriptURL != "function") throw G("TRUSTED_TYPES_POLICY configuration option must provide a \"createScriptURL\" hook.");
2002
- let t = x;
2003
- x = e.TRUSTED_TYPES_POLICY;
1951
+ ]), C.table && (J(C, ["tbody"]), delete ke.tbody), e.TRUSTED_TYPES_POLICY) {
1952
+ if (typeof e.TRUSTED_TYPES_POLICY.createHTML != "function") throw Rt("TRUSTED_TYPES_POLICY configuration option must provide a \"createHTML\" hook.");
1953
+ if (typeof e.TRUSTED_TYPES_POLICY.createScriptURL != "function") throw Rt("TRUSTED_TYPES_POLICY configuration option must provide a \"createScriptURL\" hook.");
1954
+ let t = b;
1955
+ b = e.TRUSTED_TYPES_POLICY;
2004
1956
  try {
2005
- ie = le("");
1957
+ ae = ue("");
2006
1958
  } catch (e) {
2007
- throw x = t, e;
1959
+ throw b = t, e;
2008
1960
  }
2009
- } else e.TRUSTED_TYPES_POLICY === null ? (x = void 0, ie = "") : (x === void 0 && (x = de()), x && typeof ie == "string" && (ie = le("")));
2010
- B && B(e), R = e;
2011
- }, ut = q({}, [
1961
+ } else e.TRUSTED_TYPES_POLICY === null ? (b = void 0, ae = "") : (b === void 0 && (b = fe()), b && typeof ae == "string" && (ae = ue("")));
1962
+ U && U(e), V = e;
1963
+ }, st = J({}, [
1964
+ ...Wt,
2012
1965
  ...Gt,
2013
- ...Kt,
2014
- ...qt
2015
- ]), dt = q({}, [...Jt, ...Yt]), ft = function(e, t, n) {
2016
- return t.namespaceURI === M ? e === "svg" : t.namespaceURI === $e ? e === "svg" && (n === "annotation-xml" || P[n]) : !!ut[e];
2017
- }, pt = function(e, t, n) {
2018
- return t.namespaceURI === M ? e === "math" : t.namespaceURI === j ? e === "math" && at[n] : !!dt[e];
2019
- }, mt = function(e, t, n) {
2020
- return t.namespaceURI === j && !at[n] || t.namespaceURI === $e && !P[n] ? !1 : !dt[e] && (F[e] || !ut[e]);
2021
- }, ht = function(e) {
2022
- let t = _(e);
1966
+ ...Kt
1967
+ ]), ct = J({}, [...qt, ...Jt]), lt = function(e, t, n) {
1968
+ return t.namespaceURI === F ? e === "svg" : t.namespaceURI === Xe ? e === "svg" && (n === "annotation-xml" || L[n]) : !!st[e];
1969
+ }, ut = function(e, t, n) {
1970
+ return t.namespaceURI === F ? e === "math" : t.namespaceURI === P ? e === "math" && nt[n] : !!ct[e];
1971
+ }, dt = function(e, t, n) {
1972
+ return t.namespaceURI === P && !nt[n] || t.namespaceURI === Xe && !L[n] ? !1 : !ct[e] && (R[e] || !st[e]);
1973
+ }, ft = function(e) {
1974
+ let t = g(e);
2023
1975
  (!t || !t.tagName) && (t = {
2024
- namespaceURI: N,
1976
+ namespaceURI: I,
2025
1977
  tagName: "template"
2026
1978
  });
2027
- let n = At(e.tagName), r = At(t.tagName);
2028
- return tt[e.namespaceURI] ? e.namespaceURI === j ? ft(n, t, r) : e.namespaceURI === $e ? pt(n, t, r) : e.namespaceURI === M ? mt(n, t, r) : !!(I === "application/xhtml+xml" && tt[e.namespaceURI]) : !1;
2029
- }, z = function(e) {
2030
- Dt(t.removed, { element: e });
1979
+ let n = Dt(e.tagName), r = Dt(t.tagName);
1980
+ return Qe[e.namespaceURI] ? e.namespaceURI === P ? lt(n, t, r) : e.namespaceURI === Xe ? ut(n, t, r) : e.namespaceURI === F ? dt(n, t, r) : !!(z === "application/xhtml+xml" && Qe[e.namespaceURI]) : !1;
1981
+ }, H = function(e) {
1982
+ wt(t.removed, { element: e });
2031
1983
  try {
2032
- _(e).removeChild(e);
1984
+ g(e).removeChild(e);
2033
1985
  } catch {
2034
- if (p(e), !_(e)) throw G("a node selected for removal could not be detached from its tree and cannot be safely returned; refusing to sanitize in place");
1986
+ if (p(e), !g(e)) throw Rt("a node selected for removal could not be detached from its tree and cannot be safely returned; refusing to sanitize in place");
2035
1987
  }
2036
- }, _t = function(e, t, n) {
1988
+ }, mt = function(e, t, n) {
2037
1989
  try {
2038
1990
  m(e, t);
2039
1991
  } catch {
@@ -2041,31 +1993,31 @@ function Cn() {
2041
1993
  e.removeAttribute(n);
2042
1994
  } catch {}
2043
1995
  }
2044
- }, vt = function(e) {
2045
- St(e);
2046
- let t = g(e);
1996
+ }, ht = function(e) {
1997
+ yt(e);
1998
+ let t = h(e);
2047
1999
  if (t) {
2048
2000
  let e = [];
2049
- wt(t, (t) => {
2050
- Dt(e, t);
2051
- }), wt(e, (e) => {
2001
+ xt(t, (t) => {
2002
+ wt(e, t);
2003
+ }), xt(e, (e) => {
2052
2004
  try {
2053
2005
  p(e);
2054
2006
  } catch {}
2055
2007
  });
2056
2008
  }
2057
- let n = ee(e);
2009
+ let n = te(e);
2058
2010
  if (n) for (let t = n.length - 1; t >= 0; --t) {
2059
2011
  let r = n[t], i = r && r.name;
2060
- typeof i == "string" && _t(e, r, i);
2012
+ typeof i == "string" && mt(e, r, i);
2061
2013
  }
2062
- }, yt = function(e, n, r) {
2014
+ }, gt = function(e, n, r) {
2063
2015
  if (!r) try {
2064
2016
  r = n.getAttributeNode(e);
2065
2017
  } catch {
2066
2018
  r = null;
2067
2019
  }
2068
- Dt(t.removed, {
2020
+ wt(t.removed, {
2069
2021
  attribute: r || null,
2070
2022
  from: n
2071
2023
  });
@@ -2077,150 +2029,150 @@ function Cn() {
2077
2029
  } catch {}
2078
2030
  }
2079
2031
  if (e === "is") {
2080
- if (Be || Ve) try {
2081
- z(n);
2032
+ if (k || Be) try {
2033
+ H(n);
2082
2034
  } catch {}
2083
2035
  else try {
2084
2036
  n.setAttribute(e, "");
2085
2037
  } catch {}
2086
2038
  }
2087
- }, xt = function(e) {
2088
- let t = ee(e);
2039
+ }, vt = function(e) {
2040
+ let t = te(e);
2089
2041
  if (t) for (let n = t.length - 1; n >= 0; --n) {
2090
2042
  let r = t[n], i = r && r.name;
2091
- typeof i != "string" || T[L(i)] || _t(e, r, i);
2043
+ typeof i != "string" || w[B(i)] || mt(e, r, i);
2092
2044
  }
2093
- }, St = function(e) {
2045
+ }, yt = function(e) {
2094
2046
  let t = [e];
2095
2047
  for (; t.length > 0;) {
2096
2048
  let e = t.pop();
2097
- b(e) === X.element && xt(e);
2098
- let n = g(e);
2049
+ re(e) === Z.element && vt(e);
2050
+ let n = h(e);
2099
2051
  if (n) for (let e = n.length - 1; e >= 0; --e) t.push(n[e]);
2100
2052
  }
2101
- }, Ct = function(e, t) {
2102
- return Pe ? e === "patchsrc" || e === "for" && t !== "label" && t !== "output" : !1;
2103
- }, It = function(e) {
2104
- if (!Pe) return;
2053
+ }, bt = function(e, t) {
2054
+ return Fe ? e === "patchsrc" || e === "for" && t !== "label" && t !== "output" : !1;
2055
+ }, Nt = function(e) {
2056
+ if (!Fe) return;
2105
2057
  let t = [e];
2106
2058
  for (; t.length > 0;) {
2107
- let e = t.pop(), n = b(e);
2108
- if (n === X.processingInstruction || n === X.comment && W(pn, e.data)) {
2059
+ let e = t.pop(), n = re(e);
2060
+ if (n === Z.processingInstruction || n === Z.comment && K(fn, e.data)) {
2109
2061
  try {
2110
2062
  p(e);
2111
2063
  } catch {}
2112
2064
  continue;
2113
2065
  }
2114
- if (n === X.element) {
2115
- let t = e, n = L(re(e));
2066
+ if (n === Z.element) {
2067
+ let t = e, n = B(ie(e));
2116
2068
  try {
2117
- t.hasAttribute && t.hasAttribute("patchsrc") && t.removeAttribute("patchsrc"), t.hasAttribute && t.hasAttribute("for") && Ct("for", n) && t.removeAttribute("for");
2069
+ t.hasAttribute && t.hasAttribute("patchsrc") && t.removeAttribute("patchsrc"), t.hasAttribute && t.hasAttribute("for") && bt("for", n) && t.removeAttribute("for");
2118
2070
  } catch {}
2119
2071
  }
2120
- let r = g(e);
2072
+ let r = h(e);
2121
2073
  if (r) for (let e = r.length - 1; e >= 0; --e) t.push(r[e]);
2122
2074
  }
2123
- }, Lt = function(e) {
2075
+ }, Pt = function(e) {
2124
2076
  let t = null, r = null;
2125
2077
  if (ze) e = "<remove></remove>" + e;
2126
2078
  else {
2127
- let t = Mt(e, /^[\r\n\t ]+/);
2079
+ let t = kt(e, /^[\r\n\t ]+/);
2128
2080
  r = t && t[0];
2129
2081
  }
2130
- I === "application/xhtml+xml" && N === M && (e = "<html xmlns=\"http://www.w3.org/1999/xhtml\"><head></head><body>" + e + "</body></html>");
2131
- let i = x ? le(e) : e;
2132
- if (N === M) try {
2133
- t = new l().parseFromString(i, I);
2082
+ z === "application/xhtml+xml" && I === F && (e = "<html xmlns=\"http://www.w3.org/1999/xhtml\"><head></head><body>" + e + "</body></html>");
2083
+ let i = b ? ue(e) : e;
2084
+ if (I === F) try {
2085
+ t = new l().parseFromString(i, z);
2134
2086
  } catch {}
2135
2087
  if (!t || !t.documentElement) {
2136
- t = pe.createDocument(N, "template", null);
2088
+ t = me.createDocument(I, "template", null);
2137
2089
  try {
2138
- t.documentElement.innerHTML = et ? ie : i;
2090
+ t.documentElement.innerHTML = Ze ? ae : i;
2139
2091
  } catch {}
2140
2092
  }
2141
2093
  let a = t.body || t.documentElement;
2142
- return e && r && a.insertBefore(n.createTextNode(r), a.childNodes[0] || null), N === M ? he.call(t, Fe ? "html" : "body")[0] : Fe ? t.documentElement : a;
2143
- }, Rt = function(e) {
2094
+ return e && r && a.insertBefore(n.createTextNode(r), a.childNodes[0] || null), I === F ? ge.call(t, O ? "html" : "body")[0] : O ? t.documentElement : a;
2095
+ }, Ft = function(e) {
2144
2096
  let t = y ? y(e) : e.ownerDocument;
2145
- return S.call(t || e, e, c.SHOW_ELEMENT | c.SHOW_COMMENT | c.SHOW_TEXT | c.SHOW_PROCESSING_INSTRUCTION | c.SHOW_CDATA_SECTION, null);
2146
- }, zt = function(e) {
2147
- return e = Nt(e, _e, " "), e = Nt(e, ve, " "), e = Nt(e, ye, " "), e;
2148
- }, U = function(e) {
2097
+ return x.call(t || e, e, c.SHOW_ELEMENT | c.SHOW_COMMENT | c.SHOW_TEXT | c.SHOW_PROCESSING_INSTRUCTION | c.SHOW_CDATA_SECTION, null);
2098
+ }, It = function(e) {
2099
+ return e = At(e, ve, " "), e = At(e, ye, " "), e = At(e, be, " "), e;
2100
+ }, Lt = function(e) {
2149
2101
  e.normalize();
2150
- let t = y ? y(e) : e.ownerDocument, n = S.call(t || e, e, c.SHOW_TEXT | c.SHOW_COMMENT | c.SHOW_CDATA_SECTION | c.SHOW_PROCESSING_INSTRUCTION, null), r = n.nextNode();
2151
- for (; r;) r.data = zt(r.data), r = n.nextNode();
2102
+ let t = y ? y(e) : e.ownerDocument, n = x.call(t || e, e, c.SHOW_TEXT | c.SHOW_COMMENT | c.SHOW_CDATA_SECTION | c.SHOW_PROCESSING_INSTRUCTION, null), r = n.nextNode();
2103
+ for (; r;) r.data = It(r.data), r = n.nextNode();
2152
2104
  let i = e.querySelectorAll?.call(e, "template");
2153
- i && wt(i, (e) => {
2154
- Bt(e.content) && U(e.content);
2105
+ i && xt(i, (e) => {
2106
+ zt(e.content) && Lt(e.content);
2155
2107
  });
2156
- }, K = function(e) {
2108
+ }, q = function(e) {
2157
2109
  let t = ne ? ne(e) : null;
2158
- return typeof t != "string" || L(t) !== "form" ? !1 : typeof e.nodeName != "string" || typeof e.textContent != "string" || typeof e.removeChild != "function" || e.attributes !== ee(e) || typeof e.removeAttribute != "function" || typeof e.removeAttributeNode != "function" || typeof e.getAttributeNode != "function" || typeof e.setAttribute != "function" || typeof e.namespaceURI != "string" || typeof e.insertBefore != "function" || typeof e.hasChildNodes != "function" || e.nodeType !== te(e) || e.childNodes !== g(e);
2159
- }, Bt = function(e) {
2160
- if (!te || typeof e != "object" || !e) return !1;
2110
+ return typeof t != "string" || B(t) !== "form" ? !1 : typeof e.nodeName != "string" || typeof e.textContent != "string" || typeof e.removeChild != "function" || e.attributes !== te(e) || typeof e.removeAttribute != "function" || typeof e.removeAttributeNode != "function" || typeof e.getAttributeNode != "function" || typeof e.setAttribute != "function" || typeof e.namespaceURI != "string" || typeof e.insertBefore != "function" || typeof e.hasChildNodes != "function" || e.nodeType !== v(e) || e.childNodes !== h(e);
2111
+ }, zt = function(e) {
2112
+ if (!v || typeof e != "object" || !e) return !1;
2161
2113
  try {
2162
- return te(e) === X.documentFragment;
2114
+ return v(e) === Z.documentFragment;
2163
2115
  } catch {
2164
2116
  return !1;
2165
2117
  }
2166
- }, Vt = function(e) {
2167
- if (!te || typeof e != "object" || !e) return !1;
2118
+ }, Bt = function(e) {
2119
+ if (!v || typeof e != "object" || !e) return !1;
2168
2120
  try {
2169
- return typeof te(e) == "number";
2121
+ return typeof v(e) == "number";
2170
2122
  } catch {
2171
2123
  return !1;
2172
2124
  }
2173
2125
  };
2174
- function Z(e, n, r) {
2175
- e.length !== 0 && wt(e, (e) => {
2176
- e.call(t, n, r, R);
2126
+ function Q(e, n, r) {
2127
+ e.length !== 0 && xt(e, (e) => {
2128
+ e.call(t, n, r, V);
2177
2129
  });
2178
2130
  }
2179
- let wn = function(e, t) {
2180
- return !!(Pe && e.hasChildNodes() && !Vt(e.firstElementChild) && W(fn, e.textContent) && W(fn, e.innerHTML) || Pe && e.namespaceURI === M && gn[t] && (Vt(e.firstElementChild) || typeof e.textContent == "string" && W(_n[t], e.textContent)) || e.nodeType === X.processingInstruction || Pe && e.nodeType === X.comment && W(pn, e.data));
2181
- }, Q = function(e, t) {
2182
- return e instanceof RegExp ? W(e, t) : e instanceof Function && !!e(t, ...[...arguments].slice(2));
2183
- }, Tn = function(e, t, n) {
2184
- if (!Oe[t] && jn(t) && Q(E.tagNameCheck, t)) return !1;
2185
- if (Ke && !Ye[t]) {
2186
- let t = _(e), r = g(e);
2131
+ let Cn = function(e, t) {
2132
+ return !!(Fe && e.hasChildNodes() && !Bt(e.firstElementChild) && K(dn, e.textContent) && K(dn, e.innerHTML) || Fe && e.namespaceURI === F && hn[t] && (Bt(e.firstElementChild) || typeof e.textContent == "string" && K(gn[t], e.textContent)) || e.nodeType === Z.processingInstruction || Fe && e.nodeType === Z.comment && K(fn, e.data));
2133
+ }, $ = function(e, t) {
2134
+ return e instanceof RegExp ? K(e, t) : e instanceof Function && !!e(t, ...[...arguments].slice(2));
2135
+ }, wn = function(e, t, n) {
2136
+ if (!ke[t] && An(t) && $(T.tagNameCheck, t)) return !1;
2137
+ if (Ge && !j[t]) {
2138
+ let t = g(e), r = h(e);
2187
2139
  if (r && t) {
2188
2140
  let i = r.length;
2189
2141
  for (let a = i - 1; a >= 0; --a) {
2190
2142
  let i = e === n ? f(r[a], !0) : r[a];
2191
- t.insertBefore(i, h(e));
2143
+ t.insertBefore(i, ee(e));
2192
2144
  }
2193
2145
  }
2194
2146
  }
2195
- return z(e), !0;
2196
- }, En = function(e, t, n, r) {
2197
- return e.length === 0 ? t : t === n || t === r ? J(t) : t;
2198
- }, Dn = function(e, t) {
2199
- return e === t || _(e) !== null ? !1 : (qe && St(e), !0);
2200
- }, On = function(e, n) {
2201
- if (Z(C.beforeSanitizeElements, e, null), Dn(e, n)) return !0;
2202
- if (K(e)) return z(e), !0;
2203
- let r = L(re(e));
2204
- if (w = En(C.uponSanitizeElement, w, Ee, Le), Z(C.uponSanitizeElement, e, {
2147
+ return H(e), !0;
2148
+ }, Tn = function(e, t, n, r) {
2149
+ return e.length === 0 ? t : t === n || t === r ? Y(t) : t;
2150
+ }, En = function(e, t) {
2151
+ return e === t || g(e) !== null ? !1 : (A && yt(e), !0);
2152
+ }, Dn = function(e, n) {
2153
+ if (Q(S.beforeSanitizeElements, e, null), En(e, n)) return !0;
2154
+ if (q(e)) return H(e), !0;
2155
+ let r = B(ie(e));
2156
+ if (C = Tn(S.uponSanitizeElement, C, De, Le), Q(S.uponSanitizeElement, e, {
2205
2157
  tagName: r,
2206
- allowedTags: w
2207
- }), Dn(e, n)) return !0;
2208
- if (wn(e, r)) return z(e), !0;
2209
- if (Oe[r] || !(D.tagCheck instanceof Function && D.tagCheck(r)) && !w[r]) {
2210
- let t = Tn(e, r, n);
2211
- return t === !1 && (Z(C.afterSanitizeElements, e, null), Dn(e, n)) ? !0 : t;
2212
- }
2213
- if (b(e) === X.element && !ht(e) || (r === "noscript" || r === "noembed" || r === "noframes") && W(mn, e.innerHTML)) return z(e), !0;
2214
- if (O && e.nodeType === X.text) {
2215
- let n = zt(e.textContent);
2216
- e.textContent !== n && (Dt(t.removed, { element: e.cloneNode() }), e.textContent = n);
2217
- }
2218
- return Z(C.afterSanitizeElements, e, null), Dn(e, n);
2219
- }, kn = function(e, t, r) {
2220
- if (ke[t] || Ct(t, e) || Ue && (t === "id" || t === "name") && (r in n || r in st)) return !1;
2221
- let i = T[t] || D.attributeCheck instanceof Function && D.attributeCheck(t, e);
2222
- return je && W(be, t) || Ae && W(xe, t) ? !0 : i ? Qe[t] || W(Te, Nt(r, Ce, "")) || (t === "src" || t === "xlink:href" || t === "href") && e !== "script" && Pt(r, "data:") === 0 && Xe[e] || Me && !W(Se, Nt(r, Ce, "")) ? !0 : !r : jn(e) && Q(E.tagNameCheck, e) && Q(E.attributeNameCheck, t, e) || t === "is" && E.allowCustomizedBuiltInElements && Q(E.tagNameCheck, r);
2223
- }, An = q({}, [
2158
+ allowedTags: C
2159
+ }), En(e, n)) return !0;
2160
+ if (Cn(e, r)) return H(e), !0;
2161
+ if (ke[r] || !(E.tagCheck instanceof Function && E.tagCheck(r)) && !C[r]) {
2162
+ let t = wn(e, r, n);
2163
+ return t === !1 && (Q(S.afterSanitizeElements, e, null), En(e, n)) ? !0 : t;
2164
+ }
2165
+ if (re(e) === Z.element && !ft(e) || (r === "noscript" || r === "noembed" || r === "noframes") && K(pn, e.innerHTML)) return H(e), !0;
2166
+ if (D && e.nodeType === Z.text) {
2167
+ let n = It(e.textContent);
2168
+ e.textContent !== n && (wt(t.removed, { element: e.cloneNode() }), e.textContent = n);
2169
+ }
2170
+ return Q(S.afterSanitizeElements, e, null), En(e, n);
2171
+ }, On = function(e, t, r) {
2172
+ if (Ae[t] || bt(t, e) || He && (t === "id" || t === "name") && (r in n || r in it)) return !1;
2173
+ let i = w[t] || E.attributeCheck instanceof Function && E.attributeCheck(t, e);
2174
+ return Me && K(xe, t) || je && K(Se, t) ? !0 : i ? Ye[t] || K(Ee, At(r, we, "")) || (t === "src" || t === "xlink:href" || t === "href") && e !== "script" && jt(r, "data:") === 0 && qe[e] || Ne && !K(Ce, At(r, we, "")) ? !0 : !r : An(e) && $(T.tagNameCheck, e) && $(T.attributeNameCheck, t, e) || t === "is" && T.allowCustomizedBuiltInElements && $(T.tagNameCheck, r);
2175
+ }, kn = J({}, [
2224
2176
  "annotation-xml",
2225
2177
  "color-profile",
2226
2178
  "font-face",
@@ -2229,67 +2181,45 @@ function Cn() {
2229
2181
  "font-face-src",
2230
2182
  "font-face-uri",
2231
2183
  "missing-glyph"
2232
- ]), jn = function(e) {
2233
- return !An[At(e)] && W(we, e);
2234
- }, Mn = function(e, t, n, r) {
2235
- if (x && typeof u == "object" && typeof u.getAttributeType == "function" && !n) switch (u.getAttributeType(e, t)) {
2236
- case "TrustedHTML": return le(r);
2237
- case "TrustedScriptURL": return ue(r);
2184
+ ]), An = function(e) {
2185
+ return !kn[Dt(e)] && K(Te, e);
2186
+ }, jn = function(e, t, n, r) {
2187
+ if (b && typeof u == "object" && typeof u.getAttributeType == "function" && !n) switch (u.getAttributeType(e, t)) {
2188
+ case "TrustedHTML": return ue(r);
2189
+ case "TrustedScriptURL": return de(r);
2238
2190
  }
2239
2191
  return r;
2240
- }, Nn = function(e, t, n, r) {
2192
+ }, Mn = function(e, t, n, r) {
2241
2193
  try {
2242
- return n ? e.setAttributeNS(n, t, r) : e.setAttribute(t, r), !K(e) || (z(e), !1);
2194
+ return n ? e.setAttributeNS(n, t, r) : e.setAttribute(t, r), !q(e) || (H(e), !1);
2243
2195
  } catch {
2244
- return yt(t, e), !1;
2196
+ return gt(t, e), !1;
2245
2197
  }
2246
- }, Pn = function(e, n) {
2247
- if (Z(C.beforeSanitizeAttributes, e, null), Dn(e, n)) return;
2198
+ }, Nn = function(e, n) {
2199
+ if (Q(S.beforeSanitizeAttributes, e, null), En(e, n)) return;
2248
2200
  let r = e.attributes;
2249
- if (!r || K(e)) return;
2250
- T = En(C.uponSanitizeAttribute, T, De, Re);
2201
+ if (!r || q(e)) return;
2202
+ w = Tn(S.uponSanitizeAttribute, w, Oe, Re);
2251
2203
  let i = {
2252
2204
  attrName: "",
2253
2205
  attrValue: "",
2254
2206
  keepAttr: !0,
2255
- allowedAttributes: T,
2207
+ allowedAttributes: w,
2256
2208
  forceKeepAttr: void 0
2257
- }, a = r.length, o = L(e.nodeName);
2209
+ }, a = r.length, o = B(e.nodeName);
2258
2210
  for (; a--;) {
2259
- let n = r[a], s = n.name, c = n.namespaceURI, l = n.value, u = L(s), d = l, f = s === "value" ? d : Ft(d), p = !1;
2260
- if (i.attrName = u, i.attrValue = f, i.keepAttr = !0, i.forceKeepAttr = void 0, Z(C.uponSanitizeAttribute, e, i), f = i.attrValue, We && (u === "id" || u === "name") && Pt(f, Ge) !== 0 && (yt(s, e, n), f = Ge + f, p = !0), Pe && W(/((--!?|])>)|<\/(style|script|title|xmp|textarea|noscript|iframe|noembed|noframes)/i, f)) {
2261
- yt(s, e, n);
2262
- continue;
2263
- }
2264
- if (u === "attributename" && Mt(f, "href")) {
2265
- yt(s, e, n);
2266
- continue;
2267
- }
2268
- if (!i.forceKeepAttr) {
2269
- if (!i.keepAttr) {
2270
- yt(s, e, n);
2271
- continue;
2272
- }
2273
- if (!Ne && W(hn, f)) {
2274
- yt(s, e, n);
2275
- continue;
2276
- }
2277
- if (O && (f = zt(f)), !kn(o, u, f)) {
2278
- yt(s, e, n);
2279
- continue;
2280
- }
2281
- f = Mn(o, u, c, f), f !== d && Nn(e, s, c, f) && p && Et(t.removed);
2282
- }
2211
+ let n = r[a], s = n.name, c = n.namespaceURI, l = n.value, u = B(s), d = l, f = s === "value" ? d : Mt(d), p = !1;
2212
+ i.attrName = u, i.attrValue = f, i.keepAttr = !0, i.forceKeepAttr = void 0, Q(S.uponSanitizeAttribute, e, i), f = i.attrValue, Ue && (u === "id" || u === "name") && jt(f, We) !== 0 && (gt(s, e, n), f = We + f, p = !0), Fe && K(/((--!?|])>)|<\/(style|script|title|xmp|textarea|noscript|iframe|noembed|noframes)/i, f) || u === "attributename" && kt(f, "href") ? gt(s, e, n) : i.forceKeepAttr || (i.keepAttr ? !Pe && K(mn, f) ? gt(s, e, n) : (D && (f = It(f)), On(o, u, f) ? (f = jn(o, u, c, f), f !== d && Mn(e, s, c, f) && p && Ct(t.removed)) : gt(s, e, n)) : gt(s, e, n));
2283
2213
  }
2284
- Z(C.afterSanitizeAttributes, e, null), Dn(e, n);
2285
- }, Fn = function(e) {
2286
- let t = null, n = Rt(e);
2287
- for (Z(C.beforeSanitizeShadowDOM, e, null); t = n.nextNode();) if (Z(C.uponSanitizeShadowNode, t, null), On(t, e), Pn(t, e), Bt(t.content) && Fn(t.content), b(t) === X.element) {
2288
- let e = v(t);
2289
- Bt(e) && (In(e), Fn(e));
2214
+ Q(S.afterSanitizeAttributes, e, null), En(e, n);
2215
+ }, Pn = function(e) {
2216
+ let t = null, n = Ft(e);
2217
+ for (Q(S.beforeSanitizeShadowDOM, e, null); t = n.nextNode();) if (Q(S.uponSanitizeShadowNode, t, null), Dn(t, e), Nn(t, e), zt(t.content) && Pn(t.content), re(t) === Z.element) {
2218
+ let e = _(t);
2219
+ zt(e) && (Fn(e), Pn(e));
2290
2220
  }
2291
- Z(C.afterSanitizeShadowDOM, e, null);
2292
- }, In = function(e) {
2221
+ Q(S.afterSanitizeShadowDOM, e, null);
2222
+ }, Fn = function(e) {
2293
2223
  let t = [{
2294
2224
  node: e,
2295
2225
  shadow: null
@@ -2297,27 +2227,27 @@ function Cn() {
2297
2227
  for (; t.length > 0;) {
2298
2228
  let e = t.pop();
2299
2229
  if (e.shadow) {
2300
- Fn(e.shadow);
2230
+ Pn(e.shadow);
2301
2231
  continue;
2302
2232
  }
2303
- let n = e.node, r = b(n) === X.element, i = g(n);
2233
+ let n = e.node, r = re(n) === Z.element, i = h(n);
2304
2234
  if (i) for (let e = i.length - 1; e >= 0; --e) t.push({
2305
2235
  node: i[e],
2306
2236
  shadow: null
2307
2237
  });
2308
2238
  if (r) {
2309
2239
  let e = ne ? ne(n) : null;
2310
- if (typeof e == "string" && L(e) === "template") {
2240
+ if (typeof e == "string" && B(e) === "template") {
2311
2241
  let e = n.content;
2312
- Bt(e) && t.push({
2242
+ zt(e) && t.push({
2313
2243
  node: e,
2314
2244
  shadow: null
2315
2245
  });
2316
2246
  }
2317
2247
  }
2318
2248
  if (r) {
2319
- let e = v(n);
2320
- Bt(e) && t.push({
2249
+ let e = _(n);
2250
+ zt(e) && t.push({
2321
2251
  node: null,
2322
2252
  shadow: e
2323
2253
  }, {
@@ -2329,78 +2259,78 @@ function Cn() {
2329
2259
  };
2330
2260
  return t.sanitize = function(e) {
2331
2261
  let n = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {}, i = null, a = null, o = null, s = null;
2332
- if (et = !e, et && (e = "<!-->"), typeof e != "string" && !Vt(e) && (e = Ht(e), typeof e != "string")) throw G("dirty is not a string, aborting");
2262
+ if (Ze = !e, Ze && (e = "<!-->"), typeof e != "string" && !Bt(e) && (e = Vt(e), typeof e != "string")) throw Rt("dirty is not a string, aborting");
2333
2263
  if (!t.isSupported) return e;
2334
- Ie ? (w = Le, T = Re) : lt(n), (C.uponSanitizeElement.length > 0 || C.uponSanitizeAttribute.length > 0) && (w = J(w)), C.uponSanitizeAttribute.length > 0 && (T = J(T)), t.removed = [];
2335
- let c = qe && typeof e != "string" && Vt(e);
2264
+ Ie ? (C = Le, w = Re) : ot(n), (S.uponSanitizeElement.length > 0 || S.uponSanitizeAttribute.length > 0) && (C = Y(C)), S.uponSanitizeAttribute.length > 0 && (w = Y(w)), t.removed = [];
2265
+ let c = A && typeof e != "string" && Bt(e);
2336
2266
  if (c) {
2337
- It(e);
2338
- let t = re(e);
2267
+ Nt(e);
2268
+ let t = ie(e);
2339
2269
  if (typeof t == "string") {
2340
- let n = L(t);
2341
- if (!w[n] || Oe[n]) throw vt(e), G("root node is forbidden and cannot be sanitized in-place");
2270
+ let n = B(t);
2271
+ if (!C[n] || ke[n]) throw ht(e), Rt("root node is forbidden and cannot be sanitized in-place");
2342
2272
  }
2343
- if (K(e)) throw vt(e), G("root node is clobbered and cannot be sanitized in-place");
2273
+ if (q(e)) throw ht(e), Rt("root node is clobbered and cannot be sanitized in-place");
2344
2274
  try {
2345
- In(e);
2275
+ Fn(e);
2346
2276
  } catch (t) {
2347
- throw vt(e), t;
2277
+ throw ht(e), t;
2348
2278
  }
2349
- } else if (Vt(e)) i = Lt("<!---->"), a = i.ownerDocument.importNode(e, !0), a.nodeType === X.element && a.nodeName === "BODY" || a.nodeName === "HTML" ? i = a : i.appendChild(a), In(i);
2279
+ } else if (Bt(e)) i = Pt("<!---->"), a = i.ownerDocument.importNode(e, !0), a.nodeType === Z.element && a.nodeName === "BODY" || a.nodeName === "HTML" ? i = a : i.appendChild(a), Fn(i);
2350
2280
  else {
2351
- if (!Be && !O && !Fe && e.indexOf("<") === -1) return x && He ? le(e) : e;
2352
- if (i = Lt(e), !i) return Be ? null : He ? ie : "";
2281
+ if (!k && !D && !O && e.indexOf("<") === -1) return b && Ve ? ue(e) : e;
2282
+ if (i = Pt(e), !i) return k ? null : Ve ? ae : "";
2353
2283
  }
2354
- i && ze && z(i.firstChild);
2284
+ i && ze && H(i.firstChild);
2355
2285
  let l = c ? e : i;
2356
2286
  try {
2357
- let e = Rt(l);
2358
- for (; o = e.nextNode();) On(o, l), Pn(o, l), Bt(o.content) && Fn(o.content);
2287
+ let e = Ft(l);
2288
+ for (; o = e.nextNode();) Dn(o, l), Nn(o, l), zt(o.content) && Pn(o.content);
2359
2289
  } catch (n) {
2360
- throw c && (vt(e), wt(t.removed, (e) => {
2361
- e.element && St(e.element);
2290
+ throw c && (ht(e), xt(t.removed, (e) => {
2291
+ e.element && yt(e.element);
2362
2292
  })), n;
2363
2293
  }
2364
2294
  if (c) {
2365
2295
  let n = !1;
2366
- if (wt(t.removed, (t) => {
2367
- t.element && (t.element === e && (n = !0), St(t.element));
2368
- }), n) throw G("a node selected for removal could not be safely returned; refusing to sanitize in place");
2369
- return O && U(e), e;
2296
+ if (xt(t.removed, (t) => {
2297
+ t.element && (t.element === e && (n = !0), yt(t.element));
2298
+ }), n) throw Rt("a node selected for removal could not be safely returned; refusing to sanitize in place");
2299
+ return D && Lt(e), e;
2370
2300
  }
2371
- if (Be) {
2372
- if (O && U(i), Ve) for (s = me.call(i.ownerDocument); i.firstChild;) s.appendChild(i.firstChild);
2301
+ if (k) {
2302
+ if (D && Lt(i), Be) for (s = he.call(i.ownerDocument); i.firstChild;) s.appendChild(i.firstChild);
2373
2303
  else s = i;
2374
- return (T.shadowroot || T.shadowrootmode) && (s = ge.call(r, s, !0)), s;
2304
+ return (w.shadowroot || w.shadowrootmode) && (s = _e.call(r, s, !0)), s;
2375
2305
  }
2376
- let u = Fe ? i.outerHTML : i.innerHTML;
2377
- return Fe && w["!doctype"] && i.ownerDocument && i.ownerDocument.doctype && i.ownerDocument.doctype.name && W(un, i.ownerDocument.doctype.name) && (u = "<!DOCTYPE " + i.ownerDocument.doctype.name + ">\n" + u), O && (u = zt(u)), x && He ? le(u) : u;
2306
+ let u = O ? i.outerHTML : i.innerHTML;
2307
+ return O && C["!doctype"] && i.ownerDocument && i.ownerDocument.doctype && i.ownerDocument.doctype.name && K(ln, i.ownerDocument.doctype.name) && (u = "<!DOCTYPE " + i.ownerDocument.doctype.name + ">\n" + u), D && (u = It(u)), b && Ve ? ue(u) : u;
2378
2308
  }, t.setConfig = function() {
2379
2309
  let e = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : {};
2380
- lt(e), Ie = !0, Le = w, Re = T;
2310
+ ot(e), Ie = !0, Le = C, Re = w;
2381
2311
  }, t.clearConfig = function() {
2382
- R = null, Ie = !1, Le = null, Re = null, x = ae, ie = "";
2312
+ V = null, Ie = !1, Le = null, Re = null, b = oe, ae = "";
2383
2313
  }, t.isValidAttribute = function(e, t, n) {
2384
- R || lt({});
2385
- let r = L(e), i = L(t);
2386
- return kn(r, i, n);
2314
+ V || ot({});
2315
+ let r = B(e), i = B(t);
2316
+ return On(r, i, n);
2387
2317
  }, t.addHook = function(e, t) {
2388
- typeof t == "function" && H(C, e) && Dt(C[e], t);
2318
+ typeof t == "function" && G(S, e) && wt(S[e], t);
2389
2319
  }, t.removeHook = function(e, t) {
2390
- if (H(C, e)) {
2320
+ if (G(S, e)) {
2391
2321
  if (t !== void 0) {
2392
- let n = Tt(C[e], t);
2393
- return n === -1 ? void 0 : Ot(C[e], n, 1)[0];
2322
+ let n = St(S[e], t);
2323
+ return n === -1 ? void 0 : Tt(S[e], n, 1)[0];
2394
2324
  }
2395
- return Et(C[e]);
2325
+ return Ct(S[e]);
2396
2326
  }
2397
2327
  }, t.removeHooks = function(e) {
2398
- H(C, e) && (C[e] = []);
2328
+ G(S, e) && (S[e] = []);
2399
2329
  }, t.removeAllHooks = function() {
2400
- C = bn();
2330
+ S = yn();
2401
2331
  }, t;
2402
2332
  }
2403
- var wn = Cn(), Q = class {
2333
+ var Cn = Sn(), $ = class {
2404
2334
  constructor(e, t) {
2405
2335
  this.editor = e, this.defaultText = `${t} text`, this.button = this.createButton(), this.title = t;
2406
2336
  }
@@ -2414,7 +2344,7 @@ var wn = Cn(), Q = class {
2414
2344
  }
2415
2345
  return t;
2416
2346
  }
2417
- }, Tn = class extends Q {
2347
+ }, wn = class extends $ {
2418
2348
  constructor(e) {
2419
2349
  super(e, "Bold"), this.button = this.createButton("\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\"/><path d=\"M7 5h6a3.5 3.5 0 0 1 0 7h-6l0 -7\" /><path d=\"M13 12h1a3.5 3.5 0 0 1 0 7h-7v-7\" /></svg>\n ");
2420
2350
  }
@@ -2431,7 +2361,7 @@ var wn = Cn(), Q = class {
2431
2361
  } else a = `**${i || "Bold text"}**`, i || (o = 2);
2432
2362
  this.editor.insertText(a, o, o);
2433
2363
  }
2434
- }, En = class extends Q {
2364
+ }, Tn = class extends $ {
2435
2365
  constructor(e) {
2436
2366
  super(e, "Italic"), this.button = this.createButton("\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\"/><path d=\"M11 5l6 0\" /><path d=\"M7 19l6 0\" /><path d=\"M14 5l-4 14\" /></svg>\n ");
2437
2367
  }
@@ -2448,7 +2378,7 @@ var wn = Cn(), Q = class {
2448
2378
  } else a = `*${i || "Italic text"}*`, i || (o = 1);
2449
2379
  this.editor.insertText(a, o, o);
2450
2380
  }
2451
- }, Dn = class extends Q {
2381
+ }, En = class extends $ {
2452
2382
  constructor(e) {
2453
2383
  super(e, "Strikethrough"), this.button = this.createButton("\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\"/><path d=\"M5 12l14 0\" /><path d=\"M16 6.5a4 2 0 0 0 -4 -1.5h-1a3.5 3.5 0 0 0 0 7h2a3.5 3.5 0 0 1 0 7h-1.5a4 2 0 0 1 -4 -1.5\" /></svg>\n ");
2454
2384
  }
@@ -2461,7 +2391,7 @@ var wn = Cn(), Q = class {
2461
2391
  } else a = `~~${i || "Strikethrough text"}~~`, o = 2;
2462
2392
  this.editor.insertText(a, o, o);
2463
2393
  }
2464
- }, On = class extends Q {
2394
+ }, Dn = class extends $ {
2465
2395
  constructor(e) {
2466
2396
  super(e, "Unordered list"), this.button = this.createButton("\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\"/><path d=\"M9 6l11 0\" /><path d=\"M9 12l11 0\" /><path d=\"M9 18l11 0\" /><path d=\"M5 6l0 .01\" /><path d=\"M5 12l0 .01\" /><path d=\"M5 18l0 .01\" /></svg>\n ");
2467
2397
  }
@@ -2474,7 +2404,7 @@ var wn = Cn(), Q = class {
2474
2404
  } else a = `- ${i || "Unordered list"}`, o = 2;
2475
2405
  this.editor.insertText(a, o);
2476
2406
  }
2477
- }, kn = class extends Q {
2407
+ }, On = class extends $ {
2478
2408
  constructor(e) {
2479
2409
  super(e, "Ordered list"), this.button = this.createButton("\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\"/><path d=\"M11 6h9\" /><path d=\"M11 12h9\" /><path d=\"M12 18h8\" /><path d=\"M4 16a2 2 0 1 1 4 0c0 .591 -.5 1 -1 1.5l-3 2.5h4\" /><path d=\"M6 10v-6l-2 2\" /></svg>\n ");
2480
2410
  }
@@ -2487,7 +2417,7 @@ var wn = Cn(), Q = class {
2487
2417
  } else a = `1. ${i || "Ordered list"}`, o = 3;
2488
2418
  this.editor.insertText(a, o);
2489
2419
  }
2490
- }, An = class extends Q {
2420
+ }, kn = class extends $ {
2491
2421
  constructor(e) {
2492
2422
  super(e, "Preview"), this.preview = !0, this.button = this.createButton("\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\"/><path d=\"M12 4v16\" /><path d=\"M3 5a2 2 0 0 1 2 -2h14a2 2 0 0 1 2 2v14a2 2 0 0 1 -2 2h-14a2 2 0 0 1 -2 -2v-14\" /><path d=\"M12 13l7.5 -7.5\" /><path d=\"M12 18l8 -8\" /><path d=\"M15 20l5 -5\" /><path d=\"M12 8l4 -4\" /></svg>\n ");
2493
2423
  let t = this.button.querySelector("button");
@@ -2518,7 +2448,7 @@ var wn = Cn(), Q = class {
2518
2448
  destroy() {
2519
2449
  this.preview || (document.removeEventListener("keydown", this._escHandler), document.querySelector("body")?.classList.remove("fj:overflow-hidden"));
2520
2450
  }
2521
- }, jn = class extends Q {
2451
+ }, An = class extends $ {
2522
2452
  constructor(e) {
2523
2453
  super(e, "Check list"), this.button = this.createButton("\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\"/><path d=\"M3.5 5.5l1.5 1.5l2.5 -2.5\" /><path d=\"M3.5 11.5l1.5 1.5l2.5 -2.5\" /><path d=\"M3.5 17.5l1.5 1.5l2.5 -2.5\" /><path d=\"M11 6l9 0\" /><path d=\"M11 12l9 0\" /><path d=\"M11 18l9 0\" /></svg>\n ");
2524
2454
  }
@@ -2535,7 +2465,7 @@ var wn = Cn(), Q = class {
2535
2465
  }
2536
2466
  this.editor.insertText(s, c);
2537
2467
  }
2538
- }, Mn = class extends Q {
2468
+ }, jn = class extends $ {
2539
2469
  constructor(e) {
2540
2470
  super(e, "Blockquote"), this.button = this.createButton("\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\"/><path d=\"M10 11h-4a1 1 0 0 1 -1 -1v-3a1 1 0 0 1 1 -1h3a1 1 0 0 1 1 1v6c0 2.667 -1.333 4.333 -4 5\" /><path d=\"M19 11h-4a1 1 0 0 1 -1 -1v-3a1 1 0 0 1 1 -1h3a1 1 0 0 1 1 1v6c0 2.667 -1.333 4.333 -4 5\" /></svg>\n ");
2541
2471
  }
@@ -2551,7 +2481,7 @@ var wn = Cn(), Q = class {
2551
2481
  };
2552
2482
  //#endregion
2553
2483
  //#region src/components/modal.js
2554
- function Nn(e, t, n, r = "") {
2484
+ function Mn(e, t, n, r = "") {
2555
2485
  let i = e.target.closest(".markdown-editor-wrapper");
2556
2486
  i.querySelector(".markdown-modal") && i.querySelector(".markdown-modal").remove();
2557
2487
  let a = `
@@ -2567,7 +2497,7 @@ function Nn(e, t, n, r = "") {
2567
2497
  }
2568
2498
  //#endregion
2569
2499
  //#region src/components/toolbar/tools/LinkTool.js
2570
- var Pn = class extends Q {
2500
+ var Nn = class extends $ {
2571
2501
  constructor(e) {
2572
2502
  super(e, "Link"), this.button = this.createButton("\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\"/><path d=\"M9 15l6 -6\" /><path d=\"M11 6l.463 -.536a5 5 0 0 1 7.071 7.072l-.534 .464\" /><path d=\"M13 18l-.397 .534a5.068 5.068 0 0 1 -7.127 0a4.972 4.972 0 0 1 0 -7.071l.524 -.463\" /></svg>\n ");
2573
2503
  }
@@ -2577,7 +2507,7 @@ var Pn = class extends Q {
2577
2507
  let e = s.match(/^\]\(([^)]+)\)/);
2578
2508
  e && (r = o.length - 1, i += e[0].length, n.setSelectionRange(r, i));
2579
2509
  }
2580
- let c = a.substring(r, i), l = c && c.match(/^\[([^\]]+)\]\(([^)]+)\)$/), u = l ? l[1] : c, d = l ? l[2] : "", f = Nn(e, "fj:max-w-sm", `
2510
+ let c = a.substring(r, i), l = c && c.match(/^\[([^\]]+)\]\(([^)]+)\)$/), u = l ? l[1] : c, d = l ? l[2] : "", f = Mn(e, "fj:max-w-sm", `
2581
2511
  <div class="fj:flex fj:justify-between fj:items-center fj:gap-3">
2582
2512
  <div class="fj:font-medium">${this.editor.label("Link")}</div>
2583
2513
  <button type="button" class="modal-close-btn fj:me-btn fj:me-btn-ghost fj:me-btn-xs fj:me-btn-circle" aria-label="${this.editor.label("Close")}">
@@ -2602,9 +2532,23 @@ var Pn = class extends Q {
2602
2532
  }
2603
2533
  });
2604
2534
  }
2605
- }, Fn = class extends Q {
2606
- constructor(e) {
2607
- super(e, "Heading"), this.button = this.createButton("\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\"/><path d=\"M7 12h10\" /><path d=\"M7 5v14\" /><path d=\"M17 5v14\" /><path d=\"M15 19h4\" /><path d=\"M15 5h4\" /><path d=\"M5 19h4\" /><path d=\"M5 5h4\" /></svg>\n ");
2535
+ }, Pn = [
2536
+ 1,
2537
+ 2,
2538
+ 3,
2539
+ 4,
2540
+ 5,
2541
+ 6
2542
+ ];
2543
+ function Fn(e) {
2544
+ if (e === void 0) return Pn;
2545
+ if (!Array.isArray(e)) return console.warn("[MarkdownEditor] heading levels must be an array of numbers 1-6. Using all six.", e), Pn;
2546
+ let t = [...new Set(e)].filter((e) => Number.isInteger(e) && e >= 1 && e <= 6).sort((e, t) => e - t);
2547
+ return t.length !== e.length && console.warn("[MarkdownEditor] Ignored heading levels outside 1-6, or repeated.", e), t.length ? t : (console.warn("[MarkdownEditor] No usable heading levels. Using all six.", e), Pn);
2548
+ }
2549
+ var In = class extends $ {
2550
+ constructor(e, t = {}) {
2551
+ super(e, "Heading"), this.levels = Fn(t?.levels), this.button = this.createButton("\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\"/><path d=\"M7 12h10\" /><path d=\"M7 5v14\" /><path d=\"M17 5v14\" /><path d=\"M15 19h4\" /><path d=\"M15 5h4\" /><path d=\"M5 19h4\" /><path d=\"M5 5h4\" /></svg>\n ");
2608
2552
  }
2609
2553
  createButton(e) {
2610
2554
  let t = `heading-popover-${Math.random().toString(36).slice(2, 7)}`, n = document.createElement("button");
@@ -2623,7 +2567,7 @@ var Pn = class extends Q {
2623
2567
  "fj:me-heading-xs",
2624
2568
  "fj:me-heading-xs"
2625
2569
  ];
2626
- for (let e = 1; e <= 6; e++) {
2570
+ for (let e of this.levels ?? Pn) {
2627
2571
  let t = document.createElement("li");
2628
2572
  t.setAttribute("role", "none");
2629
2573
  let n = document.createElement("button");
@@ -2645,7 +2589,7 @@ var Pn = class extends Q {
2645
2589
  };
2646
2590
  //#endregion
2647
2591
  //#region src/utils/imageUpload.js
2648
- async function In(e, { uploadUrl: t, params: n = {}, alt: r = "" } = {}) {
2592
+ async function Ln(e, { uploadUrl: t, params: n = {}, alt: r = "" } = {}) {
2649
2593
  let i = new FormData();
2650
2594
  i.append("image_file", e), i.append("image_alt", r);
2651
2595
  for (let [e, t] of Object.entries(n)) i.append(e, t);
@@ -2663,7 +2607,7 @@ async function In(e, { uploadUrl: t, params: n = {}, alt: r = "" } = {}) {
2663
2607
  }
2664
2608
  //#endregion
2665
2609
  //#region src/components/toolbar/tools/ImageTool.js
2666
- var Ln = class extends Q {
2610
+ var Rn = class extends $ {
2667
2611
  constructor(e, t = {}) {
2668
2612
  super(e, "Image link"), this.config = t, this.fileInputConfig = t.fileInput || !1, this.altInputConfig = t.altInput === void 0 ? { required: !0 } : t.altInput, this.button = this.createButton("\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\"/><path d=\"M15 8h.01\" /><path d=\"M12.5 21h-6.5a3 3 0 0 1 -3 -3v-12a3 3 0 0 1 3 -3h12a3 3 0 0 1 3 3v6.5\" /><path d=\"M3 16l5 -5c.928 -.893 2.072 -.893 3 0l4 4\" /><path d=\"M14 14l1 -1c.67 -.644 1.45 -.824 2.182 -.54\" /><path d=\"M16 19h6\" /><path d=\"M19 16v6\" /></svg>\n ");
2669
2613
  }
@@ -2673,12 +2617,12 @@ var Ln = class extends Q {
2673
2617
  let e = s.match(/^\]\(([^)]+)\)/);
2674
2618
  e && (r = o.length - 2, i += e[0].length, n.setSelectionRange(r, i));
2675
2619
  }
2676
- let c = a.substring(r, i), l = this.fileInputConfig.accept ? this.fileInputConfig.accept.map((e) => `image/${e}`).join(",") : "image/*", u = typeof this.altInputConfig == "boolean" ? this.altInputConfig : this.altInputConfig.required !== !1, d = this.fileInputConfig.uploadUrl || null, f = this.fileInputConfig.params || {}, p = c && c.match(/^!\[([^\]]*)\]\(([^)]+)\)$/), m = p ? p[1] : c, h = p ? p[2] : "", g = "";
2677
- this.fileInputConfig && (g = `
2620
+ let c = a.substring(r, i), l = this.fileInputConfig.accept ? this.fileInputConfig.accept.map((e) => `image/${e}`).join(",") : "image/*", u = typeof this.altInputConfig == "boolean" ? this.altInputConfig : this.altInputConfig.required !== !1, d = this.fileInputConfig.uploadUrl || null, f = this.fileInputConfig.params || {}, p = c && c.match(/^!\[([^\]]*)\]\(([^)]+)\)$/), m = p ? p[1] : c, ee = p ? p[2] : "", h = "";
2621
+ this.fileInputConfig && (h = `
2678
2622
  <input type="file" accept="${l}" class="img-file-input fj:me-input fj:w-full">
2679
2623
  <div class="fj:me-divider fj:my-1">OR</div>
2680
2624
  `);
2681
- let _ = Nn(e, "fj:max-w-sm", `
2625
+ let g = Mn(e, "fj:max-w-sm", `
2682
2626
  <div class="fj:flex fj:justify-between fj:items-center fj:gap-3">
2683
2627
  <div class="fj:font-medium">${t.label("Image")}</div>
2684
2628
  <button type="button" class="modal-close-btn fj:me-btn fj:me-btn-ghost fj:me-btn-xs fj:me-btn-circle" aria-label="${t.label("Close")}">
@@ -2686,16 +2630,16 @@ var Ln = class extends Q {
2686
2630
  </button>
2687
2631
  </div>
2688
2632
  <div class="fj:mt-4 fj:flex fj:flex-col fj:gap-y-4">
2689
- ${g}
2690
- <input type="url" placeholder="${t.label("URL")}" class="img-link-input fj:me-input fj:w-full" value="${h}" required>
2633
+ ${h}
2634
+ <input type="url" placeholder="${t.label("URL")}" class="img-link-input fj:me-input fj:w-full" value="${ee}" required>
2691
2635
  <input type="text" placeholder="${t.label("Alt text")}" class="img-link-alt-input fj:me-input fj:w-full" value="${m}" ${u ? "required" : ""}>
2692
2636
  <button type="button" class="submit-img-link fj:me-btn fj:me-btn-sm fj:self-end">${t.label("Apply")}</button>
2693
2637
  </div>`, "Image");
2694
- _.querySelector(".modal-close-btn").addEventListener("click", () => _.close());
2695
- let v = _.querySelector(".submit-img-link");
2696
- v.addEventListener("click", async (e) => {
2638
+ g.querySelector(".modal-close-btn").addEventListener("click", () => g.close());
2639
+ let _ = g.querySelector(".submit-img-link");
2640
+ _.addEventListener("click", async (e) => {
2697
2641
  e.preventDefault();
2698
- let n = _.querySelector(".img-file-input"), r = _.querySelector(".img-link-input"), i = _.querySelector(".img-link-alt-input"), a = n?.files[0];
2642
+ let n = g.querySelector(".img-file-input"), r = g.querySelector(".img-link-input"), i = g.querySelector(".img-link-alt-input"), a = n?.files[0];
2699
2643
  if (a && (r.required = !1), u && !i.validity.valid) {
2700
2644
  i.reportValidity(), a && (r.required = !0);
2701
2645
  return;
@@ -2706,25 +2650,25 @@ var Ln = class extends Q {
2706
2650
  }
2707
2651
  if (a && d) {
2708
2652
  let e = n.files[0];
2709
- v.disabled = !0, v.textContent = t.label("Uploading...");
2653
+ _.disabled = !0, _.textContent = t.label("Uploading...");
2710
2654
  try {
2711
- let { path: t, alt: n } = await In(e, {
2655
+ let { path: t, alt: n } = await Ln(e, {
2712
2656
  uploadUrl: d,
2713
2657
  params: f,
2714
2658
  alt: i.value
2715
2659
  });
2716
2660
  r.value = t, n && !i.value.trim() && (i.value = n);
2717
2661
  } catch (e) {
2718
- alert(e.message || "Upload failed."), v.disabled = !1, v.textContent = t.label("Apply"), r.required = !0;
2662
+ alert(e.message || "Upload failed."), _.disabled = !1, _.textContent = t.label("Apply"), r.required = !0;
2719
2663
  return;
2720
2664
  }
2721
- v.disabled = !1, v.textContent = t.label("Apply");
2665
+ _.disabled = !1, _.textContent = t.label("Apply");
2722
2666
  }
2723
2667
  let o = r.value, s = `![${i.value || ""}](${o})`;
2724
- t.insertText(s), _.close();
2668
+ t.insertText(s), g.close();
2725
2669
  });
2726
2670
  }
2727
- }, Rn = class extends Q {
2671
+ }, zn = class extends $ {
2728
2672
  constructor(e) {
2729
2673
  super(e, "Undo"), this.button = this.createButton("\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\"/><path d=\"M9 14l-4 -4l4 -4\" /><path d=\"M5 10h11a4 4 0 1 1 0 8h-1\" /></svg>\n ");
2730
2674
  }
@@ -2732,7 +2676,7 @@ var Ln = class extends Q {
2732
2676
  let e = this.editor.undoRedoManager;
2733
2677
  e && e.undo();
2734
2678
  }
2735
- }, zn = class extends Q {
2679
+ }, Bn = class extends $ {
2736
2680
  constructor(e) {
2737
2681
  super(e, "Redo"), this.button = this.createButton("\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\"/><path d=\"M15 14l4 -4l-4 -4\" /><path d=\"M19 10h-11a4 4 0 1 0 0 8h1\" /></svg>\n ");
2738
2682
  }
@@ -2740,7 +2684,7 @@ var Ln = class extends Q {
2740
2684
  let e = this.editor.undoRedoManager;
2741
2685
  e && e.redo();
2742
2686
  }
2743
- }, Bn = class extends Q {
2687
+ }, Vn = class extends $ {
2744
2688
  constructor(e) {
2745
2689
  super(e, "Indent"), this.button = this.createButton("\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\"/><path d=\"M20 6l-11 0\" /><path d=\"M20 12l-7 0\" /><path d=\"M20 18l-11 0\" /><path d=\"M4 8l4 4l-4 4\" /></svg>\n ");
2746
2690
  }
@@ -2748,7 +2692,7 @@ var Ln = class extends Q {
2748
2692
  let e = this.editor.indentManager;
2749
2693
  e && (e.indent(), this.editor.render());
2750
2694
  }
2751
- }, Vn = class extends Q {
2695
+ }, Hn = class extends $ {
2752
2696
  constructor(e) {
2753
2697
  super(e, "Outdent"), this.button = this.createButton("\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\"/><path d=\"M20 6l-7 0\" /><path d=\"M20 12l-9 0\" /><path d=\"M20 18l-7 0\" /><path d=\"M8 8l-4 4l4 4\" /></svg>\n ");
2754
2698
  }
@@ -2756,7 +2700,7 @@ var Ln = class extends Q {
2756
2700
  let t = this.editor.indentManager;
2757
2701
  t && (t.outdent(), this.editor.render());
2758
2702
  }
2759
- }, Hn = class extends Q {
2703
+ }, Un = class extends $ {
2760
2704
  constructor(e) {
2761
2705
  super(e, "Code"), this.button = this.createButton("\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\"/><path d=\"M7 8l-4 4l4 4\" /><path d=\"M17 8l4 4l-4 4\" /><path d=\"M14 4l-4 16\" /></svg>\n ");
2762
2706
  }
@@ -2773,7 +2717,7 @@ var Ln = class extends Q {
2773
2717
  let a = `\`${i || "code"}\``;
2774
2718
  this.editor.insertText(a, 1, 1);
2775
2719
  }
2776
- }, Un = class extends Q {
2720
+ }, Wn = class extends $ {
2777
2721
  constructor(e) {
2778
2722
  super(e, "Code Block"), this.button = this.createButton("\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\"/><path d=\"M8 9l3 3l-3 3\" /><path d=\"M13 15l3 0\" /><rect x=\"3\" y=\"4\" width=\"18\" height=\"16\" rx=\"2\" /></svg>\n ");
2779
2723
  }
@@ -2787,7 +2731,7 @@ var Ln = class extends Q {
2787
2731
  let i = `\`\`\`\n${r || "code"}\n\`\`\``;
2788
2732
  this.editor.insertText(i, 4, 4);
2789
2733
  }
2790
- }, Wn = class extends Q {
2734
+ }, Gn = class extends $ {
2791
2735
  constructor(e) {
2792
2736
  super(e, "Horizontal Rule"), this.button = this.createButton("\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\"/><path d=\"M4 12l16 0\" stroke-width=\"3\"/><path d=\"M4 7l6 0\" /><path d=\"M4 17l6 0\" /><path d=\"M14 7l6 0\" /><path d=\"M14 17l6 0\" /></svg>\n ");
2793
2737
  }
@@ -2795,7 +2739,7 @@ var Ln = class extends Q {
2795
2739
  let e = this.editor.usertextarea, { selectionStart: t } = e, n = e.value, r = t === 0 || n[t - 1] === "\n" ? "---\n" : "\n\n---\n";
2796
2740
  this.editor.insertText(r, r.length, 0);
2797
2741
  }
2798
- }, Gn = class extends Q {
2742
+ }, Kn = class extends $ {
2799
2743
  constructor(e) {
2800
2744
  super(e, "Table"), this.button = this.createButton("\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\"/><path d=\"M3 5a2 2 0 0 1 2 -2h14a2 2 0 0 1 2 2v14a2 2 0 0 1 -2 2h-14a2 2 0 0 1 -2 -2v-14z\" /><path d=\"M3 10h18\" /><path d=\"M10 3v18\" /></svg>\n ");
2801
2745
  }
@@ -2806,26 +2750,26 @@ var Ln = class extends Q {
2806
2750
  };
2807
2751
  //#endregion
2808
2752
  //#region src/utils/variables.js
2809
- function Kn(e) {
2753
+ function qn(e) {
2810
2754
  let t = (e) => e && e.label && typeof e.value == "string", n = [];
2811
2755
  for (let r of Array.isArray(e) ? e : []) r && (Array.isArray(r.items) ? n.push(...r.items.filter(t)) : t(r) && n.push(r));
2812
2756
  return n;
2813
2757
  }
2814
- function qn(e, t) {
2815
- let n = Kn(t).filter((e) => typeof e.sample == "string");
2758
+ function Jn(e, t) {
2759
+ let n = qn(t).filter((e) => typeof e.sample == "string");
2816
2760
  return n.length ? n.slice().sort((e, t) => t.value.length - e.value.length).reduce((e, t) => e.split(t.value).join(t.sample), e) : e;
2817
2761
  }
2818
2762
  //#endregion
2819
2763
  //#region src/components/toolbar/tools/VariableTool.js
2820
- var Jn = "\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\"/><path d=\"M7 4a2 2 0 0 0 -2 2v3a2 2 0 0 1 -2 2a2 2 0 0 1 2 2v3a2 2 0 0 0 2 2\" /><path d=\"M17 4a2 2 0 0 1 2 2v3a2 2 0 0 0 2 2a2 2 0 0 0 -2 2v3a2 2 0 0 1 -2 2\" /></svg>\n", Yn = class extends Q {
2764
+ var Yn = "\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path stroke=\"none\" d=\"M0 0h24v24H0z\" fill=\"none\"/><path d=\"M7 4a2 2 0 0 0 -2 2v3a2 2 0 0 1 -2 2a2 2 0 0 1 2 2v3a2 2 0 0 0 2 2\" /><path d=\"M17 4a2 2 0 0 1 2 2v3a2 2 0 0 0 2 2a2 2 0 0 0 -2 2v3a2 2 0 0 1 -2 2\" /></svg>\n", Xn = class extends $ {
2821
2765
  constructor(e) {
2822
2766
  super(e, "Variables");
2823
2767
  }
2824
2768
  createButton() {
2825
2769
  let e = this.editor.variables ?? [];
2826
- if (!Kn(e).length) return null;
2770
+ if (!qn(e).length) return null;
2827
2771
  let t = `variable-popover-${Math.random().toString(36).slice(2, 7)}`, n = document.createElement("button");
2828
- n.innerHTML = Jn, n.querySelector("svg")?.setAttribute("aria-hidden", "true"), n.type = "button", n.title = this.editor.label("Insert variable"), n.setAttribute("aria-label", this.editor.label("Insert variable")), n.setAttribute("aria-haspopup", "menu"), n.className = "markdown-btn variable-btn fj:me-btn fj:me-btn-xs fj:me-btn-square fj:me-btn-ghost fj:me-popover-toggle", n.setAttribute("popovertarget", t);
2772
+ n.innerHTML = Yn, n.querySelector("svg")?.setAttribute("aria-hidden", "true"), n.type = "button", n.title = this.editor.label("Insert variable"), n.setAttribute("aria-label", this.editor.label("Insert variable")), n.setAttribute("aria-haspopup", "menu"), n.className = "markdown-btn variable-btn fj:me-btn fj:me-btn-xs fj:me-btn-square fj:me-btn-ghost fj:me-popover-toggle", n.setAttribute("popovertarget", t);
2829
2773
  let r = document.createElement("div");
2830
2774
  r.id = t, r.setAttribute("role", "menu"), r.setAttribute("aria-label", this.editor.label("Variables")), r.className = "fj:me-popover-content", r.setAttribute("popover", "");
2831
2775
  let i = document.createElement("ul");
@@ -2856,14 +2800,14 @@ var Jn = "\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"
2856
2800
  }), n.appendChild(r), n;
2857
2801
  }
2858
2802
  applySyntax() {}
2859
- }, Xn = class extends Q {
2803
+ }, Zn = class extends $ {
2860
2804
  constructor(e, t = {}) {
2861
2805
  super(e, t.title || "Custom"), this.action = t.action, this.button = typeof this.action == "function" ? this.createButton(t.icon || "") : null, this.shortcut = this.button ? t.shortcut : void 0, this.button || console.warn("[MarkdownEditor] A custom tool needs an action function. Skipping it.", t);
2862
2806
  }
2863
2807
  applySyntax(e) {
2864
2808
  this.action(this.editor, e);
2865
2809
  }
2866
- }, Zn = class {
2810
+ }, Qn = class {
2867
2811
  constructor(e, t, { standalone: n = !1 } = {}) {
2868
2812
  this.editor = e, this.options = t, this.standalone = n, this.tools = [], this.toolbar = document.createElement("div"), this.toolbar.className = n ? "toolbar not-prose fj:flex fj:items-center fj:gap-x-1" : "toolbar not-prose fj:me-surface fj:me-surface-outline fj:border-base-soft fj:border-0 fj:border-b fj:flex fj:items-center fj:gap-x-1 fj:p-1.5 fj:overflow-x-auto", this.toolbar.setAttribute("role", "toolbar"), this.toolbar.setAttribute("aria-label", e.label("Editor toolbar")), this.init();
2869
2813
  }
@@ -2872,32 +2816,32 @@ var Jn = "\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"
2872
2816
  }
2873
2817
  init() {
2874
2818
  let e = {
2875
- heading: Fn,
2876
- ul: On,
2877
- ol: kn,
2878
- checklist: jn,
2879
- bold: Tn,
2880
- italic: En,
2881
- strikethrough: Dn,
2882
- blockquote: Mn,
2883
- code: Hn,
2884
- codeblock: Un,
2885
- hr: Wn,
2886
- table: Gn,
2887
- link: Pn,
2888
- image: Ln,
2889
- undo: Rn,
2890
- redo: zn,
2891
- indent: Bn,
2892
- outdent: Vn,
2893
- variables: Yn
2819
+ heading: In,
2820
+ ul: Dn,
2821
+ ol: On,
2822
+ checklist: An,
2823
+ bold: wn,
2824
+ italic: Tn,
2825
+ strikethrough: En,
2826
+ blockquote: jn,
2827
+ code: Un,
2828
+ codeblock: Wn,
2829
+ hr: Gn,
2830
+ table: Kn,
2831
+ link: Nn,
2832
+ image: Rn,
2833
+ undo: zn,
2834
+ redo: Bn,
2835
+ indent: Vn,
2836
+ outdent: Hn,
2837
+ variables: Xn
2894
2838
  };
2895
2839
  if (this.options.forEach((t) => {
2896
2840
  let n, r;
2897
2841
  if (typeof t == "string") n = e[t];
2898
2842
  else if (typeof t == "function") n = t;
2899
2843
  else if (t && typeof t.tool == "function") n = t.tool, r = t.config;
2900
- else if (t && t.custom) n = Xn, r = t.custom;
2844
+ else if (t && t.custom) n = Zn, r = t.custom;
2901
2845
  else if (typeof t == "object") {
2902
2846
  let i = Object.keys(t)[0];
2903
2847
  r = t[i], n = e[i];
@@ -2908,35 +2852,38 @@ var Jn = "\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"
2908
2852
  }
2909
2853
  }), !this.standalone) {
2910
2854
  if (this.options.includes("preview")) {
2911
- let e = new An(this.editor);
2855
+ let e = new kn(this.editor);
2912
2856
  this.editor.previewTool = e, this.toolbar.appendChild(e.button);
2913
2857
  }
2914
2858
  this.editor.editorContainer.insertBefore(this.toolbar, this.editor.markdownEditorDiv);
2915
2859
  }
2916
2860
  }
2917
- }, Qn = class {
2861
+ }, $n = class {
2918
2862
  constructor(e) {
2919
2863
  this.previewContainer = document.createElement("div"), this.previewContainer.className = "preview-wrapper fj:p-2 fj:hidden fj:me-surface fj:me-surface-outline fj:border-base-soft fj:border-0 fj:border-l", this.previewContainer.setAttribute("role", "region"), this.previewContainer.setAttribute("aria-label", "Preview"), this.previewContent = document.createElement("div"), this.previewContent.className = "preview-content fj:mte-prose fj:mte-prose-sm fj:md:mte-prose-base fj:me-prose-frutjam fj:p-1.5 fj:overflow-y-auto fj:h-full fj:max-w-full", this.previewContainer.appendChild(this.previewContent), e.appendChild(this.previewContainer);
2920
2864
  }
2921
2865
  getPreviewContent() {
2922
2866
  return this.previewContent;
2923
2867
  }
2924
- }, $n = class {
2925
- constructor(e, t = {}) {
2926
- this.options = t, this.footer = document.createElement("div"), this.footer.className = "editor-footer not-prose fj:me-surface fj:me-surface-outline fj:border-base-soft fj:border-0 fj:border-t fj:flex fj:justify-between fj:items-center fj:px-3 fj:py-1 fj:text-xs fj:opacity-60 fj:select-none", this.footer.setAttribute("aria-hidden", "true"), this.positionEl = document.createElement("span"), this.charsEl = document.createElement("span"), this.wordsEl = document.createElement("span"), (this.options.line || this.options.col) && this.footer.appendChild(this.positionEl), this.options.chars && this.footer.appendChild(this.charsEl), this.options.words && this.footer.appendChild(this.wordsEl), e.appendChild(this.footer);
2868
+ }, er = class {
2869
+ constructor(e, t = {}, n = (e) => e) {
2870
+ this.options = t, this.label = n, this.footer = document.createElement("div"), this.footer.className = "editor-footer not-prose fj:me-surface fj:me-surface-outline fj:border-base-soft fj:border-0 fj:border-t fj:flex fj:justify-between fj:items-center fj:px-3 fj:py-1 fj:text-xs fj:opacity-60 fj:select-none", this.footer.setAttribute("aria-hidden", "true"), this.positionEl = document.createElement("span"), this.charsEl = document.createElement("span"), this.wordsEl = document.createElement("span"), (this.options.line || this.options.col) && this.footer.appendChild(this.positionEl), this.options.chars && this.footer.appendChild(this.charsEl), this.options.words && this.footer.appendChild(this.wordsEl), e.appendChild(this.footer);
2927
2871
  }
2928
2872
  update(e) {
2929
2873
  let t = e.value, n = e.selectionStart ?? 0;
2930
2874
  if (this.options.line || this.options.col) {
2931
2875
  let e = t.substring(0, n).split("\n"), r = [];
2932
- this.options.line && r.push(`Ln ${e.length}`), this.options.col && r.push(`Col ${e[e.length - 1].length + 1}`), this.positionEl.textContent = r.join(", ");
2876
+ this.options.line && r.push(this._count("Ln {n}", e.length)), this.options.col && r.push(this._count("Col {n}", e[e.length - 1].length + 1)), this.positionEl.textContent = r.join(", ");
2933
2877
  }
2934
- if (this.options.chars && (this.charsEl.textContent = `${t.length.toLocaleString()} chars`), this.options.words) {
2878
+ if (this.options.chars && (this.charsEl.textContent = this._count("{n} chars", t.length)), this.options.words) {
2935
2879
  let e = t.trim() ? t.trim().split(/\s+/).length : 0;
2936
- this.wordsEl.textContent = `${e.toLocaleString()} words`;
2880
+ this.wordsEl.textContent = this._count("{n} words", e);
2937
2881
  }
2938
2882
  }
2939
- }, $ = class {
2883
+ _count(e, t) {
2884
+ return this.label(e).replace("{n}", t.toLocaleString());
2885
+ }
2886
+ }, tr = class {
2940
2887
  diff(e, t, n = {}) {
2941
2888
  let r;
2942
2889
  typeof n == "function" ? (r = n, n = {}) : "callback" in n && (r = n.callback);
@@ -2945,13 +2892,10 @@ var Jn = "\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"
2945
2892
  }
2946
2893
  diffWithOptionsObj(e, t, n, r) {
2947
2894
  let i = (e) => {
2948
- if (e = this.postProcess(e, n), r) {
2949
- setTimeout(function() {
2950
- r(e);
2951
- }, 0);
2952
- return;
2953
- }
2954
- return e;
2895
+ if (e = this.postProcess(e, n), r) setTimeout(function() {
2896
+ r(e);
2897
+ }, 0);
2898
+ else return e;
2955
2899
  }, a = t.length, o = e.length, s = 1, c = a + o;
2956
2900
  n.maxEditLength != null && (c = Math.min(c, n.maxEditLength));
2957
2901
  let l = n.timeout ?? Infinity, u = Date.now() + l, d = [{
@@ -2959,7 +2903,7 @@ var Jn = "\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"
2959
2903
  lastComponent: void 0
2960
2904
  }], f = this.extractCommon(d[0], t, e, 0, n);
2961
2905
  if (d[0].oldPos + 1 >= o && f + 1 >= a) return i(this.buildValues(d[0].lastComponent, t, e));
2962
- let p = -Infinity, m = Infinity, h = () => {
2906
+ let p = -Infinity, m = Infinity, ee = () => {
2963
2907
  for (let r = Math.max(p, -s); r <= Math.min(m, s); r += 2) {
2964
2908
  let s, c = d[r - 1], l = d[r + 1];
2965
2909
  c && (d[r - 1] = void 0);
@@ -2968,24 +2912,23 @@ var Jn = "\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"
2968
2912
  let e = l.oldPos - r;
2969
2913
  u = l && 0 <= e && e < a;
2970
2914
  }
2971
- let h = c && c.oldPos + 1 < o;
2972
- if (!u && !h) {
2973
- d[r] = void 0;
2974
- continue;
2915
+ let ee = c && c.oldPos + 1 < o;
2916
+ if (!u && !ee) d[r] = void 0;
2917
+ else {
2918
+ if (s = !ee || u && c.oldPos < l.oldPos ? this.addToPath(l, !0, !1, 0, n) : this.addToPath(c, !1, !0, 1, n), f = this.extractCommon(s, t, e, r, n), s.oldPos + 1 >= o && f + 1 >= a) return i(this.buildValues(s.lastComponent, t, e)) || !0;
2919
+ d[r] = s, s.oldPos + 1 >= o && (m = Math.min(m, r - 1)), f + 1 >= a && (p = Math.max(p, r + 1));
2975
2920
  }
2976
- if (s = !h || u && c.oldPos < l.oldPos ? this.addToPath(l, !0, !1, 0, n) : this.addToPath(c, !1, !0, 1, n), f = this.extractCommon(s, t, e, r, n), s.oldPos + 1 >= o && f + 1 >= a) return i(this.buildValues(s.lastComponent, t, e)) || !0;
2977
- d[r] = s, s.oldPos + 1 >= o && (m = Math.min(m, r - 1)), f + 1 >= a && (p = Math.max(p, r + 1));
2978
2921
  }
2979
2922
  s++;
2980
2923
  };
2981
2924
  if (r) (function e() {
2982
2925
  setTimeout(function() {
2983
2926
  if (s > c || Date.now() > u) return r(void 0);
2984
- h() || e();
2927
+ ee() || e();
2985
2928
  }, 0);
2986
2929
  })();
2987
2930
  else for (; s <= c && Date.now() <= u;) {
2988
- let e = h();
2931
+ let e = ee();
2989
2932
  if (e) return e;
2990
2933
  }
2991
2934
  }
@@ -3068,42 +3011,42 @@ var Jn = "\n <svg xmlns=\"http://www.w3.org/2000/svg\" width=\"20\" height=\"
3068
3011
  }
3069
3012
  return r;
3070
3013
  }
3071
- }, er = new class extends $ {}();
3072
- function tr(e, t, n) {
3073
- return er.diff(e, t, n);
3014
+ }, nr = new class extends tr {}();
3015
+ function rr(e, t, n) {
3016
+ return nr.diff(e, t, n);
3074
3017
  }
3075
3018
  //#endregion
3076
3019
  //#region node_modules/diff/libesm/util/string.js
3077
- function nr(e, t) {
3020
+ function ir(e, t) {
3078
3021
  let n = 0;
3079
3022
  for (; n < e.length && n < t.length; n++) if (e[n] != t[n]) return e.slice(0, n);
3080
3023
  return e.slice(0, n);
3081
3024
  }
3082
- function rr(e, t) {
3025
+ function ar(e, t) {
3083
3026
  let n;
3084
3027
  if (!e || !t || e[e.length - 1] != t[t.length - 1]) return "";
3085
3028
  for (n = 0; n < e.length && n < t.length; n++) if (e[e.length - (n + 1)] != t[t.length - (n + 1)]) return e.slice(-n);
3086
3029
  return e.slice(-n);
3087
3030
  }
3088
- function ir(e, t, n) {
3031
+ function or(e, t, n) {
3089
3032
  if (e.slice(0, t.length) != t) throw Error(`string ${JSON.stringify(e)} doesn't start with prefix ${JSON.stringify(t)}; this is a bug`);
3090
3033
  return n + e.slice(t.length);
3091
3034
  }
3092
- function ar(e, t, n) {
3035
+ function sr(e, t, n) {
3093
3036
  if (!t) return e + n;
3094
3037
  if (e.slice(-t.length) != t) throw Error(`string ${JSON.stringify(e)} doesn't end with suffix ${JSON.stringify(t)}; this is a bug`);
3095
3038
  return e.slice(0, -t.length) + n;
3096
3039
  }
3097
- function or(e, t) {
3098
- return ir(e, t, "");
3099
- }
3100
- function sr(e, t) {
3101
- return ar(e, t, "");
3102
- }
3103
3040
  function cr(e, t) {
3104
- return t.slice(0, lr(e, t));
3041
+ return or(e, t, "");
3105
3042
  }
3106
3043
  function lr(e, t) {
3044
+ return sr(e, t, "");
3045
+ }
3046
+ function ur(e, t) {
3047
+ return t.slice(0, dr(e, t));
3048
+ }
3049
+ function dr(e, t) {
3107
3050
  let n = 0;
3108
3051
  e.length > t.length && (n = e.length - t.length);
3109
3052
  let r = t.length;
@@ -3121,7 +3064,7 @@ function lr(e, t) {
3121
3064
  }
3122
3065
  return a;
3123
3066
  }
3124
- function ur(e, t) {
3067
+ function fr(e, t) {
3125
3068
  let n = [];
3126
3069
  for (let r of Array.from(t.segment(e))) {
3127
3070
  let e = r.segment;
@@ -3129,27 +3072,27 @@ function ur(e, t) {
3129
3072
  }
3130
3073
  return n;
3131
3074
  }
3132
- function dr(e, t) {
3133
- if (t) return pr(e, t)[1];
3075
+ function pr(e, t) {
3076
+ if (t) return hr(e, t)[1];
3134
3077
  let n;
3135
3078
  for (n = e.length - 1; n >= 0 && e[n].match(/\s/); n--);
3136
3079
  return e.substring(n + 1);
3137
3080
  }
3138
- function fr(e, t) {
3139
- if (t) return pr(e, t)[0];
3081
+ function mr(e, t) {
3082
+ if (t) return hr(e, t)[0];
3140
3083
  let n = e.match(/^\s*/);
3141
3084
  return n ? n[0] : "";
3142
3085
  }
3143
- function pr(e, t) {
3144
- if (!t) return [fr(e), dr(e)];
3086
+ function hr(e, t) {
3087
+ if (!t) return [mr(e), pr(e)];
3145
3088
  if (t.resolvedOptions().granularity != "word") throw Error("The segmenter passed must have a granularity of \"word\"");
3146
- let n = ur(e, t), r = n[0], i = n[n.length - 1];
3089
+ let n = fr(e, t), r = n[0], i = n[n.length - 1];
3147
3090
  return [/\s/.test(r) ? r : "", /\s/.test(i) ? i : ""];
3148
3091
  }
3149
3092
  //#endregion
3150
3093
  //#region node_modules/diff/libesm/diff/word.js
3151
- var mr = "a-zA-Z0-9_\\u{AD}\\u{C0}-\\u{D6}\\u{D8}-\\u{F6}\\u{F8}-\\u{2C6}\\u{2C8}-\\u{2D7}\\u{2DE}-\\u{2FF}\\u{1E00}-\\u{1EFF}", hr = RegExp(`[${mr}]+|\\s+|[^${mr}]`, "ug");
3152
- new class extends $ {
3094
+ var gr = "a-zA-Z0-9_\\u{AD}\\u{C0}-\\u{D6}\\u{D8}-\\u{F6}\\u{F8}-\\u{2C6}\\u{2C8}-\\u{2D7}\\u{2DE}-\\u{2FF}\\u{1E00}-\\u{1EFF}", _r = RegExp(`[${gr}]+|\\s+|[^${gr}]`, "ug");
3095
+ new class extends tr {
3153
3096
  equals(e, t, n) {
3154
3097
  return n.ignoreCase && (e = e.toLowerCase(), t = t.toLowerCase()), e.trim() === t.trim();
3155
3098
  }
@@ -3158,8 +3101,8 @@ new class extends $ {
3158
3101
  if (t.intlSegmenter) {
3159
3102
  let r = t.intlSegmenter;
3160
3103
  if (r.resolvedOptions().granularity != "word") throw Error("The segmenter passed must have a granularity of \"word\"");
3161
- n = ur(e, r);
3162
- } else n = e.match(hr) || [];
3104
+ n = fr(e, r);
3105
+ } else n = e.match(_r) || [];
3163
3106
  let r = [], i = null;
3164
3107
  return n.forEach((e) => {
3165
3108
  /\s/.test(e) ? i == null ? r.push(e) : r.push(r.pop() + e) : i != null && /\s/.test(i) ? r[r.length - 1] == i ? r.push(r.pop() + e) : r.push(i + e) : r.push(e), i = e;
@@ -3172,57 +3115,57 @@ new class extends $ {
3172
3115
  if (!e || t.oneChangePerToken) return e;
3173
3116
  let n = null, r = null, i = null;
3174
3117
  return e.forEach((e) => {
3175
- e.added ? r = e : e.removed ? i = e : ((r || i) && gr(n, i, r, e, t.intlSegmenter), n = e, r = null, i = null);
3176
- }), (r || i) && gr(n, i, r, null, t.intlSegmenter), e;
3118
+ e.added ? r = e : e.removed ? i = e : ((r || i) && vr(n, i, r, e, t.intlSegmenter), n = e, r = null, i = null);
3119
+ }), (r || i) && vr(n, i, r, null, t.intlSegmenter), e;
3177
3120
  }
3178
3121
  }();
3179
- function gr(e, t, n, r, i) {
3122
+ function vr(e, t, n, r, i) {
3180
3123
  if (t && n) {
3181
- let [a, o] = pr(t.value, i), [s, c] = pr(n.value, i);
3124
+ let [a, o] = hr(t.value, i), [s, c] = hr(n.value, i);
3182
3125
  if (e) {
3183
- let r = nr(a, s);
3184
- e.value = ar(e.value, s, r), t.value = or(t.value, r), n.value = or(n.value, r);
3126
+ let r = ir(a, s);
3127
+ e.value = sr(e.value, s, r), t.value = cr(t.value, r), n.value = cr(n.value, r);
3185
3128
  }
3186
3129
  if (r) {
3187
- let e = rr(o, c);
3188
- r.value = ir(r.value, c, e), t.value = sr(t.value, e), n.value = sr(n.value, e);
3130
+ let e = ar(o, c);
3131
+ r.value = or(r.value, c, e), t.value = lr(t.value, e), n.value = lr(n.value, e);
3189
3132
  }
3190
3133
  } else if (n) {
3191
3134
  if (e) {
3192
- let e = fr(n.value, i);
3135
+ let e = mr(n.value, i);
3193
3136
  n.value = n.value.substring(e.length);
3194
3137
  }
3195
3138
  if (r) {
3196
- let e = fr(r.value, i);
3139
+ let e = mr(r.value, i);
3197
3140
  r.value = r.value.substring(e.length);
3198
3141
  }
3199
3142
  } else if (e && r) {
3200
- let n = fr(r.value, i), [a, o] = pr(t.value, i), s = nr(n, a);
3201
- t.value = or(t.value, s);
3202
- let c = rr(or(n, s), o);
3203
- t.value = sr(t.value, c), r.value = ir(r.value, n, c), e.value = ar(e.value, n, n.slice(0, n.length - c.length));
3143
+ let n = mr(r.value, i), [a, o] = hr(t.value, i), s = ir(n, a);
3144
+ t.value = cr(t.value, s);
3145
+ let c = ar(cr(n, s), o);
3146
+ t.value = lr(t.value, c), r.value = or(r.value, n, c), e.value = sr(e.value, n, n.slice(0, n.length - c.length));
3204
3147
  } else if (r) {
3205
- let e = fr(r.value, i), n = cr(dr(t.value, i), e);
3206
- t.value = sr(t.value, n);
3148
+ let e = mr(r.value, i), n = ur(pr(t.value, i), e);
3149
+ t.value = lr(t.value, n);
3207
3150
  } else if (e) {
3208
- let n = cr(dr(e.value, i), fr(t.value, i));
3209
- t.value = or(t.value, n);
3151
+ let n = ur(pr(e.value, i), mr(t.value, i));
3152
+ t.value = cr(t.value, n);
3210
3153
  }
3211
3154
  }
3212
- new class extends $ {
3155
+ new class extends tr {
3213
3156
  tokenize(e) {
3214
- let t = RegExp(`(\\r?\\n)|[${mr}]+|[^\\S\\n\\r]+|[^${mr}]`, "ug");
3157
+ let t = RegExp(`(\\r?\\n)|[${gr}]+|[^\\S\\n\\r]+|[^${gr}]`, "ug");
3215
3158
  return e.match(t) || [];
3216
3159
  }
3217
- }(), new class extends $ {
3160
+ }(), new class extends tr {
3218
3161
  constructor() {
3219
- super(...arguments), this.tokenize = _r;
3162
+ super(...arguments), this.tokenize = yr;
3220
3163
  }
3221
3164
  equals(e, t, n) {
3222
3165
  return n.ignoreWhitespace ? ((!n.newlineIsToken || !e.includes("\n")) && (e = e.trim()), (!n.newlineIsToken || !t.includes("\n")) && (t = t.trim())) : n.ignoreNewlineAtEof && !n.newlineIsToken && (e.endsWith("\n") && (e = e.slice(0, -1)), t.endsWith("\n") && (t = t.slice(0, -1))), super.equals(e, t, n);
3223
3166
  }
3224
3167
  }();
3225
- function _r(e, t) {
3168
+ function yr(e, t) {
3226
3169
  t.stripTrailingCr && (e = e.replace(/\r\n/g, "\n"));
3227
3170
  let n = [], r = e.split(/(\n|\r\n)/);
3228
3171
  r[r.length - 1] || r.pop();
@@ -3234,10 +3177,10 @@ function _r(e, t) {
3234
3177
  }
3235
3178
  //#endregion
3236
3179
  //#region node_modules/diff/libesm/diff/sentence.js
3237
- function vr(e) {
3180
+ function br(e) {
3238
3181
  return e == "." || e == "!" || e == "?";
3239
3182
  }
3240
- new class extends $ {
3183
+ new class extends tr {
3241
3184
  tokenize(e) {
3242
3185
  let t = [], n = 0;
3243
3186
  for (let r = 0; r < e.length; r++) {
@@ -3245,39 +3188,39 @@ new class extends $ {
3245
3188
  t.push(e.slice(n));
3246
3189
  break;
3247
3190
  }
3248
- if (vr(e[r]) && e[r + 1].match(/\s/)) {
3191
+ if (br(e[r]) && e[r + 1].match(/\s/)) {
3249
3192
  for (t.push(e.slice(n, r + 1)), r = n = r + 1; e[r + 1]?.match(/\s/);) r++;
3250
3193
  t.push(e.slice(n, r + 1)), n = r + 1;
3251
3194
  }
3252
3195
  }
3253
3196
  return t;
3254
3197
  }
3255
- }(), new class extends $ {
3198
+ }(), new class extends tr {
3256
3199
  tokenize(e) {
3257
3200
  return e.split(/([{}:;,]|\s+)/);
3258
3201
  }
3259
- }(), new class extends $ {
3202
+ }(), new class extends tr {
3260
3203
  constructor() {
3261
- super(...arguments), this.tokenize = _r;
3204
+ super(...arguments), this.tokenize = yr;
3262
3205
  }
3263
3206
  get useLongestToken() {
3264
3207
  return !0;
3265
3208
  }
3266
3209
  castInput(e, t) {
3267
3210
  let { undefinedReplacement: n, stringifyReplacer: r = (e, t) => t === void 0 ? n : t } = t;
3268
- return typeof e == "string" ? e : JSON.stringify(yr(e, null, null, r), null, " ");
3211
+ return typeof e == "string" ? e : JSON.stringify(xr(e, null, null, r), null, " ");
3269
3212
  }
3270
3213
  equals(e, t, n) {
3271
3214
  return super.equals(e.replace(/,([\r\n])/g, "$1"), t.replace(/,([\r\n])/g, "$1"), n);
3272
3215
  }
3273
3216
  }();
3274
- function yr(e, t, n, r, i) {
3217
+ function xr(e, t, n, r, i) {
3275
3218
  t ||= [], n ||= [], r && (e = r(i === void 0 ? "" : i, e));
3276
3219
  let a = 0;
3277
3220
  for (; a < t.length; a += 1) if (t[a] === e) return n[a];
3278
3221
  let o;
3279
3222
  if (Object.prototype.toString.call(e) === "[object Array]") {
3280
- for (t.push(e), o = Array(e.length), n.push(o), a = 0; a < e.length; a += 1) o[a] = yr(e[a], t, n, r, String(a));
3223
+ for (t.push(e), o = Array(e.length), n.push(o), a = 0; a < e.length; a += 1) o[a] = xr(e[a], t, n, r, String(a));
3281
3224
  return t.pop(), n.pop(), o;
3282
3225
  }
3283
3226
  if (e && e.toJSON && (e = e.toJSON()), typeof e == "object" && e) {
@@ -3286,12 +3229,12 @@ function yr(e, t, n, r, i) {
3286
3229
  for (s in e)
3287
3230
  /* istanbul ignore else */
3288
3231
  Object.prototype.hasOwnProperty.call(e, s) && i.push(s);
3289
- for (i.sort(), a = 0; a < i.length; a += 1) s = i[a], o[s] = yr(e[s], t, n, r, s);
3232
+ for (i.sort(), a = 0; a < i.length; a += 1) s = i[a], o[s] = xr(e[s], t, n, r, s);
3290
3233
  t.pop(), n.pop();
3291
3234
  } else o = e;
3292
3235
  return o;
3293
3236
  }
3294
- new class extends $ {
3237
+ new class extends tr {
3295
3238
  tokenize(e) {
3296
3239
  return e.slice();
3297
3240
  }
@@ -3304,7 +3247,7 @@ new class extends $ {
3304
3247
  }();
3305
3248
  //#endregion
3306
3249
  //#region src/utils/UndoRedoManager.js
3307
- var br = class {
3250
+ var Sr = class {
3308
3251
  constructor(e) {
3309
3252
  this.editor = e, this.textarea = e.usertextarea, this.undoStack = [], this.redoStack = [], this.lastValue = this.textarea.value, this.lastSelection = {
3310
3253
  selectionStart: this.textarea.selectionStart,
@@ -3338,7 +3281,7 @@ var br = class {
3338
3281
  let e = this.textarea.value || "";
3339
3282
  if (e === this.lastValue) return;
3340
3283
  clearTimeout(this._debounceTimer);
3341
- let t = tr(this.lastValue, e);
3284
+ let t = rr(this.lastValue, e);
3342
3285
  this.undoStack.push({
3343
3286
  diff: t,
3344
3287
  selection: { ...this.lastSelection }
@@ -3378,7 +3321,7 @@ var br = class {
3378
3321
  _restoreState(e, t) {
3379
3322
  this.textarea.value = e, this.textarea.setSelectionRange(t.selectionStart, t.selectionEnd), this.lastValue = e, this.lastSelection = { ...t }, this.editor.render && this.editor.render(), this.editor.notifyChange(), this.textarea.focus();
3380
3323
  }
3381
- }, xr = class {
3324
+ }, Cr = class {
3382
3325
  constructor(e, t) {
3383
3326
  this.editor = e, this.textarea = e.usertextarea, this.renderCallback = t, this.pairs = {
3384
3327
  "{": "}",
@@ -3443,9 +3386,7 @@ var br = class {
3443
3386
  t.value = r.substring(0, n) + i + r.substring(n);
3444
3387
  let a = n + o.length + 1 + 1;
3445
3388
  t.setSelectionRange(a, a), this._triggerUpdate();
3446
- return;
3447
- }
3448
- if (o.length > 0) {
3389
+ } else if (o.length > 0) {
3449
3390
  e.preventDefault();
3450
3391
  let i = "\n" + o;
3451
3392
  t.value = r.substring(0, n) + i + r.substring(t.selectionEnd);
@@ -3471,7 +3412,7 @@ var br = class {
3471
3412
  _applyChange(e, t, n) {
3472
3413
  this.textarea.value = e, this.textarea.setSelectionRange(t, n);
3473
3414
  }
3474
- }, Sr = class {
3415
+ }, wr = class {
3475
3416
  constructor(e) {
3476
3417
  this.editor = e, this.textarea = e.usertextarea, this._keydownHandler = (e) => {
3477
3418
  e.key === "Enter" && this.handleEnter(e);
@@ -3497,12 +3438,12 @@ var br = class {
3497
3438
  this.textarea.setSelectionRange(o, o), this.editor.render(), this.editor.notifyChange();
3498
3439
  }
3499
3440
  }
3500
- }, Cr = [
3441
+ }, Tr = [
3501
3442
  {
3502
3443
  key: "b",
3503
3444
  ctrl: !0,
3504
3445
  shift: !1,
3505
- ToolClass: Tn,
3446
+ ToolClass: wn,
3506
3447
  label: "Ctrl+B",
3507
3448
  btnClass: "bold-btn"
3508
3449
  },
@@ -3510,7 +3451,7 @@ var br = class {
3510
3451
  key: "i",
3511
3452
  ctrl: !0,
3512
3453
  shift: !1,
3513
- ToolClass: En,
3454
+ ToolClass: Tn,
3514
3455
  label: "Ctrl+I",
3515
3456
  btnClass: "italic-btn"
3516
3457
  },
@@ -3518,7 +3459,7 @@ var br = class {
3518
3459
  key: "k",
3519
3460
  ctrl: !0,
3520
3461
  shift: !1,
3521
- ToolClass: Pn,
3462
+ ToolClass: Nn,
3522
3463
  label: "Ctrl+K",
3523
3464
  btnClass: "link-btn"
3524
3465
  },
@@ -3526,7 +3467,7 @@ var br = class {
3526
3467
  key: "`",
3527
3468
  ctrl: !0,
3528
3469
  shift: !1,
3529
- ToolClass: Hn,
3470
+ ToolClass: Un,
3530
3471
  label: "Ctrl+`",
3531
3472
  btnClass: "code-btn"
3532
3473
  },
@@ -3534,7 +3475,7 @@ var br = class {
3534
3475
  key: "s",
3535
3476
  ctrl: !0,
3536
3477
  shift: !0,
3537
- ToolClass: Dn,
3478
+ ToolClass: En,
3538
3479
  label: "Ctrl+Shift+S",
3539
3480
  btnClass: "strikethrough-btn"
3540
3481
  },
@@ -3542,12 +3483,12 @@ var br = class {
3542
3483
  key: "l",
3543
3484
  ctrl: !0,
3544
3485
  shift: !1,
3545
- ToolClass: On,
3486
+ ToolClass: Dn,
3546
3487
  label: "Ctrl+L",
3547
3488
  btnClass: "ul-btn"
3548
3489
  }
3549
3490
  ];
3550
- function wr(e) {
3491
+ function Er(e) {
3551
3492
  let t = String(e).split("+").map((e) => e.trim().toLowerCase()), n = t.pop();
3552
3493
  return n ? {
3553
3494
  key: n,
@@ -3556,34 +3497,39 @@ function wr(e) {
3556
3497
  alt: t.includes("alt")
3557
3498
  } : null;
3558
3499
  }
3559
- var Tr = class {
3500
+ var Dr = class {
3560
3501
  constructor(e) {
3561
3502
  this.editor = e, this.toolShortcuts = (e.toolbarInstance?.tools ?? []).filter((e) => e.shortcut).map((e) => ({
3562
3503
  tool: e,
3563
- combo: wr(e.shortcut)
3564
- })).filter((e) => e.combo), this._handler = this._onKeyDown.bind(this), this._docHandler = this._onDocKeyDown.bind(this), e.usertextarea.addEventListener("keydown", this._handler), document.addEventListener("keydown", this._docHandler), this._updateTooltips();
3504
+ combo: Er(e.shortcut)
3505
+ })).filter((e) => e.combo);
3506
+ let t = (e.toolbarInstance?.tools ?? []).find((e) => e instanceof In);
3507
+ this.headingLevels = t?.levels ?? [
3508
+ 1,
3509
+ 2,
3510
+ 3,
3511
+ 4,
3512
+ 5,
3513
+ 6
3514
+ ], this._handler = this._onKeyDown.bind(this), this._docHandler = this._onDocKeyDown.bind(this), e.usertextarea.addEventListener("keydown", this._handler), document.addEventListener("keydown", this._docHandler), this._updateTooltips();
3565
3515
  }
3566
3516
  _onKeyDown(e) {
3567
3517
  let t = e.ctrlKey || e.metaKey, n = e.shiftKey, r = e.key.toLowerCase();
3568
- if (t && n && r === "f") {
3569
- e.preventDefault(), this.editor.editorContainer.querySelector(".preview-btn")?.click();
3570
- return;
3571
- }
3572
- if (t && !n && [
3518
+ if (t && n && r === "f") e.preventDefault(), this.editor.editorContainer.querySelector(".preview-btn")?.click();
3519
+ else if (t && !n && [
3573
3520
  "1",
3574
3521
  "2",
3575
3522
  "3"
3576
- ].includes(e.key)) {
3577
- e.preventDefault(), new Fn(this.editor).applyHeading(parseInt(e.key));
3578
- return;
3579
- }
3580
- for (let { tool: i, combo: a } of this.toolShortcuts) if (r === a.key && t === a.ctrl && n === a.shift && e.altKey === a.alt) {
3581
- e.preventDefault(), i.applySyntax(e);
3582
- return;
3583
- }
3584
- for (let i of Cr) if (r === i.key && t === i.ctrl && n === i.shift) {
3585
- e.preventDefault(), new i.ToolClass(this.editor).applySyntax(e);
3586
- return;
3523
+ ].includes(e.key) && this.headingLevels.includes(parseInt(e.key))) e.preventDefault(), new In(this.editor).applyHeading(parseInt(e.key));
3524
+ else {
3525
+ for (let { tool: i, combo: a } of this.toolShortcuts) if (r === a.key && t === a.ctrl && n === a.shift && e.altKey === a.alt) {
3526
+ e.preventDefault(), i.applySyntax(e);
3527
+ return;
3528
+ }
3529
+ for (let i of Tr) if (r === i.key && t === i.ctrl && n === i.shift) {
3530
+ e.preventDefault(), new i.ToolClass(this.editor).applySyntax(e);
3531
+ return;
3532
+ }
3587
3533
  }
3588
3534
  }
3589
3535
  _onDocKeyDown(e) {
@@ -3593,20 +3539,20 @@ var Tr = class {
3593
3539
  }
3594
3540
  }
3595
3541
  _updateTooltips() {
3596
- for (let { btnClass: e, label: t } of Cr) {
3542
+ for (let { btnClass: e, label: t } of Tr) {
3597
3543
  let n = this.editor.editorContainer.querySelector(`.${e}`);
3598
3544
  n && (n.title += ` (${t})`);
3599
3545
  }
3600
- let e = this.editor.editorContainer.querySelector(".heading-btn");
3601
- e && (e.title += " (Ctrl+1/2/3)");
3602
- let t = this.editor.editorContainer.querySelector(".preview-btn");
3603
- t && (t.title += " (F11)");
3546
+ let e = this.editor.editorContainer.querySelector(".heading-btn"), t = this.headingLevels.filter((e) => e <= 3);
3547
+ e && t.length && (e.title += ` (Ctrl+${t.join("/")})`);
3548
+ let n = this.editor.editorContainer.querySelector(".preview-btn");
3549
+ n && (n.title += " (F11)");
3604
3550
  for (let { tool: e } of this.toolShortcuts) e.button && (e.button.title += ` (${e.shortcut})`);
3605
3551
  }
3606
3552
  destroy() {
3607
3553
  this.editor.usertextarea.removeEventListener("keydown", this._handler), document.removeEventListener("keydown", this._docHandler);
3608
3554
  }
3609
- }, Er = class {
3555
+ }, Or = class {
3610
3556
  constructor(e) {
3611
3557
  this.editor = e, this._matches = [], this._currentIndex = -1, this._caseSensitive = !1, this._panel = null, this._findInput = null, this._replaceInput = null, this._countEl = null, this._replaceRow = null, this._caseSensitiveBtn = null, this._highlightEl = null, this._scrollHandler = null, this._taHandler = this._onTextareaKeyDown.bind(this), e.usertextarea.addEventListener("keydown", this._taHandler);
3612
3558
  }
@@ -3631,33 +3577,33 @@ var Tr = class {
3631
3577
  }
3632
3578
  _buildPanel() {
3633
3579
  let e = document.createElement("div");
3634
- e.className = "find-replace-panel fj:absolute fj:top-1 fj:right-1 fj:z-20 fj:me-surface fj:me-surface-outline fj:me-surface-rounded fj:p-1.5 fj:flex fj:flex-col fj:gap-1 fj:shadow-lg", e.setAttribute("role", "search"), e.setAttribute("aria-label", "Find and replace");
3580
+ e.className = "find-replace-panel fj:absolute fj:top-1 fj:right-1 fj:z-20 fj:me-surface fj:me-surface-outline fj:me-surface-rounded fj:p-1.5 fj:flex fj:flex-col fj:gap-1 fj:shadow-lg", e.setAttribute("role", "search"), e.setAttribute("aria-label", this.editor.label("Find and replace"));
3635
3581
  let t = document.createElement("div");
3636
- t.className = "fj:flex fj:items-center fj:gap-1", this._findInput = document.createElement("input"), this._findInput.type = "text", this._findInput.placeholder = "Find", this._findInput.className = "fj:me-input fj:me-input-xs fj:w-36", this._findInput.setAttribute("aria-label", "Find"), this._findInput.addEventListener("input", () => this._search()), this._findInput.addEventListener("keydown", (e) => {
3582
+ t.className = "fj:flex fj:items-center fj:gap-1", this._findInput = document.createElement("input"), this._findInput.type = "text", this._findInput.placeholder = this.editor.label("Find"), this._findInput.className = "fj:me-input fj:me-input-xs fj:w-36", this._findInput.setAttribute("aria-label", this.editor.label("Find")), this._findInput.addEventListener("input", () => this._search()), this._findInput.addEventListener("keydown", (e) => {
3637
3583
  e.key === "Enter" && (e.shiftKey ? this._prev() : this._next()), e.key === "Escape" && (e.preventDefault(), this.close());
3638
3584
  }), this._countEl = document.createElement("span"), this._countEl.className = "fj:text-xs fj:opacity-50 fj:whitespace-nowrap fj:min-w-[3.5rem] fj:text-center fj:select-none", this._countEl.setAttribute("aria-live", "polite");
3639
3585
  let n = this._iconBtn("Previous match", "<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"m18 15-6-6-6 6\"/></svg>");
3640
3586
  n.addEventListener("click", () => this._prev());
3641
3587
  let r = this._iconBtn("Next match", "<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"m6 9 6 6 6-6\"/></svg>");
3642
- r.addEventListener("click", () => this._next()), this._caseSensitiveBtn = document.createElement("button"), this._caseSensitiveBtn.type = "button", this._caseSensitiveBtn.className = "fj:me-btn fj:me-btn-xs fj:me-btn-square fj:me-btn-ghost fj:text-xs fj:font-bold", this._caseSensitiveBtn.textContent = "Aa", this._caseSensitiveBtn.setAttribute("aria-label", "Match case"), this._caseSensitiveBtn.setAttribute("aria-pressed", "false"), this._caseSensitiveBtn.title = "Match case", this._caseSensitiveBtn.addEventListener("click", () => {
3588
+ r.addEventListener("click", () => this._next()), this._caseSensitiveBtn = document.createElement("button"), this._caseSensitiveBtn.type = "button", this._caseSensitiveBtn.className = "fj:me-btn fj:me-btn-xs fj:me-btn-square fj:me-btn-ghost fj:text-xs fj:font-bold", this._caseSensitiveBtn.textContent = "Aa", this._caseSensitiveBtn.setAttribute("aria-label", this.editor.label("Match case")), this._caseSensitiveBtn.setAttribute("aria-pressed", "false"), this._caseSensitiveBtn.title = this.editor.label("Match case"), this._caseSensitiveBtn.addEventListener("click", () => {
3643
3589
  this._caseSensitive = !this._caseSensitive, this._caseSensitiveBtn.setAttribute("aria-pressed", String(this._caseSensitive)), this._caseSensitiveBtn.classList.toggle("fj:me-btn-active", this._caseSensitive), this._search();
3644
3590
  });
3645
3591
  let i = document.createElement("button");
3646
- i.type = "button", i.className = "fj:me-btn fj:me-btn-xs fj:me-btn-ghost fj:text-xs fj:px-1.5", i.textContent = "Replace", i.setAttribute("aria-label", "Toggle replace row"), i.addEventListener("click", () => {
3592
+ i.type = "button", i.className = "fj:me-btn fj:me-btn-xs fj:me-btn-ghost fj:text-xs fj:px-1.5", i.textContent = this.editor.label("Replace"), i.setAttribute("aria-label", this.editor.label("Toggle replace row")), i.addEventListener("click", () => {
3647
3593
  this._replaceRow.hidden = !this._replaceRow.hidden, this._replaceRow.hidden || this._replaceInput.focus();
3648
3594
  });
3649
3595
  let a = this._iconBtn("Close", "<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2.5\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M18 6 6 18\"/><path d=\"m6 6 12 12\"/></svg>");
3650
- a.addEventListener("click", () => this.close()), t.append(this._findInput, this._countEl, n, r, this._caseSensitiveBtn, i, a), this._replaceRow = document.createElement("div"), this._replaceRow.className = "fj:flex fj:items-center fj:gap-1", this._replaceRow.hidden = !0, this._replaceInput = document.createElement("input"), this._replaceInput.type = "text", this._replaceInput.placeholder = "Replace", this._replaceInput.className = "fj:me-input fj:me-input-xs fj:w-36", this._replaceInput.setAttribute("aria-label", "Replace with"), this._replaceInput.addEventListener("keydown", (e) => {
3596
+ a.addEventListener("click", () => this.close()), t.append(this._findInput, this._countEl, n, r, this._caseSensitiveBtn, i, a), this._replaceRow = document.createElement("div"), this._replaceRow.className = "fj:flex fj:items-center fj:gap-1", this._replaceRow.hidden = !0, this._replaceInput = document.createElement("input"), this._replaceInput.type = "text", this._replaceInput.placeholder = this.editor.label("Replace"), this._replaceInput.className = "fj:me-input fj:me-input-xs fj:w-36", this._replaceInput.setAttribute("aria-label", this.editor.label("Replace with")), this._replaceInput.addEventListener("keydown", (e) => {
3651
3597
  e.key === "Enter" && this._replace(), e.key === "Escape" && (e.preventDefault(), this.close());
3652
3598
  });
3653
3599
  let o = document.createElement("button");
3654
- o.type = "button", o.className = "fj:me-btn fj:me-btn-xs fj:me-btn-ghost fj:text-xs fj:px-1.5", o.textContent = "Replace", o.addEventListener("click", () => this._replace());
3600
+ o.type = "button", o.className = "fj:me-btn fj:me-btn-xs fj:me-btn-ghost fj:text-xs fj:px-1.5", o.textContent = this.editor.label("Replace"), o.addEventListener("click", () => this._replace());
3655
3601
  let s = document.createElement("button");
3656
- s.type = "button", s.className = "fj:me-btn fj:me-btn-xs fj:me-btn-ghost fj:text-xs fj:px-1.5", s.textContent = "All", s.setAttribute("aria-label", "Replace all"), s.addEventListener("click", () => this._replaceAll()), this._replaceRow.append(this._replaceInput, o, s), e.append(t, this._replaceRow), this.editor.markdownEditorDiv.appendChild(e), this._panel = e;
3602
+ s.type = "button", s.className = "fj:me-btn fj:me-btn-xs fj:me-btn-ghost fj:text-xs fj:px-1.5", s.textContent = this.editor.label("All"), s.setAttribute("aria-label", this.editor.label("Replace all")), s.addEventListener("click", () => this._replaceAll()), this._replaceRow.append(this._replaceInput, o, s), e.append(t, this._replaceRow), this.editor.markdownEditorDiv.appendChild(e), this._panel = e;
3657
3603
  }
3658
3604
  _iconBtn(e, t) {
3659
3605
  let n = document.createElement("button");
3660
- n.type = "button", n.className = "fj:me-btn fj:me-btn-xs fj:me-btn-square fj:me-btn-ghost", n.setAttribute("aria-label", e), n.innerHTML = t;
3606
+ n.type = "button", n.className = "fj:me-btn fj:me-btn-xs fj:me-btn-square fj:me-btn-ghost", n.setAttribute("aria-label", this.editor.label(e)), n.innerHTML = t;
3661
3607
  let r = n.querySelector("svg");
3662
3608
  return r && r.setAttribute("aria-hidden", "true"), n;
3663
3609
  }
@@ -3758,7 +3704,7 @@ var Tr = class {
3758
3704
  destroy() {
3759
3705
  this.editor.usertextarea.removeEventListener("keydown", this._taHandler), this._scrollHandler && this.editor.usertextarea.removeEventListener("scroll", this._scrollHandler), this._clearMatchHighlight(), this._panel?.remove();
3760
3706
  }
3761
- }, Dr = /^https?:\/\/\S+$/i, Or = class {
3707
+ }, kr = /^https?:\/\/\S+$/i, Ar = class {
3762
3708
  constructor(e) {
3763
3709
  this.editor = e, this.textarea = e.usertextarea, this._pasteHandler = (e) => this._onPaste(e), this._dropHandler = (e) => this._onDrop(e), this._dragOverHandler = (e) => {
3764
3710
  this._carriesFiles(e.dataTransfer) && e.preventDefault();
@@ -3784,7 +3730,7 @@ var Tr = class {
3784
3730
  return;
3785
3731
  }
3786
3732
  let n = e.clipboardData?.getData("text/plain")?.trim(), { selectionStart: r, selectionEnd: i } = this.textarea;
3787
- if (n && i > r && Dr.test(n)) {
3733
+ if (n && i > r && kr.test(n)) {
3788
3734
  e.preventDefault();
3789
3735
  let t = `[${this.textarea.value.slice(r, i)}](${n})`;
3790
3736
  this.editor.insertText(t, t.length, 0);
@@ -3794,20 +3740,14 @@ var Tr = class {
3794
3740
  if (!this._carriesFiles(e.dataTransfer)) return;
3795
3741
  e.preventDefault();
3796
3742
  let t = this._imageFiles(e.dataTransfer);
3797
- if (t.length) {
3798
- if (!this.editor.imageUpload) {
3799
- console.warn("[MarkdownEditor] An image was dropped but no upload endpoint is configured. Add { image: { fileInput: { uploadUrl: \"...\" } } } to the toolbar to enable it.");
3800
- return;
3801
- }
3802
- this._uploadAll(t);
3803
- }
3743
+ t.length && (this.editor.imageUpload ? this._uploadAll(t) : console.warn("[MarkdownEditor] An image was dropped but no upload endpoint is configured. Add { image: { fileInput: { uploadUrl: \"...\" } } } to the toolbar to enable it."));
3804
3744
  }
3805
3745
  async _uploadAll(e) {
3806
3746
  for (let t of e) {
3807
3747
  let e = `![${this.editor.label("Uploading...")}]()`;
3808
3748
  this.editor.insertText(e, e.length, 0);
3809
3749
  try {
3810
- let { path: n, alt: r } = await In(t, this.editor.imageUpload);
3750
+ let { path: n, alt: r } = await Ln(t, this.editor.imageUpload);
3811
3751
  this._replace(e, `![${r}](${n})`);
3812
3752
  } catch (t) {
3813
3753
  this._replace(e, `![${this.editor.label("Upload failed")}]()`), console.error("[MarkdownEditor] Image upload failed.", t);
@@ -3821,12 +3761,19 @@ var Tr = class {
3821
3761
  let i = r + t.length;
3822
3762
  n.setSelectionRange(i, i), this.editor.render(), this.editor.notifyChange();
3823
3763
  }
3824
- }, kr = new ot({ breaks: !0 }), Ar = class {
3764
+ }, jr = new rt({ breaks: !0 }), Mr = class e {
3825
3765
  constructor(e, t = {}) {
3826
- this.usertextarea = typeof e == "string" ? document.querySelector(e) : e, this.options = t, this.mode = t.mode || "plain", this.preview = !this.options.toolbar || this.options.toolbar.includes("preview"), this.footerOptions = this._parseFooterOptions(t.footer), this.variables = this._parseVariables(t.toolbar), this.imageUpload = this._parseImageUpload(t.toolbar), this.previewTimer = null, this.init(), this.undoRedoManager = new br(this), this.listManager = new Sr(this), this.indentManager = new xr(this), this.shortcutManager = new Tr(this), this.findReplace = new Er(this), this.pasteManager = new Or(this);
3766
+ this.usertextarea = typeof e == "string" ? document.querySelector(e) : e, this.options = t, this.mode = t.mode || "plain", this.preview = !this.options.toolbar || this.options.toolbar.includes("preview"), this.footerOptions = this._parseFooterOptions(t.footer), this.variables = this._parseVariables(t.toolbar), this.imageUpload = this._parseImageUpload(t.toolbar), this.previewTimer = null, this.init(), this.undoRedoManager = new Sr(this), this.listManager = new wr(this), this.indentManager = new Cr(this), this.shortcutManager = new Dr(this), this.findReplace = new Or(this), this.pasteManager = new Ar(this), this._warnIfStylesheetMissing(), this._warnIfLocaleIsACode();
3767
+ }
3768
+ _warnIfLocaleIsACode() {
3769
+ let e = this.options.locale;
3770
+ typeof e == "string" && console.error(`[MarkdownEditor] locale: '${e}' has no effect. It takes the strings, not a code:\n import ${/^[a-z]{2}$/i.test(e) ? e : "strings"} from 'markdown-text-editor/locale/${e}.js'\n new MarkdownEditor(el, { locale: ${/^[a-z]{2}$/i.test(e) ? e : "strings"} })`);
3771
+ }
3772
+ _warnIfStylesheetMissing() {
3773
+ e._cssWarned || this.editorContainer?.isConnected && (getComputedStyle(this.editorContainer).getPropertyValue("--mte-css").trim() || (e._cssWarned = !0, console.error("[MarkdownEditor] Stylesheet not loaded, so the editor will look unstyled.\n Bundlers: import 'markdown-text-editor/style.css'\n Browsers: <link rel=\"stylesheet\" href=\".../dist/markdown-text-editor.css\">")));
3827
3774
  }
3828
3775
  label(e) {
3829
- return this.options.labels?.[e] ?? e;
3776
+ return (this.options.locale ?? this.options.labels)?.[e] ?? e;
3830
3777
  }
3831
3778
  _parseImageUpload(e) {
3832
3779
  let t = (Array.isArray(e) ? e : []).find((e) => e && typeof e == "object" && e.image)?.image?.fileInput;
@@ -3868,7 +3815,7 @@ var Tr = class {
3868
3815
  e.className = "\n textarea-wrapper\n not-prose\n fj:me-surface\n fj:h-full\n fj:min-h-0\n fj:relative\n fj:grid\n ", this.mode == "hybrid" && (this.displayLayer = document.createElement("div"), this.displayLayer.setAttribute("data-placeholder", this.usertextarea.placeholder), this.displayLayer.setAttribute("aria-hidden", !0), this.displayLayer.className = "\n display-layer\n fj:px-4\n fj:py-2\n fj:whitespace-pre-wrap fj:wrap-break-word\n fj:pointer-events-none\n fj:absolute\n fj:inset-0\n fj:m-0\n fj:box-border\n fj:z-0\n fj:overflow-y-auto\n fj:empty:after:content-[attr(data-placeholder)]\n fj:empty:after:absolute\n fj:empty:after:inset-0\n fj:empty:after:px-4\n fj:empty:after:py-2\n fj:empty:after:text-[CanvasText]\n fj:empty:after:opacity-50\n ", this.usertextarea.className += "\n fj:text-transparent\n fj:caret-primary\n fj:resize-none\n fj:outline-none\n fj:m-0\n fj:box-border\n fj:relative\n fj:z-10\n ", e.appendChild(this.displayLayer)), e.appendChild(this.usertextarea), this.markdownEditorDiv.appendChild(e);
3869
3816
  }
3870
3817
  addPreviewWrapper() {
3871
- let e = new Qn(this.markdownEditorDiv);
3818
+ let e = new $n(this.markdownEditorDiv);
3872
3819
  this.previewContent = e.getPreviewContent();
3873
3820
  }
3874
3821
  addInputListener() {
@@ -3902,10 +3849,10 @@ var Tr = class {
3902
3849
  return n.usertextarea = e, n.scrollToView = () => {}, n.render = () => {}, n.notifyChange = () => {}, n.insertText = (t, n = 0, r = 0) => {
3903
3850
  let { selectionStart: i, selectionEnd: a, value: o } = e;
3904
3851
  e.value = o.slice(0, i) + t + o.slice(a), e.focus(), e.setSelectionRange(i + n, i + t.length - r);
3905
- }, new Zn(n, t, { standalone: !0 }).toolbar;
3852
+ }, new Qn(n, t, { standalone: !0 }).toolbar;
3906
3853
  }
3907
3854
  _renderMarkdown(e) {
3908
- let t = this.options.renderer ?? ((e) => kr.parse(e)), n = this.options.sanitizer ?? ((e) => wn.sanitize(e)), r = qn(e, this.variables), i = t(r);
3855
+ let t = this.options.renderer ?? ((e) => jr.parse(e)), n = this.options.sanitizer ?? ((e) => Cn.sanitize(e)), r = Jn(e, this.variables), i = t(r);
3909
3856
  return this.options.renderer && !this._taskListWarned && /^\s*[-*] \[[ xX]\] /m.test(r) && !/type=["']?checkbox/.test(i) && (this._taskListWarned = !0, console.warn("[MarkdownEditor] Task list syntax found, but the custom renderer emitted no checkboxes. Clickable checkboxes in the preview need a task-list plugin, e.g. markdown-it-task-lists.")), n(i);
3910
3857
  }
3911
3858
  wirePreviewCheckboxes() {
@@ -3927,10 +3874,10 @@ var Tr = class {
3927
3874
  addFooter() {
3928
3875
  if (!this.footerOptions) return;
3929
3876
  let { line: e, col: t, chars: n, words: r } = this.footerOptions;
3930
- (e || t || n || r) && (this.footer = new $n(this.editorContainer, this.footerOptions), this.footer.update(this.usertextarea), this._footerUpdate = () => this.footer.update(this.usertextarea), this.usertextarea.addEventListener("input", this._footerUpdate), this.usertextarea.addEventListener("click", this._footerUpdate), this.usertextarea.addEventListener("keyup", this._footerUpdate), this.usertextarea.addEventListener("focus", this._footerUpdate));
3877
+ (e || t || n || r) && (this.footer = new er(this.editorContainer, this.footerOptions, (e) => this.label(e)), this.footer.update(this.usertextarea), this._footerUpdate = () => this.footer.update(this.usertextarea), this.usertextarea.addEventListener("input", this._footerUpdate), this.usertextarea.addEventListener("click", this._footerUpdate), this.usertextarea.addEventListener("keyup", this._footerUpdate), this.usertextarea.addEventListener("focus", this._footerUpdate));
3931
3878
  }
3932
3879
  addToolbar() {
3933
- this.toolbarInstance = new Zn(this, this.options.toolbar || [
3880
+ this.toolbarInstance = new Qn(this, this.options.toolbar || [
3934
3881
  "undo",
3935
3882
  "redo",
3936
3883
  "heading",
@@ -3970,14 +3917,11 @@ var Tr = class {
3970
3917
  if (e === this._lastRaw) return;
3971
3918
  this._lastRaw = e;
3972
3919
  let t = this._highlight(e).split("\n"), n = this._lastLines;
3973
- if (!n || n.length !== t.length) {
3974
- this.displayLayer.innerHTML = "", this._lineNodes = t.map((e, n) => {
3975
- let r = document.createElement("span");
3976
- return r.innerHTML = e + (n < t.length - 1 ? "\n" : ""), this.displayLayer.appendChild(r), r;
3977
- }), this._lastLines = t.slice();
3978
- return;
3979
- }
3980
- for (let e = 0; e < t.length; e++) t[e] !== n[e] && (this._lineNodes[e].innerHTML = t[e] + (e < t.length - 1 ? "\n" : ""), n[e] = t[e]);
3920
+ if (!n || n.length !== t.length) this.displayLayer.innerHTML = "", this._lineNodes = t.map((e, n) => {
3921
+ let r = document.createElement("span");
3922
+ return r.innerHTML = e + (n < t.length - 1 ? "\n" : ""), this.displayLayer.appendChild(r), r;
3923
+ }), this._lastLines = t.slice();
3924
+ else for (let e = 0; e < t.length; e++) t[e] !== n[e] && (this._lineNodes[e].innerHTML = t[e] + (e < t.length - 1 ? "\n" : ""), n[e] = t[e]);
3981
3925
  }
3982
3926
  _autoGrow() {
3983
3927
  if (this.editorContainer.classList.contains("is-fullscreen")) return;
@@ -4023,8 +3967,8 @@ var Tr = class {
4023
3967
  ].forEach((e) => this.usertextarea.classList.remove(e)), this._addedAriaLabel && this.usertextarea.removeAttribute("aria-label"), this.usertextarea.style.height = "", e.insertBefore(this.usertextarea, this.editorContainer), this.editorContainer.remove());
4024
3968
  }
4025
3969
  };
4026
- Ar.Tool = Q, Ar.modal = Nn;
3970
+ Mr.Tool = $, Mr.modal = Mn;
4027
3971
  //#endregion
4028
- export { Ar as default };
3972
+ export { Mr as default };
4029
3973
 
4030
3974
  //# sourceMappingURL=markdown-text-editor.es.js.map