From 3b953ed22a8d1ffdb77d7ef3b10b373bea7c2a6f Mon Sep 17 00:00:00 2001 From: Marcin Czenko Date: Sat, 15 Nov 2025 13:27:28 +0100 Subject: [PATCH] plugins updates --- .obsidian/plugins/query-control/main.js | 14 ++++---- .obsidian/plugins/query-control/manifest.json | 2 +- .obsidian/plugins/query-control/styles.css | 34 +++++++++++++++++++ 3 files changed, 42 insertions(+), 8 deletions(-) diff --git a/.obsidian/plugins/query-control/main.js b/.obsidian/plugins/query-control/main.js index 55e54ad..b8e3cd5 100644 --- a/.obsidian/plugins/query-control/main.js +++ b/.obsidian/plugins/query-control/main.js @@ -3,10 +3,10 @@ THIS IS A GENERATED/BUNDLED FILE BY ESBUILD if you want to view the source, please visit the github repository of this plugin */ -var q=Object.defineProperty;var G=Object.getOwnPropertyDescriptor;var U=Object.getOwnPropertyNames;var X=Object.prototype.hasOwnProperty;var Y=(l,h)=>{for(var e in h)q(l,e,{get:h[e],enumerable:!0})},J=(l,h,e,t)=>{if(h&&typeof h=="object"||typeof h=="function")for(let s of U(h))!X.call(l,s)&&s!==e&&q(l,s,{get:()=>h[s],enumerable:!(t=G(h,s))||t.enumerable});return l};var Z=l=>J(q({},"__esModule",{value:!0}),l);var b=(l,h,e)=>new Promise((t,s)=>{var n=i=>{try{a(e.next(i))}catch(o){s(o)}},r=i=>{try{a(e.throw(i))}catch(o){s(o)}},a=i=>i.done?t(i.value):Promise.resolve(i.value).then(n,r);a((e=e.apply(l,h)).next())});var se={};Y(se,{default:()=>A});module.exports=Z(se);function S(l,h){let e=Object.keys(h).map(t=>K(l,t,h[t]));return e.length===1?e[0]:function(){e.forEach(t=>t())}}function K(l,h,e){let t=l[h],s=l.hasOwnProperty(h),n=s?t:function(){return Object.getPrototypeOf(l)[h].apply(this,arguments)},r=e(n);return t&&Object.setPrototypeOf(r,t),Object.setPrototypeOf(a,r),l[h]=a,i;function a(...o){return r===n&&l[h]===a&&i(),r.apply(this,o)}function i(){l[h]===a&&(s?l[h]=n:delete l[h]),r!==n&&(r=n,Object.setPrototypeOf(a,t||Function))}}var g=require("obsidian");var I=require("obsidian");var H=class extends I.MarkdownRenderer{constructor(e,t,s){super(e,t);this.app=e,this.match=s,this.subpath="",this.indent="",this.filePath=this.match.parentDom.path,this.file=this.match.parentDom.file,this.renderer.previewEl.onNodeInserted(()=>(this.updateOptions(),this.renderer.onResize()))}updateOptions(){let e=this.app.vault.getConfig("readableLineLength");this.renderer.previewEl.toggleClass("is-readable-line-width",e);let t=this.app.vault.getConfig("foldHeading");this.renderer.previewEl.toggleClass("allow-fold-headings",t);let s=this.app.vault.getConfig("foldIndent");this.renderer.previewEl.toggleClass("allow-fold-lists",s),this.renderer.previewEl.toggleClass("rtl",this.app.vault.getConfig("rightToLeft")),t||this.renderer.unfoldAllHeadings(),s||this.renderer.unfoldAllLists(),this.renderer.previewEl.toggleClass("show-frontmatter",this.app.vault.getConfig("showFrontmatter"));let n=this.app.vault.getConfig("tabSize");this.renderer.previewEl.style.setProperty("--tab-size",`${n}px`),this.renderer.rerender()}onRenderComplete(){}getFile(){return this.match.parent.file}edit(e){return b(this,null,function*(){var o;this.renderer.set(e);let t=yield this.app.vault.cachedRead(this.file),n=(o=t.slice(this.match.start,this.match.end).match(/^\s+/g))==null?void 0:o.first();n&&(e=e.replace(/^/gm,n));let r=t.slice(0,this.match.start),a=t.slice(this.match.end,this.match.parent.content.length),i=r+e+a;yield this.app.vault.modify(this.file,i)})}};var R=require("obsidian");var M=i18next.t.bind(i18next);var $={defaultCollapse:!1,defaultShowContext:!1,defaultHideTitle:!1,defaultHideResults:!1,defaultRenderMarkdown:!1,defaultSortOrder:"alphabetical"},O=[{key:"alphabetical",label:M("plugins.file-explorer.label-sort-a-to-z")},{key:"alphabeticalReverse",label:M("plugins.file-explorer.label-sort-z-to-a")},{key:"byModifiedTime",label:M("plugins.file-explorer.label-sort-new-to-old")},{key:"byModifiedTimeReverse",label:M("plugins.file-explorer.label-sort-old-to-new")},{key:"byCreatedTime",label:M("plugins.file-explorer.label-sort-created-new-to-old")},{key:"byCreatedTimeReverse",label:M("plugins.file-explorer.label-sort-created-old-to-new")}],ee=l=>l.reduce((h,e)=>(h[e.key]=e.label,h),{}),L=class extends R.PluginSettingTab{constructor(e,t){super(e,t);this.plugin=t}hide(){}display(){let{containerEl:e}=this;e.empty(),new R.Setting(e).setName("Collapse query results by default").addToggle(t=>t.setValue(this.plugin.settings.defaultCollapse).onChange(s=>{this.plugin.settings.defaultCollapse=s,this.plugin.saveSettings()})),new R.Setting(e).setName("Show additional query result context by default").addToggle(t=>t.setValue(this.plugin.settings.defaultShowContext).onChange(s=>{this.plugin.settings.defaultShowContext=s,this.plugin.saveSettings()})),new R.Setting(e).setName("Hide query title by default").addToggle(t=>t.setValue(this.plugin.settings.defaultHideTitle).onChange(s=>{this.plugin.settings.defaultHideTitle=s,this.plugin.saveSettings()})),new R.Setting(e).setName("Hide query results by default").addToggle(t=>t.setValue(this.plugin.settings.defaultHideResults).onChange(s=>{this.plugin.settings.defaultHideResults=s,this.plugin.saveSettings()})),new R.Setting(e).setName("Render results as Markdown by default").addToggle(t=>t.setValue(this.plugin.settings.defaultRenderMarkdown).onChange(s=>{this.plugin.settings.defaultRenderMarkdown=s,this.plugin.saveSettings()})),new R.Setting(e).setName("Default query result sort order").addDropdown(t=>{t.addOptions(ee(O)),t.setValue(this.plugin.settings.defaultSortOrder),t.onChange(s=>b(this,null,function*(){this.plugin.settings.defaultSortOrder=s,yield this.plugin.saveSettings()}))})}};var m,T;function F(l,h,e,t,s){if(m){T();return}m=document.createElement("div"),m.classList.add("query-control-sort-tooltip");let n=h.getBoundingClientRect(),r=n.bottom+window.scrollY+5,a=n.left+window.scrollX;m.style.setProperty("--tooltip-top",`${r}px`),m.style.setProperty("--tooltip-left",`${a}px`),l.forEach(p=>{let u=document.createElement("div");if(u.classList.add("query-control-sort-option"),u.textContent=p.label,p.key===t){u.setAttribute("aria-current","true");let y=document.createElement("span");y.textContent="\u2713",y.classList.add("query-control-sort-option-checkmark"),u.appendChild(y)}u.addEventListener("click",()=>{e(p.key),T()}),m.appendChild(u)}),document.body.appendChild(m),T=()=>{document.removeEventListener("mousedown",o,!0),document.removeEventListener("touchstart",o,!0),document.removeEventListener("click",o),document.removeEventListener("keydown",c,!0),s.workspace.off("active-leaf-change",i),m.remove(),m=void 0};let i=()=>{m.parentElement&&(m.remove(),T())},o=p=>{!m.contains(p.target)&&!h.contains(p.target)&&(m.remove(),T())},c=p=>{m.remove(),T()};document.addEventListener("mousedown",o,!0),document.addEventListener("touchstart",o,!0),document.addEventListener("click",o),document.addEventListener("keydown",c,!0),s.workspace.on("active-leaf-change",i)}var z=new WeakMap,A=class extends g.Plugin{onload(){return b(this,null,function*(){yield this.loadSettings();let e=this;this.registerSettingsTab(),this.register(S(this.app.viewRegistry.constructor.prototype,{registerView(s){return function(n,r,...a){return e.app.workspace.trigger("view-registered",n,r),s.call(this,n,r,...a)}}}));let t;if(!this.app.workspace.layoutReady){let s=this.app.workspace.on("view-registered",(r,a)=>{if(r!=="search")return;this.app.workspace.offref(s);let i=new g.WorkspaceLeaf(e.app),o=a(i);e.patchNativeSearch(o);let c=S(g.Modal.prototype,{open(p){return function(...u){e.SearchResultsExport=this.constructor}}});o.onCopyResultsClick(new MouseEvent(null)),c()}),n=this.app.workspace.on("view-registered",(r,a)=>{if(r!=="backlink")return;this.app.workspace.offref(n);let i=new g.WorkspaceLeaf(e.app),o=a(i);e.SearchHeaderDOM=o.backlink.headerDom.constructor})}this.register(t=S(g.Component.prototype,{addChild(s){return function(n,...r){try{if(!e.isSearchPatched&&n instanceof g.Component&&n.hasOwnProperty("searchQuery")&&n.hasOwnProperty("sourcePath")&&n.hasOwnProperty("dom")){let i=n;e.patchSearchView(i),e.isSearchPatched=!0}if(n instanceof g.Component&&n.hasOwnProperty("backlinkDom")){let i=n;z.set(i.backlinkDom.el.closest(".backlink-pane"),n),e.isBacklinksPatched||(e.patchBacklinksView(i),e.isBacklinksPatched=!0)}}catch(i){console.error("Error in Component.addChild around patch:",i)}return s.call(this,n,...r)}}}))})}loadSettings(){return b(this,null,function*(){this.settings=Object.assign({},$,yield this.loadData())})}saveSettings(){return b(this,null,function*(){yield this.saveData(this.settings)})}registerSettingsTab(){this.settingsTab=new L(this.app,this),this.addSettingTab(this.settingsTab)}getSearchHeader(){var s,n,r;let e=(s=this.app.workspace.getLeavesOfType("backlink"))==null?void 0:s.first();e==null||e.loadIfDeferred();let t=(r=(n=e==null?void 0:e.view)==null?void 0:n.backlink)==null?void 0:r.headerDom;return t==null?void 0:t.constructor}onunload(){let e="Query Control: Please restart Obsidian to complete plugin unload.";console.log(e),new g.Notice(e)}patchNativeSearch(e){let t=this;this.register(S(e.constructor.prototype,{onResize(s){return function(...n){var a;let r=(a=this.dom.vChildren)==null?void 0:a._children;return this.dom.el.clientWidth===0?(r.forEach(i=>{i.setCollapse(!0,!1)}),this.dom.hidden=!0):this.dom.hidden&&(this.dom.hidden=!1,setTimeout(()=>{r.forEach(i=>{i.setCollapse(this.dom.collapseAll,!1)})},100)),s.call(this,...n)}},stopSearch(s){return function(...n){let r=s.call(this,...n);return this.renderComponent&&(this.renderComponent.unload(),this.renderComponent=new g.Component),r}},addChild(s){return function(...n){var a;try{if(!this.patched){this.renderComponent||(this.renderComponent=new g.Component,this.renderComponent.load()),this.patched=!0,this.dom.parent=this,t.patchSearchResultDOM(this.dom.constructor),this.setRenderMarkdown=function(o){var p,u;let c=(p=this.dom.vChildren)==null?void 0:p._children;this.dom.renderMarkdown=o,c.forEach(y=>{y.renderContentMatches()}),this.dom.infinityScroll.invalidateAll(),this.dom.childrenEl.toggleClass("cm-preview-code-block",o),this.dom.childrenEl.toggleClass("is-rendered",o),(u=this.renderMarkdownButtonEl)==null||u.toggleClass("is-active",o)},this.renderMarkdownButtonEl=(a=this.headerDom)==null?void 0:a.addNavButton("reading-glasses","Render Markdown",()=>this.setRenderMarkdown(!this.dom.renderMarkdown));let i={renderMarkdown:t.settings.defaultRenderMarkdown};this.settings||(this.settings={}),Object.entries(i).forEach(([o,c])=>{this.settings.hasOwnProperty(o)?o==="sort"&&!O.hasOwnProperty(this.settings.sort)&&(this.settings[o]=c):this.settings[o]=c}),this.setRenderMarkdown(this.settings.renderMarkdown)}}catch(i){console.error("Error in searchView.addChild around patch:",i)}return s.call(this,...n)}}}))}patchSearchResultDOM(e){let t=this,s=S(e.prototype,{addResult(n){return function(...r){s();let a=n.call(this,...r),i=a.constructor;return t.isSearchResultItemPatched||t.patchSearchResultItem(i),a}}});this.register(s),this.register(S(e.prototype,{startLoader(n){return function(...r){var i,o,c,p,u,y;try{let x=this.el.closest(".backlink-pane");if(x){let k=z.get(x);k&&(k.patched||te(this,t,k))}if(!((o=(i=this.parent)==null?void 0:i.searchParamsContainerEl)!=null&&o.patched)&&((p=(c=this.el)==null?void 0:c.parentElement)==null?void 0:p.getAttribute("data-type"))==="search"){if(!this.parent)return;this.parent.searchParamsContainerEl.patched=!0,new g.Setting(this.parent.searchParamsContainerEl).setName("Render Markdown").setClass("mod-toggle").addToggle(k=>{k.setValue(t.settings.defaultRenderMarkdown),k.onChange(v=>{var P;this.renderMarkdown=v,((P=this.vChildren)==null?void 0:P._children).forEach(d=>{d.renderContentMatches()}),this.infinityScroll.invalidateAll(),this.childrenEl.toggleClass("cm-preview-code-block",v),this.childrenEl.toggleClass("is-rendered",v)})})}if(!this.patched&&((u=this.el.parentElement)==null?void 0:u.hasClass("internal-query"))){let k=t.SearchHeaderDOM?t.SearchHeaderDOM:t.getSearchHeader();if(!k){console.error("Error: _SearchHeaderDOM is undefined. Cannot create headerDom.");return}if((y=this.el)!=null&&y.closest(".internal-query")){this.patched=!0;let v=this.el.parentElement.querySelector(".internal-query-header");this.setExtraContext=function(d){var C;let w=(C=this.vChildren)==null?void 0:C._children;this.extraContext=d,this.extraContextButtonEl.toggleClass("is-active",d),w.forEach(f=>{f.setExtraContext(d)}),this.infinityScroll.invalidateAll()},this.setTitleDisplay=function(d){this.showTitle=d,this.showTitleButtonEl.toggleClass("is-active",d),v.toggleClass("is-hidden",d)},this.setResultsDisplay=function(d){this.showResults=d,this.showResultsButtonEl.toggleClass("is-active",d),this.el.toggleClass("is-hidden",d)},this.setRenderMarkdown=function(d){var C;this.renderMarkdown=d,((C=this.vChildren)==null?void 0:C._children).forEach(f=>{f.renderContentMatches()}),this.infinityScroll.invalidateAll(),this.childrenEl.toggleClass("cm-preview-code-block",d),this.childrenEl.toggleClass("is-rendered",d),this.renderMarkdownButtonEl.toggleClass("is-active",d)},this.setCollapseAll=function(d){var C;let w=(C=this.vChildren)==null?void 0:C._children;this.collapseAllButtonEl.toggleClass("is-active",d),this.collapseAll=d,w.forEach(f=>{f.setCollapse(d,!1)}),this.infinityScroll.invalidateAll()},this.setSortOrder=d=>{this.sortOrder=d,this.changed(),this.infinityScroll.invalidateAll()},this.onCopyResultsClick=d=>b(this,null,function*(){var _,B;d.preventDefault();let w=[],C=(_=this.vChildren)==null?void 0:_._children;for(let D of C){let Q=D.file.path,V="",j=(B=D.vChildren)==null?void 0:B._children;for(let N of j){let W=N.parent.content.substring(N.start,N.end);V+=W+` -`}w.push(`## ${Q} -${V}`)}let f=w.join(` -`);try{yield navigator.clipboard.writeText(f),new g.Notice("Search results copied to clipboard.")}catch(D){console.error("Failed to copy search results:",D),new g.Notice("Failed to copy search results.")}});let E=this.headerDom=new k(this.app,this.el.parentElement);v.insertAdjacentElement("afterend",E.navHeaderEl),this.collapseAllButtonEl=E.addNavButton("bullet-list",M("plugins.search.label-collapse-results"),d=>(d.stopPropagation(),this.setCollapseAll(!this.collapseAll))),this.extraContextButtonEl=E.addNavButton("expand-vertically",M("plugins.search.label-more-context"),d=>(d.stopPropagation(),this.setExtraContext(!this.extraContext))),this.showSortButtonEl=E.addNavButton("arrow-up-narrow-wide","Sort",d=>{d.stopPropagation();let w=O.map(f=>f.key),C=f=>{if(w.includes(f)){this.sortOrder=f;let B=`Sort (${O.find(D=>D.key===f).label})`;this.showSortButtonEl.setAttribute("aria-label",B),this.setSortOrder(f)}else console.error(`Invalid sort option: ${f}`)};F(O,this.showSortButtonEl,C,this.sortOrder,this.app)}),this.showTitleButtonEl=E.addNavButton("strikethrough-glyph","Hide title",d=>(d.stopPropagation(),this.setTitleDisplay(!this.showTitle))),this.showResultsButtonEl=E.addNavButton("minus-with-circle","Hide results",d=>(d.stopPropagation(),this.setResultsDisplay(!this.showResults))),this.renderMarkdownButtonEl=E.addNavButton("reading-glasses","Render Markdown",d=>(d.stopPropagation(),this.setRenderMarkdown(!this.renderMarkdown))),E.addNavButton("documents","Copy results",this.onCopyResultsClick.bind(this));let P={title:t.settings.defaultHideResults,collapsed:t.settings.defaultCollapse,context:t.settings.defaultShowContext,hideTitle:t.settings.defaultHideTitle,hideResults:t.settings.defaultHideResults,renderMarkdown:t.settings.defaultRenderMarkdown,sort:t.settings.defaultSortOrder};this.settings||(this.settings={}),Object.entries(P).forEach(([d,w])=>{this.settings.hasOwnProperty(d)?d==="sort"&&!O.hasOwnProperty(this.settings.sort)&&(this.settings[d]=w):this.settings[d]=w}),this.setExtraContext(this.settings.context),this.sortOrder=this.settings.sort,this.setCollapseAll(this.settings.collapsed),this.setTitleDisplay(this.settings.hideTitle),this.setRenderMarkdown(this.settings.renderMarkdown),this.setResultsDisplay(this.settings.hideResults)}}}catch(x){console.error("Error in SearchResultDOM.startLoader around patch:",x)}return n.call(this,...r)}}}))}patchSearchResultItem(e){this.isSearchResultItemPatched=!0;let t=this,s=S(e.prototype,{onResultClick(n){return function(r,a,...i){if(!(r.target instanceof HTMLElement&&(r.target.hasClass("internal-link")||r.target.hasClass("task-list-item-checkbox")||r.target.hasClass("admonition-title-content"))))return n.call(this,r,a,...i)}},renderContentMatches(n){return function(...r){var o;let a=n.call(this,...r),i=(o=this.vChildren)==null?void 0:o._children;if(!t.isSearchResultItemMatchPatched&&i.length){let c=i.first().constructor;t.patchSearchResultItemMatch(c)}return a}}});t.register(s)}patchSearchResultItemMatch(e){this.isSearchResultItemMatchPatched=!0;let t=this;t.register(S(e.prototype,{render(s){return function(...n){var c;let r=this.parentDom,a=r.content.substring(this.start,this.end).replace("```query","\\`\\`\\`query"),i=(c=a.match(/^\s+/g))==null?void 0:c.first();i&&(a=a.replace(new RegExp(`^${i}`,"gm"),""));let o=r.parent.parent;if(o&&r.parent.renderMarkdown){let p=o==null?void 0:o.renderComponent;this.el.empty();let u=new H(t.app,this.el,this);u.onRenderComplete=()=>{var y;(y=r==null?void 0:r.parent)==null||y.infinityScroll.measure(r,this)},p.addChild(u),u.renderer.set(a)}else return s.call(this,...n)}}}))}patchSearchView(e){let t=e.constructor,s=e.dom.constructor;this.register(S(t.prototype,{onunload(n){return function(...r){return this.renderComponent&&(this.renderComponent.unload(),this.dom=null,this.queue=null,this.renderComponent=null,this._children=null,this.containerEl=null),n.call(this,...r)}},onload(n){return function(...r){try{this.renderComponent||(this.renderComponent=new g.Component,this.renderComponent.load()),this.dom.parent=this;let i=this.containerEl.parentElement.querySelector(".internal-query-header"),o=this.query.matchAll(new RegExp("^(?collapsed|context|hideTitle|renderMarkdown|hideResults|sort|title):\\s*(?.+?)$","gm")),c={};for(let p of o){let u=p.groups.value.toLowerCase();(u==="true"||u==="false")&&(p.groups.value=u==="true"),c[p.groups.key]=p.groups.value}this.query=this.query.replace(/^((collapsed|context|hideTitle|renderMarkdown|hideResults|sort|title):.+?)$/gm,"").trim(),i.setText(c.title||this.query),this.dom.settings=c}catch(i){console.error("Error in EmbeddedSearch.onload:",i)}return n.call(this,...r)}}})),this.patchSearchResultDOM(s)}patchBacklinksView(e){let t=e.constructor,s=e.backlinkDom.constructor;this.register(S(t.prototype,{onunload(n){return function(...r){return this.renderComponent&&(this.renderComponent.unload(),this.dom=null,this.queue=null,this.renderComponent=null,this._children=null,this.containerEl=null),n.call(this,...r)}},onload(n){return function(...r){try{this.renderComponent||(this.renderComponent=new g.Component,this.renderComponent.load()),this.dom||(console.warn("Backlink `dom` is undefined. Initializing default properties."),this.dom={}),this.backlinkDom.parent=this,this.unlinkedDom.parent=this,this.dom.settings=this.dom.settings||{}}catch(a){console.error("Error in Backlink.onload:",a)}return n.call(this,...r)}}})),this.patchSearchResultDOM(s)}};function te(l,h,e){if(e){e.patched=!0,l.setRenderMarkdown=function(s){[e.backlinkDom,e.unlinkedDom].forEach(r=>{var i;r.renderMarkdown=s,((i=r.vChildren)==null?void 0:i._children).forEach(o=>{o.renderContentMatches()}),r.infinityScroll.invalidateAll(),r.childrenEl.toggleClass("cm-preview-code-block",s),r.childrenEl.toggleClass("is-rendered",s)}),this.renderMarkdownButtonEl.toggleClass("is-active",s)},l.onCopyResultsClick=s=>b(this,null,function*(){var i,o;s.stopPropagation(),s.preventDefault();let n=[],r=[e.backlinkDom,e.unlinkedDom];for(let c of r){let p=(i=c.vChildren)==null?void 0:i._children;for(let u of p){let y=u.file.path,x="",k=(o=u.vChildren)==null?void 0:o._children;for(let v of k){let E=v.parent.content.substring(v.start,v.end);x+=E+` -`}n.push(`## ${y} -${x}`)}}let a=n.join(` -`);try{yield navigator.clipboard.writeText(a)}catch(c){console.error("Failed to copy backlinks:",c),new g.Notice("Failed to copy backlinks.")}}),l.renderMarkdownButtonEl=e.headerDom.addNavButton("reading-glasses","Render Markdown",s=>(s.stopPropagation(),l.setRenderMarkdown(!l.renderMarkdown))),e.headerDom.addNavButton("documents","Copy results",l.onCopyResultsClick.bind(l));let t={title:h.settings.defaultHideResults,collapsed:h.settings.defaultCollapse,context:h.settings.defaultShowContext,hideTitle:h.settings.defaultHideTitle,hideResults:h.settings.defaultHideResults,renderMarkdown:h.settings.defaultRenderMarkdown,sort:h.settings.defaultSortOrder};l.settings||(l.settings={}),Object.entries(t).forEach(([s,n])=>{l.settings.hasOwnProperty(s)?s==="sort"&&!O.hasOwnProperty(l.settings.sort)&&(l.settings[s]=n):l.settings[s]=n}),e.setExtraContext(l.settings.context),e.sortOrder=l.settings.sort,e.setCollapseAll(l.settings.collapsed),l.setRenderMarkdown(l.settings.renderMarkdown)}} +var N=Object.defineProperty;var K=Object.getOwnPropertyDescriptor;var G=Object.getOwnPropertyNames;var U=Object.prototype.hasOwnProperty;var X=(u,a)=>{for(var s in a)N(u,s,{get:a[s],enumerable:!0})},J=(u,a,s,t)=>{if(a&&typeof a=="object"||typeof a=="function")for(let e of G(a))!U.call(u,e)&&e!==s&&N(u,e,{get:()=>a[e],enumerable:!(t=K(a,e))||t.enumerable});return u};var Z=u=>J(N({},"__esModule",{value:!0}),u);var R=(u,a,s)=>new Promise((t,e)=>{var n=o=>{try{r(s.next(o))}catch(l){e(l)}},i=o=>{try{r(s.throw(o))}catch(l){e(l)}},r=o=>o.done?t(o.value):Promise.resolve(o.value).then(n,i);r((s=s.apply(u,a)).next())});var rt={};X(rt,{default:()=>A});module.exports=Z(rt);function v(u,a){let s=Object.keys(a).map(t=>tt(u,t,a[t]));return s.length===1?s[0]:function(){s.forEach(t=>t())}}function tt(u,a,s){let t=u[a],e=u.hasOwnProperty(a),n=e?t:function(){return Object.getPrototypeOf(u)[a].apply(this,arguments)},i=s(n);return t&&Object.setPrototypeOf(i,t),Object.setPrototypeOf(r,i),u[a]=r,o;function r(...l){return i===n&&u[a]===r&&o(),i.apply(this,l)}function o(){u[a]===r&&(e?u[a]=n:delete u[a]),i!==n&&(i=n,Object.setPrototypeOf(r,t||Function))}}var f=require("obsidian");var $=require("obsidian");var P=class extends $.MarkdownRenderer{constructor(s,t,e){super(s,t);this.app=s,this.match=e,this.subpath="",this.indent="",this.filePath=this.match.parentDom.path,this.file=this.match.parentDom.file,this.renderer.previewEl.onNodeInserted(()=>(this.updateOptions(),this.renderer.onResize()))}updateOptions(){let s=this.app.vault.getConfig("readableLineLength");this.renderer.previewEl.toggleClass("is-readable-line-width",s);let t=this.app.vault.getConfig("foldHeading");this.renderer.previewEl.toggleClass("allow-fold-headings",t);let e=this.app.vault.getConfig("foldIndent");this.renderer.previewEl.toggleClass("allow-fold-lists",e),this.renderer.previewEl.toggleClass("rtl",this.app.vault.getConfig("rightToLeft")),t||this.renderer.unfoldAllHeadings(),e||this.renderer.unfoldAllLists(),this.renderer.previewEl.toggleClass("show-frontmatter",this.app.vault.getConfig("showFrontmatter"));let n=this.app.vault.getConfig("tabSize");this.renderer.previewEl.style.setProperty("--tab-size",`${n}px`),this.renderer.rerender()}onRenderComplete(){}getFile(){return this.match.parent.file}edit(s){return R(this,null,function*(){var l;this.renderer.set(s);let t=yield this.app.vault.cachedRead(this.file),n=(l=t.slice(this.match.start,this.match.end).match(/^\s+/g))==null?void 0:l.first();n&&(s=s.replace(/^/gm,n));let i=t.slice(0,this.match.start),r=t.slice(this.match.end,this.match.parent.content.length),o=i+s+r;yield this.app.vault.modify(this.file,o)})}};var V=require("obsidian");var x=i18next.t.bind(i18next);var H={defaultCollapse:!1,defaultShowContext:!1,defaultHideTitle:!1,defaultHideResults:!1,defaultRenderMarkdown:!1,defaultSortOrder:"alphabetical",controlVisibility:{collapseAll:"visible",extraContext:"visible",sort:"visible",hideTitle:"visible",hideResults:"visible",renderMarkdown:"visible",copyResults:"visible"}},D=[{key:"alphabetical",label:x("plugins.file-explorer.label-sort-a-to-z")},{key:"alphabeticalReverse",label:x("plugins.file-explorer.label-sort-z-to-a")},{key:"byModifiedTime",label:x("plugins.file-explorer.label-sort-new-to-old")},{key:"byModifiedTimeReverse",label:x("plugins.file-explorer.label-sort-old-to-new")},{key:"byCreatedTime",label:x("plugins.file-explorer.label-sort-created-new-to-old")},{key:"byCreatedTimeReverse",label:x("plugins.file-explorer.label-sort-created-old-to-new")}],et=u=>u.reduce((a,s)=>(a[s.key]=s.label,a),{}),st={visible:"Visible",hidden:"Hidden"},nt=["visible","hidden"],j={collapseAll:"Collapse results toggle",extraContext:"More context toggle",sort:"Sort menu",hideTitle:"Hide title toggle",hideResults:"Hide results toggle",renderMarkdown:"Render markdown toggle",copyResults:"Copy results button"},L=class extends V.PluginSettingTab{constructor(s,t){super(s,t);this.plugin=t}hide(){}display(){let{containerEl:s}=this;s.empty(),new V.Setting(s).setName("Collapse query results by default").addToggle(e=>e.setValue(this.plugin.settings.defaultCollapse).onChange(n=>{this.plugin.settings.defaultCollapse=n,this.plugin.saveSettings()})),new V.Setting(s).setName("Show additional query result context by default").addToggle(e=>e.setValue(this.plugin.settings.defaultShowContext).onChange(n=>{this.plugin.settings.defaultShowContext=n,this.plugin.saveSettings()})),new V.Setting(s).setName("Hide query title by default").addToggle(e=>e.setValue(this.plugin.settings.defaultHideTitle).onChange(n=>{this.plugin.settings.defaultHideTitle=n,this.plugin.saveSettings()})),new V.Setting(s).setName("Hide query results by default").addToggle(e=>e.setValue(this.plugin.settings.defaultHideResults).onChange(n=>{this.plugin.settings.defaultHideResults=n,this.plugin.saveSettings()})),new V.Setting(s).setName("Render results as Markdown by default").addToggle(e=>e.setValue(this.plugin.settings.defaultRenderMarkdown).onChange(n=>{this.plugin.settings.defaultRenderMarkdown=n,this.plugin.saveSettings()})),new V.Setting(s).setName("Default query result sort order").addDropdown(e=>{e.addOptions(et(D)),e.setValue(this.plugin.settings.defaultSortOrder),e.onChange(n=>R(this,null,function*(){this.plugin.settings.defaultSortOrder=n,yield this.plugin.saveSettings()}))}),s.createEl("h2",{text:"Control visibility"});let t={collapseAll:"Choose whether the Collapse Results toolbar control is shown.",extraContext:"Choose whether the More Context toolbar control is shown.",sort:"Choose whether the Sort toolbar control is shown.",hideTitle:"Choose whether the Hide Title toolbar control is shown.",hideResults:"Choose whether the Hide Results toolbar control is shown.",renderMarkdown:"Choose whether the Render Markdown toolbar control is shown.",copyResults:"Choose whether the Copy Results toolbar control is shown."};Object.keys(j).forEach(e=>{let n=nt.reduce((i,r)=>(i[r]=st[r],i),{});new V.Setting(s).setName(j[e]).setDesc(`${t[e]} Hidden keeps the control's current state but removes the toolbar button.`).addDropdown(i=>{i.addOptions(n),i.setValue(this.plugin.settings.controlVisibility[e]),i.onChange(r=>R(this,null,function*(){this.plugin.settings.controlVisibility[e]=r,this.plugin.refreshControlVisibility(),yield this.plugin.saveSettings()}))})})}};var k,T;function F(u,a,s,t,e){if(k){T();return}k=document.createElement("div"),k.classList.add("query-control-sort-tooltip");let n=a.getBoundingClientRect(),i=n.bottom+window.scrollY+5,r=n.left+window.scrollX;k.style.setProperty("--tooltip-top",`${i}px`),k.style.setProperty("--tooltip-left",`${r}px`),u.forEach(g=>{let p=document.createElement("div");if(p.classList.add("query-control-sort-option"),p.textContent=g.label,g.key===t){p.setAttribute("aria-current","true");let h=document.createElement("span");h.textContent="\u2713",h.classList.add("query-control-sort-option-checkmark"),p.appendChild(h)}p.addEventListener("click",()=>{s(g.key),T()}),k.appendChild(p)}),document.body.appendChild(k),T=()=>{document.removeEventListener("mousedown",l,!0),document.removeEventListener("touchstart",l,!0),document.removeEventListener("click",l),document.removeEventListener("keydown",c,!0),e.workspace.off("active-leaf-change",o),k.remove(),k=void 0};let o=()=>{k.parentElement&&(k.remove(),T())},l=g=>{!k.contains(g.target)&&!a.contains(g.target)&&(k.remove(),T())},c=g=>{k.remove(),T()};document.addEventListener("mousedown",l,!0),document.addEventListener("touchstart",l,!0),document.addEventListener("click",l),document.addEventListener("keydown",c,!0),e.workspace.on("active-leaf-change",o)}var z=new WeakMap,A=class extends f.Plugin{constructor(){super(...arguments);this.embeddedSearchResultDoms=new Set;this.backlinkControlContexts=new Map}getControlVisibility(s){var t,e,n;return(n=(e=(t=this.settings)==null?void 0:t.controlVisibility)==null?void 0:e[s])!=null?n:H.controlVisibility[s]}isControlVisible(s){return this.getControlVisibility(s)==="visible"}refreshControlVisibility(){var s,t,e,n;for(let i of Array.from(this.embeddedSearchResultDoms)){let r=i;if(!((s=r==null?void 0:r.el)!=null&&s.isConnected)){this.embeddedSearchResultDoms.delete(i);continue}this.applyEmbeddedSearchControlVisibility(r)}for(let[i,r]of Array.from(this.backlinkControlContexts.entries())){let o=i,l=r,c=(e=(t=l==null?void 0:l.headerDom)==null?void 0:t.navHeaderEl)==null?void 0:e.isConnected;if(!((n=o==null?void 0:o.el)!=null&&n.isConnected)||!c){this.backlinkControlContexts.delete(i);continue}this.applyBacklinkControlVisibility(i,r)}}toggleVisibility(s,t){if(!s)return;let e=s;typeof e.toggleClass=="function"?e.toggleClass("is-hidden",!t):s.classList.toggle("is-hidden",!t)}applyEmbeddedSearchControlVisibility(s){let t=s,e=t==null?void 0:t.headerDom;if(!(e!=null&&e.addNavButton))return;let n=(h,M)=>(t[h]||(t[h]=M()),t[h]),i=n("collapseAllButtonEl",()=>e.addNavButton("bullet-list",x("plugins.search.label-collapse-results"),h=>(h.stopPropagation(),t.setCollapseAll(!t.collapseAll))));this.toggleVisibility(i,this.isControlVisible("collapseAll"));let r=n("extraContextButtonEl",()=>e.addNavButton("expand-vertically",x("plugins.search.label-more-context"),h=>(h.stopPropagation(),t.setExtraContext(!t.extraContext))));this.toggleVisibility(r,this.isControlVisible("extraContext"));let o=n("showSortButtonEl",()=>e.addNavButton("arrow-up-narrow-wide","Sort",h=>{var w;h.stopPropagation();let M=D.map(E=>E.key),b=E=>{M.includes(E)?(t.sortOrder=E,t.setSortOrder(E)):console.error(`Invalid sort option: ${E}`)},C=(w=t.showSortButtonEl)!=null?w:h.currentTarget;C&&F(D,C,b,t.sortOrder,this.app)}));this.toggleVisibility(o,this.isControlVisible("sort"));let l=n("showTitleButtonEl",()=>e.addNavButton("strikethrough-glyph","Hide title",h=>(h.stopPropagation(),t.setTitleDisplay(!t.showTitle))));this.toggleVisibility(l,this.isControlVisible("hideTitle"));let c=n("showResultsButtonEl",()=>e.addNavButton("minus-with-circle","Hide results",h=>(h.stopPropagation(),t.setResultsDisplay(!t.showResults))));this.toggleVisibility(c,this.isControlVisible("hideResults"));let g=n("renderMarkdownButtonEl",()=>e.addNavButton("reading-glasses","Render Markdown",h=>(h.stopPropagation(),t.setRenderMarkdown(!t.renderMarkdown))));this.toggleVisibility(g,this.isControlVisible("renderMarkdown"));let p=n("copyResultsButtonEl",()=>e.addNavButton("documents","Copy results",t.onCopyResultsClick?t.onCopyResultsClick.bind(t):()=>{}));this.toggleVisibility(p,this.isControlVisible("copyResults"))}applyBacklinkControlVisibility(s,t){let e=s,n=t,i=n==null?void 0:n.headerDom;if(!(i!=null&&i.addNavButton))return;let r=(c,g)=>(e[c]||(e[c]=g()),e[c]),o=r("renderMarkdownButtonEl",()=>i.addNavButton("reading-glasses","Render Markdown",c=>(c.stopPropagation(),e.setRenderMarkdown(!e.renderMarkdown))));this.toggleVisibility(o,this.isControlVisible("renderMarkdown"));let l=r("copyResultsButtonEl",()=>i.addNavButton("documents","Copy results",e.onCopyResultsClick?e.onCopyResultsClick.bind(e):()=>{}));this.toggleVisibility(l,this.isControlVisible("copyResults"))}onload(){return R(this,null,function*(){yield this.loadSettings();let s=this;this.registerSettingsTab(),this.register(v(this.app.viewRegistry.constructor.prototype,{registerView(e){return function(n,i,...r){return s.app.workspace.trigger("view-registered",n,i),e.call(this,n,i,...r)}}}));let t;if(!this.app.workspace.layoutReady){let e=this.app.workspace.on("view-registered",(i,r)=>{if(i!=="search")return;this.app.workspace.offref(e);let o=new f.WorkspaceLeaf(s.app),l=r(o);s.patchNativeSearch(l);let c=v(f.Modal.prototype,{open(g){return function(...p){s.SearchResultsExport=this.constructor}}});l.onCopyResultsClick(new MouseEvent(null)),c()}),n=this.app.workspace.on("view-registered",(i,r)=>{if(i!=="backlink")return;this.app.workspace.offref(n);let o=new f.WorkspaceLeaf(s.app),l=r(o);s.SearchHeaderDOM=l.backlink.headerDom.constructor})}this.register(t=v(f.Component.prototype,{addChild(e){return function(n,...i){try{if(!s.isSearchPatched&&n instanceof f.Component&&n.hasOwnProperty("searchQuery")&&n.hasOwnProperty("sourcePath")&&n.hasOwnProperty("dom")){let o=n;s.patchSearchView(o),s.isSearchPatched=!0}if(n instanceof f.Component&&n.hasOwnProperty("backlinkDom")){let o=n;z.set(o.backlinkDom.el.closest(".backlink-pane"),n),s.isBacklinksPatched||(s.patchBacklinksView(o),s.isBacklinksPatched=!0)}}catch(o){console.error("Error in Component.addChild around patch:",o)}return e.call(this,n,...i)}}}))})}loadSettings(){return R(this,null,function*(){var t;let s=yield this.loadData();this.settings=Object.assign({},H,s),this.settings.controlVisibility=Object.assign({},H.controlVisibility,(t=s==null?void 0:s.controlVisibility)!=null?t:{}),this.refreshControlVisibility()})}saveSettings(){return R(this,null,function*(){yield this.saveData(this.settings)})}registerSettingsTab(){this.settingsTab=new L(this.app,this),this.addSettingTab(this.settingsTab)}getSearchHeader(){var e,n,i;let s=(e=this.app.workspace.getLeavesOfType("backlink"))==null?void 0:e.first();s==null||s.loadIfDeferred();let t=(i=(n=s==null?void 0:s.view)==null?void 0:n.backlink)==null?void 0:i.headerDom;return t==null?void 0:t.constructor}onunload(){let s="Query Control: Please restart Obsidian to complete plugin unload.";console.log(s),new f.Notice(s)}patchNativeSearch(s){let t=this;this.register(v(s.constructor.prototype,{onResize(e){return function(...n){var r;let i=(r=this.dom.vChildren)==null?void 0:r._children;return this.dom.el.clientWidth===0?(i.forEach(o=>{o.setCollapse(!0,!1)}),this.dom.hidden=!0):this.dom.hidden&&(this.dom.hidden=!1,setTimeout(()=>{i.forEach(o=>{o.setCollapse(this.dom.collapseAll,!1)})},100)),e.call(this,...n)}},stopSearch(e){return function(...n){let i=e.call(this,...n);return this.renderComponent&&(this.renderComponent.unload(),this.renderComponent=new f.Component),i}},addChild(e){return function(...n){var r;try{if(!this.patched){this.renderComponent||(this.renderComponent=new f.Component,this.renderComponent.load()),this.patched=!0,this.dom.parent=this,t.patchSearchResultDOM(this.dom.constructor),this.setRenderMarkdown=function(l){var g,p;let c=(g=this.dom.vChildren)==null?void 0:g._children;this.dom.renderMarkdown=l,c.forEach(h=>{h.renderContentMatches()}),this.dom.infinityScroll.invalidateAll(),this.dom.childrenEl.toggleClass("cm-preview-code-block",l),this.dom.childrenEl.toggleClass("is-rendered",l),(p=this.renderMarkdownButtonEl)==null||p.toggleClass("is-active",l)},this.renderMarkdownButtonEl=(r=this.headerDom)==null?void 0:r.addNavButton("reading-glasses","Render Markdown",()=>this.setRenderMarkdown(!this.dom.renderMarkdown));let o={renderMarkdown:t.settings.defaultRenderMarkdown};this.settings||(this.settings={}),Object.entries(o).forEach(([l,c])=>{this.settings.hasOwnProperty(l)?l==="sort"&&!D.hasOwnProperty(this.settings.sort)&&(this.settings[l]=c):this.settings[l]=c}),this.setRenderMarkdown(this.settings.renderMarkdown)}}catch(o){console.error("Error in searchView.addChild around patch:",o)}return e.call(this,...n)}}}))}patchSearchResultDOM(s){let t=this,e=v(s.prototype,{addResult(n){return function(...i){e();let r=n.call(this,...i),o=r.constructor;return t.isSearchResultItemPatched||t.patchSearchResultItem(o),r}}});this.register(e),this.register(v(s.prototype,{startLoader(n){return function(...i){var o,l,c,g,p,h;try{let M=this.el.closest(".backlink-pane");if(M){let b=z.get(M);b&&(b.patched||it(this,t,b))}if(!((l=(o=this.parent)==null?void 0:o.searchParamsContainerEl)!=null&&l.patched)&&((g=(c=this.el)==null?void 0:c.parentElement)==null?void 0:g.getAttribute("data-type"))==="search"){if(!this.parent)return;this.parent.searchParamsContainerEl.patched=!0,new f.Setting(this.parent.searchParamsContainerEl).setName("Render Markdown").setClass("mod-toggle").addToggle(b=>{b.setValue(t.settings.defaultRenderMarkdown),b.onChange(C=>{var E;this.renderMarkdown=C,((E=this.vChildren)==null?void 0:E._children).forEach(d=>{d.renderContentMatches()}),this.infinityScroll.invalidateAll(),this.childrenEl.toggleClass("cm-preview-code-block",C),this.childrenEl.toggleClass("is-rendered",C)})})}if(!this.patched&&((p=this.el.parentElement)==null?void 0:p.hasClass("internal-query"))){let b=t.SearchHeaderDOM?t.SearchHeaderDOM:t.getSearchHeader();if(!b){console.error("Error: _SearchHeaderDOM is undefined. Cannot create headerDom.");return}if((h=this.el)!=null&&h.closest(".internal-query")){this.patched=!0;let C=this.el.parentElement.querySelector(".internal-query-header");this.setExtraContext=function(d){var m,S;let y=(m=this.vChildren)==null?void 0:m._children;this.extraContext=d,(S=this.extraContextButtonEl)==null||S.toggleClass("is-active",d),y.forEach(O=>{O.setExtraContext(d)}),this.infinityScroll.invalidateAll()},this.setTitleDisplay=function(d){var y;this.showTitle=d,(y=this.showTitleButtonEl)==null||y.toggleClass("is-active",d),C==null||C.toggleClass("is-hidden",d)},this.setResultsDisplay=function(d){var y;this.showResults=d,(y=this.showResultsButtonEl)==null||y.toggleClass("is-active",d),this.el.toggleClass("is-hidden",d)},this.setRenderMarkdown=function(d){var m,S;this.renderMarkdown=d,((m=this.vChildren)==null?void 0:m._children).forEach(O=>{O.renderContentMatches()}),this.infinityScroll.invalidateAll(),this.childrenEl.toggleClass("cm-preview-code-block",d),this.childrenEl.toggleClass("is-rendered",d),(S=this.renderMarkdownButtonEl)==null||S.toggleClass("is-active",d)},this.setCollapseAll=function(d){var m,S;let y=(m=this.vChildren)==null?void 0:m._children;(S=this.collapseAllButtonEl)==null||S.toggleClass("is-active",d),this.collapseAll=d,y.forEach(O=>{O.setCollapse(d,!1)}),this.infinityScroll.invalidateAll()},this.setSortOrder=d=>{var y,m,S;this.sortOrder=d,this.changed(),this.infinityScroll.invalidateAll(),(S=this.showSortButtonEl)==null||S.setAttribute("aria-label",`Sort (${(m=(y=D.find(O=>O.key===d))==null?void 0:y.label)!=null?m:d})`)},this.onCopyResultsClick=d=>R(this,null,function*(){var O,I;d.preventDefault();let y=[],m=(O=this.vChildren)==null?void 0:O._children;for(let B of m){let Q=B.file.path,q="",W=(I=B.vChildren)==null?void 0:I._children;for(let _ of W){let Y=_.parent.content.substring(_.start,_.end);q+=Y+` +`}y.push(`## ${Q} +${q}`)}let S=y.join(` +`);try{yield navigator.clipboard.writeText(S),new f.Notice("Search results copied to clipboard.")}catch(B){console.error("Failed to copy search results:",B),new f.Notice("Failed to copy search results.")}}),this.headerDom=new b(this.app,this.el.parentElement),C==null||C.insertAdjacentElement("afterend",this.headerDom.navHeaderEl),t.embeddedSearchResultDoms.add(this),t.applyEmbeddedSearchControlVisibility(this);let w={};w.collapsed=t.settings.defaultCollapse,w.context=t.settings.defaultShowContext,w.hideTitle=t.settings.defaultHideTitle,w.hideResults=t.settings.defaultHideResults,w.renderMarkdown=t.settings.defaultRenderMarkdown,w.sort=t.settings.defaultSortOrder,this.settings||(this.settings={}),Object.entries(w).forEach(([d,y])=>{Object.prototype.hasOwnProperty.call(this.settings,d)?d==="sort"&&typeof this.settings.sort=="string"&&!D.some(m=>m.key===this.settings.sort)&&(this.settings[d]=y):this.settings[d]=y});let E=d=>Object.prototype.hasOwnProperty.call(this.settings,d);typeof this.settings.context=="boolean"&&this.setExtraContext(this.settings.context),typeof this.settings.sort=="string"&&(this.sortOrder=this.settings.sort,this.setSortOrder(this.settings.sort)),typeof this.settings.collapsed=="boolean"&&this.setCollapseAll(this.settings.collapsed),typeof this.settings.hideTitle=="boolean"&&this.setTitleDisplay(this.settings.hideTitle),typeof this.settings.renderMarkdown=="boolean"&&this.setRenderMarkdown(this.settings.renderMarkdown),typeof this.settings.hideResults=="boolean"&&this.setResultsDisplay(this.settings.hideResults)}}}catch(M){console.error("Error in SearchResultDOM.startLoader around patch:",M)}return n.call(this,...i)}}}))}patchSearchResultItem(s){this.isSearchResultItemPatched=!0;let t=this,e=v(s.prototype,{onResultClick(n){return function(i,r,...o){if(!(i.target instanceof HTMLElement&&(i.target.hasClass("internal-link")||i.target.hasClass("task-list-item-checkbox")||i.target.hasClass("admonition-title-content"))))return n.call(this,i,r,...o)}},renderContentMatches(n){return function(...i){var l;let r=n.call(this,...i),o=(l=this.vChildren)==null?void 0:l._children;if(!t.isSearchResultItemMatchPatched&&o.length){let c=o.first().constructor;t.patchSearchResultItemMatch(c)}return r}}});t.register(e)}patchSearchResultItemMatch(s){this.isSearchResultItemMatchPatched=!0;let t=this;t.register(v(s.prototype,{render(e){return function(...n){var c;let i=this.parentDom,r=i.content.substring(this.start,this.end).replace("```query","\\`\\`\\`query"),o=(c=r.match(/^\s+/g))==null?void 0:c.first();o&&(r=r.replace(new RegExp(`^${o}`,"gm"),""));let l=i.parent.parent;if(l&&i.parent.renderMarkdown){let g=l==null?void 0:l.renderComponent;this.el.empty();let p=new P(t.app,this.el,this);p.onRenderComplete=()=>{var h;(h=i==null?void 0:i.parent)==null||h.infinityScroll.measure(i,this)},g.addChild(p),p.renderer.set(r)}else return e.call(this,...n)}}}))}patchSearchView(s){let t=this,e=s.constructor,n=s.dom.constructor;this.register(v(e.prototype,{onunload(i){return function(...r){return this.dom&&t.embeddedSearchResultDoms.delete(this.dom),this.renderComponent&&(this.renderComponent.unload(),this.dom=null,this.queue=null,this.renderComponent=null,this._children=null,this.containerEl=null),i.call(this,...r)}},onload(i){return function(...r){try{this.renderComponent||(this.renderComponent=new f.Component,this.renderComponent.load()),this.dom.parent=this;let l=this.containerEl.parentElement.querySelector(".internal-query-header"),c=this.query.matchAll(new RegExp("^(?collapsed|context|hideTitle|renderMarkdown|hideResults|sort|title):\\s*(?.+?)$","gm")),g={};for(let p of c){let h=p.groups.value.toLowerCase();(h==="true"||h==="false")&&(p.groups.value=h==="true"),g[p.groups.key]=p.groups.value}this.query=this.query.replace(/^((collapsed|context|hideTitle|renderMarkdown|hideResults|sort|title):.+?)$/gm,"").trim(),l.setText(g.title||this.query),this.dom.settings=g}catch(l){console.error("Error in EmbeddedSearch.onload:",l)}return i.call(this,...r)}}})),this.patchSearchResultDOM(n)}patchBacklinksView(s){let t=this,e=s.constructor,n=s.backlinkDom.constructor;this.register(v(e.prototype,{onunload(i){return function(...r){return this.backlinkDom&&t.backlinkControlContexts.delete(this.backlinkDom),this.unlinkedDom&&t.backlinkControlContexts.delete(this.unlinkedDom),this.renderComponent&&(this.renderComponent.unload(),this.dom=null,this.queue=null,this.renderComponent=null,this._children=null,this.containerEl=null),i.call(this,...r)}},onload(i){return function(...r){try{this.renderComponent||(this.renderComponent=new f.Component,this.renderComponent.load()),this.dom||(console.warn("Backlink `dom` is undefined. Initializing default properties."),this.dom={}),this.backlinkDom.parent=this,this.unlinkedDom.parent=this,this.dom.settings=this.dom.settings||{}}catch(o){console.error("Error in Backlink.onload:",o)}return i.call(this,...r)}}})),this.patchSearchResultDOM(n)}};function it(u,a,s){if(s){let t=s,e=u;t.patched=!0,e.setRenderMarkdown=function(r){var l;[t.backlinkDom,t.unlinkedDom].forEach(c=>{var p;c.renderMarkdown=r,((p=c.vChildren)==null?void 0:p._children).forEach(h=>{h.renderContentMatches()}),c.infinityScroll.invalidateAll(),c.childrenEl.toggleClass("cm-preview-code-block",r),c.childrenEl.toggleClass("is-rendered",r)}),(l=this.renderMarkdownButtonEl)==null||l.toggleClass("is-active",r)},e.onCopyResultsClick=r=>R(this,null,function*(){var g,p;r.stopPropagation(),r.preventDefault();let o=[],l=[t.backlinkDom,t.unlinkedDom];for(let h of l){let M=(g=h.vChildren)==null?void 0:g._children;for(let b of M){let C=b.file.path,w="",E=(p=b.vChildren)==null?void 0:p._children;for(let d of E){let y=d.parent.content.substring(d.start,d.end);w+=y+` +`}o.push(`## ${C} +${w}`)}}let c=o.join(` +`);try{yield navigator.clipboard.writeText(c)}catch(h){console.error("Failed to copy backlinks:",h),new f.Notice("Failed to copy backlinks.")}}),a.backlinkControlContexts.set(u,s),a.applyBacklinkControlVisibility(u,s);let n={};n.collapsed=a.settings.defaultCollapse,n.context=a.settings.defaultShowContext,n.renderMarkdown=a.settings.defaultRenderMarkdown,n.sort=a.settings.defaultSortOrder,e.settings||(e.settings={}),Object.entries(n).forEach(([r,o])=>{Object.prototype.hasOwnProperty.call(e.settings,r)?r==="sort"&&typeof e.settings.sort=="string"&&!D.some(l=>l.key===e.settings.sort)&&(e.settings[r]=o):e.settings[r]=o});let i=r=>Object.prototype.hasOwnProperty.call(e.settings,r);typeof e.settings.context=="boolean"&&t.setExtraContext(e.settings.context),typeof e.settings.sort=="string"&&(t.sortOrder=e.settings.sort),typeof e.settings.collapsed=="boolean"&&t.setCollapseAll(e.settings.collapsed),typeof e.settings.renderMarkdown=="boolean"&&e.setRenderMarkdown(e.settings.renderMarkdown)}} diff --git a/.obsidian/plugins/query-control/manifest.json b/.obsidian/plugins/query-control/manifest.json index f0e88bd..66d24cb 100644 --- a/.obsidian/plugins/query-control/manifest.json +++ b/.obsidian/plugins/query-control/manifest.json @@ -1 +1 @@ -{"id":"query-control","name":"Query Control","version":"0.7.13","minAppVersion":"1.7.2","description":"An experimental Obsidian plugin that adds additional control to queries","author":"NothingIsLost & reply2za","authorUrl":"https://github.com/reply2za","isDesktopOnly":false} \ No newline at end of file +{"id":"query-control","name":"Query Control","version":"0.8.0","minAppVersion":"1.7.2","description":"An experimental Obsidian plugin that adds additional control to queries","author":"NothingIsLost & reply2za","authorUrl":"https://github.com/reply2za","isDesktopOnly":false} \ No newline at end of file diff --git a/.obsidian/plugins/query-control/styles.css b/.obsidian/plugins/query-control/styles.css index 9fce74e..77e85ec 100644 --- a/.obsidian/plugins/query-control/styles.css +++ b/.obsidian/plugins/query-control/styles.css @@ -7,6 +7,40 @@ justify-content: center; /* works around issues with minimal theme */ } +.workspace-leaf-content[data-type="markdown"] .internal-query .internal-query-header { + display: flex; + flex-direction: column; + justify-content: center; + align-items: center; + gap: 0.25em; + padding: 0.6em 0.9em; + margin: 0.4em auto 0.8em; + max-width: 90%; + text-align: center; + border-radius: var(--radius-m, 10px); + background-color: var(--background-secondary, rgba(0, 0, 0, 0.05)); + border: 1px solid var(--background-modifier-border, rgba(0, 0, 0, 0.08)); + box-shadow: 0 5px 16px -12px var(--shadow-s, rgba(0, 0, 0, 0.4)); + font-size: var(--font-ui-medium, 1.02em); + font-weight: 600; + letter-spacing: 0.013em; + line-height: 1.32; +} + +.workspace-leaf-content[data-type="markdown"] .internal-query .internal-query-header::after { + content: ""; + display: block; + width: 68px; + height: 2.3px; + border-radius: 999px; + background: linear-gradient( + 90deg, + var(--interactive-accent, #7f6df2) 0%, + var(--text-highlight-bg, rgba(255, 215, 0, 0.9)) 100% + ); + opacity: 0.88; +} + .workspace-leaf-content[data-type="markdown"] .internal-query .is-hidden { display: none; }