6 lines
16 KiB
JavaScript
6 lines
16 KiB
JavaScript
/* THIS IS A GENERATED/BUNDLED FILE BY ESBUILD see https://github.com/BambusControl/obsidian-substitutions for the source */
|
|
"use strict";var b=Object.defineProperty,ke=Object.defineProperties,Pe=Object.getOwnPropertyDescriptor,Re=Object.getOwnPropertyDescriptors,Ae=Object.getOwnPropertyNames,K=Object.getOwnPropertySymbols;var W=Object.prototype.hasOwnProperty,Me=Object.prototype.propertyIsEnumerable;var Q=(t,e,i)=>e in t?b(t,e,{enumerable:!0,configurable:!0,writable:!0,value:i}):t[e]=i,l=(t,e)=>{for(var i in e||(e={}))W.call(e,i)&&Q(t,i,e[i]);if(K)for(var i of K(e))Me.call(e,i)&&Q(t,i,e[i]);return t},d=(t,e)=>ke(t,Re(e));var Ue=(t,e)=>{for(var i in e)b(t,i,{get:e[i],enumerable:!0})},Ie=(t,e,i,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let a of Ae(e))!W.call(t,a)&&a!==i&&b(t,a,{get:()=>e[a],enumerable:!(n=Pe(e,a))||n.enumerable});return t};var Ve=t=>Ie(b({},"__esModule",{value:!0}),t);var o=(t,e,i)=>new Promise((n,a)=>{var r=s=>{try{p(i.next(s))}catch(u){a(u)}},c=s=>{try{p(i.throw(s))}catch(u){a(u)}},p=s=>s.done?n(s.value):Promise.resolve(s.value).then(r,c);p((i=i.apply(t,e)).next())});var Qe={};Ue(Qe,{default:()=>_});module.exports=Ve(Qe);var Te=require("obsidian");var f=require("obsidian");var j=require("obsidian");function D(t){return t.source!=""&&t.replacement!=""}function X(t,e){let i=e=="",n=t.settingEl.hasClass("just-filled");return i||n?!1:(t.settingEl.addClass("just-filled"),!0)}function J(t){return t.replace(/\\[ntb\\]/g,e=>({"\\n":`
|
|
`,"\\t":" ","\\b":"\b","\\\\":"\\"})[e]||e)}function q(t){return t.replace(/[\n\t\b\\]/g,e=>({"\n":"\\n"," ":"\\t","\b":"\\b","\\":"\\\\"})[e]||e)}var S=/^\/(.+)\$\/([^/gy]*)$/;function Y(t){var a;let e=S.exec(t);if(e==null)return null;let i=`${e[1]}$`,n=(a=e[2])!=null?a:"";return new RegExp(i,n)}var ee="replace this",_e="/Day [0-9]$/i",Ne="Use /pattern$/flags format, e.g. /Day [0-9]$/i",g=class{constructor(e,i,n=()=>{}){this._modSwapDef=e;this._container=i;this._onFill=n;this.setting=null}get swapDef(){return this._modSwapDef}display(){if(this.setting!=null)return this.setting;let e=this._modSwapDef,i=new j.Setting(this._container).setClass("user-swap-definition");return D(e)&&i.setClass("just-filled"),i.addToggle(n=>{n.setTooltip("Enable/Disable this substitution").setValue(e.enabled).onChange(a=>{e.enabled=a}),n.toggleEl.addClass("hide-if-empty")}),i.addText(n=>{n.setPlaceholder(ee).onChange(a=>{e.source=a}).setValue(e.source.toString()),this.fromInput=n}).addExtraButton(n=>{n.setIcon("arrow-left-right").setTooltip("Swap from and to").onClick(()=>{let a=""+e.replacement,r=""+e.source;e.source=a,e.replacement=r,this.fromInput.setValue(a),this.toInput.setValue(r)}),n.extraSettingsEl.addClass("hide-if-empty")}).addText(n=>{n.setPlaceholder("with this").onChange(a=>o(this,null,function*(){e.replacement=J(a),X(i,e.replacement)&&(i.setClass("just-filled"),yield this._onFill())})).setValue(q(e.replacement)),this.toInput=n}),i.addExtraButton(n=>{n.setIcon("regex").setTooltip("Use Regular Expressions").onClick(()=>{e.kind=e.kind=="plain"?"regex":"plain",Z(this.swapDef.kind,this.fromInput,i,n)}),Z(this.swapDef.kind,this.fromInput,i,n)}),i.addExtraButton(n=>{n.setIcon("x").setTooltip("Remove substitution").onClick(()=>{e.action=2,i.settingEl.hide()}),n.extraSettingsEl.addClass("hide-if-empty")}),this.setting=i,i}};function Z(t,e,i,n){let a=t=="regex";i.controlEl.toggleClass("regex-enabled",a),n.extraSettingsEl.toggleClass("is-active",a);let r=e.inputEl;if(a){let c=S.test(e.getValue());r.toggleClass("invalid",!c),e.setPlaceholder(_e),r.title=c?"":Ne}else r.removeClass("invalid"),e.setPlaceholder(ee),r.title=""}function te(t){return d(l({id:0,kind:"plain",source:"",replacement:"",enabled:!0},t),{action:1})}function v(t,e,i){let n=new g(te(i),t,()=>{v(t,e).display()});return e.unshift(n),n}function ie(t){return d(l({},t),{action:0})}var E=class t extends f.PluginSettingTab{constructor(i,n,a){super(i,n);this.userSwap=a;this.rendered=!1;this.storedSwaps=[];this.newSwaps=[];this.searchQuery=""}get swapSettings(){return[...this.newSwaps,...this.storedSwaps]}static filterSwaps(i,n){let a=n.trim().toLowerCase();for(let r of i){let c=t.shouldShowSwapForQuery(r.swapDef,a);r.display().settingEl.toggleClass("search-hidden",!c)}}static shouldShowSwapForQuery(i,n){var a,r;return n===""||((a=i.source)!=null?a:"").toLowerCase().includes(n)||((r=i.replacement)!=null?r:"").toLowerCase().includes(n)}display(){return o(this,null,function*(){if(this.rendered)return;this.newSwaps=[],this.containerEl.addClass("plugin","substitutions","settings-tab");let i=this.containerEl.createDiv({cls:"heading"});new f.Setting(i).setHeading().setName("Substitutions").setDesc("Here you can set and enable automatic text substitutions. Auto paired characters, like brackets, currently do not work."),new f.Setting(this.containerEl).setClass("swap-search").setName("Search substitutions").setDesc("Filter substitutions by source or replacement text.").addSearch(r=>{r.setPlaceholder("Search substitutions").setValue(this.searchQuery).onChange(Le(c=>{this.searchQuery=c,t.filterSwaps(this.swapSettings,this.searchQuery)}))});let n=this.containerEl.createDiv({cls:["swap-definition-list","new"]}),a=this.containerEl.createDiv({cls:["swap-definition-list"]});this.storedSwaps=(yield this.userSwap.getSwaps()).map(ie).map(r=>new g(r,a)),v(n,this.newSwaps);for(let r of this.swapSettings)r.display();t.filterSwaps(this.swapSettings,this.searchQuery),this.rendered=!0})}hide(){return this.containerEl.empty(),this.rendered=!1,this.userSwap.overwriteDefinedSwaps(this.swapSettings.map(i=>i.swapDef))}};function Le(t){return(0,f.debounce)(t,200,!0)}var ae=require("@codemirror/view");function w(t){return l(l({},ze),t)}var ze={cache:"",swaps:[],replacement:null};var O=require("@codemirror/state");var y=require("@codemirror/state"),m={update:y.StateEffect.define(),replace:y.StateEffect.define(),revert:y.StateEffect.define()};function T(t,e,i,n=!1){let a=t.changeByRange(r=>{let c=e.length-(n?1:0),p=O.EditorSelection.range(r.anchor-c,r.head),s=p.from+i.length,u=s-1;return{range:O.EditorSelection.cursor(s),changes:[{insert:i,from:p.from,to:p.to}],effects:[m.update.of(null),m.replace.of({from:e,to:i,endPosition:u})]}});return t.update(a)}function ne(t,e){if(e.kind==="plain"&&t.endsWith(e.source))return{from:e.source,to:e.replacement};if(e.kind==="regex"){let i=Y(e.source),n=i==null?void 0:i.exec(t);if(i==null||n==null)return null;let a=n[0],r=a.replace(i,e.replacement);return{from:a,to:r}}return null}function re(t){return ae.EditorView.inputHandler.of((e,i,n,a,r)=>{var B;if(!!(e.compositionStarted||e.state.readOnly))return!1;let p=e.state.selection.main,s=a.length!==1,u=i===p.from&&n===p.to;if(s||!u)return!1;let G=(B=e.state.field(t,!1))!=null?B:w(),Fe=G.cache+a,N=G.swaps.map(L=>ne(Fe,L)).find(L=>L!=null);if(N==null)return!1;e.dispatch(r());let Ce=T(e.state,N.from,N.to);return e.dispatch(Ce),!0})}var oe=require("@codemirror/view");function se(t){return oe.EditorView.updateListener.of(e=>{var p,s;if(!e.transactions.some(u=>u.isUserEvent("delete.backward")))return;let n=e.state,a=n.selection.main,r=(p=n.field(t,!1))!=null?p:w();if(a.to!==((s=r.replacement)==null?void 0:s.endPosition))return;let c=Oe(n,r.replacement);e.view.dispatch(...c)})}function Oe(t,e){let i=T(t,e.to,e.from,!0),n=t.update({effects:[m.revert.of(null)]});return[i,n]}var le=require("@codemirror/state");function pe(t){let e=t.selection.asSingle().main.head;return t.sliceDoc(0,e)}function ce(t){let e=i=>w(l({swaps:t},i));return le.StateField.define({create(){return e()},update(i,n){let a=i;for(let r of n.effects)r.is(m.update)?a=d(l({},a),{cache:pe(n.state)}):r.is(m.replace)?a=d(l({},a),{replacement:{from:r.value.from,to:r.value.to,endPosition:r.value.endPosition}}):r.is(m.revert)&&(a=d(l({},a),{replacement:null}));return a}})}var me=require("@codemirror/view");function de(t){return t.update({effects:[m.update.of(null)]})}var $e=["input","delete","move","select","undo","redo"];function ue(){return me.EditorView.updateListener.of(t=>{if(!t.transactions.some(n=>$e.some(a=>n.isUserEvent(a))))return;let i=t.state;t.view.dispatch(de(i))})}var fe=require("obsidian");function h(t,e){return t.id-e.id}function Se(t){let e=t.filter(r=>r.enabled).sort(h),i=e.filter(r=>r.kind==="regex"&&!S.test(r.source)).map(r=>r.source),n=e.filter(r=>r.kind!=="regex"||S.test(r.source));if(i.length>0){let r=new fe.Notice(`Substitutions plugin detected invalid Regular Expression patterns (${i.length}) which will be ignored.
|
|
You can fix them within the settings menu.`,5e4)}let a=ce(n);return[a,ue(),re(a),se(a)]}var x=class t{static replaceAndUpdate(e,i,n){t.replaceExtensions(e,i),n.updateOptions()}static replaceAndRegister(e,i,n){t.replaceExtensions(e,i),n.registerEditorExtension(e)}static replaceExtensions(e,i){for(;e.length>0;)e.pop();e.push(Se(i))}};var C=require("obsidian");var F=class extends C.Modal{constructor(i,n,a){super(i);this.dataStore=n;this.placeholderValue=a;this.newSwaps=[]}onOpen(){return o(this,null,function*(){var p;let i=new DocumentFragment,n=i.createDiv();n.addClass("plugin","substitutions","add-substitution-modal");let a=n.createDiv({cls:"heading"});new C.Setting(a).setDesc("Auto paired characters, like brackets, currently do not work.");let r=n.createDiv({cls:["swap-definition-list","new"]}),c=v(r,this.newSwaps,{source:this.placeholderValue});for(let s of this.newSwaps)s.display();this.setTitle("Add new substitution"),this.setContent(i),(p=c.fromInput)==null||p.inputEl.focus()})}onClose(){return o(this,null,function*(){yield this.dataStore.defineNewSwaps(this.newSwaps.map(i=>i.swapDef))})}};var ge=(t=>t)(ge||{});function we(t){return Object.values(ge).includes(t)}var he="0.6.1",k="0.5.0";var P=class{initData(e){return e.initialized&&He(e)?e:d(l({},e),{pluginVersion:he,initialized:!0,events:[]})}updateData(e,i){return o(this,null,function*(){return e})}};function He(t){return"events"in t&&t.events!=null&&Array.isArray(t.events)&&t.events.every(e=>we(e))}var De=[{id:0,kind:"plain",source:"...",replacement:"\u2026",enabled:!0},{id:1,kind:"plain",source:"1/2",replacement:"\xBD",enabled:!0},{id:2,kind:"plain",source:"1/3",replacement:"\u2153",enabled:!0},{id:3,kind:"plain",source:"1/4",replacement:"\xBC",enabled:!0},{id:4,kind:"plain",source:"1/5",replacement:"\u2155",enabled:!0},{id:5,kind:"plain",source:"1/6",replacement:"\u2159",enabled:!0},{id:6,kind:"plain",source:"1/7",replacement:"\u2150",enabled:!0},{id:7,kind:"plain",source:"1/9",replacement:"\u2151",enabled:!0},{id:8,kind:"plain",source:"1/10",replacement:"\u2152",enabled:!0},{id:9,kind:"plain",source:"1/8",replacement:"\u215B",enabled:!0},{id:10,kind:"plain",source:"2/3",replacement:"\u2154",enabled:!0},{id:11,kind:"plain",source:"2/5",replacement:"\u2156",enabled:!0},{id:12,kind:"plain",source:"3/4",replacement:"\xBE",enabled:!0},{id:13,kind:"plain",source:"3/5",replacement:"\u2157",enabled:!0},{id:14,kind:"plain",source:"4/5",replacement:"\u2158",enabled:!0},{id:15,kind:"plain",source:"5/6",replacement:"\u215A",enabled:!0},{id:16,kind:"plain",source:"3/8",replacement:"\u215C",enabled:!0},{id:17,kind:"plain",source:"5/8",replacement:"\u215D",enabled:!0},{id:18,kind:"plain",source:"7/8",replacement:"\u215E",enabled:!0},{id:19,kind:"plain",source:"<--",replacement:"\u2190",enabled:!0},{id:20,kind:"plain",source:"-->",replacement:"\u2192",enabled:!0},{id:21,kind:"plain",source:"<->",replacement:"\u2194",enabled:!0},{id:22,kind:"plain",source:"!=",replacement:"\u2260",enabled:!0},{id:23,kind:"plain",source:"<=",replacement:"\u2264",enabled:!0},{id:24,kind:"plain",source:">=",replacement:"\u2265",enabled:!0},{id:25,kind:"plain",source:"~=",replacement:"\u2245",enabled:!0},{id:26,kind:"plain",source:"+-",replacement:"\xB1",enabled:!0},{id:27,kind:"plain",source:"-+",replacement:"\u2213",enabled:!0},{id:28,kind:"plain",source:"<<",replacement:"\u226A",enabled:!0},{id:29,kind:"plain",source:"\u226A<",replacement:"\u22D8",enabled:!0},{id:30,kind:"plain",source:">>",replacement:"\u226B",enabled:!0},{id:31,kind:"plain",source:"\u226B>",replacement:"\u22D9",enabled:!0}];function ve(t){return t!=null&&(t==="plain"||t==="regex")}function xe(t){return t!=null&&"kind"in t&&ve(t.kind)&&"source"in t&&typeof t.source=="string"&&"replacement"in t&&typeof t.replacement=="string"}function Ge(t){return t!=null&&typeof t=="number"&&Number.isInteger(t)&&t>=0}function be(t){return xe(t)&&"id"in t&&Ge(t.id)&&"enabled"in t&&typeof t.enabled=="boolean"}var R=class{initData(e){return e.initialized&&Be(e)?e:d(l({},e),{initialized:!0,version:k,definitions:De})}updateData(e,i){return o(this,null,function*(){return e})}};function Be(t){return"definitions"in t&&Array.isArray(t.definitions)&&t.definitions.every(e=>be(e))}function Ee(t){return t!=null&&"initialized"in t&&"version"in t}function ye(t){var e;return t!=null&&"initialized"in t&&"version"in t&&"substitutions"in t&&t.substitutions!=null&&"initialized"in t.substitutions&&"records"in t.substitutions&&((e=t.substitutions.records)==null?void 0:e.every(i=>Ke(i)))}function Ke(t){return t!=null&&"from"in t&&"to"in t&&"enabled"in t&&t.from!=null&&t.to!=null&&t.enabled!=null}var A=class t{constructor(e,i,n){this.storedData=e;this.metaDm=i;this.swapDm=n}initializeData(){return o(this,null,function*(){var p;let e=(p=yield this.storedData.get())!=null?p:{},i=t.initialMigration(e),n=t.shapeLoadedData(i),a=yield this.initMeta(n),r=this.initData(a);this.storedData.set(r);let c=yield this.updateData(r);this.storedData.set(c),yield this.storedData.persist()})}initMeta(e){return o(this,null,function*(){let i=this.metaDm.initData(e.meta),n=yield this.metaDm.updateData(i,new Set([]));return d(l({},e),{meta:n})})}initData(e){let i=this.swapDm.initData(e.swap);return d(l({},e),{swap:i})}updateData(e){return o(this,null,function*(){let i=yield this.metaDm.updateData(e.meta,new Set([])),n=new Set(i.events),a=yield this.swapDm.updateData(e.swap,n);return i.events=Array.from(n),{meta:i,swap:a}})}static shapeLoadedData(e){return{meta:t.createFragment(e.meta),swap:t.createFragment(e.swap)}}static createFragment(e){return Ee(e)?e:{initialized:!1,version:k}}static initialMigration(e){if(!(ye(e)&&e.initialized&&e.version==="0.1.0"))return e;let n=e.substitutions.records.length,a=e.substitutions.records.map((r,c)=>({id:n-c,kind:"plain",enabled:r.enabled,source:r.from,replacement:r.to}));return{swap:{version:e.version,initialized:e.initialized,definitions:a}}}};var M=class extends Error{};var U=class{constructor(e,i,n){this.getCallback=e;this.persistCallback=i;this.value=n}get(){return o(this,null,function*(){return this.value==null&&(this.value=yield this.getCallback()),this.value})}set(e){this.value=e}persist(){return o(this,null,function*(){if(this.value==null)throw new M("Refuse to persist a null value");return yield this.persistCallback(this.value),this.value})}};var I=class{constructor(e){this.storedData=e}getSwap(){return o(this,null,function*(){return(yield this.storedData.get()).swap})}overwriteSwap(e){return o(this,null,function*(){return(yield this.mergeData({swap:e})).swap})}mergeData(e){return o(this,null,function*(){let i=yield this.storedData.get(),n=l(l({},i),e);return this.storedData.set(n),yield this.storedData.persist()})}};function $(t){return{id:t.id,kind:t.kind,source:t.source,replacement:t.replacement,enabled:t.enabled}}function H(t){let e=t.length;for(let i=0;i<e;i++)t[i].id=i;return t.sort(h)}var V=class{constructor(e,i){this.store=e;this.modifiedCallback=i}getSwaps(){return o(this,null,function*(){return(yield this.store.getSwap()).definitions.sort(h)})}overwriteDefinedSwaps(e){return o(this,null,function*(){let i=yield this.store.getSwap(),n=new Array(...e.values()).filter(D),a=n.filter(s=>s.action===0),r=n.filter(s=>s.action===1),c=[...a,...r].map($),p=yield this.store.overwriteSwap(d(l({},i),{definitions:H(c)}));this.modifiedCallback(p)})}defineNewSwaps(e){return o(this,null,function*(){let i=yield this.store.getSwap(),n=i.definitions,a=new Array(...e.values()).filter(D).filter(p=>p.action===1).map($),r=[...n,...a],c=yield this.store.overwriteSwap(d(l({},i),{definitions:H(r)}));this.modifiedCallback(c)})}};var _=class extends Te.Plugin{constructor(e,i){super(e,i),this.extensions=[]}onload(){return o(this,null,function*(){let e=new U(()=>this.loadData(),s=>this.saveData(s)),i=new I(e),n=new V(i,s=>x.replaceAndUpdate(this.extensions,s.definitions,this.app.workspace)),a=new P,r=new R;yield new A(e,a,r).initializeData();let p=yield n.getSwaps();x.replaceAndRegister(this.extensions,p,this),this.addSettingTab(new E(this.app,this,n)),this.addCommand({id:"add-substitution",name:"Add Substitution",editorCallback:(s,u)=>{new F(this.app,n,s.getSelection()).open()}})})}};
|
|
|
|
/* nosourcemap */ |