slate-react
Version:
Tools for building completely customizable richtext editors with React.
1 lines • 184 kB
JavaScript
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("react"),require("slate")):"function"==typeof define&&define.amd?define(["exports","react","slate"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).SlateReact={},e.React,e.Slate)}(this,(function(e,t,n){"use strict";function r(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var a=r(t),o="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:{};function i(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}function l(e,t){return e(t={exports:{}},t.exports),t.exports}var u=i(l((function(e){e.exports=function(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e},e.exports.default=e.exports,e.exports.__esModule=!0}))),c=l((function(e){e.exports=function(e){if(Array.isArray(e))return e},e.exports.default=e.exports,e.exports.__esModule=!0}));i(c);var s=l((function(e){e.exports=function(e,t){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e)){var n=[],r=!0,a=!1,o=void 0;try{for(var i,l=e[Symbol.iterator]();!(r=(i=l.next()).done)&&(n.push(i.value),!t||n.length!==t);r=!0);}catch(e){a=!0,o=e}finally{try{r||null==l.return||l.return()}finally{if(a)throw o}}return n}},e.exports.default=e.exports,e.exports.__esModule=!0}));i(s);var f=l((function(e){e.exports=function(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r},e.exports.default=e.exports,e.exports.__esModule=!0}));i(f);var d=l((function(e){e.exports=function(e,t){if(e){if("string"==typeof e)return f(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?f(e,t):void 0}},e.exports.default=e.exports,e.exports.__esModule=!0}));i(d);var p=l((function(e){e.exports=function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")},e.exports.default=e.exports,e.exports.__esModule=!0}));i(p);var h=i(l((function(e){e.exports=function(e,t){return c(e)||s(e,t)||d(e,t)||p()},e.exports.default=e.exports,e.exports.__esModule=!0}))),m=l((function(e){e.exports=function(e,t){if(null==e)return{};var n,r,a={},o=Object.keys(e);for(r=0;r<o.length;r++)n=o[r],t.indexOf(n)>=0||(a[n]=e[n]);return a},e.exports.default=e.exports,e.exports.__esModule=!0}));i(m);var v=i(l((function(e){e.exports=function(e,t){if(null==e)return{};var n,r,a=m(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r<o.length;r++)n=o[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(a[n]=e[n])}return a},e.exports.default=e.exports,e.exports.__esModule=!0}))),g=function(e){if(e=String(e||""),w.test(e))return"rtl";if(E.test(e))return"ltr";return"neutral"},y="֑-߿יִ-﷽ﹰ-ﻼ",b="A-Za-zÀ-ÖØ-öø-ʸ̀-ࠀ-Ⰰ-︀--",w=new RegExp("^[^"+b+"]*["+y+"]"),E=new RegExp("^[^"+y+"]*["+b+"]");var k=function(e){var t=typeof e;return null!=e&&("object"==t||"function"==t)},x="object"==typeof o&&o&&o.Object===Object&&o,T="object"==typeof self&&self&&self.Object===Object&&self,S=x||T||Function("return this")(),C=function(){return S.Date.now()},P=/\s/;var _=function(e){for(var t=e.length;t--&&P.test(e.charAt(t)););return t},O=/^\s+/;var N=function(e){return e?e.slice(0,_(e)+1).replace(O,""):e},D=S.Symbol,M=Object.prototype,R=M.hasOwnProperty,F=M.toString,L=D?D.toStringTag:void 0;var I=function(e){var t=R.call(e,L),n=e[L];try{e[L]=void 0;var r=!0}catch(e){}var a=F.call(e);return r&&(t?e[L]=n:delete e[L]),a},z=Object.prototype.toString;var A=function(e){return z.call(e)},B=D?D.toStringTag:void 0;var j=function(e){return null==e?void 0===e?"[object Undefined]":"[object Null]":B&&B in Object(e)?I(e):A(e)};var W=function(e){return null!=e&&"object"==typeof e};var U=function(e){return"symbol"==typeof e||W(e)&&"[object Symbol]"==j(e)},V=/^[-+]0x[0-9a-f]+$/i,H=/^0b[01]+$/i,Q=/^0o[0-7]+$/i,K=parseInt;var q=function(e){if("number"==typeof e)return e;if(U(e))return NaN;if(k(e)){var t="function"==typeof e.valueOf?e.valueOf():e;e=k(t)?t+"":t}if("string"!=typeof e)return 0===e?e:+e;e=N(e);var n=H.test(e);return n||Q.test(e)?K(e.slice(2),n?2:8):V.test(e)?NaN:+e},$=Math.max,Y=Math.min;var X=function(e,t,n){var r,a,o,i,l,u,c=0,s=!1,f=!1,d=!0;if("function"!=typeof e)throw new TypeError("Expected a function");function p(t){var n=r,o=a;return r=a=void 0,c=t,i=e.apply(o,n)}function h(e){return c=e,l=setTimeout(v,t),s?p(e):i}function m(e){var n=e-u;return void 0===u||n>=t||n<0||f&&e-c>=o}function v(){var e=C();if(m(e))return g(e);l=setTimeout(v,function(e){var n=t-(e-u);return f?Y(n,o-(e-c)):n}(e))}function g(e){return l=void 0,d&&r?p(e):(r=a=void 0,i)}function y(){var e=C(),n=m(e);if(r=arguments,a=this,u=e,n){if(void 0===l)return h(u);if(f)return clearTimeout(l),l=setTimeout(v,t),p(u)}return void 0===l&&(l=setTimeout(v,t)),i}return t=q(t)||0,k(n)&&(s=!!n.leading,o=(f="maxWait"in n)?$(q(n.maxWait)||0,t):o,d="trailing"in n?!!n.trailing:d),y.cancel=function(){void 0!==l&&clearTimeout(l),c=0,r=u=a=l=void 0},y.flush=function(){return void 0===l?i:g(C())},y};var G=function(e,t,n){var r=!0,a=!0;if("function"!=typeof e)throw new TypeError("Expected a function");return k(n)&&(r="leading"in n?!!n.leading:r,a="trailing"in n?!!n.trailing:a),X(e,t,{leading:r,maxWait:t,trailing:a})};function J(e){return null!=e&&"object"==typeof e&&1===e.nodeType}function Z(e,t){return(!t||"hidden"!==e)&&("visible"!==e&&"clip"!==e)}function ee(e,t){if(e.clientHeight<e.scrollHeight||e.clientWidth<e.scrollWidth){var n=getComputedStyle(e,null);return Z(n.overflowY,t)||Z(n.overflowX,t)||function(e){var t=function(e){if(!e.ownerDocument||!e.ownerDocument.defaultView)return null;try{return e.ownerDocument.defaultView.frameElement}catch(e){return null}}(e);return!!t&&(t.clientHeight<e.scrollHeight||t.clientWidth<e.scrollWidth)}(e)}return!1}function te(e,t,n,r,a,o,i,l){return o<e&&i>t||o>e&&i<t?0:o<=e&&l<=n||i>=t&&l>=n?o-e-r:i>t&&l<n||o<e&&l>n?i-t+a:0}var ne=function(e,t){var n=t.scrollMode,r=t.block,a=t.inline,o=t.boundary,i=t.skipOverflowHiddenElements,l="function"==typeof o?o:function(e){return e!==o};if(!J(e))throw new TypeError("Invalid target");for(var u=document.scrollingElement||document.documentElement,c=[],s=e;J(s)&&l(s);){if((s=s.parentNode)===u){c.push(s);break}s===document.body&&ee(s)&&!ee(document.documentElement)||ee(s,i)&&c.push(s)}for(var f=window.visualViewport?visualViewport.width:innerWidth,d=window.visualViewport?visualViewport.height:innerHeight,p=window.scrollX||pageXOffset,h=window.scrollY||pageYOffset,m=e.getBoundingClientRect(),v=m.height,g=m.width,y=m.top,b=m.right,w=m.bottom,E=m.left,k="start"===r||"nearest"===r?y:"end"===r?w:y+v/2,x="center"===a?E+g/2:"end"===a?b:E,T=[],S=0;S<c.length;S++){var C=c[S],P=C.getBoundingClientRect(),_=P.height,O=P.width,N=P.top,D=P.right,M=P.bottom,R=P.left;if("if-needed"===n&&y>=0&&E>=0&&w<=d&&b<=f&&y>=N&&w<=M&&E>=R&&b<=D)return T;var F=getComputedStyle(C),L=parseInt(F.borderLeftWidth,10),I=parseInt(F.borderTopWidth,10),z=parseInt(F.borderRightWidth,10),A=parseInt(F.borderBottomWidth,10),B=0,j=0,W="offsetWidth"in C?C.offsetWidth-C.clientWidth-L-z:0,U="offsetHeight"in C?C.offsetHeight-C.clientHeight-I-A:0;if(u===C)B="start"===r?k:"end"===r?k-d:"nearest"===r?te(h,h+d,d,I,A,h+k,h+k+v,v):k-d/2,j="start"===a?x:"center"===a?x-f/2:"end"===a?x-f:te(p,p+f,f,L,z,p+x,p+x+g,g),B=Math.max(0,B+h),j=Math.max(0,j+p);else{B="start"===r?k-N-I:"end"===r?k-M+A+U:"nearest"===r?te(N,M,_,I,A+U,k,k+v,v):k-(N+_/2)+U/2,j="start"===a?x-R-L:"center"===a?x-(R+O/2)+W/2:"end"===a?x-D+z+W:te(R,D,O,L,z+W,x,x+g,g);var V=C.scrollLeft,H=C.scrollTop;k+=H-(B=Math.max(0,Math.min(H+B,C.scrollHeight-_+U))),x+=V-(j=Math.max(0,Math.min(V+j,C.scrollWidth-O+W)))}T.push({el:C,top:B,left:j})}return T};function re(e){return e===Object(e)&&0!==Object.keys(e).length}function ae(e,t){var n=!e.ownerDocument.documentElement.contains(e);if(re(t)&&"function"==typeof t.behavior)return t.behavior(n?[]:ne(e,t));if(!n){var r=function(e){return!1===e?{block:"end",inline:"nearest"}:re(e)?e:{block:"start",inline:"nearest"}}(t);return function(e,t){void 0===t&&(t="auto");var n="scrollBehavior"in document.body.style;e.forEach((function(e){var r=e.el,a=e.top,o=e.left;r.scroll&&n?r.scroll({top:a,left:o,behavior:t}):(r.scrollTop=a,r.scrollLeft=o)}))}(ne(e,r),r.behavior)}}var oe=function(e){var t=e.isLast,r=e.leaf,o=e.parent,i=e.text,l=Qe(),u=Dt.findPath(l,i),c=n.Path.parent(u);return l.isVoid(o)?a.default.createElement(le,{length:n.Node.string(o).length}):""!==r.text||o.children[o.children.length-1]!==i||l.isInline(o)||""!==n.Editor.string(l,c)?""===r.text?a.default.createElement(le,null):t&&"\n"===r.text.slice(-1)?a.default.createElement(ie,{isTrailing:!0,text:r.text}):a.default.createElement(ie,{text:r.text}):a.default.createElement(le,{isLineBreak:!0})},ie=function(e){var t=e.text,n=e.isTrailing,r=void 0!==n&&n;return a.default.createElement("span",{"data-slate-string":!0},t,r?"\n":null)},le=function(e){var t=e.length,n=void 0===t?0:t,r=e.isLineBreak,o=void 0!==r&&r;return a.default.createElement("span",{"data-slate-zero-width":o?"n":"z","data-slate-length":n},"\ufeff",o?a.default.createElement("br",null):null)},ue=new WeakMap,ce=new WeakMap,se=new WeakMap,fe=new WeakMap,de=new WeakMap,pe=new WeakMap,he=new WeakMap,me=new WeakMap,ve=new WeakMap,ge=new WeakMap,ye=new WeakMap,be=new WeakMap,we=Symbol("placeholder"),Ee=0,ke=function(e){var n=e.leaf,r=e.isLast,o=e.text,i=e.parent,l=e.renderPlaceholder,u=e.renderLeaf,c=void 0===u?function(e){return a.default.createElement(Te,Object.assign({},e))}:u,s=t.useRef(null);t.useEffect((function(){var e=null==s?void 0:s.current,t=document.querySelector('[data-slate-editor="true"]');if(e&&t)return t.style.minHeight="".concat(e.clientHeight,"px"),function(){t.style.minHeight="auto"}}),[s,n]);var f=a.default.createElement(oe,{key:Ee++,isLast:r,leaf:n,parent:i,text:o});if(n[we]){var d={children:n.placeholder,attributes:{"data-slate-placeholder":!0,style:{position:"absolute",pointerEvents:"none",width:"100%",maxWidth:"100%",display:"block",opacity:"0.333",userSelect:"none",textDecoration:"none"},contentEditable:!1,ref:s}};f=a.default.createElement(a.default.Fragment,null,l(d),f)}return c({attributes:{"data-slate-leaf":!0},children:f,leaf:n,text:o})},xe=a.default.memo(ke,(function(e,t){return t.parent===e.parent&&t.isLast===e.isLast&&t.renderLeaf===e.renderLeaf&&t.renderPlaceholder===e.renderPlaceholder&&t.text===e.text&&t.leaf.text===e.leaf.text&&n.Text.matches(t.leaf,e.leaf)&&t.leaf[we]===e.leaf[we]})),Te=function(e){var t=e.attributes,n=e.children;return a.default.createElement("span",Object.assign({},t),n)},Se=("undefined"!=typeof navigator&&"undefined"!=typeof window&&/iPad|iPhone|iPod/.test(navigator.userAgent)&&window.MSStream,"undefined"!=typeof navigator&&/Mac OS X/.test(navigator.userAgent)),Ce="undefined"!=typeof navigator&&/Android/.test(navigator.userAgent),Pe="undefined"!=typeof navigator&&/^(?!.*Seamonkey)(?=.*Firefox).*/i.test(navigator.userAgent),_e="undefined"!=typeof navigator&&/Version\/[\d\.]+.*Safari/.test(navigator.userAgent),Oe="undefined"!=typeof navigator&&/Edge?\/(?:[0-6][0-9]|[0-7][0-8])/i.test(navigator.userAgent),Ne="undefined"!=typeof navigator&&/Chrome/i.test(navigator.userAgent),De="undefined"!=typeof navigator&&/Chrome?\/(?:[0-7][0-5]|[0-6][0-9])/i.test(navigator.userAgent),Me="undefined"!=typeof navigator&&/^(?!.*Seamonkey)(?=.*Firefox\/(?:[0-7][0-9]|[0-8][0-6])).*/i.test(navigator.userAgent),Re=!("undefined"==typeof window||void 0===window.document||void 0===window.document.createElement),Fe=!De&&!Oe&&"undefined"!=typeof globalThis&&globalThis.InputEvent&&"function"==typeof globalThis.InputEvent.prototype.getTargetRanges,Le=Re?t.useLayoutEffect:t.useEffect,Ie=function(e,t){return Object.keys(e).length===Object.keys(t).length&&Object.keys(e).every((function(n){return t.hasOwnProperty(n)&&e[n]===t[n]}))},ze=function(e,t){if(e.length!==t.length)return!1;for(var r=0;r<e.length;r++){var a=e[r],o=t[r],i=(a.anchor,a.focus,v(a,["anchor","focus"])),l=(o.anchor,o.focus,v(o,["anchor","focus"]));if(!n.Range.equals(a,o)||a[we]!==o[we]||!Ie(i,l))return!1}return!0},Ae=function(e){for(var r=e.decorations,o=e.isLast,i=e.parent,l=e.renderPlaceholder,u=e.renderLeaf,c=e.text,s=Qe(),f=t.useRef(null),d=n.Text.decorations(c,r),p=Dt.findKey(s,c),h=[],m=0;m<d.length;m++){var v=d[m];h.push(a.default.createElement(xe,{isLast:o&&m===d.length-1,key:"".concat(p.id,"-").concat(m),renderPlaceholder:l,leaf:v,text:c,parent:i,renderLeaf:u}))}return Le((function(){f.current?(pe.set(p,f.current),he.set(c,f.current),de.set(f.current,c)):(pe.delete(p),he.delete(c))})),a.default.createElement("span",{"data-slate-node":"text",ref:f},h)},Be=a.default.memo(Ae,(function(e,t){return t.parent===e.parent&&t.isLast===e.isLast&&t.renderLeaf===e.renderLeaf&&t.text===e.text&&ze(t.decorations,e.decorations)})),je=t.createContext(!1),We=function(e){var r=e.decorations,o=e.element,i=e.renderElement,l=void 0===i?function(e){return a.default.createElement(Ve,Object.assign({},e))}:i,u=e.renderPlaceholder,c=e.renderLeaf,s=e.selection,f=t.useRef(null),d=Qe(),p=at(),m=d.isInline(o),v=Dt.findKey(d,o),y=Ye({decorations:r,node:o,renderElement:l,renderPlaceholder:u,renderLeaf:c,selection:s}),b={"data-slate-node":"element",ref:f};if(m&&(b["data-slate-inline"]=!0),!m&&n.Editor.hasInlines(d,o)){var w=n.Node.string(o),E=g(w);"rtl"===E&&(b.dir=E)}if(n.Editor.isVoid(d,o)){b["data-slate-void"]=!0,!p&&m&&(b.contentEditable=!1);var k=m?"span":"div",x=n.Node.texts(o),T=h(x,1),S=h(T[0],1)[0];y=p?null:a.default.createElement(k,{"data-slate-spacer":!0,style:{height:"0",color:"transparent",outline:"none",position:"absolute"}},a.default.createElement(Be,{renderPlaceholder:u,decorations:[],isLast:!1,parent:o,text:S})),ue.set(S,0),ce.set(S,o)}return Le((function(){f.current?(pe.set(v,f.current),he.set(o,f.current),de.set(f.current,o)):(pe.delete(v),he.delete(o))})),a.default.createElement(je.Provider,{value:!!s},l({attributes:b,children:y,element:o}))},Ue=a.default.memo(We,(function(e,t){return e.element===t.element&&e.renderElement===t.renderElement&&e.renderLeaf===t.renderLeaf&&ze(e.decorations,t.decorations)&&(e.selection===t.selection||!!e.selection&&!!t.selection&&n.Range.equals(e.selection,t.selection))})),Ve=function(e){var t=e.attributes,n=e.children,r=e.element,o=Qe().isInline(r)?"span":"div";return a.default.createElement(o,Object.assign({},t,{style:{position:"relative"}}),n)},He=t.createContext(null),Qe=function(){var e=t.useContext(He);if(!e)throw new Error("The `useSlateStatic` hook must be used inside the <Slate> component's context.");return e},Ke=t.createContext((function(){return[]}));function qe(e,t){var n;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return $e(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return $e(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,a=function(){};return{s:a,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,i=!0,l=!1;return{s:function(){n=e[Symbol.iterator]()},n:function(){var e=n.next();return i=e.done,e},e:function(e){l=!0,o=e},f:function(){try{i||null==n.return||n.return()}finally{if(l)throw o}}}}function $e(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var Ye=function(e){for(var r=e.decorations,o=e.node,i=e.renderElement,l=e.renderPlaceholder,u=e.renderLeaf,c=e.selection,s=t.useContext(Ke),f=Qe(),d=Dt.findPath(f,o),p=[],h=n.Element.isElement(o)&&!f.isInline(o)&&n.Editor.hasInlines(f,o),m=0;m<o.children.length;m++){var v,g=d.concat(m),y=o.children[m],b=Dt.findKey(f,y),w=n.Editor.range(f,g),E=c&&n.Range.intersection(w,c),k=s([y,g]),x=qe(r);try{for(x.s();!(v=x.n()).done;){var T=v.value,S=n.Range.intersection(T,w);S&&k.push(S)}}catch(e){x.e(e)}finally{x.f()}n.Element.isElement(y)?p.push(a.default.createElement(Ue,{decorations:k,element:y,key:b.id,renderElement:i,renderPlaceholder:l,renderLeaf:u,selection:E})):p.push(a.default.createElement(Be,{decorations:k,key:b.id,isLast:h&&m===o.children.length-1,parent:o,renderPlaceholder:l,renderLeaf:u,text:y})),ue.set(y,m),ce.set(y,o)}return p},Xe=l((function(e,t){Object.defineProperty(t,"__esModule",{value:!0});for(var n="undefined"!=typeof window&&/Mac|iPod|iPhone|iPad/.test(window.navigator.platform),r={alt:"altKey",control:"ctrlKey",meta:"metaKey",shift:"shiftKey"},a={add:"+",break:"pause",cmd:"meta",command:"meta",ctl:"control",ctrl:"control",del:"delete",down:"arrowdown",esc:"escape",ins:"insert",left:"arrowleft",mod:n?"meta":"control",opt:"alt",option:"alt",return:"enter",right:"arrowright",space:" ",spacebar:" ",up:"arrowup",win:"meta",windows:"meta"},o={backspace:8,tab:9,enter:13,shift:16,control:17,alt:18,pause:19,capslock:20,escape:27," ":32,pageup:33,pagedown:34,end:35,home:36,arrowleft:37,arrowup:38,arrowright:39,arrowdown:40,insert:45,delete:46,meta:91,numlock:144,scrolllock:145,";":186,"=":187,",":188,"-":189,".":190,"/":191,"`":192,"[":219,"\\":220,"]":221,"'":222},i=1;i<20;i++)o["f"+i]=111+i;function l(e,t,n){t&&!("byKey"in t)&&(n=t,t=null),Array.isArray(e)||(e=[e]);var r=e.map((function(e){return u(e,t)})),a=function(e){return r.some((function(t){return c(t,e)}))};return null==n?a:a(n)}function u(e,t){var n=t&&t.byKey,a={},o=(e=e.replace("++","+add")).split("+"),i=o.length;for(var l in r)a[r[l]]=!1;var u=!0,c=!1,d=void 0;try{for(var p,h=o[Symbol.iterator]();!(u=(p=h.next()).done);u=!0){var m=p.value,v=m.endsWith("?")&&m.length>1;v&&(m=m.slice(0,-1));var g=f(m),y=r[g];1!==i&&y||(n?a.key=g:a.which=s(m)),y&&(a[y]=!v||null)}}catch(e){c=!0,d=e}finally{try{!u&&h.return&&h.return()}finally{if(c)throw d}}return a}function c(e,t){for(var n in e){var r=e[n],a=void 0;if(null!=r&&((null!=(a="key"===n&&null!=t.key?t.key.toLowerCase():"which"===n?91===r&&93===t.which?91:t.which:t[n])||!1!==r)&&a!==r))return!1}return!0}function s(e){return e=f(e),o[e]||e.toUpperCase().charCodeAt(0)}function f(e){return e=e.toLowerCase(),e=a[e]||e}t.default=l,t.isHotkey=l,t.isCodeHotkey=function(e,t){return l(e,t)},t.isKeyHotkey=function(e,t){return l(e,{byKey:!0},t)},t.parseHotkey=u,t.compareHotkey=c,t.toKeyCode=s,t.toKeyName=f}));i(Xe);Xe.isHotkey,Xe.isCodeHotkey;var Ge=Xe.isKeyHotkey,Je=(Xe.parseHotkey,Xe.compareHotkey,Xe.toKeyCode,Xe.toKeyName,{bold:"mod+b",compose:["down","left","right","up","backspace","enter"],moveBackward:"left",moveForward:"right",moveWordBackward:"ctrl+left",moveWordForward:"ctrl+right",deleteBackward:"shift?+backspace",deleteForward:"shift?+delete",extendBackward:"shift+left",extendForward:"shift+right",italic:"mod+i",splitBlock:"shift?+enter",undo:"mod+z"}),Ze={moveLineBackward:"opt+up",moveLineForward:"opt+down",moveWordBackward:"opt+left",moveWordForward:"opt+right",deleteBackward:["ctrl+backspace","ctrl+h"],deleteForward:["ctrl+delete","ctrl+d"],deleteLineBackward:"cmd+shift?+backspace",deleteLineForward:["cmd+shift?+delete","ctrl+k"],deleteWordBackward:"opt+shift?+backspace",deleteWordForward:"opt+shift?+delete",extendLineBackward:"opt+shift+up",extendLineForward:"opt+shift+down",redo:"cmd+shift+z",transposeCharacter:"ctrl+t"},et={deleteWordBackward:"ctrl+shift?+backspace",deleteWordForward:"ctrl+shift?+delete",redo:["ctrl+y","ctrl+shift+z"]},tt=function(e){var t=Je[e],n=Ze[e],r=et[e],a=t&&Ge(t),o=n&&Ge(n),i=r&&Ge(r);return function(e){return!(!a||!a(e))||(!!(Se&&o&&o(e))||!(Se||!i||!i(e)))}},nt={isBold:tt("bold"),isCompose:tt("compose"),isMoveBackward:tt("moveBackward"),isMoveForward:tt("moveForward"),isDeleteBackward:tt("deleteBackward"),isDeleteForward:tt("deleteForward"),isDeleteLineBackward:tt("deleteLineBackward"),isDeleteLineForward:tt("deleteLineForward"),isDeleteWordBackward:tt("deleteWordBackward"),isDeleteWordForward:tt("deleteWordForward"),isExtendBackward:tt("extendBackward"),isExtendForward:tt("extendForward"),isExtendLineBackward:tt("extendLineBackward"),isExtendLineForward:tt("extendLineForward"),isItalic:tt("italic"),isMoveLineBackward:tt("moveLineBackward"),isMoveLineForward:tt("moveLineForward"),isMoveWordBackward:tt("moveWordBackward"),isMoveWordForward:tt("moveWordForward"),isRedo:tt("redo"),isSplitBlock:tt("splitBlock"),isTransposeCharacter:tt("transposeCharacter"),isUndo:tt("undo")},rt=t.createContext(!1),at=function(){return t.useContext(rt)},ot=t.createContext(null),it=function(){var e=t.useContext(ot);if(!e)throw new Error("The `useSlate` hook must be used inside the <SlateProvider> component's context.");return h(e,1)[0]},lt=function(e){return e&&e.ownerDocument&&e.ownerDocument.defaultView||null},ut=function(e){return ct(e)&&1===e.nodeType},ct=function(e){var t=lt(e);return!!t&&e instanceof t.Node},st=function(e){var t=e&&e.anchorNode&<(e.anchorNode);return!!t&&e instanceof t.Selection},ft=function(e){return ct(e)&&3===e.nodeType},dt=function(e,t,n){for(var r,a=e.childNodes,o=a[t],i=t,l=!1,u=!1;(ct(r=o)&&8===r.nodeType||ut(o)&&0===o.childNodes.length||ut(o)&&"false"===o.getAttribute("contenteditable"))&&(!l||!u);)i>=a.length?(l=!0,i=t-1,n="backward"):i<0?(u=!0,i=t+1,n="forward"):(o=a[i],t=i,i+="forward"===n?1:-1);return[o,t]},pt=function(e,t,n){var r=dt(e,t,n);return h(r,1)[0]};function ht(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function mt(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?ht(Object(n),!0).forEach((function(t){u(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):ht(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var vt=function(e){var r=e.autoFocus,o=e.decorate,i=void 0===o?yt:o,l=e.onDOMBeforeInput,c=e.placeholder,s=e.readOnly,f=void 0!==s&&s,d=e.renderElement,p=e.renderLeaf,m=e.renderPlaceholder,y=void 0===m?function(e){return a.default.createElement(gt,Object.assign({},e))}:m,b=e.style,w=void 0===b?{}:b,E=e.as,k=void 0===E?"div":E,x=v(e,["autoFocus","decorate","onDOMBeforeInput","placeholder","readOnly","renderElement","renderLeaf","renderPlaceholder","style","as"]),T=it(),S=t.useRef(null);ve.set(T,f);var C=t.useMemo((function(){return{isComposing:!1,isDraggingInternally:!1,isUpdatingSelection:!1,latestElement:null}}),[]);Le((function(){var e;S.current&&(e=lt(S.current))?(se.set(T,e),fe.set(T,S.current),he.set(T,S.current),de.set(S.current,T)):he.delete(T);var t=T.selection,r=Dt.findDocumentOrShadowRoot(T).getSelection();if(!C.isComposing&&r&&Dt.isFocused(T)){var a="None"!==r.type;if(t||a){var o=fe.get(T),i=!1;if(o.contains(r.anchorNode)&&o.contains(r.focusNode)&&(i=!0),a&&i&&t){var l=Dt.toSlateRange(T,r,{exactMatch:!0});if(l&&n.Range.equals(l,t))return}if(!t||Dt.hasRange(T,t)){var u=Dt.toDOMNode(T,T);C.isUpdatingSelection=!0;var c=t&&Dt.toDOMRange(T,t);if(c){n.Range.isBackward(t)?r.setBaseAndExtent(c.endContainer,c.endOffset,c.startContainer,c.startOffset):r.setBaseAndExtent(c.startContainer,c.startOffset,c.endContainer,c.endOffset);var s=c.startContainer.parentElement;s.getBoundingClientRect=c.getBoundingClientRect.bind(c),ae(s,{scrollMode:"if-needed",boundary:u}),delete s.getBoundingClientRect}else r.removeAllRanges();setTimeout((function(){c&&Pe&&u.focus(),C.isUpdatingSelection=!1}))}else T.selection=Dt.toSlateRange(T,r,{exactMatch:!1})}}})),t.useEffect((function(){S.current&&r&&S.current.focus()}),[r]);var P=t.useCallback((function(e){if(!f&&wt(T,e.target)&&!xt(e,l)){var t=T.selection,r=e.inputType,a=e.dataTransfer||e.data||void 0;if("insertCompositionText"===r||"deleteCompositionText"===r)return;if(e.preventDefault(),!r.startsWith("delete")||r.startsWith("deleteBy")){var o=e.getTargetRanges(),i=h(o,1)[0];if(i){var u=Dt.toSlateRange(T,i,{exactMatch:!1});t&&n.Range.equals(t,u)||n.Transforms.select(T,u)}}if(t&&n.Range.isExpanded(t)&&r.startsWith("delete")){var c=r.endsWith("Backward")?"backward":"forward";return void n.Editor.deleteFragment(T,{direction:c})}switch(r){case"deleteByComposition":case"deleteByCut":case"deleteByDrag":n.Editor.deleteFragment(T);break;case"deleteContent":case"deleteContentForward":n.Editor.deleteForward(T);break;case"deleteContentBackward":n.Editor.deleteBackward(T);break;case"deleteEntireSoftLine":n.Editor.deleteBackward(T,{unit:"line"}),n.Editor.deleteForward(T,{unit:"line"});break;case"deleteHardLineBackward":n.Editor.deleteBackward(T,{unit:"block"});break;case"deleteSoftLineBackward":n.Editor.deleteBackward(T,{unit:"line"});break;case"deleteHardLineForward":n.Editor.deleteForward(T,{unit:"block"});break;case"deleteSoftLineForward":n.Editor.deleteForward(T,{unit:"line"});break;case"deleteWordBackward":n.Editor.deleteBackward(T,{unit:"word"});break;case"deleteWordForward":n.Editor.deleteForward(T,{unit:"word"});break;case"insertLineBreak":case"insertParagraph":n.Editor.insertBreak(T);break;case"insertFromComposition":case"insertFromDrop":case"insertFromPaste":case"insertFromYank":case"insertReplacementText":case"insertText":"insertFromComposition"===r&&(C.isComposing=!1),a instanceof Dt.getWindow(T).DataTransfer?Dt.insertData(T,a):"string"==typeof a&&n.Editor.insertText(T,a)}}}),[f,l]);Le((function(){return S.current&&Fe&&S.current.addEventListener("beforeinput",P),function(){S.current&&Fe&&S.current.removeEventListener("beforeinput",P)}}),[P]);var _=t.useCallback(G((function(){if(!(f||C.isComposing||C.isUpdatingSelection||C.isDraggingInternally)){var e=Dt.findDocumentOrShadowRoot(T),t=e.activeElement,r=Dt.toDOMNode(T,T),a=e.getSelection();if(t===r?(C.latestElement=t,ge.set(T,!0)):ge.delete(T),!a)return n.Transforms.deselect(T);var o=a.anchorNode,i=a.focusNode,l=wt(T,o)||Et(T,o),u=wt(T,i)||Et(T,i);if(l&&u){var c=Dt.toSlateRange(T,a,{exactMatch:!1});n.Transforms.select(T,c)}else n.Transforms.deselect(T)}}),100),[f]);Le((function(){var e=Dt.getWindow(T);return e.document.addEventListener("selectionchange",_),function(){e.document.removeEventListener("selectionchange",_)}}),[_]);var O=i([T,[]]);if(c&&1===T.children.length&&1===Array.from(n.Node.texts(T)).length&&""===n.Node.string(T)){var N,D=n.Editor.start(T,[]);O.push((u(N={},we,!0),u(N,"placeholder",c),u(N,"anchor",D),u(N,"focus",D),N))}return a.default.createElement(rt.Provider,{value:f},a.default.createElement(Ke.Provider,{value:i},a.default.createElement(k,Object.assign({"data-gramm":!1,role:f?void 0:"textbox"},x,{spellCheck:!!Fe&&x.spellCheck,autoCorrect:Fe?x.autoCorrect:"false",autoCapitalize:Fe?x.autoCapitalize:"false","data-slate-editor":!0,"data-slate-node":"value",contentEditable:!f||void 0,suppressContentEditableWarning:!0,ref:S,style:mt({position:"relative",outline:"none",whiteSpace:"pre-wrap",wordWrap:"break-word"},w),onBeforeInput:t.useCallback((function(e){if(!Fe&&!f&&!kt(e,x.onBeforeInput)&&wt(T,e.target)&&(e.preventDefault(),!C.isComposing)){var t=e.data;n.Editor.insertText(T,t)}}),[f]),onBlur:t.useCallback((function(e){if(!f&&!C.isUpdatingSelection&&wt(T,e.target)&&!kt(e,x.onBlur)){Dt.getWindow(T);var t=Dt.findDocumentOrShadowRoot(T);if(C.latestElement!==t.activeElement){var r=e.relatedTarget;if(!(r===Dt.toDOMNode(T,T)||ut(r)&&r.hasAttribute("data-slate-spacer"))){if(null!=r&&ct(r)&&Dt.hasDOMNode(T,r)){var a=Dt.toSlateNode(T,r);if(n.Element.isElement(a)&&!T.isVoid(a))return}ge.delete(T)}}}}),[f,x.onBlur]),onClick:t.useCallback((function(e){if(!f&&bt(T,e.target)&&!kt(e,x.onClick)&&ct(e.target)){var t=Dt.toSlateNode(T,e.target),r=Dt.findPath(T,t),a=n.Editor.start(T,r),o=n.Editor.end(T,r),i=n.Editor.void(T,{at:a}),l=n.Editor.void(T,{at:o});if(i&&l&&n.Path.equals(i[1],l[1])){var u=n.Editor.range(T,a);n.Transforms.select(T,u)}}}),[f,x.onClick]),onCompositionEnd:t.useCallback((function(e){wt(T,e.target)&&!kt(e,x.onCompositionEnd)&&(C.isComposing=!1,_e||Me||!e.data||n.Editor.insertText(T,e.data))}),[x.onCompositionEnd]),onCompositionUpdate:t.useCallback((function(e){wt(T,e.target)&&!kt(e,x.onCompositionUpdate)&&(C.isComposing=!0)}),[x.onCompositionUpdate]),onCompositionStart:t.useCallback((function(e){if(wt(T,e.target)&&!kt(e,x.onCompositionStart)){var t=T.selection;t&&n.Range.isExpanded(t)&&n.Editor.deleteFragment(T)}}),[x.onCompositionStart]),onCopy:t.useCallback((function(e){wt(T,e.target)&&!kt(e,x.onCopy)&&(e.preventDefault(),Dt.setFragmentData(T,e.clipboardData))}),[x.onCopy]),onCut:t.useCallback((function(e){if(!f&&wt(T,e.target)&&!kt(e,x.onCut)){e.preventDefault(),Dt.setFragmentData(T,e.clipboardData);var t=T.selection;if(t)if(n.Range.isExpanded(t))n.Editor.deleteFragment(T);else{var r=n.Node.parent(T,t.anchor.path);n.Editor.isVoid(T,r)&&n.Transforms.delete(T)}}}),[f,x.onCut]),onDragOver:t.useCallback((function(e){if(bt(T,e.target)&&!kt(e,x.onDragOver)){var t=Dt.toSlateNode(T,e.target);n.Editor.isVoid(T,t)&&e.preventDefault()}}),[x.onDragOver]),onDragStart:t.useCallback((function(e){if(bt(T,e.target)&&!kt(e,x.onDragStart)){var t=Dt.toSlateNode(T,e.target),r=Dt.findPath(T,t);if(n.Editor.isVoid(T,t)||n.Editor.void(T,{at:r,voids:!0})){var a=n.Editor.range(T,r);n.Transforms.select(T,a)}C.isDraggingInternally=!0,Dt.setFragmentData(T,e.dataTransfer)}}),[x.onDragStart]),onDrop:t.useCallback((function(e){if(!f&&bt(T,e.target)&&!kt(e,x.onDrop)){e.preventDefault();var t=T.selection,r=Dt.findEventRange(T,e),a=e.dataTransfer;n.Transforms.select(T,r),C.isDraggingInternally&&(t&&n.Transforms.delete(T,{at:t}),C.isDraggingInternally=!1),Dt.insertData(T,a),Dt.isFocused(T)||Dt.focus(T)}}),[f,x.onDrop]),onDragEnd:t.useCallback((function(e){!f&&C.isDraggingInternally&&bt(T,e.target)&&!kt(e,x.onDragEnd)&&(C.isDraggingInternally=!1)}),[f,x.onDragEnd]),onFocus:t.useCallback((function(e){if(!f&&!C.isUpdatingSelection&&wt(T,e.target)&&!kt(e,x.onFocus)){var t=Dt.toDOMNode(T,T),n=Dt.findDocumentOrShadowRoot(T);if(C.latestElement=n.activeElement,Pe&&e.target!==t)return void t.focus();ge.set(T,!0)}}),[f,x.onFocus]),onKeyDown:t.useCallback((function(e){if(!f&&wt(T,e.target)&&!kt(e,x.onKeyDown)){var t=e.nativeEvent,r=T.selection,a=T.children[null!==r?r.focus.path[0]:0],o="rtl"===g(n.Node.string(a));if(nt.isRedo(t)){e.preventDefault();var i=T;return void("function"==typeof i.redo&&i.redo())}if(nt.isUndo(t)){e.preventDefault();var l=T;return void("function"==typeof l.undo&&l.undo())}if(nt.isMoveLineBackward(t))return e.preventDefault(),void n.Transforms.move(T,{unit:"line",reverse:!0});if(nt.isMoveLineForward(t))return e.preventDefault(),void n.Transforms.move(T,{unit:"line"});if(nt.isExtendLineBackward(t))return e.preventDefault(),void n.Transforms.move(T,{unit:"line",edge:"focus",reverse:!0});if(nt.isExtendLineForward(t))return e.preventDefault(),void n.Transforms.move(T,{unit:"line",edge:"focus"});if(nt.isMoveBackward(t))return e.preventDefault(),void(r&&n.Range.isCollapsed(r)?n.Transforms.move(T,{reverse:!o}):n.Transforms.collapse(T,{edge:"start"}));if(nt.isMoveForward(t))return e.preventDefault(),void(r&&n.Range.isCollapsed(r)?n.Transforms.move(T,{reverse:o}):n.Transforms.collapse(T,{edge:"end"}));if(nt.isMoveWordBackward(t))return e.preventDefault(),r&&n.Range.isExpanded(r)&&n.Transforms.collapse(T,{edge:"focus"}),void n.Transforms.move(T,{unit:"word",reverse:!o});if(nt.isMoveWordForward(t))return e.preventDefault(),r&&n.Range.isExpanded(r)&&n.Transforms.collapse(T,{edge:"focus"}),void n.Transforms.move(T,{unit:"word",reverse:o});if(Fe){if(Ne&&r&&(nt.isDeleteBackward(t)||nt.isDeleteForward(t))&&n.Range.isCollapsed(r)){var u=n.Node.parent(T,r.anchor.path);if(n.Element.isElement(u)&&n.Editor.isVoid(T,u)&&n.Editor.isInline(T,u))return e.preventDefault(),void n.Transforms.delete(T,{unit:"block"})}}else{if(nt.isBold(t)||nt.isItalic(t)||nt.isTransposeCharacter(t))return void e.preventDefault();if(nt.isSplitBlock(t))return e.preventDefault(),void n.Editor.insertBreak(T);if(nt.isDeleteBackward(t))return e.preventDefault(),void(r&&n.Range.isExpanded(r)?n.Editor.deleteFragment(T,{direction:"backward"}):n.Editor.deleteBackward(T));if(nt.isDeleteForward(t))return e.preventDefault(),void(r&&n.Range.isExpanded(r)?n.Editor.deleteFragment(T,{direction:"forward"}):n.Editor.deleteForward(T));if(nt.isDeleteLineBackward(t))return e.preventDefault(),void(r&&n.Range.isExpanded(r)?n.Editor.deleteFragment(T,{direction:"backward"}):n.Editor.deleteBackward(T,{unit:"line"}));if(nt.isDeleteLineForward(t))return e.preventDefault(),void(r&&n.Range.isExpanded(r)?n.Editor.deleteFragment(T,{direction:"forward"}):n.Editor.deleteForward(T,{unit:"line"}));if(nt.isDeleteWordBackward(t))return e.preventDefault(),void(r&&n.Range.isExpanded(r)?n.Editor.deleteFragment(T,{direction:"backward"}):n.Editor.deleteBackward(T,{unit:"word"}));if(nt.isDeleteWordForward(t))return e.preventDefault(),void(r&&n.Range.isExpanded(r)?n.Editor.deleteFragment(T,{direction:"forward"}):n.Editor.deleteForward(T,{unit:"word"}))}}}),[f,x.onKeyDown]),onPaste:t.useCallback((function(e){f||!wt(T,e.target)||kt(e,x.onPaste)||Fe&&!function(e){return e.clipboardData&&""!==e.clipboardData.getData("text/plain")&&1===e.clipboardData.types.length}(e.nativeEvent)||(e.preventDefault(),Dt.insertData(T,e.clipboardData))}),[f,x.onPaste])}),Ye({decorations:O,node:T,renderElement:d,renderPlaceholder:y,renderLeaf:p,selection:T.selection}))))},gt=function(e){var t=e.attributes,n=e.children;return a.default.createElement("span",Object.assign({},t),n)},yt=function(){return[]},bt=function(e,t){return ct(t)&&Dt.hasDOMNode(e,t)},wt=function(e,t){return ct(t)&&Dt.hasDOMNode(e,t,{editable:!0})},Et=function(e,t){var r=bt(e,t)&&Dt.toSlateNode(e,t);return n.Editor.isVoid(e,r)},kt=function(e,t){if(!t)return!1;var n=t(e);return null!=n?n:e.isDefaultPrevented()||e.isPropagationStopped()},xt=function(e,t){if(!t)return!1;var n=t(e);return null!=n?n:e.defaultPrevented},Tt=i(l((function(e){e.exports=function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")},e.exports.default=e.exports,e.exports.__esModule=!0}))),St=l((function(e){e.exports=function(e){if(Array.isArray(e))return f(e)},e.exports.default=e.exports,e.exports.__esModule=!0}));i(St);var Ct=l((function(e){e.exports=function(e){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(e))return Array.from(e)},e.exports.default=e.exports,e.exports.__esModule=!0}));i(Ct);var Pt=l((function(e){e.exports=function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")},e.exports.default=e.exports,e.exports.__esModule=!0}));i(Pt);var _t=i(l((function(e){e.exports=function(e){return St(e)||Ct(e)||d(e)||Pt()},e.exports.default=e.exports,e.exports.__esModule=!0}))),Ot=0,Nt=function e(){Tt(this,e),this.id="".concat(Ot++)},Dt={getWindow:function(e){var t=se.get(e);if(!t)throw new Error("Unable to find a host window element for this editor");return t},findKey:function(e,t){var n=me.get(t);return n||(n=new Nt,me.set(t,n)),n},findPath:function(e,t){for(var r=[],a=t;;){var o=ce.get(a);if(null==o){if(n.Editor.isEditor(a))return r;break}var i=ue.get(a);if(null==i)break;r.unshift(i),a=o}throw new Error("Unable to find the path for Slate node: ".concat(JSON.stringify(t)))},findDocumentOrShadowRoot:function(e){var t=Dt.toDOMNode(e,e),n=t.getRootNode();if(t.ownerDocument!==document)return t.ownerDocument;if(!(n instanceof Document||n instanceof ShadowRoot))throw new Error("Unable to find DocumentOrShadowRoot for editor element: ".concat(t));return void 0===n.getSelection&&null!==t.ownerDocument?t.ownerDocument:n},isFocused:function(e){return!!ge.get(e)},isReadOnly:function(e){return!!ve.get(e)},blur:function(e){var t=Dt.toDOMNode(e,e),n=Dt.findDocumentOrShadowRoot(e);ge.set(e,!1),n.activeElement===t&&t.blur()},focus:function(e){var t=Dt.toDOMNode(e,e),n=Dt.findDocumentOrShadowRoot(e);ge.set(e,!0),n.activeElement!==t&&t.focus({preventScroll:!0})},deselect:function(e){Dt.toDOMNode(e,e);var t=e.selection,r=Dt.findDocumentOrShadowRoot(e).getSelection();r&&r.rangeCount>0&&r.removeAllRanges(),t&&n.Transforms.deselect(e)},hasDOMNode:function(e,t){var n,r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},a=r.editable,o=void 0!==a&&a,i=Dt.toDOMNode(e,e);try{n=ut(t)?t:t.parentElement}catch(e){if(!e.message.includes('Permission denied to access property "nodeType"'))throw e}return!!n&&(n.closest("[data-slate-editor]")===i&&(!o||n.isContentEditable||!!n.getAttribute("data-slate-zero-width")))},insertData:function(e,t){e.insertData(t)},setFragmentData:function(e,t){e.setFragmentData(t)},toDOMNode:function(e,t){var r=n.Editor.isEditor(t)?fe.get(e):pe.get(Dt.findKey(e,t));if(!r)throw new Error("Cannot resolve a DOM node from Slate node: ".concat(JSON.stringify(t)));return r},toDOMPoint:function(e,t){var r,a=n.Editor.node(e,t.path),o=h(a,1)[0],i=Dt.toDOMNode(e,o);n.Editor.void(e,{at:t})&&(t={path:t.path,offset:0});for(var l=0,u=0,c=Array.from(i.querySelectorAll("[data-slate-string], [data-slate-zero-width]"));u<c.length;u++){var s=c[u],f=s.childNodes[0];if(null!=f&&null!=f.textContent){var d=f.textContent.length,p=s.getAttribute("data-slate-length"),m=l+(null==p?d:parseInt(p,10));if(t.offset<=m){r=[f,Math.min(d,Math.max(0,t.offset-l))];break}l=m}}if(!r)throw new Error("Cannot resolve a DOM point from Slate point: ".concat(JSON.stringify(t)));return r},toDOMRange:function(e,t){var r=t.anchor,a=t.focus,o=n.Range.isBackward(t),i=Dt.toDOMPoint(e,r),l=n.Range.isCollapsed(t)?i:Dt.toDOMPoint(e,a),u=Dt.getWindow(e).document.createRange(),c=h(o?l:i,2),s=c[0],f=c[1],d=h(o?i:l,2),p=d[0],m=d[1],v=!!(ut(s)?s:s.parentElement).getAttribute("data-slate-zero-width"),g=!!(ut(p)?p:p.parentElement).getAttribute("data-slate-zero-width");return u.setStart(s,v?1:f),u.setEnd(p,g?1:m),u},toSlateNode:function(e,t){var n=ut(t)?t:t.parentElement;n&&!n.hasAttribute("data-slate-node")&&(n=n.closest("[data-slate-node]"));var r=n?de.get(n):null;if(!r)throw new Error("Cannot resolve a Slate node from DOM node: ".concat(n));return r},findEventRange:function(e,t){"nativeEvent"in t&&(t=t.nativeEvent);var r=t,a=r.clientX,o=r.clientY,i=r.target;if(null==a||null==o)throw new Error("Cannot resolve a Slate range from a DOM event: ".concat(t));var l,u=Dt.toSlateNode(e,t.target),c=Dt.findPath(e,u);if(n.Editor.isVoid(e,u)){var s=i.getBoundingClientRect(),f=e.isInline(u)?a-s.left<s.left+s.width-a:o-s.top<s.top+s.height-o,d=n.Editor.point(e,c,{edge:f?"start":"end"}),p=f?n.Editor.before(e,d):n.Editor.after(e,d);if(p)return n.Editor.range(e,p)}var h=window.document;if(h.caretRangeFromPoint)l=h.caretRangeFromPoint(a,o);else{var m=h.caretPositionFromPoint(a,o);m&&((l=h.createRange()).setStart(m.offsetNode,m.offset),l.setEnd(m.offsetNode,m.offset))}if(!l)throw new Error("Cannot resolve a Slate range from a DOM event: ".concat(t));return Dt.toSlateRange(e,l,{exactMatch:!1})},toSlatePoint:function(e,t,n){var r=n?t:function(e){var t=h(e,2),n=t[0],r=t[1];if(ut(n)&&n.childNodes.length){var a=r===n.childNodes.length,o=a?r-1:r,i=dt(n,o,a?"backward":"forward"),l=h(i,2);for(n=l[0],a=(o=l[1])<r;ut(n)&&n.childNodes.length;){var u=a?n.childNodes.length-1:0;n=pt(n,u,a?"backward":"forward")}r=a&&null!=n.textContent?n.textContent.length:0}return[n,r]}(t),a=h(r,2),o=a[0],i=a[1],l=o.parentNode,u=null,c=0;if(l){var s=l.closest('[data-slate-void="true"]'),f=l.closest("[data-slate-leaf]"),d=null;if(f){u=f.closest('[data-slate-node="text"]');var p=Dt.getWindow(e).document.createRange();p.setStart(u,0),p.setEnd(o,i);var m=p.cloneContents();[].concat(_t(Array.prototype.slice.call(m.querySelectorAll("[data-slate-zero-width]"))),_t(Array.prototype.slice.call(m.querySelectorAll("[contenteditable=false]")))).forEach((function(e){e.parentNode.removeChild(e)})),c=m.textContent.length,d=u}else s&&((f=s.querySelector("[data-slate-leaf]"))?(u=f.closest('[data-slate-node="text"]'),c=(d=f).textContent.length,d.querySelectorAll("[data-slate-zero-width]").forEach((function(e){c-=e.textContent.length}))):c=1);d&&c===d.textContent.length&&l.hasAttribute("data-slate-zero-width")&&c--}if(!u){if(n)return null;throw new Error("Cannot resolve a Slate point from DOM point: ".concat(t))}var v=Dt.toSlateNode(e,u);return{path:Dt.findPath(e,v),offset:c}},toSlateRange:function(e,t,n){var r,a,o,i,l,u=n.exactMatch;if((st(t)?t.anchorNode:t.startContainer)&&(st(t)?(r=t.anchorNode,a=t.anchorOffset,o=t.focusNode,i=t.focusOffset,l=Ne&&window.document.activeElement&&window.document.activeElement.shadowRoot?t.anchorNode===t.focusNode&&t.anchorOffset===t.focusOffset:t.isCollapsed):(r=t.startContainer,a=t.startOffset,o=t.endContainer,i=t.endOffset,l=t.collapsed)),null==r||null==o||null==a||null==i)throw new Error("Cannot resolve a Slate range from DOM range: ".concat(t));var c=Dt.toSlatePoint(e,[r,a],u);if(!c)return null;var s=l?c:Dt.toSlatePoint(e,[o,i],u);return s?{anchor:c,focus:s}:null},hasRange:function(e,t){var r=t.anchor,a=t.focus;return n.Editor.hasPath(e,r.path)&&n.Editor.hasPath(e,a.path)}};function Mt(e,t){if(e===t)return null;var n=function(e,t){for(var n=Math.min(e.length,t.length),r=0;r<n;r++)if(e.charAt(r)!==t.charAt(r))return r;return e.length!==t.length?n:null}(e,t);if(null===n)return null;var r=function(e,t,n){for(var r=e.length,a=t.length,o=Math.min(r,a,n),i=0;i<o;i++)if(e.charAt(r-i-1)!==t.charAt(a-i-1))return i;return e.length!==t.length?o:null}(e,t,Math.min(e.length-n,t.length-n));return null===r?null:{start:n,end:r}}function Rt(e,t){return e.slice(t.start,e.length-t.end)}function Ft(e,t){var r=Dt.toSlateNode(e,t);if(n.Text.isText(r)){var a=r.text,o=t.textContent;if(o.endsWith("\n")&&(o=o.slice(0,o.length-1)),o!==a){var i=function(e,t){if(void 0===e||void 0===t)return null;var n=Mt(e,t);if(null==n)return null;var r=Rt(t,n),a=Rt(e,n);return{start:n.start,end:e.length-n.end,insertText:r,removeText:a}}(a,o);if(null!==i)return{text:i,path:Dt.findPath(e,r)}}}}function Lt(e,t,r){var a=r.path,o=r.text,i={anchor:{path:a,offset:o.start},focus:{path:a,offset:o.end}};if(!t||!n.Range.isCollapsed(t))return i;var l=o.insertText,u=o.removeText;if((1===l.length||1===u.length)&&n.Path.equals(t.anchor.path,a)){var c=Array.from(n.Editor.nodes(e,{at:t,match:n.Text.isText})),s=h(c,1)[0];if(s){var f=h(s,1)[0],d=t.anchor,p=f.text[d.offset-1],m=f.text[d.offset];if(1===l.length&&l===m)return t;if(1===u.length&&u===p)return{anchor:{path:a,offset:d.offset-1},focus:{path:a,offset:d.offset}}}}return i}function It(e){try{var t=be.get(e);t&&t()}catch(e){console.error(e)}}function zt(e,t){var n;if("undefined"==typeof Symbol||null==e[Symbol.iterator]){if(Array.isArray(e)||(n=function(e,t){if(!e)return;if("string"==typeof e)return At(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return At(e,t)}(e))||t&&e&&"number"==typeof e.length){n&&(e=n);var r=0,a=function(){};return{s:a,n:function(){return r>=e.length?{done:!0}:{done:!1,value:e[r++]}},e:function(e){throw e},f:a}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var o,i=!0,l=!1;return{s:function(){n=e[Symbol.iterator]()},n:function(){var e=n.next();return i=e.done,e},e:function(e){l=!0,o=e},f:function(){try{i||null==n.return||n.return()}finally{if(l)throw o}}}}function At(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var Bt=function e(t){var r=this;Tt(this,e),this.editor=t,this.flush=function(e){try{r.reconcileMutations(e)}catch(e){console.error(e),It(r.editor)}},this.reconcileMutations=function(e){var t,a,o,i=function(e,t){var r=[],a=[],o=[],i=[];return t.forEach((function(t){switch(t.type){case"childList":t.addedNodes.length&&t.addedNodes.forEach((function(e){r.push(e)})),t.removedNodes.forEach((function(e){a.push(e)}));break;case"characterData":i.push(t);var l=t.target.parentNode;if(!l)return;var u=Ft(e,l);if(!u)return;if(o.some((function(e){var t=e.path;return n.Path.equals(t,u.path)})))return;o.push(u)}})),{addedNodes:r,removedNodes:a,insertedText:o,characterDataMutations:i}}(r.editor,e),l=i.insertedText,u=i.removedNodes;if(function(e,t){var r=e.selection,a=t.removedNodes;return!!r&&n.Range.isExpanded(r)&&a.length>0}(r.editor,i)){var c=function(e){return e.reduce((function(e,t){var n=t.text;return"".concat(e).concat(n.insertText)}),"")}(l);r.replaceExpandedSelection(c)}else!function(e,t){var r=t.addedNodes,a=e.selection,o=a?n.Node.parent(e,a.anchor.path):null,i=o?Dt.toDOMNode(e,o):null;return!!i&&r.some((function(e){return e instanceof HTMLElement&&e.tagName===(null==i?void 0:i.tagName)}))}(r.editor,i)?(r.editor,a=(t=i).addedNodes,o=t.characterDataMutations,t.removedNodes.length>0&&0===a.length&&o.length>0?r.removeLeafNodes(u):(r.editor,i.removedNodes.length>0?r.deleteBackward():(r.editor,i.insertedText.length>0&&r.insertText(l)))):r.insertBreak()},this.insertText=function(e){var t=r.editor.selection;e.forEach((function(e){n.Transforms.insertText(r.editor,e.text.insertText,{at:Lt(r.editor,t,e)})}))},this.insertBreak=function(){var e=r.editor.selection;n.Editor.insertBreak(r.editor),It(r.editor),e&&setTimeout((function(){r.editor.selection&&n.Range.equals(e,r.editor.selection)&&n.Transforms.move(r.editor)}),100)},this.replaceExpandedSelection=function(e){n.Editor.deleteFragment(r.editor),e.length&&n.Editor.insertText(r.editor,e),It(r.editor)},this.deleteBackward=function(){n.Editor.deleteBackward(r.editor),Dt.focus(r.editor),It(r.editor)},this.removeLeafNodes=function(e){var t,a=zt(e);try{for(a.s();!(t=a.n()).done;){var o=t.value,i=Dt.toSlateNode(r.editor,o);if(i){var l=Dt.findPath(r.editor,i);n.Transforms.delete(r.editor,{at:l}),It(r.editor)}}}catch(e){a.e(e)}finally{a.f()}},this.editor=t};var jt={childList:!0,characterData:!0,characterDataOldValue:!0,subtree:!0};function Wt(e){var n=Qe(),r=t.useState((function(){return new Bt(n)})),a=h(r,1)[0],o=function(){var e=Qe(),n=t.useRef(!1),r=t.useRef(null),a=t.useCallback((function(){if(!1===n.current){var t=Dt.getWindow(e);n.current=!0,r.current&&t.cancelAnimationFrame(r.current),r.current=t.requestAnimationFrame((function(){n.current=!1,r.current=null}))}}),[]);return t.useEffect((function(){n.current&&(n.current=!1)})),{receivedUserInput:n,onUserInput:a}}(),i=o.receivedUserInput,l=o.onUserInput,u=t.useRef(null),c=t.useRef(!1);return function(e,n,r){var a=t.useState((function(){return new MutationObserver(n)})),o=h(a,1)[0];Le((function(){o.disconnect()})),t.useEffect((function(){if(!e.current)throw new Error("Failed to attach MutationObserver, `node` is undefined");return o.observe(e.current,r),o.disconnect.bind(o)}))}(e,t.useCallback((function(e){i.current&&(c.current=!0,a.flush(e),u.current&&clearTimeout(u.current),u.current=setTimeout((function(){c.current=!1,u.current=null}),250))}),[]),jt),{isReconciling:c,onUserInput:l}}function Ut(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function Vt(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Ut(Object(n),!0).forEach((function(t){u(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Ut(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}var Ht=function(e){var r=e.autoFocus,o=e.decorate,i=void 0===o?yt:o,l=e.onDOMBeforeInput,c=e.placeholder,s=e.readOnly,f=void 0!==s&&s,d=e.renderElement,p=e.renderLeaf,m=e.renderPlaceholder,g=void 0===m?function(e){return a.default.createElement(gt,Object.assign({},e))}:m,y=e.style,b=void 0===y?{}:y,w=e.as,E=void 0===w?"div":w,k=v(e,["autoFocus","decorate","onDOMBeforeInput","placeholder","readOnly","renderElement","renderLeaf","renderPlaceholder","style","as"]),x=it(),T=t.useRef(null),S=Wt(T);ve.set(x,f);var C=t.useMemo((function(){return{isUpdatingSelection:!1,latestElement:null}}),[]),P=t.useState(0),_=h(P,2),O=_[0],N=_[1],D=t.useCallback((function(){N((function(e){return e+1}))}),[O]);Le((function(){var e;T.current&&(e=lt(T.current))?(se.set(x,e),fe.set(x,T.current),he.set(x,T.current),de.set(T.current,x),be.set(x,D)):(he.delete(x),be.delete(x));try{var t=x.selection,r=Dt.findDocumentOrShadowRoot(x).getSelection();if(!r||!Dt.isFocused(x))return;var a="None"!==r.type;if(!t&&!a)return;var o=fe.get(x),i=!1;if(o.contains(r.anchorNode)&&o.contains(r.focusNode)&&(i=!0),a&&i&&t){var l=Dt.toSlateRange(x,r,{exactMatch:!0});if(l&&n.Range.equals(l,t))return}if(t&&!Dt.hasRange(x,t))return void(x.selection=Dt.toSlateRange(x,r,{exactMatch:!1}));var u=Dt.toDOMNode(x,x);C.isUpdatingSelection=!0;var c=t&&Dt.toDOMRange(x,t);if(c){n.Range.isBackward(t)?r.setBaseAndExtent(c.endContainer,c.endOffset,c.startContainer,c.startOffset):r.setBaseAndExtent(c.startContainer,c.startOffset,c.endContainer,c.endOffset);var s=c.startContainer.parentElement;s.getBoundingClientRect=c.getBoundingClientRect.bind(c),ae(s,{scrollMode:"if-needed",boundary:u}),delete s.getBoundingClientRect}else r.removeAllRanges();setTimeout((function(){C.isUpdatingSelection=!1}))}catch(e){C.isUpdatingSelection=!1}})),t.useEffect((function(){T.current&&r&&T.current.focus()}),[r]);var M=t.useCallback((function(e){f||!wt(x,e.target)||xt(e,l)||S.onUserInput()}),[f,l]);Le((function(){var e=T.current;return null==e||e.addEv