You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

227 lines
431 KiB

2 years ago
/*
3 years ago
THIS IS A GENERATED/BUNDLED FILE BY ESBUILD
3 years ago
if you want to view the source visit the plugins github repository
*/
/*
License obsidian-tasks:
MIT License
Copyright (c) 2021 Martin Schenck and Clare Macrae
3 years ago
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
*/
/*
License rrule (included library):
rrule.js: Library for working with recurrence rules for calendar dates.
=======================================================================
Copyright 2010, Jakub Roztocil <jakub@roztocil.name> and Lars Schöning
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
1. Redistributions of source code must retain the above copyright notice,
this list of conditions and the following disclaimer.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
3. Neither the name of The author nor the names of its contributors may
be used to endorse or promote products derived from this software
without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS "AS IS" AND
ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
DISCLAIMED. IN NO EVENT SHALL THE AUTHOR AND CONTRIBUTORS BE LIABLE FOR
ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
(INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
./rrule.js and ./test/tests.js is based on python-dateutil. LICENCE:
python-dateutil - Extensions to the standard Python datetime module.
====================================================================
Copyright (c) 2003-2011 - Gustavo Niemeyer <gustavo@niemeyer.net>
Copyright (c) 2012 - Tomi Pieviläinen <tomi.pievilainen@iki.fi>
All rights reserved.
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
* Redistributions of source code must retain the above copyright notice,
this list of conditions and the following disclaimer.
* Redistributions in binary form must reproduce the above copyright notice,
this list of conditions and the following disclaimer in the documentation
and/or other materials provided with the distribution.
* Neither the name of the copyright holder nor the names of its
contributors may be used to endorse or promote products derived from
this software without specific prior written permission.
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR
CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
/*
License chrono-node (included library):
The MIT License
Copyright (c) 2014, Wanasit Tanakitrungruang
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
*/
2 years ago
"use strict";var gD=Object.create;var Ui=Object.defineProperty,_D=Object.defineProperties,TD=Object.getOwnPropertyDescriptor,bD=Object.getOwnPropertyDescriptors,vD=Object.getOwnPropertyNames,Kp=Object.getOwnPropertySymbols,wD=Object.getPrototypeOf,Xp=Object.prototype.hasOwnProperty,DD=Object.prototype.propertyIsEnumerable;var Zp=(r,e,t)=>e in r?Ui(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t,Ne=(r,e)=>{for(var t in e||(e={}))Xp.call(e,t)&&Zp(r,t,e[t]);if(Kp)for(var t of Kp(e))DD.call(e,t)&&Zp(r,t,e[t]);return r},rr=(r,e)=>_D(r,bD(e));var O=(r,e)=>()=>(e||r((e={exports:{}}).exports,e),e.exports),kD=(r,e)=>{for(var t in e)Ui(r,t,{get:e[t],enumerable:!0})},Qp=(r,e,t,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of vD(e))!Xp.call(r,s)&&s!==t&&Ui(r,s,{get:()=>e[s],enumerable:!(n=TD(e,s))||n.enumerable});return r};var os=(r,e,t)=>(t=r!=null?gD(wD(r)):{},Qp(e||!r||!r.__esModule?Ui(t,"default",{value:r,enumerable:!0}):t,r)),ED=r=>Qp(Ui({},"__esModule",{value:!0}),r);var J=(r,e,t)=>new Promise((n,s)=>{var a=c=>{try{l(t.next(c))}catch(f){s(f)}},o=c=>{try{l(t.throw(c))}catch(f){s(f)}},l=c=>c.done?n(c.value):Promise.resolve(c.value).then(a,o);l((t=t.apply(r,e)).next())});var Fe=O(Cn=>{"use strict";Object.defineProperty(Cn,"__esModule",{value:!0});Cn.matchAnyPattern=Cn.extractTerms=Cn.repeatedTimeunitPattern=void 0;function RD(r,e){let t=e.replace(/\((?!\?)/g,"(?:");return`${r}${t}\\s{0,5}(?:,?\\s{0,5}${t}){0,10}`}Cn.repeatedTimeunitPattern=RD;function Jp(r){let e;return r instanceof Array?e=[...r]:r instanceof Map?e=Array.from(r.keys()):e=Object.keys(r),e}Cn.extractTerms=Jp;function xD(r){return`(?:${Jp(r).sort((t,n)=>n.length-t.length).join("|").replace(/\./g,"\\.")})`}Cn.matchAnyPattern=xD});var xe=O((xl,Pl)=>{(function(r,e){typeof xl=="object"&&typeof Pl!="undefined"?Pl.exports=e():typeof define=="function"&&define.amd?define(e):(r=typeof globalThis!="undefined"?globalThis:r||self).dayjs=e()})(xl,function(){"use strict";var r=1e3,e=6e4,t=36e5,n="millisecond",s="second",a="minute",o="hour",l="day",c="week",f="month",m="quarter",g="year",T="date",S="Invalid Date",v=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,R=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,C={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_")},$=function(V,q,P){var Q=String(V);return!Q||Q.length>=q?V:""+Array(q+1-Q.length).join(P)+V},B={s:$,z:function(V){var q=-V.utcOffset(),P=Math.abs(q),Q=Math.floor(P/60),Y=P%60;return(q<=0?"+":"-")+$(Q,2,"0")+":"+$(Y,2,"0")},m:function V(q,P){if(q.date()<P.date())return-V(P,q);var Q=12*(P.year()-q.year())+(P.month()-q.month()),Y=q.clone().add(Q,f),oe=P-Y<0,y=q.clone().add(Q+(oe?-1:1),f);return+(-(Q+(P-Y)/(oe?Y-y:y-Y))||0)},a:function(V){return V<0?Math.ceil(V)||0:Math.floor(V)},p:function(V){return{M:f,y:g,w:c,d:l,D:T,h:o,m:a,s,ms:n,Q:m}[V]||String(V||"").toLowerCase().replace(/s$/,"")},u:function(V){return V===void 0}},W="en",De={};De[W]=C;var Te=function(V){return V instanceof Ft},be=function(V,q,P){var Q;if(!V)return W;if(typeof V=="string")De[V]&&(Q=V),q&&(De[V]=q,Q=V);else{var Y=V.name;De[Y]=V,Q=Y}return!P&&Q&&(W=Q),Q||!P&&W},ee=function(V,q){if(Te(V))return V.clone();var P=typeof q=="object"?q:{};return P.date=V,P.args=arguments,new Ft(P)},te=B;te.l=be,te.i=Te,te.w=function(V,q){return ee(V,{locale:q.$L,utc:q.$u,x:q.$x,$offset:q.$offset})};var Ft=function(){function V(P){this.$L=be(P.locale,null,!0),this.parse(P)}var q=V.prototype;return q.parse=function(P){this.$d=function(Q){var Y=Q.date,oe=Q.utc;if(Y===null)return new Date(NaN);if(te.u(Y))return new Date;if(Y instanceof Date)return new Date(Y);if(typeof Y=="string"&&!/Z$/i.test(Y)){var y=Y.match(v);if(y){var _=y[2]-1||0,w=(y[7]||"0").substring(0,3);return oe?new Date(Date.UTC(y[1],_,y[3]||1,y[4]||0,y[5]||0,y[6]||0,w)):new Date(y[1],_,y[3]||1,y[4]||0,y[5]||0,y[6]||0,w)}}return new Date(Y)}(P),this.$x=P.x||{}
[`+b+"] ";for(x in arguments[0])a(arguments[0],x)&&(p+=x+": "+arguments[0][x]+", ");p=p.slice(0,-2)}else p=arguments[b];h.push(p)}ee(i+`
Arguments: `+Array.prototype.slice.call(h).join("")+`
2 years ago
`+new Error().stack),d=!1}return u.apply(this,arguments)},u)}var Ft={};function gt(i,u){e.deprecationHandler!=null&&e.deprecationHandler(i,u),Ft[i]||(ee(u),Ft[i]=!0)}e.suppressDeprecationWarnings=!1,e.deprecationHandler=null;function V(i){return typeof Function!="undefined"&&i instanceof Function||Object.prototype.toString.call(i)==="[object Function]"}function q(i){var u,d;for(d in i)a(i,d)&&(u=i[d],V(u)?this[d]=u:this["_"+d]=u);this._config=i,this._dayOfMonthOrdinalParseLenient=new RegExp((this._dayOfMonthOrdinalParse.source||this._ordinalParse.source)+"|"+/\d{1,2}/.source)}function P(i,u){var d=g({},i),h;for(h in u)a(u,h)&&(s(i[h])&&s(u[h])?(d[h]={},g(d[h],i[h]),g(d[h],u[h])):u[h]!=null?d[h]=u[h]:delete d[h]);for(h in i)a(i,h)&&!a(u,h)&&s(i[h])&&(d[h]=g({},d[h]));return d}function Q(i){i!=null&&this.set(i)}var Y;Object.keys?Y=Object.keys:Y=function(i){var u,d=[];for(u in i)a(i,u)&&d.push(u);return d};var oe={sameDay:"[Today at] LT",nextDay:"[Tomorrow at] LT",nextWeek:"dddd [at] LT",lastDay:"[Yesterday at] LT",lastWeek:"[Last] dddd [at] LT",sameElse:"L"};function y(i,u,d){var h=this._calendar[i]||this._calendar.sameElse;return V(h)?h.call(u,d):h}function _(i,u,d){var h=""+Math.abs(i),p=u-h.length,b=i>=0;return(b?d?"+":"":"-")+Math.pow(10,Math.max(0,p)).toString().substr(1)+h}var w=/(\[[^\[]*\])|(\\)?([Hh]mm(ss)?|Mo|MM?M?M?|Do|DDDo|DD?D?D?|ddd?d?|do?|w[o|w]?|W[o|W]?|Qo?|N{1,5}|YYYYYY|YYYYY|YYYY|YY|y{2,4}|yo?|gg(ggg?)?|GG(GGG?)?|e|E|a|A|hh?|HH?|kk?|mm?|ss?|S{1,9}|x|X|zz?|ZZ?|.)/g,D=/(\[[^\[]*\])|(\\)?(LTS|LT|LL?L?L?|l{1,4})/g,E={},M={};function k(i,u,d,h){var p=h;typeof h=="string"&&(p=function(){return this[h]()}),i&&(M[i]=p),u&&(M[u[0]]=function(){return _(p.apply(this,arguments),u[1],u[2])}),d&&(M[d]=function(){return this.localeData().ordinal(p.apply(this,arguments),i)})}function I(i){return i.match(/\[[\s\S]/)?i.replace(/^\[|\]$/g,""):i.replace(/\\/g,"")}function A(i){var u=i.match(w),d,h;for(d=0,h=u.length;d<h;d++)M[u[d]]?u[d]=M[u[d]]:u[d]=I(u[d]);return function(p){var b="",x;for(x=0;x<h;x++)b+=V(u[x])?u[x].call(p,i):u[x];return b}}function N(i,u){return i.isValid()?(u=j(u,i.localeData()),E[u]=E[u]||A(u),E[u](i)):i.localeData().invalidDate()}function j(i,u){var d=5;function h(p){return u.longDateFormat(p)||p}for(D.lastIndex=0;d>=0&&D.test(i);)i=i.replace(D,h),D.lastIndex=0,d-=1;return i}var ke={LTS:"h:mm:ss A",LT:"h:mm A",L:"MM/DD/YYYY",LL:"MMMM D, YYYY",LLL:"MMMM D, YYYY h:mm A",LLLL:"dddd, MMMM D, YYYY h:mm A"};function pe(i){var u=this._longDateFormat[i],d=this._longDateFormat[i.toUpperCase()];return u||!d?u:(this._longDateFormat[i]=d.match(w).map(function(h){return h==="MMMM"||h==="MM"||h==="DD"||h==="dddd"?h.slice(1):h}).join(""),this._longDateFormat[i])}var le="Invalid date";function Ie(){return this._invalidDate}var K="%d",qe=/\d{1,2}/;function Qe(i){return this._ordinal.replace("%d",i)}var dt={future:"in %s",past:"%s ago",s:"a few seconds",ss:"%d seconds",m:"a minute",mm:"%d minutes",h:"an hour",hh:"%d hours",d:"a day",dd:"%d days",w:"a week",ww:"%d weeks",M:"a month",MM:"%d months",y:"a year",yy:"%d years"};function Or(i,u,d,h){var p=this._relativeTime[d];return V(p)?p(i,u,d,h):p.replace(/%d/i,i)}function at(i,u){var d=this._relativeTime[i>0?"future":"past"];return V(d)?d(u):d.replace(/%s/i,u)}var je={};function ft(i,u){var d=i.toLowerCase();je[d]=je[d+"s"]=je[u]=i}function _t(i){return typeof i=="string"?je[i]||je[i.toLowerCase()]:void 0}function Sn(i){var u={},d,h;for(h in i)a(i,h)&&(d=_t(h),d&&(u[d]=i[h]));return u}var Pi={};function $e(i,u){Pi[i]=u}function Fs(i){var u=[],d;for(d in i)a(i,d)&&u.push({unit:d,priority:Pi[d]});return u.sort(function(h,p){return h.priority-p.priority}),u}function Jn(i){return i%4===0&&i%100!==0||i%400===0}function ht(i){return i<0?Math.ceil(i)||0:Math.floor(i)}function ce(i){var u=+i,d=0;return u!==0&&isFinite(u)&&(d=ht(u)),d}function Zr(i,u){return function(d){return d!=null?(es(this,i,d),e.updateOffset(this,u),this):Rt(this,i)}}function Rt(i,u){return i.isValid()?i._d["get"+(i._isUTC?"UTC":"")+u]():NaN}function es(i,u,d){i.isValid()&&!isNaN(d)&&(u==="FullYear"&&Jn(i.ye
`).map(eI).filter(function(t){return t!==null});return Ht(Ht({},e[0]),e[1])}function $a(r){var e={},t=/DTSTART(?:;TZID=([^:=]+?))?(?::|=)([^;\s]+)/i.exec(r);if(!t)return e;var n=t[1],s=t[2];return n&&(e.tzid=n),e.dtstart=se.untilStringToDate(s),e}function eI(r){if(r=r.replace(/^\s+|\s+$/,""),!r.length)return null;var e=/^([A-Z]+?)[:;]/.exec(r.toUpperCase());if(!e)return ob(r);var t=e[1];switch(t.toUpperCase()){case"RRULE":case"EXRULE":return ob(r);case"DTSTART":return $a(r);default:throw new Error("Unsupported RFC prop ".concat(t," in ").concat(r))}}function ob(r){var e=r.replace(/^RRULE:/i,""),t=$a(e),n=r.replace(/^(?:RRULE|EXRULE):/i,"").split(";");return n.forEach(function(s){var a=s.split("="),o=a[0],l=a[1];switch(o.toUpperCase()){case"FREQ":t.freq=_e[l.toUpperCase()];break;case"WKST":t.wkst=kr[l.toUpperCase()];break;case"COUNT":case"INTERVAL":case"BYSETPOS":case"BYMONTH":case"BYMONTHDAY":case"BYYEARDAY":case"BYWEEKNO":case"BYHOUR":case"BYMINUTE":case"BYSECOND":var c=tI(l),f=o.toLowerCase();t[f]=c;break;case"BYWEEKDAY":case"BYDAY":t.byweekday=rI(l);break;case"DTSTART":case"TZID":var m=$a(r);t.tzid=m.tzid,t.dtstart=m.dtstart;break;case"UNTIL":t.until=se.untilStringToDate(l);break;case"BYEASTER":t.byeaster=Number(l);break;default:throw new Error("Unknown RRULE property '"+o+"'")}}),t}function tI(r){if(r.indexOf(",")!==-1){var e=r.split(",");return e.map(ub)}return ub(r)}function ub(r){return/^[+-]?\d+$/.test(r)?Number(r):r}function rI(r){var e=r.split(",");return e.map(function(t){if(t.length===2)return kr[t];var n=t.match(/^([+-]?\d{1,2})([A-Z]{2})$/);if(!n||n.length<3)throw new SyntaxError("Invalid weekday string: ".concat(t));var s=Number(n[1]),a=n[2],o=kr[a].weekday;return new ct(o,s)})}var vs=function(){function r(e,t){if(isNaN(e.getTime()))throw new RangeError("Invalid date passed to DateWithZone");this.date=e,this.tzid=t}return Object.defineProperty(r.prototype,"isUTC",{get:function(){return!this.tzid||this.tzid.toUpperCase()==="UTC"},enumerable:!1,configurable:!0}),r.prototype.toString=function(){var e=se.timeToUntilString(this.date.getTime(),this.isUTC);return this.isUTC?":".concat(e):";TZID=".concat(this.tzid,":").concat(e)},r.prototype.getTime=function(){return this.date.getTime()},r.prototype.rezonedDate=function(){var e;if(this.isUTC)return this.date;var t=Intl.DateTimeFormat().resolvedOptions().timeZone,n=new Date(this.date.toLocaleString(void 0,{timeZone:t})),s=new Date(this.date.toLocaleString(void 0,{timeZone:(e=this.tzid)!==null&&e!==void 0?e:"UTC"})),a=s.getTime()-n.getTime();return new Date(this.date.getTime()-a)},r}();function Ba(r){for(var e=[],t="",n=Object.keys(r),s=Object.keys(ja),a=0;a<n.length;a++)if(n[a]!=="tzid"&&!!Ee(s,n[a])){var o=n[a].toUpperCase(),l=r[n[a]],c="";if(!(!ze(l)||Nt(l)&&!l.length)){switch(o){case"FREQ":c=X.FREQUENCIES[r.freq];break;case"WKST":ar(l)?c=new ct(l).toString():c=l.toString();break;case"BYWEEKDAY":o="BYDAY",c=MT(l).map(function(S){return S instanceof ct?S:Nt(S)?new ct(S[0],S[1]):new ct(S)}).toString();break;case"DTSTART":t=nI(l,r.tzid);break;case"UNTIL":c=se.timeToUntilString(l,!r.tzid);break;default:if(Nt(l)){for(var f=[],m=0;m<l.length;m++)f[m]=String(l[m]);c=f.toString()}else c=String(l)}c&&e.push([o,c])}}var g=e.map(function(S){var v=S[0],R=S[1];return"".concat(v,"=").concat(R.toString())}).join(";"),T="";return g!==""&&(T="RRULE:".concat(g)),[t,T].filter(function(S){return!!S}).join(`
`)}function nI(r,e){return r?"DTSTART"+new vs(new Date(r),e).toString():""}function sI(r,e){return Array.isArray(r)?!Array.isArray(e)||r.length!==e.length?!1:r.every(function(t,n){return t.getTime()===e[n].getTime()}):r instanceof Date?e instanceof Date&&r.getTime()===e.getTime():r===e}var lb=function(){function r(){this.all=!1,this.before=[],this.after=[],this.between=[]}return r.prototype._cacheAdd=function(e,t,n){t&&(t=t instanceof Date?se.clone(t):se.cloneDates(t)),e==="all"?this.all=t:(n._value=t,this[e].push(n))},r.prototype._cacheGet=function(e,t){var n=!1,s=t?Object.keys(t):[],a=function(m){for(var g=0;g<s.length;g++){var T=s[g];if(!sI(t[T],m[T]))return!0}return!1},o=this[e];if(e==="all")n=this.all;else if(Nt(o))for(var l=0;l<o.length;l++){var c=o[l];if(!(s.length&&a(c))){n=c._value;break}}if(!n&&this.all){for(var f=new mn(e,t),l=0;l<this.all.length&&f.accept(this.all[l]);l++);n=f.getValue(),this._cacheAdd(e,n,t)}return Nt(n)?se.cloneDates(n):n instanceof Date?se.clone(n):n},r}();var cb=U(U(U(U(U(U(U(U(U(U(U(U(U([],we(1,31),!0),we(2,28),!0),we(3,31),!0),we(4,30),!0),we(5,31),!0),we(6,30),!0),we(7,31),!0),we(8,31),!0),we(9,30),!0),we(10,31),!0),we(11,30),!0),we(12,31),!0),we(1,7),!0),db=U(U(U(U(U(U(U(U(U(U(U(U(U([],we(1,31),!0),we(2,29),!0),we(3,31),!0),we(4,30),!0),we(5,31),!0),we(6,30),!0),we(7,31),!0),we(8,31),!0),we(9,30),!0),we(10,31),!0),we(11,30),!0),we(12,31),!0),we(1,7),!0),iI=Dr(1,29),aI=Dr(1,30),$n=Dr(1,31),Ut=Dr(1,32),fb=U(U(U(U(U(U(U(U(U(U(U(U(U([],Ut,!0),aI,!0),Ut,!0),$n,!0),Ut,!0),$n,!0),Ut,!0),Ut,!0),$n,!0),Ut,!0),$n,!0),Ut,!0),Ut.slice(0,7),!0),hb=U(U(U(U(U(U(U(U(U(U(U(U(U([],Ut,!0),iI,!0),Ut,!0),$n,!0),Ut,!0),$n,!0),Ut,!0),Ut,!0),$n,!0),Ut,!0),$n,!0),Ut,!0),Ut.slice(0,7),!0),oI=Dr(-28,0),uI=Dr(-29,0),Gn=Dr(-30,0),Wt=Dr(-31,0),pb=U(U(U(U(U(U(U(U(U(U(U(U(U([],Wt,!0),uI,!0),Wt,!0),Gn,!0),Wt,!0),Gn,!0),Wt,!0),Wt,!0),Gn,!0),Wt,!0),Gn,!0),Wt,!0),Wt.slice(0,7),!0),mb=U(U(U(U(U(U(U(U(U(U(U(U(U([],Wt,!0),oI,!0),Wt,!0),Gn,!0),Wt,!0),Gn,!0),Wt,!0),Wt,!0),Gn,!0),Wt,!0),Gn,!0),Wt,!0),Wt.slice(0,7),!0),yb=[0,31,60,91,121,152,182,213,244,274,305,335,366],gb=[0,31,59,90,120,151,181,212,243,273,304,334,365],Sh=function(){for(var r=[],e=0;e<55;e++)r=r.concat(Dr(7));return r}();function _b(r,e){var t=new Date(Date.UTC(r,0,1)),n=se.isLeapYear(r)?366:365,s=se.isLeapYear(r+1)?366:365,a=se.toOrdinal(t),o=se.getWeekday(t),l=Ht(Ht({yearlen:n,nextyearlen:s,yearordinal:a,yearweekday:o},lI(r)),{wnomask:null});if(or(e.byweekno))return l;l.wnomask=we(0,n+7);var c,f,m=c=Yt(7-o+e.wkst,7);m>=4?(m=0,f=l.yearlen+Yt(o-e.wkst,7)):f=n-m;for(var g=Math.floor(f/7),T=Yt(f,7),S=Math.floor(g+T/4),v=0;v<e.byweekno.length;v++){var R=e.byweekno[v];if(R<0&&(R+=S+1),R>0&&R<=S){var C=void 0;R>1?(C=m+(R-1)*7,m!==c&&(C-=7-c)):C=m;for(var $=0;$<7&&(l.wnomask[C]=1,C++,l.wdaymask[C]!==e.wkst);$++);}}if(Ee(e.byweekno,1)){var C=m+S*7;if(m!==c&&(C-=7-c),C<n)for(var v=0;v<7&&(l.wnomask[C]=1,C+=1,l.wdaymask[C]!==e.wkst);v++);}if(m){var B=void 0;if(Ee(e.byweekno,-1))B=-1;else{var W=se.getWeekday(new Date(Date.UTC(r-1,0,1))),De=Yt(7-W.valueOf()+e.wkst,7),Te=se.isLeapYear(r-1)?366:365,be=void 0;De>=4?(De=0,be=Te+Yt(W-e.wkst,7)):be=n-m,B=Math.floor(52+Yt(be,7)/4)}if(Ee(e.byweekno,B))for(var C=0;C<m;C++)l.wnomask[C]=1}return l}function lI(r){var e=se.isLeapYear(r)?366:365,t=new Date(Date.UTC(r,0,1)),n=se.getWeekday(t);return e===365?{mmask:cb,mdaymask:hb,nmdaymask:mb,wdaymask:Sh.slice(n),mrange:gb}:{mmask:db,mdaymask:fb,nmdaymask:pb,wdaymask:Sh.slice(n),mrange:yb}}function Tb(r,e,t,n,s,a){var o={lastyear:r,lastmonth:e,nwdaymask:[]},l=[];if(a.freq===X.YEARLY)if(or(a.bymonth))l=[[0,t]];else for(var c=0;c<a.bymonth.length;c++)e=a.bymonth[c],l.push(n.slice(e-1,e+1));else a.freq===X.MONTHLY&&(l=[n.slice(e-1,e+1)]);if(or(l))return o;o.nwdaymask=we(0,t);for(var c=0;c<l.length;c++)for(var f=l[c],m=f[0],g=f[1]-1,T=0;T<a.bynweekday.length;T++){var S=void 0,v=a.bynweekday[T],R=v[0],C=v[1];C<0?(S=g+(C+1)*7,S-=Yt(s[S]-R,7)):(S=m+(C-1)*7,S+=Yt(7-s[S]+R,7)),m<=S&&S<=g&&(o.nwdaymask[S]=1)}return o}function bb(r,e){e===void 0&&(e=0);var t=r%19,n=Math.floor(r/100),s=r%100,a=M
`),n=0;n<t.length;){var s=t[n]=t[n].replace(/\s+$/g,"");s?n>0&&s[0]===" "?(t[n-1]+=s.slice(1),t.splice(n,1)):n+=1:t.splice(n,1)}return t}function bI(r){r.forEach(function(e){if(!/(VALUE=DATE(-TIME)?)|(TZID=)/.test(e))throw new Error("unsupported RDATE/EXDATE parm: "+e)})}function Sb(r,e){return bI(e),r.split(",").map(function(t){return se.untilStringToDate(t)})}function Ob(r){var e=this;return function(t){if(t!==void 0&&(e["_".concat(r)]=t),e["_".concat(r)]!==void 0)return e["_".concat(r)];for(var n=0;n<e._rrule.length;n++){var s=e._rrule[n].origOptions[r];if(s)return s}}}var Mh=function(r){li(e,r);function e(t){t===void 0&&(t=!1);var n=r.call(this,{},t)||this;return n.dtstart=Ob.apply(n,["dtstart"]),n.tzid=Ob.apply(n,["tzid"]),n._rrule=[],n._rdate=[],n._exrule=[],n._exdate=[],n}return e.prototype._iter=function(t){return kb(t,this._rrule,this._exrule,this._rdate,this._exdate,this.tzid())},e.prototype.rrule=function(t){Mb(t,this._rrule)},e.prototype.exrule=function(t){Mb(t,this._exrule)},e.prototype.rdate=function(t){Rb(t,this._rdate)},e.prototype.exdate=function(t){Rb(t,this._exdate)},e.prototype.rrules=function(){return this._rrule.map(function(t){return ku(t.toString())})},e.prototype.exrules=function(){return this._exrule.map(function(t){return ku(t.toString())})},e.prototype.rdates=function(){return this._rdate.map(function(t){return new Date(t.getTime())})},e.prototype.exdates=function(){return this._exdate.map(function(t){return new Date(t.getTime())})},e.prototype.valueOf=function(){var t=[];return!this._rrule.length&&this._dtstart&&(t=t.concat(Ba({dtstart:this._dtstart}))),this._rrule.forEach(function(n){t=t.concat(n.toString().split(`
2 years ago
`))}),this._exrule.forEach(function(n){t=t.concat(n.toString().split(`
2 years ago
`).map(function(s){return s.replace(/^RRULE:/,"EXRULE:")}).filter(function(s){return!/^DTSTART/.test(s)}))}),this._rdate.length&&t.push(xb("RDATE",this._rdate,this.tzid())),this._exdate.length&&t.push(xb("EXDATE",this._exdate,this.tzid())),t},e.prototype.toString=function(){return this.valueOf().join(`
`)},e.prototype.clone=function(){var t=new e(!!this._cache);return this._rrule.forEach(function(n){return t.rrule(n.clone())}),this._exrule.forEach(function(n){return t.exrule(n.clone())}),this._rdate.forEach(function(n){return t.rdate(new Date(n.getTime()))}),this._exdate.forEach(function(n){return t.exdate(new Date(n.getTime()))}),t},e}(X);function Mb(r,e){if(!(r instanceof X))throw new TypeError(String(r)+" is not RRule instance");Ee(e.map(String),String(r))||e.push(r)}function Rb(r,e){if(!(r instanceof Date))throw new TypeError(String(r)+" is not Date instance");Ee(e.map(Number),Number(r))||(e.push(r),se.sort(e))}function xb(r,e,t){var n=!t||t.toUpperCase()==="UTC",s=n?"".concat(r,":"):"".concat(r,";TZID=").concat(t,":"),a=e.map(function(o){return se.timeToUntilString(o.valueOf(),n)}).join(",");return"".concat(s).concat(a)}function Hr(r,e){return r!==null&&e===null?-1:r===null&&e!==null?1:r!==null&&e!==null?r.isValid()&&!e.isValid()?-1:!r.isValid()&&e.isValid()||r.isAfter(e)?1:r.isBefore(e)?-1:0:0}var Ot=class{constructor({rrule:e,baseOnToday:t,referenceDate:n,startDate:s,scheduledDate:a,dueDate:o}){this.rrule=e,this.baseOnToday=t,this.referenceDate=n,this.startDate=s,this.scheduledDate=a,this.dueDate=o}static fromText({recurrenceRuleText:e,startDate:t,scheduledDate:n,dueDate:s}){try{let a=e.match(/^([a-zA-Z0-9, !]+?)( when done)?$/i);if(a==null)return null;let o=a[1].trim(),l=a[2]!==void 0,c=X.parseText(o);if(c!==null){let f=null;s?f=window.moment(s):n?f=window.moment(n):t&&(f=window.moment(t)),!l&&f!==null?c.dtstart=window.moment(f).startOf("day").utc(!0).toDate():c.dtstart=window.moment().startOf("day").utc(!0).toDate();let m=new X(c);return new Ot({rrule:m,baseOnToday:l,referenceDate:f,startDate:t,scheduledDate:n,dueDate:s})}}catch(a){}return null}toText(){let e=this.rrule.toText();return this.baseOnToday&&(e+=" when done"),e}next(){var t;let e;if(this.baseOnToday){let n=window.moment(),s=new X(rr(Ne({},this.rrule.origOptions),{dtstart:n.startOf("day").utc(!0).toDate()}));e=this.nextAfter(n.endOf("day"),s)}else{let n=window.moment((t=this.referenceDate)!=null?t:void 0).endOf("day");e=this.nextAfter(n,this.rrule)}if(e!==null){let n=null,s=null,a=null;if(this.referenceDate){if(this.startDate){let o=window.moment.duration(this.startDate.diff(this.referenceDate));n=window.moment(e),n.add(Math.round(o.asDays()),"days")}if(this.scheduledDate){let o=window.moment.duration(this.scheduledDate.diff(this.referenceDate));s=window.moment(e),s.add(Math.round(o.asDays()),"days")}if(this.dueDate){let o=window.moment.duration(this.dueDate.diff(this.referenceDate));a=window.moment(e),a.add(Math.round(o.asDays()),"days")}}return{startDate:n,scheduledDate:s,dueDate:a}}return null}identicalTo(e){return this.baseOnToday!==e.baseOnToday||Hr(this.startDate,e.startDate)!==0||Hr(this.scheduledDate,e.scheduledDate)!==0||Hr(this.dueDate,e.dueDate)!==0?!1:this.toText()===e.toText()}nextAfter(e,t){e.utc(!0);let n=window.moment(t.after(e.toDate())),s=this.toText(),a=s.match(/every( \d+)? month(s)?(.*)?/);a!==null&&(s.includes(" on ")||(n=Ot.nextAfterMonths(e,n,t,a[1])));let o=s.match(/every( \d+)? year(s)?(.*)?/);return o!==null&&(n=Ot.nextAfterYears(e,n,t,o[1])),Ot.addTimezone(n).toDate()}static nextAfterMonths(e,t,n,s){let a=1;for(s!==void 0&&(a=Number.parseInt(s.trim(),10));Ot.isSkippingTooManyMonths(e,t,a);)t=Ot.fromOneDayEarlier(e,n);return t}static isSkippingTooManyMonths(e,t,n){let s=t.month()-e.month();return s+=(t.year()-e.year())*12,s>n}static nextAfterYears(e,t,n,s){let a=1;for(s!==void 0&&(a=Number.parseInt(s.trim(),10));Ot.isSkippingTooManyYears(e,t,a);)t=Ot.fromOneDayEarlier(e,n);return t}static isSkippingTooManyYears(e,t,n){return t.year()-e.year()>n}static fromOneDayEarlier(e,t){e.subtract(1,"days").endOf("day");let n=t.origOptions;return n.dtstart=e.startOf("day").toDate(),t=new X(n),window.moment(t.after(e.toDate()))}static addTimezone(e){return window.moment.utc(e).local(!0).startOf("day")}};function Pb(r){let e=`${r.startDateSymbol}${r.scheduledDateSymbol}${r.dueDateSymbol}`;return(t,n,s)=>{let a=[];a=a.concat(wI(t,n,s,e))
`}),a=a.slice(0,s.autoSuggestMaxItems),a}}function vI(r,e,t){let n=a=>Object.values(t.prioritySymbols).some(o=>o.length>0&&a.includes(o)),s=[];return r.includes(t.dueDateSymbol)||s.push({displayText:`${t.dueDateSymbol} due date`,appendText:`${t.dueDateSymbol} `}),r.includes(t.startDateSymbol)||s.push({displayText:`${t.startDateSymbol} start date`,appendText:`${t.startDateSymbol} `}),r.includes(t.scheduledDateSymbol)||s.push({displayText:`${t.scheduledDateSymbol} scheduled date`,appendText:`${t.scheduledDateSymbol} `}),n(r)||(s.push({displayText:`${t.prioritySymbols.High} high priority`,appendText:`${t.prioritySymbols.High} `}),s.push({displayText:`${t.prioritySymbols.Medium} medium priority`,appendText:`${t.prioritySymbols.Medium} `}),s.push({displayText:`${t.prioritySymbols.Low} low priority`,appendText:`${t.prioritySymbols.Low} `})),r.includes(t.recurrenceSymbol)||s.push({displayText:`${t.recurrenceSymbol} recurring (repeat)`,appendText:`${t.recurrenceSymbol} `}),s}function wI(r,e,t,n){let s=["today","tomorrow","Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","next week","next month","next year"],a=[],o=new RegExp(`([${n}])\\s*([0-9a-zA-Z ]*)`,"ug"),l=Rh(r,o,e);if(l&&l.length>=2){let c=l[1],f=l[2];if(f.length<t.autoSuggestMinMatch)return[];let m=f&&f.length>1?Xt.parseDate(oi(f),!0):null;m&&m.isValid()&&a.push({displayText:`${m.format(ie.dateFormat)}`,appendText:`${c} ${m.format(ie.dateFormat)} `,insertAt:l.index,insertSkip:l[0].length});let g=1,T=5,S=s.filter(v=>f&&f.length>=g&&v.toLowerCase().includes(f.toLowerCase())).slice(0,T);S.length===0&&(S=s.slice(0,T));for(let v of S){let C=`${Xt.parseDate(v,!0).format(ie.dateFormat)}`;a.push({suggestionType:"match",displayText:`${v} (${C})`,appendText:`${c} ${C} `,insertAt:l.index,insertSkip:l[0].length})}}return a}function DI(r,e,t,n){var c;let s=["every","every day","every week","every month","every month on the","every year","every week on Sunday","every week on Monday","every week on Tuesday","every week on Wednesday","every week on Thursday","every week on Friday","every week on Saturday"],a=[],o=new RegExp(`(${n})\\s*([0-9a-zA-Z ]*)`,"ug"),l=Rh(r,o,e);if(l&&l.length>=2){let f=l[1],m=l[2];if(m.length<t.autoSuggestMinMatch)return[];if(m.length>0){let v=(c=Ot.fromText({recurrenceRuleText:m,startDate:null,scheduledDate:null,dueDate:null}))==null?void 0:c.toText();if(v){let R=`${f} ${v} `;if(a.push({suggestionType:"match",displayText:`\u2705 ${v}`,appendText:R,insertAt:l.index,insertSkip:l[0].length}),l[0]==R)return[]}}let g=1,T=t.autoSuggestMaxItems/2,S=s.filter(v=>m&&m.length>=g&&v.toLowerCase().includes(m.toLowerCase())).slice(0,T);S.length===0&&m.trim().length===0&&(S=s.slice(0,T));for(let v of S)a.push({suggestionType:"match",displayText:`${v}`,appendText:`${f} ${v} `,insertAt:l.index,insertSkip:l[0].length})}return a}function Rh(r,e,t){let n=r.matchAll(e);for(let s of n)if((s==null?void 0:s.index)&&s.index<=t&&t<=s.index+s[0].length)return s;return[]}var Ha=class{constructor(){this.hideTaskCount=!1;this.hideBacklinks=!1;this.hidePriority=!1;this.hideCreatedDate=!1;this.hideStartDate=!1;this.hideScheduledDate=!1;this.hideDoneDate=!1;this.hideDueDate=!1;this.hideRecurrenceRule=!1;this.hideEditButton=!1;this.hideUrgency=!0;this.shortMode=!1;this.explainQuery=!1}},Bn=class{constructor(e,t){this.defaultLayout=["description","priority","recurrenceRule","createdDate","startDate","scheduledDate","dueDate","doneDate","blockLink"];this.hiddenComponents=[];this.specificClasses=[];e?this.options=e:this.options=new Ha,t?this.layoutComponents=t:this.layoutComponents=this.defaultLayout,this.layoutComponents=this.applyOptions(this.options)}applyOptions(e){let t=(s,a,o)=>a?(this.specificClasses.push(`tasks-layout-hide-${o}`),this.hiddenComponents.push(o),s.filter(l=>l!=o)):s,n=this.layoutComponents;return n=t(n,e.hidePriority,"priority"),n=t(n,e.hideRecurrenceRule,"recurrenceRule"),n=t(n,e.hideCreatedDate,"createdDate"),n=t(n,e.hideStartDate,"startDate"),n=t(n,e.hideScheduledDate,"scheduledDate"),n=t(n,e.hideDueDate,"dueDate"),n=t(n,e.hideDoneDate,"doneDate"),e.s
2 years ago
The task line not updated is:
${r.originalMarkdown}
In this markdown file:
"${r.taskLocation.path}"
Note: further clicks on this checkbox will usually now be ignored until the file is opened (or certain, specific edits are made - it's complicated).
Recommendations:
1. Close all panes that have the above file open, and then re-open the file.
2. Check for exactly identical copies of the task line, in this file, and see if you can make them different.
2 years ago
`;Lh(C);return}let R=Math.min(Math.pow(10,a),100);Za.debug(`timeout = ${R}`),setTimeout(()=>{qb({originalTask:r,newTasks:e,vault:t,metadataCache:n,workspace:s,previousTries:a+1})},R)},c=t.getAbstractFileByPath(r.path);if(!(c instanceof Xa.TFile))return Nh(`Tasks: No file found for task ${r.description}. Retrying ...`),l();if(!OI.includes(c.extension)){Lh(`Tasks: Does not support files with the ${c.extension} file extension.`);return}let f=n.getFileCache(c);if(f==null||f===null)return Nh(`Tasks: No file cache found for file ${c.path}. Retrying ...`),l();let m=f.listItems;if(m===void 0||m.length===0)return Nh(`Tasks: No list items found in file cache of ${c.path}. Retrying ...`),l();let T=(yield t.read(c)).split(`
`),S=RI(r,T,m,MI);if(S===void 0)return l();let v=[...T.slice(0,S),...e.map(R=>R.toFileLineString()),...T.slice(S+1)];yield t.modify(c,v.join(`
`))});function jb(r,e){return r<e.length}function RI(r,e,t,n){let s=xI(r,e);return s!==void 0||(s=PI(r,e),s!==void 0)?s:AI(r,e,t,n)}function xI(r,e){let t=r.taskLocation.lineNumber;if(jb(t,e)&&e[t]===r.originalMarkdown)return Za.debug(`Found original markdown at original line number ${t}`),t}function PI(r,e){let t=[];for(let n=0;n<e.length;n++)e[n]===r.originalMarkdown&&t.push(n);if(t.length===1)return t[0]}function AI(r,e,t,n){let s,a=0;for(let o of t){let l=o.position.start.line;if(!jb(l,e))return;if(l<r.taskLocation.sectionStart||o.task===void 0)continue;let c=e[l];if(Le.includedIn(c)){if(a===r.taskLocation.sectionIndex){if(c===r.originalMarkdown)s=l;else{n(`Tasks: Unable to find task in file ${r.taskLocation.path}.
2 years ago
Expected task:
${r.originalMarkdown}
Found task:
2 years ago
${c}`);return}break}a++}}return s}var zn={description:"task-description",priority:"task-priority",dueDate:"task-due",startDate:"task-start",createdDate:"task-created",scheduledDate:"task-scheduled",doneDate:"task-done",recurrenceRule:"task-recurring",blockLink:""},NI=7,CI="far";function II(r,e,t){return J(this,null,function*(){yield $b.MarkdownRenderer.renderMarkdown(r,e,t,null)})}function Gb(r,e,t=null){return J(this,null,function*(){var l;t||(t=II);let n=document.createElement("li");e.parentUlElement.appendChild(n),n.classList.add("task-list-item","plugin-tasks-list-item");let s=document.createElement("span");n.appendChild(s),s.classList.add("tasks-list-text");let a=yield FI(r,e,s,t);for(let c in a)n.dataset[c]=a[c];let o=document.createElement("input");return n.appendChild(o),o.classList.add("task-list-item-checkbox"),o.type="checkbox",r.status.symbol!==" "&&(o.checked=!0,n.classList.add("is-checked")),o.addEventListener("click",c=>{c.preventDefault(),c.stopPropagation(),o.disabled=!0;let f=r.toggle();Mu({originalTask:r,newTasks:f})}),n.prepend(o),n.setAttribute("data-task",r.status.symbol.trim()),n.setAttribute("data-line",e.listIndex.toString()),n.setAttribute("data-task-status-name",r.status.name),n.setAttribute("data-task-status-type",r.status.type),o.setAttribute("data-line",e.listIndex.toString()),(l=e.layoutOptions)!=null&&l.shortMode&&qI({task:r,element:s,isFilenameUnique:e.isFilenameUnique}),n})}function FI(r,e,t,n){return J(this,null,function*(){let s={},a=new Bn(e.layoutOptions),o=fi.tasksPluginEmoji.taskSerializer;for(let l of a.layoutComponents){let c=o.componentToString(r,a,l);if(c){l==="description"&&(c=Le.removeAsSubstringFromDependingOnSettings(c));let f=document.createElement("span");if(t.appendChild(f),f){let m=document.createElement("span");f.appendChild(m),yield LI(m,c,l,r,n);let[g,T]=Yh(l,r);YI(l,m),f.classList.add(...g);for(let S in T)f.dataset[S]=T[S];s=Ne(Ne({},s),T)}}}for(let l of a.hiddenComponents){let[c,f]=Yh(l,r);s=Ne(Ne({},s),f)}if(s.taskPriority===void 0){let[l,c]=Yh("priority",r);s=Ne(Ne({},s),c)}return s})}function LI(r,e,t,n,s){return J(this,null,function*(){if(t==="description"){let{debugSettings:a}=he();a.showTaskHiddenData&&(e+=`<br>\u{1F41B} <b>${n.lineNumber}</b> . ${n.sectionStart} . ${n.sectionIndex} . '<code>${n.originalMarkdown}</code>'<br>'<code>${n.path}</code>' > '<code>${n.precedingHeader}</code>'<br>`),yield s(e,r,n.path);let o=r.querySelector("blockquote"),l=o!=null?o:r,c=l.querySelector("p");if(c!==null){for(;c.firstChild;)l.insertBefore(c.firstChild,c);c.remove()}r.querySelectorAll("p").forEach(f=>{f.hasChildNodes()||f.remove()}),r.querySelectorAll(".footnotes").forEach(f=>{f.remove()})}else r.innerHTML=e})}function Yh(r,e){let t=[],n={},s=(a,o)=>{let l=UI(a);l&&(n[o]=l)};switch(r){case"description":t.push(zn.description);break;case"priority":{let a=null;e.priority==="1"?a="high":e.priority==="2"?a="medium":e.priority==="4"?a="low":a="normal",n.taskPriority=a,t.push(zn.priority);break}case"createdDate":{let a=e.createdDate;a&&(t.push(zn.createdDate),s(a,"taskCreated"));break}case"dueDate":{let a=e.dueDate;a&&(t.push(zn.dueDate),s(a,"taskDue"));break}case"startDate":{let a=e.startDate;a&&(t.push(zn.startDate),s(a,"taskStart"));break}case"scheduledDate":{let a=e.scheduledDate;a&&(t.push(zn.scheduledDate),s(a,"taskScheduled"));break}case"doneDate":{let a=e.doneDate;a&&(t.push(zn.doneDate),s(a,"taskDone"));break}case"recurrenceRule":{t.push(zn.recurrenceRule);break}}return[t,n]}function YI(r,e){if(r==="description"){let t=e.getElementsByClassName("tag");for(let n=0;n<t.length;n++){let s=t[n].textContent;if(s){let a=WI(s),o=t[n];a&&(o.dataset.tagName=a)}}}}function UI(r){let e=window.moment().startOf("day"),t="",n=e.diff(r,"days");return isNaN(n)?null:n===0?"today":(n>0?t+="past-":n<0&&(t+="future-"),Math.abs(n)<=NI?t+=Math.abs(n).toString()+"d":t+=CI,t)}function WI(r){let e=/["&\x00\r\n]/g,t=r.replace(e,"-");return t=t.replace(/^[-_]+/,""),t.length>0?t:null}function qI({task:r,element:e,isFilenameUnique:t}){let{recurrenceSymbol:n,startDateSymbol:s,createdDateSymbol:a,sc
`),l=o.length,c=new Ja(()=>Jt.fromPath(s.path)),f=null,m=0;for(let g of t)if(g.task!==void 0){let T=g.position.start.line;if(T>=l)return console.log(`${s.path} Obsidian gave us a line number ${T} past the end of the file. ${l}.`),a;if((f===null||f.position.end.line<T)&&(f=Ds.getSection(T,n.sections),m=0),f===null)continue;let S=o[T];if(S===void 0){console.log(`${s.path}: line ${T} - ignoring 'undefined' line.`);continue}let v;try{v=Ge.fromLine({line:S,taskLocation:new It(s.path,T,f.position.start.line,m,Ds.getPrecedingHeader(T,n.headings)),fallbackDate:c.value})}catch(R){this.reportTaskParsingErrorToUser(R,s,g,S);continue}v!==null&&(m++,a.push(v))}return a}reportTaskParsingErrorToUser(e,t,n,s){let a=`There was an error reading one of the tasks in this vault.
The following task has been ignored, to prevent Tasks queries getting stuck with 'Loading Tasks ...'
Error: ${e}
File: ${t.path}
Line number: ${n.position.start.line}
2 years ago
Task line: ${s}
Please create a bug report for this message at
https://github.com/obsidian-tasks-group/obsidian-tasks/issues/new/choose
to help us find and fix the underlying issue.
Include:
- either a screenshot of the error popup, or copy the text from the console, if on a desktop machine.
- the output from running the Obsidian command 'Show debug info'
The error popup will only be shown when Tasks is starting up, but if the error persists,
it will be shown in the console every time this file is edited during the Obsidian
session.
2 years ago
`;console.error(a),e instanceof Error&&console.error(e.stack),this.state==="Initializing"&&new hi.Notice(a,1e4)}static getSection(e,t){if(t===void 0)return null;for(let n of t)if(n.position.start.line<=e&&n.position.end.line>=e)return n;return null}static getPrecedingHeader(e,t){if(t===void 0)return null;let n=null;for(let s of t){if(s.position.start.line>e)return n;n=s.heading}return n}};var Kh=require("obsidian");var uv=require("obsidian");function Es(){}function qh(r){return r()}function Hb(){return Object.create(null)}function Ss(r){r.forEach(qh)}function Vb(r){return typeof r=="function"}function Kb(r,e){return r!=r?e==e:r!==e||r&&typeof r=="object"||typeof r=="function"}function Zb(r){return Object.keys(r).length===0}var Xb=!1;function jI(){Xb=!0}function $I(){Xb=!1}function L(r,e){r.appendChild(e)}function pi(r,e,t){r.insertBefore(e,t||null)}function Os(r){r.parentNode.removeChild(r)}function jh(r,e){for(let t=0;t<r.length;t+=1)r[t]&&r[t].d(e)}function ae(r){return document.createElement(r)}function GI(r){return document.createElementNS("http://www.w3.org/2000/svg",r)}function er(r){return document.createTextNode(r)}function Se(){return er(" ")}function zt(r,e,t,n){return r.addEventListener(e,t,n),()=>r.removeEventListener(e,t,n)}function Qb(r){return function(e){return e.preventDefault(),r.call(this,e)}}function z(r,e,t){t==null?r.removeAttribute(e):r.getAttribute(e)!==t&&r.setAttribute(e,t)}function BI(r){return Array.from(r.childNodes)}function $h(r,e){e=""+e,r.wholeText!==e&&(r.data=e)}function Fr(r,e){r.value=e==null?"":e}function Gh(r,e){for(let t=0;t<r.options.length;t+=1){let n=r.options[t];if(n.__value===e){n.selected=!0;return}}r.selectedIndex=-1}function Jb(r){let e=r.querySelector(":checked")||r.options[0];return e&&e.__value}function Lr(r,e,t){r.classList[t?"add":"remove"](e)}var ks=class{constructor(e=!1){this.is_svg=!1,this.is_svg=e,this.e=this.n=null}c(e){this.h(e)}m(e,t,n=null){this.e||(this.is_svg?this.e=GI(t.nodeName):this.e=ae(t.nodeName),this.t=t,this.c(e)),this.i(n)}h(e){this.e.innerHTML=e,this.n=Array.from(this.e.childNodes)}i(e){for(let t=0;t<this.n.length;t+=1)pi(this.t,this.n[t],e)}p(e){this.d(),this.h(e),this.i(this.a)}d(){this.n.forEach(Os)}};var ro;function to(r){ro=r}function HI(){if(!ro)throw new Error("Function called outside component initialization");return ro}function Bh(r){HI().$$.on_mount.push(r)}var eo=[];var Pu=[],xu=[],zb=[],zI=Promise.resolve(),Wh=!1;function VI(){Wh||(Wh=!0,zI.then(ev))}function no(r){xu.push(r)}var Uh=new Set,Ru=0;function ev(){let r=ro;do{for(;Ru<eo.length;){let e=eo[Ru];Ru++,to(e),KI(e.$$)}for(to(null),eo.length=0,Ru=0;Pu.length;)Pu.pop()();for(let e=0;e<xu.length;e+=1){let t=xu[e];Uh.has(t)||(Uh.add(t),t())}xu.length=0}while(eo.length);for(;zb.length;)zb.pop()();Wh=!1,Uh.clear(),to(r)}function KI(r){if(r.fragment!==null){r.update(),Ss(r.before_update);let e=r.dirty;r.dirty=[-1],r.fragment&&r.fragment.p(r.ctx,e),r.after_update.forEach(no)}}var ZI=new Set;function XI(r,e){r&&r.i&&(ZI.delete(r),r.i(e))}var dj=typeof window!="undefined"?window:typeof globalThis!="undefined"?globalThis:global;function QI(r,e,t,n){let{fragment:s,on_mount:a,on_destroy:o,after_update:l}=r.$$;s&&s.m(e,t),n||no(()=>{let c=a.map(qh).filter(Vb);o?o.push(...c):Ss(c),r.$$.on_mount=[]}),l.forEach(no)}function tv(r,e){let t=r.$$;t.fragment!==null&&(Ss(t.on_destroy),t.fragment&&t.fragment.d(e),t.on_destroy=t.fragment=null,t.ctx=[])}function JI(r,e){r.$$.dirty[0]===-1&&(eo.push(r),VI(),r.$$.dirty.fill(0)),r.$$.dirty[e/31|0]|=1<<e%31}function rv(r,e,t,n,s,a,o,l=[-1]){let c=ro;to(r);let f=r.$$={fragment:null,ctx:null,props:a,update:Es,not_equal:s,bound:Hb(),on_mount:[],on_destroy:[],on_disconnect:[],before_update:[],after_update:[],context:new Map(e.context||(c?c.$$.context:[])),callbacks:Hb(),dirty:l,skip_bound:!1,root:e.target||c.$$.root};o&&o(f.root);let m=!1;if(f.ctx=t?t(r,e.props||{},(g,T,...S)=>{let v=S.length?S[0]:T;return f.ctx&&s(f.ctx[g],f.ctx[g]=v)&&(!f.skip_bound&&f.bound[g]&&f.bound[g](v),m&&JI(r,g)),T}):[],f.update(),m=!0,Ss(f.before_update),f.fragment=n?n(f.ctx):!1,e.targe
<span class="accesskey-first">future</span> dates:`,Pi=Se(),$e=ae("input"),Jn=Se(),ht=ae("div"),ce=ae("label"),ce.innerHTML='Stat<span class="accesskey">u</span>s',Zr=Se(),Rt=ae("select");for(let G=0;G<Je.length;G+=1)Je[G].c();uo=Se(),Ur=ae("div"),On=ae("div"),Tt=ae("label"),Tt.textContent="Completed:",Ai=Se(),dr=ae("input"),Ye=Se(),Mn=ae("div"),Ls=ae("span"),Ls.textContent="Created on:",ts=Se(),Rn=ae("code"),rs=Se(),fr=ae("div"),xn=ae("span"),xn.textContent="Done on:",lo=Se(),Qr=ae("code"),co=Se(),hr=ae("div"),pr=ae("button"),H=er("Apply"),fo=Se(),pt=ae("button"),pt.textContent="Cancel",z(s,"for","description"),z(o,"id","description"),z(o,"type","text"),z(o,"class","tasks-modal-description"),z(o,"placeholder","Take out the trash"),z(o,"accesskey",l=r[15]("t")),z(n,"class","tasks-modal-section"),z(m,"for",T="priority-"+r[1].priority),z(f,"class","tasks-modal-section tasks-modal-priorities"),z(C,"for","recurrence"),z(C,"class","accesskey-first"),z(B,"id","recurrence"),z(B,"type","text"),z(B,"placeholder","Try 'every 2 weeks on Thursday'."),z(B,"accesskey",W=r[15]("r")),Lr(B,"tasks-modal-error",!r[8]),te.a=null,z(gt,"for","due"),z(gt,"class","accesskey-first"),z(q,"id","due"),z(q,"type","text"),z(q,"placeholder",Hh),z(q,"accesskey",P=r[15]("d")),Lr(q,"tasks-modal-error",!r[7]),_.a=null,z(D,"for","scheduled"),z(D,"class","accesskey-first"),z(M,"id","scheduled"),z(M,"type","text"),z(M,"placeholder",Hh),z(M,"accesskey",k=r[15]("s")),Lr(M,"tasks-modal-error",!r[5]),ke.a=null,z(le,"for","start"),z(K,"id","start"),z(K,"type","text"),z(K,"placeholder",Hh),z(K,"accesskey",qe=r[15]("a")),Lr(K,"tasks-modal-error",!r[3]),je.a=null,z(Sn,"for","forwardOnly"),z($e,"id","forwardOnly"),z($e,"type","checkbox"),z($e,"class","task-list-item-checkbox tasks-modal-checkbox"),z($e,"accesskey",Fs=r[15]("f")),z(R,"class","tasks-modal-section tasks-modal-dates"),z(ce,"for","status"),z(Rt,"id","status-type"),z(Rt,"class","dropdown"),z(Rt,"accesskey",es=r[15]("u")),r[1].status===void 0&&no(()=>r[39].call(Rt)),z(ht,"class","tasks-modal-section"),z(Tt,"for","status"),z(dr,"id","status"),z(dr,"type","checkbox"),z(dr,"class","task-list-item-checkbox tasks-modal-checkbox"),dr.checked=Xr=r[1].status.isCompleted(),dr.disabled=!0,z(Ur,"class","tasks-modal-section tasks-modal-status"),pr.disabled=Ys=!r[14],z(pr,"type","submit"),z(pr,"class","mod-cta"),z(pt,"type","button"),z(hr,"class","tasks-modal-section tasks-modal-buttons"),Lr(t,"with-accesskeys",r[9]),z(e,"class","tasks-modal")},m(G,ne){pi(G,e,ne),L(e,t),L(t,n),L(n,s),L(n,a),L(n,o),Fr(o,r[1].description),r[31](o),L(t,c),L(t,f),L(f,m),L(m,g),L(f,S);for(let ue=0;ue<Lt.length;ue+=1)Lt[ue].m(f,null);L(t,v),L(t,R),L(R,C),L(R,$),L(R,B),Fr(B,r[1].recurrenceRule),L(R,De),L(R,Te),L(Te,be),L(Te,ee),te.m(r[12],Te),L(R,Ft),L(R,gt),L(R,V),L(R,q),Fr(q,r[1].dueDate),L(R,Q),L(R,Y),L(Y,oe),L(Y,y),_.m(r[6],Y),L(R,w),L(R,D),L(R,E),L(R,M),Fr(M,r[1].scheduledDate),L(R,I),L(R,A),L(A,N),L(A,j),ke.m(r[4],A),L(R,pe),L(R,le),L(R,Ie),L(R,K),Fr(K,r[1].startDate),L(R,Qe),L(R,dt),L(dt,Or),L(dt,at),je.m(r[2],dt),L(R,ft),L(R,_t),L(_t,Sn),L(_t,Pi),L(_t,$e),$e.checked=r[1].forwardOnly,L(t,Jn),L(t,ht),L(ht,ce),L(ht,Zr),L(ht,Rt);for(let ue=0;ue<Je.length;ue+=1)Je[ue].m(Rt,null);Gh(Rt,r[1].status),L(t,uo),L(t,Ur),L(Ur,On),L(On,Tt),L(On,Ai),L(On,dr),L(Ur,Ye),L(Ur,Mn),L(Mn,Ls),L(Mn,ts),L(Mn,Rn),Rn.innerHTML=r[11],L(Ur,rs),L(Ur,fr),L(fr,xn),L(fr,lo),L(fr,Qr),Qr.innerHTML=r[13],L(t,co),L(t,hr),L(hr,pr),L(pr,H),L(hr,fo),L(hr,pt),ns||(Ae=[zt(o,"input",r[30]),zt(o,"keydown",r[23]),zt(o,"paste",r[24]),zt(o,"drop",r[24]),zt(f,"keyup",r[21]),zt(B,"input",r[34]),zt(q,"input",r[35]),zt(M,"input",r[36]),zt(K,"input",r[37]),zt($e,"change",r[38]),zt(Rt,"change",r[39]),zt(pt,"click",r[22]),zt(t,"submit",Qb(r[25]))],ns=!0)},p(G,ne){if(ne[0]&32768&&l!==(l=G[15]("t"))&&z(o,"accesskey",l),ne[0]&3&&Fr(o,G[1].description),ne[0]&3&&T!==(T="priority-"+G[1].priority)&&z(m,"for",T),ne[0]&1081346){mr=G[20];let ue;for(ue=0;ue<mr.length;ue+=1){let $t=sv(G,mr,ue);Lt[ue]?Lt[ue].p($t,ne):(Lt[ue]=iv($t),Lt[ue].c(),Lt[ue].m(f,null))}for(;ue<Lt.length;ue
`);e.setLine(o,S)};new Vn({app:n,task:c,onSubmit:f}).open()};var Zh=require("obsidian");var cv=(r,e,t)=>{var c;if(r)return t instanceof Zh.MarkdownView;if(!(t instanceof Zh.MarkdownView))return;let n=(c=t.file)==null?void 0:c.path;if(n===void 0)return;let s=e.getCursor(),a=s.line,o=e.getLine(a),l=sF(o,n);e.setLine(a,l.text),e.setCursor(iF(s,l))},sF=(r,e)=>{let t=Ge.fromLine({line:r,taskLocation:It.fromUnknownPosition(e),fallbackDate:null});if(t!==null){let n=t.toggle().map(s=>s.toFileLineString());return{text:n.join(`
`),moveTo:{line:n.length-1}}}else{let n=r.match(ie.taskRegex);if(n!==null){let s=n[3],o=Be.getInstance().bySymbol(s).nextStatusSymbol;return{text:r.replace(ie.taskRegex,`$1- [${o}] $4`)}}else if(ie.listItemRegex.test(r)){let s=r.replace(ie.listItemRegex,"$1$2 [ ]");return{text:s,moveTo:{ch:s.length}}}else{let s=r.replace(ie.indentationRegex,"$1- ");return{text:s,moveTo:{ch:s.length}}}}},iF=(r,e)=>{var a;let t={line:0,ch:r.ch},n=Ne(Ne({},t),(a=e.moveTo)!=null?a:{}),s=e.text.split(`
`)[n.line].length;return{line:r.line+n.line,ch:Math.min(n.ch,s)}};var Cu=class{get app(){return this.plugin.app}constructor({plugin:e}){this.plugin=e,e.addCommand({id:"edit-task",name:"Create or edit task",icon:"pencil",editorCheckCallback:(t,n,s)=>lv(t,n,s,this.app)}),e.addCommand({id:"toggle-done",name:"Toggle task done",icon:"check-in-circle",editorCheckCallback:cv})}};var Iu=class{constructor({obsidianEvents:e}){this.obsidianEvents=e}onCacheUpdate(e){return this.obsidianEvents.on("obsidian-tasks-plugin:cache-update",e)}triggerCacheUpdate(e){this.obsidianEvents.trigger("obsidian-tasks-plugin:cache-update",e)}onRequestCacheUpdate(e){return this.obsidianEvents.on("obsidian-tasks-plugin:request-cache-update",e)}triggerRequestCacheUpdate(e){this.obsidianEvents.trigger("obsidian-tasks-plugin:request-cache-update",e)}off(e){this.obsidianEvents.offref(e)}};var Fu=class{constructor({plugin:e}){this.markdownPostProcessor=this._markdownPostProcessor.bind(this);e.registerMarkdownPostProcessor(this._markdownPostProcessor.bind(this))}_markdownPostProcessor(e,t){return J(this,null,function*(){var f;let n=e.findAll(".task-list-item").filter(m=>{var S;let g=(S=m.textContent)==null?void 0:S.split(`
`);if(g===void 0)return!1;let T=null;for(let v=0;v<g.length;v=v+1)if(g[v]!==""){T=g[v];break}return T===null?!1:Le.includedIn(T)});if(n.length===0)return;let s=t.sourcePath,a=t.getSectionInfo(e);if(a===null)return;let o=a.text.split(`
`),l=0,c=[];for(let m=a.lineStart;m<=a.lineEnd;m++){let g=o[m];if(g===void 0)continue;let T=null,S=Ge.fromLine({line:g,taskLocation:new It(s,m,a.lineStart,l,T),fallbackDate:null});S!==null&&(c.push(S),l++)}for(let m=0;m<n.length;m++){let g=c[m],T=n[m];if(g===void 0||T===void 0)continue;let S=(f=T.getAttr("data-line"))!=null?f:"0",v=Number.parseInt(S,10),R=yield g.toLi({parentUlElement:e,listIndex:v}),C=T.childNodes;for(let W=0;W<C.length;W=W+1){let De=C[W];De.nodeName.toLowerCase()==="div"?R.prepend(De):De.nodeName.toLowerCase()==="ul"&&R.append(De)}let $=T.querySelectorAll("[data-footnote-id]"),B=R.querySelectorAll("[data-footnote-id]");if($.length===B.length)for(let W=0;W<$.length;W++)B[W].replaceWith($[W]);T.replaceWith(R)}})}};var dv=require("@codemirror/view"),fv=require("obsidian");var hv=()=>dv.ViewPlugin.fromClass(Xh),Xh=class{constructor(e){this.view=e,this.handleClickEvent=this.handleClickEvent.bind(this),this.view.dom.addEventListener("click",this.handleClickEvent)}destroy(){this.view.dom.removeEventListener("click",this.handleClickEvent)}handleClickEvent(e){let{target:t}=e;if(!t||!(t instanceof HTMLInputElement)||t.type!=="checkbox")return!1;let n=t.closest("ul.plugin-tasks-query-result, div.callout-content");if(n){if(n.matches("div.callout-content")){let T=`obsidian-tasks-plugin warning: Tasks cannot add or remove completion dates or make the next copy of a recurring task for tasks written inside a callout when you click their checkboxes in Live Preview.
If you wanted Tasks to do these things, please undo your change, then either click the line of the task and use the "Toggle Task Done" command, or switch to Reading View to click the checkbox.`;console.warn(T),new fv.Notice(T,45e3)}return!1}let{state:s}=this.view,a=this.view.posAtDOM(t),o=s.doc.lineAt(a),l=Ge.fromLine({line:o.text,taskLocation:It.fromUnknownPosition(""),fallbackDate:null});if(console.debug(`Live Preview Extension: toggle called. Position: ${a} Line: ${o.text}`),l===null)return!1;e.preventDefault();let f=l.toggle().map(T=>T.toFileLineString()).join(s.lineBreak),m=s.update({changes:{from:o.from,to:o.to,insert:f}});this.view.dispatch(m);let g=t.checked;return setTimeout(()=>{t.checked=g},1),!0}};var ll=require("obsidian");var Tn=class{constructor(e,t,n){this.property=e,this.comparator=Tn.maybeReverse(n,t)}static maybeReverse(e,t){return e?Tn.makeReversedComparator(t):t}static makeReversedComparator(e){return(t,n)=>e(t,n)*-1}};var mi=class{constructor(e,t){this.property=e,this.grouper=t}};var Ke=class{canCreateFilterForLine(e){return Ke.lineMatchesFilter(this.filterRegExp(),e)}static lineMatchesFilter(e,t){return e?e.test(t):!1}static getMatch(e,t){return e?t.match(e):null}fieldNameSingular(){return this.fieldName()}fieldNameSingularEscaped(){return Su(this.fieldNameSingular())}supportsSorting(){return!1}parseSortLine(e){return!this.supportsSorting()||!this.canCreateSorterForLine(e)?null:this.createSorterFromLine(e)}canCreateSorterForLine(e){return this.supportsSorting()?Ke.lineMatchesFilter(this.sorterRegExp(),e):!1}createSorterFromLine(e){if(!this.supportsSorting())return null;let t=Ke.getMatch(this.sorterRegExp(),e);if(t===null)return null;let n=!!t[1];return this.createSorter(n)}sorterRegExp(){if(!this.supportsSorting())throw Error(`sorterRegExp() unimplemented for ${this.fieldNameSingular()}`);return new RegExp(`^sort by ${this.fieldNameSingularEscaped()}( reverse)?`)}comparator(){throw Error(`comparator() unimplemented for ${this.fieldNameSingular()}`)}createSorter(e){return new Tn(this.fieldNameSingular(),this.comparator(),e)}createNormalSorter(){return this.createSorter(!1)}createReverseSorter(){return this.createSorter(!0)}supportsGrouping(){return!1}grouper(){throw Error(`grouper() unimplemented for ${this.fieldNameSingular()}`)}createGrouper(){return new mi(this.fieldNameSingular(),this.grouper())}};var Ze=class{constructor(e,t=[],n=""){this.description=e,this.symbol=n,this.children=t}static booleanAnd(e){return this.combineOrCreateExplanation("All of",e,"AND")}static booleanOr(e){return this.combineOrCreateExplanation("At least one of",e,"OR")}static booleanNot(e){return new Ze("None of",e,"NOT")}static booleanXor(e){return new Ze("Exactly one of",e,"XOR")}asString(e=""){if(this.children.length==0)return e+this.description;let t=e;this.symbol===""?t+=this.description:(t+=this.symbol,this.children.length>1&&(t+=` (${this.description})`),t+=":");let n=e+" ";for(let s=0;s<this.children.length;s++)t+=`
${this.children[s].asString(n)}`;return t}static combineOrCreateExplanation(e,t,n){if(t.length===2){let s=t[0],a=t[1];if(s.symbol===n&&a.symbol==="")return s.children.push(a),s}return new Ze(e,t,n)}};var tr=class{constructor(e,t,n){this.instruction=e,this.explanation=n,this.filterFunction=t}explainFilterIndented(e){let t=this.explanation;return t.asString()===this.instruction?`${e}${this.instruction}
2 years ago
`:`${e}${this.instruction} =>
${t.asString(" ")}
2 years ago
`}},Xe=class{constructor(e){this.instruction=e}get filter(){return this._filter}set filter(e){this._filter=e}get filterFunction(){if(this._filter)return this._filter.filterFunction}static fromFilter(e){let t=new Xe(e.instruction);return t.filter=e,t}static fromError(e,t){let n=new Xe(e);return n.error=t,n}};var Lu=class{constructor(e,t){this._instruction=e,this._filter=t}canCreateFilterForLine(e){return e==this._instruction}createFilterOrErrorMessage(e){let t=new Xe(e);return e===this._instruction?(t.filter=new tr(e,this._filter,new Ze(e)),t):(t.error=`do not understand filter: ${e}`,t)}};var Vr=class{constructor(){this._filters=[]}add(e,t){this._filters.push(new Lu(e,t))}canCreateFilterForLine(e){for(let t of this._filters)if(t.canCreateFilterForLine(e))return!0;return!1}createFilterOrErrorMessage(e){for(let n of this._filters){let s=n.createFilterOrErrorMessage(e);if(s.error===void 0)return s}let t=new Xe(e);return t.error=`do not understand filter: ${e}`,t}};var Kn=class extends Ke{constructor(){super(...arguments);this._filters=new Vr}canCreateFilterForLine(t){return this._filters.canCreateFilterForLine(t)}createFilterOrErrorMessage(t){return this._filters.createFilterOrErrorMessage(t)}filterRegExp(){return null}};var bn=class extends Kn{constructor(){super(),this._filters.add("done",e=>e.status.type==="DONE"||e.status.type==="CANCELLED"||e.status.type==="NON_TASK"),this._filters.add("not done",e=>e.status.type==="TODO"||e.status.type==="IN_PROGRESS")}fieldName(){return"status"}supportsSorting(){return!0}comparator(){return(e,t)=>{let n=bn.oldStatusName(e),s=bn.oldStatusName(t);return n<s?1:n>s?-1:0}}static oldStatusName(e){return e.status.symbol===" "?"Todo":"Done"}};var qt=class extends Ke{constructor(t=null){super();t!==null?this.filterInstructions=t:(this.filterInstructions=new Vr,this.filterInstructions.add(`has ${this.fieldName()} date`,n=>this.date(n)!==null),this.filterInstructions.add(`no ${this.fieldName()} date`,n=>this.date(n)===null),this.filterInstructions.add(`${this.fieldName()} date is invalid`,n=>{let s=this.date(n);return s!==null&&!s.isValid()}))}canCreateFilterForLine(t){return this.filterInstructions.canCreateFilterForLine(t)?!0:super.canCreateFilterForLine(t)}createFilterOrErrorMessage(t){let n=this.filterInstructions.createFilterOrErrorMessage(t);if(n.filter!==void 0)return n;let s=new Xe(t),a=Ke.getMatch(this.filterRegExp(),t);if(a!==null){let o=a[1],l=a[2],c=Xt.parseDateRange(l);if(!c[0].isValid()||!c[1].isValid())s.error="do not understand "+this.fieldName()+" date";else{let f=this.buildFilterFunction(o,c),m=qt.buildExplanation(this.fieldNameForExplanation(),o,this.filterResultIfFieldMissing(),c);s.filter=new tr(t,f,m)}}else s.error="do not understand query filter ("+this.fieldName()+" date)";return s}buildFilterFunction(t,n){let s;return t==="before"?s=a=>a?a.isBefore(n[0]):this.filterResultIfFieldMissing():t==="after"?s=a=>a?a.isAfter(n[1]):this.filterResultIfFieldMissing():s=a=>a?a.isSameOrAfter(n[0])&&a.isSameOrBefore(n[1]):this.filterResultIfFieldMissing(),this.getFilter(s)}getFilter(t){return n=>t(this.date(n))}filterRegExp(){return new RegExp(`^${this.fieldNameForFilterInstruction()} (before|after|on|in)? ?(.*)`)}fieldNameForFilterInstruction(){return this.fieldName()}static buildExplanation(t,n,s,a){let o,l="YYYY-MM-DD (dddd Do MMMM YYYY)",c;switch(n){case"before":o=n,c=a[0].format(l);break;case"after":o=n,c=a[1].format(l);break;default:if(a[0].isSame(a[1]))o="on",c=a[0].format(l);else{let m=`${t} date is between:`,g=[new Ze(`${a[0].format(l)} and`),new Ze(`${a[1].format(l)} inclusive`)];return s&&g.push(new Ze(`OR no ${t} date`)),new Ze(m,g)}break}let f=`${t} date is ${o} ${c}`;return s&&(f+=` OR no ${t} date`),new Ze(f)}fieldNameForExplanation(){return this.fieldName()}supportsSorting(){return!0}comparator(){return(t,n)=>Hr(this.date(t),this.date(n))}};var yi=class extends qt{fieldName(){return"due"}date(e){return e.dueDate}filterResultIfFieldMissing(){return!1}};var Qh=class extends Ke{createFilterOrErrorMessage(e){let t=new Xe(e),n=Ke.getMatch(this.filterRegExp(),e);if(n!==null
Allowed options: 'is' and 'is not' (without quotes).
Allowed values: ${t}
Note: values are case-insensitive,
so 'in_progress' works too, for example.
2 years ago
Example: ${this.fieldNameSingular()} is not NON_TASK`;return Xe.fromError(e,n)}fieldName(){return"status.type"}value(e){return e.status.type}supportsSorting(){return!0}comparator(){return(e,t)=>{let n=Qn.groupName(e),s=Qn.groupName(t);return n.localeCompare(s,void 0,{numeric:!0})}}supportsGrouping(){return!0}grouper(){return e=>[Qn.groupName(e)]}static groupName(e){let t;switch(e.status.type){case"IN_PROGRESS":t="1";break;case"TODO":t="2";break;case"DONE":t="3";break;case"CANCELLED":t="4";break;case"NON_TASK":t="5";break;case"EMPTY":t="6";break}return t+" "+e.status.type}};var Ju=class extends jt{fieldName(){return"recurrence"}value(e){return e.recurrence!==null?e.recurrence.toText():""}};var cp=[()=>new Qu,()=>new Qn,()=>new bn,()=>new Gu,()=>new Ms,()=>new Zn,()=>new Yu,()=>new $u,()=>new ju,()=>new yi,()=>new Uu,()=>new bi,()=>new Rs,()=>new xs,()=>new qu,()=>new Wu,()=>new Ku,()=>new Xu,()=>new vi,()=>new Ju];function Zu(r){for(let e of cp){let t=e();if(t.canCreateFilterForLine(r))return t.createFilterOrErrorMessage(r)}return null}function Ov(r){let e=/^sort by /;if(r.match(e)===null)return null;for(let t of cp){let s=t().parseSortLine(r);if(s)return s}return null}function Mv(r){let e=/^group by /;if(r.match(e)===null)return null;for(let t of cp){let n=t(),s=n.fieldNameSingular();if(r===`group by ${s}`&&n.supportsGrouping())return n.createGrouper()}return null}var el=class{constructor(e,t){this.nestingLevel=e,this.name=t}};var tl=class{constructor(e){this.lastHeadingAtLevel=new Array;let n=e.keys().next().value.length;for(let s=0;s<n;s++)this.lastHeadingAtLevel.push("")}getHeadingsForTaskGroup(e){let t=new Array;for(let n=0;n<e.length;n++){let s=e[n];if(s!=this.lastHeadingAtLevel[n]){t.push(new el(n,s));for(let a=n;a<e.length;a++)this.lastHeadingAtLevel[a]="";this.lastHeadingAtLevel[n]=s}}return t}};var rl=class{constructor(e){this.children=new Map;this.values=[];this.values=e}generateAllPaths(e=[]){let t=new Map;if(this.children.size==0)return t.set([...e],this.values),t;for(let[n,s]of this.children)e.push(n),s.generateAllPaths(e).forEach((o,l)=>t.set(l,o)),e.pop();return t}};var nl=class extends Map{},sl=class extends rl{},il=class{constructor(e,t){this.groups=new nl;let n=this.buildGroupingTree(e,t);this.groups=n.generateAllPaths(),this.groups=this.getSortedGroups()}buildGroupingTree(e,t){let n=new sl(t),s=[n];for(let a of e){let o=[];for(let l of s)for(let c of l.values){let f=En.getGroupNamesForTask(a,c);for(let m of f){let g=l.children.get(m);g===void 0&&(g=new sl([]),l.children.set(m,g),o.push(g)),g.values.push(c)}}s=o}return n}getSortedGroups(){return new nl([...this.groups.entries()].sort())}};var al=class{constructor(e,t,n){this.groups=e,this.groupHeadings=t,this.tasks=n}tasksAsStringOfLines(){let e="";for(let t of this.tasks)e+=t.toFileLineString()+`
2 years ago
`;return e}toString(){let e=`
`;e+=`Group names: [${this.groups}]
`;for(let t of this.groupHeadings)e+=`${"#".repeat(4+t.nestingLevel)} ${t.name}
2 years ago
`;return e+=this.tasksAsStringOfLines(),e}};var ol=class{constructor(e,t){this._groups=new Array;this._totalTaskCount=0;this._totalTaskCount=t.length;let n=new il(e,t);this.addTasks(n)}get groups(){return this._groups}totalTasksCount(){return this._totalTaskCount}toString(){let e="";for(let n of this.groups)e+=n.toString(),e+=`
2 years ago
---
`;return e+=`
${this.totalTasksCount()} tasks
2 years ago
`,e}addTasks(e){let t=new tl(e.groups);for(let[n,s]of e.groups){let a=t.getHeadingsForTaskGroup(n),o=new al(n,a,s);this.add(o)}}add(e){this._groups.push(e)}};var Me=class{static fromGroupingProperty(e){return new mi(e,Me.grouperForProperty(e))}static by(e,t){return new ol(e,t)}static getGroupNamesForTask(e,t){return e.grouper(t)}static grouperForProperty(e){return Me.groupers[e]}static escapeMarkdownCharacters(e){return e.replace(/\\/g,"\\\\").replace(/_/g,"\\_")}static groupByPriority(e){let t="ERROR";switch(e.priority){case"1":t="High";break;case"2":t="Medium";break;case"3":t="None";break;case"4":t="Low";break}return[`Priority ${e.priority}: ${t}`]}static groupByRecurrence(e){return e.recurrence!==null?[e.recurrence.toText()]:["None"]}static groupByRecurring(e){return e.recurrence!==null?["Recurring"]:["Not Recurring"]}static groupByCreatedDate(e){return[Me.stringFromDate(e.createdDate,"created")]}static groupByStartDate(e){return[Me.stringFromDate(e.startDate,"start")]}static groupByScheduledDate(e){return[Me.stringFromDate(e.scheduledDate,"scheduled")]}static groupByDueDate(e){return[Me.stringFromDate(e.dueDate,"due")]}static groupByDoneDate(e){return[Me.stringFromDate(e.doneDate,"done")]}static groupByHappensDate(e){let t=new Zn().earliestDate(e);return[Me.stringFromDate(t,"happens")]}static stringFromDate(e,t){return e===null?"No "+t+" date":e.format(Me.groupDateFormat)}static groupByPath(e){return[Me.escapeMarkdownCharacters(e.path.replace(".md",""))]}static groupByFolder(e){let t=e.path,n=e.filename+".md",s=t.substring(0,t.lastIndexOf(n));return s===""?["/"]:[Me.escapeMarkdownCharacters(s)]}static groupByFileName(e){let t=e.filename;return t===null?["Unknown Location"]:["[["+t+"]]"]}static groupByRoot(e){let t=e.path.replace(/\\/g,"/"),n=t.indexOf("/");return n==-1?["/"]:[Me.escapeMarkdownCharacters(t.substring(0,n+1))]}static groupByBacklink(e){if(e.getLinkText({isFilenameUnique:!0})===null)return["Unknown Location"];let n="Unknown Location";if(e.filename!==null&&(n=Me.escapeMarkdownCharacters(e.filename)),e.precedingHeader===null||e.precedingHeader.length===0)return[n];let s=Me.groupByHeading(e)[0];return n===s?[n]:[`${n} > ${s}`]}static groupByStatus(e){return e.status.symbol===" "?["Todo"]:["Done"]}static groupByHeading(e){return e.precedingHeader===null||e.precedingHeader.length===0?["(No heading)"]:[e.precedingHeader]}static groupByTags(e){return e.tags.length==0?["(No tags)"]:e.tags}},En=Me;En.groupDateFormat="YYYY-MM-DD dddd",En.groupers={backlink:Me.groupByBacklink,created:Me.groupByCreatedDate,done:Me.groupByDoneDate,due:Me.groupByDueDate,filename:Me.groupByFileName,folder:Me.groupByFolder,happens:Me.groupByHappensDate,heading:Me.groupByHeading,path:Me.groupByPath,priority:Me.groupByPriority,recurrence:Me.groupByRecurrence,recurring:Me.groupByRecurring,root:Me.groupByRoot,scheduled:Me.groupByScheduledDate,start:Me.groupByStartDate,status:Me.groupByStatus,tags:Me.groupByTags};var Mi=class{constructor({source:e}){this._limit=void 0;this._layoutOptions=new Ha;this._filters=[];this._error=void 0;this._sorting=[];this._grouping=[];this.groupByRegexp=/^group by (backlink|created|done|due|filename|folder|happens|heading|path|priority|recurrence|recurring|root|scheduled|start|status|tags)/;this.hideOptionsRegexp=/^(hide|show) (task count|backlink|priority|created date|start date|scheduled date|done date|due date|recurrence rule|edit button|urgency)/;this.shortModeRegexp=/^short/;this.explainQueryRegexp=/^explain/;this.limitRegexp=/^limit (to )?(\d+)( tasks?)?/;this.commentRegexp=/^#.*/;this.source=e,e.split(`
`).map(t=>t.trim()).forEach(t=>{switch(!0){case t==="":break;case this.shortModeRegexp.test(t):this._layoutOptions.shortMode=!0;break;case this.explainQueryRegexp.test(t):this._layoutOptions.explainQuery=!0;break;case this.limitRegexp.test(t):this.parseLimit({line:t});break;case this.parseSortBy({line:t}):break;case this.parseGroupBy2({line:t}):break;case this.groupByRegexp.test(t):this.parseGroupBy({line:t});break;case this.hideOptionsRegexp.test(t):this.parseHideOptions({line:t});break;case this.commentRegexp.test(t):break;case this.parseFilter(t):break;default:this._error=`do not understand query: ${t}`}})}explainQuery(){return`Explanation of this Tasks code block query:
2 years ago
2 years ago
`+this.explainQueryWithoutIntroduction()}explainQueryWithoutIntroduction(){let e="";Le.isEmpty()||(e+=`Only tasks containing the global filter '${Le.get()}'.
2 years ago
2 years ago
`);let t=this.filters.length;if(t===0)e+="No filters supplied. All tasks will match the query.";else for(let s=0;s<t;s++)s>0&&(e+=`
`),e+=this.filters[s].explainFilterIndented("");this._limit!==void 0&&(e+=`
2 years ago
At most ${this._limit} task`,this._limit!==1&&(e+="s"),e+=`.
2 years ago
`);let{debugSettings:n}=he();return n.ignoreSortInstructions&&(e+=`
2 years ago
2 years ago
NOTE: All sort instructions, including default sort order, are disabled, due to 'ignoreSortInstructions' setting.`),e}get limit(){return this._limit}get layoutOptions(){return this._layoutOptions}get filters(){return this._filters}get sorting(){return this._sorting}get grouping(){return this._grouping}get error(){return this._error}applyQueryToTasks(e){this.filters.forEach(a=>{e=e.filter(a.filterFunction)});let{debugSettings:t}=he(),s=(t.ignoreSortInstructions?e:wi.by(this.sorting,e)).slice(0,this.limit);return En.by(this.grouping,s)}parseHideOptions({line:e}){let t=e.match(this.hideOptionsRegexp);if(t!==null){let n=t[1]==="hide";switch(t[2]){case"task count":this._layoutOptions.hideTaskCount=n;break;case"backlink":this._layoutOptions.hideBacklinks=n;break;case"priority":this._layoutOptions.hidePriority=n;break;case"created date":this._layoutOptions.hideCreatedDate=n;break;case"start date":this._layoutOptions.hideStartDate=n;break;case"scheduled date":this._layoutOptions.hideScheduledDate=n;break;case"due date":this._layoutOptions.hideDueDate=n;break;case"done date":this._layoutOptions.hideDoneDate=n;break;case"recurrence rule":this._layoutOptions.hideRecurrenceRule=n;break;case"edit button":this._layoutOptions.hideEditButton=n;break;case"urgency":this._layoutOptions.hideUrgency=n;break;default:this._error="do not understand hide/show option"}}}parseFilter(e){let t=Zu(e);return t!=null?(t.filter?this._filters.push(t.filter):this._error=t.error,!0):!1}parseLimit({line:e}){let t=e.match(this.limitRegexp);t!==null?this._limit=Number.parseInt(t[2],10):this._error="do not understand query limit"}parseSortBy({line:e}){let t=Ov(e);return t?(this._sorting.push(t),!0):!1}parseGroupBy({line:e}){let t=e.match(this.groupByRegexp);t!==null?this._grouping.push(En.fromGroupingProperty(t[1])):this._error="do not understand query grouping"}parseGroupBy2({line:e}){let t=Mv(e);return t?(this._grouping.push(t),!0):!1}};var ul=class{constructor({plugin:e,events:t}){this.addQueryRenderChild=this._addQueryRenderChild.bind(this);this.app=e.app,this.events=t,e.registerMarkdownCodeBlockProcessor("tasks",this._addQueryRenderChild.bind(this))}_addQueryRenderChild(e,t,n){return J(this,null,function*(){n.addChild(new dp({app:this.app,events:this.events,container:t,source:e,filePath:n.sourcePath}))})}},dp=class extends ll.MarkdownRenderChild{constructor({app:t,events:n,container:s,source:a,filePath:o}){super(s);switch(this.app=t,this.events=n,this.source=a,this.filePath=o,this.containerEl.className){case"block-language-tasks":this.query=new Mi({source:a}),this.queryType="tasks";break;default:this.query=new Mi({source:a}),this.queryType="tasks";break}}onload(){this.events.triggerRequestCacheUpdate(this.render.bind(this)),this.renderEventRef=this.events.onCacheUpdate(this.render.bind(this)),this.reloadQueryAtMidnight()}onunload(){this.renderEventRef!==void 0&&this.events.off(this.renderEventRef),this.queryReloadTimeout!==void 0&&clearTimeout(this.queryReloadTimeout)}reloadQueryAtMidnight(){let t=new Date;t.setHours(24,0,0,0);let n=new Date,s=t.getTime()-n.getTime();this.queryReloadTimeout=setTimeout(()=>{this.query=new Mi({source:this.source}),this.events.triggerRequestCacheUpdate(this.render.bind(this)),this.reloadQueryAtMidnight()},s+1e3)}render(s){return J(this,arguments,function*({tasks:t,state:n}){var o;let a=this.containerEl.createEl("div");if(n==="Warm"&&this.query.error===void 0){console.debug(`Render ${this.queryType} called for a block in active file "${this.filePath}", to select from ${t.length} tasks: plugin state: ${n}`),this.query.layoutOptions.explainQuery&&this.createExplanation(a);let l=this.query.applyQueryToTasks(t);for(let f of l.groups){this.addGroupHeadings(a,f.groupHeadings);let{taskList:m}=yield this.createTasksList({tasks:f.tasks,content:a});a.appendChild(m)}let c=l.totalTasksCount();console.debug(`${c} of ${t.length} tasks displayed in a block in "${this.filePath}"`),this.addTaskCount(a,c)}else this.query.error!==void 0?a.createDiv().innerHTML=`<pre>Tasks query: ${this.query.error.replace(/\n/g,"<br>")}</pre>`:a.setText("Loadi
`)+`
2 years ago
Fix errors before saving.`;new Yr.Notice(g);return}this.saved=!0,this.close()})),f)),c.addExtraButton(f=>(f.setIcon("cross").setTooltip("Cancel").onClick(()=>{this.saved=!1,this.close()}),f))})}onOpen(){this.display()}static setValidationError(t){t.inputEl.addClass("tasks-settings-is-invalid")}static removeValidationError(t){t.inputEl.removeClass("tasks-settings-is-invalid")}static setValid(t,n){n.length===0?cr.removeValidationError(t):cr.setValidationError(t)}};var Ri=class extends He.PluginSettingTab{constructor({plugin:t}){super(t.app,t);this.customFunctions={insertTaskCoreStatusSettings:this.insertTaskCoreStatusSettings.bind(this),insertCustomTaskStatusSettings:this.insertCustomTaskStatusSettings.bind(this)};this.plugin=t}saveSettings(t){return J(this,null,function*(){yield this.plugin.saveSettings(),t&&this.display()})}display(){let{containerEl:t}=this;t.empty(),this.containerEl.addClass("tasks-settings"),t.createEl("h3",{text:"Tasks Settings"}),t.createEl("p",{cls:"tasks-setting-important",text:"Changing any settings requires a restart of obsidian."}),t.createEl("h4",{text:"Global filter Settings"}),new He.Setting(t).setName("Global task filter").setDesc(Ri.createFragmentWithHTML('<p><b>Recommended: Leave empty if you want all checklist items in your vault to be tasks managed by this plugin.</b></p><p>Use a global filter if you want Tasks to only act on a subset of your "<code>- [ ]</code>" checklist items, so that a checklist item must include the specified string in its description in order to be considered a task.<p><p>For example, if you set the global filter to <code>#task</code>, the Tasks plugin will only handle checklist items tagged with <code>#task</code>.</br>Other checklist items will remain normal checklist items and not appear in queries or get a done date set.</p><p>See the <a href="https://publish.obsidian.md/tasks/Getting+Started/Global+Filter">documentation</a>.</p>')).addText(s=>{s.setPlaceholder("e.g. #task or TODO").setValue(Le.get()).onChange(a=>J(this,null,function*(){Le.set(a),yield this.plugin.saveSettings()}))}),new He.Setting(t).setName("Remove global filter from description").setDesc("Enabling this removes the string that you set as global filter from the task description when displaying a task.").addToggle(s=>{let a=he();s.setValue(a.removeGlobalFilter).onChange(o=>J(this,null,function*(){Ct({removeGlobalFilter:o}),yield this.plugin.saveSettings()}))}),t.createEl("h4",{text:"Task Statuses"});let{headingOpened:n}=he();Iv.forEach(s=>{this.addOneSettingsBlock(t,s,n)}),t.createEl("h4",{text:"Date Settings"}),new He.Setting(t).setName("Set created date on every added task").setDesc("Enabling this will add a timestamp \u2795 YYYY-MM-DD before other date values, when a task is created with 'Create or edit task', or by completing a recurring task.").addToggle(s=>{let a=he();s.setValue(a.setCreatedDate).onChange(o=>J(this,null,function*(){Ct({setCreatedDate:o}),yield this.plugin.saveSettings()}))}),new He.Setting(t).setName("Set done date on every completed task").setDesc("Enabling this will add a timestamp \u2705 YYYY-MM-DD at the end when a task is toggled to done.").addToggle(s=>{let a=he();s.setValue(a.setDoneDate).onChange(o=>J(this,null,function*(){Ct({setDoneDate:o}),yield this.plugin.saveSettings()}))}),new He.Setting(t).setName("Use filename as Scheduled date for undated tasks").setDesc(Ri.createFragmentWithHTML('Save time entering Scheduled (\u23F3) dates.</br>If this option is enabled, any undated tasks will be given a default Scheduled date extracted from their file name.</br>The date in the file name must be in one of <code>YYYY-MM-DD</code> or <code>YYYYMMDD</code> formats.</br>Undated tasks have none of Due (\u{1F4C5} ), Scheduled (\u23F3) and Start (\u{1F6EB}) dates.</br><p>See the <a href="https://publish.obsidian.md/tasks/Getting+Started/Use+Filename+as+Default+Date">documentation</a>.</p>')).addToggle(s=>{let a=he();s.setValue(a.useFilenameAsScheduledDate).onChange(o=>J(this,null,function*(){Ct({useFilenameAsScheduledDate:o}),yield this.plugin.saveSettings()}))}),new He.Setti
`);t(l)}).open(),n};var Uv=(r,e)=>{let t=Nu({line:"",path:""});return new Vn({app:r,task:t,onSubmit:e})};var Wv=r=>({createTaskLineModal:()=>Yv(r,Uv)});var dl=class extends qv.Plugin{get apiV1(){return Wv(app)}onload(){return J(this,null,function*(){Ou.registerConsoleLogger(),console.log('loading plugin "tasks"'),yield this.loadSettings(),this.addSettingTab(new oo({plugin:this})),Wb({metadataCache:this.app.metadataCache,vault:this.app.vault,workspace:this.app.workspace}),yield this.loadTaskStatuses();let t=new Iu({obsidianEvents:this.app.workspace});this.cache=new Ds({metadataCache:this.app.metadataCache,vault:this.app.vault,events:t}),this.inlineRenderer=new Fu({plugin:this}),this.queryRenderer=new ul({plugin:this,events:t}),this.registerEditorExtension(hv()),this.registerEditorSuggest(new cl(this.app,he())),new Cu({plugin:this})})}loadTaskStatuses(){return J(this,null,function*(){let{statusSettings:t}=he();yt.applyToStatusRegistry(t,Be.getInstance())})}onunload(){var t;console.log('unloading plugin "tasks"'),(t=this.cache)==null||t.unload()}loadSettings(){return J(this,null,function*(){let t=yield this.loadData();Ct(t),yield this.loadTaskStatuses()})}saveSettings(){return J(this,null,function*(){yield this.saveData(he())})}getTasks(){var t;return(t=this.cache)==null?void 0:t.getTasks()}};
2 years ago
/*!
* EventEmitter2
* https://github.com/hij1nx/EventEmitter2
*
* Copyright (c) 2013 hij1nx
* Licensed under the MIT license.
*/
//! authors : Tim Wood, Iskren Chernev, Moment.js contributors
//! license : MIT
//! moment.js
//! momentjs.com
//! version : 2.29.4