@yoopta/lists 6.0.0-beta.7 → 6.0.0-beta.9
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.
- package/dist/commands/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/package.json +2 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/commands/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAGjE,OAAO,KAAK,EACV,mBAAmB,EACnB,mBAAmB,EACnB,eAAe,EACf,oBAAoB,EACrB,MAAM,UAAU,CAAC;AAElB,MAAM,MAAM,kBAAkB,GAAG;IAAE,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AACnD,MAAM,MAAM,iBAAiB,GAAG,kBAAkB,GAAG;IAAE,EAAE,EAAE,eAAe,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC;AAE9F,MAAM,MAAM,sBAAsB,GAAG,kBAAkB,GAAG;IAAE,KAAK,CAAC,EAAE,oBAAoB,CAAA;CAAE,CAAC;AAC3F,MAAM,MAAM,qBAAqB,GAAG,sBAAsB,GAAG;IAC3D,EAAE,EAAE,eAAe,CAAC;IACpB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,CAAC;AAGF,MAAM,MAAM,oBAAoB,GAAG;IACjC,yBAAyB,EAAE,CACzB,MAAM,EAAE,SAAS,EACjB,OAAO,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,KAClC,mBAAmB,CAAC;IACzB,kBAAkB,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,iBAAiB,CAAC,KAAK,IAAI,CAAC;IACtF,kBAAkB,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CAClE,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/commands/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAGjE,OAAO,KAAK,EACV,mBAAmB,EACnB,mBAAmB,EACnB,eAAe,EACf,oBAAoB,EACrB,MAAM,UAAU,CAAC;AAElB,MAAM,MAAM,kBAAkB,GAAG;IAAE,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AACnD,MAAM,MAAM,iBAAiB,GAAG,kBAAkB,GAAG;IAAE,EAAE,EAAE,eAAe,CAAC;IAAC,KAAK,CAAC,EAAE,OAAO,CAAA;CAAE,CAAC;AAE9F,MAAM,MAAM,sBAAsB,GAAG,kBAAkB,GAAG;IAAE,KAAK,CAAC,EAAE,oBAAoB,CAAA;CAAE,CAAC;AAC3F,MAAM,MAAM,qBAAqB,GAAG,sBAAsB,GAAG;IAC3D,EAAE,EAAE,eAAe,CAAC;IACpB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB,CAAC;AAGF,MAAM,MAAM,oBAAoB,GAAG;IACjC,yBAAyB,EAAE,CACzB,MAAM,EAAE,SAAS,EACjB,OAAO,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,KAClC,mBAAmB,CAAC;IACzB,kBAAkB,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,iBAAiB,CAAC,KAAK,IAAI,CAAC;IACtF,kBAAkB,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CAClE,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,oBAclC,CAAC;AAGF,MAAM,MAAM,oBAAoB,GAAG;IACjC,yBAAyB,EAAE,CACzB,MAAM,EAAE,SAAS,EACjB,OAAO,CAAC,EAAE,OAAO,CAAC,kBAAkB,CAAC,KAClC,mBAAmB,CAAC;IACzB,kBAAkB,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,iBAAiB,CAAC,KAAK,IAAI,CAAC;IACtF,kBAAkB,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;CAClE,CAAC;AAEF,eAAO,MAAM,oBAAoB,EAAE,oBAclC,CAAC;AAGF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,qBAAqB,EAAE,CACrB,MAAM,EAAE,SAAS,EACjB,OAAO,CAAC,EAAE,OAAO,CAAC,sBAAsB,CAAC,KACtC,eAAe,CAAC;IACrB,cAAc,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,OAAO,CAAC,qBAAqB,CAAC,KAAK,IAAI,CAAC;IACtF,cAAc,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IAC7D,cAAc,EAAE,CACd,MAAM,EAAE,SAAS,EACjB,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,OAAO,CAAC,oBAAoB,CAAC,KACjC,IAAI,CAAC;CACX,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,gBAwB9B,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsx as e}from"react/jsx-runtime";import{Blocks as t,Elements as r,buildBlockData as n,buildBlockElement as o,generateId as i,deserializeTextNodes as a,YooptaPlugin as s,serializeTextNodes as l,serializeTextNodesIntoMarkdown as c,useYooptaEditor as d}from"@yoopta/editor";const p={buildBulletedListElements:(e,t)=>{var r;return e.y("bulleted-list",{children:[e.y("bulleted-list-item",{children:[{text:null!==(r=null==t?void 0:t.text)&&void 0!==r?r:""}]})]})},insertBulletedList:(e,r={})=>{const{at:n,focus:o,text:i}=r,a=p.buildBulletedListElements(e,{text:i}),s=t.buildBlockData({value:[a],type:"BulletedList"});t.insertBlock(e,s.type,{at:n,focus:o,blockData:s})},deleteBulletedList:(e,r)=>{t.deleteBlock(e,{blockId:r})}},f={buildNumberedListElements:(e,t)=>{var r;return e.y("numbered-list",{children:[e.y("numbered-list-item",{children:[{text:null!==(r=null==t?void 0:t.text)&&void 0!==r?r:""}]})]})},insertNumberedList:(e,r={})=>{const{at:n,focus:o,text:i}=r,a=f.buildNumberedListElements(e,{text:i}),s=t.buildBlockData({value:[a],type:"NumberedList"});t.insertBlock(e,s.type,{at:n,focus:o,blockData:s})},deleteNumberedList:(e,r)=>{t.deleteBlock(e,{blockId:r})}},u={buildTodoListElements:(e,t)=>{var r,n,o;return e.y("todo-list",{children:[e.y("todo-list-item",{props:{checked:null!==(n=null===(r=null==t?void 0:t.props)||void 0===r?void 0:r.checked)&&void 0!==n&&n},children:[{text:null!==(o=null==t?void 0:t.text)&&void 0!==o?o:""}]})]})},insertTodoList:(e,r={})=>{const{at:n,focus:o,text:i,props:a}=r,s=u.buildTodoListElements(e,{text:i,props:a}),l=t.buildBlockData({value:[s],type:"TodoList"});t.insertBlock(e,l.type,{at:n,focus:o,blockData:l})},deleteTodoList:(e,r)=>{t.deleteBlock(e,{blockId:r})},updateTodoList:(e,t,n)=>{"boolean"==typeof(null==n?void 0:n.checked)&&r.updateElement(e,{blockId:t,type:"todo-list",props:{checked:null==n?void 0:n.checked}})}};var h={ancestors(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{reverse:r=!1}=t,n=h.levels(e,t);return n=r?n.slice(1):n.slice(0,-1)},common(e,t){for(var r=[],n=0;n<e.length&&n<t.length;n++){var o=e[n];if(o!==t[n])break;r.push(o)}return r},compare(e,t){for(var r=Math.min(e.length,t.length),n=0;n<r;n++){if(e[n]<t[n])return-1;if(e[n]>t[n])return 1}return 0},endsAfter(e,t){var r=e.length-1,n=e.slice(0,r),o=t.slice(0,r),i=e[r],a=t[r];return h.equals(n,o)&&i>a},endsAt(e,t){var r=e.length,n=e.slice(0,r),o=t.slice(0,r);return h.equals(n,o)},endsBefore(e,t){var r=e.length-1,n=e.slice(0,r),o=t.slice(0,r),i=e[r],a=t[r];return h.equals(n,o)&&i<a},equals:(e,t)=>e.length===t.length&&e.every((e,r)=>e===t[r]),hasPrevious:e=>e[e.length-1]>0,isAfter:(e,t)=>1===h.compare(e,t),isAncestor:(e,t)=>e.length<t.length&&0===h.compare(e,t),isBefore:(e,t)=>-1===h.compare(e,t),isChild:(e,t)=>e.length===t.length+1&&0===h.compare(e,t),isCommon:(e,t)=>e.length<=t.length&&0===h.compare(e,t),isDescendant:(e,t)=>e.length>t.length&&0===h.compare(e,t),isParent:(e,t)=>e.length+1===t.length&&0===h.compare(e,t),isPath:e=>Array.isArray(e)&&(0===e.length||"number"==typeof e[0]),isSibling(e,t){if(e.length!==t.length)return!1;var r=e.slice(0,-1),n=t.slice(0,-1);return e[e.length-1]!==t[t.length-1]&&h.equals(r,n)},levels(e){for(var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{reverse:r=!1}=t,n=[],o=0;o<=e.length;o++)n.push(e.slice(0,o));return r&&n.reverse(),n},next(e){if(0===e.length)throw new Error("Cannot get the next path of a root path [".concat(e,"], because it has no next index."));var t=e[e.length-1];return e.slice(0,-1).concat(t+1)},operationCanTransformPath(e){switch(e.type){case"insert_node":case"remove_node":case"merge_node":case"split_node":case"move_node":return!0;default:return!1}},parent(e){if(0===e.length)throw new Error("Cannot get the parent path of the root path [".concat(e,"]."));return e.slice(0,-1)},previous(e){if(0===e.length)throw new Error("Cannot get the previous path of a root path [".concat(e,"], because it has no previous index."));var t=e[e.length-1];if(t<=0)throw new Error("Cannot get the previous path of a first child path [".concat(e,"] because it would result in a negative index."));return e.slice(0,-1).concat(t-1)},relative(e,t){if(!h.isAncestor(t,e)&&!h.equals(e,t))throw new Error("Cannot get the relative path of [".concat(e,"] inside ancestor [").concat(t,"], because it is not above or equal to the path."));return e.slice(t.length)},transform(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(!e)return null;var n=[...e],{affinity:o="forward"}=r;if(0===e.length)return n;switch(t.type){case"insert_node":var{path:i}=t;(h.equals(i,n)||h.endsBefore(i,n)||h.isAncestor(i,n))&&(n[i.length-1]+=1);break;case"remove_node":var{path:a}=t;if(h.equals(a,n)||h.isAncestor(a,n))return null;h.endsBefore(a,n)&&(n[a.length-1]-=1);break;case"merge_node":var{path:s,position:l}=t;h.equals(s,n)||h.endsBefore(s,n)?n[s.length-1]-=1:h.isAncestor(s,n)&&(n[s.length-1]-=1,n[s.length]+=l);break;case"split_node":var{path:c,position:d}=t;if(h.equals(c,n)){if("forward"===o)n[n.length-1]+=1;else if("backward"!==o)return null}else h.endsBefore(c,n)?n[c.length-1]+=1:h.isAncestor(c,n)&&e[c.length]>=d&&(n[c.length-1]+=1,n[c.length]-=d);break;case"move_node":var{path:p,newPath:f}=t;if(h.equals(p,f))return n;if(h.isAncestor(p,n)||h.equals(p,n)){var u=f.slice();return h.endsBefore(p,f)&&p.length<f.length&&(u[p.length-1]-=1),u.concat(n.slice(p.length))}h.isSibling(p,f)&&(h.isAncestor(f,n)||h.equals(f,n))?h.endsBefore(p,n)?n[p.length-1]-=1:n[p.length-1]+=1:h.endsBefore(f,n)||h.equals(f,n)||h.isAncestor(f,n)?(h.endsBefore(p,n)&&(n[p.length-1]-=1),n[f.length-1]+=1):h.endsBefore(p,n)&&(h.equals(f,n)&&(n[f.length-1]+=1),n[p.length-1]-=1)}return n}};function g(e){return g="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},g(e)}function v(e){var t=function(e,t){if("object"!==g(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!==g(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===g(t)?t:String(t)}function m(e,t,r){return(t=v(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function y(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var b=["anchor","focus"];function O(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}var w={edges(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{reverse:r=!1}=t,{anchor:n,focus:o}=e;return w.isBackward(e)===r?[n,o]:[o,n]},end(e){var[,t]=w.edges(e);return t},equals:(e,t)=>z.equals(e.anchor,t.anchor)&&z.equals(e.focus,t.focus),surrounds(e,t){var r=w.intersection(e,t);return!!r&&w.equals(r,t)},includes(e,t){if(w.isRange(t)){if(w.includes(e,t.anchor)||w.includes(e,t.focus))return!0;var[r,n]=w.edges(e),[o,i]=w.edges(t);return z.isBefore(r,o)&&z.isAfter(n,i)}var[a,s]=w.edges(e),l=!1,c=!1;return z.isPoint(t)?(l=z.compare(t,a)>=0,c=z.compare(t,s)<=0):(l=h.compare(t,a.path)>=0,c=h.compare(t,s.path)<=0),l&&c},intersection(e,t){var r=y(e,b),[n,o]=w.edges(e),[i,a]=w.edges(t),s=z.isBefore(n,i)?i:n,l=z.isBefore(o,a)?o:a;return z.isBefore(l,s)?null:function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?O(Object(r),!0).forEach(function(t){m(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):O(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}({anchor:s,focus:l},r)},isBackward(e){var{anchor:t,focus:r}=e;return z.isAfter(t,r)},isCollapsed(e){var{anchor:t,focus:r}=e;return z.equals(t,r)},isExpanded:e=>!w.isCollapsed(e),isForward:e=>!w.isBackward(e),isRange:e=>S(e)&&z.isPoint(e.anchor)&&z.isPoint(e.focus),*points(e){yield[e.anchor,"anchor"],yield[e.focus,"focus"]},start(e){var[t]=w.edges(e);return t},transform(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(null===e)return null;var n,o,{affinity:i="inward"}=r;if("inward"===i){var a=w.isCollapsed(e);w.isForward(e)?(n="forward",o=a?n:"backward"):(n="backward",o=a?n:"forward")}else"outward"===i?w.isForward(e)?(n="backward",o="forward"):(n="forward",o="backward"):(n=i,o=i);var s=z.transform(e.anchor,t,{affinity:n}),l=z.transform(e.focus,t,{affinity:o});return s&&l?{anchor:s,focus:l}:null}},x=function(e){var{deep:t=!1}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return!!S(e)&&("function"!=typeof e.apply&&(t?L.isNodeList(e.children):Array.isArray(e.children)))},k={isAncestor(e){var{deep:t=!1}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return S(e)&&L.isNodeList(e.children,{deep:t})},isElement:x,isElementList(e){var{deep:t=!1}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return Array.isArray(e)&&e.every(e=>k.isElement(e,{deep:t}))},isElementProps:e=>void 0!==e.children,isElementType:function(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"type";return x(e)&&e[r]===t},matches(e,t){for(var r in t)if("children"!==r&&e[r]!==t[r])return!1;return!0}},P=["children"],j=["text"];function E(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function N(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?E(Object(r),!0).forEach(function(t){m(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):E(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}var L={ancestor(e,t){var r=L.get(e,t);if(J.isText(r))throw new Error("Cannot get the ancestor node at path [".concat(t,"] because it refers to a text node instead: ").concat(V.stringify(r)));return r},ancestors(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return function*(){for(var n of h.ancestors(t,r)){var o=[L.ancestor(e,n),n];yield o}}()},child(e,t){if(J.isText(e))throw new Error("Cannot get the child of a text node: ".concat(V.stringify(e)));var r=e.children[t];if(null==r)throw new Error("Cannot get child at index `".concat(t,"` in node: ").concat(V.stringify(e)));return r},children(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return function*(){for(var{reverse:n=!1}=r,o=L.ancestor(e,t),{children:i}=o,a=n?i.length-1:0;n?a>=0:a<i.length;){var s=L.child(o,a),l=t.concat(a);yield[s,l],a=n?a-1:a+1}}()},common(e,t,r){var n=h.common(t,r);return[L.get(e,n),n]},descendant(e,t){var r=L.get(e,t);if(q.isEditor(r))throw new Error("Cannot get the descendant node at path [".concat(t,"] because it refers to the root editor node instead: ").concat(V.stringify(r)));return r},descendants(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return function*(){for(var[r,n]of L.nodes(e,t))0!==n.length&&(yield[r,n])}()},elements(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return function*(){for(var[r,n]of L.nodes(e,t))k.isElement(r)&&(yield[r,n])}()},extractProps:e=>k.isAncestor(e)?y(e,P):y(e,j),first(e,t){for(var r=t.slice(),n=L.get(e,r);n&&!J.isText(n)&&0!==n.children.length;)n=n.children[0],r.push(0);return[n,r]},fragment(e,t){var r={children:e.children},[n,o]=w.edges(t),i=L.nodes(r,{reverse:!0,pass:e=>{var[,r]=e;return!w.includes(t,r)}}),a=function(){if(!w.includes(t,s)){var e=s[s.length-1];Y(r,h.parent(s),t=>H(t,e,1))}h.equals(s,o.path)&&ee(r,s,e=>{var t=e.text.slice(0,o.offset);return N(N({},e),{},{text:t})}),h.equals(s,n.path)&&ee(r,s,e=>{var t=e.text.slice(n.offset);return N(N({},e),{},{text:t})})};for(var[,s]of i)a();return r.children},get(e,t){var r=L.getIf(e,t);if(void 0===r)throw new Error("Cannot find a descendant at path [".concat(t,"] in node: ").concat(V.stringify(e)));return r},getIf(e,t){for(var r=e,n=0;n<t.length;n++){var o=t[n];if(J.isText(r)||!r.children[o])return;r=r.children[o]}return r},has(e,t){for(var r=e,n=0;n<t.length;n++){var o=t[n];if(J.isText(r)||!r.children[o])return!1;r=r.children[o]}return!0},isNode(e){var{deep:t=!1}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return J.isText(e)||k.isElement(e,{deep:t})||q.isEditor(e,{deep:t})},isNodeList(e){var{deep:t=!1}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return Array.isArray(e)&&e.every(e=>L.isNode(e,{deep:t}))},last(e,t){for(var r=t.slice(),n=L.get(e,r);n&&!J.isText(n)&&0!==n.children.length;){var o=n.children.length-1;n=n.children[o],r.push(o)}return[n,r]},leaf(e,t){var r=L.get(e,t);if(!J.isText(r))throw new Error("Cannot get the leaf node at path [".concat(t,"] because it refers to a non-leaf node: ").concat(V.stringify(r)));return r},levels(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return function*(){for(var n of h.levels(t,r)){var o=L.get(e,n);yield[o,n]}}()},matches:(e,t)=>k.isElement(e)&&k.isElementProps(t)&&k.matches(e,t)||J.isText(e)&&J.isTextProps(t)&&J.matches(e,t),nodes(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return function*(){for(var{pass:r,reverse:n=!1}=t,{from:o=[],to:i}=t,a=new Set,s=[],l=e;!i||!(n?h.isBefore(s,i):h.isAfter(s,i));)if(a.has(l)||(yield[l,s]),a.has(l)||J.isText(l)||0===l.children.length||null!=r&&!1!==r([l,s])){if(0===s.length)break;if(!n){var c=h.next(s);if(L.has(e,c)){s=c,l=L.get(e,s);continue}}if(n&&0!==s[s.length-1])s=h.previous(s),l=L.get(e,s);else s=h.parent(s),l=L.get(e,s),a.add(l)}else{a.add(l);var d=n?l.children.length-1:0;h.isAncestor(s,o)&&(d=o[s.length]),s=s.concat(d),l=L.get(e,s)}}()},parent(e,t){var r=h.parent(t),n=L.get(e,r);if(J.isText(n))throw new Error("Cannot get the parent of path [".concat(t,"] because it does not exist in the root."));return n},string:e=>J.isText(e)?e.text:e.children.map(L.string).join(""),texts(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return function*(){for(var[r,n]of L.nodes(e,t))J.isText(r)&&(yield[r,n])}()}};function T(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function B(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?T(Object(r),!0).forEach(function(t){m(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):T(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}var _,A={isNodeOperation:e=>A.isOperation(e)&&e.type.endsWith("_node"),isOperation(e){if(!S(e))return!1;switch(e.type){case"insert_node":case"remove_node":return h.isPath(e.path)&&L.isNode(e.node);case"insert_text":case"remove_text":return"number"==typeof e.offset&&"string"==typeof e.text&&h.isPath(e.path);case"merge_node":return"number"==typeof e.position&&h.isPath(e.path)&&S(e.properties);case"move_node":return h.isPath(e.path)&&h.isPath(e.newPath);case"set_node":return h.isPath(e.path)&&S(e.properties)&&S(e.newProperties);case"set_selection":return null===e.properties&&w.isRange(e.newProperties)||null===e.newProperties&&w.isRange(e.properties)||S(e.properties)&&S(e.newProperties);case"split_node":return h.isPath(e.path)&&"number"==typeof e.position&&S(e.properties);default:return!1}},isOperationList:e=>Array.isArray(e)&&e.every(e=>A.isOperation(e)),isSelectionOperation:e=>A.isOperation(e)&&e.type.endsWith("_selection"),isTextOperation:e=>A.isOperation(e)&&e.type.endsWith("_text"),inverse(e){switch(e.type){case"insert_node":return B(B({},e),{},{type:"remove_node"});case"insert_text":return B(B({},e),{},{type:"remove_text"});case"merge_node":return B(B({},e),{},{type:"split_node",path:h.previous(e.path)});case"move_node":var{newPath:t,path:r}=e;if(h.equals(t,r))return e;if(h.isSibling(r,t))return B(B({},e),{},{path:t,newPath:r});var n=h.transform(r,e),o=h.transform(h.next(r),e);return B(B({},e),{},{path:n,newPath:o});case"remove_node":return B(B({},e),{},{type:"insert_node"});case"remove_text":return B(B({},e),{},{type:"insert_text"});case"set_node":var{properties:i,newProperties:a}=e;return B(B({},e),{},{properties:a,newProperties:i});case"set_selection":var{properties:s,newProperties:l}=e;return B(B({},e),{},null==s?{properties:l,newProperties:null}:null==l?{properties:null,newProperties:s}:{properties:l,newProperties:s});case"split_node":return B(B({},e),{},{type:"merge_node",path:h.next(e.path)})}}},S=e=>"object"==typeof e&&null!==e,D=(e,t)=>{for(var r in e){var n=e[r],o=t[r];if(Array.isArray(n)&&Array.isArray(o)){if(n.length!==o.length)return!1;for(var i=0;i<n.length;i++)if(n[i]!==o[i])return!1}else if(S(n)&&S(o)){if(!D(n,o))return!1}else if(n!==o)return!1}for(var a in t)if(void 0===e[a]&&void 0!==t[a])return!1;return!0},$=e=>e.selection?e.selection:e.children.length>0?q.end(e,[]):[0];!function(e){e[e.None=0]="None",e[e.Extend=1]="Extend",e[e.ZWJ=2]="ZWJ",e[e.RI=4]="RI",e[e.Prepend=8]="Prepend",e[e.SpacingMark=16]="SpacingMark",e[e.L=32]="L",e[e.V=64]="V",e[e.T=128]="T",e[e.LV=256]="LV",e[e.LVT=512]="LVT",e[e.ExtPict=1024]="ExtPict",e[e.Any=2048]="Any"}(_||(_={})),_.L,_.L,_.V,_.LV,_.LVT,_.LV,_.V,_.V,_.T,_.LVT,_.T,_.T,_.Any,_.Extend,_.ZWJ,_.Any,_.SpacingMark,_.Prepend,_.Any,_.ZWJ,_.ExtPict,_.RI,_.RI;var q={above:(e,t)=>e.above(t),addMark(e,t,r){e.addMark(t,r)},after:(e,t,r)=>e.after(t,r),before:(e,t,r)=>e.before(t,r),deleteBackward(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{unit:r="character"}=t;e.deleteBackward(r)},deleteForward(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{unit:r="character"}=t;e.deleteForward(r)},deleteFragment(e,t){e.deleteFragment(t)},edges:(e,t)=>e.edges(t),elementReadOnly(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.elementReadOnly(t)},end:(e,t)=>e.end(t),first:(e,t)=>e.first(t),fragment:(e,t)=>e.fragment(t),hasBlocks:(e,t)=>e.hasBlocks(t),hasInlines:(e,t)=>e.hasInlines(t),hasPath:(e,t)=>e.hasPath(t),hasTexts:(e,t)=>e.hasTexts(t),insertBreak(e){e.insertBreak()},insertFragment(e,t,r){e.insertFragment(t,r)},insertNode(e,t){e.insertNode(t)},insertSoftBreak(e){e.insertSoftBreak()},insertText(e,t){e.insertText(t)},isBlock:(e,t)=>e.isBlock(t),isEdge:(e,t,r)=>e.isEdge(t,r),isEditor:e=>function(e){var{deep:t=!1}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!S(e))return!1;var r="function"==typeof e.addMark&&"function"==typeof e.apply&&"function"==typeof e.deleteFragment&&"function"==typeof e.insertBreak&&"function"==typeof e.insertSoftBreak&&"function"==typeof e.insertFragment&&"function"==typeof e.insertNode&&"function"==typeof e.insertText&&"function"==typeof e.isElementReadOnly&&"function"==typeof e.isInline&&"function"==typeof e.isSelectable&&"function"==typeof e.isVoid&&"function"==typeof e.normalizeNode&&"function"==typeof e.onChange&&"function"==typeof e.removeMark&&"function"==typeof e.getDirtyPaths&&(null===e.marks||S(e.marks))&&(null===e.selection||w.isRange(e.selection))&&(!t||L.isNodeList(e.children))&&A.isOperationList(e.operations);return r}(e),isElementReadOnly:(e,t)=>e.isElementReadOnly(t),isEmpty:(e,t)=>e.isEmpty(t),isEnd:(e,t,r)=>e.isEnd(t,r),isInline:(e,t)=>e.isInline(t),isNormalizing:e=>e.isNormalizing(),isSelectable:(e,t)=>e.isSelectable(t),isStart:(e,t,r)=>e.isStart(t,r),isVoid:(e,t)=>e.isVoid(t),last:(e,t)=>e.last(t),leaf:(e,t,r)=>e.leaf(t,r),levels:(e,t)=>e.levels(t),marks:e=>e.getMarks(),next:(e,t)=>e.next(t),node:(e,t,r)=>e.node(t,r),nodes:(e,t)=>e.nodes(t),normalize(e,t){e.normalize(t)},parent:(e,t,r)=>e.parent(t,r),path:(e,t,r)=>e.path(t,r),pathRef:(e,t,r)=>e.pathRef(t,r),pathRefs:e=>e.pathRefs(),point:(e,t,r)=>e.point(t,r),pointRef:(e,t,r)=>e.pointRef(t,r),pointRefs:e=>e.pointRefs(),positions:(e,t)=>e.positions(t),previous:(e,t)=>e.previous(t),range:(e,t,r)=>e.range(t,r),rangeRef:(e,t,r)=>e.rangeRef(t,r),rangeRefs:e=>e.rangeRefs(),removeMark(e,t){e.removeMark(t)},setNormalizing(e,t){e.setNormalizing(t)},start:(e,t)=>e.start(t),string:(e,t,r)=>e.string(t,r),unhangRange:(e,t,r)=>e.unhangRange(t,r),void:(e,t)=>e.void(t),withoutNormalizing(e,t){e.withoutNormalizing(t)},shouldMergeNodesRemovePrevNode:(e,t,r)=>e.shouldMergeNodesRemovePrevNode(t,r)};function C(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function R(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?C(Object(r),!0).forEach(function(t){m(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):C(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}var z={compare(e,t){var r=h.compare(e.path,t.path);return 0===r?e.offset<t.offset?-1:e.offset>t.offset?1:0:r},isAfter:(e,t)=>1===z.compare(e,t),isBefore:(e,t)=>-1===z.compare(e,t),equals:(e,t)=>e.offset===t.offset&&h.equals(e.path,t.path),isPoint:e=>S(e)&&"number"==typeof e.offset&&h.isPath(e.path),transform(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(null===e)return null;var{affinity:n="forward"}=r,{path:o,offset:i}=e;switch(t.type){case"insert_node":case"move_node":o=h.transform(o,t,r);break;case"insert_text":h.equals(t.path,o)&&(t.offset<i||t.offset===i&&"forward"===n)&&(i+=t.text.length);break;case"merge_node":h.equals(t.path,o)&&(i+=t.position),o=h.transform(o,t,r);break;case"remove_text":h.equals(t.path,o)&&t.offset<=i&&(i-=Math.min(i-t.offset,t.text.length));break;case"remove_node":if(h.equals(t.path,o)||h.isAncestor(t.path,o))return null;o=h.transform(o,t,r);break;case"split_node":if(h.equals(t.path,o)){if(t.position===i&&null==n)return null;(t.position<i||t.position===i&&"forward"===n)&&(i-=t.position,o=h.transform(o,t,R(R({},r),{},{affinity:"forward"})))}else o=h.transform(o,t,r);break;default:return e}return{path:o,offset:i}}},I=void 0,V={setScrubber(e){I=e},stringify:e=>JSON.stringify(e,I)},M=["text"],F=["anchor","focus","merge"];function W(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function U(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?W(Object(r),!0).forEach(function(t){m(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):W(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}var J={equals(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},{loose:n=!1}=r;function o(e){return y(e,M)}return D(n?o(e):e,n?o(t):t)},isText:e=>S(e)&&"string"==typeof e.text,isTextList:e=>Array.isArray(e)&&e.every(e=>J.isText(e)),isTextProps:e=>void 0!==e.text,matches(e,t){for(var r in t)if("text"!==r&&(!e.hasOwnProperty(r)||e[r]!==t[r]))return!1;return!0},decorations(e,t){var r=[{leaf:U({},e)}];for(var n of t){var{anchor:o,focus:i,merge:a}=n,s=y(n,F),[l,c]=w.edges(n),d=[],p=0,f=l.offset,u=c.offset,h=null!=a?a:Object.assign;for(var{leaf:g}of r){var{length:v}=g.text,m=p;if(p+=v,f<=m&&p<=u)h(g,s),d.push({leaf:g});else if(f!==u&&(f===p||u===m)||f>p||u<m||u===m&&0!==m)d.push({leaf:g});else{var b=g,O=void 0,x=void 0;if(u<p){var k=u-m;x={leaf:U(U({},b),{},{text:b.text.slice(k)})},b=U(U({},b),{},{text:b.text.slice(0,k)})}if(f>m){var P=f-m;O={leaf:U(U({},b),{},{text:b.text.slice(0,P)})},b=U(U({},b),{},{text:b.text.slice(P)})}h(b,s),O&&d.push(O),d.push({leaf:b}),x&&d.push(x)}}r=d}if(r.length>1){var j=0;for(var[E,N]of r.entries()){var L=j,T=L+N.leaf.text.length,B={start:L,end:T};0===E&&(B.isFirst=!0),E===r.length-1&&(B.isLast=!0),N.position=B,j=T}}return r}};function X(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function Z(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?X(Object(r),!0).forEach(function(t){m(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):X(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}var K=function(e,t){for(var r=arguments.length,n=new Array(r>2?r-2:0),o=2;o<r;o++)n[o-2]=arguments[o];return[...e.slice(0,t),...n,...e.slice(t)]},G=function(e,t,r){for(var n=arguments.length,o=new Array(n>3?n-3:0),i=3;i<n;i++)o[i-3]=arguments[i];return[...e.slice(0,t),...o,...e.slice(t+r)]},H=G,Q=(e,t,r)=>{if(0===t.length)throw new Error("Cannot modify the editor");for(var n=L.get(e,t),o=t.slice(),i=r(n);o.length>1;){var a=o.pop(),s=L.get(e,o);i=Z(Z({},s),{},{children:G(s.children,a,1,i)})}var l=o.pop();e.children=G(e.children,l,1,i)},Y=(e,t,r)=>{0===t.length?e.children=r(e.children):Q(e,t,e=>{if(J.isText(e))throw new Error("Cannot get the element at path [".concat(t,"] because it refers to a leaf node: ").concat(V.stringify(e)));return Z(Z({},e),{},{children:r(e.children)})})},ee=(e,t,r)=>Q(e,t,e=>{if(!J.isText(e))throw new Error("Cannot get the leaf node at path [".concat(t,"] because it refers to a non-leaf node: ").concat(V.stringify(e)));return r(e)});function te(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function re(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?te(Object(r),!0).forEach(function(t){m(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):te(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}var ne={transform(e,t){var r=!1;switch(t.type){case"insert_node":var{path:n,node:o}=t;Y(e,h.parent(n),e=>{var t=n[n.length-1];if(t>e.length)throw new Error('Cannot apply an "insert_node" operation at path ['.concat(n,"] because the destination is past the end of the node."));return K(e,t,o)}),r=!0;break;case"insert_text":var{path:i,offset:a,text:s}=t;if(0===s.length)break;ee(e,i,e=>{var t=e.text.slice(0,a),r=e.text.slice(a);return re(re({},e),{},{text:t+s+r})}),r=!0;break;case"merge_node":var{path:l}=t,c=l[l.length-1],d=h.previous(l),p=d[d.length-1];Y(e,h.parent(l),e=>{var t,r=e[c],n=e[p];if(J.isText(r)&&J.isText(n))t=re(re({},n),{},{text:n.text+r.text});else{if(J.isText(r)||J.isText(n))throw new Error('Cannot apply a "merge_node" operation at path ['.concat(l,"] to nodes of different interfaces: ").concat(V.stringify(r)," ").concat(V.stringify(n)));t=re(re({},n),{},{children:n.children.concat(r.children)})}return G(e,p,2,t)}),r=!0;break;case"move_node":var{path:f,newPath:u}=t,g=f[f.length-1];if(h.isAncestor(f,u))throw new Error("Cannot move a path [".concat(f,"] to new path [").concat(u,"] because the destination is inside itself."));var v=L.get(e,f);Y(e,h.parent(f),e=>H(e,g,1));var m=h.transform(f,t),y=m[m.length-1];Y(e,h.parent(m),e=>K(e,y,v)),r=!0;break;case"remove_node":var{path:b}=t,O=b[b.length-1];if(Y(e,h.parent(b),e=>H(e,O,1)),e.selection){var x=re({},e.selection);for(var[k,P]of w.points(x)){var j=z.transform(k,t);if(null!=x&&null!=j)x[P]=j;else{var E=void 0,N=void 0;for(var[T,B]of L.texts(e)){if(-1!==h.compare(B,b)){N=[T,B];break}E=[T,B]}var _=!1;E&&N&&(_=!h.isSibling(E[1],b)&&(!!h.equals(N[1],b)||h.common(E[1],b).length<h.common(N[1],b).length)),E&&!_?x[P]={path:E[1],offset:E[0].text.length}:N?x[P]={path:N[1],offset:0}:x=null}}x&&w.equals(x,e.selection)||(e.selection=x)}break;case"remove_text":var{path:A,offset:S,text:D}=t;if(0===D.length)break;ee(e,A,e=>{var t=e.text.slice(0,S),r=e.text.slice(S+D.length);return re(re({},e),{},{text:t+r})}),r=!0;break;case"set_node":var{path:$,properties:q,newProperties:C}=t;if(0===$.length)throw new Error("Cannot set properties on the root node!");Q(e,$,e=>{var t=re({},e);for(var r in C){if("children"===r||"text"===r)throw new Error('Cannot set the "'.concat(r,'" property of nodes!'));var n=C[r];null==n?delete t[r]:t[r]=n}for(var o in q)C.hasOwnProperty(o)||delete t[o];return t});break;case"set_selection":var{newProperties:R}=t;if(null==R){e.selection=null;break}if(null==e.selection){if(!w.isRange(R))throw new Error('Cannot apply an incomplete "set_selection" operation properties '.concat(V.stringify(R)," when there is no current selection."));e.selection=re({},R);break}var I=re({},e.selection);for(var M in R){var F=R[M];if(null==F){if("anchor"===M||"focus"===M)throw new Error('Cannot remove the "'.concat(M,'" selection property'));delete I[M]}else I[M]=F}e.selection=I;break;case"split_node":var{path:W,position:U,properties:X}=t,Z=W[W.length-1];if(0===W.length)throw new Error('Cannot apply a "split_node" operation at path ['.concat(W,"] because the root node cannot be split."));Y(e,h.parent(W),e=>{var t,r,n=e[Z];if(J.isText(n)){var o=n.text.slice(0,U),i=n.text.slice(U);t=re(re({},n),{},{text:o}),r=re(re({},X),{},{text:i})}else{var a=n.children.slice(0,U),s=n.children.slice(U);t=re(re({},n),{},{children:a}),r=re(re({},X),{},{children:s})}return G(e,Z,1,t,r)}),r=!0}if(r&&e.selection){var te=re({},e.selection);for(var[ne,oe]of w.points(te))te[oe]=z.transform(ne,t);w.equals(te,e.selection)||(e.selection=te)}}},oe={insertNodes(e,t,r){e.insertNodes(t,r)},liftNodes(e,t){e.liftNodes(t)},mergeNodes(e,t){e.mergeNodes(t)},moveNodes(e,t){e.moveNodes(t)},removeNodes(e,t){e.removeNodes(t)},setNodes(e,t,r){e.setNodes(t,r)},splitNodes(e,t){e.splitNodes(t)},unsetNodes(e,t,r){e.unsetNodes(t,r)},unwrapNodes(e,t){e.unwrapNodes(t)},wrapNodes(e,t,r){e.wrapNodes(t,r)}},ie={collapse(e,t){e.collapse(t)},deselect(e){e.deselect()},move(e,t){e.move(t)},select(e,t){e.select(t)},setPoint(e,t,r){e.setPoint(t,r)},setSelection(e,t){e.setSelection(t)}},ae={delete(e,t){e.delete(t)},insertFragment(e,t,r){e.insertFragment(t,r)},insertText(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};q.withoutNormalizing(e,()=>{var{voids:n=!1}=r,{at:o=$(e)}=r;if(h.isPath(o)&&(o=q.range(e,o)),w.isRange(o))if(w.isCollapsed(o))o=o.anchor;else{var i=w.end(o);if(!n&&q.void(e,{at:i}))return;var a=w.start(o),s=q.pointRef(e,a),l=q.pointRef(e,i);ce.delete(e,{at:o,voids:n});var c=s.unref(),d=l.unref();o=c||d,ce.setSelection(e,{anchor:o,focus:o})}if(!(!n&&q.void(e,{at:o})||q.elementReadOnly(e,{at:o}))){var{path:p,offset:f}=o;t.length>0&&e.apply({type:"insert_text",path:p,offset:f,text:t})}})}};function se(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function le(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?se(Object(r),!0).forEach(function(t){m(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):se(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}var ce=le(le(le(le({},ne),oe),ie),ae);function de(e,i,{hotkeys:a,defaultBlock:s}){return l=>{q.withoutNormalizing(i,()=>{var c;const d=t.getBlock(e,{at:e.path.current});if(!i.selection||!d)return;const p=i.selection,{anchor:f}=p;if(a.isCmdEnter(l)){const t=q.above(i,{at:f,match:e=>!q.isEditor(e)&&k.isElement(e)&&"todo-list"===e.type,mode:"highest"});if(!t)return;const[n]=t,o=(null===(c=n.props)||void 0===c?void 0:c.checked)||!1;return void r.updateElement(e,{blockId:d.id,type:"todo-list",props:{checked:!o}})}if(a.isEnter(l)){l.preventDefault();const t=q.above(i,{at:f,match:e=>!q.isEditor(e)&&k.isElement(e)&&("numbered-list"===e.type||"bulleted-list"===e.type||"todo-list"===e.type),mode:"highest"});if(!t)return;const[r,a]=t,c=q.isEnd(i,f,a),p=q.isStart(i,f,a),u=q.string(i,a),h=0===d.meta.depth,g=u.trim().length>0;if(!g){if(h){const t=d.meta.order;return void e.batchOperations(()=>{e.deleteBlock({blockId:d.id}),e.insertBlock(s.type,{at:t,focus:!0,blockData:s})})}return void e.decreaseBlockDepth({blockId:d.id})}if(p){const t=n({type:d.type,meta:{order:d.meta.order,depth:d.meta.depth},value:[o({type:r.type,props:{nodeType:"block"}})]});return e.insertBlock(t.type,{at:d.meta.order,focus:!1,blockData:t}),void e.setPath({current:t.meta.order+1})}if(g&&!p&&!c)return void e.splitBlock({focus:!0});const v=n({type:d.type,meta:{order:d.meta.order+1,depth:d.meta.depth},value:[o({type:r.type,props:{nodeType:"block"}})]});e.insertBlock(v.type,{at:d.meta.order+1,focus:!0,blockData:v})}})}}function pe(e,t,r){const n=[],o="number"==typeof r.depth?r.depth:0;if("UL"===t.nodeName||"OL"===t.nodeName){const s=Array.from(t.children).filter(e=>"LI"===e.nodeName),l=s.some(e=>{const t=e.querySelector('input[type="checkbox"]'),r=e.textContent||"",n=/\[\s*[xX\s]?\s*\]/.test(r);return t||n});if(l&&"TodoList"!==r.type)return n;if(!l&&"TodoList"===r.type)return n;s.forEach(t=>{const s=t.textContent||"";let l=null;if("TodoList"===r.type){const n=t.querySelector('input[type="checkbox"]'),c=n?n.checked:/\[\s*[xX]\s*\]/.test(s);l={id:i(),type:"TodoList",value:[{id:i(),type:"todo-list",children:a(e,t.childNodes),props:{nodeType:"block",checked:c}}],meta:{order:0,depth:o,align:r.align}}}else{const n="NumberedList"===r.type?"numbered-list":"bulleted-list",s=Array.from(t.childNodes).reduce((t,r)=>{var n;if(r.nodeType===Node.TEXT_NODE){const e=null===(n=r.textContent)||void 0===n?void 0:n.trim();return e?[...t,{text:e}]:t}if(r.nodeType===Node.ELEMENT_NODE){const n=r;return n.nodeName,[...t,...a(e,n.childNodes)]}return t},[]);l={id:i(),type:r.type,value:[{id:i(),type:n,children:s.length>0?s:[{text:""}],props:{nodeType:"block"}}],meta:{order:0,depth:o,align:r.align}}}if(l){const e=fe(l.value).map(e=>k.isElement(e)?e.children.length>0?e:Object.assign(Object.assign({},e),{children:[{text:""}]}):e),t=Object.assign(Object.assign({},l),{value:e});n.push(t)}const c=Array.from(t.children).filter(e=>"UL"===e.nodeName||"OL"===e.nodeName);c.length>0&&c.forEach(t=>{const i=pe(e,t,Object.assign(Object.assign({},r),{depth:o+1}));n.push(...i)})})}return n}function fe(e){return e.map(e=>{if("children"in e)return Object.assign(Object.assign({},e),{children:fe(e.children)});if("text"in e){const t=e.text.replace(/\[\s*[xX\s]?\s*\]/,"").replace(/\u00a0/g," ");return t?Object.assign(Object.assign({},e),{text:t}):null}return e}).filter(Boolean)}const ue=new s({type:"BulletedList",elements:e("bulleted-list",{render:t=>e("ul",Object.assign({},t.attributes,{children:e("li",{children:t.children})}))}),options:{display:{title:"Bulleted List",description:"Create bullet list"},shortcuts:["-"]},events:{onKeyDown:de},commands:p,parsers:{html:{deserialize:{nodeNames:["UL"],parse(e,t){if("UL"===e.nodeName){const r=e.getAttribute("data-meta-align")||"left",n=parseInt(e.getAttribute("data-meta-depth")||"0",10),o=pe(t,e,{type:"BulletedList",depth:n,align:r});if(o.length>0)return o}}},serialize:(e,t,r)=>{const{align:n="left",depth:o=0}=r||{};return`<ul data-meta-align="${n}" data-meta-depth="${o}" style="margin-left: ${20*o}px; text-align: ${n}"><li>${l(e.children)}</li></ul>`}},markdown:{serialize:(e,t,r)=>{const{depth:n=0}=r||{};return`${" ".repeat(n)}- ${c(e.children)}`}},email:{serialize:(e,t,r)=>{const{align:n="left",depth:o=0}=r||{};return`\n <table style="width:100%;">\n <tbody style="width:100%;">\n <tr>\n <td>\n <ul data-meta-align="${n}" data-meta-depth="${o}" style="margin-left: ${20*o}px; text-align: ${n}; \n font-size: 16px;\n line-height: 1.75rem;\n padding-bottom: 2px;\n padding-left: 1rem;\n padding-top: 2px;\n margin: 0;\n "><li style="margin: 0">${l(e.children)}</li></ul>\n </td>\n </tr>\n </tbody>\n </table>\n `}}}}),he=new s({type:"NumberedList",elements:e("numbered-list",{render:t=>e("ol",Object.assign({},t.attributes,{children:e("li",{children:t.children})}))}),options:{display:{title:"Numbered List",description:"Create list with numbering"},shortcuts:["1."]},events:{onKeyDown:de},commands:f,parsers:{html:{deserialize:{nodeNames:["OL"],parse(e,t){if("OL"===e.nodeName){const r=e.getAttribute("data-meta-align")||"left",n=parseInt(e.getAttribute("data-meta-depth")||"0",10),o=pe(t,e,{type:"NumberedList",depth:n,align:r});if(o.length>0)return o}}},serialize:(e,t,r)=>{const{align:n="left",depth:o=0}=r||{};return`<ol data-meta-align="${n}" data-meta-depth="${o}" style="margin-left: ${20*o}px; text-align: ${n}"><li>${l(e.children)}</li></ol>`}},markdown:{serialize:(e,t,r)=>{const{depth:n=0}=r||{};return`${" ".repeat(n)}- ${c(e.children)}`}},email:{serialize:(e,t,r)=>{const{align:n="left",depth:o=0}=r||{};return`\n <table style="width:100%;">\n <tbody style="width:100%;">\n <tr>\n <td>\n <ol data-meta-align="${n}" data-meta-depth="${o}" style="margin-left: ${o}px; text-align: ${n}; font-size: 16px;\n line-height: 28px;\n padding-bottom: 2px;\n padding-left: 1rem;\n padding-top: 2px;\n margin: 0;\n "><li>${l(e.children)}</li></ol>\n </td>\n </tr>\n </tbody>\n </table>\n `}}}}),ge={checked:!1},ve={BulletedList:ue,NumberedList:he,TodoList:new s({type:"TodoList",elements:e("todo-list",{render:t=>e("ul",Object.assign({},t.attributes,{props:ge,style:{listStyleType:"none"}},{children:e("li",{children:t.children})}))}),options:{display:{title:"Todo List",description:"Track tasks"},shortcuts:["[]"]},events:{onKeyDown:de},commands:u,parsers:{html:{deserialize:{nodeNames:["OL","UL"],parse(e,t){if("OL"===e.nodeName||"UL"===e.nodeName){const r=e.getAttribute("data-meta-align")||"left",n=parseInt(e.getAttribute("data-meta-depth")||"0",10),o=pe(t,e,{type:"TodoList",depth:n,align:r});if(o.length>0)return o}}},serialize:(e,t,r)=>{const{align:n="left",depth:o=0}=r||{};return`<ul data-meta-align="${n}" data-meta-depth="${o}" style="margin-left: ${20*o}px; text-align: ${n}"><li>[${e.props.checked?"x":" "}] ${l(e.children)}</li></ul>`}},markdown:{serialize:(e,t,r)=>{const{depth:n=0}=r||{};return`${" ".repeat(n)}- ${e.props.checked?"[x]":"[ ]"} ${c(e.children)}`}},email:{serialize:(e,t,r)=>{const{align:n="left",depth:o=0}=r||{};return`\n <table style="width:100%;">\n <tbody style="width:100%;">\n <tr>\n <td>\n <ul data-meta-align="${n}" data-meta-depth="${o}" style="margin-left: ${20*o}px; text-align: ${n}; font-size: 16px;\n line-height: 28px;\n padding-bottom: 2px;\n padding-left: 1rem;\n padding-top: 2px;\n margin: 0;\n "><li>[${e.props.checked?"x":" "}] ${l(e.children)}</li></ul>\n </td>\n </tr>\n </tbody>\n </table>\n `}}}})};function me(e){return function(e,t){const r=Object.keys(e.children).sort((t,r)=>{const n=e.children[t],o=e.children[r];return n.meta.order-o.meta.order}),n={},o={},i=t.meta.depth;for(const a of r){const r=e.children[a],s=r.meta.depth,l=r.type;if(a===t.id)break;"NumberedList"===l&&(void 0===n[s]&&(n[s]=0),"NumberedList"!==o[s]&&(n[s]=0),n[s]+=1),o[s]=l,s<i&&Object.keys(n).forEach(e=>{Number(e)>s&&(n[e]=0,o[e]="")})}return void 0===n[i]&&(n[i]=0),"NumberedList"!==o[i]&&(n[i]=0),n[i]+=1,n[i]}(d(),e)}const ye=ve.NumberedList,be=ve.BulletedList,Oe=ve.TodoList;export{be as BulletedList,p as BulletedListCommands,ye as NumberedList,f as NumberedListCommands,Oe as TodoList,u as TodoListCommands,ve as default,me as useNumberListCount};
|
|
1
|
+
import{jsx as e}from"react/jsx-runtime";import{Blocks as t,Elements as r,buildBlockData as n,buildBlockElement as o,generateId as i,deserializeTextNodes as a,YooptaPlugin as s,serializeTextNodes as l,serializeTextNodesIntoMarkdown as c,useYooptaEditor as d}from"@yoopta/editor";const p={buildBulletedListElements:(e,t)=>{var r;return e.y("bulleted-list",{children:[e.y.text(null!==(r=null==t?void 0:t.text)&&void 0!==r?r:"")]})},insertBulletedList:(e,r={})=>{const{at:n,focus:o,text:i}=r,a=p.buildBulletedListElements(e,{text:i}),s=t.buildBlockData({value:[a],type:"BulletedList"});t.insertBlock(e,s.type,{at:n,focus:o,blockData:s})},deleteBulletedList:(e,r)=>{t.deleteBlock(e,{blockId:r})}},f={buildNumberedListElements:(e,t)=>{var r;return e.y("numbered-list",{children:[e.y.text(null!==(r=null==t?void 0:t.text)&&void 0!==r?r:"")]})},insertNumberedList:(e,r={})=>{const{at:n,focus:o,text:i}=r,a=f.buildNumberedListElements(e,{text:i}),s=t.buildBlockData({value:[a],type:"NumberedList"});t.insertBlock(e,s.type,{at:n,focus:o,blockData:s})},deleteNumberedList:(e,r)=>{t.deleteBlock(e,{blockId:r})}},u={buildTodoListElements:(e,t)=>{var r,n,o;return e.y("todo-list",{props:{checked:null!==(n=null===(r=null==t?void 0:t.props)||void 0===r?void 0:r.checked)&&void 0!==n&&n},children:[e.y.text(null!==(o=null==t?void 0:t.text)&&void 0!==o?o:"")]})},insertTodoList:(e,r={})=>{const{at:n,focus:o,text:i,props:a}=r,s=u.buildTodoListElements(e,{text:i,props:a}),l=t.buildBlockData({value:[s],type:"TodoList"});t.insertBlock(e,l.type,{at:n,focus:o,blockData:l})},deleteTodoList:(e,r)=>{t.deleteBlock(e,{blockId:r})},updateTodoList:(e,t,n)=>{"boolean"==typeof(null==n?void 0:n.checked)&&r.updateElement(e,{blockId:t,type:"todo-list",props:{checked:null==n?void 0:n.checked}})}};var h={ancestors(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{reverse:r=!1}=t,n=h.levels(e,t);return n=r?n.slice(1):n.slice(0,-1)},common(e,t){for(var r=[],n=0;n<e.length&&n<t.length;n++){var o=e[n];if(o!==t[n])break;r.push(o)}return r},compare(e,t){for(var r=Math.min(e.length,t.length),n=0;n<r;n++){if(e[n]<t[n])return-1;if(e[n]>t[n])return 1}return 0},endsAfter(e,t){var r=e.length-1,n=e.slice(0,r),o=t.slice(0,r),i=e[r],a=t[r];return h.equals(n,o)&&i>a},endsAt(e,t){var r=e.length,n=e.slice(0,r),o=t.slice(0,r);return h.equals(n,o)},endsBefore(e,t){var r=e.length-1,n=e.slice(0,r),o=t.slice(0,r),i=e[r],a=t[r];return h.equals(n,o)&&i<a},equals:(e,t)=>e.length===t.length&&e.every((e,r)=>e===t[r]),hasPrevious:e=>e[e.length-1]>0,isAfter:(e,t)=>1===h.compare(e,t),isAncestor:(e,t)=>e.length<t.length&&0===h.compare(e,t),isBefore:(e,t)=>-1===h.compare(e,t),isChild:(e,t)=>e.length===t.length+1&&0===h.compare(e,t),isCommon:(e,t)=>e.length<=t.length&&0===h.compare(e,t),isDescendant:(e,t)=>e.length>t.length&&0===h.compare(e,t),isParent:(e,t)=>e.length+1===t.length&&0===h.compare(e,t),isPath:e=>Array.isArray(e)&&(0===e.length||"number"==typeof e[0]),isSibling(e,t){if(e.length!==t.length)return!1;var r=e.slice(0,-1),n=t.slice(0,-1);return e[e.length-1]!==t[t.length-1]&&h.equals(r,n)},levels(e){for(var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{reverse:r=!1}=t,n=[],o=0;o<=e.length;o++)n.push(e.slice(0,o));return r&&n.reverse(),n},next(e){if(0===e.length)throw new Error("Cannot get the next path of a root path [".concat(e,"], because it has no next index."));var t=e[e.length-1];return e.slice(0,-1).concat(t+1)},operationCanTransformPath(e){switch(e.type){case"insert_node":case"remove_node":case"merge_node":case"split_node":case"move_node":return!0;default:return!1}},parent(e){if(0===e.length)throw new Error("Cannot get the parent path of the root path [".concat(e,"]."));return e.slice(0,-1)},previous(e){if(0===e.length)throw new Error("Cannot get the previous path of a root path [".concat(e,"], because it has no previous index."));var t=e[e.length-1];if(t<=0)throw new Error("Cannot get the previous path of a first child path [".concat(e,"] because it would result in a negative index."));return e.slice(0,-1).concat(t-1)},relative(e,t){if(!h.isAncestor(t,e)&&!h.equals(e,t))throw new Error("Cannot get the relative path of [".concat(e,"] inside ancestor [").concat(t,"], because it is not above or equal to the path."));return e.slice(t.length)},transform(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(!e)return null;var n=[...e],{affinity:o="forward"}=r;if(0===e.length)return n;switch(t.type){case"insert_node":var{path:i}=t;(h.equals(i,n)||h.endsBefore(i,n)||h.isAncestor(i,n))&&(n[i.length-1]+=1);break;case"remove_node":var{path:a}=t;if(h.equals(a,n)||h.isAncestor(a,n))return null;h.endsBefore(a,n)&&(n[a.length-1]-=1);break;case"merge_node":var{path:s,position:l}=t;h.equals(s,n)||h.endsBefore(s,n)?n[s.length-1]-=1:h.isAncestor(s,n)&&(n[s.length-1]-=1,n[s.length]+=l);break;case"split_node":var{path:c,position:d}=t;if(h.equals(c,n)){if("forward"===o)n[n.length-1]+=1;else if("backward"!==o)return null}else h.endsBefore(c,n)?n[c.length-1]+=1:h.isAncestor(c,n)&&e[c.length]>=d&&(n[c.length-1]+=1,n[c.length]-=d);break;case"move_node":var{path:p,newPath:f}=t;if(h.equals(p,f))return n;if(h.isAncestor(p,n)||h.equals(p,n)){var u=f.slice();return h.endsBefore(p,f)&&p.length<f.length&&(u[p.length-1]-=1),u.concat(n.slice(p.length))}h.isSibling(p,f)&&(h.isAncestor(f,n)||h.equals(f,n))?h.endsBefore(p,n)?n[p.length-1]-=1:n[p.length-1]+=1:h.endsBefore(f,n)||h.equals(f,n)||h.isAncestor(f,n)?(h.endsBefore(p,n)&&(n[p.length-1]-=1),n[f.length-1]+=1):h.endsBefore(p,n)&&(h.equals(f,n)&&(n[f.length-1]+=1),n[p.length-1]-=1)}return n}};function g(e){return g="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},g(e)}function v(e){var t=function(e,t){if("object"!==g(e)||null===e)return e;var r=e[Symbol.toPrimitive];if(void 0!==r){var n=r.call(e,t||"default");if("object"!==g(n))return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return("string"===t?String:Number)(e)}(e,"string");return"symbol"===g(t)?t:String(t)}function m(e,t,r){return(t=v(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function y(e,t){if(null==e)return{};var r,n,o=function(e,t){if(null==e)return{};var r,n,o={},i=Object.keys(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||(o[r]=e[r]);return o}(e,t);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(e);for(n=0;n<i.length;n++)r=i[n],t.indexOf(r)>=0||Object.prototype.propertyIsEnumerable.call(e,r)&&(o[r]=e[r])}return o}var b=["anchor","focus"];function O(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}var w={edges(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{reverse:r=!1}=t,{anchor:n,focus:o}=e;return w.isBackward(e)===r?[n,o]:[o,n]},end(e){var[,t]=w.edges(e);return t},equals:(e,t)=>z.equals(e.anchor,t.anchor)&&z.equals(e.focus,t.focus),surrounds(e,t){var r=w.intersection(e,t);return!!r&&w.equals(r,t)},includes(e,t){if(w.isRange(t)){if(w.includes(e,t.anchor)||w.includes(e,t.focus))return!0;var[r,n]=w.edges(e),[o,i]=w.edges(t);return z.isBefore(r,o)&&z.isAfter(n,i)}var[a,s]=w.edges(e),l=!1,c=!1;return z.isPoint(t)?(l=z.compare(t,a)>=0,c=z.compare(t,s)<=0):(l=h.compare(t,a.path)>=0,c=h.compare(t,s.path)<=0),l&&c},intersection(e,t){var r=y(e,b),[n,o]=w.edges(e),[i,a]=w.edges(t),s=z.isBefore(n,i)?i:n,l=z.isBefore(o,a)?o:a;return z.isBefore(l,s)?null:function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?O(Object(r),!0).forEach(function(t){m(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):O(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}({anchor:s,focus:l},r)},isBackward(e){var{anchor:t,focus:r}=e;return z.isAfter(t,r)},isCollapsed(e){var{anchor:t,focus:r}=e;return z.equals(t,r)},isExpanded:e=>!w.isCollapsed(e),isForward:e=>!w.isBackward(e),isRange:e=>S(e)&&z.isPoint(e.anchor)&&z.isPoint(e.focus),*points(e){yield[e.anchor,"anchor"],yield[e.focus,"focus"]},start(e){var[t]=w.edges(e);return t},transform(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(null===e)return null;var n,o,{affinity:i="inward"}=r;if("inward"===i){var a=w.isCollapsed(e);w.isForward(e)?(n="forward",o=a?n:"backward"):(n="backward",o=a?n:"forward")}else"outward"===i?w.isForward(e)?(n="backward",o="forward"):(n="forward",o="backward"):(n=i,o=i);var s=z.transform(e.anchor,t,{affinity:n}),l=z.transform(e.focus,t,{affinity:o});return s&&l?{anchor:s,focus:l}:null}},x=function(e){var{deep:t=!1}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return!!S(e)&&("function"!=typeof e.apply&&(t?L.isNodeList(e.children):Array.isArray(e.children)))},k={isAncestor(e){var{deep:t=!1}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return S(e)&&L.isNodeList(e.children,{deep:t})},isElement:x,isElementList(e){var{deep:t=!1}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return Array.isArray(e)&&e.every(e=>k.isElement(e,{deep:t}))},isElementProps:e=>void 0!==e.children,isElementType:function(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"type";return x(e)&&e[r]===t},matches(e,t){for(var r in t)if("children"!==r&&e[r]!==t[r])return!1;return!0}},P=["children"],j=["text"];function E(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function N(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?E(Object(r),!0).forEach(function(t){m(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):E(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}var L={ancestor(e,t){var r=L.get(e,t);if(J.isText(r))throw new Error("Cannot get the ancestor node at path [".concat(t,"] because it refers to a text node instead: ").concat(V.stringify(r)));return r},ancestors(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return function*(){for(var n of h.ancestors(t,r)){var o=[L.ancestor(e,n),n];yield o}}()},child(e,t){if(J.isText(e))throw new Error("Cannot get the child of a text node: ".concat(V.stringify(e)));var r=e.children[t];if(null==r)throw new Error("Cannot get child at index `".concat(t,"` in node: ").concat(V.stringify(e)));return r},children(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return function*(){for(var{reverse:n=!1}=r,o=L.ancestor(e,t),{children:i}=o,a=n?i.length-1:0;n?a>=0:a<i.length;){var s=L.child(o,a),l=t.concat(a);yield[s,l],a=n?a-1:a+1}}()},common(e,t,r){var n=h.common(t,r);return[L.get(e,n),n]},descendant(e,t){var r=L.get(e,t);if(q.isEditor(r))throw new Error("Cannot get the descendant node at path [".concat(t,"] because it refers to the root editor node instead: ").concat(V.stringify(r)));return r},descendants(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return function*(){for(var[r,n]of L.nodes(e,t))0!==n.length&&(yield[r,n])}()},elements(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return function*(){for(var[r,n]of L.nodes(e,t))k.isElement(r)&&(yield[r,n])}()},extractProps:e=>k.isAncestor(e)?y(e,P):y(e,j),first(e,t){for(var r=t.slice(),n=L.get(e,r);n&&!J.isText(n)&&0!==n.children.length;)n=n.children[0],r.push(0);return[n,r]},fragment(e,t){var r={children:e.children},[n,o]=w.edges(t),i=L.nodes(r,{reverse:!0,pass:e=>{var[,r]=e;return!w.includes(t,r)}}),a=function(){if(!w.includes(t,s)){var e=s[s.length-1];Y(r,h.parent(s),t=>H(t,e,1))}h.equals(s,o.path)&&ee(r,s,e=>{var t=e.text.slice(0,o.offset);return N(N({},e),{},{text:t})}),h.equals(s,n.path)&&ee(r,s,e=>{var t=e.text.slice(n.offset);return N(N({},e),{},{text:t})})};for(var[,s]of i)a();return r.children},get(e,t){var r=L.getIf(e,t);if(void 0===r)throw new Error("Cannot find a descendant at path [".concat(t,"] in node: ").concat(V.stringify(e)));return r},getIf(e,t){for(var r=e,n=0;n<t.length;n++){var o=t[n];if(J.isText(r)||!r.children[o])return;r=r.children[o]}return r},has(e,t){for(var r=e,n=0;n<t.length;n++){var o=t[n];if(J.isText(r)||!r.children[o])return!1;r=r.children[o]}return!0},isNode(e){var{deep:t=!1}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return J.isText(e)||k.isElement(e,{deep:t})||q.isEditor(e,{deep:t})},isNodeList(e){var{deep:t=!1}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return Array.isArray(e)&&e.every(e=>L.isNode(e,{deep:t}))},last(e,t){for(var r=t.slice(),n=L.get(e,r);n&&!J.isText(n)&&0!==n.children.length;){var o=n.children.length-1;n=n.children[o],r.push(o)}return[n,r]},leaf(e,t){var r=L.get(e,t);if(!J.isText(r))throw new Error("Cannot get the leaf node at path [".concat(t,"] because it refers to a non-leaf node: ").concat(V.stringify(r)));return r},levels(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};return function*(){for(var n of h.levels(t,r)){var o=L.get(e,n);yield[o,n]}}()},matches:(e,t)=>k.isElement(e)&&k.isElementProps(t)&&k.matches(e,t)||J.isText(e)&&J.isTextProps(t)&&J.matches(e,t),nodes(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return function*(){for(var{pass:r,reverse:n=!1}=t,{from:o=[],to:i}=t,a=new Set,s=[],l=e;!i||!(n?h.isBefore(s,i):h.isAfter(s,i));)if(a.has(l)||(yield[l,s]),a.has(l)||J.isText(l)||0===l.children.length||null!=r&&!1!==r([l,s])){if(0===s.length)break;if(!n){var c=h.next(s);if(L.has(e,c)){s=c,l=L.get(e,s);continue}}if(n&&0!==s[s.length-1])s=h.previous(s),l=L.get(e,s);else s=h.parent(s),l=L.get(e,s),a.add(l)}else{a.add(l);var d=n?l.children.length-1:0;h.isAncestor(s,o)&&(d=o[s.length]),s=s.concat(d),l=L.get(e,s)}}()},parent(e,t){var r=h.parent(t),n=L.get(e,r);if(J.isText(n))throw new Error("Cannot get the parent of path [".concat(t,"] because it does not exist in the root."));return n},string:e=>J.isText(e)?e.text:e.children.map(L.string).join(""),texts(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return function*(){for(var[r,n]of L.nodes(e,t))J.isText(r)&&(yield[r,n])}()}};function T(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function B(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?T(Object(r),!0).forEach(function(t){m(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):T(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}var _,A={isNodeOperation:e=>A.isOperation(e)&&e.type.endsWith("_node"),isOperation(e){if(!S(e))return!1;switch(e.type){case"insert_node":case"remove_node":return h.isPath(e.path)&&L.isNode(e.node);case"insert_text":case"remove_text":return"number"==typeof e.offset&&"string"==typeof e.text&&h.isPath(e.path);case"merge_node":return"number"==typeof e.position&&h.isPath(e.path)&&S(e.properties);case"move_node":return h.isPath(e.path)&&h.isPath(e.newPath);case"set_node":return h.isPath(e.path)&&S(e.properties)&&S(e.newProperties);case"set_selection":return null===e.properties&&w.isRange(e.newProperties)||null===e.newProperties&&w.isRange(e.properties)||S(e.properties)&&S(e.newProperties);case"split_node":return h.isPath(e.path)&&"number"==typeof e.position&&S(e.properties);default:return!1}},isOperationList:e=>Array.isArray(e)&&e.every(e=>A.isOperation(e)),isSelectionOperation:e=>A.isOperation(e)&&e.type.endsWith("_selection"),isTextOperation:e=>A.isOperation(e)&&e.type.endsWith("_text"),inverse(e){switch(e.type){case"insert_node":return B(B({},e),{},{type:"remove_node"});case"insert_text":return B(B({},e),{},{type:"remove_text"});case"merge_node":return B(B({},e),{},{type:"split_node",path:h.previous(e.path)});case"move_node":var{newPath:t,path:r}=e;if(h.equals(t,r))return e;if(h.isSibling(r,t))return B(B({},e),{},{path:t,newPath:r});var n=h.transform(r,e),o=h.transform(h.next(r),e);return B(B({},e),{},{path:n,newPath:o});case"remove_node":return B(B({},e),{},{type:"insert_node"});case"remove_text":return B(B({},e),{},{type:"insert_text"});case"set_node":var{properties:i,newProperties:a}=e;return B(B({},e),{},{properties:a,newProperties:i});case"set_selection":var{properties:s,newProperties:l}=e;return B(B({},e),{},null==s?{properties:l,newProperties:null}:null==l?{properties:null,newProperties:s}:{properties:l,newProperties:s});case"split_node":return B(B({},e),{},{type:"merge_node",path:h.next(e.path)})}}},S=e=>"object"==typeof e&&null!==e,D=(e,t)=>{for(var r in e){var n=e[r],o=t[r];if(Array.isArray(n)&&Array.isArray(o)){if(n.length!==o.length)return!1;for(var i=0;i<n.length;i++)if(n[i]!==o[i])return!1}else if(S(n)&&S(o)){if(!D(n,o))return!1}else if(n!==o)return!1}for(var a in t)if(void 0===e[a]&&void 0!==t[a])return!1;return!0},$=e=>e.selection?e.selection:e.children.length>0?q.end(e,[]):[0];!function(e){e[e.None=0]="None",e[e.Extend=1]="Extend",e[e.ZWJ=2]="ZWJ",e[e.RI=4]="RI",e[e.Prepend=8]="Prepend",e[e.SpacingMark=16]="SpacingMark",e[e.L=32]="L",e[e.V=64]="V",e[e.T=128]="T",e[e.LV=256]="LV",e[e.LVT=512]="LVT",e[e.ExtPict=1024]="ExtPict",e[e.Any=2048]="Any"}(_||(_={})),_.L,_.L,_.V,_.LV,_.LVT,_.LV,_.V,_.V,_.T,_.LVT,_.T,_.T,_.Any,_.Extend,_.ZWJ,_.Any,_.SpacingMark,_.Prepend,_.Any,_.ZWJ,_.ExtPict,_.RI,_.RI;var q={above:(e,t)=>e.above(t),addMark(e,t,r){e.addMark(t,r)},after:(e,t,r)=>e.after(t,r),before:(e,t,r)=>e.before(t,r),deleteBackward(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{unit:r="character"}=t;e.deleteBackward(r)},deleteForward(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},{unit:r="character"}=t;e.deleteForward(r)},deleteFragment(e,t){e.deleteFragment(t)},edges:(e,t)=>e.edges(t),elementReadOnly(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e.elementReadOnly(t)},end:(e,t)=>e.end(t),first:(e,t)=>e.first(t),fragment:(e,t)=>e.fragment(t),hasBlocks:(e,t)=>e.hasBlocks(t),hasInlines:(e,t)=>e.hasInlines(t),hasPath:(e,t)=>e.hasPath(t),hasTexts:(e,t)=>e.hasTexts(t),insertBreak(e){e.insertBreak()},insertFragment(e,t,r){e.insertFragment(t,r)},insertNode(e,t){e.insertNode(t)},insertSoftBreak(e){e.insertSoftBreak()},insertText(e,t){e.insertText(t)},isBlock:(e,t)=>e.isBlock(t),isEdge:(e,t,r)=>e.isEdge(t,r),isEditor:e=>function(e){var{deep:t=!1}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!S(e))return!1;var r="function"==typeof e.addMark&&"function"==typeof e.apply&&"function"==typeof e.deleteFragment&&"function"==typeof e.insertBreak&&"function"==typeof e.insertSoftBreak&&"function"==typeof e.insertFragment&&"function"==typeof e.insertNode&&"function"==typeof e.insertText&&"function"==typeof e.isElementReadOnly&&"function"==typeof e.isInline&&"function"==typeof e.isSelectable&&"function"==typeof e.isVoid&&"function"==typeof e.normalizeNode&&"function"==typeof e.onChange&&"function"==typeof e.removeMark&&"function"==typeof e.getDirtyPaths&&(null===e.marks||S(e.marks))&&(null===e.selection||w.isRange(e.selection))&&(!t||L.isNodeList(e.children))&&A.isOperationList(e.operations);return r}(e),isElementReadOnly:(e,t)=>e.isElementReadOnly(t),isEmpty:(e,t)=>e.isEmpty(t),isEnd:(e,t,r)=>e.isEnd(t,r),isInline:(e,t)=>e.isInline(t),isNormalizing:e=>e.isNormalizing(),isSelectable:(e,t)=>e.isSelectable(t),isStart:(e,t,r)=>e.isStart(t,r),isVoid:(e,t)=>e.isVoid(t),last:(e,t)=>e.last(t),leaf:(e,t,r)=>e.leaf(t,r),levels:(e,t)=>e.levels(t),marks:e=>e.getMarks(),next:(e,t)=>e.next(t),node:(e,t,r)=>e.node(t,r),nodes:(e,t)=>e.nodes(t),normalize(e,t){e.normalize(t)},parent:(e,t,r)=>e.parent(t,r),path:(e,t,r)=>e.path(t,r),pathRef:(e,t,r)=>e.pathRef(t,r),pathRefs:e=>e.pathRefs(),point:(e,t,r)=>e.point(t,r),pointRef:(e,t,r)=>e.pointRef(t,r),pointRefs:e=>e.pointRefs(),positions:(e,t)=>e.positions(t),previous:(e,t)=>e.previous(t),range:(e,t,r)=>e.range(t,r),rangeRef:(e,t,r)=>e.rangeRef(t,r),rangeRefs:e=>e.rangeRefs(),removeMark(e,t){e.removeMark(t)},setNormalizing(e,t){e.setNormalizing(t)},start:(e,t)=>e.start(t),string:(e,t,r)=>e.string(t,r),unhangRange:(e,t,r)=>e.unhangRange(t,r),void:(e,t)=>e.void(t),withoutNormalizing(e,t){e.withoutNormalizing(t)},shouldMergeNodesRemovePrevNode:(e,t,r)=>e.shouldMergeNodesRemovePrevNode(t,r)};function C(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function R(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?C(Object(r),!0).forEach(function(t){m(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):C(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}var z={compare(e,t){var r=h.compare(e.path,t.path);return 0===r?e.offset<t.offset?-1:e.offset>t.offset?1:0:r},isAfter:(e,t)=>1===z.compare(e,t),isBefore:(e,t)=>-1===z.compare(e,t),equals:(e,t)=>e.offset===t.offset&&h.equals(e.path,t.path),isPoint:e=>S(e)&&"number"==typeof e.offset&&h.isPath(e.path),transform(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};if(null===e)return null;var{affinity:n="forward"}=r,{path:o,offset:i}=e;switch(t.type){case"insert_node":case"move_node":o=h.transform(o,t,r);break;case"insert_text":h.equals(t.path,o)&&(t.offset<i||t.offset===i&&"forward"===n)&&(i+=t.text.length);break;case"merge_node":h.equals(t.path,o)&&(i+=t.position),o=h.transform(o,t,r);break;case"remove_text":h.equals(t.path,o)&&t.offset<=i&&(i-=Math.min(i-t.offset,t.text.length));break;case"remove_node":if(h.equals(t.path,o)||h.isAncestor(t.path,o))return null;o=h.transform(o,t,r);break;case"split_node":if(h.equals(t.path,o)){if(t.position===i&&null==n)return null;(t.position<i||t.position===i&&"forward"===n)&&(i-=t.position,o=h.transform(o,t,R(R({},r),{},{affinity:"forward"})))}else o=h.transform(o,t,r);break;default:return e}return{path:o,offset:i}}},I=void 0,V={setScrubber(e){I=e},stringify:e=>JSON.stringify(e,I)},M=["text"],F=["anchor","focus","merge"];function W(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function U(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?W(Object(r),!0).forEach(function(t){m(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):W(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}var J={equals(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},{loose:n=!1}=r;function o(e){return y(e,M)}return D(n?o(e):e,n?o(t):t)},isText:e=>S(e)&&"string"==typeof e.text,isTextList:e=>Array.isArray(e)&&e.every(e=>J.isText(e)),isTextProps:e=>void 0!==e.text,matches(e,t){for(var r in t)if("text"!==r&&(!e.hasOwnProperty(r)||e[r]!==t[r]))return!1;return!0},decorations(e,t){var r=[{leaf:U({},e)}];for(var n of t){var{anchor:o,focus:i,merge:a}=n,s=y(n,F),[l,c]=w.edges(n),d=[],p=0,f=l.offset,u=c.offset,h=null!=a?a:Object.assign;for(var{leaf:g}of r){var{length:v}=g.text,m=p;if(p+=v,f<=m&&p<=u)h(g,s),d.push({leaf:g});else if(f!==u&&(f===p||u===m)||f>p||u<m||u===m&&0!==m)d.push({leaf:g});else{var b=g,O=void 0,x=void 0;if(u<p){var k=u-m;x={leaf:U(U({},b),{},{text:b.text.slice(k)})},b=U(U({},b),{},{text:b.text.slice(0,k)})}if(f>m){var P=f-m;O={leaf:U(U({},b),{},{text:b.text.slice(0,P)})},b=U(U({},b),{},{text:b.text.slice(P)})}h(b,s),O&&d.push(O),d.push({leaf:b}),x&&d.push(x)}}r=d}if(r.length>1){var j=0;for(var[E,N]of r.entries()){var L=j,T=L+N.leaf.text.length,B={start:L,end:T};0===E&&(B.isFirst=!0),E===r.length-1&&(B.isLast=!0),N.position=B,j=T}}return r}};function X(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function Z(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?X(Object(r),!0).forEach(function(t){m(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):X(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}var K=function(e,t){for(var r=arguments.length,n=new Array(r>2?r-2:0),o=2;o<r;o++)n[o-2]=arguments[o];return[...e.slice(0,t),...n,...e.slice(t)]},G=function(e,t,r){for(var n=arguments.length,o=new Array(n>3?n-3:0),i=3;i<n;i++)o[i-3]=arguments[i];return[...e.slice(0,t),...o,...e.slice(t+r)]},H=G,Q=(e,t,r)=>{if(0===t.length)throw new Error("Cannot modify the editor");for(var n=L.get(e,t),o=t.slice(),i=r(n);o.length>1;){var a=o.pop(),s=L.get(e,o);i=Z(Z({},s),{},{children:G(s.children,a,1,i)})}var l=o.pop();e.children=G(e.children,l,1,i)},Y=(e,t,r)=>{0===t.length?e.children=r(e.children):Q(e,t,e=>{if(J.isText(e))throw new Error("Cannot get the element at path [".concat(t,"] because it refers to a leaf node: ").concat(V.stringify(e)));return Z(Z({},e),{},{children:r(e.children)})})},ee=(e,t,r)=>Q(e,t,e=>{if(!J.isText(e))throw new Error("Cannot get the leaf node at path [".concat(t,"] because it refers to a non-leaf node: ").concat(V.stringify(e)));return r(e)});function te(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function re(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?te(Object(r),!0).forEach(function(t){m(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):te(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}var ne={transform(e,t){var r=!1;switch(t.type){case"insert_node":var{path:n,node:o}=t;Y(e,h.parent(n),e=>{var t=n[n.length-1];if(t>e.length)throw new Error('Cannot apply an "insert_node" operation at path ['.concat(n,"] because the destination is past the end of the node."));return K(e,t,o)}),r=!0;break;case"insert_text":var{path:i,offset:a,text:s}=t;if(0===s.length)break;ee(e,i,e=>{var t=e.text.slice(0,a),r=e.text.slice(a);return re(re({},e),{},{text:t+s+r})}),r=!0;break;case"merge_node":var{path:l}=t,c=l[l.length-1],d=h.previous(l),p=d[d.length-1];Y(e,h.parent(l),e=>{var t,r=e[c],n=e[p];if(J.isText(r)&&J.isText(n))t=re(re({},n),{},{text:n.text+r.text});else{if(J.isText(r)||J.isText(n))throw new Error('Cannot apply a "merge_node" operation at path ['.concat(l,"] to nodes of different interfaces: ").concat(V.stringify(r)," ").concat(V.stringify(n)));t=re(re({},n),{},{children:n.children.concat(r.children)})}return G(e,p,2,t)}),r=!0;break;case"move_node":var{path:f,newPath:u}=t,g=f[f.length-1];if(h.isAncestor(f,u))throw new Error("Cannot move a path [".concat(f,"] to new path [").concat(u,"] because the destination is inside itself."));var v=L.get(e,f);Y(e,h.parent(f),e=>H(e,g,1));var m=h.transform(f,t),y=m[m.length-1];Y(e,h.parent(m),e=>K(e,y,v)),r=!0;break;case"remove_node":var{path:b}=t,O=b[b.length-1];if(Y(e,h.parent(b),e=>H(e,O,1)),e.selection){var x=re({},e.selection);for(var[k,P]of w.points(x)){var j=z.transform(k,t);if(null!=x&&null!=j)x[P]=j;else{var E=void 0,N=void 0;for(var[T,B]of L.texts(e)){if(-1!==h.compare(B,b)){N=[T,B];break}E=[T,B]}var _=!1;E&&N&&(_=!h.isSibling(E[1],b)&&(!!h.equals(N[1],b)||h.common(E[1],b).length<h.common(N[1],b).length)),E&&!_?x[P]={path:E[1],offset:E[0].text.length}:N?x[P]={path:N[1],offset:0}:x=null}}x&&w.equals(x,e.selection)||(e.selection=x)}break;case"remove_text":var{path:A,offset:S,text:D}=t;if(0===D.length)break;ee(e,A,e=>{var t=e.text.slice(0,S),r=e.text.slice(S+D.length);return re(re({},e),{},{text:t+r})}),r=!0;break;case"set_node":var{path:$,properties:q,newProperties:C}=t;if(0===$.length)throw new Error("Cannot set properties on the root node!");Q(e,$,e=>{var t=re({},e);for(var r in C){if("children"===r||"text"===r)throw new Error('Cannot set the "'.concat(r,'" property of nodes!'));var n=C[r];null==n?delete t[r]:t[r]=n}for(var o in q)C.hasOwnProperty(o)||delete t[o];return t});break;case"set_selection":var{newProperties:R}=t;if(null==R){e.selection=null;break}if(null==e.selection){if(!w.isRange(R))throw new Error('Cannot apply an incomplete "set_selection" operation properties '.concat(V.stringify(R)," when there is no current selection."));e.selection=re({},R);break}var I=re({},e.selection);for(var M in R){var F=R[M];if(null==F){if("anchor"===M||"focus"===M)throw new Error('Cannot remove the "'.concat(M,'" selection property'));delete I[M]}else I[M]=F}e.selection=I;break;case"split_node":var{path:W,position:U,properties:X}=t,Z=W[W.length-1];if(0===W.length)throw new Error('Cannot apply a "split_node" operation at path ['.concat(W,"] because the root node cannot be split."));Y(e,h.parent(W),e=>{var t,r,n=e[Z];if(J.isText(n)){var o=n.text.slice(0,U),i=n.text.slice(U);t=re(re({},n),{},{text:o}),r=re(re({},X),{},{text:i})}else{var a=n.children.slice(0,U),s=n.children.slice(U);t=re(re({},n),{},{children:a}),r=re(re({},X),{},{children:s})}return G(e,Z,1,t,r)}),r=!0}if(r&&e.selection){var te=re({},e.selection);for(var[ne,oe]of w.points(te))te[oe]=z.transform(ne,t);w.equals(te,e.selection)||(e.selection=te)}}},oe={insertNodes(e,t,r){e.insertNodes(t,r)},liftNodes(e,t){e.liftNodes(t)},mergeNodes(e,t){e.mergeNodes(t)},moveNodes(e,t){e.moveNodes(t)},removeNodes(e,t){e.removeNodes(t)},setNodes(e,t,r){e.setNodes(t,r)},splitNodes(e,t){e.splitNodes(t)},unsetNodes(e,t,r){e.unsetNodes(t,r)},unwrapNodes(e,t){e.unwrapNodes(t)},wrapNodes(e,t,r){e.wrapNodes(t,r)}},ie={collapse(e,t){e.collapse(t)},deselect(e){e.deselect()},move(e,t){e.move(t)},select(e,t){e.select(t)},setPoint(e,t,r){e.setPoint(t,r)},setSelection(e,t){e.setSelection(t)}},ae={delete(e,t){e.delete(t)},insertFragment(e,t,r){e.insertFragment(t,r)},insertText(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};q.withoutNormalizing(e,()=>{var{voids:n=!1}=r,{at:o=$(e)}=r;if(h.isPath(o)&&(o=q.range(e,o)),w.isRange(o))if(w.isCollapsed(o))o=o.anchor;else{var i=w.end(o);if(!n&&q.void(e,{at:i}))return;var a=w.start(o),s=q.pointRef(e,a),l=q.pointRef(e,i);ce.delete(e,{at:o,voids:n});var c=s.unref(),d=l.unref();o=c||d,ce.setSelection(e,{anchor:o,focus:o})}if(!(!n&&q.void(e,{at:o})||q.elementReadOnly(e,{at:o}))){var{path:p,offset:f}=o;t.length>0&&e.apply({type:"insert_text",path:p,offset:f,text:t})}})}};function se(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t&&(n=n.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),r.push.apply(r,n)}return r}function le(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{};t%2?se(Object(r),!0).forEach(function(t){m(e,t,r[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(r)):se(Object(r)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(r,t))})}return e}var ce=le(le(le(le({},ne),oe),ie),ae);function de(e,i,{hotkeys:a,defaultBlock:s}){return l=>{q.withoutNormalizing(i,()=>{var c;const d=t.getBlock(e,{at:e.path.current});if(!i.selection||!d)return;const p=i.selection,{anchor:f}=p;if(a.isCmdEnter(l)){const t=q.above(i,{at:f,match:e=>!q.isEditor(e)&&k.isElement(e)&&"todo-list"===e.type,mode:"highest"});if(!t)return;const[n]=t,o=(null===(c=n.props)||void 0===c?void 0:c.checked)||!1;return void r.updateElement(e,{blockId:d.id,type:"todo-list",props:{checked:!o}})}if(a.isEnter(l)){l.preventDefault();const t=q.above(i,{at:f,match:e=>!q.isEditor(e)&&k.isElement(e)&&("numbered-list"===e.type||"bulleted-list"===e.type||"todo-list"===e.type),mode:"highest"});if(!t)return;const[r,a]=t,c=q.isEnd(i,f,a),p=q.isStart(i,f,a),u=q.string(i,a),h=0===d.meta.depth,g=u.trim().length>0;if(!g){if(h){const t=d.meta.order;return void e.batchOperations(()=>{e.deleteBlock({blockId:d.id}),e.insertBlock(s.type,{at:t,focus:!0,blockData:s})})}return void e.decreaseBlockDepth({blockId:d.id})}if(p){const t=n({type:d.type,meta:{order:d.meta.order,depth:d.meta.depth},value:[o({type:r.type,props:{nodeType:"block"}})]});return e.insertBlock(t.type,{at:d.meta.order,focus:!1,blockData:t}),void e.setPath({current:t.meta.order+1})}if(g&&!p&&!c)return void e.splitBlock({focus:!0});const v=n({type:d.type,meta:{order:d.meta.order+1,depth:d.meta.depth},value:[o({type:r.type,props:{nodeType:"block"}})]});e.insertBlock(v.type,{at:d.meta.order+1,focus:!0,blockData:v})}})}}function pe(e,t,r){const n=[],o="number"==typeof r.depth?r.depth:0;if("UL"===t.nodeName||"OL"===t.nodeName){const s=Array.from(t.children).filter(e=>"LI"===e.nodeName),l=s.some(e=>{const t=e.querySelector('input[type="checkbox"]'),r=e.textContent||"",n=/\[\s*[xX\s]?\s*\]/.test(r);return t||n});if(l&&"TodoList"!==r.type)return n;if(!l&&"TodoList"===r.type)return n;s.forEach(t=>{const s=t.textContent||"";let l=null;if("TodoList"===r.type){const n=t.querySelector('input[type="checkbox"]'),c=n?n.checked:/\[\s*[xX]\s*\]/.test(s);l={id:i(),type:"TodoList",value:[{id:i(),type:"todo-list",children:a(e,t.childNodes),props:{nodeType:"block",checked:c}}],meta:{order:0,depth:o,align:r.align}}}else{const n="NumberedList"===r.type?"numbered-list":"bulleted-list",s=Array.from(t.childNodes).reduce((t,r)=>{var n;if(r.nodeType===Node.TEXT_NODE){const e=null===(n=r.textContent)||void 0===n?void 0:n.trim();return e?[...t,{text:e}]:t}if(r.nodeType===Node.ELEMENT_NODE){const n=r;return n.nodeName,[...t,...a(e,n.childNodes)]}return t},[]);l={id:i(),type:r.type,value:[{id:i(),type:n,children:s.length>0?s:[{text:""}],props:{nodeType:"block"}}],meta:{order:0,depth:o,align:r.align}}}if(l){const e=fe(l.value).map(e=>k.isElement(e)?e.children.length>0?e:Object.assign(Object.assign({},e),{children:[{text:""}]}):e),t=Object.assign(Object.assign({},l),{value:e});n.push(t)}const c=Array.from(t.children).filter(e=>"UL"===e.nodeName||"OL"===e.nodeName);c.length>0&&c.forEach(t=>{const i=pe(e,t,Object.assign(Object.assign({},r),{depth:o+1}));n.push(...i)})})}return n}function fe(e){return e.map(e=>{if("children"in e)return Object.assign(Object.assign({},e),{children:fe(e.children)});if("text"in e){const t=e.text.replace(/\[\s*[xX\s]?\s*\]/,"").replace(/\u00a0/g," ");return t?Object.assign(Object.assign({},e),{text:t}):null}return e}).filter(Boolean)}const ue=new s({type:"BulletedList",elements:e("bulleted-list",{render:t=>e("ul",Object.assign({},t.attributes,{children:e("li",{children:t.children})}))}),options:{display:{title:"Bulleted List",description:"Create bullet list"},shortcuts:["-"]},events:{onKeyDown:de},commands:p,parsers:{html:{deserialize:{nodeNames:["UL"],parse(e,t){if("UL"===e.nodeName){const r=e.getAttribute("data-meta-align")||"left",n=parseInt(e.getAttribute("data-meta-depth")||"0",10),o=pe(t,e,{type:"BulletedList",depth:n,align:r});if(o.length>0)return o}}},serialize:(e,t,r)=>{const{align:n="left",depth:o=0}=r||{};return`<ul data-meta-align="${n}" data-meta-depth="${o}" style="margin-left: ${20*o}px; text-align: ${n}"><li>${l(e.children)}</li></ul>`}},markdown:{serialize:(e,t,r)=>{const{depth:n=0}=r||{};return`${" ".repeat(n)}- ${c(e.children)}`}},email:{serialize:(e,t,r)=>{const{align:n="left",depth:o=0}=r||{};return`\n <table style="width:100%;">\n <tbody style="width:100%;">\n <tr>\n <td>\n <ul data-meta-align="${n}" data-meta-depth="${o}" style="margin-left: ${20*o}px; text-align: ${n}; \n font-size: 16px;\n line-height: 1.75rem;\n padding-bottom: 2px;\n padding-left: 1rem;\n padding-top: 2px;\n margin: 0;\n "><li style="margin: 0">${l(e.children)}</li></ul>\n </td>\n </tr>\n </tbody>\n </table>\n `}}}}),he=new s({type:"NumberedList",elements:e("numbered-list",{render:t=>e("ol",Object.assign({},t.attributes,{children:e("li",{children:t.children})}))}),options:{display:{title:"Numbered List",description:"Create list with numbering"},shortcuts:["1."]},events:{onKeyDown:de},commands:f,parsers:{html:{deserialize:{nodeNames:["OL"],parse(e,t){if("OL"===e.nodeName){const r=e.getAttribute("data-meta-align")||"left",n=parseInt(e.getAttribute("data-meta-depth")||"0",10),o=pe(t,e,{type:"NumberedList",depth:n,align:r});if(o.length>0)return o}}},serialize:(e,t,r)=>{const{align:n="left",depth:o=0}=r||{};return`<ol data-meta-align="${n}" data-meta-depth="${o}" style="margin-left: ${20*o}px; text-align: ${n}"><li>${l(e.children)}</li></ol>`}},markdown:{serialize:(e,t,r)=>{const{depth:n=0}=r||{};return`${" ".repeat(n)}- ${c(e.children)}`}},email:{serialize:(e,t,r)=>{const{align:n="left",depth:o=0}=r||{};return`\n <table style="width:100%;">\n <tbody style="width:100%;">\n <tr>\n <td>\n <ol data-meta-align="${n}" data-meta-depth="${o}" style="margin-left: ${o}px; text-align: ${n}; font-size: 16px;\n line-height: 28px;\n padding-bottom: 2px;\n padding-left: 1rem;\n padding-top: 2px;\n margin: 0;\n "><li>${l(e.children)}</li></ol>\n </td>\n </tr>\n </tbody>\n </table>\n `}}}}),ge={checked:!1},ve={BulletedList:ue,NumberedList:he,TodoList:new s({type:"TodoList",elements:e("todo-list",{render:t=>e("ul",Object.assign({},t.attributes,{props:ge,style:{listStyleType:"none"}},{children:e("li",{children:t.children})}))}),options:{display:{title:"Todo List",description:"Track tasks"},shortcuts:["[]"]},events:{onKeyDown:de},commands:u,parsers:{html:{deserialize:{nodeNames:["OL","UL"],parse(e,t){if("OL"===e.nodeName||"UL"===e.nodeName){const r=e.getAttribute("data-meta-align")||"left",n=parseInt(e.getAttribute("data-meta-depth")||"0",10),o=pe(t,e,{type:"TodoList",depth:n,align:r});if(o.length>0)return o}}},serialize:(e,t,r)=>{const{align:n="left",depth:o=0}=r||{};return`<ul data-meta-align="${n}" data-meta-depth="${o}" style="margin-left: ${20*o}px; text-align: ${n}"><li>[${e.props.checked?"x":" "}] ${l(e.children)}</li></ul>`}},markdown:{serialize:(e,t,r)=>{const{depth:n=0}=r||{};return`${" ".repeat(n)}- ${e.props.checked?"[x]":"[ ]"} ${c(e.children)}`}},email:{serialize:(e,t,r)=>{const{align:n="left",depth:o=0}=r||{};return`\n <table style="width:100%;">\n <tbody style="width:100%;">\n <tr>\n <td>\n <ul data-meta-align="${n}" data-meta-depth="${o}" style="margin-left: ${20*o}px; text-align: ${n}; font-size: 16px;\n line-height: 28px;\n padding-bottom: 2px;\n padding-left: 1rem;\n padding-top: 2px;\n margin: 0;\n "><li>[${e.props.checked?"x":" "}] ${l(e.children)}</li></ul>\n </td>\n </tr>\n </tbody>\n </table>\n `}}}})};function me(e){return function(e,t){const r=Object.keys(e.children).sort((t,r)=>{const n=e.children[t],o=e.children[r];return n.meta.order-o.meta.order}),n={},o={},i=t.meta.depth;for(const a of r){const r=e.children[a],s=r.meta.depth,l=r.type;if(a===t.id)break;"NumberedList"===l&&(void 0===n[s]&&(n[s]=0),"NumberedList"!==o[s]&&(n[s]=0),n[s]+=1),o[s]=l,s<i&&Object.keys(n).forEach(e=>{Number(e)>s&&(n[e]=0,o[e]="")})}return void 0===n[i]&&(n[i]=0),"NumberedList"!==o[i]&&(n[i]=0),n[i]+=1,n[i]}(d(),e)}const ye=ve.NumberedList,be=ve.BulletedList,Oe=ve.TodoList;export{be as BulletedList,p as BulletedListCommands,ye as NumberedList,f as NumberedListCommands,Oe as TodoList,u as TodoListCommands,ve as default,me as useNumberListCount};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@yoopta/lists",
|
|
3
|
-
"version": "6.0.0-beta.
|
|
3
|
+
"version": "6.0.0-beta.9",
|
|
4
4
|
"description": "Lists plugin for Yoopta Editor",
|
|
5
5
|
"author": "Darginec05 <devopsbanda@gmail.com>",
|
|
6
6
|
"homepage": "https://github.com/Darginec05/Yoopta-Editor#readme",
|
|
@@ -35,5 +35,5 @@
|
|
|
35
35
|
"bugs": {
|
|
36
36
|
"url": "https://github.com/Darginec05/Yoopta-Editor/issues"
|
|
37
37
|
},
|
|
38
|
-
"gitHead": "
|
|
38
|
+
"gitHead": "4a55643c3f8ffc0d0373ff2643cf12099976c28e"
|
|
39
39
|
}
|