/* THIS IS A GENERATED/BUNDLED FILE BY ESBUILD see https://github.com/BambusControl/obsidian-unicode-search for the source */ "use strict";var $t=Object.create;var Fe=Object.defineProperty,Zt=Object.defineProperties,Qt=Object.getOwnPropertyDescriptor,Yt=Object.getOwnPropertyDescriptors,jt=Object.getOwnPropertyNames,ut=Object.getOwnPropertySymbols,mt=Object.getPrototypeOf,vt=Object.prototype.hasOwnProperty,Xt=Object.prototype.propertyIsEnumerable,er=Reflect.get;var ht=(t,e,r)=>e in t?Fe(t,e,{enumerable:!0,configurable:!0,writable:!0,value:r}):t[e]=r,m=(t,e)=>{for(var r in e||(e={}))vt.call(e,r)&&ht(t,r,e[r]);if(ut)for(var r of ut(e))Xt.call(e,r)&&ht(t,r,e[r]);return t},b=(t,e)=>Zt(t,Yt(e));var tr=(t,e)=>()=>{try{return e||t((e={exports:{}}).exports,e),e.exports}catch(r){throw e=0,r}},rr=(t,e)=>{for(var r in e)Fe(t,r,{get:e[r],enumerable:!0})},ft=(t,e,r,a)=>{if(e&&typeof e=="object"||typeof e=="function")for(let i of jt(e))!vt.call(t,i)&&i!==r&&Fe(t,i,{get:()=>e[i],enumerable:!(a=Qt(e,i))||a.enumerable});return t};var ar=(t,e,r)=>(r=t!=null?$t(mt(t)):{},ft(e||!t||!t.__esModule?Fe(r,"default",{value:t,enumerable:!0}):r,t)),ir=t=>ft(Fe({},"__esModule",{value:!0}),t);var xt=(t,e,r)=>er(mt(t),r,e);var c=(t,e,r)=>new Promise((a,i)=>{var s=y=>{try{d(r.next(y))}catch(N){i(N)}},p=y=>{try{d(r.throw(y))}catch(N){i(N)}},d=y=>y.done?a(y.value):Promise.resolve(y.value).then(s,p);d((r=r.apply(t,e)).next())});var yt=tr((at,it)=>{((t,e)=>{typeof define=="function"&&define.amd?define([],e):typeof it=="object"&&typeof at!="undefined"?it.exports=e():t.Papa=e()})(at,function t(){var e=typeof self!="undefined"?self:typeof window!="undefined"?window:e!==void 0?e:{},r,a=!e.document&&!!e.postMessage,i=e.IS_PAPA_WORKER||!1,s={},p=0,d={};function y(n){this._handle=null,this._finished=!1,this._completed=!1,this._halted=!1,this._input=null,this._baseIndex=0,this._partialLine="",this._rowCount=0,this._start=0,this._nextChunk=null,this.isFirstChunk=!0,this._completeResults={data:[],errors:[],meta:{}},function(o){var l=rt(o);l.chunkSize=parseInt(l.chunkSize),o.step||o.chunk||(l.chunkSize=null),this._handle=new ne(l),(this._handle.streamer=this)._config=l}.call(this,n),this.parseChunk=function(o,l){var h=parseInt(this._config.skipFirstNLines)||0;if(this.isFirstChunk&&0=this._config.preview),i)e.postMessage({results:u,workerId:d.WORKER_ID,finished:h});else if(k(this._config.chunk)&&!l){if(this._config.chunk(u,this._handle),this._handle.paused()||this._handle.aborted())return void(this._halted=!0);this._completeResults=u=void 0}return this._config.step||this._config.chunk||(this._completeResults.data=this._completeResults.data.concat(u.data),this._completeResults.errors=this._completeResults.errors.concat(u.errors),this._completeResults.meta=u.meta),this._completed||!h||!k(this._config.complete)||u&&u.meta.aborted||(this._config.complete(this._completeResults,this._input),this._completed=!0),h||u&&u.meta.paused||this._nextChunk(),u}this._halted=!0},this._sendError=function(o){k(this._config.error)?this._config.error(o):i&&this._config.error&&e.postMessage({workerId:d.WORKER_ID,error:o,finished:!1})}}function N(n){var o;(n=n||{}).chunkSize||(n.chunkSize=d.RemoteChunkSize),y.call(this,n),this._nextChunk=a?function(){this._readChunk(),this._chunkLoaded()}:function(){this._readChunk()},this.stream=function(l){this._input=l,this._nextChunk()},this._readChunk=function(){if(this._finished)this._chunkLoaded();else{if(o=new XMLHttpRequest,this._config.withCredentials&&(o.withCredentials=this._config.withCredentials),a||(o.onload=oe(this._chunkLoaded,this),o.onerror=oe(this._chunkError,this)),o.open(this._config.downloadRequestBody?"POST":"GET",this._input,!a),this._config.downloadRequestHeaders){var l,h=this._config.downloadRequestHeaders;for(l in h)o.setRequestHeader(l,h[l])}var u;this._config.chunkSize&&(u=this._start+this._config.chunkSize-1,o.setRequestHeader("Range","bytes="+this._start+"-"+u));try{o.send(this._config.downloadRequestBody)}catch(F){this._chunkError(F.message)}a&&o.status===0&&this._chunkError()}},this._chunkLoaded=function(){o.readyState===4&&(o.status<200||400<=o.status?this._chunkError():(this._start+=this._config.chunkSize||o.responseText.length,this._finished=!this._config.chunkSize||this._start>=(l=>(l=l.getResponseHeader("Content-Range"))!==null?parseInt(l.substring(l.lastIndexOf("/")+1)):-1)(o),this.parseChunk(o.responseText)))},this._chunkError=function(l){l=o.statusText||l,this._sendError(new Error(l))}}function G(n){(n=n||{}).chunkSize||(n.chunkSize=d.LocalChunkSize),y.call(this,n);var o,l,h=typeof FileReader!="undefined";this.stream=function(u){this._input=u,l=u.slice||u.webkitSlice||u.mozSlice,h?((o=new FileReader).onload=oe(this._chunkLoaded,this),o.onerror=oe(this._chunkError,this)):o=new FileReaderSync,this._nextChunk()},this._nextChunk=function(){this._finished||this._config.preview&&!(this._rowCount=this._input.size,this.parseChunk(u.target.result)},this._chunkError=function(){this._sendError(o.error)}}function z(n){var o;y.call(this,n=n||{}),this.stream=function(l){return o=l,this._nextChunk()},this._nextChunk=function(){var l,h;if(!this._finished)return l=this._config.chunkSize,o=l?(h=o.substring(0,l),o.substring(l)):(h=o,""),this._finished=!o,this.parseChunk(h)}}function ee(n){y.call(this,n=n||{});var o=[],l=!0,h=!1;this.pause=function(){y.prototype.pause.apply(this,arguments),this._input.pause()},this.resume=function(){y.prototype.resume.apply(this,arguments),this._input.resume()},this.stream=function(u){this._input=u,this._input.on("data",this._streamData),this._input.on("end",this._streamEnd),this._input.on("error",this._streamError)},this._checkIsFinished=function(){h&&o.length===1&&(this._finished=!0)},this._nextChunk=function(){this._checkIsFinished(),o.length?this.parseChunk(o.shift()):l=!0},this._streamData=oe(function(u){try{o.push(typeof u=="string"?u:u.toString(this._config.encoding)),l&&(l=!1,this._checkIsFinished(),this.parseChunk(o.shift()))}catch(F){this._streamError(F)}},this),this._streamError=oe(function(u){this._streamCleanUp(),this._sendError(u)},this),this._streamEnd=oe(function(){this._streamCleanUp(),h=!0,this._streamData("")},this),this._streamCleanUp=oe(function(){this._input.removeListener("data",this._streamData),this._input.removeListener("end",this._streamEnd),this._input.removeListener("error",this._streamError)},this)}function ne(n){var o,l,h,u,F=Math.pow(2,53),L=-F,Q=/^\s*-?(\d+\.?|\.\d+|\d+\.\d+)([eE][-+]?\d+)?\s*$/,M=/^((\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d\.\d+([+-][0-2]\d:[0-5]\d|Z))|(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d:[0-5]\d([+-][0-2]\d:[0-5]\d|Z))|(\d{4}-[01]\d-[0-3]\dT[0-2]\d:[0-5]\d([+-][0-2]\d:[0-5]\d|Z)))$/,A=this,f=0,W=0,x=!1,se=!1,S=[],v={data:[],errors:[],meta:{}};function B(C){return n.skipEmptyLines==="greedy"?C.join("").trim()==="":C.length===1&&C[0].length===0}function I(){if(v&&h&&(J("Delimiter","UndetectableDelimiter","Unable to auto-detect delimiting character; defaulted to '"+d.DefaultDelimiter+"'"),h=!1),n.skipEmptyLines&&(v.data=v.data.filter(function(U){return!B(U)})),V()){let U=function(O,P){k(n.transformHeader)&&(O=n.transformHeader(O,P)),S.push(O)};var w=U;if(v)if(Array.isArray(v.data[0])){for(var C=0;V()&&C(K=>(n.dynamicTypingFunction&&n.dynamicTyping[K]===void 0&&(n.dynamicTyping[K]=n.dynamicTypingFunction(K)),(n.dynamicTyping[K]||n.dynamicTyping)===!0))(Y)?T==="true"||T==="TRUE"||T!=="false"&&T!=="FALSE"&&((K=>{if(Q.test(K)&&(K=parseFloat(K),L=S.length?"__parsed_extra":S[E]:_,g=n.transform?n.transform(g,_):g);_==="__parsed_extra"?(P[_]=P[_]||[],P[_].push(g)):P[_]=g}return n.header&&(E>S.length?J("FieldMismatch","TooManyFields","Too many fields: expected "+S.length+" fields but parsed "+E,W+O):En.preview?l.abort():(v.data=v.data[0],u(v,A))))}),this.parse=function(C,R,D){var w=n.quoteChar||'"',w=(n.newline||(n.newline=this.guessLineEndings(C,w)),h=!1,n.delimiter?k(n.delimiter)&&(n.delimiter=n.delimiter(C),v.meta.delimiter=n.delimiter):((w=((U,O,P,E,_)=>{var g,Y,T,K;_=_||[","," ","|",";",d.RECORD_SEP,d.UNIT_SEP];for(var pe=0;pe<_.length;pe++){for(var ie,q=_[pe],le=0,H=0,X=0,te=(T=void 0,new he({comments:E,delimiter:q,newline:O,preview:10}).parse(U)),ce=0;ce=D.length/2?`\r `:"\r"}}function ae(n){return n.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function he(n){var o=(n=n||{}).delimiter,l=n.newline,h=n.comments,u=n.step,F=n.preview,L=n.fastMode,Q=null,M=n.quoteChar==null?'"':n.quoteChar,A=M;if(n.escapeChar!==void 0&&(A=n.escapeChar),(typeof o!="string"||-1=F)return q(!0);break}R.push({type:"Quotes",code:"InvalidQuotes",message:"Trailing quote on quoted field is malformed",row:C.length,index:f}),g++}}else if(h&&D.length===0&&x.substring(f,f+V)===h){if(E===-1)return q();f=E+I,E=x.indexOf(l,f),P=x.indexOf(o,f)}else if(P!==-1&&(P=F)return q(!0)}return pe();function T(H){C.push(H),w=f}function K(H){var X=0;return X=H!==-1&&(H=x.substring(g+1,H))&&H.trim()===""?H.length:X}function pe(H){return S||(H===void 0&&(H=x.substring(f)),D.push(H),f=v,T(D),J&&le()),q()}function ie(H){f=H,T(D),D=[],E=x.indexOf(l,f)}function q(H){if(n.header&&!se&&C.length){var X=C[0],te={},ce=new Set(X);let dt=!1;for(let me=0;meh.charCodeAt(0)!==65279?h:h.slice(1))(n),l=new(o.download?N:z)(o)):n.readable===!0&&k(n.read)&&k(n.on)?l=new ee(o):(e.File&&n instanceof File||n instanceof Object)&&(l=new G(o)),l.stream(n);(l=(()=>{var h;return!!d.WORKERS_SUPPORTED&&(h=(()=>{var u=e.URL||e.webkitURL||null,F=t.toString();return d.BLOB_URL||(d.BLOB_URL=u.createObjectURL(new Blob(["var global = (function() { if (typeof self !== 'undefined') { return self; } if (typeof window !== 'undefined') { return window; } if (typeof global !== 'undefined') { return global; } return {}; })(); global.IS_PAPA_WORKER=true; ","(",F,")();"],{type:"text/javascript"})))})(),(h=new e.Worker(h)).onmessage=Pe,h.id=p++,s[h.id]=h)})()).userStep=o.step,l.userChunk=o.chunk,l.userComplete=o.complete,l.userError=o.error,o.step=k(o.step),o.chunk=k(o.chunk),o.complete=k(o.complete),o.error=k(o.error),delete o.worker,l.postMessage({input:n,config:o,workerId:l.id})},d.unparse=function(n,o){var l=!1,h=!0,u=",",F=`\r `,L='"',Q=L+L,M=!1,A=null,f=!1,W=((()=>{if(typeof o=="object"){if(typeof o.delimiter!="string"||d.BAD_DELIMITERS.filter(function(S){return o.delimiter.indexOf(S)!==-1}).length||(u=o.delimiter),typeof o.quotes!="boolean"&&typeof o.quotes!="function"&&!Array.isArray(o.quotes)||(l=o.quotes),typeof o.skipEmptyLines!="boolean"&&typeof o.skipEmptyLines!="string"||(M=o.skipEmptyLines),typeof o.newline=="string"&&(F=o.newline),typeof o.quoteChar=="string"&&(L=o.quoteChar),typeof o.header=="boolean"&&(h=o.header),Array.isArray(o.columns)){if(o.columns.length===0)throw new Error("Option columns is empty");A=o.columns}o.escapeChar!==void 0&&(Q=o.escapeChar+L),o.escapeFormulae instanceof RegExp?f=o.escapeFormulae:typeof o.escapeFormulae=="boolean"&&o.escapeFormulae&&(f=/^[=+\-@\t\r].*$/)}})(),new RegExp(ae(L),"g"));if(typeof n=="string"&&(n=JSON.parse(n)),Array.isArray(n)){if(!n.length||Array.isArray(n[0]))return x(null,n,M);if(typeof n[0]=="object")return x(A||Object.keys(n[0]),n,M)}else if(typeof n=="object")return typeof n.data=="string"&&(n.data=JSON.parse(n.data)),Array.isArray(n.data)&&(n.fields||(n.fields=n.meta&&n.meta.fields||A),n.fields||(n.fields=Array.isArray(n.data[0])?n.fields:typeof n.data[0]=="object"?Object.keys(n.data[0]):[]),Array.isArray(n.data[0])||typeof n.data[0]=="object"||(n.data=[n.data])),x(n.fields||[],n.data||[],M);throw new Error("Unable to serialize unrecognized input");function x(S,v,B){var I="",V=(typeof S=="string"&&(S=JSON.parse(S)),typeof v=="string"&&(v=JSON.parse(v)),Array.isArray(S)&&0{for(var C=0;Ctt});module.exports=ir(Tr);var Jt=require("obsidian");var ge=require("obsidian"),St=ar(yt());var $=class extends Error{constructor(e){super(e)}};function Ct(t){let e=Array.from(t);e.sort((a,i)=>a.start-i.start);let r=0;for(let a=1;a=s.start?i.end=Math.max(i.end,s.end):(r++,e[r]=s)}return e.slice(0,r+1)}function Ft(t,e){return t>=e.start&&t<=e.end}function gt(t){return String.fromCodePoint(t).normalize("NFC")}var Ae=class{constructor(e){this.poolStore=e;this.config={delimiter:";",header:!1,transformHeader:void 0,dynamicTyping:!1,fastMode:!0}}download(){return c(this,null,function*(){let e="14.0.0",a="Unicode Search: Character Database Update";a+=` \u227B UCD version ${e}`;let i=new ge.Notice(a,4e3*2),s="https://www.unicode.org",p="https://raw.githubusercontent.com/BambusControl/obsidian-unicode-search/refs/heads/ucd-mirror",d=`Public/${e}/ucd/UnicodeData.txt`,y=yield(0,ge.requestUrl)({url:`${s}/${d}`,throw:!1});if(y.status!=200&&(a+=` \u2717 Failed to download from Unicode: HTTP ${y.status}`,i.setMessage(a),y=yield(0,ge.requestUrl)({url:`${p}/${d}`,throw:!1}),y.status!=200))return a+=` \u2717 Failed to download from GIT: HTTP ${y.status}`,i.setMessage(a),[];a=a+` \u2713 Successfully downloaded characters`;let N=yield this.transformToCharacters(y.text),z=(yield this.filterCharacters(N)).map(lr);return a+=` \u2731 Filtered ${z.length} out of ${N.length} total characters`,i.setMessage(a),setTimeout(()=>i.hide(),4e3),z})}filterCharacters(e){return c(this,null,function*(){let r=yield this.poolStore.getFilter(),a=Ct(r.planes.flatMap(s=>s.blocks).filter(s=>s.included)),i=r.categoryGroups.flatMap(s=>s.categories).filter(s=>s.included).map(s=>s.abbreviation);return e.filter(s=>!nr(s)&&or(s,a)&&sr(s,i))})}transformToCharacters(e){return new Promise((r,a)=>{let i=p=>{p.errors.length!==0&&a(new $("Error while parsing data from Unicode Character Database"));let d=p.data.map(y=>({id:parseInt(y[0],16),name:y[1],category:y[2]}));r(d)},s=b(m({},this.config),{worker:!0,complete:p=>i(p)});(0,St.parse)(e,s)})}};function nr(t){return t==null||t.name==null||t.id==null||t.category==null}function or(t,e){return e.some(r=>Ft(t.id,r))}function sr(t,e){return e.some(r=>t.category===r)}function lr(t){return{id:t.id,glyph:gt(t.id),name:t.name.toLowerCase(),category:t.category}}var Z=require("obsidian");var cr={planeNumber:0,description:"Basic Multilingual Plane",abbreviation:"BMP",interval:{start:0,end:65535},blocks:[{interval:{start:0,end:127},description:"Basic Latin",plane:0},{interval:{start:128,end:255},description:"Latin-1 Supplement",plane:0},{interval:{start:256,end:383},description:"Latin Extended-A",plane:0},{interval:{start:384,end:591},description:"Latin Extended-B",plane:0},{interval:{start:592,end:687},description:"IPA Extensions",plane:0},{interval:{start:688,end:767},description:"Spacing Modifier Letters",plane:0},{interval:{start:768,end:879},description:"Combining Diacritical Marks",plane:0},{interval:{start:880,end:1023},description:"Greek and Coptic",plane:0},{interval:{start:1024,end:1279},description:"Cyrillic",plane:0},{interval:{start:1280,end:1327},description:"Cyrillic Supplement",plane:0},{interval:{start:1328,end:1423},description:"Armenian",plane:0},{interval:{start:1424,end:1535},description:"Hebrew",plane:0},{interval:{start:1536,end:1791},description:"Arabic",plane:0},{interval:{start:1792,end:1871},description:"Syriac",plane:0},{interval:{start:1872,end:1919},description:"Arabic Supplement",plane:0},{interval:{start:1920,end:1983},description:"Thaana",plane:0},{interval:{start:1984,end:2047},description:"NKo",plane:0},{interval:{start:2048,end:2111},description:"Samaritan",plane:0},{interval:{start:2112,end:2143},description:"Mandaic",plane:0},{interval:{start:2144,end:2159},description:"Syriac Supplement",plane:0},{interval:{start:2160,end:2207},description:"Arabic Extended-B",plane:0},{interval:{start:2208,end:2303},description:"Arabic Extended-A",plane:0},{interval:{start:2304,end:2431},description:"Devanagari",plane:0},{interval:{start:2432,end:2559},description:"Bengali",plane:0},{interval:{start:2560,end:2687},description:"Gurmukhi",plane:0},{interval:{start:2688,end:2815},description:"Gujarati",plane:0},{interval:{start:2816,end:2943},description:"Oriya",plane:0},{interval:{start:2944,end:3071},description:"Tamil",plane:0},{interval:{start:3072,end:3199},description:"Telugu",plane:0},{interval:{start:3200,end:3327},description:"Kannada",plane:0},{interval:{start:3328,end:3455},description:"Malayalam",plane:0},{interval:{start:3456,end:3583},description:"Sinhala",plane:0},{interval:{start:3584,end:3711},description:"Thai",plane:0},{interval:{start:3712,end:3839},description:"Lao",plane:0},{interval:{start:3840,end:4095},description:"Tibetan",plane:0},{interval:{start:4096,end:4255},description:"Myanmar",plane:0},{interval:{start:4256,end:4351},description:"Georgian",plane:0},{interval:{start:4352,end:4607},description:"Hangul Jamo",plane:0},{interval:{start:4608,end:4991},description:"Ethiopic",plane:0},{interval:{start:4992,end:5023},description:"Ethiopic Supplement",plane:0},{interval:{start:5024,end:5119},description:"Cherokee",plane:0},{interval:{start:5120,end:5759},description:"Unified Canadian Aboriginal Syllabics",plane:0},{interval:{start:5760,end:5791},description:"Ogham",plane:0},{interval:{start:5792,end:5887},description:"Runic",plane:0},{interval:{start:5888,end:5919},description:"Tagalog",plane:0},{interval:{start:5920,end:5951},description:"Hanunoo",plane:0},{interval:{start:5952,end:5983},description:"Buhid",plane:0},{interval:{start:5984,end:6015},description:"Tagbanwa",plane:0},{interval:{start:6016,end:6143},description:"Khmer",plane:0},{interval:{start:6144,end:6319},description:"Mongolian",plane:0},{interval:{start:6320,end:6399},description:"Unified Canadian Aboriginal Syllabics Extended",plane:0},{interval:{start:6400,end:6479},description:"Limbu",plane:0},{interval:{start:6480,end:6527},description:"Tai Le",plane:0},{interval:{start:6528,end:6623},description:"New Tai Lue",plane:0},{interval:{start:6624,end:6655},description:"Khmer Symbols",plane:0},{interval:{start:6656,end:6687},description:"Buginese",plane:0},{interval:{start:6688,end:6831},description:"Tai Tham",plane:0},{interval:{start:6832,end:6911},description:"Combining Diacritical Marks Extended",plane:0},{interval:{start:6912,end:7039},description:"Balinese",plane:0},{interval:{start:7040,end:7103},description:"Sundanese",plane:0},{interval:{start:7104,end:7167},description:"Batak",plane:0},{interval:{start:7168,end:7247},description:"Lepcha",plane:0},{interval:{start:7248,end:7295},description:"Ol Chiki",plane:0},{interval:{start:7296,end:7311},description:"Cyrillic Extended-C",plane:0},{interval:{start:7312,end:7359},description:"Georgian Extended",plane:0},{interval:{start:7360,end:7375},description:"Sundanese Supplement",plane:0},{interval:{start:7376,end:7423},description:"Vedic Extensions",plane:0},{interval:{start:7424,end:7551},description:"Phonetic Extensions",plane:0},{interval:{start:7552,end:7615},description:"Phonetic Extensions Supplement",plane:0},{interval:{start:7616,end:7679},description:"Combining Diacritical Marks Supplement",plane:0},{interval:{start:7680,end:7935},description:"Latin Extended Additional",plane:0},{interval:{start:7936,end:8191},description:"Greek Extended",plane:0},{interval:{start:8192,end:8303},description:"General Punctuation",plane:0},{interval:{start:8304,end:8351},description:"Superscripts and Subscripts",plane:0},{interval:{start:8352,end:8399},description:"Currency Symbols",plane:0},{interval:{start:8400,end:8447},description:"Combining Diacritical Marks for Symbols",plane:0},{interval:{start:8448,end:8527},description:"Letterlike Symbols",plane:0},{interval:{start:8528,end:8591},description:"Number Forms",plane:0},{interval:{start:8592,end:8703},description:"Arrows",plane:0},{interval:{start:8704,end:8959},description:"Mathematical Operators",plane:0},{interval:{start:8960,end:9215},description:"Miscellaneous Technical",plane:0},{interval:{start:9216,end:9279},description:"Control Pictures",plane:0},{interval:{start:9280,end:9311},description:"Optical Character Recognition",plane:0},{interval:{start:9312,end:9471},description:"Enclosed Alphanumerics",plane:0},{interval:{start:9472,end:9599},description:"Box Drawing",plane:0},{interval:{start:9600,end:9631},description:"Block Elements",plane:0},{interval:{start:9632,end:9727},description:"Geometric Shapes",plane:0},{interval:{start:9728,end:9983},description:"Miscellaneous Symbols",plane:0},{interval:{start:9984,end:10175},description:"Dingbats",plane:0},{interval:{start:10176,end:10223},description:"Miscellaneous Mathematical Symbols-A",plane:0},{interval:{start:10224,end:10239},description:"Supplemental Arrows-A",plane:0},{interval:{start:10240,end:10495},description:"Braille Patterns",plane:0},{interval:{start:10496,end:10623},description:"Supplemental Arrows-B",plane:0},{interval:{start:10624,end:10751},description:"Miscellaneous Mathematical Symbols-B",plane:0},{interval:{start:10752,end:11007},description:"Supplemental Mathematical Operators",plane:0},{interval:{start:11008,end:11263},description:"Miscellaneous Symbols and Arrows",plane:0},{interval:{start:11264,end:11359},description:"Glagolitic",plane:0},{interval:{start:11360,end:11391},description:"Latin Extended-C",plane:0},{interval:{start:11392,end:11519},description:"Coptic",plane:0},{interval:{start:11520,end:11567},description:"Georgian Supplement",plane:0},{interval:{start:11568,end:11647},description:"Tifinagh",plane:0},{interval:{start:11648,end:11743},description:"Ethiopic Extended",plane:0},{interval:{start:11744,end:11775},description:"Cyrillic Extended-A",plane:0},{interval:{start:11776,end:11903},description:"Supplemental Punctuation",plane:0},{interval:{start:11904,end:12031},description:"CJK Radicals Supplement",plane:0},{interval:{start:12032,end:12255},description:"Kangxi Radicals",plane:0},{interval:{start:12272,end:12287},description:"Ideographic Description Characters",plane:0},{interval:{start:12288,end:12351},description:"CJK Symbols and Punctuation",plane:0},{interval:{start:12352,end:12447},description:"Hiragana",plane:0},{interval:{start:12448,end:12543},description:"Katakana",plane:0},{interval:{start:12544,end:12591},description:"Bopomofo",plane:0},{interval:{start:12592,end:12687},description:"Hangul Compatibility Jamo",plane:0},{interval:{start:12688,end:12703},description:"Kanbun",plane:0},{interval:{start:12704,end:12735},description:"Bopomofo Extended",plane:0},{interval:{start:12736,end:12783},description:"CJK Strokes",plane:0},{interval:{start:12784,end:12799},description:"Katakana Phonetic Extensions",plane:0},{interval:{start:12800,end:13055},description:"Enclosed CJK Letters and Months",plane:0},{interval:{start:13056,end:13311},description:"CJK Compatibility",plane:0},{interval:{start:13312,end:19903},description:"CJK Unified Ideographs Extension A",plane:0},{interval:{start:19904,end:19967},description:"Yijing Hexagram Symbols",plane:0},{interval:{start:19968,end:40959},description:"CJK Unified Ideographs",plane:0},{interval:{start:40960,end:42127},description:"Yi Syllables",plane:0},{interval:{start:42128,end:42191},description:"Yi Radicals",plane:0},{interval:{start:42192,end:42239},description:"Lisu",plane:0},{interval:{start:42240,end:42559},description:"Vai",plane:0},{interval:{start:42560,end:42655},description:"Cyrillic Extended-B",plane:0},{interval:{start:42656,end:42751},description:"Bamum",plane:0},{interval:{start:42752,end:42783},description:"Modifier Tone Letters",plane:0},{interval:{start:42784,end:43007},description:"Latin Extended-D",plane:0},{interval:{start:43008,end:43055},description:"Syloti Nagri",plane:0},{interval:{start:43056,end:43071},description:"Common Indic Number Forms",plane:0},{interval:{start:43072,end:43135},description:"Phags-pa",plane:0},{interval:{start:43136,end:43231},description:"Saurashtra",plane:0},{interval:{start:43232,end:43263},description:"Devanagari Extended",plane:0},{interval:{start:43264,end:43311},description:"Kayah Li",plane:0},{interval:{start:43312,end:43359},description:"Rejang",plane:0},{interval:{start:43360,end:43391},description:"Hangul Jamo Extended-A",plane:0},{interval:{start:43392,end:43487},description:"Javanese",plane:0},{interval:{start:43488,end:43519},description:"Myanmar Extended-B",plane:0},{interval:{start:43520,end:43615},description:"Cham",plane:0},{interval:{start:43616,end:43647},description:"Myanmar Extended-A",plane:0},{interval:{start:43648,end:43743},description:"Tai Viet",plane:0},{interval:{start:43744,end:43775},description:"Meetei Mayek Extensions",plane:0},{interval:{start:43776,end:43823},description:"Ethiopic Extended-A",plane:0},{interval:{start:43824,end:43887},description:"Latin Extended-E",plane:0},{interval:{start:43888,end:43967},description:"Cherokee Supplement",plane:0},{interval:{start:43968,end:44031},description:"Meetei Mayek",plane:0},{interval:{start:44032,end:55215},description:"Hangul Syllables",plane:0},{interval:{start:55216,end:55295},description:"Hangul Jamo Extended-B",plane:0},{interval:{start:55296,end:56191},description:"High Surrogates",plane:0},{interval:{start:56192,end:56319},description:"High Private Use Surrogates",plane:0},{interval:{start:56320,end:57343},description:"Low Surrogates",plane:0},{interval:{start:57344,end:63743},description:"Private Use Area",plane:0},{interval:{start:63744,end:64255},description:"CJK Compatibility Ideographs",plane:0},{interval:{start:64256,end:64335},description:"Alphabetic Presentation Forms",plane:0},{interval:{start:64336,end:65023},description:"Arabic Presentation Forms-A",plane:0},{interval:{start:65024,end:65039},description:"Variation Selectors",plane:0},{interval:{start:65040,end:65055},description:"Vertical Forms",plane:0},{interval:{start:65056,end:65071},description:"Combining Half Marks",plane:0},{interval:{start:65072,end:65103},description:"CJK Compatibility Forms",plane:0},{interval:{start:65104,end:65135},description:"Small Form Variants",plane:0},{interval:{start:65136,end:65279},description:"Arabic Presentation Forms-B",plane:0},{interval:{start:65280,end:65519},description:"Halfwidth and Fullwidth Forms",plane:0},{interval:{start:65520,end:65535},description:"Specials",plane:0}]},dr={planeNumber:1,description:"Supplementary Multilingual Plane",abbreviation:"SMP",interval:{start:65536,end:131071},blocks:[{interval:{start:65536,end:65663},description:"Linear B Syllabary",plane:1},{interval:{start:65664,end:65791},description:"Linear B Ideograms",plane:1},{interval:{start:65792,end:65855},description:"Aegean Numbers",plane:1},{interval:{start:65856,end:65935},description:"Ancient Greek Numbers",plane:1},{interval:{start:65936,end:65999},description:"Ancient Symbols",plane:1},{interval:{start:66e3,end:66047},description:"Phaistos Disc",plane:1},{interval:{start:66176,end:66207},description:"Lycian",plane:1},{interval:{start:66208,end:66271},description:"Carian",plane:1},{interval:{start:66272,end:66303},description:"Coptic Epact Numbers",plane:1},{interval:{start:66304,end:66351},description:"Old Italic",plane:1},{interval:{start:66352,end:66383},description:"Gothic",plane:1},{interval:{start:66384,end:66431},description:"Old Permic",plane:1},{interval:{start:66432,end:66463},description:"Ugaritic",plane:1},{interval:{start:66464,end:66527},description:"Old Persian",plane:1},{interval:{start:66560,end:66639},description:"Deseret",plane:1},{interval:{start:66640,end:66687},description:"Shavian",plane:1},{interval:{start:66688,end:66735},description:"Osmanya",plane:1},{interval:{start:66736,end:66815},description:"Osage",plane:1},{interval:{start:66816,end:66863},description:"Elbasan",plane:1},{interval:{start:66864,end:66927},description:"Caucasian Albanian",plane:1},{interval:{start:66928,end:67007},description:"Vithkuqi",plane:1},{interval:{start:67072,end:67455},description:"Linear A",plane:1},{interval:{start:67456,end:67519},description:"Latin Extended-F",plane:1},{interval:{start:67584,end:67647},description:"Cypriot Syllabary",plane:1},{interval:{start:67648,end:67679},description:"Imperial Aramaic",plane:1},{interval:{start:67680,end:67711},description:"Palmyrene",plane:1},{interval:{start:67712,end:67759},description:"Nabataean",plane:1},{interval:{start:67808,end:67839},description:"Hatran",plane:1},{interval:{start:67840,end:67871},description:"Phoenician",plane:1},{interval:{start:67872,end:67903},description:"Lydian",plane:1},{interval:{start:67968,end:67999},description:"Meroitic Hieroglyphs",plane:1},{interval:{start:68e3,end:68095},description:"Meroitic Cursive",plane:1},{interval:{start:68096,end:68191},description:"Kharoshthi",plane:1},{interval:{start:68192,end:68223},description:"Old South Arabian",plane:1},{interval:{start:68224,end:68255},description:"Old North Arabian",plane:1},{interval:{start:68288,end:68351},description:"Manichaean",plane:1},{interval:{start:68352,end:68415},description:"Avestan",plane:1},{interval:{start:68416,end:68447},description:"Inscriptional Parthian",plane:1},{interval:{start:68448,end:68479},description:"Inscriptional Pahlavi",plane:1},{interval:{start:68480,end:68527},description:"Psalter Pahlavi",plane:1},{interval:{start:68608,end:68687},description:"Old Turkic",plane:1},{interval:{start:68736,end:68863},description:"Old Hungarian",plane:1},{interval:{start:68864,end:68927},description:"Hanifi Rohingya",plane:1},{interval:{start:69216,end:69247},description:"Rumi Numeral Symbols",plane:1},{interval:{start:69248,end:69311},description:"Yezidi",plane:1},{interval:{start:69312,end:69375},description:"Arabic Extended-C",plane:1},{interval:{start:69376,end:69423},description:"Old Sogdian",plane:1},{interval:{start:69424,end:69487},description:"Sogdian",plane:1},{interval:{start:69488,end:69551},description:"Old Uyghur",plane:1},{interval:{start:69552,end:69599},description:"Chorasmian",plane:1},{interval:{start:69600,end:69631},description:"Elymaic",plane:1},{interval:{start:69632,end:69759},description:"Brahmi",plane:1},{interval:{start:69760,end:69839},description:"Kaithi",plane:1},{interval:{start:69840,end:69887},description:"Sora Sompeng",plane:1},{interval:{start:69888,end:69967},description:"Chakma",plane:1},{interval:{start:69968,end:70015},description:"Mahajani",plane:1},{interval:{start:70016,end:70111},description:"Sharada",plane:1},{interval:{start:70112,end:70143},description:"Sinhala Archaic Numbers",plane:1},{interval:{start:70144,end:70223},description:"Khojki",plane:1},{interval:{start:70272,end:70319},description:"Multani",plane:1},{interval:{start:70320,end:70399},description:"Khudawadi",plane:1},{interval:{start:70400,end:70527},description:"Grantha",plane:1},{interval:{start:70656,end:70783},description:"Newa",plane:1},{interval:{start:70784,end:70879},description:"Tirhuta",plane:1},{interval:{start:71040,end:71167},description:"Siddham",plane:1},{interval:{start:71168,end:71263},description:"Modi",plane:1},{interval:{start:71264,end:71295},description:"Mongolian Supplement",plane:1},{interval:{start:71296,end:71375},description:"Takri",plane:1},{interval:{start:71424,end:71503},description:"Ahom",plane:1},{interval:{start:71680,end:71759},description:"Dogra",plane:1},{interval:{start:71840,end:71935},description:"Warang Citi",plane:1},{interval:{start:71936,end:72031},description:"Dives Akuru",plane:1},{interval:{start:72096,end:72191},description:"Nandinagari",plane:1},{interval:{start:72192,end:72271},description:"Zanabazar Square",plane:1},{interval:{start:72272,end:72367},description:"Soyombo",plane:1},{interval:{start:72368,end:72383},description:"Unified Canadian Aboriginal Syllabics Extended-A",plane:1},{interval:{start:72384,end:72447},description:"Pau Cin Hau",plane:1},{interval:{start:72448,end:72543},description:"Devanagari Extended-A",plane:1},{interval:{start:72704,end:72815},description:"Bhaiksuki",plane:1},{interval:{start:72816,end:72895},description:"Marchen",plane:1},{interval:{start:72960,end:73055},description:"Masaram Gondi",plane:1},{interval:{start:73056,end:73135},description:"Gunjala Gondi",plane:1},{interval:{start:73440,end:73471},description:"Makasar",plane:1},{interval:{start:73472,end:73567},description:"Kawi",plane:1},{interval:{start:73648,end:73663},description:"Lisu Supplement",plane:1},{interval:{start:73664,end:73727},description:"Tamil Supplement",plane:1},{interval:{start:73728,end:74751},description:"Cuneiform",plane:1},{interval:{start:74752,end:74879},description:"Cuneiform Numbers and Punctuation",plane:1},{interval:{start:74880,end:75087},description:"Early Dynastic Cuneiform",plane:1},{interval:{start:77712,end:77823},description:"Cypro-Minoan",plane:1},{interval:{start:77824,end:78895},description:"Egyptian Hieroglyphs",plane:1},{interval:{start:78896,end:78943},description:"Egyptian Hieroglyph Format Controls",plane:1},{interval:{start:82944,end:83583},description:"Anatolian Hieroglyphs",plane:1},{interval:{start:92160,end:92735},description:"Bamum Supplement",plane:1},{interval:{start:92736,end:92783},description:"Mro",plane:1},{interval:{start:92784,end:92879},description:"Tangsa",plane:1},{interval:{start:92880,end:92927},description:"Bassa Vah",plane:1},{interval:{start:92928,end:93071},description:"Pahawh Hmong",plane:1},{interval:{start:93760,end:93855},description:"Medefaidrin",plane:1},{interval:{start:93952,end:94111},description:"Miao",plane:1},{interval:{start:94176,end:94207},description:"Ideographic Symbols and Punctuation",plane:1},{interval:{start:94208,end:100351},description:"Tangut",plane:1},{interval:{start:100352,end:101119},description:"Tangut Components",plane:1},{interval:{start:101120,end:101631},description:"Khitan Small Script",plane:1},{interval:{start:101632,end:101759},description:"Tangut Supplement",plane:1},{interval:{start:110576,end:110591},description:"Kana Extended-B",plane:1},{interval:{start:110592,end:110847},description:"Kana Supplement",plane:1},{interval:{start:110848,end:110895},description:"Kana Extended-A",plane:1},{interval:{start:110896,end:110959},description:"Small Kana Extension",plane:1},{interval:{start:110960,end:111359},description:"Nushu",plane:1},{interval:{start:113664,end:113823},description:"Duployan",plane:1},{interval:{start:113824,end:113839},description:"Shorthand Format Controls",plane:1},{interval:{start:118528,end:118735},description:"Znamenny Musical Notation",plane:1},{interval:{start:118784,end:119039},description:"Byzantine Musical Symbols",plane:1},{interval:{start:119040,end:119295},description:"Musical Symbols",plane:1},{interval:{start:119296,end:119375},description:"Ancient Greek Musical Notation",plane:1},{interval:{start:119488,end:119519},description:"Kaktovik Numerals",plane:1},{interval:{start:119520,end:119551},description:"Mayan Numerals",plane:1},{interval:{start:119552,end:119647},description:"Tai Xuan Jing Symbols",plane:1},{interval:{start:119648,end:119679},description:"Counting Rod Numerals",plane:1},{interval:{start:119808,end:120831},description:"Mathematical Alphanumeric Symbols",plane:1},{interval:{start:120832,end:121519},description:"Sutton SignWriting",plane:1},{interval:{start:122624,end:122879},description:"Latin Extended-G",plane:1},{interval:{start:122880,end:122927},description:"Glagolitic Supplement",plane:1},{interval:{start:122928,end:123023},description:"Cyrillic Extended-D",plane:1},{interval:{start:123136,end:123215},description:"Nyiakeng Puachue Hmong",plane:1},{interval:{start:123536,end:123583},description:"Toto",plane:1},{interval:{start:123584,end:123647},description:"Wancho",plane:1},{interval:{start:124112,end:124159},description:"Nag Mundari",plane:1},{interval:{start:124896,end:124927},description:"Ethiopic Extended-B",plane:1},{interval:{start:124928,end:125151},description:"Mende Kikakui",plane:1},{interval:{start:125184,end:125279},description:"Adlam",plane:1},{interval:{start:126064,end:126143},description:"Indic Siyaq Numbers",plane:1},{interval:{start:126208,end:126287},description:"Ottoman Siyaq Numbers",plane:1},{interval:{start:126464,end:126719},description:"Arabic Mathematical Alphabetic Symbols",plane:1},{interval:{start:126976,end:127023},description:"Mahjong Tiles",plane:1},{interval:{start:127024,end:127135},description:"Domino Tiles",plane:1},{interval:{start:127136,end:127231},description:"Playing Cards",plane:1},{interval:{start:127232,end:127487},description:"Enclosed Alphanumeric Supplement",plane:1},{interval:{start:127488,end:127743},description:"Enclosed Ideographic Supplement",plane:1},{interval:{start:127744,end:128511},description:"Miscellaneous Symbols and Pictographs",plane:1},{interval:{start:128512,end:128591},description:"Emoticons",plane:1},{interval:{start:128592,end:128639},description:"Ornamental Dingbats",plane:1},{interval:{start:128640,end:128767},description:"Transport and Map Symbols",plane:1},{interval:{start:128768,end:128895},description:"Alchemical Symbols",plane:1},{interval:{start:128896,end:129023},description:"Geometric Shapes Extended",plane:1},{interval:{start:129024,end:129279},description:"Supplemental Arrows-C",plane:1},{interval:{start:129280,end:129535},description:"Supplemental Symbols and Pictographs",plane:1},{interval:{start:129536,end:129647},description:"Chess Symbols",plane:1},{interval:{start:129648,end:129791},description:"Symbols and Pictographs Extended-A",plane:1},{interval:{start:129792,end:130047},description:"Symbols for Legacy Computing",plane:1}]},pr={planeNumber:2,description:"Supplementary Ideographic Plane",abbreviation:"SIP",interval:{start:131072,end:196607},blocks:[{interval:{start:131072,end:173791},description:"CJK Unified Ideographs Extension B",plane:2},{interval:{start:173824,end:177983},description:"CJK Unified Ideographs Extension C",plane:2},{interval:{start:177984,end:178207},description:"CJK Unified Ideographs Extension D",plane:2},{interval:{start:178208,end:183983},description:"CJK Unified Ideographs Extension E",plane:2},{interval:{start:183984,end:191471},description:"CJK Unified Ideographs Extension F",plane:2},{interval:{start:191472,end:192095},description:"CJK Unified Ideographs Extension I",plane:2},{interval:{start:194560,end:195103},description:"CJK Compatibility Ideographs Supplement",plane:2}]},ur={planeNumber:3,description:"Tertiary Ideographic Plane",abbreviation:"TIP",interval:{start:196608,end:262143},blocks:[{interval:{start:196608,end:201551},description:"CJK Unified Ideographs Extension G",plane:3},{interval:{start:201552,end:205743},description:"CJK Unified Ideographs Extension H",plane:3}]},hr={planeNumber:14,description:"Supplementary Special-purpose Plane",abbreviation:"SSP",interval:{start:917504,end:983039},blocks:[{interval:{start:917504,end:917631},description:"Tags",plane:14},{interval:{start:917760,end:917999},description:"Variation Selectors Supplement",plane:14}]},mr={planeNumber:15,description:"Supplementary Private Use Area-A",abbreviation:"SPUA-A",interval:{start:983040,end:1048575},blocks:[{interval:{start:983040,end:1048575},description:"Supplementary Private Use Area-A",plane:15}]},vr={planeNumber:16,description:"Supplementary Private Use Area-B",abbreviation:"SPUA-B",interval:{start:1048576,end:1114111},blocks:[{interval:{start:1048576,end:1114111},description:"Supplementary Private Use Area-B",plane:16}]},ke=[cr,dr,pr,ur,hr,mr,vr];function Se(t){return t.toString(16).padStart(4,"0")}var we=[{abbreviation:"L",name:"Letter",categories:[{abbreviation:"Lu",name:"Uppercase Letter",description:"an uppercase letter"},{abbreviation:"Ll",name:"Lowercase Letter",description:"a lowercase letter"},{abbreviation:"Lt",name:"Titlecase Letter",description:"a digraph encoded as a single character, with first part uppercase"},{abbreviation:"Lm",name:"Modifier Letter",description:"a modifier letter"},{abbreviation:"Lo",name:"Other Letter",description:"other letters, including syllables and ideographs"}]},{abbreviation:"M",name:"Mark",categories:[{abbreviation:"Mn",name:"Nonspacing Mark",description:"a nonspacing combining mark (zero advance width)"},{abbreviation:"Mc",name:"Spacing Mark",description:"a spacing combining mark (positive advance width)"},{abbreviation:"Me",name:"Enclosing Mark",description:"an enclosing combining mark"}]},{abbreviation:"N",name:"Number",categories:[{abbreviation:"Nd",name:"Decimal Number",description:"a decimal digit"},{abbreviation:"Nl",name:"Letter Number",description:"a letterlike numeric character"},{abbreviation:"No",name:"Other Number",description:"a numeric character of other type"}]},{abbreviation:"P",name:"Punctuation",categories:[{abbreviation:"Pc",name:"Connector Punctuation",description:"a connecting punctuation mark, like a tie"},{abbreviation:"Pd",name:"Dash Punctuation",description:"a dash or hyphen punctuation mark"},{abbreviation:"Ps",name:"Open Punctuation",description:"an opening punctuation mark (of a pair)"},{abbreviation:"Pe",name:"Close Punctuation",description:"a closing punctuation mark (of a pair)"},{abbreviation:"Pi",name:"Initial Punctuation",description:"an initial quotation mark"},{abbreviation:"Pf",name:"Final Punctuation",description:"a final quotation mark"},{abbreviation:"Po",name:"Other Punctuation",description:"a punctuation mark of other type"}]},{abbreviation:"S",name:"Symbol",categories:[{abbreviation:"Sm",name:"Math Symbol",description:"a symbol of mathematical use"},{abbreviation:"Sc",name:"Currency Symbol",description:"a currency sign"},{abbreviation:"Sk",name:"Modifier Symbol",description:"a non-letterlike modifier symbol"},{abbreviation:"So",name:"Other Symbol",description:"a symbol of other type"}]},{abbreviation:"Z",name:"Separator",categories:[{abbreviation:"Zs",name:"Space Separator",description:"a space character (of various non-zero widths)"},{abbreviation:"Zl",name:"Line Separator",description:"U+2028 LINE SEPARATOR only"},{abbreviation:"Zp",name:"Paragraph Separator",description:"U+2029 PARAGRAPH SEPARATOR only"}]},{abbreviation:"C",name:"Other",categories:[{abbreviation:"Cc",name:"Control",description:"a C0 or C1 control code"},{abbreviation:"Cf",name:"Format",description:"a format control character"},{abbreviation:"Cs",name:"Surrogate",description:"a surrogate code point"},{abbreviation:"Co",name:"Private Use",description:"a private-use character"},{abbreviation:"Cn",name:"Unassigned",description:"a reserved unassigned code point or a noncharacter"}]}];function de(t){return Se(t.id)}var De=require("obsidian");var bt={command:"\u2B81",purpose:"to navigate"},Ue={command:"\u21B5",purpose:"to insert selected character"},Dt={command:"esc",purpose:"to dismiss"},Pt={cls:"icon inline-description recent",text:"\u21A9",title:"used recently"},Et={cls:"icon inline-description frequent",text:"\u21BA",title:"used frequently"},At={cls:"icon inline-description favorite",text:"\u2606",title:"favourite"};var ve=class extends Error{constructor(e){super(e),this.name="LibraryError"}};function kt(t){if(t.length<1)throw new ve("Cannot get a random item from an empty array");return t[Math.floor(Math.random()*t.length)]}var Re=require("obsidian");function wt(t){return{character:t,match:{codePoint:null,name:null}}}function Ut(t){return t.match.name!=null||t.match.codePoint!=null}var nt={score:0,matches:[]};function ue(t){switch(t){case-1:return 1;case 1:return-1;default:return 0}}function fe(t,e,r){return t==null&&e==null?0:t!=null&&e!=null?r(t,e):t==null?1:-1}function Me(t,e){return t===e?0:te?1:0}function Mt(t,e,r){let a=fe(t.lastUseue(xe(i,s)));return a!==0?a:ue(Me(t.timesUsed,e.timesUsed))}function _t(t){return t!=null&&"timesUsed"in t&&"firstUse"in t&&"lastUse"in t}function _e(t){return t!=null&&"added"in t&&"quickInsertEnabled"in t}function It(t,e){return t.sort((r,a)=>xr(r,a,e)).map(fr)}function fr(t){return b(m({},t),{match:ot(t.match)})}function ot(t){var e,r;return{name:(e=t.name)!=null?e:nt,codePoint:(r=t.codePoint)!=null?r:nt}}function xr(t,e,r){let a=yr(t.match,e.match);return a!==0?a:Fr(t.character,e.character,r)}function yr(t,e){let r=t.codePoint==null&&t.name==null,a=e.codePoint==null&&e.name==null;return fe(r?null:ot(t),a?null:ot(e),(i,s)=>Cr(i,s))}function Cr(t,e){let r=e.codePoint.score-t.codePoint.score,a=e.name.score-t.name.score,i=r+a;return i/Math.abs(i)}function Fr(t,e,r){let a=gr(t,e,r);if(a!==0)return a;let i=Sr(t,e);return i!==0?i:Dr(t,e)}function gr(t,e,r){return fe(Rt(t),Rt(e),(a,i)=>Mt(a,i,r))}function Sr(t,e){return fe(Tt(t),Tt(e),(r,a)=>br(r,a))}function br(t,e){return ue(xe(t.added,e.added))}function Dr(t,e){return Me(t.id,e.id)}function Rt(t){return _t(t)?t:null}function Tt(t){return _e(t)?t:null}function Ht(t,e,r){let i=t==null||t.length<1?e.map(wt):e.map(Pr(t)).filter(Ut);return It(i,r)}function Pr(t){let r=t.length<=4&&!t.includes(" ")?(0,Re.prepareSimpleSearch)(t):i=>null,a=(0,Re.prepareFuzzySearch)(t);return i=>({character:i,match:{codePoint:r(de(i)),name:a(i.name)}})}var Te=class{constructor(e,r){this.getCallback=e;this.value=r}get(){return c(this,null,function*(){return this.value==null&&(this.value=yield this.getCallback()),this.value})}};function Nt(t){return t.slice().map(e=>e.lastUse).sort((e,r)=>ue(xe(e,r)))}function Bt(t){let e=t.reduce((i,s)=>({totalUses:i.totalUses+s.timesUsed,itemCount:i.itemCount+1}),{totalUses:0,itemCount:0}),{totalUses:r,itemCount:a}=e;return a===0?0:r/a}var ye=class t extends De.SuggestModal{constructor(r,a,i){super(r);this.characterService=a;super.setInstructions([bt,i,Dt]),this.setRandomPlaceholder().then(),this.usageStatistics=new Te(()=>c(this,null,function*(){var p;let s=yield a.getUsed();return{topThirdRecentlyUsed:(p=Nt(s).slice(0,3).last())!=null?p:new Date(0),averageUseCount:Bt(s)}}))}getSuggestions(r){return c(this,null,function*(){let a=yield this.characterService.getAll(),i=(yield this.usageStatistics.get()).topThirdRecentlyUsed;return Ht(r,a,i).slice(0,this.limit)})}renderSuggestion(r,a){return c(this,null,function*(){let i=r.character;a.addClass("plugin","unicode-search","result-item"),a.createDiv({cls:"character-preview"}).createSpan({text:i.glyph});let s=a.createDiv({cls:"character-match"}),p=s.createDiv({cls:"character-name"});(0,De.renderMatches)(p,i.name,r.match.name.matches);let d=s.createDiv({cls:"character-code-point"});(0,De.renderMatches)(d,de(i),r.match.codePoint.matches);let N=a.createDiv({cls:"detail"}).createDiv({cls:"attributes"});if(_e(i))N.createDiv(At);else{let G=yield this.usageStatistics.get(),z=i,ee=z.lastUse!=null&&z.lastUse>=G.topThirdRecentlyUsed,ne=z.timesUsed!=null&&z.timesUsed>=G.averageUseCount;ee&&N.createDiv(Pt),ne&&N.createDiv(Et)}})}onNoSuggestion(){return c(this,null,function*(){yield this.setRandomPlaceholder()})}setRandomPlaceholder(){return c(this,null,function*(){let r=kt(yield this.characterService.getAllCharacters()).name;xt(t.prototype,this,"setPlaceholder").call(this,`Unicode search: ${r}`)})}};var Ie=class t extends ye{constructor(r,a,i){super(r,a,Ue);this.resolve=i}static open(r,a){return new Promise(i=>{new t(r,a,i).open()})}onChooseSuggestion(r,a){}onClose(){this.resolve(null)}selectSuggestion(r,a){this.resolve(r.character),super.selectSuggestion(r,a)}};var He=class t extends Z.PluginSettingTab{constructor(r,a,i,s,p,d){super(r,a);this.plugin=a;this.characterService=i;this.favoritesStore=s;this.poolStore=p;this.initializer=d;this.rendered=!1;this.containerEl.addClass("plugin","unicode-search","setting-tab")}display(){return c(this,null,function*(){this.rendered||(yield this.displayFilterSettings(this.containerEl),yield this.displayFavoritesSettings(this.containerEl),this.rendered=!0)})}hide(){return c(this,null,function*(){yield this.initializer.initializeData(),this.containerEl.empty(),this.rendered=!1})}displayFavoritesSettings(r){return c(this,null,function*(){new Z.Setting(r).setHeading().setName("Favourite Characters").setDesc("Manage your favourite characters which will be displayed in the plugin's search results. You can also enable Quick Insert, making them available as a command in Obsidian.").setClass("group-control").addToggle(y=>y.setValue(!1).onChange(N=>i.toggleClass("hidden",!N)));let a=yield this.characterService.getFavorites(),i=r.createDiv({cls:["group-container","hidden"]}),s=i.createDiv({cls:["item-container"]}),p=s.createDiv({cls:["character-list","new"]}),d=s.createDiv({cls:["character-list","no-first"]});new Z.Setting(p).setName("").setDesc("Add a new favourite character").addButton(y=>{y.setIcon("plus"),y.onClick(N=>c(this,null,function*(){let G=yield Ie.open(this.plugin.app,this.characterService);if(G==null||a.some(ae=>ae.id===G.id))return;let ee=yield this.favoritesStore.addFavorite(G.id),ne=m(m({},ee),G);this.displayFavoriteChar(p,ne)}))});for(let y of a)this.displayFavoriteChar(d,y)})}displayFavoriteChar(r,a){let i=new Z.Setting(r);i.setClass("favorite-control").setName(a.glyph).setDesc(a.name).addToggle(s=>s.setTooltip("Enable Quick Insert command in Obsidian").setValue(a.quickInsertEnabled).onChange(p=>this.toggleHotkeyCommand(a,p))).addButton(s=>s.setIcon("trash").setTooltip("Remove from favourites").onClick(()=>(i.settingEl.hide(),this.favoritesStore.removeFavorite(a.id))))}toggleHotkeyCommand(r,a){return c(this,null,function*(){let i=`insert-${de(r)}`;a?this.plugin.addCommand({id:i,name:`Insert '${r.glyph}'`,editorCallback:s=>(s.replaceSelection(r.glyph),!0)}):this.plugin.removeCommand(i),yield this.favoritesStore.update(r.id,()=>({quickInsertEnabled:a}))})}displayFilterSettings(r){return c(this,null,function*(){new Z.Setting(r).setHeading().setName("Character Pool").setDesc("Configure which Unicode characters are included in your search. Toggle the headings to display the options."),new Z.Setting(r).setName("General Categories").setClass("group-control").addToggle(s=>s.setValue(!1).onChange(p=>a.toggleClass("hidden",!p)));let a=r.createDiv({cls:["group-container","hidden"]});for(let s of we)yield this.addCharacterCategoryFilter(a,s);new Z.Setting(r).setName("Planes and Blocks").setClass("group-control").addToggle(s=>s.setValue(!1).onChange(p=>i.toggleClass("hidden",!p)));let i=r.createDiv({cls:["group-container","hidden"]});for(let s of ke)yield this.addCharacterPlaneFilters(i,s)})}addCharacterCategoryFilter(r,a){return c(this,null,function*(){let i=r.createDiv({cls:"item-container"});new Z.Setting(i).setHeading().setName(a.name);let s=i.createDiv({cls:"items-list"});for(let p of a.categories)yield t.addCharacterCategoryFilterToggle(s,this.poolStore,p)})}addCharacterPlaneFilters(r,a){return c(this,null,function*(){let i=r.createDiv({cls:"item-container"});new Z.Setting(i).setHeading().setClass("codePoint-interval").setName(createFragment(p=>{p.createSpan().appendText(a.description),t.codePointFragment(p,a.interval)}));let s=i.createDiv({cls:"blocks-list"});for(let p of a.blocks)yield t.addCharacterBlockFilterToggle(s,this.poolStore,p)})}static addCharacterBlockFilterToggle(r,a,i){return c(this,null,function*(){let s=yield a.getCharacterBlock(i.interval);new Z.Setting(r).setName(i.description).setDesc(createFragment(p=>t.codePointFragment(p,i.interval))).addToggle(p=>p.setValue(s).onChange(d=>a.setCharacterBlock(i.interval,d)))})}static addCharacterCategoryFilterToggle(r,a,i){return c(this,null,function*(){let s=yield a.getCharacterCategory(i.abbreviation);new Z.Setting(r).setName(i.name).setDesc(i.description).addToggle(p=>p.setValue(s).onChange(d=>a.setCharacterCategory(i.abbreviation,d)))})}static codePointFragment(r,a){return r.createSpan({cls:["character-code-point","monospace"]}).setText(`${Se(a.start)}\uFF0D${Se(a.end)}`),r}};var Ne=class{constructor(e,r,a){this.codePointStore=e;this.useHistoryStore=r;this.favoritesStore=a}getOne(e){return c(this,null,function*(){let a=(yield this.getAllCharacters()).find(i=>i.id===e);if(a==null)throw new $(`No character '${e}' exists.`);return a})}getAllCharacters(){return this.codePointStore.getCharacters()}getUsed(){return c(this,null,function*(){let e=yield this.getAllCharacters(),r=yield this.useHistoryStore.getUsed(),a=r.map(i=>i.id);return e.filter(i=>a.contains(i.id)).map(i=>m(m({},r.find(s=>s.id===i.id)),i))})}getFavorites(){return c(this,null,function*(){let e=yield this.getAllCharacters(),r=yield this.favoritesStore.getFavorites(),a=r.map(i=>i.id);return e.filter(i=>a.contains(i.id)).map(i=>m(m({},r.find(s=>s.id===i.id)),i))})}getAll(){return c(this,null,function*(){let e=yield this.getAllCharacters(),r=yield this.favoritesStore.getFavorites(),a=yield this.useHistoryStore.getUsed();return e.map(i=>m(m(m({},r.find(s=>s.id===i.id)),a.find(s=>s.id===i.id)),i))})}recordUsage(e){let r=new Date;return this.useHistoryStore.upsert(e,a=>{var i,s;return b(m({},a),{firstUse:(i=a==null?void 0:a.firstUse)!=null?i:r,lastUse:r,timesUsed:((s=a==null?void 0:a.timesUsed)!=null?s:0)+1})})}};var Be=class extends ye{constructor(r,a,i){super(r,a,Ue);this.editor=i}onChooseSuggestion(r,a){return c(this,null,function*(){this.editor.replaceSelection(r.character.glyph);try{yield this.characterService.recordUsage(r.character.id)}catch(i){}})}};var Oe=class{constructor(e){this.plugin=e}addModal(e){this.plugin.addCommand({id:"search-unicode-chars",name:"Search Unicode characters",editorCallback:r=>(new Be(this.plugin.app,e,r).open(),!0)})}addFavorites(e,r){return c(this,null,function*(){let a=(yield e.getFavorites()).filter(i=>i.quickInsertEnabled);for(let i of a){let s=yield r.getOne(i.id);this.addCommandFor(s)}})}addCommandFor(e){this.plugin.addCommand({id:`insert-${de(e)}`,name:`Insert '${e.glyph}'`,repeatable:!0,editorCallback:r=>{r.replaceSelection(e.glyph)}})}};function Ot(t){return t!=null&&"initialized"in t&&"version"in t}function Le(t){return t!=null&&"id"in t&&typeof t.id=="number"}var Lt="0.7.4",j="0.7.0";function Kt(t){return t!=null&&"initialized"in t&&"version"in t&&"settings"in t&&t.settings!=null&&"initialized"in t.settings&&"modified"in t.settings&&"filter"in t.settings&&"unicode"in t&&t.unicode!=null&&"initialized"in t.unicode&&"codePoints"in t.unicode&&"usage"in t&&t.usage!=null&&"initialized"in t.usage&&"codePoints"in t.usage}var Ke=class t{constructor(e,r,a,i,s,p){this.storedData=e;this.metaDm=r;this.poolDm=a;this.unicodeDm=i;this.useHistoryDm=s;this.favoritesDm=p}initializeData(){return c(this,null,function*(){var d;let e=(d=yield this.storedData.get())!=null?d:{},r=t.initialMigration(e),a=t.shapeLoadedData(r),i=yield this.initMeta(a),s=this.initData(i);this.storedData.set(s);let p=yield this.updateData(s);this.storedData.set(p),yield this.storedData.persist()})}initMeta(e){return c(this,null,function*(){let r=this.metaDm.initData(e.meta),a=yield this.metaDm.updateData(r,new Set([]));return b(m({},e),{meta:a})})}initData(e){let r=this.poolDm.initData(e.pool),a=this.unicodeDm.initData(e.characters),i=this.useHistoryDm.initData(e.useHistory),s=this.favoritesDm.initData(e.favorites);return b(m({},e),{pool:r,characters:a,useHistory:i,favorites:s})}updateData(e){return c(this,null,function*(){let r=yield this.metaDm.updateData(e.meta,new Set([])),a=new Set(r.events),i=yield this.poolDm.updateData(e.pool,a),s=yield this.unicodeDm.updateData(e.characters,a),p=yield this.useHistoryDm.updateData(e.useHistory,a),d=yield this.favoritesDm.updateData(e.favorites,a);return r.events=Array.from(a),{meta:r,pool:i,characters:s,useHistory:p,favorites:d}})}static shapeLoadedData(e){var r,a;return{meta:t.createChunk(e.meta),pool:t.createChunk((r=e.pool)!=null?r:e.filter),useHistory:t.createChunk((a=e.useHistory)!=null?a:e.usage),characters:t.createChunk(e.characters),favorites:t.createChunk(e.favorites)}}static createChunk(e){return Ot(e)?e:{initialized:!1,version:j}}static initialMigration(e){return Kt(e)&&e.initialized&&e.version==="0.6.0"?{filter:b(m({version:e.version},e.settings),{unicode:e.settings.filter}),usage:m({version:e.version},e.usage),characters:m({version:e.version},e.unicode)}:e}};var ze=class{initData(e){return e.initialized&&Er(e)?e:b(m({},e),{initialized:!0,version:j,unicode:{planes:ke.map(r=>b(m({},r.interval),{blocks:r.blocks.map(a=>b(m({},a.interval),{included:zt.planes.includes(r.planeNumber)}))})),categoryGroups:we.map(r=>({abbreviation:r.abbreviation,categories:r.categories.map(a=>({abbreviation:a.abbreviation,included:zt.categories.includes(r.abbreviation)}))}))}})}updateData(e,r){return c(this,null,function*(){return e})}},zt={planes:[0],categories:["L","N","P","S"]};function Er(t){return"unicode"in t&&Ar(t.unicode)}function Ar(t){return"planes"in t&&Array.isArray(t.planes)&&"categoryGroups"in t&&Array.isArray(t.categoryGroups)}var Ge=(e=>(e.DownloadCharacters="download_characters",e))(Ge||{});function Gt(t){return Object.values(Ge).includes(t)}var Ve=class{constructor(e){this.ucdService=e}initData(e){return e.initialized&&kr(e)?e:b(m({},e),{initialized:!0,version:j,codePoints:[]})}updateData(e,r){return c(this,null,function*(){let a=this.updateByVersion(e),i=r.has("download_characters"),s=a.codePoints.length<1;if(!(i||s))return a;let p=yield this.ucdService.download();return r.delete("download_characters"),b(m({},a),{codePoints:p})})}updateByVersion(e){if(e.version===j)return e;let r=e;return r.version==="0.7.0"&&(r.codePoints=r.codepoints.map(a=>{var i;return{id:(i=a.codepoint.codePointAt(0))!=null?i:0,glyph:a.codepoint,name:a.name,category:a.category}}),r.version="0.7.0"),r}};function kr(t){return"codePoints"in t&&t.codePoints!=null&&Array.isArray(t.codePoints)&&t.codePoints.every(wr)}function wr(t){return Le(t)&&"name"in t&&t.name!=null&&typeof t.name=="string"&&"category"in t&&t.category!=null&&typeof t.category=="string"}var qe=class{initData(e){return e.initialized&&Ur(e)?e:b(m({},e),{initialized:!0,version:j,codePoints:[]})}updateData(e,r){return c(this,null,function*(){if(e.version!=="0.7.0")return e;let a=e;return a.version==="0.7.0"&&(a.codePoints=a.codepoints.map(i=>{var s;return{id:(s=i.codepoint.codePointAt(0))!=null?s:0,firstUse:i.firstUsed,lastUse:i.lastUse,timesUsed:i.useCount}}),a.version="0.7.0"),a})}};function Ur(t){return"codePoints"in t&&t.codePoints!=null&&Array.isArray(t.codePoints)&&t.codePoints.every(Mr)}function Mr(t){return Le(t)&&"firstUse"in t&&t.firstUse!=null&&typeof t.firstUse=="string"&&"lastUse"in t&&t.lastUse!=null&&typeof t.lastUse=="string"&&"timesUsed"in t&&t.timesUsed!=null&&typeof t.timesUsed=="number"}var We=class{initData(e){return e.initialized&&_r(e)?e:b(m({},e),{initialized:!0,version:j,codePoints:[]})}updateData(e,r){return c(this,null,function*(){if(e.version===j)return e;let a=e;return a.version==="0.7.0"&&(a.codePoints=a.codepoints.map(i=>{var s;return{id:(s=i.codepoint.codePointAt(0))!=null?s:0,added:i.added,quickInsertEnabled:i.hotkey}}),a.version="0.7.0"),a})}};function _r(t){return"codePoints"in t&&Array.isArray(t.codePoints)}var Je=class{constructor(e,r,a){this.getCallback=e;this.persistCallback=r;this.value=a}get(){return c(this,null,function*(){return this.value==null&&(this.value=yield this.getCallback()),this.value})}set(e){this.value=e}persist(){return c(this,null,function*(){if(this.value==null)throw new ve("Refuse to persist a null value");return yield this.persistCallback(this.value),this.value})}};var $e=class{constructor(e){this.storedData=e}getMeta(){return c(this,null,function*(){return(yield this.storedData.get()).meta})}overwriteMeta(e){return c(this,null,function*(){return(yield this.mergeData({meta:e})).meta})}getCharacters(){return c(this,null,function*(){return(yield this.storedData.get()).characters})}overwriteCharacters(e){return c(this,null,function*(){return(yield this.mergeData({characters:e})).characters})}getPool(){return c(this,null,function*(){return(yield this.storedData.get()).pool})}overwritePool(e){return c(this,null,function*(){return(yield this.mergeData({pool:e})).pool})}getUseHistory(){return c(this,null,function*(){return(yield this.storedData.get()).useHistory})}overwriteUseHistory(e){return c(this,null,function*(){return(yield this.mergeData({useHistory:e})).useHistory})}getFavorites(){return c(this,null,function*(){return(yield this.storedData.get()).favorites})}overwriteFavorites(e){return c(this,null,function*(){return(yield this.mergeData({favorites:e})).favorites})}mergeData(e){return c(this,null,function*(){let r=yield this.storedData.get(),a=m(m({},r),e);return this.storedData.set(a),yield this.storedData.persist()})}};var Ze=class{constructor(e){this.store=e}getCharacters(){return c(this,null,function*(){return(yield this.store.getCharacters()).codePoints})}};function st(t){return b(m({},t),{lastUse:new Date(t.lastUse),firstUse:new Date(t.firstUse)})}function Vt(t){return b(m({},t),{lastUse:t.lastUse.toJSON(),firstUse:t.firstUse.toJSON()})}var Qe=class{constructor(e){this.store=e}upsert(e,r){return c(this,null,function*(){let a=yield this.getUsed(),i=a.findIndex(y=>y.id===e),s=i>=0,p=s?i:0,d=b(m({},r(s?m({},a[p]):void 0)),{id:e});return s?a[i]=d:a.unshift(d),yield this.overwriteUsageData(a),a[p]})}getUsed(){return c(this,null,function*(){return(yield this.store.getUseHistory()).codePoints.map(st)})}overwriteUsageData(e){return c(this,null,function*(){return(yield this.mergeUsage({codePoints:e.map(Vt)})).codePoints.map(st)})}mergeUsage(e){return c(this,null,function*(){let r=yield this.store.getUseHistory(),a=m(m({},r),e);return yield this.store.overwriteUseHistory(a)})}};function qt(t){return b(m({},t),{added:t.added.toJSON()})}var Ye=class{constructor(e){this.store=e}upsert(e,r){return c(this,null,function*(){let a=yield this.getFavorites(),i=a.findIndex(y=>y.id===e),s=i>=0,p=s?i:0,d=b(m({},r(s?m({},a[p]):void 0)),{id:e});return s?a[i]=d:a.unshift(d),yield this.overwriteFavoritesData(a),a[p]})}update(e,r){return c(this,null,function*(){let a=yield this.getFavorites(),i=a.findIndex(s=>s.id===e);if(i<0)throw new $(`No character '${e}' exists in favorites.`);return a[i]=b(m(m({},a[i]),r(m({},a[i]))),{id:e}),yield this.overwriteFavoritesData(a),a[i]})}addFavorite(e){return c(this,null,function*(){let r=yield this.getFavorites(),a=r.find(s=>s.id===e);if(a!=null)return a;let i={id:e,added:new Date,quickInsertEnabled:!1};return r.unshift(i),yield this.overwriteFavoritesData(r),i})}removeFavorite(e){return c(this,null,function*(){let r=yield this.getFavorites();r=r.filter(a=>a.id!==e),yield this.overwriteFavoritesData(r)})}getFavorites(){return c(this,null,function*(){return(yield this.store.getFavorites()).codePoints.map(e=>b(m({},e),{added:new Date(e.added)}))})}overwriteFavoritesData(e){return c(this,null,function*(){let r=yield this.mergeFavorites({codePoints:e.map(qt)});yield this.store.overwriteFavorites(r)})}mergeFavorites(e){return c(this,null,function*(){let r=yield this.store.getFavorites(),a=m(m({},r),e);return yield this.store.overwriteFavorites(a)})}};function lt(t,e){return t.start===e.start&&t.end===e.end}function Wt(t,e){return t.start<=e.start&&t.end>=e.end}var je=class{constructor(e,r){this.store=e;this.meta=r}getFilter(){return c(this,null,function*(){return(yield this.store.getPool()).unicode})}getCharacterBlock(e){return c(this,null,function*(){return(yield this.getBlockFilters()).some(r=>lt(r,e)&&r.included)})}setCharacterBlock(e,r){return c(this,null,function*(){let a=yield this.store.getPool(),i=a.unicode.planes.findIndex(p=>Wt(p,e));if(i<0)throw new $(`Block doesn't belong to any codePoint plane. ${e}`);let s=a.unicode.planes[i].blocks.findIndex(p=>lt(p,e));if(s<0)throw new $(`Block doesn't exist within a plane. ${e}`);a.unicode.planes[i].blocks[s].included=r,yield this.meta.request("download_characters"),yield this.store.overwritePool(a)})}getCharacterCategory(e){return c(this,null,function*(){return(yield this.getCategoryFilters()).some(r=>r.abbreviation===e&&r.included)})}setCharacterCategory(e,r){return c(this,null,function*(){let a=yield this.store.getPool(),i=a.unicode.categoryGroups.findIndex(p=>p.abbreviation===e[0]);if(i<0)throw new $(`CodePoint category group doesn't exist. ${e}: ${e[0]}`);let s=a.unicode.categoryGroups[i].categories.findIndex(p=>p.abbreviation===e);if(s<0)throw new $(`Block doesn't exist within a plane. ${e}`);a.unicode.categoryGroups[i].categories[s].included=r,yield this.meta.request("download_characters"),yield this.store.overwritePool(a)})}getBlockFilters(){return c(this,null,function*(){return(yield this.getFilter()).planes.flatMap(e=>e.blocks)})}getCategoryFilters(){return c(this,null,function*(){return(yield this.getFilter()).categoryGroups.flatMap(e=>e.categories)})}};var Xe=class{initData(e){return e.initialized&&Rr(e)?e:b(m({},e),{pluginVersion:Lt,initialized:!0,events:[]})}updateData(e,r){return c(this,null,function*(){return e})}};function Rr(t){return"events"in t&&t.events!=null&&Array.isArray(t.events)&&t.events.every(e=>Gt(e))}var et=class{constructor(e){this.store=e}request(e){return c(this,null,function*(){let r=yield this.store.getMeta();r.events.push(e),yield this.store.overwriteMeta(r)})}};var tt=class extends Jt.Plugin{constructor(e,r){super(e,r)}onload(){return c(this,null,function*(){let e=new Je(()=>this.loadData(),Ee=>this.saveData(Ee)),r=new $e(e),a=new et(r),i=new Ze(r),s=new Qe(r),p=new Ye(r),d=new Ne(i,s,p),y=new je(r,a),N=new Ae(y),G=new Xe,z=new ze,ee=new Ve(N),ne=new qe,ae=new We,he=new Ke(e,G,z,ee,ne,ae);yield he.initializeData();let Pe=new Oe(this);Pe.addModal(d),yield Pe.addFavorites(p,d),this.addSettingTab(new He(this.app,this,d,p,y,he))})}}; /*! Bundled license information: papaparse/papaparse.min.js: (* @license Papa Parse v5.5.1 https://github.com/mholt/PapaParse License: MIT *) */ /* nosourcemap */