wysimark-lite 0.25.2 → 0.25.3
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/index.js +110 -118
- package/dist/index.mjs +153 -128
- package/dist/index.mjs.map +1 -1
- package/dist/metafile-esm.json +1 -1
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
"use client";import{createRef as
|
|
2
|
-
`);return[{type:"code-block",language:e.lang||"text",children:t.map(o=>({type:"code-block-line",children:[{text:o}]}))}]}function
|
|
3
|
-
`}];case"footnote":throw new Error("footnote is not supported yet")}fe(e)}function
|
|
1
|
+
"use client";import{createRef as pE,useCallback as dE,useImperativeHandle as uE,useRef as fE,useState as hE}from"react";import{createRoot as gE}from"react-dom/client";import iE from"lodash.throttle";import{useCallback as yt,useRef as go,useState as bp}from"react";import{Editor as aE,Transforms as lE}from"slate";import{ReactEditor as sE,Slate as mE}from"slate-react";import Xp from"remark-parse";import{unified as Yp}from"unified";function yo(){return{enter:{table:Pp,tableData:Dr,tableHeader:Dr,tableRow:Sp},exit:{codeText:Rp,table:Cp,tableData:xo,tableHeader:xo,tableRow:xo}}}function Pp(e){let t=e._align;this.enter({type:"table",align:t.map(function(o){return o==="none"?null:o}),children:[]},e),this.data.inTable=!0}function Cp(e){this.exit(e),this.data.inTable=void 0}function Sp(e){this.enter({type:"tableRow",children:[]},e)}function xo(e){this.exit(e)}function Dr(e){this.enter({type:"tableCell",children:[]},e)}function Rp(e){let t=this.resume();this.data.inTable&&(t=t.replace(/\\([\\|])/g,Lp));let o=this.stack[this.stack.length-1];o.type,o.value=t,this.exit(e)}function Lp(e,t){return t==="|"?t:e}import{gfm as Bp}from"micromark-extension-gfm";import{gfmToMarkdown as zp}from"mdast-util-gfm";function Nr(e){if(e)return function(t){return this.data||(this.data={}),e.call(this,t)}}function $r(){return function(){if(!this)return;let e=this.data(),t=e.micromarkExtensions||(e.micromarkExtensions=[]),o=e.fromMarkdownExtensions||(e.fromMarkdownExtensions=[]),r=e.toMarkdownExtensions||(e.toMarkdownExtensions=[]);t.push(Bp());let n=function(){let i=yo();if(i.enter)for(let a of Object.keys(i.enter))i.enter[a]=Nr(i.enter[a]);if(i.exit)for(let a of Object.keys(i.exit))i.exit[a]=Nr(i.exit[a]);return i};o.push(n()),r.push(zp())}}function ue(e){let t=/\[([^\]]+)\]\(([^)]+)\)/g,o=[],r=0,n=e.replace(t,s=>(o.push(s),`__MARKDOWN_LINK_${r++}__`)),i=/(https?:\/\/[^\s]+)/g,l=n.replace(i,s=>s.replace(/\//g,"\\/"));for(let s=0;s<o.length;s++)l=l.replace(`__MARKDOWN_LINK_${s}__`,o[s]);return l}function tt(e){return e.replace(/\\(.)/g,(t,o)=>o)}function Hr(e,t){if(!e)throw new Error(`${t}`)}function kt(e,t){if(e.type!==t)throw new Error(`Expected element to be of type ${JSON.stringify(e)} but is ${JSON.stringify(e,null,2)}`)}function fe(e){throw new Error(`Didn't expect to get here with value ${JSON.stringify(e,null,2)}`)}function Ar(e){return[{type:"block-quote",children:Be(e.children)}]}function Or(e){let t=e.value.split(`
|
|
2
|
+
`);return[{type:"code-block",language:e.lang||"text",children:t.map(o=>({type:"code-block-line",children:[{text:o}]}))}]}function Ur(e){return[{type:"block-quote",children:[{type:"paragraph",children:[{text:`[${e.identifier}]`}]},...Be(e.children)]}]}import{Text as Xr}from"slate";import{Text as Qr}from"slate";import*as ot from"slate";function A(e){return ot.Text.isText(e)}function oe(e){return ot.Element.isElement(e)}function R(e){return ot.Text.isText(e)&&!!e.text.match(/^\s+$/)&&!e.code}var Fr={bold:"**",italic:"_",strike:"~~",highlight:"<mark>",code:""},Vr={bold:"**",italic:"_",strike:"~~",highlight:"</mark>",code:""};function Dp(e){if(e in Fr)return Fr[e];throw new Error(`Could not find mark ${JSON.stringify(e)} in MARK_KEY_TO_OPEN_TOKEN lookup`)}function Np(e){if(e in Vr)return Vr[e];throw new Error(`Could not find mark ${JSON.stringify(e)} in MARK_KEY_TO_CLOSE_TOKEN lookup`)}function Kr(e){return e.map(Dp).join("")}function _r(e){return e.map(Np).join("")}import{Text as $p}from"slate";function rt(e){let{text:t,...o}=e;return Object.keys(o)}function ko(e){if($p.isText(e)){if(R(e))throw new Error("You probably didn't mean to do this. We should only be getting marks from segments that are not plain space segments.");return rt(e)}else{if(e.type==="anchor")return vo(e.children);throw new Error(`Unhandled type ${e.type}`)}}function vo(e){let t;for(let o of e){if(!A(o)){if(o.type==="image-inline")continue;throw new Error("Expected every segment in an anchor to be a Text segment")}if(R(o))continue;let r=rt(o);if(t===void 0){t=r;continue}t=t.filter(n=>r.includes(n))}if(t===void 0)throw new Error("No text segments were found as children in this anchor which should not be possible");return t}var Wr=["bold","italic","underline","strike","highlight","code"];function Gr(e){return e.slice().sort((t,o)=>Wr.indexOf(t)-Wr.indexOf(o))}var Hp=["\\","`","*","_","[","]","(",")","#","+","-",".","!","|","^","~","<",">","{","}","=",":",";","$","%","&","?",'"',"'",",","\\","/","@"],Ap=new RegExp(`(${Hp.map(e=>`\\${e}`).join("|")})`,"g");function qr(e){return e.replace(Ap,t=>`\\${t}`)}function Op(e,t){let o=rt(e),r=rt(t);return o.length==r.length&&o.every(n=>r.includes(n))}function jr(e,t){let o=Qr.isText(e),r=Qr.isText(t);return t&&!r&&!o?[{text:""},e]:o?t===void 0||!r?[e]:Op(t,e)?(t.text=[t.text,e.text].join(""),[]):[e]:[e]}function Yr(e){let t=[];for(let o=0;o<e.length;o++){let r=t[t.length-1];t.push(...jr(e[o],r))}return t.length===0&&t.push({text:""}),Xr.isText(t[0])||t.unshift({text:""}),Xr.isText(t[t.length-1])||t.push({text:""}),t}function Jr(e){return{url:e.url,title:e.title||void 0,alt:e.alt||void 0}}var Up=/^(\/[^?#]*)(?:\?([^#]*))?(#.*)?$/;function ze(e){try{let t=new URL(e);return{origin:t.origin,hostname:t.hostname,pathname:t.pathname,searchParams:t.searchParams,hash:t.hash}}catch{let t=e.match(Up);if(t===null)throw new Error(`Invalid format should not happen: ${e}`);let[,o,r,n]=[...t];return{origin:"",hostname:"",pathname:o||"",searchParams:new URLSearchParams(r),hash:n||""}}}function nt(e){if(typeof e!="string")return null;let t=e.match(/^(\d+)x(\d+)$/);return t===null?null:{width:parseInt(t[1]),height:parseInt(t[2])}}function Zr(e){let t=ze(e.url);if(!t.hostname.match(/[.]portive[.]com$/i))return;let o=t.searchParams.get("size");if(o===null)return;let r=nt(o);if(r===null)return;let n=t.pathname.match(/[-][-](\d+)x(\d+)[.][a-zA-Z]+$/);if(n!==null)return{url:`${t.origin}${t.pathname}`,title:e.title||void 0,alt:e.alt||void 0,width:r.width,height:r.height,srcWidth:parseInt(n[1]),srcHeight:parseInt(n[2])}}function en(e){let t=ze(e.url);if(t.hash.length===0)return;let o=new URLSearchParams(t.hash.slice(1)),r=nt(o.get("size")),n=nt(o.get("srcSize"));if(!(!r||!n))return{url:`${t.origin}${t.pathname}`,title:e.title||void 0,alt:e.alt||void 0,width:r.width,height:r.height,srcWidth:n.width,srcHeight:n.height}}var tn=[Zr,en,Jr];function on(e){for(let t of tn){let o=t(e);if(o)return[{type:"image-inline",...o,children:[{text:""}]}]}throw new Error("Shouldn't get here because last parser always returns data")}function Fp(e,t){let o=e.match(/^<mark>(.+?)<\/mark>$/s);return o?[{text:o[1],...t,highlight:!0}]:[{text:e,code:!0}]}function F(e,t={}){let o=[];for(let n of e)o.push(...Vp(n,t));return Yr(o)}function Vp(e,t={}){switch(e.type){case"delete":return F(e.children,{...t,strike:!0});case"emphasis":return F(e.children,{...t,italic:!0});case"footnoteReference":return[{text:`[${e.identifier}]`}];case"html":return Fp(e.value,t);case"image":return on(e);case"inlineCode":return[{text:e.value,...t,code:!0}];case"link":return[{type:"anchor",href:e.url,title:e.title==null?void 0:e.title,children:F(e.children,t)}];case"strong":return F(e.children,{...t,bold:!0});case"text":return[{text:e.value,...t}];case"linkReference":case"imageReference":throw new Error("linkReference and imageReference should be converted to link and image through our transformInlineLinks function");case"break":return[{text:`
|
|
3
|
+
`}];case"footnote":throw new Error("footnote is not supported yet")}fe(e)}function rn(e){return[{type:"heading",level:e.depth,children:F(e.children)}]}function nn(e){return[{type:"html-block",html:e.value,children:[{text:""}]}]}function an(e,{depth:t,ordered:o,checked:r}){switch(e.type){case"paragraph":return r===!0||r===!1?[{type:"task-list-item",depth:t,checked:r,children:F(e.children)}]:o?[{type:"ordered-list-item",depth:t,children:F(e.children)}]:[{type:"unordered-list-item",depth:t,children:F(e.children)}];case"list":return vt(e,t+1);default:return To(e)}}function ln(e,t){let o=[];for(let r of e.children)o.push(...an(r,{...t,checked:e.checked}));return o}function vt(e,t=0){let o=[];for(let r of e.children)o.push(...ln(r,{depth:t,ordered:!!e.ordered}));return o}function Kp(e){return!(e.length!==3||!("text"in e[0])||e[0].text!==""||!("text"in e[2])||e[2].text!==""||!("type"in e[1])||e[1].type!=="image-inline")}var _p="\xA0";function Wp(e){return!(e.length!==1||!("text"in e[0])||e[0].text!==_p)}function sn(e){let t=F(e.children);return Kp(t)?[{...t[1],type:"image-block"}]:Wp(t)?[{type:"paragraph",children:[{text:""}]}]:[{type:"paragraph",children:t}]}function mn(e){if(e.align==null)throw new Error("Expected an array of AlignType for table.align");return[{type:"table",columns:e.align.map(t=>({align:t||"left"})),children:e.children.map(Gp)}]}function Gp(e){if(e.type!=="tableRow")throw new Error("Expected a tableRow");return{type:"table-row",children:e.children.map(qp)}}function qp(e){if(e.type!=="tableCell")throw new Error("Expected a tableCell");return{type:"table-cell",children:[{type:"table-content",children:F(e.children)}]}}function cn(){return[{type:"horizontal-rule",children:[{text:""}]}]}function Be(e){let t=[];for(let o of e)t.push(...To(o));return t}function To(e){switch(e.type){case"blockquote":return Ar(e);case"code":return Or(e);case"definition":throw new Error('The type "definition" should not exist. See comments');case"footnoteDefinition":return Ur(e);case"heading":return rn(e);case"html":return nn(e);case"list":return vt(e);case"paragraph":return sn(e);case"table":return mn(e);case"thematicBreak":return cn();case"yaml":return[]}fe(e)}import{definitions as Qp}from"mdast-util-definitions";import{SKIP as pn,visit as jp}from"unist-util-visit";function dn(e){let t=Qp(e);jp(e,(o,r,n)=>{let i=o,a=n;if(i.type==="definition"&&a!==null&&typeof r=="number")return a.children.splice(r,1),[pn,r];if(i.type==="imageReference"||i.type==="linkReference"){let l="identifier"in i&&typeof i.identifier=="string"?i.identifier:"",s=t(l);if(s&&a!==null&&typeof r=="number"){let m=i.type==="imageReference"?{type:"image",url:s.url,title:s.title,alt:i.alt}:{type:"link",url:s.url,title:s.title,children:i.children};return a.children[r]=m,[pn,r]}}})}var Jp=Yp().use(Xp).use($r());function Zp(e){let t=Jp.parse(e);return dn(t),t}function he(e){let t=Zp(e);return t.children.length===0?[{type:"paragraph",children:[{text:""}]}]:Be(t.children)}function ed(e){return e.type==="ordered-list-item"||e.type==="unordered-list-item"||e.type==="task-list-item"}function un(e){let t=[],o=-1;for(let r of e){if(!ed(r)){t.push(r),o=-1;continue}let n=r.depth>o+1?o+1:r.depth;t.push({...r,depth:n}),o=n}return t}function fn(e){if(e.type!=="code-block-line")throw new Error(`Expected all children of code-block to be a codeline but is ${JSON.stringify(e,null,2)}`);return e.children.map(t=>t.text).join("")}function hn(e){let t=[],o=3;for(let r of e.children){let n=fn(r),i=n.match(/^([`]+)/);i&&(o=Math.max(o,i[1].length+1)),t.push(n)}return t.unshift(`${"`".repeat(o)}${e.language}`),t.push(`${"`".repeat(o)}`),`${t.join(`
|
|
4
4
|
`)}
|
|
5
5
|
|
|
6
|
-
`}function
|
|
6
|
+
`}function gn(e){return e.url}function bn(e){if(e.url.startsWith("$"))return"";let{hostname:t}=ze(e.url);if(t.match(/[.]portive[.]com$/i)&&e.width&&e.height)return`${e.url}?size=${e.width}x${e.height}`}function En(e){if(e.width&&e.height&&e.srcWidth&&e.srcHeight)return`${e.url}#srcSize=${e.srcWidth}x${e.srcHeight}&size=${e.width}x${e.height}`}var td=[bn,En,gn];function Tt(e){for(let t of td){let o=t(e);if(typeof o=="string")return o===""?"":``}throw new Error("Shouldn't get here")}function xn(e){let t=Tt(e);return t?`${t}
|
|
7
7
|
|
|
8
|
-
`:""}import{Element as
|
|
8
|
+
`:""}import{Element as ad,Text as ld}from"slate";function yn(e,t){let o=t.filter(n=>!e.includes(n));return{orderedMarksToAdd:Gr(o)}}function kn(e,t){let o=[...e],r=e.filter(i=>!t.includes(i)),n=[];for(let i=0;i<e.length&&r.length!==0;i++){let a=o.pop();if(a===void 0)throw new Error("This shouldn't happen unless we made a mistake in the algorithm");n.push(a);let l=r.indexOf(a);l!==-1&&r.splice(l,1)}return{orderedMarksToRemove:n,nextOrderedMarks:o}}function wo(e,t){let{orderedMarksToRemove:o,nextOrderedMarks:r}=kn(e,t),{orderedMarksToAdd:n}=yn(r,t);return{remove:o,add:n,nextOrderedMarks:[...r,...n]}}import{Element as rd}from"slate";function vn({node:e,nextNode:t,nodes:o,index:r}){return!A(e)||!R(e)||e.code||!A(t)||!R(t)||e.code?!1:(o.splice(r,2,{text:`${e.text}${t.text}`}),!0)}function Tn({node:e,nodes:t,prevNode:o,index:r}){if(!oe(e)||e.type!=="anchor")return!1;let n=e.children[0];return A(n)&&R(n)?(e.children.splice(0,1),A(o)&&R(o)?o.text=`${o.text}${n.text}`:t.splice(r,0,{text:n.text}),!0):!1}function wn({node:e,nodes:t,nextNode:o,index:r}){if(!oe(e)||e.type!=="anchor")return!1;let n=e.children[e.children.length-1];return A(n)&&R(n)?(e.children.splice(e.children.length-1,1),A(o)&&R(o)?o.text=`${n.text}${o.text}`:t.splice(r+1,0,{text:n.text}),!0):!1}function In({node:e}){return!oe(e)||e.type!=="line"||e.children.length>0?!1:(e.children.push({text:""}),!0)}function Mn({node:e,nodes:t,index:o}){if(!A(e)||R(e)||e.code)return!1;let r=e.text.match(/^(\s*)(.*?)(\s*)$/);if(!r||r[1].length===0&&r[3].length===0)return!1;let n=[{text:r[1]},{...e,text:r[2]},{text:r[3]}].filter(i=>i.text!=="");return t.splice(o,1,...n),!0}function Pn({index:e,nodes:t,node:o,parent:r}){return e!==t.length-1||t.length<=1||!A(o)||!R(o)?!1:r&&oe(r)&&r.type==="line"?(t.splice(t.length-1,1),!0):!1}function Cn({index:e,nodes:t,node:o,parent:r}){return e!==0||t.length===0||!A(o)||!R(o)?!1:r&&oe(r)&&r.type==="line"?(t.splice(0,1),!0):!1}var Sn=[Mn,Tn,wn,vn,Cn,Pn,In];function Rn(e){for(let t of Sn)if(t(e))return!0;return!1}var od=72;function Io(e,t){let o=!1,r,n=0,i=(e.length+1)*od;do{if(r=!1,n=n+1,n>i)throw new Error(`There have been ${n} normalization passes (72x the number of nodes at this level). This likely indicates a bug in the code.`);e:for(let a=0;a<e.length;a++){let l=e[a];if(oe(l)&&Io(l.children,l)){r=!0,o=!0;break e}let s=e[a-1],m=e[a+1];if(Rn({parent:t,node:l,prevNode:s,nextNode:m,index:a,nodes:e})){r=!0,o=!0;break e}}}while(r);return o}var Ln=e=>e.map(t=>rd.isElement(t)&&t.type==="anchor"?{...t,children:Ln(t.children)}:t);function Bn(e){let t={type:"line",children:Ln(e)};return Io([t],void 0),t.children}import{Text as id}from"slate";function zn(e){let t=0;for(let o of e.text.matchAll(/[`]+/g))t=Math.max(t,o[0].length);return t===0?`\`${e.text.replace(/[`]/g,"\\`")}\``:`${"`".repeat(t+1)} ${e.text} ${"`".repeat(t+1)}`}function nd(e){return e.replace(/"/g,'\\"')}function Dn(e){let t=vo(e.children);return e.href.startsWith("$")?_(e.children,t,t):typeof e.title=="string"&&e.title.length>0?`[${_(e.children,t,t)}](${e.href} "${nd(e.title)}")`:`[${_(e.children,t,t)}](${e.href})`}function Nn(e){return qr(e.text)}function $n(e){if(id.isText(e))return e.code?zn(e):Nn(e);switch(e.type){case"anchor":return Dn(e);case"image-inline":return Tt(e);default:fe(e)}}function _(e,t=[],o=[]){let r=Bn(e),n=[],i=wo(t,ko(r[0]));for(let a=0;a<r.length;a++){let l=r[a];if(ld.isText(l)&&R(l)){n.push(l.text);continue}n.push(Kr(i.add)),n.push($n(l));let s=sd(r,a,o),m=wo(i.nextOrderedMarks,s);n.push(_r(m.remove)),i=m}return n.join("")}function sd(e,t,o){for(let r=t+1;r<e.length;r++){let n=e[r];if(!R(n)&&!(ad.isElement(n)&&n.type==="image-inline"))return ko(n)}return o}function An(e){let t=[];return t.push(Hn(e.children[0])),t.push(md(e.columns)),e.children.slice(1).forEach(o=>{t.push(Hn(o))}),`${t.join(`
|
|
9
9
|
`)}
|
|
10
10
|
|
|
11
|
-
`}function
|
|
11
|
+
`}function md(e){return e.every(o=>o.align==="left")?`|${e.map(()=>"---").join("|")}|`:`|${e.map(o=>cd(o.align)).join("|")}|`}function cd(e){switch(e){case"left":return":---";case"center":return":---:";case"right":return"---:"}}function Hn(e){return kt(e,"table-row"),`|${e.children.map(pd).join("|")}|`}function pd(e){return kt(e,"table-cell"),Hr(e.children.length===1,`Expected table-cell to have one child but is ${JSON.stringify(e.children)}`),e.children.map(dd).join()}function dd(e){return kt(e,"table-content"),_(e.children)}var Mo=4;function On(e,t){switch(e.type){case"anchor":return`[${_(e.children)}](${e.href})`;case"block-quote":return`${wt(e.children).split(`
|
|
12
12
|
`).map(r=>`> ${r}`.trim()).join(`
|
|
13
13
|
`)}
|
|
14
14
|
|
|
@@ -18,29 +18,21 @@
|
|
|
18
18
|
|
|
19
19
|
`;case"paragraph":return`${_(e.children)}
|
|
20
20
|
|
|
21
|
-
`;case"table":return
|
|
21
|
+
`;case"table":return An(e);case"table-row":case"table-cell":case"table-content":throw new Error(`Table elements should only be present as children of table which should be handled by serializeTable. Got ${e.type} may indicate an error in normalization.`);case"unordered-list-item":return`${" ".repeat(e.depth*Mo)}- ${_(e.children)}
|
|
22
22
|
`;case"ordered-list-item":return`${" ".repeat(e.depth*Mo)}${t[e.depth]}. ${_(e.children)}
|
|
23
23
|
`;case"task-list-item":{let o=" ".repeat(e.depth*Mo),r=_(e.children);return r.trim()===""&&(r=" "),`${o}- [${e.checked?"x":" "}] ${r}
|
|
24
|
-
`}case"image-block":return
|
|
24
|
+
`}case"image-block":return xn(e);case"code-block":return hn(e);case"code-block-line":throw new Error("Code block line elements should only be present as children of code-block which should be handled by serializeCodeBlock. Got code-block-line may indicate an error in normalization.");case"html-block":return`${e.html}
|
|
25
25
|
|
|
26
|
-
`}fe(e)}function wt(e){let t=[],o=[];for(let n=0;n<e.length;n++){let i=e[n],a=n<e.length-1?e[n+1]:null;i.type==="ordered-list-item"?(o[i.depth]=(o[i.depth]||0)+1,o=o.slice(0,i.depth+1)):i.type==="unordered-list-item"||i.type==="task-list-item"?o=o.slice(0,i.depth):o=[];let l=
|
|
26
|
+
`}fe(e)}function wt(e){let t=[],o=[];for(let n=0;n<e.length;n++){let i=e[n],a=n<e.length-1?e[n+1]:null;i.type==="ordered-list-item"?(o[i.depth]=(o[i.depth]||0)+1,o=o.slice(0,i.depth+1)):i.type==="unordered-list-item"||i.type==="task-list-item"?o=o.slice(0,i.depth):o=[];let l=On(i,o);(i.type==="ordered-list-item"||i.type==="unordered-list-item"||i.type==="task-list-item")&&(!a||a.type!=="ordered-list-item"&&a.type!=="unordered-list-item"&&a.type!=="task-list-item")&&(l=l.replace(/\n$/,`
|
|
27
27
|
|
|
28
|
-
`)),t.push(l)}let r=t.join("");return r.trim()===""?"":
|
|
29
|
-
|
|
30
|
-
`)}function cd(e){return e.replace(/(\n{4,})/g,t=>{let o=t.length,r=Math.floor((o-2)/2);return`
|
|
31
|
-
|
|
32
|
-
`+Array(r).fill("\\").join(`
|
|
33
|
-
|
|
34
|
-
`)+`
|
|
35
|
-
|
|
36
|
-
`})}function it(e){let t=dn(e);return wt(t)}var Po={ja:{bold:"\u592A\u5B57",italic:"\u659C\u4F53",strike:"\u53D6\u308A\u6D88\u3057\u7DDA",inlineCode:"\u30A4\u30F3\u30E9\u30A4\u30F3\u30B3\u30FC\u30C9",underline:"\u4E0B\u7DDA",highlight:"\u30CF\u30A4\u30E9\u30A4\u30C8",increaseDepth:"\u968E\u5C64\u3092\u6DF1\u304F\u3059\u308B",decreaseDepth:"\u968E\u5C64\u3092\u6D45\u304F\u3059\u308B",heading1:"\u898B\u51FA\u30571",heading2:"\u898B\u51FA\u30572",heading3:"\u898B\u51FA\u30573",normal:"\u6A19\u6E96",paragraph:"\u6BB5\u843D",paragraphStyle:"\u6BB5\u843D\u30B9\u30BF\u30A4\u30EB",bulletList:"\u7B87\u6761\u66F8\u304D",numberedList:"\u756A\u53F7\u4ED8\u304D\u30EA\u30B9\u30C8",checkList:"\u30C1\u30A7\u30C3\u30AF\u30EA\u30B9\u30C8",list:"\u30EA\u30B9\u30C8",linkUrl:"\u30EA\u30F3\u30AF\u306EURL",linkText:"\u30EA\u30F3\u30AF\u30C6\u30AD\u30B9\u30C8",linkTextHint:"\u30EA\u30F3\u30AF\u3068\u3057\u3066\u8868\u793A\u3055\u308C\u308B\u30C6\u30AD\u30B9\u30C8",tooltipText:"\u30C4\u30FC\u30EB\u30C1\u30C3\u30D7\u30C6\u30AD\u30B9\u30C8",tooltipHint:"\u30DE\u30A6\u30B9\u30DB\u30D0\u30FC\u6642\u306B\u8868\u793A\u3055\u308C\u308B\u30C4\u30FC\u30EB\u30C1\u30C3\u30D7",apply:"\u9069\u7528",cancel:"\u30AD\u30E3\u30F3\u30BB\u30EB",insertLink:"\u30EA\u30F3\u30AF",quote:"\u5F15\u7528",insertTable:"\u8868",insertImage:"\u753B\u50CF",insertImageFromUrl:"\u753B\u50CF",insert:"\u633F\u5165",format:"\u66F8\u5F0F",imageUrlRequired:"\u753B\u50CFURL\uFF08\u5FC5\u9808\uFF09\uFF1A",altText:"\u4EE3\u66FF\u30C6\u30AD\u30B9\u30C8\uFF1A",title:"\u30C4\u30FC\u30EB\u30C1\u30C3\u30D7\uFF1A",imageDescription:"\u753B\u50CF\u306E\u8AAC\u660E",imageTitle:"\u753B\u50CF\u306E\u30C4\u30FC\u30EB\u30C1\u30C3\u30D7",switchToVisualEditor:"\u30D3\u30B8\u30E5\u30A2\u30EB\u30A8\u30C7\u30A3\u30BF\u306B\u5207\u308A\u66FF\u3048",switchToRawMarkdown:"\u30DE\u30FC\u30AF\u30C0\u30A6\u30F3\u8868\u793A\u306B\u5207\u308A\u66FF\u3048",codeBlock:"\u30B3\u30FC\u30C9\u30D6\u30ED\u30C3\u30AF",increaseQuoteDepth:"\u5F15\u7528\u3092\u91CD\u306D\u308B",register:"\u767B\u9332",imageSourceUrl:"URL",imageSourceFile:"\u30D5\u30A1\u30A4\u30EB",selectFile:"\u30D5\u30A1\u30A4\u30EB\u3092\u9078\u629E",uploading:"\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9\u4E2D...",saving:"\u4FDD\u5B58\u4E2D...",uploadComplete:"\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9\u5B8C\u4E86",vaultPath:"\u4FDD\u5B58\u5148\u30D1\u30B9\uFF1A",vaultPathHint:"vault\u5185\u306E\u4FDD\u5B58\u5148\u30D1\u30B9\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044"},en:{bold:"Bold",italic:"Italic",strike:"Strikethrough",inlineCode:"Inline Code",underline:"Underline",highlight:"Highlight",increaseDepth:"Increase Depth",decreaseDepth:"Decrease Depth",heading1:"Heading 1",heading2:"Heading 2",heading3:"Heading 3",normal:"Normal",paragraph:"Paragraph",paragraphStyle:"Paragraph Style",bulletList:"Bullet List",numberedList:"Numbered List",checkList:"Check List",list:"List",linkUrl:"Link URL",linkText:"Link Text",linkTextHint:"Text displayed as the link",tooltipText:"Tooltip Text",tooltipHint:"Tooltip shown on mouse hover",apply:"Apply",cancel:"Cancel",insertLink:"Link",quote:"Quote",insertTable:"Table",insertImage:"Image",insertImageFromUrl:"Image",insert:"Insert",format:"Format",imageUrlRequired:"Image URL (required):",altText:"Alt Text:",title:"tooltip:",imageDescription:"Description of the image",imageTitle:"tooltip",switchToVisualEditor:"Switch to visual editor",switchToRawMarkdown:"Switch to raw markdown",codeBlock:"Code Block",increaseQuoteDepth:"Increase Quote Depth",register:"Register",imageSourceUrl:"URL",imageSourceFile:"File",selectFile:"Select File",uploading:"Uploading...",saving:"Saving...",uploadComplete:"Upload Complete",vaultPath:"Save Path:",vaultPathHint:"Enter the path within the vault to save the file"}},On=()=>{try{if(typeof window<"u"&&window.navigator)return window.navigator.language.split("-")[0]}catch{}return"en"},f=e=>{let t=On();return Po[t==="ja"?"ja":"en"][e]},Co=e=>{let t=On();return Object.keys(Po[t==="ja"?"ja":"en"]).find(r=>Po[t==="ja"?"ja":"en"][r]===e)||""};var y=e=>({fn:e});import{useEffect as hd,useMemo as jn}from"react";import{Editor as gd}from"slate";import{useSlateStatic as bd}from"slate-react";function ne(e){return!!e}function Un(e,t){let o=t.map(r=>r.editableProps?.decorate).filter(ne);return function(r){let n=[];for(let i of o){let a=i(r);n.push(...a)}return e&&n.push(...e(r)),n}}import{Editable as pd}from"slate-react";import{jsx as dd}from"react/jsx-runtime";function Fn(e){let t=e.map(r=>r.renderEditable).filter(ne),o=r=>dd(pd,{...r});for(let r of t){let n=o;o=i=>r({attributes:i,Editable:n})}return o}function It(e,t){let o=[];for(let r of e){let n=r.editableProps?.[t];n&&o.push(n)}return o}function Mt(e,t){return function(o){for(let r of e)if(r(o))return;t?.(o)}}var Vn=(e,t)=>{let o=It(t,"onKeyDown");return Mt(o,e)},Kn=(e,t)=>{let o=It(t,"onKeyUp");return Mt(o,e)},_n=(e,t)=>{let o=It(t,"onPaste");return Mt(o,e)},Wn=(e,t)=>{let o=It(t,"onDrop");return Mt(o,e)};function Gn(e,t){let o=t.map(r=>r.editableProps?.renderElement).filter(ne);return function(n){for(let i of o){let a=i(n);if(a)return a}if(e===void 0)throw new Error(`Element with type ${n.element.type} not handled. Note that renderElement is not defined on SinkEditable so this is only the result of checking the Sink Plugins.`);return e(n)}}import{cloneElement as ud}from"react";function qn(e,t){if(e===void 0)throw new Error("renderLeaf was not defined on SinkEditable");let o=t.map(r=>r.editableProps?.renderLeaf).filter(ne).reverse();return function(r){let n=e({...r,attributes:{}});for(let i of o){let a=i({...r,children:n});a&&(n=a)}return n=ud(n,r.attributes),n}}function Qn(e,t){if(e)return e;let o=t.map(r=>r.editableProps?.renderPlaceholder).filter(ne);if(o.length!==0)return function(r){if(o.length>1)throw new Error(`Only one plugin can define renderPlaceholder but there are ${o.length}`);let n=o[0];if(n==null)throw new Error("Expected fn to be defined");return n(r)}}import fd from"@emotion/styled";var at=fd("div")`
|
|
28
|
+
`)),t.push(l)}let r=t.join("");return r.trim()===""?"":r.replace(/^\n+/,"").trim()}function it(e){let t=un(e);return wt(t)}var Po={ja:{bold:"\u592A\u5B57",italic:"\u659C\u4F53",strike:"\u53D6\u308A\u6D88\u3057\u7DDA",inlineCode:"\u30A4\u30F3\u30E9\u30A4\u30F3\u30B3\u30FC\u30C9",underline:"\u4E0B\u7DDA",highlight:"\u30CF\u30A4\u30E9\u30A4\u30C8",increaseDepth:"\u968E\u5C64\u3092\u6DF1\u304F\u3059\u308B",decreaseDepth:"\u968E\u5C64\u3092\u6D45\u304F\u3059\u308B",heading1:"\u898B\u51FA\u30571",heading2:"\u898B\u51FA\u30572",heading3:"\u898B\u51FA\u30573",normal:"\u6A19\u6E96",paragraph:"\u6BB5\u843D",paragraphStyle:"\u6BB5\u843D\u30B9\u30BF\u30A4\u30EB",bulletList:"\u7B87\u6761\u66F8\u304D",numberedList:"\u756A\u53F7\u4ED8\u304D\u30EA\u30B9\u30C8",checkList:"\u30C1\u30A7\u30C3\u30AF\u30EA\u30B9\u30C8",list:"\u30EA\u30B9\u30C8",linkUrl:"\u30EA\u30F3\u30AF\u306EURL",linkText:"\u30EA\u30F3\u30AF\u30C6\u30AD\u30B9\u30C8",linkTextHint:"\u30EA\u30F3\u30AF\u3068\u3057\u3066\u8868\u793A\u3055\u308C\u308B\u30C6\u30AD\u30B9\u30C8",tooltipText:"\u30C4\u30FC\u30EB\u30C1\u30C3\u30D7\u30C6\u30AD\u30B9\u30C8",tooltipHint:"\u30DE\u30A6\u30B9\u30DB\u30D0\u30FC\u6642\u306B\u8868\u793A\u3055\u308C\u308B\u30C4\u30FC\u30EB\u30C1\u30C3\u30D7",apply:"\u9069\u7528",cancel:"\u30AD\u30E3\u30F3\u30BB\u30EB",insertLink:"\u30EA\u30F3\u30AF",quote:"\u5F15\u7528",insertTable:"\u8868",insertImage:"\u753B\u50CF",insertImageFromUrl:"\u753B\u50CF",insert:"\u633F\u5165",format:"\u66F8\u5F0F",imageUrlRequired:"\u753B\u50CFURL\uFF08\u5FC5\u9808\uFF09\uFF1A",altText:"\u4EE3\u66FF\u30C6\u30AD\u30B9\u30C8\uFF1A",title:"\u30C4\u30FC\u30EB\u30C1\u30C3\u30D7\uFF1A",imageDescription:"\u753B\u50CF\u306E\u8AAC\u660E",imageTitle:"\u753B\u50CF\u306E\u30C4\u30FC\u30EB\u30C1\u30C3\u30D7",switchToVisualEditor:"\u30D3\u30B8\u30E5\u30A2\u30EB\u30A8\u30C7\u30A3\u30BF\u306B\u5207\u308A\u66FF\u3048",switchToRawMarkdown:"\u30DE\u30FC\u30AF\u30C0\u30A6\u30F3\u8868\u793A\u306B\u5207\u308A\u66FF\u3048",codeBlock:"\u30B3\u30FC\u30C9\u30D6\u30ED\u30C3\u30AF",increaseQuoteDepth:"\u5F15\u7528\u3092\u91CD\u306D\u308B",horizontalRule:"\u533A\u5207\u308A\u7DDA",register:"\u767B\u9332",imageSourceUrl:"URL",imageSourceFile:"\u30D5\u30A1\u30A4\u30EB",selectFile:"\u30D5\u30A1\u30A4\u30EB\u3092\u9078\u629E",uploading:"\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9\u4E2D...",saving:"\u4FDD\u5B58\u4E2D...",uploadComplete:"\u30A2\u30C3\u30D7\u30ED\u30FC\u30C9\u5B8C\u4E86",vaultPath:"\u4FDD\u5B58\u5148\u30D1\u30B9\uFF1A",vaultPathHint:"vault\u5185\u306E\u4FDD\u5B58\u5148\u30D1\u30B9\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044"},en:{bold:"Bold",italic:"Italic",strike:"Strikethrough",inlineCode:"Inline Code",underline:"Underline",highlight:"Highlight",increaseDepth:"Increase Depth",decreaseDepth:"Decrease Depth",heading1:"Heading 1",heading2:"Heading 2",heading3:"Heading 3",normal:"Normal",paragraph:"Paragraph",paragraphStyle:"Paragraph Style",bulletList:"Bullet List",numberedList:"Numbered List",checkList:"Check List",list:"List",linkUrl:"Link URL",linkText:"Link Text",linkTextHint:"Text displayed as the link",tooltipText:"Tooltip Text",tooltipHint:"Tooltip shown on mouse hover",apply:"Apply",cancel:"Cancel",insertLink:"Link",quote:"Quote",insertTable:"Table",insertImage:"Image",insertImageFromUrl:"Image",insert:"Insert",format:"Format",imageUrlRequired:"Image URL (required):",altText:"Alt Text:",title:"tooltip:",imageDescription:"Description of the image",imageTitle:"tooltip",switchToVisualEditor:"Switch to visual editor",switchToRawMarkdown:"Switch to raw markdown",codeBlock:"Code Block",increaseQuoteDepth:"Increase Quote Depth",horizontalRule:"Horizontal Rule",register:"Register",imageSourceUrl:"URL",imageSourceFile:"File",selectFile:"Select File",uploading:"Uploading...",saving:"Saving...",uploadComplete:"Upload Complete",vaultPath:"Save Path:",vaultPathHint:"Enter the path within the vault to save the file"}},Un=()=>{try{if(typeof window<"u"&&window.navigator)return window.navigator.language.split("-")[0]}catch{}return"en"},f=e=>{let t=Un();return Po[t==="ja"?"ja":"en"][e]},Co=e=>{let t=Un();return Object.keys(Po[t==="ja"?"ja":"en"]).find(r=>Po[t==="ja"?"ja":"en"][r]===e)||""};var y=e=>({fn:e});import{useEffect as bd,useMemo as Xn}from"react";import{Editor as Ed}from"slate";import{useSlateStatic as xd}from"slate-react";function ne(e){return!!e}function Fn(e,t){let o=t.map(r=>r.editableProps?.decorate).filter(ne);return function(r){let n=[];for(let i of o){let a=i(r);n.push(...a)}return e&&n.push(...e(r)),n}}import{Editable as ud}from"slate-react";import{jsx as fd}from"react/jsx-runtime";function Vn(e){let t=e.map(r=>r.renderEditable).filter(ne),o=r=>fd(ud,{...r});for(let r of t){let n=o;o=i=>r({attributes:i,Editable:n})}return o}function It(e,t){let o=[];for(let r of e){let n=r.editableProps?.[t];n&&o.push(n)}return o}function Mt(e,t){return function(o){for(let r of e)if(r(o))return;t?.(o)}}var Kn=(e,t)=>{let o=It(t,"onKeyDown");return Mt(o,e)},_n=(e,t)=>{let o=It(t,"onKeyUp");return Mt(o,e)},Wn=(e,t)=>{let o=It(t,"onPaste");return Mt(o,e)},Gn=(e,t)=>{let o=It(t,"onDrop");return Mt(o,e)};function qn(e,t){let o=t.map(r=>r.editableProps?.renderElement).filter(ne);return function(n){for(let i of o){let a=i(n);if(a)return a}if(e===void 0)throw new Error(`Element with type ${n.element.type} not handled. Note that renderElement is not defined on SinkEditable so this is only the result of checking the Sink Plugins.`);return e(n)}}import{cloneElement as hd}from"react";function Qn(e,t){if(e===void 0)throw new Error("renderLeaf was not defined on SinkEditable");let o=t.map(r=>r.editableProps?.renderLeaf).filter(ne).reverse();return function(r){let n=e({...r,attributes:{}});for(let i of o){let a=i({...r,children:n});a&&(n=a)}return n=hd(n,r.attributes),n}}function jn(e,t){if(e)return e;let o=t.map(r=>r.editableProps?.renderPlaceholder).filter(ne);if(o.length!==0)return function(r){if(o.length>1)throw new Error(`Only one plugin can define renderPlaceholder but there are ${o.length}`);let n=o[0];if(n==null)throw new Error("Expected fn to be defined");return n(r)}}import gd from"@emotion/styled";var at=gd("div")`
|
|
37
29
|
-webkit-font-smoothing: antialiased;
|
|
38
30
|
-moz-osx-font-smoothing: grayscale;
|
|
39
31
|
font-size: 16px;
|
|
40
32
|
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto,
|
|
41
33
|
Oxygen-Sans, Ubuntu, Cantarell, "Helvetica Neue", sans-serif;
|
|
42
34
|
box-sizing: border-box;
|
|
43
|
-
`;import{jsx as
|
|
35
|
+
`;import{jsx as yd}from"react/jsx-runtime";function Yn(e){let t=xd();bd(()=>{Ed.normalize(t,{force:!0})},[]);let{plugins:o}=t.sink,r=Xn(()=>({...e,decorate:Fn(e.decorate,o),renderElement:qn(e.renderElement,o),renderLeaf:Qn(e.renderLeaf,o),renderPlaceholder:jn(e.renderPlaceholder,o),onKeyDown:Kn(e.onKeyDown,o),onKeyUp:_n(e.onKeyUp,o),onPaste:Wn(e.onPaste,o),onDrop:Gn(e.onDrop,o)}),Object.values(e)),n=Xn(()=>Vn(o),[o]);return yd(n,{...r})}function De(e,t,o){let r=e[t],n=o.filter(i=>i.editor?.[t]);return function(a){for(let s of n){let c=s.editor?.[t],d=c?.(a);if(typeof d=="boolean")return d}return r(a)}}function le(e,t,o){let r=e[t],n=o.filter(i=>i.editor?.[t]);return function(...a){let l=!1,s=[];for(let m of n){let c=m.editor?.[t]?.(...a);if(typeof c=="function")s.push(c);else if(c===!0){l=!0;break}}l||r(...a),s.forEach(m=>m())}}function Jn(e){return(t,o)=>{let r=t,n=e.map(i=>i(r,o,{createPolicy:a=>a}));return r.sink={plugins:n},r.isMaster="isMaster"in r?r.isMaster:()=>!1,r.isSlave="isSlave"in r?r.isSlave:()=>!1,r.isStandalone="isStandalone"in r?r.isStandalone:()=>!1,Object.assign(r,{normalizeNode:le(r,"normalizeNode",n),deleteBackward:le(r,"deleteBackward",n),deleteForward:le(r,"deleteForward",n),deleteFragment:le(r,"deleteFragment",n),insertBreak:le(r,"insertBreak",n),insertFragment:le(r,"insertFragment",n),insertNode:le(r,"insertNode",n),insertText:le(r,"insertText",n),isInline:De(r,"isInline",n),isVoid:De(r,"isVoid",n),isMaster:De(r,"isMaster",n),isSlave:De(r,"isSlave",n),isStandalone:De(r,"isStandalone",n)}),r}}var Zn=e=>{let t=e.map(n=>n.fn);return{withSink:Jn(t),SinkEditable:Yn}};import{Element as kd}from"slate";import{ReactEditor as vd}from"slate-react";function ei(e,t){return kd.isElement(t)?vd.findPath(e,t):t}function u(e,t){return e.bind(null,t)}function W(e,t,o){return e.bind(null,t,o)}var Td=/mac os x|macintosh/i,lt;function Pt(){if(lt!==void 0)return lt;try{let{userAgent:e}=window.navigator;lt=Td.test(e)}catch{lt=!1}return lt}function Te(e){e.preventDefault(),e.stopPropagation()}import{Editor as ri,Path as wd}from"slate";import{Element as ti}from"slate";function oi(e){if(typeof e=="function")return e;if(typeof e=="string")return o=>ti.isElement(o)&&o.type===e;if(Array.isArray(e))return o=>ti.isElement(o)&&e.includes(o.type);let t=e;throw new Error(`Expected matchNode to be a function, string or array but is ${t}`)}function E(e,t,{at:o=e.selection}={}){if(o===null)return;let r=ei(e,o),n=oi(t);if(wd.isPath(r)){let i=ri.node(e,r);if(i&&n(i[0]))return i}return ri.above(e,{at:r,match:n})}function Ne(...e){return E(...e)?.[1]}import{jsx as Id}from"react/jsx-runtime";var x=({strokeWidth:e=1.5,...t})=>Id("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",strokeWidth:e,stroke:"currentColor",fill:"none",strokeLinecap:"round",strokeLinejoin:"round",viewBox:"0 0 24 24",...t});import{Range as Md}from"slate";function se(e){return e==null?!1:Md.isCollapsed(e)}import{Element as ni}from"slate";function Ct(e){return Array.isArray(e)?t=>ni.isElement(t)&&e.includes(t.type):t=>ni.isElement(t)&&e==t.type}import{Editor as Pd}from"slate";function ii(e,t){let{selection:o}=e;if(!se(o))return!1;let r=E(e,t,{at:o});return!!r&&Pd.isEnd(e,o.anchor,r[1])}import{Editor as bv}from"slate";import{Editor as Cd}from"slate";function we(e,t){let{selection:o}=e;if(!se(o))return!1;let r=E(e,t,{at:o});return!!r&&Cd.isStart(e,o.anchor,r[1])}import{isHotkey as ai}from"is-hotkey";import{Editor as So,Element as Sd,Range as Rd,Transforms as Ld}from"slate";var Bd=ai(" "),zd=ai("SHIFT+SPACE");function li(e,t){return o=>{if(!Bd(o.nativeEvent)&&!zd(o.nativeEvent))return!1;let{selection:r}=e;if(r===null||Rd.isExpanded(r))return!1;let n=E(e,m=>Sd.isElement(m)&&e.convertElement.isConvertibleElement(m));if(!n)return!1;let i={anchor:So.start(e,n[1]),focus:r.focus},a=So.string(e,i),l=t[a];if(!l)return!1;Te(o);let s={anchor:So.start(e,n[1]),focus:r.focus};return Ld.delete(e,{at:s}),l(),!0}}import{isHotkey as Dd}from"is-hotkey";function si(e){let t=e.replace(/\bsuper\b/g,Pt()?"cmd+alt":"ctrl+shift");return Dd(t)}function D(e){let t=null;return function(r){t==null&&(t=Object.entries(e).map(([n,i])=>[si(n),i]));for(let[n,i]of t)if(n(r.nativeEvent)){let a=i();if(a===!0||a===void 0)return r.preventDefault(),r.stopPropagation(),!0}return!1}}import{Editor as Nd,Transforms as mi}from"slate";function ci(e,t){Nd.withoutNormalizing(e,()=>{mi.setNodes(e,{__DOESNT_MATTER_JUST_TO_START_NORMALIZING__:"123"},{at:t}),mi.setNodes(e,{__DOESNT_MATTER_JUST_TO_START_NORMALIZING__:null},{at:t})})}import{Editor as pi}from"slate";function ge(e,t,o){let[,r]=t,n=pi.previous(e,{at:r});if(n&&o(n,t))return!0;let i=pi.next(e,{at:r});return!!(i&&o(t,i))}import{Editor as di,Transforms as ui}from"slate";function G(e,t){ui.select(e,di.start(e,t))}function fi(e,t){ui.select(e,di.end(e,t))}function hi(e,t){return typeof t!="function"?t:t(e)}import{Editor as Ro,Element as $d,Path as Hd,Transforms as st}from"slate";function gi(e,t,{at:o=e.selection}={}){if(o==null)return!1;let r=E(e,n=>$d.isElement(n)&&e.isMaster(n));if(r==null){let n=e.selection;Ro.withoutNormalizing(e,()=>{st.insertNodes(e,t,{at:o}),n&&(st.select(e,n),st.move(e))})}else{let n=Hd.next(r[1]);Ro.withoutNormalizing(e,()=>{st.insertNodes(e,t,{at:n}),st.select(e,Ro.start(e,n))})}return!0}import{Editor as bi,Transforms as Ei}from"slate";function mt(e,t,o){bi.withoutNormalizing(e,()=>{let r=bi.node(e,o),n=hi(r[0],t);Ei.wrapNodes(e,n,{at:o}),Ei.unwrapNodes(e,{at:[...o,0]})})}import{Editor as Ad,Transforms as Od}from"slate";function St(e,t,o){let r=Array.from(Ad.nodes(e,o));if(r.length===0)return!1;for(let n of r){let[i]=n;Od.setNodes(e,t(i),{at:n[1]})}return!0}function xi(e,t){let o=t.clipboardData,{types:r}=o;if(r.length>1||r[0]!=="text/plain")return!1;let n=o.getData("text/plain");return Ud(n)?(t.preventDefault(),t.stopPropagation(),e.anchor.insertLink(n),!0):!1}function Ud(e){let t;try{t=new URL(e)}catch{return!1}return t.protocol==="http:"||t.protocol==="https:"||t.protocol==="mailto:"}import{Editor as Fd,Node as Vd,Transforms as Lo}from"slate";function yi(e,{href:t,title:o,text:r},{at:n}){let i=E(e,"anchor",{at:n});if(!i)return!1;let[a,l]=i;if(Lo.setNodes(e,{href:t,title:o},{at:l}),r!==void 0){let s=Vd.string(a);r!==s&&Fd.withoutNormalizing(e,()=>{let m=a.children.length;for(let c=m-1;c>=0;c--)Lo.removeNodes(e,{at:[...l,c]});Lo.insertNodes(e,{text:r},{at:[...l,0]})})}return!0}import{Editor as Rt,Range as Kd,Text as _d,Transforms as Bo}from"slate";function ki(e,t,o=t,{select:r=!0,title:n}={}){let i=e.selection||{anchor:Rt.start(e,[0]),focus:Rt.start(e,[0])};if(Kd.isCollapsed(i)){if(Bo.insertNodes(e,{type:"anchor",href:t,title:n,children:[{text:o}]},{select:r,at:i}),r&&e.selection){let a=Rt.node(e,e.selection);Bo.select(e,a[1])}}else Bo.wrapNodes(e,{type:"anchor",href:t,title:n,children:[]},{split:!0,match:a=>_d.isText(a)||Rt.isInline(e,a)})}import{Transforms as Wd}from"slate";function vi(e,{at:t}){let o=E(e,"anchor",{at:t});return o?(Wd.unwrapNodes(e,{at:o[1]}),!0):!1}function Ti(e){return{insertLink:u(ki,e),removeLink:u(vi,e),editLink:u(yi,e)}}import{Element as wi,Transforms as Gd}from"slate";function Ii(e,t){if(!wi.isElement(t[0])||t[0].type!=="anchor")return!1;let o=t[0].children;for(let r=0;r<o.length;r++){let n=o[r];if(!(!wi.isElement(n)||n.type!=="anchor"))return Gd.unwrapNodes(e,{at:[...t[1],r]}),!0}return!1}import{clsx as Ou}from"clsx";import{useEffect as Uu,useRef as pa}from"react";import{useSelected as Fu,useSlate as Vu}from"slate-react";import{createContext as Pi,useState as Qd}from"react";import{createPortal as qd}from"react-dom";function Mi({children:e}){return qd(e,document.body)}import{jsx as zo,jsxs as Xd}from"react/jsx-runtime";var Do=Pi({}),jd=Pi({});function Ci({children:e}){let[t,o]=Qd({});function r(i){o(a=>({...a,[i.type]:i}))}function n(i){o(a=>{let l={...a};return delete l[i],l})}return Xd(Do.Provider,{value:{layers:t,setLayers:o,openLayer:r,closeLayer:n},children:[e,Object.entries(t).map(([,i])=>zo(Mi,{children:zo(jd.Provider,{value:i,children:zo(i.Component,{})})},i.type))]})}import{useContext as Yd}from"react";function H(e){let{openLayer:t,closeLayer:o,layers:r}=Yd(Do);function n(a){t({type:e,Component:a})}function i(){o(e)}return{open:n,close:i,layer:r[e],type:e}}import Lt from"@emotion/styled";var Si=Lt("a")`
|
|
44
36
|
/**
|
|
45
37
|
* Link colors
|
|
46
38
|
*/
|
|
@@ -59,10 +51,10 @@
|
|
|
59
51
|
&.--selected {
|
|
60
52
|
background: var(--blue-50);
|
|
61
53
|
}
|
|
62
|
-
`,No=
|
|
54
|
+
`,No=Lt("span")`
|
|
63
55
|
display: inline;
|
|
64
56
|
padding: 0 1px 0 0;
|
|
65
|
-
`,
|
|
57
|
+
`,v1=Lt("span")`
|
|
66
58
|
position: fixed;
|
|
67
59
|
width: 100px;
|
|
68
60
|
background: var(--shade-50);
|
|
@@ -71,14 +63,14 @@
|
|
|
71
63
|
border: 1px solid var(--shade-400);
|
|
72
64
|
overflow: hidden;
|
|
73
65
|
box-shadow: 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 1px 2px 0 rgba(0, 0, 0, 0.06);
|
|
74
|
-
`,
|
|
66
|
+
`,T1=Lt("span")`
|
|
75
67
|
position: absolute;
|
|
76
68
|
left: 0;
|
|
77
69
|
top: 0;
|
|
78
70
|
height: 14px;
|
|
79
71
|
background: var(--blue-400);
|
|
80
72
|
transition: width 100ms linear;
|
|
81
|
-
`;import
|
|
73
|
+
`;import Du from"@emotion/styled";import{useCallback as Ft,useState as Nu}from"react";import{useSlateStatic as $u}from"slate-react";import{useRef as Zd}from"react";import Jd from"@emotion/styled";var Ri=Jd("div")`
|
|
82
74
|
position: fixed;
|
|
83
75
|
user-select: none;
|
|
84
76
|
top: 0;
|
|
@@ -87,7 +79,7 @@
|
|
|
87
79
|
bottom: 0;
|
|
88
80
|
overflow-y: auto;
|
|
89
81
|
background: rgba(0, 0, 0, 0.01);
|
|
90
|
-
`;import{jsx as
|
|
82
|
+
`;import{jsx as eu}from"react/jsx-runtime";function be({close:e}){let t=Zd(null);return eu(Ri,{ref:t,onClick:e})}var ie={cmd:"\u2318",ctrl:"\u2303",shift:"\u21E7",opt:"\u2325",enter:"\u23CE"},tu={shift:ie.shift,opt:ie.opt,alt:ie.opt,ctrl:ie.ctrl,mod:ie.cmd,cmd:ie.cmd,enter:ie.enter,super:`${ie.opt}${ie.cmd}`},ou={alt:"ALT",ctrl:"CTRL",opt:"ALT",shift:"SHIFT",mod:"CTRL",cmd:"CTRL",enter:ie.enter,super:"CTRL+SHIFT"};function Li(e,t){let o=e.findIndex(r=>r===t);o!==-1&&e.splice(o,1)}function ru(e){let t=[];return Object.entries(tu).forEach(([o,r])=>{e.includes(o)&&(t.push(r),Li(e,o))}),t.push(...e.map(o=>o.toUpperCase())),t.join("")}function nu(e){let t=[];return Object.entries(ou).forEach(([o,r])=>{e.includes(o)&&(t.push(r),Li(e,o))}),t.push(...e.map(o=>o.toUpperCase())),t.join("+")}function Bt(e){let t=e.toLowerCase().split("+");return Pt()?ru(t):nu(t)}import{useRef as hu}from"react";import{useSlateStatic as gu}from"slate-react";function $o(e){let t=e.getBoundingClientRect();return{top:t.top,right:t.right,bottom:t.bottom,left:t.left,width:t.width,height:t.height}}function Bi(e){let t=$o(e),{scrollY:o}=window;return Object.assign(t,{top:t.top+o,bottom:t.bottom+o})}function Ho(){let e=document.documentElement.clientWidth||document.body.clientWidth;return{top:0,right:e,bottom:window.innerHeight,left:0,width:e,height:window.innerHeight}}function zi(){let e=Ho();return Object.assign(e,{top:window.scrollY,bottom:window.scrollY+e.height})}var Di=iu;function iu(e,t){for(var o={},r=Object.keys(e),n=r.length,i=0;i<n;i++){var a=r[i];o[a]=t(e[a],a,e)}return o}function Ao(e,t){return Di(e,r=>{let n=r instanceof HTMLElement?r:r.current;return n?t(n):null})}import{useEffect as su}from"react";import au from"lodash.throttle";import{useState as lu}from"react";function zt(e=100){let[t,o]=lu(0),r=au(()=>{o(n=>n+1)},e,{trailing:!0});return Object.assign(r,{counter:t})}function Oo(){let e=zt();return su(()=>(e(),window.addEventListener("resize",e),window.addEventListener("scroll",e),()=>{window.removeEventListener("resize",e),window.removeEventListener("scroll",e)}),[]),e}function j(e,t){let o=Oo(),r=Ao(e,n=>Bi(n));return t(r,zi(),o)}function Dt(e,t,o,{margin:r=0}={}){if(e==null)return{...o,left:-1024};let{top:n}=o,{left:i}=o,a=t.right-t.left-r*2;return e.width>=a?i=t.left+r:(i+e.width>t.right-r&&(i=t.right-e.width-r),i<t.left+r&&(i=t.left+r)),{left:i,top:n}}import Uo from"@emotion/styled";import mu from"@emotion/styled";var X=mu(at)`
|
|
91
83
|
position: absolute;
|
|
92
84
|
z-index: 1000;
|
|
93
85
|
border: 1px solid var(--table-border-color);
|
|
@@ -113,14 +105,14 @@
|
|
|
113
105
|
* even if we did, it looks better this way.
|
|
114
106
|
*/
|
|
115
107
|
/* transition: left 100ms, top 100ms; */
|
|
116
|
-
`;var
|
|
108
|
+
`;var Ni=Uo(X)`
|
|
117
109
|
width: 24em;
|
|
118
110
|
padding: 0;
|
|
119
111
|
overflow: hidden;
|
|
120
|
-
|
|
112
|
+
`,Nt=Uo("div")`
|
|
121
113
|
display: flex;
|
|
122
114
|
gap: 0.5em;
|
|
123
|
-
|
|
115
|
+
`,$t=Uo("input")`
|
|
124
116
|
flex: 1 1 auto;
|
|
125
117
|
padding: 0.5em 0.75em;
|
|
126
118
|
border-radius: 0.25em;
|
|
@@ -131,7 +123,7 @@
|
|
|
131
123
|
&:focus {
|
|
132
124
|
outline: 2px solid var(--blue-200);
|
|
133
125
|
}
|
|
134
|
-
`;import
|
|
126
|
+
`;import Hi from"@emotion/styled";import cu from"@emotion/styled";var $i=cu(at)`
|
|
135
127
|
border: 1px solid var(--shade-300); /* shade-300 */
|
|
136
128
|
border-radius: 0.5em;
|
|
137
129
|
color: rgb(39 39 42); /* shade-800 */
|
|
@@ -147,9 +139,9 @@
|
|
|
147
139
|
*/
|
|
148
140
|
outline: 2px solid var(--select-editor-color) !important;
|
|
149
141
|
}
|
|
150
|
-
`;var
|
|
142
|
+
`;var Ai=Hi("div")`
|
|
151
143
|
padding: 2em;
|
|
152
|
-
`,Hi
|
|
144
|
+
`,Oi=Hi($i)`
|
|
153
145
|
/**
|
|
154
146
|
* We use this to make sure the top of the container is rounded even though
|
|
155
147
|
* the toolbar inside is square. We keep the toolbar square so that as the
|
|
@@ -170,7 +162,7 @@
|
|
|
170
162
|
overflow-y: clip;
|
|
171
163
|
display: flex;
|
|
172
164
|
flex-direction: column;
|
|
173
|
-
`;import Fo from"@emotion/styled";var
|
|
165
|
+
`;import Fo from"@emotion/styled";var Ui=Fo(X)`
|
|
174
166
|
position: absolute;
|
|
175
167
|
padding-top: 0.5em;
|
|
176
168
|
padding-bottom: 0.5em;
|
|
@@ -180,7 +172,7 @@
|
|
|
180
172
|
* Prevent clicks from stealing focus from the editor
|
|
181
173
|
*/
|
|
182
174
|
user-select: none;
|
|
183
|
-
`,
|
|
175
|
+
`,Fi=Fo("div")`
|
|
184
176
|
display: flex;
|
|
185
177
|
z-index: 10;
|
|
186
178
|
padding: 0 1em 0 1.5em;
|
|
@@ -220,12 +212,12 @@
|
|
|
220
212
|
&:hover {
|
|
221
213
|
background: var(--blue-50);
|
|
222
214
|
}
|
|
223
|
-
`,
|
|
215
|
+
`,Vi=Fo("div")`
|
|
224
216
|
height: 1px;
|
|
225
217
|
background: var(--shade-200);
|
|
226
218
|
margin-top: 0.25em;
|
|
227
219
|
margin-bottom: 0.25em;
|
|
228
|
-
`;import ct from"@emotion/styled";var
|
|
220
|
+
`;import ct from"@emotion/styled";var Ki=ct("div")`
|
|
229
221
|
/**
|
|
230
222
|
* This flex rule applies to the "display: flex;" of the parent container.
|
|
231
223
|
* Ensures the toolbar does not shrink or grow vertically.
|
|
@@ -264,22 +256,22 @@
|
|
|
264
256
|
3em + 1px
|
|
265
257
|
); // $ToolbarDivider height + border-bottom of 1px above
|
|
266
258
|
overflow: hidden;
|
|
267
|
-
`,
|
|
259
|
+
`,_i=ct("div")`
|
|
268
260
|
display: inline-block;
|
|
269
261
|
height: calc(
|
|
270
262
|
3em + 1px
|
|
271
263
|
); // $ToolbarDivider height + border-bottom of 1px above
|
|
272
|
-
`,
|
|
264
|
+
`,Wi=ct("div")`
|
|
273
265
|
display: inline-block;
|
|
274
266
|
height: 3em;
|
|
275
267
|
padding: 0 0.375em;
|
|
276
|
-
`,
|
|
268
|
+
`,Gi=ct("div")`
|
|
277
269
|
display: inline-block;
|
|
278
270
|
background: var(--shade-300);
|
|
279
271
|
opacity: 50%;
|
|
280
272
|
width: 1px;
|
|
281
273
|
height: 3em;
|
|
282
|
-
`,
|
|
274
|
+
`,qi=ct("div")`
|
|
283
275
|
box-sizing: border-box;
|
|
284
276
|
position: relative;
|
|
285
277
|
display: inline-block;
|
|
@@ -329,7 +321,7 @@
|
|
|
329
321
|
margin-left: -0.25em;
|
|
330
322
|
opacity: 0.375;
|
|
331
323
|
}
|
|
332
|
-
`;import{useCallback as
|
|
324
|
+
`;import{useCallback as pu}from"react";import{ReactEditor as du}from"slate-react";import{Fragment as fu,jsx as $e,jsxs as uu}from"react/jsx-runtime";function Qi({editor:e,item:t,close:o,dest:r}){let n=H("menu"),i=pu(()=>{if(t.Component){let a=t.Component;n.open(()=>$e(a,{dest:r,close:n.close}))}else t.action&&(t.action(e),du.focus(e),o())},[e,t]);return $e(fu,{children:uu(Fi,{onClick:i,children:[$e("div",{className:"--icon",children:$e(t.icon,{})}),$e("div",{className:"--title",children:t.title}),$e("div",{className:"--hotkey",children:t.hotkey?Bt(t.hotkey):void 0})]})})}import{Fragment as bu,jsx as Ht,jsxs as Eu}from"react/jsx-runtime";function He({dest:e,items:t,close:o}){let r=gu(),n=hu(null),i=j({src:n,dest:e},({dest:a})=>({left:a.left-8,top:a.top+a.height}));return Eu(bu,{children:[Ht(be,{close:o}),Ht(Ui,{ref:n,style:i,children:t.map((a,l)=>a==="divider"?Ht(Vi,{},l):a.show&&!a.show(r)?null:Ht(Qi,{editor:r,item:a,close:o,dest:e},l))})]})}import{useCallback as Ji}from"react";import ji from"@emotion/styled";import{jsx as ku,jsxs as vu}from"react/jsx-runtime";function Vo(e){return e.getBoundingClientRect()}var xu=ji("div")`
|
|
333
325
|
position: fixed;
|
|
334
326
|
z-index: 10;
|
|
335
327
|
-webkit-font-smoothing: antialiased;
|
|
@@ -345,12 +337,12 @@
|
|
|
345
337
|
background: var(--shade-700);
|
|
346
338
|
border-radius: 0.25em;
|
|
347
339
|
white-space: nowrap;
|
|
348
|
-
`,
|
|
340
|
+
`,yu=ji("span")`
|
|
349
341
|
margin-left: 0.75em;
|
|
350
342
|
font-size: 0.875em;
|
|
351
343
|
font-weight: 500;
|
|
352
344
|
color: var(--shade-400);
|
|
353
|
-
`;function
|
|
345
|
+
`;function Xi({title:e,hotkey:t,dest:o}){let r=Vo(o);return vu(xu,{style:{left:r.left,top:`calc(${r.top}px - 2em)`},children:[e,t?ku(yu,{children:t}):null]})}import Tu from"@emotion/styled";import{jsx as Iu}from"react/jsx-runtime";var wu=Tu("span")`
|
|
354
346
|
position: fixed;
|
|
355
347
|
z-index: 10;
|
|
356
348
|
width: 0;
|
|
@@ -358,7 +350,7 @@
|
|
|
358
350
|
border-left: 0.375em solid transparent;
|
|
359
351
|
border-right: 0.375em solid transparent;
|
|
360
352
|
border-top: 0.375em solid var(--shade-700);
|
|
361
|
-
`;function
|
|
353
|
+
`;function Yi({dest:e}){let t=Vo(e);return Iu(wu,{style:{left:`calc(${t.left+t.width/2}px - 0.375em)`,top:`calc(${t.top}px - 0.5em)`}})}import{jsx as Zi}from"react/jsx-runtime";function Y({title:e,hotkey:t},o=[]){let r=H("tooltip-label"),n=H("tooltip-triangle"),i=Ji(l=>{let s=l.currentTarget;e!==void 0&&(r.open(()=>Zi(Xi,{title:e,hotkey:typeof t=="function"?t():t,dest:s})),n.open(()=>Zi(Yi,{dest:s})))},o),a=Ji(()=>{r.close(),n.close()},o);return{onMouseEnter:i,onMouseLeave:a}}import Su from"@emotion/styled";import{useCallback as Oe,useRef as Ru,useState as Ot}from"react";import{Node as Lu}from"slate";import{useSlateStatic as Bu}from"slate-react";import Ee from"@emotion/styled";var Ae=Ee("div")`
|
|
362
354
|
margin: 0.5em 0;
|
|
363
355
|
&:first-of-type {
|
|
364
356
|
margin-top: 0;
|
|
@@ -366,7 +358,7 @@
|
|
|
366
358
|
&:last-of-type {
|
|
367
359
|
margin-bottom: 0;
|
|
368
360
|
}
|
|
369
|
-
`,
|
|
361
|
+
`,At=Ee("div")`
|
|
370
362
|
font-size: 0.9375em;
|
|
371
363
|
margin-bottom: 0.25em;
|
|
372
364
|
color: var(--shade-700);
|
|
@@ -374,7 +366,7 @@
|
|
|
374
366
|
font-size: 0.875em;
|
|
375
367
|
margin-top: 0.25em;
|
|
376
368
|
color: var(--shade-500);
|
|
377
|
-
`,
|
|
369
|
+
`,ea=Ee("input")`
|
|
378
370
|
box-sizing: border-box;
|
|
379
371
|
width: 100%;
|
|
380
372
|
height: 6em;
|
|
@@ -400,7 +392,7 @@
|
|
|
400
392
|
&:focus {
|
|
401
393
|
outline: 2px solid var(--blue-200);
|
|
402
394
|
}
|
|
403
|
-
`,
|
|
395
|
+
`,ta=Ee("div")`
|
|
404
396
|
/* Center vertically and horizontally */
|
|
405
397
|
display: flex;
|
|
406
398
|
align-items: center;
|
|
@@ -414,7 +406,7 @@
|
|
|
414
406
|
font-size: 1.25em;
|
|
415
407
|
stroke-width: 2px;
|
|
416
408
|
}
|
|
417
|
-
`,
|
|
409
|
+
`,oa=Ee(ta)`
|
|
418
410
|
color: var(--blue-50);
|
|
419
411
|
background: var(--blue-500);
|
|
420
412
|
outline: 0px solid white;
|
|
@@ -426,7 +418,7 @@
|
|
|
426
418
|
svg {
|
|
427
419
|
color: var(--blue-200);
|
|
428
420
|
}
|
|
429
|
-
`,
|
|
421
|
+
`,ra=Ee(ta)`
|
|
430
422
|
color: var(--shade-500);
|
|
431
423
|
background: var(--shade-200);
|
|
432
424
|
outline: 0px solid white;
|
|
@@ -438,7 +430,7 @@
|
|
|
438
430
|
svg {
|
|
439
431
|
color: var(--shade-400);
|
|
440
432
|
}
|
|
441
|
-
`;import{useRef as
|
|
433
|
+
`;import{useRef as Mu,useCallback as Ie}from"react";import ia from"@emotion/styled";import{jsx as na}from"react/jsx-runtime";var Pu=ia.div`
|
|
442
434
|
display: flex;
|
|
443
435
|
align-items: center;
|
|
444
436
|
justify-content: center;
|
|
@@ -453,17 +445,17 @@
|
|
|
453
445
|
&:active {
|
|
454
446
|
cursor: grabbing;
|
|
455
447
|
}
|
|
456
|
-
`,
|
|
448
|
+
`,Cu=ia.div`
|
|
457
449
|
width: 32px;
|
|
458
450
|
height: 4px;
|
|
459
451
|
background: #ccc;
|
|
460
452
|
border-radius: 2px;
|
|
461
|
-
`;function xe({onDrag:e}){let t=
|
|
453
|
+
`;function xe({onDrag:e}){let t=Mu(null),o=Ie((m,c)=>{t.current={x:m,y:c}},[]),r=Ie((m,c)=>{if(!t.current)return;let d=m-t.current.x,p=c-t.current.y;t.current={x:m,y:c},e(d,p)},[e]),n=Ie(()=>{t.current=null},[]),i=Ie(m=>{m.preventDefault(),o(m.clientX,m.clientY);let c=p=>{r(p.clientX,p.clientY)},d=()=>{n(),document.removeEventListener("mousemove",c),document.removeEventListener("mouseup",d)};document.addEventListener("mousemove",c),document.addEventListener("mouseup",d)},[o,r,n]),a=Ie(m=>{if(m.touches.length!==1)return;let c=m.touches[0];o(c.clientX,c.clientY)},[o]),l=Ie(m=>{if(m.touches.length!==1)return;let c=m.touches[0];r(c.clientX,c.clientY)},[r]),s=Ie(()=>{n()},[n]);return na(Pu,{onMouseDown:i,onTouchStart:a,onTouchMove:l,onTouchEnd:s,children:na(Cu,{})})}import{jsx as V,jsxs as pt}from"react/jsx-runtime";var zu=Su(X)`
|
|
462
454
|
position: absolute;
|
|
463
455
|
width: 20em;
|
|
464
456
|
padding: 0;
|
|
465
457
|
overflow: hidden;
|
|
466
|
-
`;function
|
|
458
|
+
`;function aa({destAnchor:e,destStartEdge:t,element:o}){let r=H("dialog"),[n,i]=Ot({x:0,y:0}),a=Oe((T,I)=>{i(k=>({x:k.x+T,y:k.y+I}))},[]),l=j({destAnchor:e,destStartEdge:t},({destAnchor:T,destStartEdge:I})=>({left:I.left,top:T.top+T.height})),s={...l,left:l.left+n.x,top:l.top+n.y},m=Bu(),[c,d]=Ot(o.href),[p,b]=Ot(Lu.string(o)),[g,v]=Ot(o.title||""),C=Ru({href:c,text:p,title:g});C.current={href:c,text:p,title:g};let P=Oe(T=>{d(T.target.value)},[]),w=Oe(T=>{b(T.target.value)},[]),S=Oe(T=>{v(T.target.value)},[]),M=Oe(()=>{r.open(()=>V(Ut,{destAnchor:e,destStartEdge:t,element:o}))},[e,t,o]),N=Oe(()=>{let{href:T,text:I,title:k}=C.current;m.anchor.editLink({href:T,text:I,title:k},{at:o}),M()},[M]);return pt(zu,{contentEditable:!1,style:s,children:[V(xe,{onDrag:a}),pt("div",{style:{padding:"1em"},children:[pt(Ae,{children:[V(At,{children:f("linkUrl")}),V(ea,{as:"textarea",value:c,onChange:P})]}),pt(Ae,{children:[V(At,{children:f("linkText")}),V(_o,{type:"text",value:p,onChange:w}),V(Ko,{children:f("linkTextHint")})]}),pt(Ae,{children:[V(At,{children:f("tooltipText")}),V(_o,{type:"text",value:g,onChange:S}),V(Ko,{children:f("tooltipHint")})]}),V(Ae,{children:V(oa,{onClick:N,children:f("apply")})}),V(Ae,{children:V(ra,{onClick:M,children:f("cancel")})})]})]})}import{jsx as ye}from"react/jsx-runtime";var la=e=>ye(x,{...e,children:ye("path",{d:"M12 6H6a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2v-6M11 13l9-9M15 4h5v5"})}),sa=e=>ye(x,{...e,children:ye("path",{d:"m9 15 3-3m2-2 1-1M11 6l.463-.536a5 5 0 0 1 7.071 7.072L18 13M3 3l18 18M13 18l-.397.534a5.068 5.068 0 0 1-7.127 0 4.972 4.972 0 0 1 0-7.071L6 11"})}),ma=e=>ye(x,{...e,children:ye("path",{d:"M4 20h4L18.5 9.5a1.5 1.5 0 0 0-4-4L4 16v4M13.5 6.5l4 4"})}),ca=e=>ye(x,{...e,children:ye("path",{d:"M18 6L6 18M6 6l12 12"})});import{jsx as J,jsxs as dt}from"react/jsx-runtime";var Hu=Du(X)`
|
|
467
459
|
position: absolute;
|
|
468
460
|
width: 20em;
|
|
469
461
|
z-index: 1000;
|
|
@@ -547,10 +539,10 @@
|
|
|
547
539
|
height: 1.25em;
|
|
548
540
|
stroke-width: 1.5;
|
|
549
541
|
}
|
|
550
|
-
`;function
|
|
542
|
+
`;function Au(e){try{let t=new URL(e);return{hostname:t.hostname,pathname:t.pathname}}catch{return{hostname:"",pathname:""}}}function Ut({destAnchor:e,destStartEdge:t,element:o}){let r=H("dialog"),n=$u(),i=Au(o.href),[a,l]=Nu({x:0,y:0}),s=Ft((P,w)=>{l(S=>({x:S.x+P,y:S.y+w}))},[]),m=j({destAnchor:e,destStartEdge:t},({destAnchor:P,destStartEdge:w})=>({left:w.left,top:P.top+P.height})),c={...m,left:m.left+a.x,top:m.top+a.y},d=Y({title:"\u30EA\u30F3\u30AF\u3092\u524A\u9664"}),p=Y({title:"\u30EA\u30F3\u30AF\u3092\u7DE8\u96C6"}),b=Y({title:"\u9589\u3058\u308B"}),g=Ft(()=>{r.close()},[r]),v=Ft(()=>{n.anchor.removeLink({at:o}),r.close()},[n,r]),C=Ft(()=>{p.onMouseLeave(),r.open(()=>J(aa,{destAnchor:e,destStartEdge:t,element:o}))},[e,t,o]);return dt(Hu,{contentEditable:!1,style:c,children:[J(xe,{onDrag:s}),dt("div",{style:{display:"flex",padding:"1em"},children:[dt("a",{className:"--link",href:o.href,target:"_blank",rel:"noreferrer",children:[J(la,{}),dt("div",{className:"--url",children:[J("div",{className:"--hostname",children:i.hostname}),i.pathname===""||i.pathname==="/"?null:J("div",{className:"--pathname",children:i.pathname}),o.title==null||o.title===""?null:J("div",{className:"--tooltip",children:o.title})]})]}),dt("span",{className:"--icons",children:[J("span",{className:"--icon",onClick:v,onMouseEnter:d.onMouseEnter,onMouseLeave:d.onMouseLeave,children:J(sa,{})}),J("span",{className:"--icon",onMouseEnter:p.onMouseEnter,onMouseLeave:p.onMouseLeave,onClick:C,children:J(ma,{})}),J("span",{className:"--icon",onClick:g,onMouseEnter:b.onMouseEnter,onMouseLeave:b.onMouseLeave,children:J(ca,{})})]})]})]})}import{jsx as Vt,jsxs as Ku}from"react/jsx-runtime";function da({element:e,attributes:t,children:o}){let r=pa(null),n=pa(null),i=Fu(),a=Vu(),l=H("dialog");return Uu(()=>{let s=n.current,m=r.current;if(!s||!m)return;let c=a.selection&&a.selection.anchor.offset!==a.selection.focus.offset;i&&!c?setTimeout(()=>{l.open(()=>Vt(Ut,{destAnchor:s,destStartEdge:m,element:e}))}):l.close()},[i,e]),Ku(Si,{className:Ou({"--selected":i}),href:e.href,target:e.target,...t,ref:n,children:[Vt(No,{ref:r,contentEditable:!1}),Vt("span",{children:o}),Vt(No,{contentEditable:!1})]})}import{jsx as _u}from"react/jsx-runtime";var ua=y((e,t,{createPolicy:o})=>(e.anchor=Ti(e),o({name:"anchor",editor:{isInline(r){if(r.type==="anchor")return!0},normalizeNode:u(Ii,e)},editableProps:{onPaste:u(xi,e),renderElement:({element:r,attributes:n,children:i})=>{if(r.type==="anchor")return _u(da,{element:r,attributes:n,children:i})}}})));import{Editor as Kt,Transforms as ga}from"slate";import{Element as fa,Path as ha}from"slate";function Wo(e,t,o){if(!t||!o||ha.equals(t[1],o[1]))return!0;let r=E(e,i=>fa.isElement(i)&&e.isMaster(i),{at:t[1]}),n=E(e,i=>fa.isElement(i)&&e.isMaster(i),{at:o[1]});return!!(!r&&!n||r&&n&&ha.equals(r[1],n[1]))}var ba=y(e=>(e.atomicDelete=!0,{name:"atomic-delete",editor:{deleteBackward(){if(e.selection==null)return!1;let t=Kt.node(e,e.selection),o=Kt.previous(e,{mode:"lowest"});return Wo(e,t,o)?!1:(ga.move(e,{unit:"character",reverse:!0}),!0)},deleteForward(){if(e.selection==null)return!1;let t=Kt.node(e,e.selection),o=Kt.next(e,{mode:"lowest"});return Wo(e,t,o)?!1:(ga.move(e,{unit:"character"}),!0)}}}));import{Transforms as Bf}from"slate";import{ReactEditor as zf}from"slate-react";import{Editor as Wu,Transforms as Ea}from"slate";import{ReactEditor as Gu}from"slate-react";function qu(e){}function Qu(e,t,o,r){let{selection:n}=e;if(Ea.insertNodes(e,{type:"image-block",url:t,alt:o||"",title:r||"",width:320,height:240,children:[{text:""}]}),!n){let i=Wu.end(e,[]);Ea.select(e,i),Gu.focus(e)}}function xa(e){return{noop:u(qu,e),insertImageFromUrl:u(Qu,e)}}function ya(e,t){return!1}import{useSlateStatic as Pf}from"slate-react";import ju from"@emotion/styled";var ka=ju("div")`
|
|
551
543
|
display: block;
|
|
552
544
|
margin: 1em 0;
|
|
553
|
-
`;import{clsx as
|
|
545
|
+
`;import{clsx as wf}from"clsx";import{useState as ol}from"react";import{useSelected as If}from"slate-react";import va from"@emotion/styled";var Ta=va("span")`
|
|
554
546
|
/**
|
|
555
547
|
* In order for this container to wrap tightly (without space), it needs to be
|
|
556
548
|
* an "inline-block". If it's just an "inline" we end up with spacing
|
|
@@ -562,7 +554,7 @@
|
|
|
562
554
|
* so that we can place UI controls for the image in and around the image.
|
|
563
555
|
*/
|
|
564
556
|
position: relative;
|
|
565
|
-
`,va
|
|
557
|
+
`,wa=va("img")`
|
|
566
558
|
/**
|
|
567
559
|
* TODO:
|
|
568
560
|
*
|
|
@@ -624,7 +616,7 @@
|
|
|
624
616
|
.--dragging > & {
|
|
625
617
|
transition: border-radius 250ms;
|
|
626
618
|
}
|
|
627
|
-
`;import{clsx as
|
|
619
|
+
`;import{clsx as ef}from"clsx";import{useCallback as Ra}from"react";import{Transforms as La}from"slate";import{ReactEditor as qo,useSlateStatic as tf}from"slate-react";import{useEffect as Xu}from"react";function Ia(){let e=zt();return Xu(()=>(e(),window.addEventListener("resize",e),()=>{window.removeEventListener("resize",e)}),[]),e}import Ma from"@emotion/styled";var Pa=Ma("span")`
|
|
628
620
|
position: absolute;
|
|
629
621
|
display: block;
|
|
630
622
|
/**
|
|
@@ -651,7 +643,7 @@
|
|
|
651
643
|
/* background: green; */
|
|
652
644
|
width: 1.25em;
|
|
653
645
|
}
|
|
654
|
-
`,Ma
|
|
646
|
+
`,Ca=Ma("span")`
|
|
655
647
|
position: absolute;
|
|
656
648
|
display: block;
|
|
657
649
|
background: var(--select-color);
|
|
@@ -744,7 +736,7 @@
|
|
|
744
736
|
.--small > & > .--bar-right {
|
|
745
737
|
left: calc(50% + 1px);
|
|
746
738
|
}
|
|
747
|
-
`;function Go({value:e,min:t,max:o}){if(!(o>=t))throw new Error("Expected max >= min but is not");return Math.max(t,Math.min(o,e))}import{ReactEditor as
|
|
739
|
+
`;function Go({value:e,min:t,max:o}){if(!(o>=t))throw new Error("Expected max >= min but is not");return Math.max(t,Math.min(o,e))}import{ReactEditor as Yu}from"slate-react";function _t(e,t){e=Math.round(e);let o=t.width/t.height;return{width:e,height:Math.round(e/o)}}function Ju(e,t){e=Math.round(e);let o=t.width/t.height;return{width:Math.round(e*o),height:e}}function Zu(e,t){let o=e.width/e.height,r=t.width/t.height;if(o>=r){if(e.width>t.width)return _t(t.width,e)}else if(e.height>t.width)return Ju(t.height,e);return e}function Me(e,t,o){switch(o.type){case"bounds":return Zu(t,o);case"scale":return{width:Math.round(t.width*o.scale),height:Math.round(t.height*o.scale)}}}function Sa(e){let t=Yu.toDOMNode(e,e),o=getComputedStyle(t),r=parseInt(o.paddingLeft)+parseInt(o.paddingRight);return t.clientWidth-r}import{Fragment as nf,jsx as ut,jsxs as rf}from"react/jsx-runtime";function of(e,t){let r=qo.toDOMNode(e,t).querySelector("img");if(!r)throw new Error("Image Element could not be found but should exist");return r.getBoundingClientRect()}function Ba({element:e,srcSize:t,size:o,setSize:r,isDragging:n,setIsDragging:i}){let a=tf();Ia();let l=Sa(a),s=o.width,m=Math.min(t.width,l),c=Math.min(12,t.width),d=Ra(g=>{Te(g),i(!0);let v=g.clientX,P=of(a,e).width,w={...o},S=N=>{let T=Go({value:P+N.clientX-v,min:c,max:m});w=_t(T,t),r(w)},M=()=>{document.removeEventListener("mousemove",S),document.removeEventListener("mouseup",M);let N=qo.findPath(a,e),T={width:w.width,height:w.height};r(T),La.setNodes(a,T,{at:N}),i(!1)};document.addEventListener("mousemove",S),document.addEventListener("mouseup",M)},[t.width,t.height,o.width,e]),p=Ra(g=>{Te(g),i(!0);let v=g.changedTouches[0].clientX,C=o.width,P={...o},w=M=>{let N=M.changedTouches[0],T=Go({value:C+N.clientX-v,min:c,max:m});P=_t(T,t),r(P)},S=()=>{document.removeEventListener("touchmove",w),document.removeEventListener("touchend",S);let M=qo.findPath(a,e);La.setNodes(a,{width:P.width,height:P.height},{at:M}),i(!1)};document.addEventListener("touchmove",w),document.addEventListener("touchend",S)},[t.width,t.height,o.width,e]),b=ef({"--center":s<m&&s>c,"--left":s>=m&&s>c,"--right":s<=c&&s<m,"--dragging":n,"--small":s<=64||o.height<=64});return ut(nf,{children:ut(Pa,{className:b,onMouseDown:d,onTouchStart:p,children:rf(Ca,{children:[ut("span",{className:"--bar --bar-left"}),ut("span",{className:"--bar --bar-center"}),ut("span",{className:"--bar --bar-right"})]})})})}import af from"@emotion/styled";var za=af("span")`
|
|
748
740
|
position: absolute;
|
|
749
741
|
/**
|
|
750
742
|
* The status appears with a 1px gap from the outline.
|
|
@@ -766,7 +758,7 @@
|
|
|
766
758
|
|
|
767
759
|
/* force numbers to be monospaced for better alignment */
|
|
768
760
|
font-variant-numeric: tabular-nums;
|
|
769
|
-
`;import{jsxs as
|
|
761
|
+
`;import{jsxs as lf}from"react/jsx-runtime";function Da({size:e}){return lf(za,{children:[e.width," \xD7 ",e.height]})}import sf from"@emotion/styled";var Na=sf("span")`
|
|
770
762
|
position: absolute;
|
|
771
763
|
/**
|
|
772
764
|
* On top of the image +1 for space inside outline, +2 for outline,
|
|
@@ -797,7 +789,7 @@
|
|
|
797
789
|
}
|
|
798
790
|
display: flex;
|
|
799
791
|
gap: 0.25em;
|
|
800
|
-
`;import
|
|
792
|
+
`;import $a from"@emotion/styled";var Wt=$a("span")`
|
|
801
793
|
/* font-size: 0.75em; */
|
|
802
794
|
border-radius: 0.5em;
|
|
803
795
|
display: flex;
|
|
@@ -810,7 +802,7 @@
|
|
|
810
802
|
* see the border of the buttons.
|
|
811
803
|
*/
|
|
812
804
|
outline: 1px solid white;
|
|
813
|
-
`,Ue
|
|
805
|
+
`,Ue=$a("span")`
|
|
814
806
|
font-size: 0.75em;
|
|
815
807
|
line-height: 2em;
|
|
816
808
|
padding: 0 0.625em;
|
|
@@ -864,17 +856,17 @@
|
|
|
864
856
|
font-size: 1.33em;
|
|
865
857
|
line-height: 1em;
|
|
866
858
|
}
|
|
867
|
-
`;import{clsx as
|
|
859
|
+
`;import{clsx as mf}from"clsx";import{useCallback as cf}from"react";import{Transforms as pf}from"slate";import{ReactEditor as df,useSlateStatic as uf}from"slate-react";import{jsx as ff}from"react/jsx-runtime";function Ha({element:e,preset:t,size:o,setSize:r,srcSize:n}){let i=uf(),a=Me(o,n,t),l=Y({title:t.title,hotkey:`${a.width}x${a.height}`}),s=cf(()=>{let b=df.findPath(i,e),g=Me(o,n,t);r(g),pf.setNodes(i,g,{at:b})},[e,t,o,n]),c=!(t.type==="scale"?!0:t.width<=n.width||t.height<=n.height),d=o.width===a.width&&o.height===a.height,p=mf({"--disabled":c,"--selected":!c&&d});return ff(Ue,{className:p,onClick:c?void 0:s,onMouseEnter:l.onMouseEnter,onMouseLeave:l.onMouseLeave,children:t.name})}import{jsx as Aa}from"react/jsx-runtime";function Oa({element:e,size:t,setSize:o,srcSize:r,presets:n}){return Aa(Wt,{children:n.map((i,a)=>Aa(Ha,{element:e,preset:i,size:t,setSize:o,srcSize:r},a))})}import{useCallback as bf}from"react";import{useSlateStatic as Ef}from"slate-react";import{jsx as Gt,jsxs as Va}from"react/jsx-runtime";var Ua=e=>Va(x,{...e,children:[Gt("rect",{width:6,height:6,x:4,y:5,rx:1}),Gt("path",{d:"M4 15h16M4 19h16"})]}),Fa=e=>Va(x,{...e,children:[Gt("rect",{width:6,height:6,x:9,y:5,rx:1}),Gt("path",{d:"M4 7h1M4 11h1M19 7h1M19 11h1M4 15h16M4 19h16"})]});import{Editor as hf,Transforms as Ka}from"slate";import{ReactEditor as gf}from"slate-react";function _a(e,t){if(!t.width||!t.height||!t.srcWidth||!t.srcHeight)return;let o={width:t.width,height:t.height},r={width:t.srcWidth,height:t.srcHeight},n=gf.findPath(e,t);hf.withoutNormalizing(e,()=>{let i=Me(o,r,{name:"initial-inline-image",title:"",type:"bounds",width:24,height:24});Ka.setNodes(e,{type:"image-inline",...i},{at:n}),Ka.wrapNodes(e,{type:"paragraph",children:[]},{at:n})})}import{jsx as Wa}from"react/jsx-runtime";function Ga({element:e}){let t=Ef(),o=Y({title:"Inline Image",hotkey:"In a line with text"}),r=bf(()=>{e.type==="image-block"&&_a(t,e)},[t,e]);return Wa(Ue,{className:e.type==="image-inline"?"--selected":"",onClick:e.type==="image-inline"?void 0:r,onMouseEnter:o.onMouseEnter,onMouseLeave:o.onMouseLeave,children:Wa(Fa,{})})}import{useCallback as yf}from"react";import{useSlateStatic as kf}from"slate-react";import{Editor as qa,Text as Qa,Transforms as qt}from"slate";import{ReactEditor as xf}from"slate-react";function ja(e,t){if(!t.width||!t.height||!t.srcWidth||!t.srcHeight)return;let o={width:t.width,height:t.height},r={width:t.srcWidth,height:t.srcHeight},n=xf.findPath(e,t);qa.withoutNormalizing(e,()=>{let i=Me(o,r,{name:"initial-block-image",title:"",type:"bounds",width:320,height:320});qt.setNodes(e,{type:"image-block",...i},{at:n});let a=E(e,v=>qa.isBlock(e,v)&&v.type!=="image-block");if(!a)throw new Error("This shouldn't happen");let[l,s]=a,m=l.children,c=l.children.length,d=n.slice(-1)[0],p=m[c-1];d===c-2&&Qa.isText(p)&&p.text===""&&qt.removeNodes(e,{at:[...s,c-1]});let b=m[0],g=d===1&&Qa.isText(b)&&b.text==="";g&&qt.removeNodes(e,{at:[...s,0]}),qt.liftNodes(e,{at:[...s,g?d-1:d]})})}import{jsx as Xa}from"react/jsx-runtime";function Ya({element:e}){let t=kf(),o=Y({title:"Block Image",hotkey:"On a line by itself"}),r=yf(()=>{e.type==="image-inline"&&ja(t,e)},[t,e]);return Xa(Ue,{className:e.type==="image-block"?"--selected":"",onClick:e.type==="image-block"?void 0:r,onMouseEnter:o.onMouseEnter,onMouseLeave:o.onMouseLeave,children:Xa(Ua,{})})}import{jsx as Ja,jsxs as vf}from"react/jsx-runtime";function Za({element:e}){return vf(Wt,{children:[Ja(Ya,{element:e}),Ja(Ga,{element:e})]})}import{jsx as el,jsxs as Tf}from"react/jsx-runtime";function tl({element:e,size:t,setSize:o,srcSize:r,presets:n}){return Tf(Na,{children:[el(Za,{element:e}),el(Oa,{element:e,size:t,setSize:o,srcSize:r,presets:n})]})}import{jsx as Qt,jsxs as Mf}from"react/jsx-runtime";function jt({element:e,presets:t}){let o=e.url,r=If(),[n,i]=ol(!1),[a,l]=ol(e.srcWidth&&e.srcHeight&&e.width&&e.height?{width:e.width,height:e.height}:null),s=e.srcWidth&&e.srcHeight?{width:e.srcWidth,height:e.srcHeight}:null,m=r&&a&&s,c=wf({"--selected":r,"--dragging":n,"--small":a&&(a.width<=64||a.height<=64)});return Mf(Ta,{className:c,children:[Qt(wa,{src:o,width:a?.width,height:a?.height}),m?Qt(tl,{element:e,size:a,setSize:l,srcSize:s,presets:t}):null,n&&a?Qt(Da,{size:a}):null,m?Qt(Ba,{element:e,srcSize:s,isDragging:n,setIsDragging:i,size:a,setSize:l}):null]})}import{jsx as rl,jsxs as Cf}from"react/jsx-runtime";function nl({element:e,attributes:t,children:o}){let r=Pf();return Cf("div",{...t,children:[rl(ka,{contentEditable:!1,children:rl(jt,{element:e,presets:r.image.imageBlockPresets})}),o]})}import{useSlateStatic as Rf}from"slate-react";import Sf from"@emotion/styled";var il=Sf("span")`
|
|
868
860
|
display: inline;
|
|
869
|
-
`;import{jsx as
|
|
861
|
+
`;import{jsx as al,jsxs as Lf}from"react/jsx-runtime";function ll({element:e,attributes:t,children:o}){let r=Rf();return Lf("span",{...t,style:{display:"inline-block"},children:[al(il,{contentEditable:!1,children:al(jt,{element:e,presets:r.image.imageInlinePresets})}),o]})}import{jsx as sl}from"react/jsx-runtime";function ml({element:e,attributes:t,children:o}){switch(e.type){case"image-block":return sl(nl,{element:e,attributes:t,children:o});case"image-inline":return sl(ll,{element:e,attributes:t,children:o})}}function Df(e){return t=>{let{dataTransfer:o}=t;if(!o.files||o.files.length===0)return!1;let r=Array.from(o.files).filter(a=>a.type.startsWith("image/"));if(r.length===0)return!1;t.preventDefault(),t.stopPropagation();let n=zf.findEventRange(e,t);n&&Bf.select(e,n);let i=e.wysimark?.onImageChange;for(let a of r)if(i)i(a).then(l=>{l&&e.image.insertImageFromUrl(l,a.name,"")}).catch(()=>{});else{let l=new FileReader;l.onload=()=>{let s=l.result;e.image.insertImageFromUrl(s,a.name,"")},l.readAsDataURL(a)}return!0}}var Nf={maxInitialInlineImageSize:{width:64,height:64},maxInitialImageSize:{width:320,height:320},maxImageSize:{width:1024,height:1024},imageBlockPresets:[{name:"S",title:"Small",type:"bounds",width:160,height:160},{name:"M",title:"Medium",type:"bounds",width:320,height:320},{name:"L",title:"Large",type:"bounds",width:640,height:640},{name:"\u2153",title:"1/3 scale",type:"scale",scale:1/3},{name:"\xBD",title:"1/2 scale",type:"scale",scale:.5},{name:"Full",title:"Full size",type:"scale",scale:1}],imageInlinePresets:[{name:"16",title:"16 pixels",type:"bounds",width:16,height:16},{name:"24",title:"24 pixels",type:"bounds",width:24,height:24},{name:"32",title:"32 pixels",type:"bounds",width:32,height:32},{name:"\u2153",title:"1/3 scale",type:"scale",scale:1/3},{name:"\xBD",title:"1/2 scale",type:"scale",scale:.5},{name:"Full",title:"Full size",type:"scale",scale:1}]},cl=y((e,t,{createPolicy:o})=>{let r={...Nf,...t.image};return e.image={...xa(e),maxInitialInlineImageSize:r.maxInitialInlineImageSize,maxInitialImageSize:r.maxInitialImageSize,maxImageSize:r.maxImageSize,imageBlockPresets:r.imageBlockPresets,imageInlinePresets:r.imageInlinePresets},o({name:"image",editor:{isVoid:n=>{if(["image-block","image-inline"].includes(n.type))return!0},isInline:n=>{if(n.type==="image-inline")return!0},normalizeNode:u(ya,e)},editableProps:{renderElement:ml,onDrop:Df(e)}})});import{Editor as ft,Element as q,Transforms as Fe}from"slate";import $f from"@emotion/styled";var pl=$f("blockquote")`
|
|
870
862
|
position: relative;
|
|
871
863
|
margin-top: 1em;
|
|
872
864
|
margin-bottom: 1em;
|
|
873
865
|
margin-left: 0;
|
|
874
866
|
border-left: 0.25em solid rgba(0, 0, 0, 0.075);
|
|
875
867
|
padding-left: 1.5em;
|
|
876
|
-
`;import{jsx as
|
|
877
|
-
`),a=i.join(""),l=
|
|
868
|
+
`;import{jsx as Af}from"react/jsx-runtime";function dl(e){return q.isElement(e)&&(e.type==="paragraph"||e.type==="code-block"||e.type==="table"||e.type==="horizontal-rule"||e.type==="task-list-item"||e.type==="unordered-list-item"||e.type==="ordered-list-item"||e.type==="heading")}var Hf=2,ul=y(e=>(e.supportsBlockQuote=!0,e.blockQuotePlugin={indent:()=>{Fe.wrapNodes(e,{type:"block-quote",children:[]},{match:dl})},outdent:()=>{Fe.liftNodes(e,{match:(t,o)=>dl(t)&&o.length>1})},isActive:()=>{let[t]=ft.nodes(e,{match:o=>q.isElement(o)&&o.type==="block-quote"});return!!t},increaseDepth:()=>{let[t]=ft.nodes(e,{match:r=>q.isElement(r)&&r.type==="block-quote"});if(!t||!e.blockQuotePlugin.canIncreaseDepth())return;let[,o]=t;Fe.select(e,o),Fe.wrapNodes(e,{type:"block-quote",children:[]},{at:o,split:!1})},decreaseDepth:()=>{let[t]=ft.nodes(e,{match:i=>q.isElement(i)&&i.type==="block-quote"});if(!t||!e.blockQuotePlugin.canDecreaseDepth())return;let[o,r]=t,n=o.children;n.length===1&&q.isElement(n[0])&&n[0].type==="block-quote"&&Fe.unwrapNodes(e,{at:[...r,0],match:i=>q.isElement(i)&&i.type==="block-quote"})},canIncreaseDepth:()=>{let[t]=ft.nodes(e,{match:i=>q.isElement(i)&&i.type==="block-quote"});if(!t)return!1;let[o]=t,r=0,n=o;for(;n.children.length===1&&q.isElement(n.children[0])&&n.children[0]&&n.children[0]&&n.children[0].type==="block-quote";)r++,n=n.children[0];return r<Hf},canDecreaseDepth:()=>{let[t]=ft.nodes(e,{match:r=>q.isElement(r)&&r.type==="block-quote"});if(!t)return!1;let[o]=t;return o.children.length===1&&q.isElement(o.children[0])&&o.children[0]&&o.children[0].type==="block-quote"}},{name:"block-quote",editor:{normalizeNode(t){let[o,r]=t;return!q.isElement(o)||o.type!=="block-quote"?!1:ge(e,[o,r],(n,i)=>(q.isElement(n[0])&&q.isElement(i[0])&&n[0].type==="block-quote"&&i[0].type==="block-quote"&&Fe.mergeNodes(e,{at:i[1]}),!0))}},editableProps:{renderElement:({element:t,attributes:o,children:r})=>{if(t.type==="block-quote")return Af(pl,{...o,children:r})},onKeyDown:D({"super+.":e.blockQuotePlugin.indent,"super+,":e.blockQuotePlugin.outdent})}}));import{Editor as eh,Element as th,Transforms as $l}from"slate";import Of from"prismjs";import{Element as Vf,Node as Kf}from"slate";var{languages:Uf,tokenize:Ff}=Of;function _f(e){let t=0,o=[];for(let r of e)o.push(t),t=t+r.length;return o}function fl(e){let[t,o]=e;if(!Vf.isElement(t))return[];if(t.type!=="code-block")return[];let r=Uf[t.language];if(r===void 0)return[];let i=t.children.map(p=>`${Kf.string(p)}
|
|
869
|
+
`),a=i.join(""),l=_f(i);function s(p){for(let b=l.length;b>=0;b--){let g=l[b];if(g<=p)return{path:[...o,b],offset:p-g}}throw new Error("This shouldn't happen and indicates a bug in the logic")}let m=[],c=Ff(a,r),d=0;for(let p of c)if(typeof p=="string")d+=p.length;else{let b=s(d),g=s(d+p.length);m.push({anchor:b,focus:g,prismToken:p.type}),d+=p.length}return m}function hl(e,{language:t}){gi(e,{type:"code-block",language:t,children:[{type:"code-block-line",children:[{text:""}]}]})}import{Element as Wf,Transforms as Gf}from"slate";function gl(e,t,o={}){let r=E(e,n=>Wf.isElement(n)&&n.type==="code-block",{at:o.at});return r?(Gf.setNodes(e,{language:t},{at:r[1]}),!0):!1}function bl(e){return{createCodeBlock:u(hl,e),setCodeBlockLanguage:u(gl,e)}}var Xt={color:"#999988",fontStyle:"italic"},qf={opacity:"0.7"},El={color:"#e3116c"},xl={color:"#393a34"},ae={color:"#36acaa"},Qo={color:"#00a4db"},yl={color:"#9a050f"},kl={color:"#00009f"},jo={fontWeight:"bold"},Qf={fontStyle:"italic"},vl={comment:Xt,prolog:Xt,doctype:Xt,cdata:Xt,namespace:qf,string:El,"attr-value":El,puncutation:xl,operator:xl,entity:ae,url:ae,symbol:ae,number:ae,boolean:ae,variable:ae,constant:ae,property:ae,regex:ae,insert:ae,atrule:Qo,keyword:Qo,"attr-name":Qo,function:{...yl,...jo},delete:yl,tag:kl,selector:kl,important:jo,bold:jo,italic:Qf};var Tl=["text","html","css","svg","javascript","java","c"];import{Element as Xo,Node as Yo,Transforms as Ve}from"slate";function wl(e,t){if(!Xo.isElement(t[0]))return!1;if(t[0].type==="code-block-line"){for(let[o,r]of Yo.children(e,t[1]))if(Xo.isElement(o))return e.isVoid(o)?(Ve.removeNodes(e,{at:r}),!0):(Ve.unwrapNodes(e,{at:r}),!0)}if(t[0].type==="code-block"){for(let[o,r]of Yo.children(e,t[1]))if(Xo.isElement(o)&&o.type!=="code-block-line")return o.type==="code-block"?(Ve.unwrapNodes(e,{at:r}),!0):e.isVoid(o)?(Ve.removeNodes(e,{at:r}),!0):(Ve.removeNodes(e,{at:r}),Ve.insertNodes(e,{type:"code-block-line",children:[{text:Yo.string(o)}]}),!0)}return!1}import{useCallback as jf,useRef as Xf}from"react";import{useSelected as Yf}from"slate-react";import{jsx as Il}from"react/jsx-runtime";var Ml=e=>Il(x,{...e,children:Il("path",{d:"m6 9 6 6 6-6"})});import Yt from"@emotion/styled";var Pl=Yt("div")`
|
|
878
870
|
position: relative;
|
|
879
871
|
background: var(--code-block-bgcolor);
|
|
880
872
|
margin: 1em 0;
|
|
@@ -893,11 +885,11 @@
|
|
|
893
885
|
* Otherwise they will be square.
|
|
894
886
|
*/
|
|
895
887
|
overflow-x: hidden;
|
|
896
|
-
`,
|
|
888
|
+
`,Cl=Yt("div")`
|
|
897
889
|
padding: 2.25em 1em 1.5em 1em;
|
|
898
890
|
border-radius: 0.5em;
|
|
899
891
|
overflow-x: auto;
|
|
900
|
-
`,
|
|
892
|
+
`,Sl=Yt("span")`
|
|
901
893
|
cursor: pointer;
|
|
902
894
|
position: absolute;
|
|
903
895
|
top: 0.25em;
|
|
@@ -923,7 +915,7 @@
|
|
|
923
915
|
color: var(--shade-800);
|
|
924
916
|
background: var(--shade-300);
|
|
925
917
|
}
|
|
926
|
-
`,
|
|
918
|
+
`,Rl=Yt("div")`
|
|
927
919
|
white-space: pre;
|
|
928
920
|
line-height: 1.5em;
|
|
929
921
|
counter-increment: line;
|
|
@@ -946,7 +938,7 @@
|
|
|
946
938
|
display: inline-block;
|
|
947
939
|
width: 2em;
|
|
948
940
|
} */
|
|
949
|
-
`;import{jsx as ht,jsxs as
|
|
941
|
+
`;import{jsx as ht,jsxs as Ll}from"react/jsx-runtime";function Bl({element:e,attributes:t,children:o}){let r=Xf(null),n=Yf(),i=H("code-block-dropdown"),a=jf(()=>{i.layer&&i.close();let l=r.current;if(l===null)return;let s=Tl.map(m=>({icon:()=>ht("span",{}),title:m,action:c=>{c.codeBlock.setCodeBlockLanguage(m,{at:e})}}));i.open(()=>ht(He,{dest:l,items:s,close:i.close}))},[e]);return Ll(Pl,{className:n?"--selected":"",...t,children:[Ll(Sl,{contentEditable:!1,onClick:a,ref:r,children:[ht("span",{children:e.language}),ht(Ml,{})]}),ht(Cl,{children:o})]})}import{useSelected as Jf}from"slate-react";import{jsx as Zf}from"react/jsx-runtime";function zl({attributes:e,children:t}){let o=Jf();return Zf(Rl,{className:o?"--selected":"",...e,spellCheck:"false",children:t})}import{jsx as Dl}from"react/jsx-runtime";function Nl({element:e,attributes:t,children:o}){if(e.type==="code-block")return Dl(Bl,{element:e,attributes:t,children:o});if(e.type==="code-block-line")return Dl(zl,{element:e,attributes:t,children:o})}import{jsx as oh}from"react/jsx-runtime";var Hl=y((e,t,{createPolicy:o})=>{e.codeBlock=bl(e);function r(){let{selection:n}=e;if(!se(n))return!1;let i=E(e,"code-block");return i==null?!1:eh.string(e,i[1])===""?($l.removeNodes(e,{at:i[1]}),!0):!1}return o({name:"code-block",editor:{deleteBackward:r,deleteForward:r,isInline(n){if(n.type==="code-block"||n.type==="code-block-line")return!1},isVoid(n){if(n.type==="code-block"||n.type=="code-block-line")return!1},isMaster(n){if(n.type==="code-block")return!0},normalizeNode:u(wl,e)},editableProps:{decorate:fl,onKeyDown:D({"super+`":()=>e.codeBlock.createCodeBlock({language:"text"}),"mod+a":()=>{let n=E(e,i=>th.isElement(i)&&i.type==="code-block");return n?($l.select(e,n[1]),!0):!1}}),renderElement:Nl,renderLeaf:({leaf:n,children:i})=>{let a=n.prismToken&&vl[n.prismToken]||null;return a===null?i:oh("span",{style:a,children:i})}}})});import{Transforms as nh}from"slate";import Al from"@emotion/styled";var Ol=Al("div")`
|
|
950
942
|
position: relative;
|
|
951
943
|
background-color: var(--shade-100);
|
|
952
944
|
border: 1px solid var(--shade-300);
|
|
@@ -964,7 +956,7 @@
|
|
|
964
956
|
&.--selected {
|
|
965
957
|
outline: 2px solid var(--select-color);
|
|
966
958
|
}
|
|
967
|
-
`,Al
|
|
959
|
+
`,Ul=Al("span")`
|
|
968
960
|
position: absolute;
|
|
969
961
|
top: 0.25em;
|
|
970
962
|
right: 0.5em;
|
|
@@ -972,7 +964,7 @@
|
|
|
972
964
|
color: var(--shade-500);
|
|
973
965
|
text-transform: uppercase;
|
|
974
966
|
letter-spacing: 0.5px;
|
|
975
|
-
`;import{jsx as
|
|
967
|
+
`;import{jsx as Fl,jsxs as rh}from"react/jsx-runtime";function Vl({attributes:e,children:t,element:o}){return rh(Ol,{...e,contentEditable:!1,children:[Fl(Ul,{children:"HTML"}),Fl("div",{children:tt(o.html)}),t]})}import{jsx as ih}from"react/jsx-runtime";var Kl=y((e,t,{createPolicy:o})=>{function r(){let{selection:n}=e;if(!se(n))return!1;let i=E(e,"html-block");return i==null?!1:(nh.removeNodes(e,{at:i[1]}),!0)}return o({name:"html-block",editor:{deleteBackward:r,deleteForward:r,isInline(n){if(n.type==="html-block")return!1},isVoid(n){if(n.type==="html-block")return!0},isMaster(n){if(n.type==="html-block")return!0}},editableProps:{renderElement:({element:n,attributes:i,children:a})=>{if(n.type==="html-block")return ih(Vl,{element:n,attributes:i,children:a})}}})});import{Editor as Yl}from"slate";import{Element as ch}from"slate";import{Element as ah,Transforms as lh}from"slate";function _l(e){return ah.isElement(e)&&e.type==="paragraph"}function Wl(e,t){return ge(e,t,(o,r)=>!_l(o[0])||!_l(r[0])?!1:o[0].__collapsible&&r[0].__collapsible?(lh.removeNodes(e,{at:o[1]}),!0):!1)}import{Element as sh,Transforms as mh}from"slate";function Jo(e,t){return sh.isElement(t)?e.isVoid(t)||e.isMaster(t):!1}function Gl(e,t){return Jo(e,t[0])?ge(e,t,(o,r)=>!Jo(e,o[0])||!Jo(e,r[0])?!1:(mh.insertNodes(e,{type:"paragraph",__collapsible:!0,children:[{text:""}]},{at:r[1]}),!0)):!1}function ql(e,t){let[o,r]=t;return ch.isElement(o)?!!(Gl(e,[o,r])||Wl(e,[o,r])):!1}import{clsx as uh}from"clsx";import{useSelected as fh}from"slate-react";import ph from"@emotion/styled";var Ql=ph("p")`
|
|
976
968
|
padding: 0;
|
|
977
969
|
margin: 0;
|
|
978
970
|
&:first-child {
|
|
@@ -1002,42 +994,42 @@
|
|
|
1002
994
|
}
|
|
1003
995
|
border-radius: 8px;
|
|
1004
996
|
}
|
|
1005
|
-
`;import{Node as
|
|
997
|
+
`;import{Node as dh}from"slate";function jl(e){return e.children.length===1&&dh.string(e.children[0]).length===0}import{jsx as hh}from"react/jsx-runtime";function Xl({element:e,attributes:t,children:o}){let r=fh(),n=jl(e);return hh(Ql,{...t,className:uh({"--selected":r,"--empty":n,"--collapsible":!!e.__collapsible}),children:o})}import{jsx as gh}from"react/jsx-runtime";var Jl=y(e=>{let{insertBreak:t}=e;if(e.insertBreak=()=>{let{selection:o}=e;if(o&&o.anchor.path[0]===o.focus.path[0]){let r=[o.anchor.path[0]],n=Yl.start(e,r);Yl.string(e,{anchor:n,focus:o.anchor}).endsWith(`
|
|
1006
998
|
`)?t():e.insertText(`
|
|
1007
|
-
`)}else t()},e.convertElement.addConvertElementType("paragraph"),e.collapsibleParagraph={convertParagraph:()=>{e.convertElement.convertElements(()=>!1,{type:"paragraph"},!1)}},!e.normalizeAfterDelete)throw new Error("The collapsible-paragraph-plugin has a dependency on the normalize-after-delete plugin. Please add that plugin before this one.");return{name:"collapsible-paragraph",editor:{normalizeNode:u(
|
|
1008
|
-
`)}function
|
|
1009
|
-
`),a=K.start(e,o),l=K.end(e,o),s=Ke.isBefore(r.anchor,a)?a:Ke.isAfter(r.anchor,l)?l:r.anchor,m=Ke.isBefore(r.focus,a)?a:Ke.isAfter(r.focus,l)?l:r.focus,c=Math.min(K.string(e,{anchor:a,focus:s}).length,n.length),d=Math.min(K.string(e,{anchor:a,focus:m}).length,n.length),p=Math.min(c,d),b=Math.max(c,d),g=0,v=0,C=i.length-1;for(let P=0;P<i.length;P++){let w=g+i[P].length;if(g<=p&&p<=w&&(v=P),g<=b&&b<=w){C=P;break}g=w+1}return{startLineIndex:v,endLineIndex:C}}function
|
|
999
|
+
`)}else t()},e.convertElement.addConvertElementType("paragraph"),e.collapsibleParagraph={convertParagraph:()=>{e.convertElement.convertElements(()=>!1,{type:"paragraph"},!1)}},!e.normalizeAfterDelete)throw new Error("The collapsible-paragraph-plugin has a dependency on the normalize-after-delete plugin. Please add that plugin before this one.");return{name:"collapsible-paragraph",editor:{normalizeNode:u(ql,e)},editableProps:{renderElement:({element:o,attributes:r,children:n})=>{switch(o.type){case"paragraph":return gh(Xl,{element:o,attributes:r,children:n})}},onKeyDown:D({"super+0":e.collapsibleParagraph.convertParagraph})}}});function Zl(e,t){Array.isArray(t)?e.convertElement.convertElementTypes.push(...t):e.convertElement.convertElementTypes.push(t)}import{Editor as K,Element as Jt,Node as re,Point as Ke,Range as bh,Transforms as Pe}from"slate";function es(e,t,o){try{let r=K.start(e,o),n=K.end(e,o);if(Ke.isBefore(t,r)||Ke.isAfter(t,n))return-1;let i={anchor:r,focus:t};return K.string(e,i).length}catch{return-1}}function ts(e,t,o){try{let r=re.get(e,t);if(!Jt.isElement(r))return;let n=re.string(r),i=Math.min(o,n.length),a=K.start(e,t),l=0,s=a.path,m=0;for(let[d,p]of re.texts(r)){let b=d.text.length;if(l+b>=i){s=[...t,...p],m=i-l;break}l+=b}let c={path:s,offset:m};Pe.select(e,{anchor:c,focus:c})}catch{}}function Eh(e){return re.string(e).includes(`
|
|
1000
|
+
`)}function xh(e,t,o,r){let n=re.string(t),i=n.split(`
|
|
1001
|
+
`),a=K.start(e,o),l=K.end(e,o),s=Ke.isBefore(r.anchor,a)?a:Ke.isAfter(r.anchor,l)?l:r.anchor,m=Ke.isBefore(r.focus,a)?a:Ke.isAfter(r.focus,l)?l:r.focus,c=Math.min(K.string(e,{anchor:a,focus:s}).length,n.length),d=Math.min(K.string(e,{anchor:a,focus:m}).length,n.length),p=Math.min(c,d),b=Math.max(c,d),g=0,v=0,C=i.length-1;for(let P=0;P<i.length;P++){let w=g+i[P].length;if(g<=p&&p<=w&&(v=P),g<=b&&b<=w){C=P;break}g=w+1}return{startLineIndex:v,endLineIndex:C}}function yh(e,t,o,r){let n=re.string(t);if(!n.includes(`
|
|
1010
1002
|
`))return o;let i=n.split(`
|
|
1011
|
-
`);if(i.length<=1)return o;let{startLineIndex:a,endLineIndex:l}=
|
|
1003
|
+
`);if(i.length<=1)return o;let{startLineIndex:a,endLineIndex:l}=xh(e,t,o,r),s=i.slice(0,a),m=i.slice(a,l+1),c=i.slice(l+1);return s.length===0&&c.length===0?o:(K.withoutNormalizing(e,()=>{let d=o.slice(0,-1),p=o[o.length-1];if(c.length>0){let g=c.join(`
|
|
1012
1004
|
`),v={...t,children:[{text:g}]};Pe.insertNodes(e,v,{at:[...d,p+1]})}let b=t.children.length;for(let g=b-1;g>=0;g--)Pe.removeNodes(e,{at:[...o,g]});if(s.length>0){Pe.insertNodes(e,{text:s.join(`
|
|
1013
1005
|
`)},{at:[...o,0]});let v={type:"paragraph",children:[{text:m.join(`
|
|
1014
1006
|
`)}]};Pe.insertNodes(e,v,{at:[...d,p+1]})}else Pe.insertNodes(e,{text:m.join(`
|
|
1015
|
-
`)},{at:[...o,0]})}),s.length>0?[...o.slice(0,-1),o[o.length-1]+1]:o)}function
|
|
1007
|
+
`)},{at:[...o,0]})}),s.length>0?[...o.slice(0,-1),o[o.length-1]+1]:o)}function os(e,t,o,r){let{selection:n}=e;if(!n)return!1;let i=-1,a=-1,l=bh.isCollapsed(n),s=Array.from(K.nodes(e,{match:p=>Jt.isElement(p)&&e.convertElement.isConvertibleElement(p)}));if(s.length>0){let[,p]=s[0];i=es(e,n.anchor,p),a=es(e,n.focus,p)}if(s.length===0)return!1;let m=[];K.withoutNormalizing(e,()=>{for(let p=s.length-1;p>=0;p--){let[b,g]=s[p];if(Eh(b)){let v=yh(e,b,g,n);m.unshift(v)}else m.unshift(g)}});let c=m.map(p=>{try{let b=re.get(e,p);return Jt.isElement(b)?[b,p]:null}catch{return null}}).filter(p=>p!==null);if(c.length===0)return!1;if(r&&c.every(p=>t(p[0]))?K.withoutNormalizing(e,()=>{for(let p of c)mt(e,{type:"paragraph"},p[1])}):K.withoutNormalizing(e,()=>{for(let p of c)mt(e,o,p[1])}),c.length>0&&i>=0){let[,p]=c[0];if(l)ts(e,p,i);else if(a>=0)try{let b=re.get(e,p);if(Jt.isElement(b)){let g=re.string(b),v=Math.min(i,g.length),C=Math.min(a,g.length),P=K.start(e,p),w=P.path,S=v,M=0;for(let[I,k]of re.texts(b)){let z=I.text.length;if(M+z>=v){w=[...p,...k],S=v-M;break}M+=z}let N=P.path,T=C;M=0;for(let[I,k]of re.texts(b)){let z=I.text.length;if(M+z>=C){N=[...p,...k],T=C-M;break}M+=z}Pe.select(e,{anchor:{path:w,offset:S},focus:{path:N,offset:T}})}}catch{ts(e,p,i)}}return!0}function rs(e,t){return e.convertElement.convertElementTypes.includes(t.type)}function ns(e){return{convertElementTypes:[],addConvertElementType:u(Zl,e),isConvertibleElement:u(rs,e),convertElements:u(os,e)}}var is=y(e=>(e.convertElement=ns(e),{name:"convert-element"}));import{Editor as Zo,Path as kh,Range as vh,Transforms as as}from"slate";function ls(e){let t=E(e,"heading");if(!t||!e.selection||vh.isExpanded(e.selection)||!Zo.isEnd(e,e.selection.anchor,t[1]))return!1;let o=kh.next(t[1]);return as.insertNodes(e,{type:"paragraph",children:[{text:""}]},{at:o}),as.select(e,{anchor:Zo.start(e,o),focus:Zo.start(e,o)}),!0}import{Editor as Th}from"slate";function wh(e,t,o){e.convertElement.convertElements(r=>r.type==="heading"&&r.level==t,{type:"heading",level:t},o)}function Ih(e,t){let[o]=Th.nodes(e,{match:r=>"type"in r&&"level"in r&&r.type==="heading"&&r.level===t});return!!o}function ss(e){return{convertHeading:u(wh,e),isHeadingActive:u(Ih,e)}}import{css as Mh}from"@emotion/react";import _e from"@emotion/styled";var We=Mh`
|
|
1016
1008
|
margin-top: 1em;
|
|
1017
1009
|
&:first-child {
|
|
1018
1010
|
margin-top: 0;
|
|
1019
1011
|
}
|
|
1020
1012
|
font-weight: bold;
|
|
1021
|
-
`,
|
|
1013
|
+
`,ms=_e("h1")`
|
|
1022
1014
|
${We}
|
|
1023
1015
|
font-size: 2.25em;
|
|
1024
1016
|
letter-spacing: -0.01em;
|
|
1025
|
-
`,
|
|
1017
|
+
`,cs=_e("h2")`
|
|
1026
1018
|
${We}
|
|
1027
1019
|
font-size: 1.5em;
|
|
1028
|
-
`,
|
|
1020
|
+
`,ps=_e("h3")`
|
|
1029
1021
|
${We}
|
|
1030
1022
|
font-size: 1.25em;
|
|
1031
|
-
`,
|
|
1023
|
+
`,ds=_e("h4")`
|
|
1032
1024
|
${We}
|
|
1033
1025
|
font-size: 1em;
|
|
1034
|
-
`,
|
|
1026
|
+
`,us=_e("h5")`
|
|
1035
1027
|
${We}
|
|
1036
1028
|
font-size: 1em;
|
|
1037
|
-
`,
|
|
1029
|
+
`,fs=_e("h6")`
|
|
1038
1030
|
${We}
|
|
1039
1031
|
font-size: 1em;
|
|
1040
|
-
`;import{jsx as Ge}from"react/jsx-runtime";var
|
|
1032
|
+
`;import{jsx as Ge}from"react/jsx-runtime";var hs=y(e=>{e.convertElement.addConvertElementType("heading"),e.heading=ss(e);let t=D({"super+1":W(e.heading.convertHeading,1,!0),"super+2":W(e.heading.convertHeading,2,!0),"super+3":W(e.heading.convertHeading,3,!0),"super+4":W(e.heading.convertHeading,4,!0),"super+5":W(e.heading.convertHeading,5,!0),"super+6":W(e.heading.convertHeading,6,!0)}),o=li(e,{"#":W(e.heading.convertHeading,1,!1),"##":W(e.heading.convertHeading,2,!1),"###":W(e.heading.convertHeading,3,!1),"####":W(e.heading.convertHeading,4,!1),"#####":W(e.heading.convertHeading,5,!1),"######":W(e.heading.convertHeading,6,!1)});return{name:"heading",editor:{insertBreak:u(ls,e)},editableProps:{renderElement:({element:r,attributes:n,children:i})=>{if(r.type==="heading")switch(r.level){case 1:return Ge(ms,{...n,children:i});case 2:return Ge(cs,{...n,children:i});case 3:return Ge(ps,{...n,children:i});case 4:return Ge(ds,{...n,children:i});case 5:return Ge(us,{...n,children:i});case 6:return Ge(fs,{...n,children:i});default:{let a=r.level;throw new Error(`Expected element.level to be 1-6 but got ${a}`)}}},onKeyDown:r=>!!(t(r)||o(r))}}});import{useSelected as Ch}from"slate-react";import Ph from"@emotion/styled";var gs=Ph("hr")`
|
|
1041
1033
|
position: relative;
|
|
1042
1034
|
height: 1em;
|
|
1043
1035
|
/* background-color: var(--hr-color); */
|
|
@@ -1067,7 +1059,7 @@
|
|
|
1067
1059
|
outline: 2px solid var(--select-color, blue);
|
|
1068
1060
|
}
|
|
1069
1061
|
}
|
|
1070
|
-
`;import{jsx as
|
|
1062
|
+
`;import{jsx as bs,jsxs as Sh}from"react/jsx-runtime";function Es({attributes:e,children:t}){let o=Ch();return Sh("div",{...e,draggable:!0,children:[t,bs("div",{contentEditable:!1,children:bs(gs,{className:o?"--selected":""})})]})}import{Editor as er,Element as Rh,Path as xs,Transforms as Zt}from"slate";function Lh(e){let{selection:t}=e;if(!t)return!1;let o=E(e,i=>Rh.isElement(i)&&e.isMaster(i)),r={type:"horizontal-rule",children:[{text:""}]},n={type:"paragraph",children:[{text:""}]};if(o==null)er.withoutNormalizing(e,()=>{Zt.insertNodes(e,[r,n]),Zt.move(e)});else{let i=xs.next(o[1]);er.withoutNormalizing(e,()=>{Zt.insertNodes(e,[r,n],{at:i});let a=xs.next(i);Zt.select(e,er.start(e,a))})}return!0}function ys(e){return{insertHorizontalRule:u(Lh,e)}}import{jsx as Bh}from"react/jsx-runtime";var ks=y((e,t,{createPolicy:o})=>(e.horizontalRule=ys(e),o({name:"horizontal-rule",editor:{isVoid(r){if(r.type==="horizontal-rule")return!0}},editableProps:{renderElement:r=>{if(r.element.type==="horizontal-rule")return Bh(Es,{...r})},onKeyDown:D({"super+-":e.horizontalRule.insertHorizontalRule})}})));import vs from"@emotion/styled";var Ts=vs("code")`
|
|
1071
1063
|
color: var(--shade-600);
|
|
1072
1064
|
background-color: var(--inline-code-bgcolor);
|
|
1073
1065
|
border: 1px solid var(--inline-code-border-color);
|
|
@@ -1088,16 +1080,16 @@
|
|
|
1088
1080
|
*/
|
|
1089
1081
|
font-size: 0.75em;
|
|
1090
1082
|
vertical-align: baseline;
|
|
1091
|
-
`,
|
|
1083
|
+
`,tr=vs("span")`
|
|
1092
1084
|
display: inline-block;
|
|
1093
1085
|
opacity: 0;
|
|
1094
1086
|
width: 1px;
|
|
1095
1087
|
overflow: hidden;
|
|
1096
|
-
`;import{jsx as
|
|
1088
|
+
`;import{jsx as ws,jsxs as zh}from"react/jsx-runtime";var Is=y(e=>{if(!e.marksPlugin)throw new Error("InlineCodePlugin has a dependency on the MarksPlugin but the MarksPlugin has not been added or is added after the InlineCodePlugin");return e.inlineCode={toggleInlineCode:()=>e.marksPlugin.toggleMark("code")},{name:"inline-code",editableProps:{renderLeaf:({leaf:t,children:o})=>t.code?zh(Ts,{spellCheck:!1,children:[ws(tr,{contentEditable:!1,children:"|"}),o,ws(tr,{contentEditable:!1,children:"|"})]}):o,onKeyDown:D({"mod+j":()=>e.inlineCode.toggleInlineCode()})}}});import{Editor as Xs,Path as Ys}from"slate";function Ms(e,t){return e.convertElement.convertElements(o=>o.type==="ordered-list-item",o=>({type:"ordered-list-item",depth:"depth"in o?o.depth:0}),t)}function Ps(e,t){return e.convertElement.convertElements(o=>o.type==="task-list-item",o=>({type:"task-list-item",checked:"checked"in o?o.checked:!1,depth:"depth"in o?o.depth:0}),t)}function Cs(e,t){return e.convertElement.convertElements(o=>o.type==="unordered-list-item",o=>({type:"unordered-list-item",depth:"depth"in o?o.depth:0}),t)}var Dh=2;function eo(e){let t=E(e,L);return t?t[0].depth:0}function or(e){return we(e,L)?eo(e)<Dh:!1}function rr(e){return we(e,L)?eo(e)>0:!1}function Ss(e){or(e)&&e.list.indent()}function Rs(e){rr(e)&&e.list.outdent()}function Ls(e){return St(e,t=>({depth:t.depth+1}),{match:L})}import{Editor as Nh,Transforms as nr}from"slate";function Bs(e){let t=E(e,L);if(!t)return!1;let[o,r]=t;if(Nh.isEmpty(e,o))return o.depth>0?(nr.setNodes(e,{depth:o.depth-1},{at:r}),!0):(mt(e,{type:"paragraph"},r),!0);nr.splitNodes(e,{always:!0});let n=E(e,L);return n&&n[0].type==="task-list-item"&&n[0].checked===!0&&nr.setNodes(e,{checked:!1},{at:n[1]}),!0}import{Editor as $h}from"slate";function zs(e){let t=Array.from($h.nodes(e,{match:L}));for(let o of t)if(o[0].depth===0)return!0;return St(e,o=>({depth:Math.max(0,o.depth-1)}),{match:L})}import{Transforms as Hh}from"slate";function Ds(e,{at:t=e.selection}={}){let o=E(e,"task-list-item",{at:t});if(!o)return!1;let r=!o[0].checked;Hh.setNodes(e,{checked:r},{at:o[1]})}function Ns(e){return{indent:u(Ls,e),outdent:u(zs,e),convertUnorderedList:u(Cs,e),convertOrderedList:u(Ms,e),convertTaskList:u(Ps,e),insertBreak:u(Bs,e),toggleTaskListItem:u(Ds,e),getListDepth:u(eo,e),canIncreaseDepth:u(or,e),canDecreaseDepth:u(rr,e),increaseDepth:u(Ss,e),decreaseDepth:u(Rs,e)}}import{Element as Ah,Transforms as Oh}from"slate";var $s=Ct(["ordered-list-item"]);function to(e,t){let[o,r]=t;return Ah.isElement(o)?ge(e,[o,r],(n,i)=>{if(!$s(i[0]))return!1;let a=$s(n[0])||L(n[0])?i[0].depth>n[0].depth:!0;return i[0].__firstAtDepth!==a?(Oh.setNodes(e,{__firstAtDepth:a},{at:i[1]}),!0):!1}):!1}function Hs(e,t){let[o]=t;return L(o)?to(e,t):!1}import{clsx as Fh}from"clsx";import{useEffect as Vh}from"react";import{ReactEditor as Kh,useSlateStatic as _h}from"slate-react";import oo from"@emotion/styled";var ir=oo("li")`
|
|
1097
1089
|
margin-top: 0.5em;
|
|
1098
1090
|
margin-bottom: 0.5em;
|
|
1099
1091
|
list-style-position: outside;
|
|
1100
|
-
`,
|
|
1092
|
+
`,As=oo(ir)`
|
|
1101
1093
|
position: relative;
|
|
1102
1094
|
list-style-type: none;
|
|
1103
1095
|
.--list-item-icon {
|
|
@@ -1107,7 +1099,7 @@
|
|
|
1107
1099
|
line-height: 1.5em;
|
|
1108
1100
|
color: var(--shade-600);
|
|
1109
1101
|
}
|
|
1110
|
-
|
|
1102
|
+
`,Os=oo(ir)`
|
|
1111
1103
|
position: relative;
|
|
1112
1104
|
list-style-type: none;
|
|
1113
1105
|
counter-increment: var(--list-item-var);
|
|
@@ -1132,7 +1124,7 @@
|
|
|
1132
1124
|
/* force numbers to be monospaced for better alignment */
|
|
1133
1125
|
font-variant-numeric: tabular-nums;
|
|
1134
1126
|
}
|
|
1135
|
-
`,
|
|
1127
|
+
`,Us=oo(ir)`
|
|
1136
1128
|
position: relative;
|
|
1137
1129
|
list-style-type: none;
|
|
1138
1130
|
.--list-item-icon {
|
|
@@ -1146,7 +1138,7 @@
|
|
|
1146
1138
|
stroke-width: 3px;
|
|
1147
1139
|
}
|
|
1148
1140
|
}
|
|
1149
|
-
`;import{jsx as
|
|
1141
|
+
`;import{jsx as Wh}from"react/jsx-runtime";function Fs({element:e,attributes:t,children:o}){let r=_h();Vh(()=>{let a=Kh.findPath(r,e);to(r,[e,a])},[]);let n={marginLeft:`${2+e.depth*2}em`,"--list-item-var":`list-item-depth-${e.depth}`},i=Fh({"--first-at-depth":e.__firstAtDepth});return Wh(Os,{...t,className:i,style:n,children:o})}import{useCallback as Gh}from"react";import{useSlateStatic as qh}from"slate-react";import{jsx as Ce,jsxs as Ws}from"react/jsx-runtime";var Vs=e=>Ws("svg",{xmlns:"http://www.w3.org/2000/svg",width:"1em",height:"1em",strokeWidth:2,stroke:"currentColor",fill:"none",strokeLinecap:"round",strokeLinejoin:"round",viewBox:"0 0 24 24",...e,children:[Ce("path",{d:"M0 0h24v24H0z",stroke:"none"}),Ce("rect",{x:4,y:4,width:16,height:16,rx:2})]}),Ks=e=>Ws("svg",{xmlns:"http://www.w3.org/2000/svg",className:"icon icon-tabler icon-tabler-checkbox",width:"1em",height:"1em",strokeWidth:2,stroke:"currentColor",fill:"none",strokeLinecap:"round",strokeLinejoin:"round",viewBox:"0 0 24 24",...e,children:[Ce("path",{d:"M0 0h24v24H0z",stroke:"none"}),Ce("path",{d:"m9 11 3 3 8-8",className:"--checkmark"}),Ce("path",{d:"M20 12v6a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h9"})]}),_s=e=>Ce("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 24 24",fill:"currentColor",width:"1em",height:"1em",...e,children:Ce("path",{d:"M12 8.25a3.75 3.75 0 1 0 0 7.5 3.75 3.75 0 0 0 0-7.5z"})});import{jsx as ar,jsxs as Qh}from"react/jsx-runtime";function Gs({element:e,attributes:t,children:o}){let r=qh(),n=Gh(()=>{r.list.toggleTaskListItem({at:e})},[r,e]),i=`${2+e.depth*2}em`;return Qh(Us,{...t,style:{marginLeft:i},children:[ar("div",{className:"--list-item-icon",contentEditable:!1,children:e.checked?ar(Ks,{onClick:n,style:{cursor:"pointer"}}):ar(Vs,{onClick:n,style:{cursor:"pointer"}})}),o]})}import{jsx as qs,jsxs as jh}from"react/jsx-runtime";function Qs({element:e,attributes:t,children:o}){let r=`${2+e.depth*2}em`;return jh(As,{...t,style:{marginLeft:r},children:[qs("div",{className:"--list-item-icon",contentEditable:!1,children:qs(_s,{})}),o]})}import{jsx as lr}from"react/jsx-runtime";function js({element:e,attributes:t,children:o}){switch(e.type){case"ordered-list-item":return lr(Fs,{element:e,attributes:t,children:o});case"unordered-list-item":return lr(Qs,{element:e,attributes:t,children:o});case"task-list-item":return lr(Gs,{element:e,attributes:t,children:o})}}var Js=["unordered-list-item","ordered-list-item","task-list-item"],L=Ct(Js),Zs=y((e,t,{createPolicy:o})=>{e.convertElement.addConvertElementType(Js);let r=e.list=Ns(e),n=D({tab:r.indent,"shift+tab":r.outdent,"super+7":u(r.convertOrderedList,!0),"super+8":u(r.convertUnorderedList,!0),"super+9":u(r.convertTaskList,!0)});return o({name:"list",editor:{normalizeNode:i=>Hs(e,i),insertBreak:r.insertBreak,deleteBackward:i=>{if(i!=="character"||!we(e,L))return!1;let a=E(e,L);if(!a)return!1;let l=a[1];if(!Ys.hasPrevious(l))return e.collapsibleParagraph.convertParagraph(),!0;let s=Ys.previous(l),m=Xs.node(e,s);return L(m[0])?!1:(e.collapsibleParagraph.convertParagraph(),!0)}},editableProps:{renderElement:js,onKeyDown(i){return Xs.nodes(e,{match:L})?n(i):!1}}})});import{clsx as tg}from"clsx";import{Editor as sr,Point as og,Range as rg}from"slate";import{Editor as Xh,Text as em,Transforms as Yh}from"slate";function tm(e,{at:t=e.selection}={}){if(t==null)return;let o=[...Xh.nodes(e,{match:n=>em.isText(n),at:t})],r={};for(let[n]of o)for(let i of Object.keys(n))i!=="text"&&(r[i]=null);Yh.setNodes(e,r,{match:n=>em.isText(n),split:!0,at:t})}import{Editor as Se,Point as Jh,Range as Zh}from"slate";function Re(e,t,o,{at:r=e.selection}={}){if(r==null)return;let n=Zh.isRange(r)?r.focus:r,i=Jh.isPoint(n)&&(Se.after(e,n)===null||Se.isEnd(e,n,Se.end(e,[]))),a=t,s=(Se.marks(e)||{})[a]===!0;if(i)if(!s)e.activeMarks={...e.activeMarks,[a]:!0};else{let{[a]:m,...c}=e.activeMarks||{};e.activeMarks=c}s?Se.removeMark(e,a):Se.addMark(e,a,!0),typeof o=="string"&&Se.removeMark(e,o)}function om(e){return{removeMarks:u(tm,e),toggleMark:u(Re,e),toggleBold:()=>Re(e,"bold"),toggleItalic:()=>Re(e,"italic"),toggleUnderline:()=>Re(e,"underline"),toggleStrike:()=>Re(e,"strike"),toggleHighlight:()=>Re(e,"highlight")}}import eg from"@emotion/styled";var rm=eg("span")`
|
|
1150
1142
|
&.--bold {
|
|
1151
1143
|
font-weight: bold;
|
|
1152
1144
|
}
|
|
@@ -1169,7 +1161,7 @@
|
|
|
1169
1161
|
&.--highlight {
|
|
1170
1162
|
background-color: #ffff00;
|
|
1171
1163
|
}
|
|
1172
|
-
`;import{jsx as
|
|
1164
|
+
`;import{jsx as ng}from"react/jsx-runtime";var nm=y(e=>{e.marksPlugin=om(e),e.activeMarks={};let t=D({"mod+b":e.marksPlugin.toggleBold,"mod+i":e.marksPlugin.toggleItalic,"mod+u":e.marksPlugin.toggleUnderline,"super+0":e.marksPlugin.removeMarks,"super+k":e.marksPlugin.toggleStrike,"mod+h":e.marksPlugin.toggleHighlight}),{insertText:o}=e;e.insertText=n=>{if(e.activeMarks&&Object.keys(e.activeMarks).length>0){let{activeMarks:i}=e;Object.entries(i).forEach(([a,l])=>{l&&e.addMark(a,!0)})}o(n)};let{removeMarks:r}=e.marksPlugin;return e.marksPlugin.removeMarks=()=>{if(r(),e.selection){let n=rg.isRange(e.selection)?e.selection.focus:e.selection;og.isPoint(n)&&(sr.after(e,n)===null||sr.isEnd(e,n,sr.end(e,[])))&&(e.activeMarks={})}},{name:"marks",editableProps:{renderLeaf:({leaf:n,children:i})=>ng(rm,{className:tg({"--bold":n.bold,"--italic":n.italic,"--underline":n.underline,"--strike":n.strike,"--highlight":n.highlight}),children:i}),onKeyDown:n=>!!t(n)}}});import{Editor as gt,Point as im}from"slate";function am(e){if(!e.selection)return;let t=gt.parent(e,e.selection);ci(e,t[1])}var lm=y(e=>(e.normalizeAfterDelete=!0,{name:"normalize-after-delete",editor:{deleteBackward(){if(!e.selection)return!1;let t=gt.parent(e,e.selection);return im.equals(gt.start(e,t[1]),e.selection.anchor)?function(){am(e)}:!1},deleteForward(){if(!e.selection)return!1;let t=gt.parent(e,e.selection);return im.equals(gt.end(e,t[1]),e.selection.anchor)?function(){am(e)}:!1}},editableProps:{}}));import{Element as Wg}from"slate";import{Editor as mm,Path as lg,Transforms as cm}from"slate";import{Editor as ig,Path as ag}from"slate";function sm(e,t,o){let r=[...ig.positions(e,{at:t})],n=[],i,a,l;i=a=r[0],l=Ne(e,o,{at:i});for(let m of r){let c=Ne(e,o,{at:m});if(l&&c&&ag.equals(l,c)||l==null&&c==null)a=m;else{let d={anchor:i,focus:a};n.push(d),i=a=m,l=c}}let s={anchor:i,focus:a};return n.push(s),n.reverse(),n}function pm(e,t){if(e.selection==null)return!1;let[o,r]=mm.edges(e,e.selection),n=Ne(e,t,{at:o}),i=Ne(e,t,{at:r});if(!n&&!i||n&&i&&lg.equals(n,i))return!1;let a=sm(e,e.selection,t);return mm.withoutNormalizing(e,()=>{for(let l of a)cm.delete(e,{at:l});cm.collapse(e,{edge:"start"})}),!0}import{Transforms as wg}from"slate";function B(e,{at:t=e.selection}={}){if(t==null)return;let o=E(e,"table-cell",{at:t});if(!o)return;let r=E(e,"table-row",{at:t});if(!r)return;let n=E(e,"table",{at:t});if(!n)return;let[i,a]=n,[l,s]=r,[m,c]=o;return{tableElement:i,tablePath:a,tableColumns:i.columns,rowElement:l,rowPath:s,rowIndex:s.slice(-1)[0],rowCount:i.children.length,cellElement:m,cellPath:c,cellIndex:c.slice(-1)[0],cellCount:l.children.length}}import{Editor as sg,Transforms as dm}from"slate";function qe(e,t=[{type:"table-content",children:[{text:""}]}]){return{type:"table-cell",children:t}}function um(e,{offset:t=0,at:o=e.selection}={}){let r=B(e,{at:o});if(r===void 0)return!1;let{tableElement:n,tablePath:i,cellIndex:a}=r,l=a+t;return sg.withoutNormalizing(e,()=>{let{columns:s}=n,m=[...s];m.splice(l,0,s[l]),dm.setNodes(e,{columns:m},{at:i}),n.children.forEach((c,d)=>{dm.insertNodes(e,qe(l),{at:[...i,d,l]})})}),!0}import{Transforms as mg}from"slate";function cg(e){return{type:"table-row",children:[...Array(e).keys()].map(t=>qe(t))}}function mr(e,{at:t=e.selection,offset:o=0}={}){let r=B(e,{at:t});if(!r)return!1;let n=cg(r.tableElement.columns.length);return mg.insertNodes(e,n,{at:[...r.tablePath,r.rowIndex+o]}),!0}function fm(e,{at:t}={}){return mr(e,{at:t,offset:1})}import{Editor as cr,Element as pg,Path as dg,Transforms as bt}from"slate";function hm(e){return[...Array(e).keys()]}function ug(e){return hm(e).map(()=>({align:"left"}))}function fg(e,t){return{type:"table",columns:ug(e),children:hm(t).map(()=>hg(e))}}function hg(e){return{type:"table-row",children:[...Array(e).keys()].map(t=>qe(t))}}function gm(e,t,o,{at:r=e.selection}={}){let n=fg(t,o);return gg(e,n,{at:r})}function gg(e,t,{at:o=e.selection}={}){if(o==null)return!1;let r=E(e,n=>pg.isElement(n)&&e.isMaster(n));if(r==null){let n=e.selection;cr.withoutNormalizing(e,()=>{bt.insertNodes(e,t,{at:o}),n&&(bt.select(e,n),bt.move(e))})}else{let n=dg.next(r[1]);cr.withoutNormalizing(e,()=>{bt.insertNodes(e,t,{at:n}),bt.select(e,cr.start(e,n))})}return!0}import{Path as bm}from"slate";function Em(e,t){let{cellIndex:o,rowIndex:r,rowCount:n,tablePath:i}=t;if(r<n-1)return G(e,[...i,r+1,o]),!0;try{return G(e,bm.next(i)),!0}catch{return!1}}function xm(e,t){let{cellIndex:o,rowIndex:r,tablePath:n}=t;if(r>0)return G(e,[...n,r-1,o]),!0;try{return fi(e,bm.previous(n)),!0}catch{return!1}}import{ReactEditor as bg}from"slate-react";function Eg(){let e=window.getSelection();return e?e.getRangeAt(0).getBoundingClientRect():null}function xg(e,t){return bg.toDOMNode(e,t).getBoundingClientRect()}function pr(e,t){let o=Eg();if(!o)return!1;let r=xg(e,t);return o.right<r.right&&o.left>r.left&&o.bottom<r.bottom&&o.top>r.top}function ym(e){let t=B(e);return t&&setTimeout(()=>{pr(e,t.cellElement)||Em(e,t)}),!1}function km(e){let t=B(e);return t&&setTimeout(()=>{pr(e,t.cellElement)||xm(e,t)}),!1}import{Editor as vm,Transforms as dr}from"slate";import{Transforms as yg}from"slate";function Qe(e){let t=e.tablePlugin.getTableInfo();return t===void 0?!1:(yg.removeNodes(e,{at:t.tablePath}),!0)}function Tm(e,{at:t=e.selection}={}){let o=B(e,{at:t});if(!o)return!1;let{tableElement:r,tablePath:n,rowIndex:i,cellIndex:a,cellCount:l}=o;if(l===1)return Qe(e);vm.withoutNormalizing(e,()=>{let s=[...r.columns];s.splice(a,1),dr.setNodes(e,{columns:s},{at:n}),r.children.forEach((c,d)=>{dr.removeNodes(e,{at:[...n,d,a]})});let m=vm.start(e,[...n,i,Math.min(a,l-2)]);dr.select(e,m)})}import{Editor as wm,Transforms as Im}from"slate";function Mm(e,{at:t=e.selection}={}){let o=B(e,{at:t});return o===void 0?!1:o.rowCount===1?(Qe(e),!0):(wm.withoutNormalizing(e,()=>{Im.removeNodes(e,{at:o.rowPath}),Im.select(e,wm.start(e,[...o.tablePath,Math.min(o.rowIndex,o.rowCount-2),o.cellIndex]))}),!0)}import{Transforms as kg}from"slate";function Pm(e,t){let o=B(e);if(o===void 0)return!1;let{tableElement:r,tablePath:n,cellIndex:i}=o,a=r.columns.slice();return a.splice(i,1,{align:t.align}),kg.setNodes(e,{columns:a},{at:n}),!0}import{Path as vg,Transforms as Tg}from"slate";function Cm(e){let t=B(e);if(!t)return!1;let{cellIndex:o,cellCount:r,rowIndex:n,rowCount:i,tablePath:a}=t;if(o<r-1)return G(e,[...a,n,o+1]),!0;if(n<i-1)return G(e,[...a,n+1,0]),!0;let l=vg.next(a);return Tg.insertNodes(e,{type:"paragraph",children:[{text:""}]},{at:l}),G(e,l),!0}function Sm(e){let t=B(e);if(!t)return!1;let{cellIndex:o,cellCount:r,rowIndex:n,tablePath:i}=t;if(o>0)return G(e,[...i,n,o-1]),!0;if(n>0)return G(e,[...i,n-1,r-1]),!0}function Rm(e){let t=B(e);if(!t)return!1;let{cellIndex:o,cellCount:r,rowIndex:n,rowCount:i,tablePath:a}=t;return o<r-1?(G(e,[...a,n,o+1]),!0):n<i-1?(G(e,[...a,n+1,0]),!0):(fm(e),G(e,[...a,n+1,0]),!0)}function Lm(e){return{getTableInfo:u(B,e),insertTable:u(gm,e),insertColumn:u(um,e),insertRow:u(mr,e),removeTable:u(Qe,e),removeColumn:u(Tm,e),removeRow:u(Mm,e),tabForward:u(Cm,e),tabBackward:u(Sm,e),shiftEnterForward:u(Rm,e),selectCell:u(Ig,e),down:u(ym,e),up:u(km,e),setTableColumnAlign:u(Pm,e)}}function Ig(e,{at:t=e.selection}={}){let o=B(e,{at:t});if(o===void 0)return!1;let{cellPath:r}=o;return wg.select(e,r),!0}import{Transforms as Mg}from"slate";function ro(e,t){let o=!1;return t[0].children.forEach((n,i)=>{n.children.forEach((l,s)=>{(l.x!==s||l.y!==i)&&(Mg.setNodes(e,{x:s,y:i},{at:[...t[1],i,s]}),o=!0)})}),o}import{Editor as Pg,Transforms as ur}from"slate";function Bm(e,t){let[o,r]=t;return o.children.length===1&&o.children[0].type==="table-content"?!1:(Pg.withoutNormalizing(e,()=>{ur.insertNodes(e,{type:"table-content",children:[{text:"X"}]},{at:[...t[1],0]});for(let n=o.children.length;n>=0;n--)ur.mergeNodes(e,{at:[...r,n]});ur.delete(e,{at:{path:[...r,0,0],offset:0},unit:"character"})}),!0)}import{useEffect as Sg}from"react";import{ReactEditor as Rg,useSelected as Lg,useSlateStatic as Bg}from"slate-react";import io from"@emotion/styled";import me from"@emotion/styled";var zm=me("div")`
|
|
1173
1165
|
position: absolute;
|
|
1174
1166
|
/**
|
|
1175
1167
|
* very slightly shaded
|
|
@@ -1193,7 +1185,7 @@
|
|
|
1193
1185
|
background: rgba(0, 0, 0, 0.15);
|
|
1194
1186
|
}
|
|
1195
1187
|
}
|
|
1196
|
-
`,
|
|
1188
|
+
`,Dm=me(zm)`
|
|
1197
1189
|
cursor: pointer;
|
|
1198
1190
|
/**
|
|
1199
1191
|
* hangs out on top
|
|
@@ -1203,7 +1195,7 @@
|
|
|
1203
1195
|
right: 0;
|
|
1204
1196
|
height: 3em;
|
|
1205
1197
|
top: -3em;
|
|
1206
|
-
`,
|
|
1198
|
+
`,Nm=me(zm)`
|
|
1207
1199
|
/**
|
|
1208
1200
|
* hangs out on left
|
|
1209
1201
|
*/
|
|
@@ -1211,7 +1203,7 @@
|
|
|
1211
1203
|
bottom: -1px;
|
|
1212
1204
|
width: 3em;
|
|
1213
1205
|
left: -3em;
|
|
1214
|
-
|
|
1206
|
+
`,$m=me("div")`
|
|
1215
1207
|
position: absolute;
|
|
1216
1208
|
background: rgba(0, 0, 0, 0.05);
|
|
1217
1209
|
border: 1px solid rgba(0, 0, 0, 0.05);
|
|
@@ -1223,7 +1215,7 @@
|
|
|
1223
1215
|
left: 0;
|
|
1224
1216
|
right: 0;
|
|
1225
1217
|
bottom: 0;
|
|
1226
|
-
`,
|
|
1218
|
+
`,Hm=me($m)`
|
|
1227
1219
|
top: 50%;
|
|
1228
1220
|
border-bottom: none;
|
|
1229
1221
|
border-right: none;
|
|
@@ -1249,7 +1241,7 @@
|
|
|
1249
1241
|
|
|
1250
1242
|
/* border-top-left-radius: 0.5em;
|
|
1251
1243
|
border-top-right-radius: 0.5em; */
|
|
1252
|
-
`,
|
|
1244
|
+
`,Am=me($m)`
|
|
1253
1245
|
left: 50%;
|
|
1254
1246
|
border-right: none;
|
|
1255
1247
|
border-bottom: none;
|
|
@@ -1275,7 +1267,7 @@
|
|
|
1275
1267
|
|
|
1276
1268
|
/* border-top-left-radius: 0.5em;
|
|
1277
1269
|
border-bottom-left-radius: 0.5em; */
|
|
1278
|
-
|
|
1270
|
+
`,Om=me("div")`
|
|
1279
1271
|
position: absolute;
|
|
1280
1272
|
font-size: 1.5em;
|
|
1281
1273
|
background: white;
|
|
@@ -1284,27 +1276,27 @@
|
|
|
1284
1276
|
svg {
|
|
1285
1277
|
display: block;
|
|
1286
1278
|
}
|
|
1287
|
-
`,je=me(
|
|
1279
|
+
`,je=me(Om)`
|
|
1288
1280
|
color: #c0c0c0;
|
|
1289
1281
|
&:hover {
|
|
1290
1282
|
color: royalblue;
|
|
1291
1283
|
}
|
|
1292
|
-
`,no=me(
|
|
1284
|
+
`,no=me(Om)`
|
|
1293
1285
|
color: #c0c0c0;
|
|
1294
1286
|
&:hover {
|
|
1295
1287
|
color: firebrick;
|
|
1296
1288
|
}
|
|
1297
|
-
`;var
|
|
1289
|
+
`;var Um=io("table")`
|
|
1298
1290
|
border-collapse: collapse;
|
|
1299
1291
|
margin: 1em 0;
|
|
1300
1292
|
${({columns:e})=>e.map((t,o)=>`td:nth-of-type(${o+1}) { text-align: ${t.align}; }`).join(`
|
|
1301
1293
|
`)}
|
|
1302
|
-
`,
|
|
1294
|
+
`,Fm=io("tr")`
|
|
1303
1295
|
position: relative;
|
|
1304
1296
|
&:first-of-type {
|
|
1305
1297
|
background: var(--table-head-bgcolor);
|
|
1306
1298
|
}
|
|
1307
|
-
`,
|
|
1299
|
+
`,Vm=io("td")`
|
|
1308
1300
|
position: relative;
|
|
1309
1301
|
border-width: 1px;
|
|
1310
1302
|
border-style: solid;
|
|
@@ -1324,7 +1316,7 @@
|
|
|
1324
1316
|
&:last-of-type {
|
|
1325
1317
|
border-right-color: var(--table-border-color);
|
|
1326
1318
|
}
|
|
1327
|
-
`,
|
|
1319
|
+
`,Km=io("div")`
|
|
1328
1320
|
/**
|
|
1329
1321
|
* Smaller font inside a table than outside of it
|
|
1330
1322
|
*/
|
|
@@ -1336,7 +1328,7 @@
|
|
|
1336
1328
|
color: rgba(0, 0, 0, 0.6);
|
|
1337
1329
|
font-size: 0.875em; /* 14px */
|
|
1338
1330
|
}
|
|
1339
|
-
`;import{createContext as
|
|
1331
|
+
`;import{createContext as Cg}from"react";var ao=Cg({isSelected:!1});import{jsx as fr}from"react/jsx-runtime";function _m({element:e,attributes:t,children:o}){let r=Bg(),n=Lg();return Sg(()=>{let i=Rg.findPath(r,e);ro(r,[e,i])},[]),fr(ao.Provider,{value:{isSelected:n},children:fr(Um,{...t,columns:e.columns,children:fr("tbody",{children:o})})})}import{useContext as Ug}from"react";import{useSelected as Fg}from"slate-react";import{useCallback as hr,useRef as zg,useState as Dg}from"react";import{useSlateStatic as Ng}from"slate-react";import{jsx as Z}from"react/jsx-runtime";var Xe=e=>Z("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",width:"1em",height:"1em",...e,children:Z("path",{fillRule:"evenodd",d:"M10 18a8 8 0 1 0 0-16 8 8 0 0 0 0 16zm.75-11.25a.75.75 0 0 0-1.5 0v2.5h-2.5a.75.75 0 0 0 0 1.5h2.5v2.5a.75.75 0 0 0 1.5 0v-2.5h2.5a.75.75 0 0 0 0-1.5h-2.5v-2.5z",clipRule:"evenodd"})}),lo=e=>Z("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 20 20",fill:"currentColor",width:"1em",height:"1em",...e,children:Z("path",{fillRule:"evenodd",d:"M10 18a8 8 0 1 0 0-16 8 8 0 0 0 0 16zM6.75 9.25a.75.75 0 0 0 0 1.5h6.5a.75.75 0 0 0 0-1.5h-6.5z",clipRule:"evenodd"})}),so=()=>Z(x,{children:Z("path",{d:"M4 6h16M4 12h16M4 18h16"})}),Wm=()=>Z(x,{children:Z("path",{d:"M4 6h16M4 12h10M4 18h14"})}),Gm=()=>Z(x,{children:Z("path",{d:"M4 6h16M8 12h8M6 18h12"})}),qm=()=>Z(x,{children:Z("path",{d:"M4 6h16M10 12h10M6 18h14"})});import{Fragment as $g,jsx as ce,jsxs as Qm}from"react/jsx-runtime";function jm({cellElement:e}){let t=Ng(),o=H("column-menu"),r=zg(null),[n,i]=Dg(!1),a=hr(()=>{i(!0)},[]),l=hr(()=>{i(!1)},[]),s=hr(()=>{o.layer&&o.close();let m=r.current;if(m===null)return;let c=[{icon:Wm,title:"\u5DE6\u63C3\u3048",action:()=>{t.tablePlugin.setTableColumnAlign({align:"left"})}},{icon:Gm,title:"\u4E2D\u592E\u63C3\u3048",action:()=>{t.tablePlugin.setTableColumnAlign({align:"center"})}},{icon:qm,title:"\u53F3\u63C3\u3048",action:()=>{t.tablePlugin.setTableColumnAlign({align:"right"})}}];o.open(()=>ce(He,{dest:m,items:c,close:o.close}))},[]);return Qm(Dm,{ref:r,contentEditable:!1,onClick:s,onMouseEnter:a,onMouseLeave:l,children:[ce(Hm,{className:"--tile",children:ce(so,{})}),n?Qm($g,{children:[ce(no,{style:{top:0,left:"50%",marginLeft:"-0.5em"},onMouseDown:()=>t.tablePlugin.removeColumn({at:e}),children:ce(lo,{})}),ce(je,{style:{left:"-0.5em",top:0},onMouseDown:()=>t.tablePlugin.insertColumn({at:e}),children:ce(Xe,{})}),ce(je,{style:{right:"-0.5em",top:0},onMouseDown:()=>t.tablePlugin.insertColumn({at:e,offset:1}),children:ce(Xe,{})})]}):null]})}import{useState as Hg}from"react";import{useSlateStatic as Ag}from"slate-react";import{Fragment as Og,jsx as ke,jsxs as Xm}from"react/jsx-runtime";function Ym({cellElement:e}){let t=Ag(),[o,r]=Hg(!1);return Xm(Nm,{contentEditable:!1,onMouseEnter:()=>r(!0),onMouseLeave:()=>r(!1),children:[ke(Am,{className:"--tile",children:ke(so,{})}),o?Xm(Og,{children:[ke(no,{style:{top:"50%",left:"0.5em",marginTop:"-0.5em"},onMouseDown:()=>t.tablePlugin.removeRow({at:e}),children:ke(lo,{})}),ke(je,{style:{top:"-0.5em",left:"0.5em"},onMouseDown:()=>t.tablePlugin.insertRow({at:e}),children:ke(Xe,{})}),ke(je,{style:{bottom:"-0.5em",left:"0.5em"},onMouseDown:()=>t.tablePlugin.insertRow({at:e,offset:1}),children:ke(Xe,{})})]}):null]})}import Jm from"@emotion/styled";var Zm=Jm("div")`
|
|
1340
1332
|
position: absolute;
|
|
1341
1333
|
/**
|
|
1342
1334
|
* very slightly shaded
|
|
@@ -1368,7 +1360,7 @@
|
|
|
1368
1360
|
background: rgba(0, 0, 0, 0.15);
|
|
1369
1361
|
}
|
|
1370
1362
|
}
|
|
1371
|
-
`,
|
|
1363
|
+
`,ec=Jm("div")`
|
|
1372
1364
|
position: absolute;
|
|
1373
1365
|
left: 0;
|
|
1374
1366
|
top: 0;
|
|
@@ -1376,8 +1368,8 @@
|
|
|
1376
1368
|
height: 1.5em;
|
|
1377
1369
|
background: rgba(0, 0, 0, 0.05);
|
|
1378
1370
|
border-radius: 50%;
|
|
1379
|
-
`;import{jsx as
|
|
1380
|
-
`),!0):!1,isMaster(r){if(r.type==="table")return!0},normalizeNode:r=>{let[n]=r;if(!
|
|
1371
|
+
`;import{jsx as tc}from"react/jsx-runtime";function oc(){return tc(Zm,{contentEditable:!1,children:tc(ec,{className:"--table-menu-tile"})})}import{jsx as gr,jsxs as Vg}from"react/jsx-runtime";function rc({element:e,attributes:t,children:o}){let r=Ug(ao),n=Fg(),i=r.isSelected&&e.x===0&&e.y===0,a=r.isSelected&&e.x===0,l=r.isSelected&&e.y===0;return Vg(Vm,{className:n?"--selected":"",...t,"data-x":e.x,"data-y":e.y,children:[o,i?gr(oc,{}):null,a?gr(Ym,{cellElement:e}):null,l?gr(jm,{cellElement:e}):null]})}import{jsx as Kg}from"react/jsx-runtime";function nc({attributes:e,children:t}){return Kg(Km,{...e,children:t})}import{jsx as _g}from"react/jsx-runtime";function ic({attributes:e,children:t}){return _g(Fm,{...e,children:t})}import{jsx as mo}from"react/jsx-runtime";function ac({element:e,attributes:t,children:o}){switch(e.type){case"table":return mo(_m,{element:e,attributes:t,children:o});case"table-row":return mo(ic,{element:e,attributes:t,children:o});case"table-cell":return mo(rc,{element:e,attributes:t,children:o});case"table-content":return mo(nc,{element:e,attributes:t,children:o})}}var lc=y((e,t,{createPolicy:o})=>(e.supportsTable=!0,e.tablePlugin=Lm(e),o({name:"table",editor:{deleteBackward:()=>we(e,"table-cell"),deleteForward:()=>ii(e,"table-cell"),deleteFragment:()=>pm(e,["table-cell"]),insertBreak:()=>E(e,"table-cell")?(e.insertText(`
|
|
1372
|
+
`),!0):!1,isMaster(r){if(r.type==="table")return!0},normalizeNode:r=>{let[n]=r;if(!Wg.isElement(n))return!1;switch(n.type){case"table":return ro(e,r);case"table-cell":return Bm(e,r)}return!1}},editableProps:{renderElement:ac,onKeyDown:D({tab:e.tablePlugin.tabForward,"shift+tab":e.tablePlugin.tabBackward,"shift+enter":e.tablePlugin.shiftEnterForward,down:e.tablePlugin.down,up:e.tablePlugin.up,"mod+a":e.tablePlugin.selectCell,"super+t":()=>e.tablePlugin.insertTable(3,2),"mod+shift+enter":()=>e.tablePlugin.insertRow({offset:0}),"mod+enter":()=>e.tablePlugin.insertRow({offset:1}),"super+[":()=>e.tablePlugin.insertColumn({offset:0}),"super+]":()=>e.tablePlugin.insertColumn({offset:1}),"super+backspace":e.tablePlugin.removeTable,"mod+backspace":e.tablePlugin.removeRow,"mod+shift+backspace":e.tablePlugin.removeColumn})}})));import{Global as jg}from"@emotion/react";import{css as Gg}from"@emotion/react";var qg=`
|
|
1381
1373
|
--blue-50: rgb(239 246 255);
|
|
1382
1374
|
--blue-100: rgb(219 234 254);
|
|
1383
1375
|
--blue-200: rgb(191 219 254);
|
|
@@ -1388,7 +1380,7 @@
|
|
|
1388
1380
|
--blue-700: rgb(29 78 216);
|
|
1389
1381
|
--blue-800: rgb(30 64 175);
|
|
1390
1382
|
--blue-900: rgb(30 58 138);
|
|
1391
|
-
`,
|
|
1383
|
+
`,Qg=`
|
|
1392
1384
|
--shade-50: rgb(250 250 250);
|
|
1393
1385
|
--shade-100: rgb(244 244 245);
|
|
1394
1386
|
--shade-200: rgb(228 228 231);
|
|
@@ -1399,11 +1391,11 @@
|
|
|
1399
1391
|
--shade-700: rgb(63 63 70);
|
|
1400
1392
|
--shade-800: rgb(39 39 42);
|
|
1401
1393
|
--shade-900: rgb(24 24 27);
|
|
1402
|
-
`,
|
|
1394
|
+
`,sc=Gg`
|
|
1403
1395
|
:root {
|
|
1404
1396
|
/* Tailwind Colors */
|
|
1405
|
-
${
|
|
1406
|
-
${
|
|
1397
|
+
${qg}
|
|
1398
|
+
${Qg}
|
|
1407
1399
|
/* Select Colors */
|
|
1408
1400
|
--select-color: var(--blue-400);
|
|
1409
1401
|
--select-editor-color: var(--blue-200);
|
|
@@ -1425,14 +1417,14 @@
|
|
|
1425
1417
|
/* Horizontal Rule Colors */
|
|
1426
1418
|
--hr-color: var(--shade-300);
|
|
1427
1419
|
}
|
|
1428
|
-
`;import{Fragment as
|
|
1420
|
+
`;import{Fragment as Xg,jsx as mc,jsxs as Yg}from"react/jsx-runtime";var cc=y(e=>(e.theme=!0,{name:"theme",editor:{},renderEditable:({attributes:t,Editable:o})=>Yg(Xg,{children:[mc(jg,{styles:sc}),mc(o,{...t})]}),editableProps:{}}));import{clsx as $b}from"clsx";import{useCallback as Hb,useRef as Ab}from"react";import{Editor as Ob,Transforms as Ub}from"slate";import{ReactEditor as Fb,useFocused as Vb,useSlateStatic as Kb}from"slate-react";import{clsx as Jg}from"clsx";import{useCallback as fc,useRef as Zg,useState as eb}from"react";import{ReactEditor as tb,useSlateStatic as ob}from"slate-react";import br from"@emotion/styled";var pc=br(X)`
|
|
1429
1421
|
padding: 0.5em;
|
|
1430
|
-
`,
|
|
1422
|
+
`,dc=br("div")`
|
|
1431
1423
|
display: grid;
|
|
1432
1424
|
grid-template-columns: repeat(5, 1.75em);
|
|
1433
1425
|
grid-template-rows: 1.5em;
|
|
1434
1426
|
/* grid-gap: 1px; */
|
|
1435
|
-
`,
|
|
1427
|
+
`,uc=br("div")`
|
|
1436
1428
|
background: var(--shade-100);
|
|
1437
1429
|
height: 1.5em;
|
|
1438
1430
|
border-radius: 0.125em;
|
|
@@ -1442,11 +1434,11 @@
|
|
|
1442
1434
|
&.--selected {
|
|
1443
1435
|
background: var(--blue-100);
|
|
1444
1436
|
}
|
|
1445
|
-
`;import{Fragment as
|
|
1437
|
+
`;import{Fragment as rb,jsx as co,jsxs as nb}from"react/jsx-runtime";function hc(e){return[...Array(e).keys()]}function gc({dest:e,close:t}){let[o,r]=eb({x:0,y:0}),n=ob(),i=Zg(null),a=j({src:i,dest:e},({dest:d})=>({left:d.left-8,top:d.top+d.height})),l=hc(5).map(d=>d+1),s=hc(5).map(d=>d+1),m=fc((d,p)=>{r({x:d,y:p})},[r]),c=fc((d,p)=>{n.tablePlugin.insertTable(d,p),tb.focus(n),t()},[n]);return nb(rb,{children:[co(be,{close:t}),co(pc,{ref:i,style:a,children:co(dc,{onMouseLeave:()=>m(0,0),children:l.map(d=>s.map(p=>{let b=p<=o.x&&d<=o.y;return co(uc,{className:Jg({"--selected":b}),onMouseEnter:()=>m(p,d),onClick:()=>c(p,d)},`${p},${d}`)}))})})]})}import Pb from"lodash.throttle";import{useEffect as Cb,useRef as Sb,useState as Rb}from"react";import{useSlateStatic as Lb}from"slate-react";import{jsx as h,jsxs as Ye}from"react/jsx-runtime";var bc=()=>h(x,{children:h("path",{d:"M7 12h10M7 5v14M17 5v14M15 19h4M15 5h4M5 19h4M5 5h4"})}),Ec=()=>h(x,{className:"--more-icon",width:"0.5em",viewBox:"0 0 12 24",children:h("path",{d:"m2 12 4 4 4-4"})}),xc=()=>h(x,{width:"0.5em",viewBox:"6 0 12 24",children:h("path",{d:"M9 12h6M12 9v6"})}),yc=()=>h(x,{children:h("path",{d:"M19 18v-8l-2 2M4 6v12M12 6v12M11 18h2M3 18h2M4 12h8M3 6h2M11 6h2"})}),kc=()=>h(x,{children:h("path",{d:"M17 12a2 2 0 1 1 4 0c0 .591-.417 1.318-.816 1.858L17 18.001h4M4 6v12M12 6v12M11 18h2M3 18h2M4 12h8M3 6h2M11 6h2"})}),vc=()=>h(x,{children:h("path",{d:"M19 14a2 2 0 1 0-2-2M17 16a2 2 0 1 0 2-2M4 6v12M12 6v12M11 18h2M3 18h2M4 12h8M3 6h2M11 6h2"})});var Tc=()=>h(x,{children:h("path",{d:"M8 18V6h2l6 9V6h2v12h-2l-6-9v9H8z"})}),Er=()=>h(x,{children:h("path",{d:"M7 5h6a3.5 3.5 0 0 1 0 7H7zM13 12h1a3.5 3.5 0 0 1 0 7H7v-7"})}),wc=()=>h(x,{children:h("path",{d:"M11 5h6M7 19h6M14 5l-4 14"})});var po=()=>Ye(x,{children:[h("path",{d:"M10 14a3.5 3.5 0 0 0 5 0l4-4a3.5 3.5 0 0 0-5-5l-.5.5"}),h("path",{d:"M14 10a3.5 3.5 0 0 0-5 0l-4 4a3.5 3.5 0 0 0 5 5l.5-.5"})]});var xr=()=>h(x,{children:h("path",{d:"M10 11H6a1 1 0 0 1-1-1V7a1 1 0 0 1 1-1h3a1 1 0 0 1 1 1v6c0 2.667-1.333 4.333-4 5M19 11h-4a1 1 0 0 1-1-1V7a1 1 0 0 1 1-1h3a1 1 0 0 1 1 1v6c0 2.667-1.333 4.333-4 5"})}),Ic=()=>Ye(x,{children:[h("path",{d:"M10 9l4 3-4 3"}),h("path",{d:"M16 9l4 3-4 3"})]});var Mc=()=>h(x,{children:h("path",{d:"M9 6h11M9 12h11M9 18h11M5 6v.01M5 12v.01M5 18v.01"})}),Pc=()=>Ye(x,{children:[h("rect",{x:4,y:4,width:16,height:16,rx:2}),h("path",{d:"M4 10h16M10 4v16"})]}),Cc=()=>h(x,{children:h("path",{d:"m7 8-4 4 4 4M17 8l4 4-4 4M14 4l-4 16"})}),Sc=()=>h(x,{children:h("path",{d:"M9 8L5 12L9 16M15 8L19 12L15 16"})}),Rc=()=>Ye(x,{children:[h("path",{d:"M15 8h.01"}),h("rect",{x:4,y:4,width:16,height:16,rx:3}),h("path",{d:"m4 15 4-4a3 5 0 0 1 3 0l5 5"}),h("path",{d:"m14 14 1-1a3 5 0 0 1 3 0l2 2"})]});var Lc=()=>h(x,{children:h("path",{d:"M12 5v14M5 12h14"})}),Bc=()=>h(x,{children:h("path",{d:"M5 12h14M16 6.5A4 2 0 0 0 12 5h-1a3.5 3.5 0 0 0 0 7h2a3.5 3.5 0 0 1 0 7h-1.5a4 2 0 0 1-4-1.5"})}),zc=()=>h(x,{children:h("path",{d:"M7 5v5a5 5 0 0 0 10 0V5M5 19h14"})});var Dc=()=>Ye(x,{children:[h("path",{d:"m9 11 3 3 8-8"}),h("path",{d:"M20 12v6a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2V6a2 2 0 0 1 2-2h9"})]}),yr=()=>h(x,{children:h("path",{d:"M11 6h9M11 12h9M12 18h8M4 16a2 2 0 1 1 4 0c0 .591-.5 1-1 1.5L4 20h4M6 10V4L4 6"})}),Nc=()=>h(x,{children:h("path",{d:"M4 6h16M8 12h12M12 18h8M7 12l-3-3M7 12l-3 3"})}),$c=()=>h(x,{children:h("path",{d:"M4 6h16M8 12h12M12 18h8M4 12l3-3M4 12l3 3"})});var Hc=()=>h(x,{children:h("path",{d:"M18 6L6 18M6 6l12 12"})}),Ac=()=>Ye(x,{children:[h("path",{d:"M4 20h4l10.5-10.5a2.828 2.828 0 1 0-4-4L4 16v4"}),h("path",{d:"M13.5 6.5l4 4"}),h("path",{d:"m14 19 6-6M18 15l2 2M5 21h4"})]}),Oc=()=>h(x,{children:h("path",{d:"M5 12h14"})});var kr=[{icon:Nc,title:f("increaseDepth"),hotkey:"tab",action:e=>e.list.increaseDepth(),active:e=>e.list.canIncreaseDepth()},{icon:$c,title:f("decreaseDepth"),hotkey:"shift+tab",action:e=>e.list.decreaseDepth(),active:e=>e.list.canDecreaseDepth()}],Uc=[{icon:Tc,title:f("normal"),hotkey:"super+0",action:e=>{e.collapsibleParagraph.convertParagraph()}},{icon:yc,title:f("heading1"),hotkey:"super+1",action:e=>e.heading.convertHeading(1,!0),active:e=>e.heading.isHeadingActive(1)},{icon:kc,title:f("heading2"),hotkey:"super+2",action:e=>e.heading.convertHeading(2,!0),active:e=>e.heading.isHeadingActive(2)},{icon:vc,title:f("heading3"),hotkey:"super+3",action:e=>e.heading.convertHeading(3,!0),active:e=>e.heading.isHeadingActive(3)}],Fc=[...Uc],vr=[{icon:bc,title:f("paragraphStyle"),more:!0,children:Uc}];import{useState as pe,useRef as Kc,useEffect as ab,useCallback as Tr}from"react";import{useSlateStatic as lb}from"slate-react";import ib from"@emotion/styled";var Vc=ib(X)`
|
|
1446
1438
|
width: 18em;
|
|
1447
1439
|
padding: 0;
|
|
1448
1440
|
overflow: hidden;
|
|
1449
|
-
`;import{Fragment as
|
|
1441
|
+
`;import{Fragment as sb,jsx as U,jsxs as Q}from"react/jsx-runtime";function _c({dest:e,close:t}){let o=lb(),r=Kc(void 0),n=Kc(null),[i,a]=pe({x:0,y:0}),l=Tr(($,O)=>{a(de=>({x:de.x+$,y:de.y+O}))},[]),s=o.wysimark?.imageDialogState,m=!!o.wysimark?.onImageChange,[c,d]=pe(s?.url??""),[p,b]=pe(s?.alt??""),[g,v]=pe(s?.title??""),[C,P]=pe(!1),[w,S]=pe(s?.imageSource??(m?"file":"url")),[M,N]=pe(!1),[T,I]=pe(s?.uploadedUrl??""),[k,z]=pe(""),ve=Tr($=>{let O=$.target.value;b(O),C||v(O)},[C]),kp=Tr($=>{v($.target.value),P(!0)},[]);ab(()=>{o.wysimark&&(o.wysimark.imageDialogState={url:c,alt:p,title:g,imageSource:w,uploadedUrl:T})},[c,p,g,w,T]);let zr=()=>{o.wysimark&&(o.wysimark.imageDialogState=void 0)},bo=j({src:r,dest:e},({src:$,dest:O},de)=>Dt($,de,{left:O.left-16,top:O.top+O.height},{margin:16})),vp={...bo,left:bo.left+i.x,top:bo.top+i.y};function Tp($){$.preventDefault();let O=w==="file"?T:c;O.trim()!==""&&(o.image.insertImageFromUrl(O,p,g),zr(),t())}function wp(){zr(),t()}async function Ip($){let O=$.target.files?.[0];if(!(!O||!o.wysimark?.onImageChange)){z(O.name),N(!0);try{let de=await o.wysimark.onImageChange(O);I(de)}catch(de){console.error("Failed to upload image:",de)}finally{N(!1)}}}function Mp(){n.current?.click()}let Eo=w==="file"?T.trim()===""||M:c.trim()==="";return Q(sb,{children:[U(be,{close:t}),Q(Vc,{ref:r,style:vp,children:[U(xe,{onDrag:l}),Q("form",{onSubmit:$=>void Tp($),style:{padding:"8px"},children:[m&&Q("div",{style:{marginBottom:"12px"},children:[Q("label",{style:{display:"inline-flex",alignItems:"center",marginRight:"16px",cursor:"pointer"},children:[U("input",{type:"radio",name:"imageSource",value:"file",checked:w==="file",onChange:()=>S("file"),style:{marginRight:"4px"}}),f("imageSourceFile")]}),Q("label",{style:{display:"inline-flex",alignItems:"center",cursor:"pointer"},children:[U("input",{type:"radio",name:"imageSource",value:"url",checked:w==="url",onChange:()=>S("url"),style:{marginRight:"4px"}}),f("imageSourceUrl")]})]}),w==="url"?Q("div",{style:{marginBottom:"8px"},children:[U("label",{style:{display:"block",marginBottom:"4px"},children:f("imageUrlRequired")}),U("input",{type:"text",value:c,onChange:$=>d($.target.value),style:{width:"100%",padding:"6px",boxSizing:"border-box",border:"1px solid var(--shade-300)",borderRadius:"4px",backgroundColor:"var(--shade-50)",color:"var(--shade-700)"},placeholder:"https://example.com/image.jpg"})]}):Q("div",{style:{marginBottom:"8px"},children:[U("input",{ref:n,type:"file",accept:"image/*",onChange:$=>void Ip($),style:{display:"none"}}),U("button",{type:"button",onClick:Mp,disabled:M,style:{padding:"8px 16px",backgroundColor:M?"#ccc":"#0078d4",color:M?"#666":"white",border:"none",borderRadius:"4px",cursor:M?"not-allowed":"pointer",marginBottom:"8px",fontWeight:"bold"},children:M?f("uploading"):f("selectFile")}),T&&Q("div",{style:{marginTop:"8px",padding:"8px",backgroundColor:"var(--shade-100)",borderRadius:"4px"},children:[Q("div",{style:{color:"green",marginBottom:"4px"},children:["\u2713 ",f("uploadComplete")]}),k&&U("div",{style:{fontSize:"12px",color:"var(--shade-500)"},children:k})]})]}),Q("div",{style:{marginBottom:"8px"},children:[U("label",{style:{display:"block",marginBottom:"4px"},children:f("altText")}),U("input",{type:"text",value:p,onChange:ve,style:{width:"100%",padding:"6px",boxSizing:"border-box",border:"1px solid var(--shade-300)",borderRadius:"4px",backgroundColor:"var(--shade-50)",color:"var(--shade-700)"},placeholder:f("imageDescription")})]}),Q("div",{style:{marginBottom:"8px"},children:[U("label",{style:{display:"block",marginBottom:"4px"},children:f("title")}),U("input",{type:"text",value:g,onChange:kp,style:{width:"100%",padding:"6px",boxSizing:"border-box",border:"1px solid var(--shade-300)",borderRadius:"4px",backgroundColor:"var(--shade-50)",color:"var(--shade-700)"},placeholder:f("imageTitle")})]}),Q("div",{style:{display:"flex",gap:"8px"},children:[U("button",{type:"submit",disabled:Eo,style:{display:"flex",alignItems:"center",padding:"8px 16px",backgroundColor:Eo?"#ccc":"#0078d4",color:"white",border:"none",borderRadius:"4px",cursor:Eo?"not-allowed":"pointer",fontWeight:"bold"},children:f("register")}),U("button",{type:"button",onClick:wp,style:{padding:"8px 16px",backgroundColor:"var(--shade-100)",color:"var(--shade-700)",border:"1px solid var(--shade-300)",borderRadius:"4px",cursor:"pointer"},children:f("cancel")})]})]})]})]})}import{isHotkey as mb}from"is-hotkey";import{useCallback as uo,useMemo as cb,useRef as pb,useState as Et}from"react";import{Editor as db,Range as ub}from"slate";import{ReactEditor as fb,useSlateStatic as hb}from"slate-react";import Wc from"@emotion/styled";var wr=Wc("div")`
|
|
1450
1442
|
/* Center vertically and horizontally */
|
|
1451
1443
|
display: flex;
|
|
1452
1444
|
align-items: center;
|
|
@@ -1470,9 +1462,9 @@
|
|
|
1470
1462
|
font-size: 1.25em;
|
|
1471
1463
|
stroke-width: 2px;
|
|
1472
1464
|
}
|
|
1473
|
-
`,
|
|
1465
|
+
`,Gc=Wc("div")`
|
|
1474
1466
|
font-size: 0.875em;
|
|
1475
1467
|
margin-top: 0.5em;
|
|
1476
1468
|
color: var(--shade-500);
|
|
1477
1469
|
line-height: 1.375;
|
|
1478
|
-
`;import{Fragment as fb,jsx as ee,jsxs as xt}from"react/jsx-runtime";var ub=ab("enter");function Kc({dest:e,close:t}){let o=db(),r=sb(null),[n,i]=Et({x:0,y:0}),a=uo((I,k)=>{i(z=>({x:z.x+I,y:z.y+k}))},[]),l=j({src:r,dest:e},({src:I,dest:k},z)=>Nt(I,z,{left:k.left-12,top:k.top+k.height},{margin:16})),s={...l,left:l.left+n.x,top:l.top+n.y},m=lb(()=>{let{selection:I}=o;return I&&!cb.isCollapsed(I)?mb.string(o,I):""},[]),[c,d]=Et(""),[p,b]=Et(m),[g,v]=Et(m),[C,P]=Et(!1),w=()=>{let I=p.trim()||c,k=g.trim()||void 0;o.anchor.insertLink(c,I,{select:!0,title:k}),pb.focus(o),t()},S=uo(I=>{d(I.currentTarget.value)},[d]),M=uo(I=>{let k=I.currentTarget.value;b(k),C||v(k)},[b,v,C]),N=uo(I=>{v(I.currentTarget.value),P(!0)},[v]),T=I=>{ub(I)&&(I.preventDefault(),I.stopPropagation(),w())};return xt(fb,{children:[ee(be,{close:t}),xt(zi,{ref:r,style:s,children:[ee(xe,{onDrag:a}),xt("div",{style:{padding:"0.75em"},children:[ee($t,{children:ee(Ht,{type:"text",value:c,autoFocus:!0,placeholder:f("linkUrl"),onChange:S,onKeyDown:T})}),ee($t,{style:{marginTop:"0.5em"},children:ee(Ht,{type:"text",value:p,placeholder:f("linkText"),onChange:M,onKeyDown:T})}),xt($t,{style:{marginTop:"0.5em"},children:[ee(Ht,{type:"text",value:g,placeholder:f("tooltipText"),onChange:N,onKeyDown:T}),xt(Tr,{onClick:w,children:[ee(po,{}),ee(gc,{})]}),ee(Tr,{onClick:t,style:{marginLeft:"0.25em",background:"var(--shade-400)"},children:ee(Dc,{})})]}),ee(Vc,{children:f("tooltipHint")})]})]})]})}var wr=[{icon:po,title:f("insertLink"),more:!0,hotkey:"mod+k",Component:Kc},{icon:Pc,title:f("insertImageFromUrl"),more:!0,Component:Uc},{icon:wc,title:f("insertTable"),more:!0,Component:uc}],_c=wr,Wc=wr,Gc=[{icon:Cc,title:f("insert"),more:!0,children:wr}];import{Editor as hb}from"slate";function Je(e){let t=hb.marks(e);return{bold:t?.bold||!1,italic:t?.italic||!1,strike:t?.strike||!1,code:t?.code||!1,underline:t?.underline||!1,highlight:t?.highlight||!1}}var qc=[{icon:br,title:f("bold"),hotkey:"mod+b",action:e=>e.marksPlugin.toggleBold(),active:e=>Je(e).bold},{icon:kc,title:f("italic"),hotkey:"mod+i",action:e=>e.marksPlugin.toggleItalic(),active:e=>Je(e).italic},{icon:Sc,title:f("strike"),hotkey:"super+k",action:e=>e.marksPlugin.toggleStrike(),active:e=>Je(e).strike},{icon:Ic,title:f("inlineCode"),hotkey:"mod+j",action:e=>e.inlineCode.toggleInlineCode(),active:e=>Je(e).code},{icon:Rc,title:f("underline"),hotkey:"mod+u",action:e=>e.marksPlugin.toggleUnderline(),active:e=>Je(e).underline},{icon:Nc,title:f("highlight"),hotkey:"mod+h",action:e=>e.marksPlugin.toggleHighlight(),active:e=>Je(e).highlight,show:e=>!e.wysimark.disableHighlight}],Ir=qc,Qc=[{icon:br,title:f("format"),more:!0,children:qc}];var jc=[{icon:Tc,title:f("bulletList"),hotkey:"super+8",action:e=>e.list.convertUnorderedList(!0)},{icon:xr,title:f("numberedList"),hotkey:"super+7",action:e=>e.list.convertOrderedList(!0)},{icon:Lc,title:f("checkList"),hotkey:"super+9",action:e=>e.list.convertTaskList(!0),show:e=>!e.wysimark.disableTaskList}],Mr=[...jc,"divider",...yr],Xc=[{icon:xr,title:f("list"),more:!0,children:[...jc,"divider",...yr]}];import{Editor as Yc,Transforms as fo}from"slate";var Jc=[{icon:Er,title:f("quote"),hotkey:"super+.",action:e=>{e.blockQuotePlugin.isActive()?e.blockQuotePlugin.outdent():e.blockQuotePlugin.indent()},active:e=>e.blockQuotePlugin.isActive()},{icon:vc,title:f("increaseQuoteDepth"),action:e=>e.blockQuotePlugin.increaseDepth(),active:e=>e.blockQuotePlugin.canIncreaseDepth()},{icon:Mc,title:f("codeBlock"),action:e=>{let{selection:t}=e,o=E(e,"code-block");if(o){let[,r]=o,n=Yc.string(e,r);fo.removeNodes(e,{at:r}),fo.insertNodes(e,{type:"paragraph",children:[{text:n}]},{at:r});return}if(t&&JSON.stringify(t.anchor.path)!==JSON.stringify(t.focus.path)){e.codeBlock.createCodeBlock({language:"text"});return}if(t&&(t.anchor.offset!==t.focus.offset||JSON.stringify(t.anchor.path)!==JSON.stringify(t.focus.path))){let r=Yc.string(e,t);fo.delete(e),fo.insertNodes(e,{type:"code-block",language:"text",children:[{type:"code-block-line",children:[{text:r}]}]});return}e.codeBlock.createCodeBlock({language:"text"})},active:e=>!!E(e,"code-block"),show:e=>!e.wysimark.disableCodeBlock}],Pr=Jc,Zc=[{icon:Er,title:f("quote"),more:!0,children:Jc}];var gb=[...Hc,"divider",...Mr,"divider",...Ir,"divider",..._c,"divider",...Pr],bb=[...kr,"divider",...Mr,"divider",...Ir,"divider",...Wc,"divider",...Pr],ep=[...kr,"divider",...Xc,"divider",...Qc,"divider",...Gc,"divider",...Zc],tp=ep;var Ze=[gb,bb,ep];import{clsx as Eb}from"clsx";import{useCallback as Cr,useRef as xb}from"react";import{ReactEditor as yb,useSlate as kb,useSlateStatic as vb}from"slate-react";import{jsx as ho,jsxs as Tb}from"react/jsx-runtime";function op({item:e}){let t=vb(),o=kb(),r=e.active?e.active(o):!1,n=xb(null),i=Y({title:e.title,hotkey:()=>e.hotkey?zt(e.hotkey):void 0}),a=H("menu"),l=Cr(()=>{let c=n.current,d=e.children,p=e.Component;c&&(d?a.open(()=>ho(He,{dest:c,items:d,close:a.close})):p&&a.open(()=>ho(p,{dest:c,close:a.close})))},[e]),s=Cr(()=>{if(e.action){e.action(t),yb.focus(t);return}a.layer?a.close():l()},[a.layer,e]),m=Cr(c=>{i.onMouseEnter(c),a.layer&&l()},[a.layer]);return Tb(Wi,{"data-item-type":"button",ref:n,onMouseEnter:m,onMouseLeave:i.onMouseLeave,onClick:s,className:Eb({"--active":r&&!Co(e?.title)?.includes("Depth"),"--more":e.more,"--disabled":!r&&Co(e?.title)?.includes("Depth")}),children:[ho(e.icon,{}),e.more?ho(hc,{}):null]})}import{jsx as et}from"react/jsx-runtime";function Sb({item:e}){let t=Cb();return e==="divider"?et(Ki,{"data-item-type":"divider",children:et(_i,{})}):(e.show===void 0?!0:e.show(t))?et(op,{item:e}):null}function Rb(e){let t=e.querySelector("[data-item-type=button]"),o=e.querySelector("[data-item-type=divider]");if(!t||!o)throw new Error("Button or divider not found");return{toolbar:e.offsetWidth,button:t.offsetWidth,divider:o.offsetWidth}}function Lb(e,t,o){let r=0;for(let n of e)r+=n==="divider"?o:t;return r}var Bb=48;function rp(){let e=Mb(null),[t,o]=Pb(tp);return Ib(()=>{let r=wb(()=>{let i=e.current;if(!i)throw new Error("Toolbar not found");let a=Rb(i);for(let l=0;l<Ze.length-1;l++)if(Lb(Ze[l],a.button,a.divider)<a.toolbar-Bb){o(Ze[l]);return}o(Ze[Ze.length-1])},100,{trailing:!0}),n=setTimeout(r,0);return window.addEventListener("resize",r),()=>{clearTimeout(n),window.removeEventListener("resize",r)}},[]),et(Fi,{ref:e,children:et(Vi,{children:t.map((r,n)=>et(Sb,{item:r},typeof r=="string"?n:r.title))})})}import{jsx as Sr,jsxs as Fb}from"react/jsx-runtime";function np({attributes:e,Editable:t}){let o=Nb(null),r=Ub(),n=Ob(),i=Db(a=>{a.target===a.currentTarget&&(Hb.select(r,$b.end(r,[])),Ab.focus(r))},[r]);return Sr(Mi,{children:Fb(Hi,{ref:o,className:zb({"--focused":n}),style:{height:r.toolbar.height,minHeight:r.toolbar.minHeight,maxHeight:r.toolbar.maxHeight},onClick:i,children:[Sr(rp,{}),Sr(t,{as:$i,...e,style:{overflowY:"auto"}})]})})}var ip=y((e,t)=>(e.toolbar={height:t.toolbar?.height,minHeight:t.toolbar?.minHeight,maxHeight:t.toolbar?.maxHeight,showUploadButtons:t.toolbar?.showUploadButtons??!0},{name:"toolbar",editor:{},renderEditable:np,editableProps:{}}));import{Editor as Rr,Node as Vb,Path as Kb,Transforms as _b}from"slate";var ap=y(e=>(e.allowTrailingBlock=!0,{name:"trailing-block",editor:{normalizeNode:t=>{if(!Rr.isEditor(t[0]))return!1;let o=[e.children.length-1],r=Vb.child(e,e.children.length-1);return(Rr.hasBlocks(e,r)||Rr.isVoid(e,r))&&_b.insertNodes(e,{type:"paragraph",children:[{text:""}]},{at:Kb.next(o)}),!0}}}));import{Transforms as Wb}from"slate";function Gb(e,t){let o=ue(t),r=he(o);Wb.insertNodes(e,r)}function lp(e){return{pasteMarkdown:u(Gb,e)}}var sp=y(e=>(e.pasteMarkdown=lp(e),{name:"paste-markdown",editor:{},editableProps:{onPaste(t){let{types:o}=t.clipboardData;if(o.length!==1||o[0]!=="text/plain")return!1;let r=t.clipboardData.getData("text/plain");return e.pasteMarkdown.pasteMarkdown(r),Te(t),!0}}}));import{jsx as Qb}from"react/jsx-runtime";function qb(e){let t={...e.attributes,style:{...e.attributes.style,width:void 0,maxWidth:void 0}};return Qb("span",{...t,children:e.children})}var mp=y((e,t,{createPolicy:o})=>(e.placeholder={},o({name:"placeholder",editableProps:{renderPlaceholder:qb}})));var cp=[sp,rs,pa,us,tm,vs,pl,Nl,Fl,nc,Es,ap,Xs,ha,nm,Xl,lc,ip,sl,mp];var jb=Jn(cp),{withSink:pp,SinkEditable:dp}=jb;import{useState as Xb}from"react";import{createEditor as Yb,Editor as Jb,Transforms as Zb}from"slate";import{withHistory as eE}from"slate-history";import{withReact as tE}from"slate-react";function Lr({authToken:e,height:t,minHeight:o,maxHeight:r,disableRawMode:n,disableTaskList:i,disableCodeBlock:a,disableHighlight:l}={}){let[s]=Xb(()=>{let m=Yb(),c=pp(tE(eE(m)),{toolbar:{height:t,minHeight:o,maxHeight:r,showUploadButtons:!!e},image:{}});return c.convertElement.addConvertElementType("paragraph"),m.wysimark={disableRawMode:n??!0,disableTaskList:i,disableCodeBlock:a,disableHighlight:l??!0},m.getMarkdown=()=>it(m.children),m.setMarkdown=d=>{let p=ue(d),b=he(p);m.children=b,m.selection=null,Zb.select(m,Jb.start(m,[0]))},c});return s}import{jsx as te,jsxs as fp}from"react/jsx-runtime";function lE({children:e,attributes:t}){return te("span",{...t,children:e})}function hp({editor:e,value:t,onChange:o,throttleInMs:r=1e3,placeholder:n,className:i,style:a,onImageChange:l}){let[s,m]=up(!1),[c,d]=up(t),p=go(!1),b=go(void 0),g=go(void 0),v=go(null),C=yt(oE(()=>{let k=it(e.children);e.wysimark.prevValue={markdown:k,children:e.children},o(k)},r,{leading:!1,trailing:!0}),[e,o,r]),P=yt(()=>{g.current!==e.children&&(g.current=e.children,C())},[C]);if(!s){let k=v.current??t;if(v.current!==null&&(v.current=null),e.wysimark.prevValue==null||b.current==null){p.current=!0;let z=ue(k),ve=he(z);e.children=ve,g.current=b.current=ve,e.wysimark.prevValue={markdown:k,children:ve}}else if(k!==e.wysimark.prevValue.markdown){p.current=!0;let z=ue(k),ve=he(z);e.children=ve,e.selection=null,nE.select(e,rE.start(e,[0]))}}let w=yt(()=>{navigator.userAgent.toLowerCase().includes("firefox")&&iE.focus(e)},[e]),S=yt(()=>{C.flush()},[C]),M=k=>{let z=k.target.value;d(z),o(z)},N=yt(()=>{let k=e.getMarkdown();d(k)},[e]),T=()=>{s?(v.current=c,e.wysimark.prevValue=void 0,b.current=void 0,g.current=void 0):N(),m(!s)};e.wysimark.onImageChange=l,e.wysimark.onChange=o;let I=e.wysimark.disableRawMode;return fp("div",{style:{position:"relative"},children:[!I&&te("div",{style:{position:"absolute",top:"5px",right:"25px",zIndex:10},children:te("div",{onClick:T,style:{background:"none",border:s?"1px solid #4a90e2":"1px solid transparent",cursor:"pointer",padding:"6px",borderRadius:"4px",backgroundColor:s?"rgba(74, 144, 226, 0.1)":"transparent",boxShadow:s?"0 1px 3px rgba(0, 0, 0, 0.1)":"none",transition:"all 0.2s ease-in-out",display:"flex",alignItems:"center",justifyContent:"center"},title:s?f("switchToVisualEditor"):f("switchToRawMarkdown"),role:"button",tabIndex:0,onKeyDown:k=>{(k.key==="Enter"||k.key===" ")&&(T(),k.preventDefault())},children:fp("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[te("rect",{x:"3",y:"3",width:"18",height:"18",rx:"2",stroke:s?"#4a90e2":"currentColor",strokeWidth:"1.5",fill:s?"rgba(74, 144, 226, 0.05)":"transparent"}),te("path",{d:"M7 15V9L10 12L13 9V15",stroke:s?"#4a90e2":"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"}),te("path",{d:"M16 9H18V15",stroke:s?"#4a90e2":"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"}),te("path",{d:"M16 12H18",stroke:s?"#4a90e2":"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})]})})}),te("div",{style:{display:s?"block":"none",textAlign:"center"},children:te("textarea",{value:tt(c).replace(/ /g,""),onChange:M,placeholder:n,className:i,style:{width:"calc(100% - 60px)",margin:"0 auto",minHeight:"200px",padding:"20px",fontFamily:"monospace",fontSize:"14px",color:"#333",lineHeight:"1.5",backgroundColor:"#fff",border:"1px solid #ddd",borderRadius:"4px",...a}})}),te("div",{style:{display:s?"none":"block"},children:te(aE,{editor:e,initialValue:b.current,onChange:P,children:te(dp,{renderLeaf:lE,onMouseDown:w,onBlur:S,placeholder:n,className:i,style:a})})})]})}import{jsx as gp}from"react/jsx-runtime";function fE({standaloneOptions:{onChange:e,placeholder:t,className:o,...r},standaloneMethodsRef:n}){let[i,a]=dE(r.initialMarkdown||""),l=pE(i),s=Lr(r);l.current=i,cE(n,()=>({getMarkdown(){return l.current},setMarkdown(c){l.current=c,a(c)}}),[l,a]);let m=mE(c=>{l.current=c,a(c),e?.(c)},[s]);return gp(hp,{editor:s,value:i,className:o||"",onChange:m,placeholder:t})}function gA(e,t){let o=sE(),r=uE(e);return r.render(gp(fE,{standaloneMethodsRef:o,standaloneOptions:t})),{unmount(){try{r.unmount()}catch{}},getMarkdown(){return o.current?.getMarkdown()||""},setMarkdown(n){o.current?.setMarkdown(n)}}}export{hp as Editable,gA as createWysimark,Lr as useEditor};
|
|
1470
|
+
`;import{Fragment as bb,jsx as ee,jsxs as xt}from"react/jsx-runtime";var gb=mb("enter");function qc({dest:e,close:t}){let o=hb(),r=pb(null),[n,i]=Et({x:0,y:0}),a=uo((I,k)=>{i(z=>({x:z.x+I,y:z.y+k}))},[]),l=j({src:r,dest:e},({src:I,dest:k},z)=>Dt(I,z,{left:k.left-12,top:k.top+k.height},{margin:16})),s={...l,left:l.left+n.x,top:l.top+n.y},m=cb(()=>{let{selection:I}=o;return I&&!ub.isCollapsed(I)?db.string(o,I):""},[]),[c,d]=Et(""),[p,b]=Et(m),[g,v]=Et(m),[C,P]=Et(!1),w=()=>{let I=p.trim()||c,k=g.trim()||void 0;o.anchor.insertLink(c,I,{select:!0,title:k}),fb.focus(o),t()},S=uo(I=>{d(I.currentTarget.value)},[d]),M=uo(I=>{let k=I.currentTarget.value;b(k),C||v(k)},[b,v,C]),N=uo(I=>{v(I.currentTarget.value),P(!0)},[v]),T=I=>{gb(I)&&(I.preventDefault(),I.stopPropagation(),w())};return xt(bb,{children:[ee(be,{close:t}),xt(Ni,{ref:r,style:s,children:[ee(xe,{onDrag:a}),xt("div",{style:{padding:"0.75em"},children:[ee(Nt,{children:ee($t,{type:"text",value:c,autoFocus:!0,placeholder:f("linkUrl"),onChange:S,onKeyDown:T})}),ee(Nt,{style:{marginTop:"0.5em"},children:ee($t,{type:"text",value:p,placeholder:f("linkText"),onChange:M,onKeyDown:T})}),xt(Nt,{style:{marginTop:"0.5em"},children:[ee($t,{type:"text",value:g,placeholder:f("tooltipText"),onChange:N,onKeyDown:T}),xt(wr,{onClick:w,children:[ee(po,{}),ee(xc,{})]}),ee(wr,{onClick:t,style:{marginLeft:"0.25em",background:"var(--shade-400)"},children:ee(Hc,{})})]}),ee(Gc,{children:f("tooltipHint")})]})]})]})}var Ir=[{icon:po,title:f("insertLink"),more:!0,hotkey:"mod+k",Component:qc},{icon:Rc,title:f("insertImageFromUrl"),more:!0,Component:_c},{icon:Pc,title:f("insertTable"),more:!0,Component:gc},{icon:Oc,title:f("horizontalRule"),hotkey:"super+-",action:e=>e.horizontalRule.insertHorizontalRule()}],Qc=Ir,jc=Ir,Xc=[{icon:Lc,title:f("insert"),more:!0,children:Ir}];import{Editor as Eb}from"slate";function Je(e){let t=Eb.marks(e);return{bold:t?.bold||!1,italic:t?.italic||!1,strike:t?.strike||!1,code:t?.code||!1,underline:t?.underline||!1,highlight:t?.highlight||!1}}var Yc=[{icon:Er,title:f("bold"),hotkey:"mod+b",action:e=>e.marksPlugin.toggleBold(),active:e=>Je(e).bold},{icon:wc,title:f("italic"),hotkey:"mod+i",action:e=>e.marksPlugin.toggleItalic(),active:e=>Je(e).italic},{icon:Bc,title:f("strike"),hotkey:"super+k",action:e=>e.marksPlugin.toggleStrike(),active:e=>Je(e).strike},{icon:Cc,title:f("inlineCode"),hotkey:"mod+j",action:e=>e.inlineCode.toggleInlineCode(),active:e=>Je(e).code},{icon:zc,title:f("underline"),hotkey:"mod+u",action:e=>e.marksPlugin.toggleUnderline(),active:e=>Je(e).underline},{icon:Ac,title:f("highlight"),hotkey:"mod+h",action:e=>e.marksPlugin.toggleHighlight(),active:e=>Je(e).highlight,show:e=>!e.wysimark.disableHighlight}],Mr=Yc,Jc=[{icon:Er,title:f("format"),more:!0,children:Yc}];var Zc=[{icon:Mc,title:f("bulletList"),hotkey:"super+8",action:e=>e.list.convertUnorderedList(!0)},{icon:yr,title:f("numberedList"),hotkey:"super+7",action:e=>e.list.convertOrderedList(!0)},{icon:Dc,title:f("checkList"),hotkey:"super+9",action:e=>e.list.convertTaskList(!0),show:e=>!e.wysimark.disableTaskList}],Pr=[...Zc,"divider",...kr],ep=[{icon:yr,title:f("list"),more:!0,children:[...Zc,"divider",...kr]}];import{Editor as tp,Transforms as fo}from"slate";var op=[{icon:xr,title:f("quote"),hotkey:"super+.",action:e=>{e.blockQuotePlugin.isActive()?e.blockQuotePlugin.outdent():e.blockQuotePlugin.indent()},active:e=>e.blockQuotePlugin.isActive()},{icon:Ic,title:f("increaseQuoteDepth"),action:e=>e.blockQuotePlugin.increaseDepth(),active:e=>e.blockQuotePlugin.canIncreaseDepth()},{icon:Sc,title:f("codeBlock"),action:e=>{let{selection:t}=e,o=E(e,"code-block");if(o){let[,r]=o,n=tp.string(e,r);fo.removeNodes(e,{at:r}),fo.insertNodes(e,{type:"paragraph",children:[{text:n}]},{at:r});return}if(t&&JSON.stringify(t.anchor.path)!==JSON.stringify(t.focus.path)){e.codeBlock.createCodeBlock({language:"text"});return}if(t&&(t.anchor.offset!==t.focus.offset||JSON.stringify(t.anchor.path)!==JSON.stringify(t.focus.path))){let r=tp.string(e,t);fo.delete(e),fo.insertNodes(e,{type:"code-block",language:"text",children:[{type:"code-block-line",children:[{text:r}]}]});return}e.codeBlock.createCodeBlock({language:"text"})},active:e=>!!E(e,"code-block"),show:e=>!e.wysimark.disableCodeBlock}],Cr=op,rp=[{icon:xr,title:f("quote"),more:!0,children:op}];var xb=[...Fc,"divider",...Pr,"divider",...Mr,"divider",...Qc,"divider",...Cr],yb=[...vr,"divider",...Pr,"divider",...Mr,"divider",...jc,"divider",...Cr],np=[...vr,"divider",...ep,"divider",...Jc,"divider",...Xc,"divider",...rp],ip=np;var Ze=[xb,yb,np];import{clsx as kb}from"clsx";import{useCallback as Sr,useRef as vb}from"react";import{ReactEditor as Tb,useSlate as wb,useSlateStatic as Ib}from"slate-react";import{jsx as ho,jsxs as Mb}from"react/jsx-runtime";function ap({item:e}){let t=Ib(),o=wb(),r=e.active?e.active(o):!1,n=vb(null),i=Y({title:e.title,hotkey:()=>e.hotkey?Bt(e.hotkey):void 0}),a=H("menu"),l=Sr(()=>{let c=n.current,d=e.children,p=e.Component;c&&(d?a.open(()=>ho(He,{dest:c,items:d,close:a.close})):p&&a.open(()=>ho(p,{dest:c,close:a.close})))},[e]),s=Sr(()=>{if(e.action){e.action(t),Tb.focus(t);return}a.layer?a.close():l()},[a.layer,e]),m=Sr(c=>{i.onMouseEnter(c),a.layer&&l()},[a.layer]);return Mb(qi,{"data-item-type":"button",ref:n,onMouseEnter:m,onMouseLeave:i.onMouseLeave,onClick:s,className:kb({"--active":r&&!Co(e?.title)?.includes("Depth"),"--more":e.more,"--disabled":!r&&Co(e?.title)?.includes("Depth")}),children:[ho(e.icon,{}),e.more?ho(Ec,{}):null]})}import{jsx as et}from"react/jsx-runtime";function Bb({item:e}){let t=Lb();return e==="divider"?et(Wi,{"data-item-type":"divider",children:et(Gi,{})}):(e.show===void 0?!0:e.show(t))?et(ap,{item:e}):null}function zb(e){let t=e.querySelector("[data-item-type=button]"),o=e.querySelector("[data-item-type=divider]");if(!t||!o)throw new Error("Button or divider not found");return{toolbar:e.offsetWidth,button:t.offsetWidth,divider:o.offsetWidth}}function Db(e,t,o){let r=0;for(let n of e)r+=n==="divider"?o:t;return r}var Nb=48;function lp(){let e=Sb(null),[t,o]=Rb(ip);return Cb(()=>{let r=Pb(()=>{let i=e.current;if(!i)throw new Error("Toolbar not found");let a=zb(i);for(let l=0;l<Ze.length-1;l++)if(Db(Ze[l],a.button,a.divider)<a.toolbar-Nb){o(Ze[l]);return}o(Ze[Ze.length-1])},100,{trailing:!0}),n=setTimeout(r,0);return window.addEventListener("resize",r),()=>{clearTimeout(n),window.removeEventListener("resize",r)}},[]),et(Ki,{ref:e,children:et(_i,{children:t.map((r,n)=>et(Bb,{item:r},typeof r=="string"?n:r.title))})})}import{jsx as Rr,jsxs as _b}from"react/jsx-runtime";function sp({attributes:e,Editable:t}){let o=Ab(null),r=Kb(),n=Vb(),i=Hb(a=>{a.target===a.currentTarget&&(Ub.select(r,Ob.end(r,[])),Fb.focus(r))},[r]);return Rr(Ci,{children:_b(Oi,{ref:o,className:$b({"--focused":n}),style:{height:r.toolbar.height,minHeight:r.toolbar.minHeight,maxHeight:r.toolbar.maxHeight},onClick:i,children:[Rr(lp,{}),Rr(t,{as:Ai,...e,style:{overflowY:"auto"}})]})})}var mp=y((e,t)=>(e.toolbar={height:t.toolbar?.height,minHeight:t.toolbar?.minHeight,maxHeight:t.toolbar?.maxHeight,showUploadButtons:t.toolbar?.showUploadButtons??!0},{name:"toolbar",editor:{},renderEditable:sp,editableProps:{}}));import{Editor as Lr,Node as Wb,Path as Gb,Transforms as qb}from"slate";var cp=y(e=>(e.allowTrailingBlock=!0,{name:"trailing-block",editor:{normalizeNode:t=>{if(!Lr.isEditor(t[0]))return!1;let o=[e.children.length-1],r=Wb.child(e,e.children.length-1);return(Lr.hasBlocks(e,r)||Lr.isVoid(e,r))&&qb.insertNodes(e,{type:"paragraph",children:[{text:""}]},{at:Gb.next(o)}),!0}}}));import{Transforms as Qb}from"slate";function jb(e,t){let o=ue(t),r=he(o);Qb.insertNodes(e,r)}function pp(e){return{pasteMarkdown:u(jb,e)}}var dp=y(e=>(e.pasteMarkdown=pp(e),{name:"paste-markdown",editor:{},editableProps:{onPaste(t){let{types:o}=t.clipboardData;if(o.length!==1||o[0]!=="text/plain")return!1;let r=t.clipboardData.getData("text/plain");return e.pasteMarkdown.pasteMarkdown(r),Te(t),!0}}}));import{jsx as Yb}from"react/jsx-runtime";function Xb(e){let t={...e.attributes,style:{...e.attributes.style,width:void 0,maxWidth:void 0}};return Yb("span",{...t,children:e.children})}var up=y((e,t,{createPolicy:o})=>(e.placeholder={},o({name:"placeholder",editableProps:{renderPlaceholder:Xb}})));var fp=[dp,is,ua,hs,nm,Is,ul,Hl,Kl,lc,ks,cp,Zs,ba,lm,Jl,cc,mp,cl,up];var Jb=Zn(fp),{withSink:hp,SinkEditable:gp}=Jb;import{useState as Zb}from"react";import{createEditor as eE,Editor as tE,Transforms as oE}from"slate";import{withHistory as rE}from"slate-history";import{withReact as nE}from"slate-react";function Br({authToken:e,height:t,minHeight:o,maxHeight:r,disableRawMode:n,disableTaskList:i,disableCodeBlock:a,disableHighlight:l}={}){let[s]=Zb(()=>{let m=eE(),c=hp(nE(rE(m)),{toolbar:{height:t,minHeight:o,maxHeight:r,showUploadButtons:!!e},image:{}});return c.convertElement.addConvertElementType("paragraph"),m.wysimark={disableRawMode:n??!0,disableTaskList:i,disableCodeBlock:a,disableHighlight:l??!0},m.getMarkdown=()=>it(m.children),m.setMarkdown=d=>{let p=ue(d),b=he(p);m.children=b,m.selection=null,oE.select(m,tE.start(m,[0]))},c});return s}import{jsx as te,jsxs as Ep}from"react/jsx-runtime";function cE({children:e,attributes:t}){return te("span",{...t,children:e})}function xp({editor:e,value:t,onChange:o,throttleInMs:r=1e3,placeholder:n,className:i,style:a,onImageChange:l}){let[s,m]=bp(!1),[c,d]=bp(t),p=go(!1),b=go(void 0),g=go(void 0),v=go(null),C=yt(iE(()=>{let k=it(e.children);e.wysimark.prevValue={markdown:k,children:e.children},o(k)},r,{leading:!1,trailing:!0}),[e,o,r]),P=yt(()=>{g.current!==e.children&&(g.current=e.children,C())},[C]);if(!s){let k=v.current??t;if(v.current!==null&&(v.current=null),e.wysimark.prevValue==null||b.current==null){p.current=!0;let z=ue(k),ve=he(z);e.children=ve,g.current=b.current=ve,e.wysimark.prevValue={markdown:k,children:ve}}else if(k!==e.wysimark.prevValue.markdown){p.current=!0;let z=ue(k),ve=he(z);e.children=ve,e.selection=null,lE.select(e,aE.start(e,[0]))}}let w=yt(()=>{navigator.userAgent.toLowerCase().includes("firefox")&&sE.focus(e)},[e]),S=yt(()=>{C.flush()},[C]),M=k=>{let z=k.target.value;d(z),o(z)},N=yt(()=>{let k=e.getMarkdown();d(k)},[e]),T=()=>{s?(v.current=c,e.wysimark.prevValue=void 0,b.current=void 0,g.current=void 0):N(),m(!s)};e.wysimark.onImageChange=l,e.wysimark.onChange=o;let I=e.wysimark.disableRawMode;return Ep("div",{style:{position:"relative"},children:[!I&&te("div",{style:{position:"absolute",top:"5px",right:"25px",zIndex:10},children:te("div",{onClick:T,style:{background:"none",border:s?"1px solid #4a90e2":"1px solid transparent",cursor:"pointer",padding:"6px",borderRadius:"4px",backgroundColor:s?"rgba(74, 144, 226, 0.1)":"transparent",boxShadow:s?"0 1px 3px rgba(0, 0, 0, 0.1)":"none",transition:"all 0.2s ease-in-out",display:"flex",alignItems:"center",justifyContent:"center"},title:s?f("switchToVisualEditor"):f("switchToRawMarkdown"),role:"button",tabIndex:0,onKeyDown:k=>{(k.key==="Enter"||k.key===" ")&&(T(),k.preventDefault())},children:Ep("svg",{width:"18",height:"18",viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",children:[te("rect",{x:"3",y:"3",width:"18",height:"18",rx:"2",stroke:s?"#4a90e2":"currentColor",strokeWidth:"1.5",fill:s?"rgba(74, 144, 226, 0.05)":"transparent"}),te("path",{d:"M7 15V9L10 12L13 9V15",stroke:s?"#4a90e2":"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"}),te("path",{d:"M16 9H18V15",stroke:s?"#4a90e2":"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"}),te("path",{d:"M16 12H18",stroke:s?"#4a90e2":"currentColor",strokeWidth:"1.5",strokeLinecap:"round",strokeLinejoin:"round"})]})})}),te("div",{style:{display:s?"block":"none",textAlign:"center"},children:te("textarea",{value:tt(c).replace(/ /g,""),onChange:M,placeholder:n,className:i,style:{width:"calc(100% - 60px)",margin:"0 auto",minHeight:"200px",padding:"20px",fontFamily:"monospace",fontSize:"14px",color:"#333",lineHeight:"1.5",backgroundColor:"#fff",border:"1px solid #ddd",borderRadius:"4px",...a}})}),te("div",{style:{display:s?"none":"block"},children:te(mE,{editor:e,initialValue:b.current,onChange:P,children:te(gp,{renderLeaf:cE,onMouseDown:w,onBlur:S,placeholder:n,className:i,style:a})})})]})}import{jsx as yp}from"react/jsx-runtime";function bE({standaloneOptions:{onChange:e,placeholder:t,className:o,...r},standaloneMethodsRef:n}){let[i,a]=hE(r.initialMarkdown||""),l=fE(i),s=Br(r);l.current=i,uE(n,()=>({getMarkdown(){return l.current},setMarkdown(c){l.current=c,a(c)}}),[l,a]);let m=dE(c=>{l.current=c,a(c),e?.(c)},[s]);return yp(xp,{editor:s,value:i,className:o||"",onChange:m,placeholder:t})}function yA(e,t){let o=pE(),r=gE(e);return r.render(yp(bE,{standaloneMethodsRef:o,standaloneOptions:t})),{unmount(){try{r.unmount()}catch{}},getMarkdown(){return o.current?.getMarkdown()||""},setMarkdown(n){o.current?.setMarkdown(n)}}}export{xp as Editable,yA as createWysimark,Br as useEditor};
|