| 974 | }`};this.cache.set(t.path,n),this.middleware.updateFileCache(t.path,this.cache.get(t.path),r)}cacheTypes(t){return["svg"]}contentTypes(t){return["svg"]}async newFile(t,r,n,i){let a=r.includes(".")?r:`${r}.${n}`,o=t?`${t}/${a}`:a;t&&!await this.middleware.fileExists(t)&&await this.middleware.createFolder(t);let s=typeof i=="string"?i:i instanceof ArrayBuffer?new TextDecoder().decode(i):i?.toString()||"";return await this.middleware.writeTextToFile(o,s),await this.middleware.getFile(o)}async readContent(t,r,n){if(r=="svg")return this.cache.get(t.path).svg}};var i$e=e=>e?{scheme:"obsidian",schema:{id:e.id,name:e.name,type:"command"},path:"obsidian://"+e.id,fields:[],code:e.callback,codeType:"closure"}:null,NG=class{constructor(t){this.plugin=t;this.scheme="obsidian";this.allCommands=()=>Object.values(this.plugin.app.commands.commands).map(t=>i$e(t));this.commandForAction=t=>{if(!t)return null;let r=Ds(t);return i$e(this.plugin.app.commands.commands[r.authority])};this.runCommand=async(t,r)=>{if(!t)return;let i=Ds(t).authority;this.plugin.app.commands.commands[i]?.callback?this.plugin.app.commands.commands[i].callback():this.plugin.app.commands.commands[i].checkCallback&&this.plugin.app.commands.commands[i].checkCallback(!1)}}};var wMt=[{id:"filter",icon:"lucide//filter",description:N.descriptions.onlyContinueIfAConditionIsMet,name:N.descriptions.filter,fields:[]},{id:"formula",icon:"lucide//sigma",description:N.descriptions.useAFormulaToCalculateAResult,name:N.descriptions.formula,fields:[]}],zD=class{constructor(t){this.terminals=[];this.terminalForURI=t=>t?t.scheme==null||t.scheme=="vault"?this.mainTerminal:this.terminals.find(r=>r.scheme==t.scheme):null;this.commandForAction=t=>{if(!t)return null;let r=Ds(t);return r.scheme=="builtin"?this.builtinCommands.find(n=>n.schema.id==r.authority):this.terminalForURI(r)?.commandForAction(t)};this.runCommand=(t,r)=>{if(!t)return;let n=Ds(t);return n.scheme=="builtin"?void 0:this.terminalForURI(n)?.runCommand(t,r)};this.terminals=[t],t.manager=this,this.mainTerminal=t,this.builtinCommands=wMt.map(r=>({schema:{id:r.id,name:r.name,def:{icon:r.icon,description:r.description},type:"builtin"},fields:r.fields}))}static create(t){return new zD(t)}allCommands(){return[...this.builtinCommands.map(t=>({scheme:"builtin",path:"builtin://"+t.schema.id,...t})),...this.terminals.flatMap(t=>t.allCommands())]}};var f$e=ge(Me());var a$e=[{id:"label.sticker",label:N.metadataTypes.sticker,field:"sticker",vType:"text",defaultFilter:"isEmpty",type:"label",description:"Sticker label for the item"},{id:"label.color",label:N.metadataTypes.color,field:"color",vType:"color",defaultFilter:"equals",type:"label",description:"Color label for the item"}],o$e=[{id:"file.name",label:N.metadataTypes.fileName,field:"name",vType:"text",defaultFilter:"contains",type:"file",description:"Name for a space or note"},{id:"file.path",label:N.metadataTypes.path,field:"path",vType:"link",defaultFilter:"contains",type:"file",description:"Path for a space or note"},{id:"file.isFolder",label:N.metadataTypes.isFolder,field:"isFolder",vType:"boolean",defaultFilter:"isTrue",type:"file",description:"Is the item a folder"},{id:"file.parent",label:N.metadataTypes.folder,field:"parent",vType:"space",defaultFilter:"contains",type:"file",description:"Folder the note or space is in"},{id:"file.ctime",label:N.metadataTypes.created,field:"ctime",vType:"date",defaultFilter:"isSameDate",type:"file",description:"Creation date for the note or space"},{id:"file.mtime",label:N.metadataTypes.lastModified,field:"mtime",vType:"date",defaultFilter:"isSameDate",type:"file",description:"Last modified date for the note or space"},{id:"file.extension",label:N.metadataTypes.extension,field:"extension",vType:"text",defaultFilter:"is",type:"file",description:"File extension"},{id:"file.size",label:N.metadataTypes.size,field:"size",vType:"number",defaultFilter:"lessThan",type:"file",description:"File size"}],s$e=[{id:"path.tags",label:N.metadataTypes.tags,field:"tags",vType:"tags-multi",defaultFilter:"contains",type:"path",description:"Tags for the note or space"},{id:"path.inlinks",label:N.metadataTypes.inlinks,field:"inlinks",vType:"link-multi",defaultFilter:"contains",type:"path",description:"Links to the note or space"},{id:"path.outlinks",label:N.metadataTypes.outlinks,field:"outlinks",vType:"link-multi",defaultFilter:"contains",type:"path",description:"Links from the note or space"}];var MG=e=>({file:{name:N.metadataTypes.fileMetadata,properties:o$e},path:{name:N.metadataTypes.outlinks,properties:s$e},label:{name:N.metadataTypes.label,properties:a$e},frontmatter:{name:N.metadataTypes.frontmatter,properties:e.spaceManager.keysForCacheType("frontmatter").map(t=>({id:"frontmatter."+t,label:t,field:t,vType:"any",defaultFilter:"contains",type:"frontmatter",description:"Frontmatter property"}))},context:{name:N.metadataTypes.contexts,properties:[...e.contextsIndex.values()].flatMap(t=>t?.contextTable?.cols.filter(r=>r.primary!="true").map(r=>({id:"contexts."+t.path+"."+r.name,label:r.name,field:t.path+"."+r.name,vType:Ns(r),defaultFilter:"contains",type:"context",description:t.path+" context property"})))}});var l$e=ge(On());var Wr=ge(Me()),u$e=ge(jo());var c$e=e=>{let[t,r]=(0,Wr.useState)(null),[n,i]=(0,Wr.useState)(!1),[a,o]=(0,Wr.useState)(!1),[s,l]=(0,Wr.useState)(""),[u,c]=(0,Wr.useState)(0),f=M=>{l(M)},[d,p]=(0,Wr.useState)([]),h=(0,Wr.useMemo)(()=>s.length>0?[{type:"any",trueFalse:!0,filters:[{type:"file",fType:"text",field:"name",fn:"include",value:s}]},...d]:d,[s,d]),m=M=>({type:"path",value:M.path,cache:M,sticker:M.label.sticker,description:M.label.preview,label:M.name}),v=e.parentSpace?[{type:"section",label:N.labels.blink.items},...[...e.superstate.spacesMap.getInverse(e.parentSpace)].map(M=>e.superstate.pathsIndex.get(M)).filter(M=>M&&!M.hidden).map(M=>m(M))]:[],A=[{type:"section",label:N.labels.blink.recent},...e.superstate.ui.navigationHistory().map(M=>e.superstate.pathsIndex.get(M)).filter(M=>M&&!M.hidden).filter(M=>e.mode!=3||e.superstate.spacesIndex.has(M.path)).map(M=>m(M))],[x,g]=(0,Wr.useState)(e.parentSpace?v:A);(0,Wr.useEffect)(()=>{let M=(E,O)=>{if(E.length==0&&s.length==0){g(e.parentSpace?v:A);return}let P=[{type:"section",label:N.labels.blink.createNew}];if(e.mode!=3&&P.push({type:"new-note",sticker:"ui//edit",value:s,label:N.labels.blink.newNote}),P.push({type:"new-space",sticker:"ui//folder-plus",value:s,label:N.labels.blink.newSpace}),d.length==0){e.superstate.search(E,s).then(_=>g([{type:"section",label:N.labels.blink.results},..._.map(B=>m(B)),...P]));return}e.superstate.search(E,null,O).then(_=>g(_.map(B=>m(B))))};(0,l$e.debounce)(()=>M(s,h),300)()},[s,h]),(0,Wr.useEffect)(()=>{if(!x[u]||x[u].type!="path")return;let M=x[u]?.cache?.path;!M||M==t||r(x[u]?.cache?.path)},[u,x]);let w=(M,E)=>{if(!!M&&M.type!="section"){if(M.type=="new-note"){if(e.parentSpace){let O=e.superstate.spacesIndex.get(e.parentSpace);if(O){Xa(e.superstate,O,"md",s,!!e.onSelect).then(P=>{(e.mode==2||e.mode==4)&&e.onSelect&&e.onSelect(P),e.hide()});return}}P0(e.superstate,e.superstate.pathsIndex.get(e.superstate.ui.activePath)).then(O=>Xa(e.superstate,O,"md",s).then(P=>{e.mode==2&&e.onSelect&&e.onSelect(P),e.hide()}));return}if(M.type=="new-space"){let O=e.superstate.pathsIndex.get(e.parentSpace)??e.superstate.pathsIndex.get("/"),P=s.replace(/\//g,""),_=O?.subtype=="folder"?O.path:O.parent?O.parent:"/",B=!_||_=="/"?P:_+"/"+P;if(P.length==0){e.superstate.ui.notify(N.notice.newSpaceName);return}if(e.superstate.spacesIndex.has(B)){e.superstate.ui.notify(N.notice.duplicateSpaceName);return}Uf(e.superstate,B,{}).then(F=>{(e.mode==2||3)&&e.onSelect&&e.onSelect(F.path),e.hide()});return}if(M.cache){if(e.mode==2||e.mode==3){e.onSelect&&e.onSelect(M.cache?.path),e.hide();return}if(!n||E){e.superstate.ui.openPath(M.cache?.path),e.hide();return}}c(x.findIndex(O=>O.cache?.path==M.cache?.path))}},b=[],y=M=>{if(M.key=="Tab"&&b&&(M.preventDefault(),M.stopPropagation()),M.key=="ArrowUp"){let O=u<=0?x.length-1:u-1;if(x.length==0)return;!x[O]||x[O].type=="section"?c(O<0?x.length-1:O-1):c(O),M.preventDefault()}if(M.key=="ArrowDown"){let E=x.length-1,O=u>=E?0:u+1;!x[O]||x[O].type=="section"?c(O>=E?0:O+1):c(O),c(O),M.preventDefault()}M.key=="Enter"&&(w(x[u],!0),M.preventDefault())},S=Wr.default.useRef(null);(0,Wr.useEffect)(()=>{S.current?.focus()},[S.current]);let T=MG(e.superstate),D=[];Object.keys(T).forEach(M=>{T[M].properties.forEach(E=>{D.push({...E})})});let k=Object.keys(T).map(M=>({name:T[M].name,value:M}));return Wr.default.createElement(Wr.default.Fragment,null,Wr.default.createElement("div",{className:"mk-blink-input-container"},Wr.default.createElement("div",{className:"mk-icon-small",dangerouslySetInnerHTML:{__html:e.superstate.ui.getSticker("ui//search")}}),Wr.default.createElement("div",{"data-placeholder":N.labels.blinkPlaceholder,onInput:M=>f(M.currentTarget.innerText),onKeyDown:M=>y(M),ref:S,contentEditable:!0,className:"mk-blink-input"}),e.mode==1&&Wr.default.createElement(Wr.default.Fragment,null,Wr.default.createElement("button",{onClick:()=>i(M=>!M),className:"mk-toolbar-button",dangerouslySetInnerHTML:{__html:e.superstate.ui.getSticker("ui//blink")}}),Wr.default.createElement("button",{className:"mk-toolbar-button",dangerouslySetInnerHTML:{__html:e.superstate.ui.getSticker("ui//filter")},onClick:()=>o(!a)}))),a&&Wr.default.createElement("div",{className:"mk-blink-filters"},Wr.default.createElement("div",{className:"mk-icon-xsmall",dangerouslySetInnerHTML:{__html:e.superstate.ui.getSticker("ui//filter")}}),Wr.default.createElement(Cy,{superstate:e.superstate,filters:d,setFilters:p,fields:D,sections:k})),Wr.default.createElement("div",{className:"mk-blink-suggester",style:{}},Wr.default.createElement("div",{className:"mk-blink-suggestions"},x.map((M,E)=>Wr.default.createElement("div",{key:E,className:(0,u$e.default)(M.type=="section"?"mk-blink-section":"mk-blink-suggestion",u==E&&"mk-active"),onClick:O=>w(M)},M.type=="section"?Wr.default.createElement("div",{className:"mk-blink-suggestion-title"},M.label):Wr.default.createElement(Wr.default.Fragment,null,Wr.default.createElement("div",{className:"mk-blink-suggestion-icon",dangerouslySetInnerHTML:{__html:e.superstate.ui.getSticker(M.sticker)}}),Wr.default.createElement("div",{className:"mk-blink-suggestion-text"},Wr.default.createElement("div",{className:"mk-blink-suggestion-title"},M.label),Wr.default.createElement("div",{className:"mk-blink-suggestion-description"},M.value),M.description&&Wr.default.createElement("div",{className:"mk-blink-suggestion-preview"},M.description)))))),e.mode==1&&n&&Wr.default.createElement(SMt,{superstate:e.superstate,path:t})))},SMt=e=>{let t=Wr.default.useRef(null),[r,n]=(0,Wr.useState)(!1);return Wr.default.createElement("div",{className:"mk-blink-preview",ref:t},Wr.default.createElement("div",{className:"mk-blink-preview-title"},Wr.default.createElement(bo,{superstate:e.superstate,path:e.path}),Wr.default.createElement("span",null),Wr.default.createElement("button",{className:r?"is-active mk-icon-small":"mk-icon-small",dangerouslySetInnerHTML:{__html:e.superstate.ui.getSticker("ui//list")},onClick:()=>n(!r)})),Wr.default.createElement(wH,{id:"blink",superstate:e.superstate,path:e.path,containerRef:t,styles:{},readOnly:!0}),r&&Wr.default.createElement("div",{className:"mk-blink-properties"},Wr.default.createElement("div",{className:"mk-blink-properties-header"},N.labels.properties),Wr.default.createElement(_a,{path:e.path,superstate:e.superstate,readMode:!1})))};var d$e=(e,t,r,n,i)=>{e.ui.openPalette(f$e.default.createElement(c$e,{superstate:e,mode:t,onSelect:n,parentSpace:i}),r,"mk-blink-modal")};var h$e=require("obsidian"),g$e=ge(m$e()),OG=class{constructor(t){this.plugin=t;this.cacheDirectory=".makemd/thumbnails";this.supportedFileTypes=["png","jpg","jpeg","webp","gif","avif"];this.id="images.make.md";this.plugin=t,this.picaInstance=(0,g$e.default)()}initiate(t){this.middleware=t,this.cache=new Map}async generateThumbnail(t,r,n=256){if(!await this.middleware.readBinaryToFile(t.path))return!1;let a=new Image;if(a.src=this.middleware.resourcePathForPath(t.path),!await new Promise((p,h)=>{a.onload=()=>p(!0),a.onerror=()=>p(!1)}))return!1;let s=document.createElement("canvas");s.width=a.width,s.height=a.height;let l=Math.max(n/a.width,n/a.height);s.getContext("2d").drawImage(a,0,0);let c=document.createElement("canvas");c.width=l*s.width,c.height=l*s.height,await this.picaInstance.resize(s,c);let d=await(await this.picaInstance.toBlob(c,"image/jpeg",.8)).arrayBuffer();return await this.middleware.fileExists(this.cacheDirectory)||await this.middleware.createFolder(this.cacheDirectory),await this.middleware.writeBinaryToFile(r,d),!0}async parseCache(t,r){if(!t)return;let n=`${this.cacheDirectory}/${d4(t.path)}.${t.extension}`,i=t.path;this.plugin.superstate.settings.imageThumbnails&&(await this.middleware.fileExists(n)?i=n:h$e.Platform.isMobile||await this.generateThumbnail(t,n)&&(i=n));let a=this.middleware.getFileCache(t.path)?.label,o={subtype:"image",label:{name:t.name,sticker:a?.sticker.length>0?a.sticker:"ui//mk-make-image",color:a?.color,thumbnail:i,cover:i},preview:{thumbnail:i}};this.cache.set(t.path,o),this.middleware.updateFileCache(t.path,this.cache.get(t.path),r)}cacheTypes(t){return[]}contentTypes(t){return[]}};var A$e=require("obsidian"),v$e=ge(Me());var FG=e=>{let t=e.superstate,r=[...e.obsidianAdapter.fileNameWarnings],n=`The following files have issues with their names. Would you like to fix them? |
| 976 | `)}`;t.ui.openModal("Path Fixer",v$e.default.createElement(B0,{message:n,confirmLabel:"Rename",confirmAction:async()=>{for(let i of r){let a=Li(e.app,i),o=a instanceof A$e.TFile?a?.basename:a.name;if(!a)return;await X3(e.superstate,i,e.superstate.pathsIndex.get(i)?.metadata?.property?.aliases,o),await CRe(e,a,Q1(o))}e.obsidianAdapter.fileNameWarnings=new Set}}),window)};var Fle=ge(On());var jG=class{constructor(t){this.plugin=t;this.supportedFileTypes=["json","mkit"];this.id="json.make.md";this.plugin=t,this.cache=new Map}initiate(t){this.middleware=t}async parseCache(t,r){if(!t)return;let n=or(await this.middleware.readTextFromFile(t.path))??{},i=n.label??{},a=n.property??{},o=(0,Fle.omit)(n,["label","property"]),s={property:a,definition:o,label:{name:t.name,sticker:i?.sticker?.length>0?i.sticker:"ui//json",color:i?.color,preview:"",thumbnail:""}};if(t.parent.split("/").pop()==this.plugin.superstate.settings.spaceSubFolder&&t.path.split("/").pop()=="def.json"){let l=await this.middleware.getFile(t.parent),u=l.parent=="/"?this.plugin.superstate.settings.systemName:l.parent.split("/").pop(),c=await this.readContent(t,"label",null);s.label={...c,name:u}}this.cache.set(t.path,s),this.middleware.updateFileCache(t.path,s,r)}contentTypes(t){return["property","label","definition"]}async newFile(t,r,n,i){let a=t=="/"?r+".json":`${t}/${r}.json`;return await this.middleware.fileExists(t)||await this.middleware.createFolder(t),await this.middleware.writeTextToFile(a,i??""),this.middleware.getFile(a)}async readContent(t,r,n){if(r=="definition"){let i=await this.middleware.readTextFromFile(t.path);return(0,Fle.omit)(or(i)??{},["label","property"])}if(r=="property"){let i=await this.middleware.readTextFromFile(t.path);return or(i)?.property??{}}if(r=="label"){let i=await this.middleware.readTextFromFile(t.path),a=or(i)?.label??{},o=fa("sticker",a[this.plugin.superstate.settings.fmKeySticker]),s=fa("color",a[this.plugin.superstate.settings.fmKeyColor]),l=fa("aliases",a[this.plugin.superstate.settings.fmKeyAlias])[0],u={};return o?.length>0&&(u.sticker=o),s?.length>0&&(u.color=s),l?.length>0&&(u.name=l),u}return null}async saveContent(t,r,n,i){if(r=="label"){let a=await this.readContent(t,"label",n);n=="sticker"?a[this.plugin.superstate.settings.fmKeySticker]=i(a):n=="color"?a[this.plugin.superstate.settings.fmKeyColor]=i(a):n=="name"&&(a[this.plugin.superstate.settings.fmKeyAlias]=[i(a)]);let o=or(await this.middleware.readTextFromFile(t.path))??{};await this.middleware.writeTextToFile(t.path,JSON.stringify({...o,label:a})),this.parseCache(t,!0)}if(r=="definition"){let a=await this.readContent(t,r,n),o=i(a),s=or(await this.middleware.readTextFromFile(t.path))??{};await this.middleware.writeTextToFile(t.path,JSON.stringify({...s,...o})),this.parseCache(t,!0)}if(r=="property"){let a=await this.readContent(t,r,n),o=i(a),s=or(await this.middleware.readTextFromFile(t.path))?.property??{};await this.middleware.writeTextToFile(t.path,JSON.stringify({...s,property:o})),this.parseCache(t,!0)}return!0}async deleteContent(t,r,n){if(r=="property"){let i=await this.readContent(t,r,n);delete i[n];let a=or(await this.middleware.readTextFromFile(t.path))??{};await this.middleware.writeTextToFile(t.path,JSON.stringify({...a,property:i})),this.parseCache(t,!0)}}};var y$e=require("obsidian"),UD=ge(Me());var _G="mk-space-fragment";var PG=class extends y$e.ItemView{constructor(r,n){super(r);this.navigation=!0;this.plugin=n}getViewType(){return _G}getDisplayText(){return this.path}async onClose(){this.destroy()}onunload(){this.destroy()}destroy(){this.root&&this.root.unmount()}async onOpen(){this.destroy()}async setState(r,n){this.path=r.path,this.source=r.source,this.flow=r.flow,this.constructInlineContext(),await super.setState(r,n);let i=ex(this.path,this.plugin.superstate);this.leaf.tabHeaderInnerTitleEl.innerText=i,this.leaf.view.titleEl=i;let a=this.leaf.view.headerEl;a&&(a.querySelector(".view-header-title").innerText=i)}getState(){let r=super.getState();return r.path=this.path,r.source=this.source,r.flow=this.flow,r}constructInlineContext(){this.destroy(),this.root=this.plugin.ui.createRoot(this.contentEl),this.root?this.flow?this.root.render(UD.default.createElement(gl,{superstate:this.plugin.superstate},UD.default.createElement(mA,{id:this.path,superstate:this.plugin.superstate,path:this.path,source:this.source,showTitle:!0}))):this.root.render(UD.default.createElement(gl,{superstate:this.plugin.superstate},UD.default.createElement(Moe,{superstate:this.plugin.superstate,path:this.path},UD.default.createElement(mA,{id:this.path,superstate:this.plugin.superstate,path:this.path,source:this.source})))):this.plugin.ui.manager.eventsDispatch.addOnceListener("windowReady",()=>{this.constructInlineContext()})}};var Q2=require("@codemirror/state"),Dv=require("@codemirror/view");var qh=e=>{let t;return e.app.workspace.iterateLeaves(r=>{let n=r.view.editor?.cm;if(n?.hasFocus)return t=n,!0},e.app.workspace.rootSplit),t},y4=e=>{let t;return e.app.workspace.iterateLeaves(r=>{if(r.view.editor?.cm?.hasFocus)return t=r.view,!0},e.app.workspace.rootSplit),t};function b$e(e,t,r){yu(t).iterate({...r,from:e,to:e})}function b4(e,t,r){yu(t).iterate({...r,from:e.from,to:e.to})}var $h=require("@codemirror/state"),PA=require("@codemirror/view"),EMt=typeof navigator<"u"&&!/Edge\/(\d+)/.exec(navigator.userAgent)&&/Apple Computer/.test(navigator.vendor)&&(/Mobile\/\w+/.test(navigator.userAgent)||navigator.maxTouchPoints>2),jle="-10000px";var BG=class{constructor(t,r,n){this.facet=r;this.createTooltipView=n;this.input=t.state.facet(r),this.tooltips=this.input.filter(i=>i),this.tooltipViews=this.tooltips.map(n)}update(t){if(t.focusChanged&&!t.view.hasFocus){let a=t.state.facet(this.facet);for(let o of this.tooltipViews)o.dom.remove();return this.input=a,this.tooltips=[],this.tooltipViews=[],!0}let r=t.state.facet(this.facet),n=r.filter(a=>a);if(r===this.input){for(let a of this.tooltipViews)a.update&&a.update(t);return!1}let i=[];for(let a=0;a<n.length;a++){let o=n[a],s=-1;if(!!o){for(let l=0;l<this.tooltips.length;l++){let u=this.tooltips[l];u&&u.create==o.create&&(s=l)}if(s<0)i[a]=this.createTooltipView(o);else{let l=i[a]=this.tooltipViews[s];l.update&&l.update(t)}}}for(let a of this.tooltipViews)i.indexOf(a)<0&&a.dom.remove();return this.input=r,this.tooltips=n,this.tooltipViews=i,!0}};function w$e(e={}){return IG.of(e)}function kMt(){return{top:0,left:0,bottom:innerHeight,right:innerWidth}}var IG=$h.Facet.define({combine:e=>({position:EMt?"absolute":e.find(t=>t.position)?.position||"fixed",parent:e.find(t=>t.parent)?.parent||null,tooltipSpace:e.find(t=>t.tooltipSpace)?.tooltipSpace||kMt})}),CMt=PA.ViewPlugin.fromClass(class{constructor(e){this.view=e;this.inView=!0;this.lastTransaction=0;this.measureTimeout=-1;let t=e.state.facet(IG);this.position=t.position,this.parent=t.parent,this.classes=e.themeClasses,this.createContainer(),this.measureReq={read:this.readMeasure.bind(this),write:this.writeMeasure.bind(this),key:this},this.manager=new BG(e,RG,r=>this.createTooltip(r)),this.intersectionObserver=typeof IntersectionObserver=="function"?new IntersectionObserver(r=>{Date.now()>this.lastTransaction-50&&r.length>0&&r[r.length-1].intersectionRatio<1&&this.measureSoon()},{threshold:[1]}):null,this.observeIntersection(),e.dom.ownerDocument.defaultView?.addEventListener("resize",this.measureSoon=this.measureSoon.bind(this)),this.maybeMeasure()}createContainer(){this.parent?(this.container=document.createElement("div"),this.container.style.position="relative",this.container.className=this.view.themeClasses,this.parent.appendChild(this.container)):this.container=this.view.dom}observeIntersection(){if(this.intersectionObserver){this.intersectionObserver.disconnect();for(let e of this.manager.tooltipViews)this.intersectionObserver.observe(e.dom)}}measureSoon(){this.measureTimeout<0&&(this.measureTimeout=setTimeout(()=>{this.measureTimeout=-1,this.maybeMeasure()},50))}update(e){e.transactions.length&&(this.lastTransaction=Date.now());let t=this.manager.update(e);t&&this.observeIntersection();let r=t||e.geometryChanged,n=e.state.facet(IG);if(n.position!=this.position){this.position=n.position;for(let i of this.manager.tooltipViews)i.dom.style.position=this.position;r=!0}if(n.parent!=this.parent){this.parent&&this.container.remove(),this.parent=n.parent,this.createContainer();for(let i of this.manager.tooltipViews)this.container.appendChild(i.dom);r=!0}else this.parent&&this.view.themeClasses!=this.classes&&(this.classes=this.container.className=this.view.themeClasses);r&&this.maybeMeasure()}createTooltip(e){let t=e.create(this.view);if(t.dom.classList.add("cm-tooltip"),e.arrow&&!t.dom.querySelector(".cm-tooltip > .cm-tooltip-arrow")){let r=document.createElement("div");r.className="cm-tooltip-arrow",t.dom.appendChild(r)}return t.dom.style.position=this.position,t.dom.style.top=jle,this.container.appendChild(t.dom),t.mount&&t.mount(this.view),t}destroy(){this.view.dom.ownerDocument.defaultView?.removeEventListener("resize",this.measureSoon);for(let{dom:e}of this.manager.tooltipViews)e.remove();this.intersectionObserver?.disconnect(),clearTimeout(this.measureTimeout)}readMeasure(){let e=this.view.dom.getBoundingClientRect();return{editor:e,parent:this.parent?this.container.getBoundingClientRect():e,pos:this.manager.tooltips.map((t,r)=>{let n=this.manager.tooltipViews[r];return n.getCoords?n.getCoords(t.pos):this.view.coordsAtPos(t.pos)}),size:this.manager.tooltipViews.map(({dom:t})=>t.getBoundingClientRect()),space:this.view.state.facet(IG).tooltipSpace(this.view)}}writeMeasure(e){let{editor:t,space:r}=e,n=[];for(let i=0;i<this.manager.tooltips.length;i++){let a=this.manager.tooltips[i],o=this.manager.tooltipViews[i],{dom:s}=o,l=e.pos[i],u=e.size[i];if(!l||l.bottom<=Math.max(t.top,r.top)||l.top>=Math.min(t.bottom,r.bottom)||l.right<Math.max(t.left,r.left)-.1||l.left>Math.min(t.right,r.right)+.1){s.style.top=jle;continue}let c=a.arrow?o.dom.querySelector(".cm-tooltip-arrow"):null,f=c?7:0,d=u.right-u.left,p=u.bottom-u.top,h=o.offset||TMt,m=this.view.textDirection==PA.Direction.LTR,v=u.width>r.right-r.left?m?r.left:r.right-u.width:m?Math.min(l.left-(c?14:0)+h.x,r.right-d):Math.max(r.left,l.left-d+(c?14:0)-h.x),A=!!a.above;!a.strictSide&&(A?l.top-(u.bottom-u.top)-h.y<r.top:l.bottom+(u.bottom-u.top)+h.y>r.bottom)&&A==r.bottom-l.bottom>l.top-r.top&&(A=!A);let x=A?l.top-p-f-h.y:l.bottom+f+h.y,g=v+d;if(o.overlap!==!0)for(let y of n)y.left<g&&y.right>v&&y.top<x+p&&y.bottom>x&&(x=A?y.top-p-2-f:y.bottom+f+2);let w=(y,S)=>{let{top:T,right:D,bottom:k,left:M,width:E,height:O,x:P,y:_}=S,B={top:T,right:D,bottom:k,left:M};if(typeof B>"u"){let R={top:0,left:0}}let F=y.parent.document.getElementsByTagName("iframe"),L,I=!1;for(let R=0,J=F.length;R<J;R++)if(L=F[R],L.contentWindow==y){I=!0;break}if(I){let R=L.getBoundingClientRect();B.left+=R.left,B.top+=R.top,y!==T&&w(y.parent,R)}else return{top:0,left:0};return B},b=w(this.view.dom.ownerDocument.defaultView,t);this.position=="absolute"?(s.style.top=b.top+x-e.parent.top+"px",s.style.left=b.left+v-e.parent.left+"px"):(s.style.top=b.top+x+"px",s.style.left=b.left+v+"px"),c&&(c.style.left=`${l.left+(m?h.x:-h.x)-(v+14-7)}px`),o.overlap!==!0&&n.push({left:v,top:x,right:g,bottom:x+p}),s.classList.toggle("cm-tooltip-above",A),s.classList.toggle("cm-tooltip-below",!A),o.positioned&&o.positioned()}}maybeMeasure(){if(this.manager.tooltips.length&&(this.view.inView&&this.view.requestMeasure(this.measureReq),this.inView!=this.view.inView&&(this.inView=this.view.inView,!this.inView)))for(let e of this.manager.tooltipViews)e.dom.style.top=jle}},{eventHandlers:{scroll(){this.maybeMeasure()}}}),DMt=PA.EditorView.baseTheme({".cm-tooltip":{zIndex:100},"&light .cm-tooltip":{border:"1px solid #bbb",backgroundColor:"#f5f5f5"},"&light .cm-tooltip-section:not(:first-child)":{borderTop:"1px solid #bbb"},"&dark .cm-tooltip":{backgroundColor:"#333338",color:"white"},".cm-tooltip-arrow":{height:`${7}px`,width:`${7*2}px`,position:"absolute",zIndex:-1,overflow:"hidden","&:before, &:after":{content:"''",position:"absolute",width:0,height:0,borderLeft:`${7}px solid transparent`,borderRight:`${7}px solid transparent`},".cm-tooltip-above &":{bottom:`-${7}px`,"&:before":{borderTop:`${7}px solid #bbb`},"&:after":{borderTop:`${7}px solid #f5f5f5`,bottom:"1px"}},".cm-tooltip-below &":{top:`-${7}px`,"&:before":{borderBottom:`${7}px solid #bbb`},"&:after":{borderBottom:`${7}px solid #f5f5f5`,top:"1px"}}},"&dark .cm-tooltip .cm-tooltip-arrow":{"&:before":{borderTopColor:"#333338",borderBottomColor:"#333338"},"&:after":{borderTopColor:"transparent",borderBottomColor:"transparent"}}}),TMt={x:0,y:0},RG=$h.Facet.define({enables:[CMt,DMt]}),LG=$h.Facet.define(),x4=class{constructor(t){this.view=t;this.mounted=!1;this.dom=document.createElement("div"),this.dom.classList.add("cm-tooltip-hover"),this.manager=new BG(t,LG,r=>this.createHostedView(r))}static create(t){return new x4(t)}createHostedView(t){let r=t.create(this.view);return r.dom.classList.add("cm-tooltip-section"),this.dom.appendChild(r.dom),this.mounted&&r.mount&&r.mount(this.view),r}mount(t){for(let r of this.manager.tooltipViews)r.mount&&r.mount(t);this.mounted=!0}positioned(){for(let t of this.manager.tooltipViews)t.positioned&&t.positioned()}update(t){this.manager.update(t)}},NMt=RG.compute([LG],e=>{let t=e.facet(LG).filter(r=>r);return t.length===0?null:{pos:Math.min(...t.map(r=>r.pos)),end:Math.max(...t.filter(r=>r.end!=null).map(r=>r.end)),create:x4.create,above:t[0].above,arrow:t.some(r=>r.arrow)}});var Ple=class{constructor(t,r,n,i,a){this.view=t;this.source=r;this.field=n;this.setHover=i;this.hoverTime=a;this.hoverTimeout=-1;this.restartTimeout=-1;this.pending=null;this.lastMove={x:0,y:0,target:t.dom,time:0},this.checkHover=this.checkHover.bind(this),t.dom.addEventListener("mouseleave",this.mouseleave),t.dom.addEventListener("mousemove",this.mousemove)}update(){this.pending&&(this.pending=null,clearTimeout(this.restartTimeout),this.restartTimeout=setTimeout(()=>this.startHover(),20))}get active(){return this.view.state.field(this.field)}checkHover(){if(this.hoverTimeout=-1,this.active)return;let t=Date.now()-this.lastMove.time;t<this.hoverTime?this.hoverTimeout=setTimeout(this.checkHover,this.hoverTime-t):this.startHover()}startHover(){clearTimeout(this.restartTimeout);let{lastMove:t}=this,r=this.view.contentDOM.contains(t.target)?this.view.posAtCoords(t):null;if(r==null)return;let n=this.view.coordsAtPos(r);if(n==null||t.y<n.top||t.y>n.bottom||t.x<n.left-this.view.defaultCharacterWidth||t.x>n.right+this.view.defaultCharacterWidth)return;let i=this.view.bidiSpans(this.view.state.doc.lineAt(r)).find(s=>s.from<=r&&s.to>=r),a=i&&i.dir==PA.Direction.RTL?-1:1,o=this.source(this.view,r,t.x<n.left?-a:a);if(o?.then){let s=this.pending={pos:r};o.then(l=>{this.pending==s&&(this.pending=null,l&&this.view.dispatch({effects:this.setHover.of(l)}))},l=>(0,PA.logException)(this.view.state,l,"hover tooltip"))}else o&&this.view.dispatch({effects:this.setHover.of(o)})}mousemove(t){this.lastMove={x:t.clientX,y:t.clientY,target:t.target,time:Date.now()},this.hoverTimeout<0&&(this.hoverTimeout=setTimeout(this.checkHover,this.hoverTime));let r=this.active;if(r&&!x$e(this.lastMove.target)||this.pending){let{pos:n}=r||this.pending,i=r?.end??n;(n==i?this.view.posAtCoords(this.lastMove)!=n:!MMt(this.view,n,i,t.clientX,t.clientY,6))&&(this.view.dispatch({effects:this.setHover.of(null)}),this.pending=null)}}mouseleave(t){clearTimeout(this.hoverTimeout),this.hoverTimeout=-1,this.active&&!x$e(t.relatedTarget)&&this.view.dispatch({effects:this.setHover.of(null)})}destroy(){clearTimeout(this.hoverTimeout),this.view.dom.removeEventListener("mouseleave",this.mouseleave),this.view.dom.removeEventListener("mousemove",this.mousemove)}};function x$e(e){for(let t=e;t;t=t.parentNode)if(t.nodeType==1&&t.classList.contains("cm-tooltip"))return!0;return!1}function MMt(e,t,r,n,i,a){let o=document.createRange(),s=e.domAtPos(t),l=e.domAtPos(r);o.setEnd(l.node,l.offset),o.setStart(s.node,s.offset);let u=o.getClientRects();o.detach();for(let c=0;c<u.length;c++){let f=u[c];if(Math.max(f.top-i,i-f.bottom,f.left-n,n-f.right)<=a)return!0}return!1}function S$e(e,t={}){let r=$h.StateEffect.define(),n=$h.StateField.define({create(){return null},update(i,a){if(i&&t.hideOnChange&&(a.docChanged||a.selection))return null;for(let o of a.effects){if(o.is(r))return o.value;if(o.is(E$e))return null}if(i&&a.docChanged){let o=a.changes.mapPos(i.pos,-1,$h.MapMode.TrackDel);if(o==null)return null;let s=Object.assign(Object.create(null),i);return s.pos=o,i.end!=null&&(s.end=a.changes.mapPos(i.end)),s}return i},provide:i=>LG.from(i)});return[n,PA.ViewPlugin.define(i=>new Ple(i,e,n,r,t.hoverTime||300)),NMt]}var E$e=$h.StateEffect.define(),WOn=E$e.of(null);var Ile=ge(Me());var HD=require("@codemirror/state"),qG=HD.Annotation.define(),k$e=HD.Annotation.define(),$G=HD.StateField.define({create:()=>{},update(e,t){return t.annotation(k$e)?t.annotation(k$e):e}}),W2=HD.StateField.define({create:e=>"none",update(e,t){return t.annotation(qG)?t.annotation(qG):e}});var zh=ge(Me());var zG=e=>{let t=e.plugin.enactor.resolvePath(e.path,e.source),[r,n]=zh.default.useState();(0,zh.useMemo)(()=>e.plugin.enactor.spaceFragmentSchema(t).then(l=>n(l)),[t]);let i=()=>{navigator.clipboard.writeText(`![![${e.path}]]`),e.view.dispatch({changes:{from:e.pos.from-4,to:e.pos.to+2}})},a=()=>{e.view.dispatch({changes:{from:e.pos.from-4,to:e.pos.to+2}}),e.plugin.enactor.notify(N.notice.tableDeleted)},o=()=>{let l=e.view.posAtDOM(e.dom),c=e.view.state.doc.lineAt(l).from;e.toggleState?e.view.dispatch({changes:{from:c,to:c+1}}):e.view.dispatch({changes:{from:c,to:c,insert:"!"}})},s=l=>{let u=[];u.push({name:N.buttons.convertTable,icon:"ui//sync",onClick:c=>{e.plugin.enactor.convertSpaceFragmentToMarkdown(r,f=>{e.view.dispatch({changes:{from:e.pos.from-4,to:e.pos.to+2,insert:f}})})}}),u.push({name:N.buttons.cutTable,icon:"ui//cut",onClick:c=>{i()}}),u.push({name:N.buttons.deleteTable,icon:"ui//close",onClick:c=>{a()}}),e.plugin.enactor.openMenu(l,u)};return zh.default.createElement("div",{className:"mk-flowblock-menu"},r?r.type=="context"||r.frameType=="view"?zh.default.createElement("button",{className:"mk-toolbar-button",dangerouslySetInnerHTML:{__html:vi.options},onClick:l=>{s(l)}}):zh.default.createElement(zh.default.Fragment,null):zh.default.createElement(zh.default.Fragment,null,e.toggle&&zh.default.createElement("button",{"aria-label":N.buttons.toggleFlow,onClick:o,className:`mk-toolbar-button ${e.toggleState?"mk-toggle-on":""}`,dangerouslySetInnerHTML:{__html:e.toggleState?vi["book-open"]:vi["edit-3"]}})))};var Lu=ge(Me());var OMt=e=>e.charAt(0)=="/"?e.substring(1):e,C$e=e=>e.lastIndexOf("/")!=-1?e.lastIndexOf(".")!=-1?OMt(e.substring(e.lastIndexOf("/")+1,e.lastIndexOf("."))):e.substring(e.lastIndexOf("/")+1):e.lastIndexOf(".")!=-1?e.substring(0,e.lastIndexOf(".")):e,w4=(0,Lu.forwardRef)((e,t)=>{let r=(0,Lu.useRef)(null),[n,i]=(0,Lu.useState)(!1),[a,o]=(0,Lu.useState)(!1),s=async u=>{let c=r.current,f=e.plugin.enactor.uriByString(e.path,e.source),d=await e.plugin.enactor.pathExists(f.basePath),p=e.plugin.enactor.isSpace(f.basePath),h=p&&e.forceNote?e.plugin.enactor.spaceNotePath(e.path):d?f.fullPath:null;if(h)i(!1),e.plugin.enactor.openPath(h,c);else if(u){let m=p?e.plugin.enactor.spaceFolderPath(e.path):e.plugin.enactor.parentPath(f.basePath);if(!m)return;let v=await e.plugin.enactor.createNote(m,C$e(e.path));i(!1),await e.plugin.enactor.openPath(v,c)}else{i(!0),o(!1);return}o(!0)},l=()=>{e.load?s():r?.current&&(r.current.innerHTML="")};return(0,Lu.useEffect)(()=>{l()},[e.load,e.path]),(0,Lu.useEffect)(()=>{let u=()=>{r.current&&!r.current.hasChildNodes()&&e.load&&!n&&s()};return e.plugin.enactor.addActiveStateListener(u),()=>{r.current=null,e.plugin.enactor.removeActiveStateListener(u)}},[]),Lu.default.createElement(Lu.default.Fragment,null,Lu.default.createElement("div",{className:`${e.classname??""} mk-flowspace-editor`,ref:r,onMouseDown:u=>{u.target===u.currentTarget&&u.stopPropagation()}}),n?Lu.default.createElement("div",{onClick:()=>s(!0),className:"mk-placeholder",style:{color:"var(--mk-ui-text-tertiary)"}},N.labels.notePlaceholder.replace("${1}",C$e(e.path))):Lu.default.createElement(Lu.default.Fragment,null))});w4.displayName="UINote";var VD=(e,t)=>(r,n)=>{let i=t?r:n,a=t?n:r;return i[e]<a[e]?-1:i[e]>a[e]?1:0};var S4=require("obsidian");var mp=Q2.Annotation.define(),Uh=Q2.Annotation.define(),D$e=Q2.EditorState.transactionFilter.of(e=>{let t=[],r=e.state.field(ud,!1);return r&&!e.annotation(mp)&&t.push(...r.filter(n=>n.expandedState==1).map(n=>e.state.field(W2,!1)=="doc"?{annotations:mp.of([n.id,2])}:{annotations:mp.of([n.id,0])})),[e,...t]}),T$e=Dv.ViewPlugin.fromClass(class{constructor(e){}},{eventHandlers:{mousedown:(e,t)=>{if(!e.shiftKey)return;let r=t.posAtDOM(e.target),{from:n,to:i,text:a}=t.state.doc.lineAt(r);for(let o of a.matchAll(/(?!!)\[\[([^\]]+)\]\]/g)){let l=t.state.field(ud,!1).find(u=>u.to==n+o.index+o[1].length+2&&r>=u.from&&r<=u.to);l&&(e.preventDefault(),t.dispatch({annotations:mp.of([l.id,2])}))}}}}),N$e=e=>S$e((t,r,n)=>{let{from:i,to:a}=t.state.doc.lineAt(r),o=null;return b4({from:i,to:a},t.state,{enter:({name:s,from:l,to:u})=>{if(s.includes("hmd-internal-link")&&r<=u&&r>=l){let f=t.state.field(ud,!1).find(d=>d.to==u);if(f)return o={pos:r,end:u,above:!0,create(d){let p=document.createElement("div");p.classList.add("mk-flow-hover"),p.classList.add("menu");let h=p.createDiv();h.setAttribute("aria-label",f.expandedState==0?N.buttons.openFlow:N.buttons.hideFlow),h.addEventListener("click",()=>{d.dispatch({annotations:mp.of([f.id,2])})});let m=h.createDiv();return m.innerHTML=vi["mk-ui-flow-hover"],h.insertAdjacentText("beforeend",f.expandedState==0?N.buttons.openFlow:N.buttons.hideFlow),{dom:p}}},!1}}}),o}),ud=Q2.StateField.define({create(){return[]},update(e,t){let r=[],n=e,i=[],a=t.newDoc.sliceString(0),o=s=>s!=2?2:0;for(let s of a.matchAll(/(?:!\[!\[|!!\[\[)([^\]]+)\]\]/g)){let l=s[1],u=n.filter(h=>h.link==l),c=i.filter(h=>h==l).length,f=u[c],d=f?f.id:ry();i.push(l);let p={id:d,link:s[1],from:s.index+4,to:s.index+4+s[1].length,type:1,height:f?t.annotation(Uh)?.[0]==d&&t.annotation(Uh)?.[1]!=0?t.annotation(Uh)?.[1]:f.height:-1,expandedState:f?t.annotation(mp)?.[0]==d?o(f.expandedState):f.expandedState:1};r.push(p)}for(let s of a.matchAll(/\[\[([^\]]+)\]\]/g))if(a.charAt(s.index-1)!="!"){let l=s[1],u=n.filter(h=>h.link==l),c=i.filter(h=>h==l).length,f=u[c],d=f?f.id:ry();i.push(l);let p={id:d,link:s[1],from:s.index+2,to:s.index+2+s[1].length,type:0,height:f?t.annotation(Uh)?.[0]==d&&t.annotation(Uh)?.[1]!=0?t.annotation(Uh)?.[1]:f.height:-1,expandedState:f?t.annotation(mp)?.[0]==d?o(f.expandedState):f.expandedState:0};r.push(p)}else if(a.charAt(s.index-2)!="!"){let l=s[1],u=n.filter(h=>h.link==l),c=i.filter(h=>h==l).length,f=u[c],d=f?f.id:ry();i.push(l);let p={id:d,link:s[1],from:s.index+3,to:s.index+3+s[1].length,type:2,height:f?t.annotation(Uh)?.[0]==d&&t.annotation(Uh)?.[1]!=0?t.annotation(Uh)?.[1]:f.height:-1,expandedState:f?t.annotation(mp)?.[0]==d?o(f.expandedState):f.expandedState:1};r.push(p)}return r.sort(VD("from",!0)),r}}),UG=class extends Dv.WidgetType{constructor(r,n){super();this.info=r;this.plugin=n}eq(r){return r.info.id===this.info.id}toDOM(r){let n=document.createElement("div");if(n.classList.add("mk-floweditor-container"),n.setAttribute("id","mk-flow-"+this.info.id),n.style.setProperty("height",this.info.height+"px"),this.info.link&&r.state.field(S4.editorInfoField,!1)){let a=r.state.field(S4.editorInfoField,!1).file;this.root=this.plugin.enactor.createRoot(n),this.root.render(Ile.default.createElement(w4,{load:!0,plugin:this.plugin,path:this.info.link,source:a.path}))}return n}get estimatedHeight(){return this.info.height}destroy(r){this.root&&this.root.unmount()}},_le=class extends Dv.WidgetType{constructor(r,n){super();this.info=r;this.flowInfo=r,this.plugin=n}eq(r){return r.info.id===this.info.id}toDOM(r){let n=document.createElement("div");n.classList.add("mk-floweditor-selector");let i=this.plugin.enactor.createRoot(n);if(this.info.link&&r.state.field(S4.editorInfoField,!1)){let o=r.state.field(S4.editorInfoField,!1).file;i.render(Ile.default.createElement(zG,{app:this.plugin.app,plugin:this.plugin,toggle:!0,path:this.info.link,source:o?.path,toggleState:!0,view:r,pos:{from:this.info.from,to:this.info.to},dom:n}))}return n}},HG=(e,t)=>Dv.Decoration.replace({widget:new _le(e,t),inclusive:!0,block:!1}),GD=(e,t)=>Dv.Decoration.replace({widget:new UG(e,t),inclusive:!0,block:!1}),VG=(e,t)=>Dv.Decoration.widget({widget:new UG(e,t),inclusiveStart:!0,block:!0});var M$e=require("obsidian");var E4=class extends M$e.EditorSuggest{constructor(r,n){super(r);this.inCmd=!1;this.cmdStartCh=0;this.plugin=n}resetInfos(){this.cmdStartCh=0,this.inCmd=!1}onTrigger(r,n,i){let a=n.getLine(r.line).slice(0,r.ch),o=this.plugin.settings.menuTriggerChar.length;if(this.file=i,!this.inCmd&&a.slice(0,o)!==this.plugin.settings.menuTriggerChar&&a.slice(-2-o)!=="- "+this.plugin.settings.menuTriggerChar)return this.resetInfos(),null;this.inCmd||(this.cmdStartCh=a.length-o,this.inCmd=!0);let s=a.slice(this.cmdStartCh,r.ch);return s.length>1&&s.includes(" ")||!s.includes(this.plugin.settings.menuTriggerChar)?(this.resetInfos(),null):{start:r,end:r,query:s.slice(o)}}getSuggestions(r){let n=this.plugin.commands.filter(({label:i})=>i.toLowerCase().includes(r.query.toLowerCase())||N.commands[i]&&N.commands[i].toLowerCase().includes(r.query.toLowerCase()));return n.length>0?n:[{label:N.commandsSuggest.noResult,value:"",icon:"",type:0}]}renderSuggestion(r,n){if(r.value==""){n.setText(N.commandsSuggest.noResult);return}let i=n.createDiv("mk-slash-item"),a=i.createDiv("mk-slash-icon");a.innerHTML=vi[r.icon],i.createDiv().setText(N.commands[r.label]??r.label)}selectSuggestion(r,n){let i=this.context.start,a=this.context.end,o=this.cmdStartCh,s=this.context.editor;r.label!==N.commandsSuggest.noResult&&(r.onSelect?r.onSelect(n,this.plugin,this.file,s,i,o,a,()=>{this.resetInfos(),this.close()}):(this.context.editor.replaceRange(r.value,{...this.context.start,ch:this.cmdStartCh},this.context.end),r.offset&&this.context.editor.setSelection({...this.context.start,ch:this.cmdStartCh+r.offset[1]},{...this.context.end,ch:this.cmdStartCh+r.value.length+r.offset[0]}),this.resetInfos(),this.close()))}};var O$e=require("obsidian"),Ble=ge(Me());var k4=class extends O$e.EditorSuggest{constructor(r,n){super(r);this.inCmd=!1;this.cmdStartCh=0;this.plugin=n,this.emojis=Object.keys(kv).reduce((i,a)=>[...i,...kv[a].map(o=>({label:o.n[0],desc:o.n[1],variants:o.v,unicode:o.u}))],[])}resetInfos(){this.cmdStartCh=0,this.inCmd=!1}onTrigger(r,n,i){let a=n.getLine(r.line).slice(0,r.ch);if(!this.inCmd&&!(a.slice(-2)==" "+this.plugin.settings.emojiTriggerChar||a[0]==this.plugin.settings.emojiTriggerChar))return this.resetInfos(),null;this.inCmd||(this.cmdStartCh=a.length-1,this.inCmd=!0);let o=a.slice(this.cmdStartCh,r.ch);return o.includes(" ")||!o.includes(this.plugin.settings.emojiTriggerChar)?(this.resetInfos(),null):(this.suggestEl.classList.toggle("mk-emoji-menu",!0),{start:r,end:r,query:o.slice(1)})}getSuggestions(r){let n=this.emojis.filter(({label:i,desc:a})=>i.includes(r.query)||a?.includes(r.query));return n.length>0?n:[{label:N.commandsSuggest.noResult,unicode:"",desc:""}]}renderSuggestion(r,n){let i=document.createElement("div");i.setAttribute("aria-label",r.label),this.plugin.enactor.createRoot(i).render(Ble.default.createElement(Ble.default.Fragment,null,r.unicode.length>0?dw(r.unicode):N.commandsSuggest.noResult)),n.appendChild(i)}selectSuggestion(r,n){r.label!==N.commandsSuggest.noResult&&(this.context.editor.replaceRange(dw(r.unicode),{...this.context.start,ch:this.cmdStartCh},this.context.end),this.resetInfos(),this.close())}};var QG=require("@codemirror/state");var GG=[{mark:"em",formatting:"formatting-em",altFormatting:"em_formatting_formatting-strong",formatChar:"*"},{mark:"strong",formatting:"formatting-strong",formatChar:"**"},{mark:"strikethrough",formatting:"formatting-strikethrough",formatChar:"~~"},{mark:"inline-code",formatting:"formatting-code",formatChar:"`"}];var Y2=QG.Annotation.define(),F$e=(e,t,r)=>t&&r.sliceDoc(e,e+1)==" "?e+1:!t&&r.sliceDoc(e-1,e)==" "?e-1:e,j$e=(e,t,r)=>{let n=r.doc.lineAt(e),i=t?n.from:e,a=t?e:n.to,o=i,s=i,l=!1;return b4({from:i,to:a},r,{enter:u=>{if(l)return!1;if(u.name.includes("formatting")){if(!t&&u.from>i)return!1;t?(o=u.from,s=u.to):o=u.to}}}),t&&s<e&&(o=e),o},Rle=(e,t)=>{let r=F$e(j$e(e.from,!0,t),!0,t),n=F$e(j$e(e.to,!1,t),!1,t);return{from:r,to:n}},yb=(e,t)=>({changes:{from:e,to:e,insert:t.formatChar}}),qle=(e,t,r)=>C4(r.from,e,t.mark)&&C4(r.to,e,t.mark),C4=(e,t,r)=>{let n=!1;return b$e(e,t,{enter:({name:i,from:a,to:o})=>{Lle(i,r)&&(n=!0)}}),n},Lle=(e,t)=>e.includes(t),WG=(e,t,r)=>C4(e,t,r.mark),WD=(e,t,r)=>C4(e,t,r.formatting)?!0:r.altFormatting?C4(e,t,r.altFormatting):!1,FMt=(e,t,r)=>{let n=[];return qle(r,t,e)?(WD(e.from,r,t)&&!WD(e.to,r,t)&&n.push(yb(e.to,t)),WD(e.to,r,t)&&!WD(e.from,r,t)&&n.push(yb(e.from,t))):WG(e.from,r,t)?(WD(e.from,r,t)&&!WG(e.from-1,r,t)&&n.push(yb(e.from,t)),n.push(yb(e.to,t))):WG(e.to,r,t)?(WD(e.to,r,t)&&!WG(e.to+1,r,t)&&n.push(yb(e.to,t)),n.push(yb(e.from,t))):(n.push(yb(e.to,t)),n.push(yb(e.from,t))),n},jMt=(e,t,r)=>{let n=[];return b4({from:e.from,to:e.to},t,{enter:({name:i,from:a,to:o})=>{(Lle(i,r.formatting)||(r.altFormatting?Lle(i,r.altFormatting):!1))&&n.push({from:a,to:a+r.formatChar.length})}}),{changes:n}},P$e=QG.EditorState.transactionFilter.of(e=>{if(!e.annotation(Y2))return e;let t=e.annotation(Y2),r=GG.find(l=>l.mark==t);if(!r)return e;let n=e.startState.selection.main,i=[];if(n.head==n.anchor)return e.startState.sliceDoc(n.head-r.formatChar.length,n.head)==r.formatChar&&e.startState.sliceDoc(n.head,n.head+r.formatChar.length)==r.formatChar?i.push({changes:{from:n.head-r.formatChar.length,to:n.head+r.formatChar.length}}):i.push({changes:{from:n.head,insert:r.formatChar+r.formatChar},selection:{anchor:n.head+r.formatChar.length,head:n.head+r.formatChar.length}}),[e,...i];let a=Rle(n,e.startState);i.push(jMt(a,e.startState,r));let o=a.from,s=a.to;return i.push(...FMt(a,r,e.startState)),[e,...i,{selection:{anchor:o,head:s}}]});var R$e=ge(jo());var $le=require("obsidian"),Cr=ge(Me());var _$e=ge(Me());var I$e=e=>{let{i:t,style:r,active:n,toggleMarkAction:i}=e;return _$e.default.createElement("div",{key:t,"aria-label":e.plugin.isTouchScreen()?void 0:N.styles[r.label],className:`mk-mark ${r.mark&&n?"mk-mark-active":""}`,dangerouslySetInnerHTML:{__html:vi[`${r.icon}`]},onMouseDown:a=>i(a,r)})};var B$e=[{label:"bold",value:"****",insertOffset:2,icon:"mk-mark-strong",mark:"strong"},{label:"italics",value:"**",insertOffset:1,icon:"mk-mark-em",mark:"em"},{label:"strikethrough",value:"~~~~",insertOffset:2,icon:"mk-mark-strikethrough",mark:"strikethrough"},{label:"code",value:"``",insertOffset:1,icon:"mk-mark-code",mark:"inline-code"},{label:"link",value:"[]()",insertOffset:1,cursorOffset:2,icon:"mk-mark-link"}];function L$e(){return B$e}var q$e=(e,t)=>{t.enactor.createRoot(e).render(Cr.default.createElement(zle,{mobile:!0,activeMarks:[],plugin:t}))},PMt=({plugin:e,colorMode:t,onPaletteSelect:r,onClose:n})=>{let[i,a]=(0,Cr.useState)([]);return(0,Cr.useEffect)(()=>{let o=jg(e.plugin.superstate);a(o)},[e]),Cr.default.createElement("div",{className:"mk-color-palette-panel",onMouseDown:o=>o.preventDefault(),onClick:o=>o.preventDefault()},Cr.default.createElement("div",{className:"mk-color-palette-panel-header"},Cr.default.createElement("span",{className:"mk-color-palette-panel-title"},"Select Palette"),Cr.default.createElement("div",{className:"mk-color-palette-panel-close",onClick:n,dangerouslySetInnerHTML:{__html:vi.close}})),Cr.default.createElement("div",{className:"mk-color-palette-panel-content"},i.map(o=>Cr.default.createElement("div",{key:o.id,className:"mk-palette-item",onClick:()=>r(o.id)},Cr.default.createElement("div",{className:"mk-palette-preview"},o.colors.slice(0,5).map((s,l)=>Cr.default.createElement("div",{key:`${o.id}-${l}`,className:"mk-palette-preview-circle",style:{backgroundColor:s.value,marginLeft:l>0?"-6px":"0",zIndex:o.colors.length-l}}))),Cr.default.createElement("div",{className:"mk-palette-name"},o.name)))))},zle=e=>{let[t,r]=(0,Cr.useState)(e.mobile?0:1),[n,i]=(0,Cr.useState)(null),[a,o]=(0,Cr.useState)(!1),[s,l]=(0,Cr.useState)(()=>e.plugin.settings?.inlineStylerSelectedPalette||""),[u,c]=(0,Cr.useState)(!1),f=E=>{l(E),e.plugin.settings&&(e.plugin.settings.inlineStylerSelectedPalette=E,e.plugin.enactor.saveSettings()),o(!1)},d=E=>E.includes("linear-gradient")||E.includes("radial-gradient")||E.includes("conic-gradient"),p=(E,O,P)=>P&&d(E)?`<span style='background-image: ${E}; color: transparent; background-clip: text; -webkit-background-clip: text;'>${O}</span>`:P?`<span style='color: ${E}'>${O}</span>`:`<mark style='background: ${E}'>${O}</mark>`,h=(0,Cr.useCallback)(()=>{let E=e.cm??qh(e.plugin);if(!E)return!1;let O=E.state.selection.main,P=E.state.sliceDoc(O.from,O.to),_=/<span[^>]*style=['"]*[^'"]*(?:color:|background-image:)[^'"]*['"]*[^>]*>.*?<\/span>/gi,B=/<mark[^>]*style=['"]*[^'"]*background:[^'"]*['"]*[^>]*>.*?<\/mark>/gi;return _.test(P)||B.test(P)},[e.cm,e.plugin]),m=()=>{let E=e.cm??qh(e.plugin);if(!E)return;let O=E.state.selection.main,_=E.state.sliceDoc(O.from,O.to).replace(/<span[^>]*style=['"]*[^'"]*(?:color:|background-image:)[^'"]*['"]*[^>]*>(.*?)<\/span>/gi,"$1").replace(/<mark[^>]*style=['"]*[^'"]*background:[^'"]*['"]*[^>]*>(.*?)<\/mark>/gi,"$1");E.dispatch({changes:{from:O.from,to:O.to,insert:_}}),c(!1)},v=()=>{if(!s)return J3(e.plugin.plugin.superstate);let O=jg(e.plugin.plugin.superstate).find(P=>P.id===s);return O?O.colors.map(P=>[P.name,P.value]):J3(e.plugin.plugin.superstate)};(0,Cr.useEffect)(()=>{c(h())},[h,e.activeMarks]);let A=E=>{E.preventDefault();let O=e.cm??qh(e.plugin);if(!O)return;let P=O.state.selection.main.to,_=O.state.sliceDoc(P-1,P)==O.state.lineBreak?e.plugin.settings.menuTriggerChar:O.state.lineBreak+e.plugin.settings.menuTriggerChar;O.dispatch({changes:{from:P,to:P,insert:_},selection:{head:P+_.length,anchor:P+_.length}})},x=(E,O)=>{E.preventDefault();let P=e.cm??qh(e.plugin);if(!P)return;if(O.mark){P.dispatch({annotations:Y2.of(O.mark)});return}let _=P.state.selection.main,B=P.state.sliceDoc(_.from,_.to);P.dispatch({changes:{from:_.from,to:_.to,insert:O.value.substring(0,O.insertOffset)+B+O.value.substring(O.insertOffset)},selection:O.cursorOffset?{anchor:_.from+O.value.substring(0,O.insertOffset).length+B.length+O.cursorOffset,head:_.from+O.value.substring(0,O.insertOffset).length+B.length+O.cursorOffset}:{anchor:_.from+O.value.substring(0,O.insertOffset).length,head:_.from+O.value.substring(0,O.insertOffset).length+B.length}})},g=()=>Cr.default.createElement(Cr.default.Fragment,null,Cr.default.createElement("div",{"aria-label":e.plugin.isTouchScreen()?void 0:N.commands.makeMenu,onMouseDown:E=>{A(E)},className:"mk-mark",dangerouslySetInnerHTML:{__html:vi["mk-make-slash"]}}),Cr.default.createElement("div",{"aria-label":e.plugin.isTouchScreen()?void 0:N.commands.selectStyle,onMouseDown:()=>{r(1)},className:"mk-mark",dangerouslySetInnerHTML:{__html:vi["mk-make-style"]}}),Cr.default.createElement("div",{"aria-label":e.plugin.isTouchScreen()?void 0:N.commands.image,onMouseDown:()=>{let E=y4(e.plugin);e.plugin.app.commands.commands["editor:attach-file"].editorCallback(E.editor,E)},className:"mk-mark",dangerouslySetInnerHTML:{__html:vi["mk-make-attach"]}}),Cr.default.createElement("div",{"aria-label":e.plugin.isTouchScreen()?void 0:N.commands.toggleKeyboard,onMouseDown:()=>{let E=y4(e.plugin);e.plugin.app.commands.commands["editor:indent-list"].editorCallback(E.editor,E)},className:"mk-mark",dangerouslySetInnerHTML:{__html:vi["mk-make-indent"]}}),Cr.default.createElement("div",{"aria-label":e.plugin.isTouchScreen()?void 0:N.commands.toggleKeyboard,onMouseDown:()=>{let E=y4(e.plugin);e.plugin.app.commands.commands["editor:unindent-list"].editorCallback(E.editor,E)},className:"mk-mark",dangerouslySetInnerHTML:{__html:vi["mk-make-unindent"]}}),Cr.default.createElement("div",{"aria-label":e.plugin.isTouchScreen()?void 0:N.commands.toggleKeyboard,onMouseDown:()=>{let E=y4(e.plugin);e.plugin.app.commands.commands["editor:toggle-keyboard"].editorCallback(E.editor,E)},className:"mk-mark",dangerouslySetInnerHTML:{__html:vi["mk-make-keyboard"]}})),w=()=>Cr.default.createElement(Cr.default.Fragment,null,Cr.default.createElement("div",{className:"mk-mark",onMouseDown:()=>{i(null),r(1)},dangerouslySetInnerHTML:{__html:vi.close}}),v().map((E,O)=>Cr.default.createElement("div",{key:O,onMouseDown:()=>{r(1),i(null);let P=e.cm??qh(e.plugin);if(!P)return;let _=P.state.selection.main,B=P.state.sliceDoc(_.from,_.to),F=n?.prefix.includes("color:")??!1,L=p(E[1],B,F);P.dispatch({changes:{from:_.from,to:_.to,insert:L}})},className:"mk-color",style:{background:E[1]}})),Cr.default.createElement("div",{"aria-label":"Color Palette",onMouseDown:E=>{E.preventDefault(),E.stopPropagation(),o(!a)},onClick:E=>{E.preventDefault(),E.stopPropagation()},className:`mk-mark ${a?"mk-mark-active":""}`,dangerouslySetInnerHTML:{__html:vi.palette}}));function b(E){let O=/^(\s*)(-|\d+\.)\s+(\[[ x]\]\s+)?/,P=E.match(O);return P?P[1].length:-1}function y(E,O){let _=(B=>new RegExp(`^([\\t]|[ ]{2,4}){0,${B}}`,"gm"))(O);return E.replace(_,"")}function S(E){let O=/^(\s*)([-*+]|\d+\.)\s+(\[[ x]\]\s+)?/gm;return E.replace(O,"")}let T=async()=>{let E=e.cm.state.doc.lineAt(e.cm.state.selection.main.from),O=b(e.cm.state.sliceDoc(E.from,E.to)),P=e.cm.state.doc.lineAt(e.cm.state.selection.main.from).number,_=e.cm.state.doc.lineAt(e.cm.state.selection.main.to).number,B=[],L=e.cm.state.field($le.editorInfoField,!1).file;if(L&&e.plugin.enactor.isSpace(L.parent.path)){for(let I=P;I<=_;I++){let R=e.cm.state.doc.line(I),J=b(R.text),Q=S(R.text),q=await e.plugin.enactor.createNote(L.parent.path,Q);B.push({from:R.to-Q.length,to:R.to,insert:`[[${q}|${Q}]]`})}e.cm.dispatch({changes:B})}},D=E=>{e.plugin.enactor.selectLink(E,O=>{let P=e.cm.state.selection.main,_=e.cm.state.sliceDoc(P.from,P.to),B=[{from:P.from,to:P.to,insert:`[[${O}|${_}]]`}];e.cm.dispatch({changes:B})})},k=E=>{let O=e.cm.state.doc.lineAt(e.cm.state.selection.main.from),P=[],_=null;if(E>0){let J=e.cm.state.doc.lineAt(e.cm.state.selection.main.from).number,Q=b(O.text),q=J+1;for(;q<=e.cm.state.doc.lines;){let ie=e.cm.state.doc.line(q);if(b(ie.text)>Q&&P.push(ie),b(ie.text)<=Q)break;q++}E==1&&(_=P.map(ie=>y(ie.text,Q+1)).join(` |
| 977 | `))}let B=e.cm.state.selection.main.to,F=e.cm.state.selection.main,I=e.cm.state.field($le.editorInfoField,!1).file,R=e.cm.state.sliceDoc(F.from,F.to);if(I&&e.plugin.enactor.isSpace(I.parent.path)){let Q=Q1(R).trim();e.plugin.enactor.createNote(I.parent.path,Q,_).then(q=>{if(q){let ie=[{from:F.from,to:F.to,insert:`[[${q}|${R}]]`}];E==1&&ie.push({from:e.cm.state.doc.lineAt(F.from+1).to,to:e.cm.state.doc.line(O.number+P.length).to,insert:""}),e.cm.dispatch({changes:ie})}})}},M=()=>Cr.default.createElement(Cr.default.Fragment,null,e.mobile?Cr.default.createElement("div",{className:"mk-mark",onMouseDown:()=>{r(0)},dangerouslySetInnerHTML:{__html:vi.close}}):Cr.default.createElement(Cr.default.Fragment,null),L$e().map((E,O)=>Cr.default.createElement(I$e,{plugin:e.plugin,key:O,i:O,style:E,active:!!e.activeMarks.find(P=>P==E.mark),toggleMarkAction:x})),Cr.default.createElement("div",{className:"mk-divider"}),Cr.default.createElement("div",{"aria-label":N.styles.blocklink,onClick:E=>{D(E)},className:"mk-mark",dangerouslySetInnerHTML:{__html:vi["mk-mark-blocklink"]}}),Cr.default.createElement("div",{className:"mk-mark-group"},Cr.default.createElement("div",{"aria-label":"New Note",onMouseDown:()=>{k(0)},className:"mk-mark",dangerouslySetInnerHTML:{__html:vi["new-note"]}})),e.plugin.settings.inlineStylerColors?Cr.default.createElement(Cr.default.Fragment,null,Cr.default.createElement("div",{className:"mk-divider"}),u&&Cr.default.createElement("div",{"aria-label":"Clear Color",onMouseDown:E=>{E.preventDefault(),m()},className:"mk-color mk-mark",style:{background:"var(--background-secondary)",border:"1px solid var(--background-modifier-border)",position:"relative"}},Cr.default.createElement("div",{className:"mk-color-none-icon"},Cr.default.createElement("svg",{width:"100%",height:"100%",viewBox:"0 0 20 20"},Cr.default.createElement("line",{x1:"2",y1:"2",x2:"18",y2:"18",stroke:"#ef4444",strokeWidth:"2"})))),Cr.default.createElement("div",{"aria-label":e.plugin.isTouchScreen()?void 0:N.styles.textColor,onMouseDown:()=>{r(2),i({prefix:"<span style='color:",suffix:"'>",closeTag:"</span>"})},className:"mk-mark",dangerouslySetInnerHTML:{__html:vi["mk-mark-color"]}}),Cr.default.createElement("div",{"aria-label":e.plugin.isTouchScreen()?void 0:N.styles.highlight,onMouseDown:()=>{r(2),i({prefix:"<mark style='background:",suffix:"'>",closeTag:"</mark>"})},className:"mk-mark",dangerouslySetInnerHTML:{__html:vi["mk-mark-highlight"]}})):Cr.default.createElement(Cr.default.Fragment,null));return Cr.default.createElement(Cr.default.Fragment,null,Cr.default.createElement("div",{className:(0,R$e.default)(e.mobile?"mk-style-toolbar":"mk-style-menu"),onMouseDown:E=>E.preventDefault()},t==0&&e.mobile?g():t==2?w():M()),a&&Cr.default.createElement(PMt,{plugin:e.plugin,colorMode:n,onPaletteSelect:f,onClose:()=>o(!1)}))};var $$e=e=>{e.settings.flowMenuEnabled&&e.plugin.registerEditorSuggest(new E4(e.app,e)),e.settings.inlineStickerMenu&&e.plugin.registerEditorSuggest(new k4(e.app,e)),e.isTouchScreen()&&e.settings.mobileMakeBar&&e.settings.inlineStyler&&q$e(e.app.mobileToolbar.containerEl,e)};var uze=require("obsidian");var ZG=require("@codemirror/state"),bb=require("@codemirror/view");var z$e=require("@codemirror/view");var U$e=e=>z$e.EditorView.updateListener.of(t=>{if(t.heightChanged&&e.app.workspace.iterateRootLeaves(r=>{let n=r.view.editor?.cm;n&&t.view.dom==n.dom&&n.state.field(W2,!1)&&r.containerEl.parentElement?.hasClass("workspace-tab-container")&&n.state.field(W2,!1)!="doc"&&n.dispatch({annotations:qG.of("doc")})}),t.heightChanged){let r=t.state.field($G,!1);r&&e.app.workspace.iterateLeaves(n=>{let i=n.view.editor?.cm;if(i){let a=i.state.field(ud,!1);a&&a.find(o=>o.id==r)&&i.dispatch({annotations:Uh.of([r,t.view.contentHeight])})}},e.app.workspace.rootSplit)}});var YG=require("@codemirror/state"),D4=require("@codemirror/view");var _Mt=e=>D4.Decoration.line({attributes:{"data-ph":N.labels.placeholder.replace("${1}",e.settings.menuTriggerChar)},class:"mk-placeholder"}),H$e=e=>YG.StateField.define({create(){return D4.Decoration.none},update(t,r){let n=new YG.RangeSetBuilder,i=r.state.doc.lineAt(r.state.selection.main.head);return i?.length==0&&n.add(i.from,i.from,_Mt(e)),n.finish()},provide:t=>D4.EditorView.decorations.from(t)});var G$e=require("@codemirror/state");var XG=ge(Me());var IMt=e=>G$e.StateField.define({create:V$e(e),update(t,r){return!r.docChanged&&!r.selection?t:V$e(e)(r.state)},provide:t=>RG.computeN([t],r=>r.field(t))}),V$e=e=>t=>t.selection.ranges.filter(r=>!r.empty).map(r=>{let n=Rle(r,t),i=t.doc.lineAt(r.head),a=GG.map(o=>qle(t,o,n)?o.mark:"").filter(o=>o!="");return{pos:Math.min(r.head,r.anchor),above:!0,strictSide:!0,arrow:!1,create:o=>{let s=document.createElement("div");return s.className="cm-tooltip-cursor",e.enactor.createRoot(s).render(XG.default.createElement(XG.default.Fragment,null,XG.default.createElement(zle,{plugin:e,cm:o,activeMarks:a,mobile:!1}))),{dom:s}}}});function W$e(e){return IMt(e)}var KG=(e,t)=>{let r=[...Gqe()];return r.push(P$e,w$e({parent:document.body})),!t&&e.settings.inlineStyler&&r.push(W$e(e)),e.settings.flowMenuEnabled&&e.settings.makeMenuPlaceholder&&r.push(H$e(e)),e.settings.editorFlow&&(r.push(W2,D$e),r.push(ud,$G,U$e(e)),e.settings.internalLinkClickFlow?r.push(T$e):r.push(N$e(e))),r};var Q$e=ge(jo()),Y$e=require("obsidian"),Ws=ge(Me());var X$e=(e,t)=>{if(e.isTouchScreen()){let r=e.app.workspace.containerEl.querySelector(t.settings.spacesRightSplit?".workspace-drawer.mod-right .workspace-drawer-header-left":".workspace-drawer.mod-left .workspace-drawer-header-left");r.innerHTML="",e.enactor.createRoot(r).render(Ws.default.createElement(BMt,{superstate:t,plugin:e}))}},BMt=e=>{let t=(0,Ws.useRef)(),[r,n]=Ws.default.useState([]);(0,Ws.useEffect)(()=>{setTimeout(()=>{e.superstate.ui.getWarnings().filter(a=>!e.superstate.settings.suppressedWarnings.some(o=>a.id==o))},1e3)},[]);let i=()=>{n(e.superstate.ui.getWarnings().filter(a=>!e.superstate.settings.suppressedWarnings.some(o=>a.id==o)))};return(0,Ws.useEffect)(()=>(e.superstate.eventsDispatcher.addListener("superstateUpdated",i),e.superstate.eventsDispatcher.addListener("settingsChanged",i),e.superstate.eventsDispatcher.addListener("warningsChanged",i),()=>{e.superstate.eventsDispatcher.removeListener("superstateUpdated",i),e.superstate.eventsDispatcher.removeListener("settingsChanged",i),e.superstate.eventsDispatcher.removeListener("warningsChanged",i)}),[]),Ws.default.createElement("div",{className:"mk-main-menu-container"},Ws.default.createElement("div",{className:"mk-main-menu-inner"},Ws.default.createElement("div",{className:(0,Q$e.default)("mk-main-menu")},Ws.default.createElement("div",{className:"mk-main-menu-button mk-main-menu-button-primary",ref:t,onClick:a=>{e.superstate.ui.mainMenu(t.current,e.superstate)}},e.superstate.settings.systemName,r.length>0&&Ws.default.createElement("div",{className:"mk-icon-xsmall",dangerouslySetInnerHTML:{__html:vi.warning}}),Ws.default.createElement("div",{className:"mk-icon-xsmall",dangerouslySetInnerHTML:{__html:vi["chevrons-up-down"]}})),e.superstate.settings.blinkEnabled&&Ws.default.createElement("div",{className:"mk-main-menu-button",onClick:a=>e.superstate.ui.quickOpen(1)},Ws.default.createElement("div",{className:"mk-icon-small",dangerouslySetInnerHTML:{__html:vi.search}}))),Ws.default.createElement("button",{"aria-label":N.buttons.newNote,className:"mk-main-menu-button",onClick:a=>e.superstate.ui.defaultAdd(null,je(a.view.document),a.metaKey?"tab":!1)},Ws.default.createElement("div",{className:"mk-icon-small",dangerouslySetInnerHTML:{__html:vi["new-note"]}})),Y$e.Platform.isTablet&&Ws.default.createElement("div",{"aria-label":N.buttons.togglePin,className:"mk-main-menu-button",onClick:a=>e.superstate.settings.spacesRightSplit?e.plugin.app.workspace.rightSplit.togglePinned():e.plugin.app.workspace.leftSplit.togglePinned()},Ws.default.createElement("div",{className:"mk-icon-small",dangerouslySetInnerHTML:{__html:vi.pin}}))))};var K$e=ge(Me());var J$e=e=>K$e.default.createElement("button",{className:`mk-collapse ${e.collapsed?"mk-collapsed":""}`,onClick:t=>{!e.onToggle||(t.stopPropagation(),e.onToggle(!e.collapsed,t))},dangerouslySetInnerHTML:{__html:vi.collapse}});var QD=require("obsidian"),Vle=ge(Me());var Z$e=(e,t)=>{let r=t.map(a=>a.name),n="|",i=n+r.join(n)+`| |