@jaredwray/fumanchu 4.0.2 → 4.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +9 -9
- package/dist/index.js +9 -9
- package/package.json +1 -4
package/dist/index.cjs
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
"use strict";var zn=Object.create;var
|
|
2
|
-
`},Vn=n=>(0,
|
|
3
|
-
`)},
|
|
4
|
-
`)},
|
|
5
|
-
`)}</ul>`},
|
|
6
|
-
`)}</ol>`},
|
|
7
|
-
`,r+=`<img ${
|
|
8
|
-
`,t?e+=`<a ${
|
|
1
|
+
"use strict";var zn=Object.create;var H=Object.defineProperty;var Ln=Object.getOwnPropertyDescriptor;var Pn=Object.getOwnPropertyNames;var Un=Object.getPrototypeOf,In=Object.prototype.hasOwnProperty;var Jn=(n,e)=>{for(var r in e)H(n,r,{get:e[r],enumerable:!0})},B=(n,e,r,t)=>{if(e&&typeof e=="object"||typeof e=="function")for(let o of Pn(e))!In.call(n,o)&&o!==r&&H(n,o,{get:()=>e[o],enumerable:!(t=Ln(e,o))||t.enumerable});return n};var a=(n,e,r)=>(r=n!=null?zn(Un(n)):{},B(e||!n||!n.__esModule?H(r,"default",{value:n,enumerable:!0}):r,n)),qn=n=>B(H({},"__esModule",{value:!0}),n);var Ut={};Jn(Ut,{Handlebars:()=>Ct,HelperRegistry:()=>d,createHandlebars:()=>Lt,fumanchu:()=>Pt,handlebars:()=>Mt,helpers:()=>zt});module.exports=qn(Ut);var y=a(require("handlebars"),1);var vn=(n,e)=>Array.isArray(n)?n.slice(e):[],Dn=(n,e)=>Array.isArray(n)?n.slice(0,-e):[],f=n=>n==null?[]:Array.isArray(n)?n:[n],Wn=(n,e)=>{if(Array.isArray(n))return typeof e!="number"?n[0]:n.slice(0,e)},Gn=(n,e)=>{if(!Array.isArray(n)&&typeof n!="string")return;if(typeof e!="number"){let t=n;return t[t.length-1]}let r=Math.abs(e);return n.slice(-r)},Yn=n=>n&&typeof n=="object"&&!Array.isArray(n)?Object.keys(n).length:typeof n=="string"||Array.isArray(n)?n.length:0,Qn=(n,e=", ")=>typeof n=="string"?n:Array.isArray(n)?n.join(e):"",Zn=function(n,e){if(!Array.isArray(n)||!e||typeof e.fn!="function")return e?.inverse?e.inverse(this)??"":"";if(n.length===0)return e.inverse?e.inverse(this)??"":"";let r=n.length,t=e.hash??{},o=e.data?{...e.data}:void 0,s="";for(let i=0;i<r;i++){let p=n[i],g={index:i,total:r,isFirst:i===0,isLast:i===r-1},Mn={...o?{...o}:{},...t,...g},$;p!=null&&typeof p=="object"?$={...p,...t,...g}:$={value:p,...t,...g},s+=e.fn($,{data:Mn})}return s},_=[{name:"after",category:"array",compatibility:["browser","nodejs"],fn:vn},{name:"before",category:"array",compatibility:["browser","nodejs"],fn:Dn},{name:"arrayify",category:"array",compatibility:["browser","nodejs"],fn:f},{name:"first",category:"array",compatibility:["browser","nodejs"],fn:Wn},{name:"last",category:"array",compatibility:["browser","nodejs"],fn:Gn},{name:"length",category:"array",compatibility:["browser","nodejs"],fn:Yn},{name:"join",category:"array",compatibility:["browser","nodejs"],fn:Qn},{name:"forEach",category:"array",compatibility:["browser","nodejs"],fn:Zn}];var C=a(require("fs"),1),M=a(require("path"),1),R=a(require("html-tag"),1),z=a(require("to-gfm-code-block"),1),Kn=(n,e)=>{let r=typeof e=="string"?e:M.default.extname(n).slice(1),t=C.default.readFileSync(n,"utf8");return(r==="markdown"||r==="md")&&(r="markdown",t=t.split("`").join("`")),`${(0,z.default)(t,r).trim()}
|
|
2
|
+
`},Vn=n=>(0,R.default)("script",{src:`https://gist.github.com/${n}.js`}),Xn=n=>{if(!n||!n.id)throw new Error("jsfiddle helper expects an `id`");let{id:e,width:r="100%",height:t="300",skin:o="/presentation/",tabs:s="result,js,html,css",allowfullscreen:i="allowfullscreen",frameborder:p="0"}=n,g=`http://jsfiddle.net/${e}/embedded/${s}${o}`;return(0,R.default)("iframe",{width:r,height:t,src:g,allowfullscreen:i,frameborder:p})},L=[{name:"embed",category:"code",compatibility:["nodejs"],fn:Kn},{name:"gist",category:"code",compatibility:["browser","nodejs"],fn:Vn},{name:"jsfiddle",category:"code",compatibility:["browser","nodejs"],fn:Xn}];var ne=n=>n==null?!0:Array.isArray(n)?n.length===0:typeof n=="object"?Object.keys(n).length===0:!1,ee=(n,e,r)=>{if(Array.isArray(n)){let t="";for(let o=0;o<n.length;o++)t+=e(n[o],o);return t}if(n&&typeof n=="object"){let t="";for(let o of Object.keys(n))t+=e(n[o],o);return t}return r?r():""},P=[{name:"isEmpty",category:"collection",compatibility:["browser","nodejs"],fn:ne},{name:"iterate",category:"collection",compatibility:["browser","nodejs"],fn:ee}];var re=(...n)=>n.every(Boolean),te=(n,e,r)=>{switch(e){case"==":return n==r;case"===":return n===r;case"!=":return n!=r;case"!==":return n!==r;case"<":return n<r;case">":return n>r;case"<=":return n<=r;case">=":return n>=r;case"typeof":return typeof n===r;default:throw new Error(`helper {{compare}}: invalid operator: '${e}'`)}},oe=(n,e,r=0)=>n==null?!1:typeof n=="string"||Array.isArray(n)?n.indexOf(e,r)>-1:typeof n=="object"?e in n:!1,se=(...n)=>{for(let e of n)if(e!=null)return e;return""},ie=(n,e)=>n===e,ae=(n,e)=>n>e,ce=(n,e)=>n>=e,pe=(n,e)=>n==null||e==null?!1:Array.isArray(n)||typeof n=="string"?n.indexOf(e)>-1:typeof n=="object"?e in n:!1,U=(n,e)=>{if(!n)return!0;let r=Array.isArray(e)?e:e!=null?[e]:["0","false","nada","nil","nay","nah","negative","no","none","nope","nul","null","nix","nyet","uh-uh","veto","zero"],t=typeof n=="string"?n.toLowerCase():null;for(let o of r)if(o===n||t!=null&&o===t)return!0;return!1},me=n=>U(n),le=n=>!U(n),ye=n=>typeof n=="number"&&n%2===0,ge=(n,e)=>typeof n=="number"&&typeof e=="number"&&e%n===0,fe=n=>typeof n=="number"&&Math.abs(n%2)===1,ue=(n,e)=>n==e,be=(n,e)=>n!=e,de=(n,e)=>n<e,he=(n,e)=>n<=e,we=(n,e)=>!n&&!e,je=n=>!n,ke=(...n)=>n.some(Boolean),He=(n,e)=>n!==e,xe=(n,e)=>n<=e,Oe=(n,e)=>n>=e,Ae=(n,e)=>n<e,Ne=(n,e)=>n>e,I=[{name:"and",category:"comparison",compatibility:["browser","nodejs"],fn:re},{name:"compare",category:"comparison",compatibility:["browser","nodejs"],fn:te},{name:"contains",category:"comparison",compatibility:["browser","nodejs"],fn:oe},{name:"default",category:"comparison",compatibility:["browser","nodejs"],fn:se},{name:"eq",category:"comparison",compatibility:["browser","nodejs"],fn:ie},{name:"gt",category:"comparison",compatibility:["browser","nodejs"],fn:ae},{name:"gte",category:"comparison",compatibility:["browser","nodejs"],fn:ce},{name:"has",category:"comparison",compatibility:["browser","nodejs"],fn:pe},{name:"isFalsey",category:"comparison",compatibility:["browser","nodejs"],fn:me},{name:"isTruthy",category:"comparison",compatibility:["browser","nodejs"],fn:le},{name:"ifEven",category:"comparison",compatibility:["browser","nodejs"],fn:ye},{name:"ifNth",category:"comparison",compatibility:["browser","nodejs"],fn:ge},{name:"ifOdd",category:"comparison",compatibility:["browser","nodejs"],fn:fe},{name:"is",category:"comparison",compatibility:["browser","nodejs"],fn:ue},{name:"isnt",category:"comparison",compatibility:["browser","nodejs"],fn:be},{name:"lt",category:"comparison",compatibility:["browser","nodejs"],fn:de},{name:"lte",category:"comparison",compatibility:["browser","nodejs"],fn:he},{name:"neither",category:"comparison",compatibility:["browser","nodejs"],fn:we},{name:"not",category:"comparison",compatibility:["browser","nodejs"],fn:je},{name:"or",category:"comparison",compatibility:["browser","nodejs"],fn:ke},{name:"unlessEq",category:"comparison",compatibility:["browser","nodejs"],fn:He},{name:"unlessGt",category:"comparison",compatibility:["browser","nodejs"],fn:xe},{name:"unlessLt",category:"comparison",compatibility:["browser","nodejs"],fn:Oe},{name:"unlessGteq",category:"comparison",compatibility:["browser","nodejs"],fn:Ae},{name:"unlessLteq",category:"comparison",compatibility:["browser","nodejs"],fn:Ne}];var q=require("chrono-node"),v=a(require("dayjs"),1),$e=()=>new Date().getFullYear().toString(),J=(n,e)=>{let r=(0,q.parseDate)(n);if(!r)throw new Error(`Unable to parse date: ${n}`);return(0,v.default)(r).format(e)},D=[{name:"year",category:"date",compatibility:["browser","nodejs"],fn:$e},{name:"date",category:"date",compatibility:["browser","nodejs"],fn:J},{name:"moment",category:"date",compatibility:["browser","nodejs"],fn:J}];var x=a(require("fs"),1),W=a(require("path"),1),G=a(require("is-glob"),1),Y=a(require("micromatch"),1),Re=(n,e)=>{if(n==null)return"0 B";let r=typeof n=="number"?n:n.length??0;if(!r)return"0 B";let t=typeof e=="number"?e:2,o=["B","kB","MB","GB","TB","PB","EB","ZB","YB"],s=10**t,i=o.length-1;do{let p=10**(i*3);if(p<=r+1)return`${Math.round(r*s/p)/s} ${o[i]}`}while(--i>=0);return`${r} B`},Se=n=>x.default.readFileSync(n,"utf8"),Ee=n=>!!(n&&typeof n=="object"&&"hash"in n),Te=(n,e)=>{let r=x.default.readdirSync(n).map(o=>W.default.join(n,o)),t=Ee(e)?void 0:e;if(typeof t=="function")return t(r);if(t instanceof RegExp)return r.filter(o=>t.test(o));if(typeof t=="string"){if((0,G.default)(t))return(0,Y.default)(r,t);if(t==="isFile"||t==="isDirectory")return r.filter(o=>{let s=x.default.statSync(o);return t==="isFile"?s.isFile():s.isDirectory()})}return r},Q=[{name:"fileSize",category:"fs",compatibility:["nodejs"],fn:Re},{name:"read",category:"fs",compatibility:["nodejs"],fn:Se},{name:"readdir",category:"fs",compatibility:["nodejs"],fn:Te}];var O=a(require("path"),1),S=a(require("html-tag"),1),Z=a(require("striptags"),1);var u=(n={})=>Object.keys(n).map(e=>`${e}="${String(n[e]).replace(/^['"]|["']$/g,"")}"`).join(" "),Fe=n=>{let e=u(n?.hash??{});return e.trim()?` ${e}`:""},Be=function(n,e){arguments.length<2&&(e=n,n=[]);let r=f(n??[]),t="";return this&&this.options&&(t=this.options.assets||""),e?.hash?.href&&(r=f(e.hash.href)),r.map(o=>{let s=O.default.extname(o),i=o;return/(^\/\/)|(:\/\/)/.test(o)||(i=O.default.posix.join(t,o)),s===".less"?`<link type="text/css" rel="stylesheet/less" href="${i}">`:`<link type="text/css" rel="stylesheet" href="${i}">`}).join(`
|
|
3
|
+
`)},_e=n=>{if(n&&typeof n=="object"&&!Array.isArray(n)){let r=u(n.hash??{});return`<script${r?` ${r}`:""}></script>`}return typeof n=="string"?`<script src="${n}"></script>`:f(n).map(r=>O.default.extname(r)===".coffee"?(0,S.default)("script",{type:"text/coffeescript",src:r}):(0,S.default)("script",{src:r})).join(`
|
|
4
|
+
`)},Ce=n=>typeof n!="string"?"":(0,Z.default)(n).trim(),Me=(n,e)=>{let r=u(e.hash??{}),t=n.map(s=>typeof s=="string"?s:e.fn(s));return`${r?`<ul ${r}>`:"<ul>"}${t.map(s=>`<li>${s}</li>`).join(`
|
|
5
|
+
`)}</ul>`},ze=(n,e)=>{let r=u(e.hash??{}),t=n.map(s=>typeof s=="string"?s:e.fn(s));return`${r?`<ol ${r}>`:"<ol>"}${t.map(s=>`<li>${s}</li>`).join(`
|
|
6
|
+
`)}</ol>`},Le=n=>{let e="",r="",t=n.full||!1,o={alt:n.alt,src:n.thumbnail,width:n.size.width,height:n.size.height},s={id:`image-${n.id}`},i={href:t,rel:"thumbnail"};return n.classes&&(n.classes.image&&(o.class=n.classes.image.join(" ")),n.classes.figure&&(s.class=n.classes.figure.join(" ")),n.classes.link&&(i.class=n.classes.link.join(" "))),e+=`<figure ${u(s)}>
|
|
7
|
+
`,r+=`<img ${u(o)}>
|
|
8
|
+
`,t?e+=`<a ${u(i)}>
|
|
9
9
|
${r}</a>
|
|
10
10
|
`:e+=r,n.caption&&(e+=`<figcaption>${n.caption}</figcaption>
|
|
11
|
-
`),e+="</figure>",e},Q=[{name:"attr",category:"html",compatibility:["browser","nodejs"],fn:Te},{name:"css",category:"html",compatibility:["nodejs"],fn:Ee},{name:"js",category:"html",compatibility:["nodejs"],fn:Fe},{name:"sanitize",category:"html",compatibility:["browser","nodejs"],fn:_e},{name:"ul",category:"html",compatibility:["browser","nodejs"],fn:Ce},{name:"ol",category:"html",compatibility:["browser","nodejs"],fn:Me},{name:"thumbnailImage",category:"html",compatibility:["browser","nodejs"],fn:ze}];var Z=i(require("get-value"),1),Le=function(n,e,r){if(e&&typeof e=="object"&&"hash"in e&&r===void 0&&(r=e,e={}),typeof n!="string")throw new Error('{{i18n}} helper expected "key" to be a string');let t={...this,...e,...r?.hash??{}},o=t.language||t.lang;if(typeof o!="string")throw new TypeError('{{i18n}} helper expected "language" to be a string');let s=t[o];if(typeof s>"u")throw new Error(`{{i18n}} helper cannot find language "${o}"`);let a=(0,Z.default)(s,n);if(typeof a>"u")throw new Error('{{i18n}} helper cannot find property "'+String(n)+'" for language "'+o+'"');return String(a)},V=[{name:"i18n",category:"i18n",compatibility:["browser","nodejs"],fn:Le}];var Ue=(n,e,r,t)=>{let o=n>1||n===0?r:e;return t?`${n} ${o}`:o},Pe=n=>{let e=Math.abs(Math.round(Number(n))),r=String(n),t=e%100;if([11,12,13].includes(t))return`${r}th`;switch(e%10){case 1:return`${r}st`;case 2:return`${r}nd`;case 3:return`${r}rd`;default:return`${r}th`}},K=[{name:"inflect",category:"inflection",compatibility:["browser","nodejs"],fn:Ue},{name:"ordinalize",category:"inflection",compatibility:["browser","nodejs"],fn:Pe}];var X=i(require("logging-helpers"),1),{log:Ie,ok:Je,success:qe,info:We,warning:De,warn:Ge,error:ve,danger:Ye,bold:Qe,_debug:Ze,_inspect:Ve}=X.default,nn=[{name:"log",category:"logging",compatibility:["nodejs"],fn:Ie},{name:"ok",category:"logging",compatibility:["nodejs"],fn:Je},{name:"success",category:"logging",compatibility:["nodejs"],fn:qe},{name:"info",category:"logging",compatibility:["nodejs"],fn:We},{name:"warning",category:"logging",compatibility:["nodejs"],fn:De},{name:"warn",category:"logging",compatibility:["nodejs"],fn:Ge},{name:"error",category:"logging",compatibility:["nodejs"],fn:ve},{name:"danger",category:"logging",compatibility:["nodejs"],fn:Ye},{name:"bold",category:"logging",compatibility:["nodejs"],fn:Qe},{name:"_debug",category:"logging",compatibility:["nodejs"],fn:Ze},{name:"_inspect",category:"logging",compatibility:["nodejs"],fn:Ve}];var R=i(require("micromatch"),1),en=(n,e,r)=>{let t=typeof e=="string"?e.split(/, */):e;return(0,R.default)(n,t,r)},Ke=(n,e,r)=>R.default.isMatch(n,e,r),Xe=(...n)=>(console.log("the {{mm}} helper is depcrecated and will be removed"),console.log("in handlebars-helpers v1.0.0, please use the {{match}}"),console.log("helper instead."),en(...n)),rn=[{name:"match",category:"match",compatibility:["browser","nodejs"],fn:en},{name:"isMatch",category:"match",compatibility:["browser","nodejs"],fn:Ke},{name:"mm",category:"match",compatibility:["browser","nodejs"],fn:Xe}];var N=n=>typeof n=="number"&&!Number.isNaN(n)||typeof n=="string"&&n.trim()!==""&&!Number.isNaN(Number(n)),c=(n,e="expected a number")=>{if(N(n))return Number(n);throw new TypeError(e)},nr=n=>{let e=c(n);return Math.abs(e)},er=(n,e)=>N(n)&&N(e)?Number(n)+Number(e):"",rr=(...n)=>{let e=n.flat().map(r=>Number(r));return on(e)/e.length},tr=n=>{let e=c(n);return Math.ceil(e)},or=(n,e)=>{let r=c(n,"expected the first argument to be a number"),t=c(e,"expected the second argument to be a number");return r/t},sr=n=>{let e=c(n);return Math.floor(e)},ir=(n,e)=>{let r=c(n,"expected the first argument to be a number"),t=c(e,"expected the second argument to be a number");return r-t},ar=(n,e)=>{let r=c(n,"expected the first argument to be a number"),t=c(e,"expected the second argument to be a number");return r%t},tn=(n,e)=>{let r=c(n,"expected the first argument to be a number"),t=c(e,"expected the second argument to be a number");return r*t},cr=(n,e)=>{let r=c(n,"expected the first argument to be a number"),t=c(e,"expected the second argument to be a number");return r+t},pr=(n,e)=>{let r=c(n,"expected minimum to be a number"),t=c(e,"expected maximum to be a number");return r+Math.floor(Math.random()*(t-r+1))},mr=(n,e)=>n%e,lr=n=>{let e=c(n);return Math.round(e)},yr=(n,e)=>{let r=c(n,"expected the first argument to be a number"),t=c(e,"expected the second argument to be a number");return r-t},on=(...n)=>{let e=n.flat(),r=0;for(let t of e)N(t)&&(r+=Number(t));return r},gr=(n,e)=>tn(n,e),sn=[{name:"abs",category:"math",compatibility:["browser","nodejs"],fn:nr},{name:"add",category:"math",compatibility:["browser","nodejs"],fn:er},{name:"avg",category:"math",compatibility:["browser","nodejs"],fn:rr},{name:"ceil",category:"math",compatibility:["browser","nodejs"],fn:tr},{name:"divide",category:"math",compatibility:["browser","nodejs"],fn:or},{name:"floor",category:"math",compatibility:["browser","nodejs"],fn:sr},{name:"minus",category:"math",compatibility:["browser","nodejs"],fn:ir},{name:"modulo",category:"math",compatibility:["browser","nodejs"],fn:ar},{name:"multiply",category:"math",compatibility:["browser","nodejs"],fn:tn},{name:"plus",category:"math",compatibility:["browser","nodejs"],fn:cr},{name:"random",category:"math",compatibility:["browser","nodejs"],fn:pr},{name:"remainder",category:"math",compatibility:["browser","nodejs"],fn:mr},{name:"round",category:"math",compatibility:["browser","nodejs"],fn:lr},{name:"subtract",category:"math",compatibility:["browser","nodejs"],fn:yr},{name:"sum",category:"math",compatibility:["browser","nodejs"],fn:on},{name:"times",category:"math",compatibility:["browser","nodejs"],fn:gr}];var S=i(require("fs"),1),an=i(require("path"),1),cn=i(require("process"),1),pn=i(require("ent"),1),mn=i(require("handlebars"),1),ln=require("remarkable"),fr=(n,e={})=>{let r={cwd:cn.default.cwd(),...e},t=new ln.Remarkable({breaks:!0,html:!0,langPrefix:"lang-",typographer:!1,xhtmlOut:!1}),o=an.default.resolve(r.cwd,n),s=n;return S.default.existsSync(o)&&(s=S.default.readFileSync(o,"utf8")),new mn.default.SafeString(pn.default.decode(t.render(s)))},yn=[{name:"md",category:"markdown",compatibility:["nodejs"],fn:fr}];var gn=i(require("get-value"),1),fn=i(require("handlebars-helper-create-frame"),1),un=i(require("handlebars-utils"),1),bn=i(require("kind-of"),1),ur=fn.default;function br(n,e,r){return(0,gn.default)(un.default.options(this,e,r),n)}function dr(n){return n.fn(this)}var hr=bn.default;function wr(n){return n.hash&&Object.keys(n.hash).length?n.fn(n.hash):n.inverse(this)}var dn=[{name:"frame",category:"misc",compatibility:["browser","nodejs"],fn:ur},{name:"option",category:"misc",compatibility:["browser","nodejs"],fn:br},{name:"noop",category:"misc",compatibility:["browser","nodejs"],fn:dr},{name:"typeOf",category:"misc",compatibility:["browser","nodejs"],fn:hr},{name:"withHash",category:"misc",compatibility:["browser","nodejs"],fn:wr}];var d=n=>typeof n=="number"&&!Number.isNaN(n),jr=(n,e)=>{if(n==null)return"0 B";let r;if(typeof n=="string"){if(r=n.length,!r)return"0 B"}else if(d(n))r=Number(n);else if(typeof n.length=="number"){if(r=n.length,!r)return"0 B"}else return"0 B";let t=typeof e=="number"&&!Number.isNaN(e)?e:2,o=["B","kB","MB","GB","TB","PB","EB","ZB","YB"],s=10**t;for(let a=o.length-1;a>=0;a--){let p=10**(a*3);if(p<=r+1)return`${Math.round(r*s/p)/s} ${o[a]}`}return`${r}`},kr=n=>n.toString().replace(/(\d)(?=(\d\d\d)+(?!\d))/g,"$1,"),Hr=n=>{let e=n.toString();return`(${e.substr(0,3)}) ${e.substr(3,3)}-${e.substr(6,4)}`},xr=(n,e)=>{let r=d(n)?Number(n):0,o=10**(typeof e=="number"&&!Number.isNaN(e)?e:2),s=["k","m","b","t","q"];for(let a=s.length-1;a>=0;a--){let p=10**((a+1)*3);if(p<=r+1)return`${Math.round(r*o/p)/o}${s[a]}`}return`${r}`},Nr=(n,e)=>{let r=d(n)?Number(n):0,t=typeof e=="number"&&!Number.isNaN(e)?e:0;return Number(r).toExponential(t)},$r=(n,e)=>{let r=d(n)?Number(n):0,t=typeof e=="number"&&!Number.isNaN(e)?e:0;return Number(r).toFixed(t)},Or=n=>parseFloat(String(n)),Ar=n=>parseInt(String(n),10),Rr=(n,e)=>{let r=d(n)?Number(n):0,t=typeof e=="number"&&!Number.isNaN(e)?e:1;return Number(r).toPrecision(t)},hn=[{name:"bytes",category:"number",compatibility:["browser","nodejs"],fn:jr},{name:"addCommas",category:"number",compatibility:["browser","nodejs"],fn:kr},{name:"phoneNumber",category:"number",compatibility:["browser","nodejs"],fn:Hr},{name:"toAbbr",category:"number",compatibility:["browser","nodejs"],fn:xr},{name:"toExponential",category:"number",compatibility:["browser","nodejs"],fn:Nr},{name:"toFixed",category:"number",compatibility:["browser","nodejs"],fn:$r},{name:"toFloat",category:"number",compatibility:["browser","nodejs"],fn:Or},{name:"toInt",category:"number",compatibility:["browser","nodejs"],fn:Ar},{name:"toPrecision",category:"number",compatibility:["browser","nodejs"],fn:Rr}];var B=i(require("get-object"),1),wn=i(require("get-value"),1);var $=n=>!!(n&&typeof n=="object"&&"hash"in n),jn=(n,e)=>({...n?.data||{},...e}),Sr=(...n)=>{let e=[...n];if(e.length&&$(e[e.length-1])){let t=e.pop();e.push(t.hash)}let r={};for(let t of e)t&&typeof t=="object"&&!Array.isArray(t)&&Object.assign(r,t);return r},Br=(n,e)=>{if(!$(e))return e?.inverse?.(n)??"";let r=jn(e,e.hash||{}),t="";for(let o in n)r.key=o,t+=e.fn(n[o],{data:r});return t},Tr=(n,e)=>{if(!$(e))return e?.inverse?.(n)??"";let r=jn(e,e.hash||{}),t="";for(let o in n)Object.hasOwn(n,o)&&(r.key=o,t+=e.fn(n[o],{data:r}));return t},Er=(...n)=>{let e=[];for(let r of n)(typeof r=="string"||typeof r=="number")&&e.push(r);return e.join(".")},Fr=(n,e,r)=>{let t=(0,wn.default)(e,n);return r&&typeof r.fn=="function"?t?r.fn(t):r.inverse?.(e):t},_r=(n,e)=>(0,B.default)(e,n),Cr=(n,e)=>Object.hasOwn(n,e),Mr=n=>!!n&&typeof n=="object"&&!Array.isArray(n),kn=n=>JSON.parse(n),Hn=(n,e)=>JSON.stringify(n,null,typeof e=="number"?e:0),zr=(n,...e)=>{let r=[n,...e];if(r.length&&$(r[r.length-1])){let t=r.pop();r.push(t.hash)}return Object.assign(...r)},Lr=kn,Ur=Hn,Pr=(n,e,r)=>{let t=y(n),o={};for(let s of t)o=Object.assign({},o,(0,B.default)(e,s));return r&&typeof r.fn=="function"?Object.keys(o).length?r.fn(o):r.inverse?.(e):o},xn=[{name:"extend",category:"object",compatibility:["browser","nodejs"],fn:Sr},{name:"forIn",category:"object",compatibility:["browser","nodejs"],fn:Br},{name:"forOwn",category:"object",compatibility:["browser","nodejs"],fn:Tr},{name:"toPath",category:"object",compatibility:["browser","nodejs"],fn:Er},{name:"get",category:"object",compatibility:["browser","nodejs"],fn:Fr},{name:"getObject",category:"object",compatibility:["browser","nodejs"],fn:_r},{name:"hasOwn",category:"object",compatibility:["browser","nodejs"],fn:Cr},{name:"isObject",category:"object",compatibility:["browser","nodejs"],fn:Mr},{name:"JSONparse",category:"object",compatibility:["browser","nodejs"],fn:kn},{name:"JSONstringify",category:"object",compatibility:["browser","nodejs"],fn:Hn},{name:"merge",category:"object",compatibility:["browser","nodejs"],fn:zr},{name:"parseJSON",category:"object",compatibility:["browser","nodejs"],fn:Lr},{name:"pick",category:"object",compatibility:["browser","nodejs"],fn:Pr},{name:"stringify",category:"object",compatibility:["browser","nodejs"],fn:Ur}];var m=i(require("path"),1),Ir=(n,e,r)=>{let t=Object.prototype.toString.call(r).slice(8,-1).toLowerCase();return`Expected ${n} to be of type ${e}, but got ${t}`},l=(n,e)=>{if(typeof e!="string")throw new TypeError(Ir(n,"string",e));return e},Jr=function(n,e){let r=l("filepath",n),t=e?.data?.root?.cwd??this?.cwd??process.cwd();return m.default.resolve(t,r)},qr=n=>{let e=l("filepath",n);return m.default.dirname(e)},Wr=(n,e)=>{let r=l("first path",n),t=l("second path",e);return m.default.relative(m.default.dirname(r),t)},Dr=n=>{let e=l("filepath",n);return m.default.basename(e)},Gr=n=>{let e=l("filepath",n);return m.default.basename(e,m.default.extname(e))},vr=n=>{let e=l("filepath",n);return m.default.extname(e)},Yr=function(n,...e){let r,t=e[e.length-1];typeof t=="object"&&t&&"data"in t&&(r=e.pop());let s=[r?.data?.root?.cwd??this?.cwd??process.cwd(),l("filepath",n),...e.map((a,p)=>l(`path${p}`,a))];return m.default.resolve(...s)},Qr=(n,e,r)=>{let t=l("filepath",n),o=Number(e),s=Number(r);return t.split(/[\\/]+/).slice(o,s).join("/")},Nn=[{name:"absolute",category:"path",compatibility:["nodejs"],fn:Jr},{name:"dirname",category:"path",compatibility:["nodejs"],fn:qr},{name:"relative",category:"path",compatibility:["nodejs"],fn:Wr},{name:"basename",category:"path",compatibility:["nodejs"],fn:Dr},{name:"stem",category:"path",compatibility:["nodejs"],fn:Gr},{name:"extname",category:"path",compatibility:["nodejs"],fn:vr},{name:"resolve",category:"path",compatibility:["nodejs"],fn:Yr},{name:"segments",category:"path",compatibility:["nodejs"],fn:Qr}];var $n=i(require("handlebars-utils"),1),Zr=(n,e,r)=>{let t=$n.default.options({},e,r);return new RegExp(n,t.flags)},Vr=(n,e)=>{if(typeof n!="string")return!1;if(!(e instanceof RegExp))throw new TypeError("expected a regular expression");return e.test(n)},On=[{name:"toRegex",category:"regex",compatibility:["browser","nodejs"],fn:Zr},{name:"test",category:"regex",compatibility:["browser","nodejs"],fn:Vr}];var An=n=>n.trim().replace(/^[-_.\W\s]+|[-_.\W\s]+$/g,""),b=(n,e)=>n.length===1?n.toLowerCase():An(n).toLowerCase().replace(/[-_.\W\s]+(\w|$)/g,(t,o)=>e(o)),Kr=(n,e)=>typeof n=="string"&&typeof e=="string"?n+e:n,Xr=n=>typeof n=="string"?b(n,e=>e.toUpperCase()):"",Rn=n=>typeof n!="string"||n.length===0?"":n.charAt(0).toUpperCase()+n.slice(1),nt=n=>typeof n!="string"?"":n.replace(/\w\S*/g,e=>Rn(e)),et=(n,e)=>{if(typeof n!="string")return"";let r="";for(let t=0;t<e;t++)r+=" ";return r+n+r},rt=n=>typeof n=="string"?An(n):"",tt=n=>typeof n=="string"?b(n,e=>`-${e}`):"",ot=n=>typeof n=="string"?b(n,e=>`.${e}`):"",Sn=(n,e,r)=>typeof n=="string"?(typeof r!="string"&&(r=""),n.length>e?n.slice(0,e-r.length)+r:n):"",st=(n,e)=>typeof n=="string"?n.length<=e?n:`${Sn(n,e)}\u2026`:"",it=n=>typeof n=="string"?n.split(" ").join("-"):"",at=n=>typeof n=="string",Bn=n=>typeof n=="object"&&n!==null&&"fn"in n&&typeof n.fn=="function"?String(n.fn()).toLowerCase():typeof n!="string"?"":n.toLowerCase(),ct=(...n)=>Bn(...n),pt=(n,e)=>{if(typeof n!="string")return"";let r=e.length,t=n.indexOf(e,0),o=0;for(;t>-1;)o++,t=n.indexOf(e,t+r);return o},mt=n=>{if(typeof n!="string")return"";let e=b(n,r=>r.toUpperCase());return e.charAt(0).toUpperCase()+e.slice(1)},lt=n=>typeof n=="string"?b(n,e=>`/${e}`):"",yt=(n,e)=>typeof n!="string"?"":(typeof e!="string"&&(e=" "),n.split(e).join("+")),gt=(n,e)=>typeof n=="string"&&typeof e=="string"?e+n:n,ft=(n,e)=>typeof n!="string"?"":typeof e!="string"?n:n.split(e).join(""),ut=(n,e)=>typeof n!="string"?"":typeof e!="string"?n:n.replace(e,""),bt=(n,e,r)=>typeof n!="string"?"":typeof e!="string"?n:(typeof r!="string"&&(r=""),n.split(e).join(r)),dt=(n,e,r)=>typeof n!="string"?"":typeof e!="string"?n:(typeof r!="string"&&(r=""),n.replace(e,r)),ht=n=>typeof n=="string"?n.split("").reverse().join(""):"",wt=n=>typeof n!="string"?"":n.replace(/((?:\S[^.?!]*)[.?!]*)/g,e=>e.charAt(0).toUpperCase()+e.substr(1).toLowerCase()),jt=n=>typeof n=="string"?b(n,e=>`_${e}`):"",kt=n=>typeof n=="string"?n.trim():"",Ht=n=>typeof n=="string"?n.replace(/^\s+/,""):"",xt=n=>typeof n=="string"?n.replace(/\s+$/,""):"",Nt=(n,e,r)=>{if(typeof n=="string"&&typeof e=="number"&&Number.isFinite(e)){typeof r!="string"&&(r="...");let t=Math.trunc(e),o=n.split(" ");return t<o.length&&(o=o.slice(0,t)),o.join(" ").trim()+r}return""},$t=Nt,Tn=n=>typeof n=="object"&&n!==null&&"fn"in n&&typeof n.fn=="function"?String(n.fn()).toUpperCase():typeof n!="string"?"":n.toUpperCase(),Ot=(...n)=>Tn(...n),En=[{name:"append",category:"string",compatibility:["browser","nodejs"],fn:Kr},{name:"camelcase",category:"string",compatibility:["browser","nodejs"],fn:Xr},{name:"capitalize",category:"string",compatibility:["browser","nodejs"],fn:Rn},{name:"capitalizeAll",category:"string",compatibility:["browser","nodejs"],fn:nt},{name:"center",category:"string",compatibility:["browser","nodejs"],fn:et},{name:"chop",category:"string",compatibility:["browser","nodejs"],fn:rt},{name:"dashcase",category:"string",compatibility:["browser","nodejs"],fn:tt},{name:"dotcase",category:"string",compatibility:["browser","nodejs"],fn:ot},{name:"ellipsis",category:"string",compatibility:["browser","nodejs"],fn:st},{name:"hyphenate",category:"string",compatibility:["browser","nodejs"],fn:it},{name:"isString",category:"string",compatibility:["browser","nodejs"],fn:at},{name:"lowercase",category:"string",compatibility:["browser","nodejs"],fn:Bn},{name:"downcase",category:"string",compatibility:["browser","nodejs"],fn:ct},{name:"occurrences",category:"string",compatibility:["browser","nodejs"],fn:pt},{name:"pascalcase",category:"string",compatibility:["browser","nodejs"],fn:mt},{name:"pathcase",category:"string",compatibility:["browser","nodejs"],fn:lt},{name:"plusify",category:"string",compatibility:["browser","nodejs"],fn:yt},{name:"prepend",category:"string",compatibility:["browser","nodejs"],fn:gt},{name:"remove",category:"string",compatibility:["browser","nodejs"],fn:ft},{name:"removeFirst",category:"string",compatibility:["browser","nodejs"],fn:ut},{name:"replace",category:"string",compatibility:["browser","nodejs"],fn:bt},{name:"replaceFirst",category:"string",compatibility:["browser","nodejs"],fn:dt},{name:"reverse",category:"string",compatibility:["browser","nodejs"],fn:ht},{name:"sentence",category:"string",compatibility:["browser","nodejs"],fn:wt},{name:"snakecase",category:"string",compatibility:["browser","nodejs"],fn:jt},{name:"trim",category:"string",compatibility:["browser","nodejs"],fn:kt},{name:"trimLeft",category:"string",compatibility:["browser","nodejs"],fn:Ht},{name:"trimRight",category:"string",compatibility:["browser","nodejs"],fn:xt},{name:"truncate",category:"string",compatibility:["browser","nodejs"],fn:Sn},{name:"truncateWords",category:"string",compatibility:["browser","nodejs"],fn:$t},{name:"uppercase",category:"string",compatibility:["browser","nodejs"],fn:Tn},{name:"upcase",category:"string",compatibility:["browser","nodejs"],fn:Ot}];var Fn=require("querystring"),f=require("url"),h=["browser","nodejs"],_n=n=>{if(typeof n=="string")return encodeURIComponent(n)},At=n=>{if(typeof n=="string")return(0,Fn.escape)(n)},Cn=n=>{if(typeof n=="string")return decodeURIComponent(n)};function Rt(...n){return _n.apply(this,n)}function St(...n){return Cn.apply(this,n)}var Bt=(n,e)=>(0,f.resolve)(String(n),String(e)),Tt=n=>(0,f.parse)(String(n)),Et=n=>{if(typeof n=="string")return n.split("?")[0]},Ft=n=>{if(typeof n=="string"){let e=(0,f.parse)(n);return e.protocol="",(0,f.format)(e)}},Mn=[{name:"encodeURI",category:"url",compatibility:h,fn:_n},{name:"escape",category:"url",compatibility:["nodejs"],fn:At},{name:"decodeURI",category:"url",compatibility:h,fn:Cn},{name:"url_encode",category:"url",compatibility:h,fn:Rt},{name:"url_decode",category:"url",compatibility:h,fn:St},{name:"urlResolve",category:"url",compatibility:["nodejs"],fn:Bt},{name:"urlParse",category:"url",compatibility:["nodejs"],fn:Tt},{name:"stripQuerystring",category:"url",compatibility:h,fn:Et},{name:"stripProtocol",category:"url",compatibility:["nodejs"],fn:Ft}];var u=class{_helpers=[];constructor(){this.init()}get helpers(){return this._helpers}init(){this.registerHelpers(E),this.registerHelpers(z),this.registerHelpers(q),this.registerHelpers(v),this.registerHelpers(M),this.registerHelpers(yn),this.registerHelpers(Q),this.registerHelpers(U),this.registerHelpers(V),this.registerHelpers(K),this.registerHelpers(nn),this.registerHelpers(rn),this.registerHelpers(sn),this.registerHelpers(dn),this.registerHelpers(hn),this.registerHelpers(Nn),this.registerHelpers(On),this.registerHelpers(En),this.registerHelpers(Mn),this.registerHelpers(xn)}register(e){return this.has(e.name)||this._helpers.push(e),!1}registerHelpers(e){for(let r of e)this.register(r)}has(e){return this._helpers.some(r=>r.name===e)}filter(e){let r=this._helpers;return e.names&&(r=r.filter(t=>e.names?.includes(t.name))),e.categories&&(r=r.filter(t=>e.categories?.includes(t.category))),e.compatibility&&(r=r.filter(t=>t.compatibility?.some(o=>e.compatibility?.includes(o)))),r}load(e,r){let t=this._helpers;r&&(t=this.filter(r));for(let o of t)e.registerHelper(o.name,o.fn)}swap(e){for(let r of this._helpers)e.unregisterHelper(r.name),e.registerHelper(r.name,r.fn)}};var _t=w.default,Ct=w.default.create();function Mt(n){new u().load(n.handlebars??n.hbs)}async function zt(){let n=new u,e=w.default.create();return n.load(e),process.env.NODE_ENV==="development"&&console.warn("createHandlebars will be deprecated in future versions, use `fumanchu` instead."),e}function Lt(n){let e=new u,r=w.default.create();return n?.handlebars&&(r=n.handlebars),e.load(r),r}0&&(module.exports={Handlebars,HelperRegistry,createHandlebars,fumanchu,handlebars,helpers});
|
|
11
|
+
`),e+="</figure>",e},K=[{name:"attr",category:"html",compatibility:["browser","nodejs"],fn:Fe},{name:"css",category:"html",compatibility:["nodejs"],fn:Be},{name:"js",category:"html",compatibility:["nodejs"],fn:_e},{name:"sanitize",category:"html",compatibility:["browser","nodejs"],fn:Ce},{name:"ul",category:"html",compatibility:["browser","nodejs"],fn:Me},{name:"ol",category:"html",compatibility:["browser","nodejs"],fn:ze},{name:"thumbnailImage",category:"html",compatibility:["browser","nodejs"],fn:Le}];var h=(n,e)=>{if(!n||typeof n!="object")return;let r=Array.isArray(e)?e:e.split("."),t=n;for(let o of r){if(t==null||typeof t!="object")return;t=t[o]}return t},E=(n,e)=>{if(!n||typeof n!="object")return;let r=Array.isArray(e)?e:e.split(".");if(r.length===0)return;let t=n;for(let s=0;s<r.length-1;s++){if(t==null||typeof t!="object")return;t=t[r[s]]}let o=r[r.length-1];if(!(t==null||typeof t!="object"||!(o in t)))return{[o]:t[o]}};var Pe=function(n,e,r){if(e&&typeof e=="object"&&"hash"in e&&r===void 0&&(r=e,e={}),typeof n!="string")throw new Error('{{i18n}} helper expected "key" to be a string');let t={...this,...e,...r?.hash??{}},o=t.language||t.lang;if(typeof o!="string")throw new TypeError('{{i18n}} helper expected "language" to be a string');let s=t[o];if(typeof s>"u")throw new Error(`{{i18n}} helper cannot find language "${o}"`);let i=h(s,n);if(typeof i>"u")throw new Error('{{i18n}} helper cannot find property "'+String(n)+'" for language "'+o+'"');return String(i)},V=[{name:"i18n",category:"i18n",compatibility:["browser","nodejs"],fn:Pe}];var Ue=(n,e,r,t)=>{let o=n>1||n===0?r:e;return t?`${n} ${o}`:o},Ie=n=>{let e=Math.abs(Math.round(Number(n))),r=String(n),t=e%100;if([11,12,13].includes(t))return`${r}th`;switch(e%10){case 1:return`${r}st`;case 2:return`${r}nd`;case 3:return`${r}rd`;default:return`${r}th`}},X=[{name:"inflect",category:"inflection",compatibility:["browser","nodejs"],fn:Ue},{name:"ordinalize",category:"inflection",compatibility:["browser","nodejs"],fn:Ie}];var nn=a(require("logging-helpers"),1),{log:Je,ok:qe,success:ve,info:De,warning:We,warn:Ge,error:Ye,danger:Qe,bold:Ze,_debug:Ke,_inspect:Ve}=nn.default,en=[{name:"log",category:"logging",compatibility:["nodejs"],fn:Je},{name:"ok",category:"logging",compatibility:["nodejs"],fn:qe},{name:"success",category:"logging",compatibility:["nodejs"],fn:ve},{name:"info",category:"logging",compatibility:["nodejs"],fn:De},{name:"warning",category:"logging",compatibility:["nodejs"],fn:We},{name:"warn",category:"logging",compatibility:["nodejs"],fn:Ge},{name:"error",category:"logging",compatibility:["nodejs"],fn:Ye},{name:"danger",category:"logging",compatibility:["nodejs"],fn:Qe},{name:"bold",category:"logging",compatibility:["nodejs"],fn:Ze},{name:"_debug",category:"logging",compatibility:["nodejs"],fn:Ke},{name:"_inspect",category:"logging",compatibility:["nodejs"],fn:Ve}];var T=a(require("micromatch"),1),rn=(n,e,r)=>{let t=typeof e=="string"?e.split(/, */):e;return(0,T.default)(n,t,r)},Xe=(n,e,r)=>T.default.isMatch(n,e,r),nr=(...n)=>(console.log("the {{mm}} helper is depcrecated and will be removed"),console.log("in handlebars-helpers v1.0.0, please use the {{match}}"),console.log("helper instead."),rn(...n)),tn=[{name:"match",category:"match",compatibility:["browser","nodejs"],fn:rn},{name:"isMatch",category:"match",compatibility:["browser","nodejs"],fn:Xe},{name:"mm",category:"match",compatibility:["browser","nodejs"],fn:nr}];var A=n=>typeof n=="number"&&!Number.isNaN(n)||typeof n=="string"&&n.trim()!==""&&!Number.isNaN(Number(n)),c=(n,e="expected a number")=>{if(A(n))return Number(n);throw new TypeError(e)},er=n=>{let e=c(n);return Math.abs(e)},rr=(n,e)=>A(n)&&A(e)?Number(n)+Number(e):"",tr=(...n)=>{let e=n.flat().map(r=>Number(r));return sn(e)/e.length},or=n=>{let e=c(n);return Math.ceil(e)},sr=(n,e)=>{let r=c(n,"expected the first argument to be a number"),t=c(e,"expected the second argument to be a number");return r/t},ir=n=>{let e=c(n);return Math.floor(e)},ar=(n,e)=>{let r=c(n,"expected the first argument to be a number"),t=c(e,"expected the second argument to be a number");return r-t},cr=(n,e)=>{let r=c(n,"expected the first argument to be a number"),t=c(e,"expected the second argument to be a number");return r%t},on=(n,e)=>{let r=c(n,"expected the first argument to be a number"),t=c(e,"expected the second argument to be a number");return r*t},pr=(n,e)=>{let r=c(n,"expected the first argument to be a number"),t=c(e,"expected the second argument to be a number");return r+t},mr=(n,e)=>{let r=c(n,"expected minimum to be a number"),t=c(e,"expected maximum to be a number");return r+Math.floor(Math.random()*(t-r+1))},lr=(n,e)=>n%e,yr=n=>{let e=c(n);return Math.round(e)},gr=(n,e)=>{let r=c(n,"expected the first argument to be a number"),t=c(e,"expected the second argument to be a number");return r-t},sn=(...n)=>{let e=n.flat(),r=0;for(let t of e)A(t)&&(r+=Number(t));return r},fr=(n,e)=>on(n,e),an=[{name:"abs",category:"math",compatibility:["browser","nodejs"],fn:er},{name:"add",category:"math",compatibility:["browser","nodejs"],fn:rr},{name:"avg",category:"math",compatibility:["browser","nodejs"],fn:tr},{name:"ceil",category:"math",compatibility:["browser","nodejs"],fn:or},{name:"divide",category:"math",compatibility:["browser","nodejs"],fn:sr},{name:"floor",category:"math",compatibility:["browser","nodejs"],fn:ir},{name:"minus",category:"math",compatibility:["browser","nodejs"],fn:ar},{name:"modulo",category:"math",compatibility:["browser","nodejs"],fn:cr},{name:"multiply",category:"math",compatibility:["browser","nodejs"],fn:on},{name:"plus",category:"math",compatibility:["browser","nodejs"],fn:pr},{name:"random",category:"math",compatibility:["browser","nodejs"],fn:mr},{name:"remainder",category:"math",compatibility:["browser","nodejs"],fn:lr},{name:"round",category:"math",compatibility:["browser","nodejs"],fn:yr},{name:"subtract",category:"math",compatibility:["browser","nodejs"],fn:gr},{name:"sum",category:"math",compatibility:["browser","nodejs"],fn:sn},{name:"times",category:"math",compatibility:["browser","nodejs"],fn:fr}];var F=a(require("fs"),1),cn=a(require("path"),1),pn=a(require("process"),1),mn=a(require("ent"),1),ln=a(require("handlebars"),1),yn=require("remarkable"),ur=(n,e={})=>{let r={cwd:pn.default.cwd(),...e},t=new yn.Remarkable({breaks:!0,html:!0,langPrefix:"lang-",typographer:!1,xhtmlOut:!1}),o=cn.default.resolve(r.cwd,n),s=n;return F.default.existsSync(o)&&(s=F.default.readFileSync(o,"utf8")),new ln.default.SafeString(mn.default.decode(t.render(s)))},gn=[{name:"md",category:"markdown",compatibility:["nodejs"],fn:ur}];var fn=a(require("handlebars-helper-create-frame"),1),un=a(require("handlebars-utils"),1),bn=a(require("kind-of"),1);var br=fn.default;function dr(n,e,r){return h(un.default.options(this,e,r),n)}function hr(n){return n.fn(this)}var wr=bn.default;function jr(n){return n.hash&&Object.keys(n.hash).length?n.fn(n.hash):n.inverse(this)}var dn=[{name:"frame",category:"misc",compatibility:["browser","nodejs"],fn:br},{name:"option",category:"misc",compatibility:["browser","nodejs"],fn:dr},{name:"noop",category:"misc",compatibility:["browser","nodejs"],fn:hr},{name:"typeOf",category:"misc",compatibility:["browser","nodejs"],fn:wr},{name:"withHash",category:"misc",compatibility:["browser","nodejs"],fn:jr}];var j=n=>typeof n=="number"&&!Number.isNaN(n),kr=(n,e)=>{if(n==null)return"0 B";let r;if(typeof n=="string"){if(r=n.length,!r)return"0 B"}else if(j(n))r=Number(n);else if(typeof n.length=="number"){if(r=n.length,!r)return"0 B"}else return"0 B";let t=typeof e=="number"&&!Number.isNaN(e)?e:2,o=["B","kB","MB","GB","TB","PB","EB","ZB","YB"],s=10**t;for(let i=o.length-1;i>=0;i--){let p=10**(i*3);if(p<=r+1)return`${Math.round(r*s/p)/s} ${o[i]}`}return`${r}`},Hr=n=>n.toString().replace(/(\d)(?=(\d\d\d)+(?!\d))/g,"$1,"),xr=n=>{let e=n.toString();return`(${e.substr(0,3)}) ${e.substr(3,3)}-${e.substr(6,4)}`},Or=(n,e)=>{let r=j(n)?Number(n):0,o=10**(typeof e=="number"&&!Number.isNaN(e)?e:2),s=["k","m","b","t","q"];for(let i=s.length-1;i>=0;i--){let p=10**((i+1)*3);if(p<=r+1)return`${Math.round(r*o/p)/o}${s[i]}`}return`${r}`},Ar=(n,e)=>{let r=j(n)?Number(n):0,t=typeof e=="number"&&!Number.isNaN(e)?e:0;return Number(r).toExponential(t)},Nr=(n,e)=>{let r=j(n)?Number(n):0,t=typeof e=="number"&&!Number.isNaN(e)?e:0;return Number(r).toFixed(t)},$r=n=>parseFloat(String(n)),Rr=n=>parseInt(String(n),10),Sr=(n,e)=>{let r=j(n)?Number(n):0,t=typeof e=="number"&&!Number.isNaN(e)?e:1;return Number(r).toPrecision(t)},hn=[{name:"bytes",category:"number",compatibility:["browser","nodejs"],fn:kr},{name:"addCommas",category:"number",compatibility:["browser","nodejs"],fn:Hr},{name:"phoneNumber",category:"number",compatibility:["browser","nodejs"],fn:xr},{name:"toAbbr",category:"number",compatibility:["browser","nodejs"],fn:Or},{name:"toExponential",category:"number",compatibility:["browser","nodejs"],fn:Ar},{name:"toFixed",category:"number",compatibility:["browser","nodejs"],fn:Nr},{name:"toFloat",category:"number",compatibility:["browser","nodejs"],fn:$r},{name:"toInt",category:"number",compatibility:["browser","nodejs"],fn:Rr},{name:"toPrecision",category:"number",compatibility:["browser","nodejs"],fn:Sr}];var N=n=>!!(n&&typeof n=="object"&&"hash"in n),wn=(n,e)=>({...n?.data||{},...e}),Er=(...n)=>{let e=[...n];if(e.length&&N(e[e.length-1])){let t=e.pop();e.push(t.hash)}let r={};for(let t of e)t&&typeof t=="object"&&!Array.isArray(t)&&Object.assign(r,t);return r},Tr=(n,e)=>{if(!N(e))return e?.inverse?.(n)??"";let r=wn(e,e.hash||{}),t="";for(let o in n)r.key=o,t+=e.fn(n[o],{data:r});return t},Fr=(n,e)=>{if(!N(e))return e?.inverse?.(n)??"";let r=wn(e,e.hash||{}),t="";for(let o in n)Object.hasOwn(n,o)&&(r.key=o,t+=e.fn(n[o],{data:r}));return t},Br=(...n)=>{let e=[];for(let r of n)(typeof r=="string"||typeof r=="number")&&e.push(r);return e.join(".")},_r=(n,e,r)=>{let t=h(e,n);return r&&typeof r.fn=="function"?t?r.fn(t):r.inverse?.(e):t},Cr=(n,e)=>E(e,n),Mr=(n,e)=>Object.hasOwn(n,e),zr=n=>!!n&&typeof n=="object"&&!Array.isArray(n),jn=n=>JSON.parse(n),kn=(n,e)=>JSON.stringify(n,null,typeof e=="number"?e:0),Lr=(n,...e)=>{let r=[n,...e];if(r.length&&N(r[r.length-1])){let t=r.pop();r.push(t.hash)}return Object.assign(...r)},Pr=jn,Ur=kn,Ir=(n,e,r)=>{let t=f(n),o={};for(let s of t)o=Object.assign({},o,E(e,s));return r&&typeof r.fn=="function"?Object.keys(o).length?r.fn(o):r.inverse?.(e):o},Hn=[{name:"extend",category:"object",compatibility:["browser","nodejs"],fn:Er},{name:"forIn",category:"object",compatibility:["browser","nodejs"],fn:Tr},{name:"forOwn",category:"object",compatibility:["browser","nodejs"],fn:Fr},{name:"toPath",category:"object",compatibility:["browser","nodejs"],fn:Br},{name:"get",category:"object",compatibility:["browser","nodejs"],fn:_r},{name:"getObject",category:"object",compatibility:["browser","nodejs"],fn:Cr},{name:"hasOwn",category:"object",compatibility:["browser","nodejs"],fn:Mr},{name:"isObject",category:"object",compatibility:["browser","nodejs"],fn:zr},{name:"JSONparse",category:"object",compatibility:["browser","nodejs"],fn:jn},{name:"JSONstringify",category:"object",compatibility:["browser","nodejs"],fn:kn},{name:"merge",category:"object",compatibility:["browser","nodejs"],fn:Lr},{name:"parseJSON",category:"object",compatibility:["browser","nodejs"],fn:Pr},{name:"pick",category:"object",compatibility:["browser","nodejs"],fn:Ir},{name:"stringify",category:"object",compatibility:["browser","nodejs"],fn:Ur}];var m=a(require("path"),1),Jr=(n,e,r)=>{let t=Object.prototype.toString.call(r).slice(8,-1).toLowerCase();return`Expected ${n} to be of type ${e}, but got ${t}`},l=(n,e)=>{if(typeof e!="string")throw new TypeError(Jr(n,"string",e));return e},qr=function(n,e){let r=l("filepath",n),t=e?.data?.root?.cwd??this?.cwd??process.cwd();return m.default.resolve(t,r)},vr=n=>{let e=l("filepath",n);return m.default.dirname(e)},Dr=(n,e)=>{let r=l("first path",n),t=l("second path",e);return m.default.relative(m.default.dirname(r),t)},Wr=n=>{let e=l("filepath",n);return m.default.basename(e)},Gr=n=>{let e=l("filepath",n);return m.default.basename(e,m.default.extname(e))},Yr=n=>{let e=l("filepath",n);return m.default.extname(e)},Qr=function(n,...e){let r,t=e[e.length-1];typeof t=="object"&&t&&"data"in t&&(r=e.pop());let s=[r?.data?.root?.cwd??this?.cwd??process.cwd(),l("filepath",n),...e.map((i,p)=>l(`path${p}`,i))];return m.default.resolve(...s)},Zr=(n,e,r)=>{let t=l("filepath",n),o=Number(e),s=Number(r);return t.split(/[\\/]+/).slice(o,s).join("/")},xn=[{name:"absolute",category:"path",compatibility:["nodejs"],fn:qr},{name:"dirname",category:"path",compatibility:["nodejs"],fn:vr},{name:"relative",category:"path",compatibility:["nodejs"],fn:Dr},{name:"basename",category:"path",compatibility:["nodejs"],fn:Wr},{name:"stem",category:"path",compatibility:["nodejs"],fn:Gr},{name:"extname",category:"path",compatibility:["nodejs"],fn:Yr},{name:"resolve",category:"path",compatibility:["nodejs"],fn:Qr},{name:"segments",category:"path",compatibility:["nodejs"],fn:Zr}];var On=a(require("handlebars-utils"),1),Kr=(n,e,r)=>{let t=On.default.options({},e,r);return new RegExp(n,t.flags)},Vr=(n,e)=>{if(typeof n!="string")return!1;if(!(e instanceof RegExp))throw new TypeError("expected a regular expression");return e.test(n)},An=[{name:"toRegex",category:"regex",compatibility:["browser","nodejs"],fn:Kr},{name:"test",category:"regex",compatibility:["browser","nodejs"],fn:Vr}];var Nn=n=>n.trim().replace(/^[-_.\W\s]+|[-_.\W\s]+$/g,""),w=(n,e)=>n.length===1?n.toLowerCase():Nn(n).toLowerCase().replace(/[-_.\W\s]+(\w|$)/g,(t,o)=>e(o)),Xr=(n,e)=>typeof n=="string"&&typeof e=="string"?n+e:n,nt=n=>typeof n=="string"?w(n,e=>e.toUpperCase()):"",$n=n=>typeof n!="string"||n.length===0?"":n.charAt(0).toUpperCase()+n.slice(1),et=n=>typeof n!="string"?"":n.replace(/\w\S*/g,e=>$n(e)),rt=(n,e)=>{if(typeof n!="string")return"";let r="";for(let t=0;t<e;t++)r+=" ";return r+n+r},tt=n=>typeof n=="string"?Nn(n):"",ot=n=>typeof n=="string"?w(n,e=>`-${e}`):"",st=n=>typeof n=="string"?w(n,e=>`.${e}`):"",Rn=(n,e,r)=>typeof n=="string"?(typeof r!="string"&&(r=""),n.length>e?n.slice(0,e-r.length)+r:n):"",it=(n,e)=>typeof n=="string"?n.length<=e?n:`${Rn(n,e)}\u2026`:"",at=n=>typeof n=="string"?n.split(" ").join("-"):"",ct=n=>typeof n=="string",Sn=n=>typeof n=="object"&&n!==null&&"fn"in n&&typeof n.fn=="function"?String(n.fn()).toLowerCase():typeof n!="string"?"":n.toLowerCase(),pt=(...n)=>Sn(...n),mt=(n,e)=>{if(typeof n!="string")return"";let r=e.length,t=n.indexOf(e,0),o=0;for(;t>-1;)o++,t=n.indexOf(e,t+r);return o},lt=n=>{if(typeof n!="string")return"";let e=w(n,r=>r.toUpperCase());return e.charAt(0).toUpperCase()+e.slice(1)},yt=n=>typeof n=="string"?w(n,e=>`/${e}`):"",gt=(n,e)=>typeof n!="string"?"":(typeof e!="string"&&(e=" "),n.split(e).join("+")),ft=(n,e)=>typeof n=="string"&&typeof e=="string"?e+n:n,ut=(n,e)=>typeof n!="string"?"":typeof e!="string"?n:n.split(e).join(""),bt=(n,e)=>typeof n!="string"?"":typeof e!="string"?n:n.replace(e,""),dt=(n,e,r)=>typeof n!="string"?"":typeof e!="string"?n:(typeof r!="string"&&(r=""),n.split(e).join(r)),ht=(n,e,r)=>typeof n!="string"?"":typeof e!="string"?n:(typeof r!="string"&&(r=""),n.replace(e,r)),wt=n=>typeof n=="string"?n.split("").reverse().join(""):"",jt=n=>typeof n!="string"?"":n.replace(/((?:\S[^.?!]*)[.?!]*)/g,e=>e.charAt(0).toUpperCase()+e.substr(1).toLowerCase()),kt=n=>typeof n=="string"?w(n,e=>`_${e}`):"",Ht=n=>typeof n=="string"?n.trim():"",xt=n=>typeof n=="string"?n.replace(/^\s+/,""):"",Ot=n=>typeof n=="string"?n.replace(/\s+$/,""):"",At=(n,e,r)=>{if(typeof n=="string"&&typeof e=="number"&&Number.isFinite(e)){typeof r!="string"&&(r="...");let t=Math.trunc(e),o=n.split(" ");return t<o.length&&(o=o.slice(0,t)),o.join(" ").trim()+r}return""},Nt=At,En=n=>typeof n=="object"&&n!==null&&"fn"in n&&typeof n.fn=="function"?String(n.fn()).toUpperCase():typeof n!="string"?"":n.toUpperCase(),$t=(...n)=>En(...n),Tn=[{name:"append",category:"string",compatibility:["browser","nodejs"],fn:Xr},{name:"camelcase",category:"string",compatibility:["browser","nodejs"],fn:nt},{name:"capitalize",category:"string",compatibility:["browser","nodejs"],fn:$n},{name:"capitalizeAll",category:"string",compatibility:["browser","nodejs"],fn:et},{name:"center",category:"string",compatibility:["browser","nodejs"],fn:rt},{name:"chop",category:"string",compatibility:["browser","nodejs"],fn:tt},{name:"dashcase",category:"string",compatibility:["browser","nodejs"],fn:ot},{name:"dotcase",category:"string",compatibility:["browser","nodejs"],fn:st},{name:"ellipsis",category:"string",compatibility:["browser","nodejs"],fn:it},{name:"hyphenate",category:"string",compatibility:["browser","nodejs"],fn:at},{name:"isString",category:"string",compatibility:["browser","nodejs"],fn:ct},{name:"lowercase",category:"string",compatibility:["browser","nodejs"],fn:Sn},{name:"downcase",category:"string",compatibility:["browser","nodejs"],fn:pt},{name:"occurrences",category:"string",compatibility:["browser","nodejs"],fn:mt},{name:"pascalcase",category:"string",compatibility:["browser","nodejs"],fn:lt},{name:"pathcase",category:"string",compatibility:["browser","nodejs"],fn:yt},{name:"plusify",category:"string",compatibility:["browser","nodejs"],fn:gt},{name:"prepend",category:"string",compatibility:["browser","nodejs"],fn:ft},{name:"remove",category:"string",compatibility:["browser","nodejs"],fn:ut},{name:"removeFirst",category:"string",compatibility:["browser","nodejs"],fn:bt},{name:"replace",category:"string",compatibility:["browser","nodejs"],fn:dt},{name:"replaceFirst",category:"string",compatibility:["browser","nodejs"],fn:ht},{name:"reverse",category:"string",compatibility:["browser","nodejs"],fn:wt},{name:"sentence",category:"string",compatibility:["browser","nodejs"],fn:jt},{name:"snakecase",category:"string",compatibility:["browser","nodejs"],fn:kt},{name:"trim",category:"string",compatibility:["browser","nodejs"],fn:Ht},{name:"trimLeft",category:"string",compatibility:["browser","nodejs"],fn:xt},{name:"trimRight",category:"string",compatibility:["browser","nodejs"],fn:Ot},{name:"truncate",category:"string",compatibility:["browser","nodejs"],fn:Rn},{name:"truncateWords",category:"string",compatibility:["browser","nodejs"],fn:Nt},{name:"uppercase",category:"string",compatibility:["browser","nodejs"],fn:En},{name:"upcase",category:"string",compatibility:["browser","nodejs"],fn:$t}];var Fn=require("querystring"),b=require("url"),k=["browser","nodejs"],Bn=n=>{if(typeof n=="string")return encodeURIComponent(n)},Rt=n=>{if(typeof n=="string")return(0,Fn.escape)(n)},_n=n=>{if(typeof n=="string")return decodeURIComponent(n)};function St(...n){return Bn.apply(this,n)}function Et(...n){return _n.apply(this,n)}var Tt=(n,e)=>(0,b.resolve)(String(n),String(e)),Ft=n=>(0,b.parse)(String(n)),Bt=n=>{if(typeof n=="string")return n.split("?")[0]},_t=n=>{if(typeof n=="string"){let e=(0,b.parse)(n);return e.protocol="",(0,b.format)(e)}},Cn=[{name:"encodeURI",category:"url",compatibility:k,fn:Bn},{name:"escape",category:"url",compatibility:["nodejs"],fn:Rt},{name:"decodeURI",category:"url",compatibility:k,fn:_n},{name:"url_encode",category:"url",compatibility:k,fn:St},{name:"url_decode",category:"url",compatibility:k,fn:Et},{name:"urlResolve",category:"url",compatibility:["nodejs"],fn:Tt},{name:"urlParse",category:"url",compatibility:["nodejs"],fn:Ft},{name:"stripQuerystring",category:"url",compatibility:k,fn:Bt},{name:"stripProtocol",category:"url",compatibility:["nodejs"],fn:_t}];var d=class{_helpers=[];constructor(){this.init()}get helpers(){return this._helpers}init(){this.registerHelpers(_),this.registerHelpers(P),this.registerHelpers(D),this.registerHelpers(Q),this.registerHelpers(L),this.registerHelpers(gn),this.registerHelpers(K),this.registerHelpers(I),this.registerHelpers(V),this.registerHelpers(X),this.registerHelpers(en),this.registerHelpers(tn),this.registerHelpers(an),this.registerHelpers(dn),this.registerHelpers(hn),this.registerHelpers(xn),this.registerHelpers(An),this.registerHelpers(Tn),this.registerHelpers(Cn),this.registerHelpers(Hn)}register(e){return this.has(e.name)||this._helpers.push(e),!1}registerHelpers(e){for(let r of e)this.register(r)}has(e){return this._helpers.some(r=>r.name===e)}filter(e){let r=this._helpers;return e.names&&(r=r.filter(t=>e.names?.includes(t.name))),e.categories&&(r=r.filter(t=>e.categories?.includes(t.category))),e.compatibility&&(r=r.filter(t=>t.compatibility?.some(o=>e.compatibility?.includes(o)))),r}load(e,r){let t=this._helpers;r&&(t=this.filter(r));for(let o of t)e.registerHelper(o.name,o.fn)}swap(e){for(let r of this._helpers)e.unregisterHelper(r.name),e.registerHelper(r.name,r.fn)}};var Ct=y.default,Mt=y.default.create();function zt(n){new d().load(n.handlebars??n.hbs)}async function Lt(){let n=new d,e=y.default.create();return Object.keys(y.default.partials).length>0&&e.registerPartial(y.default.partials),n.load(e),process.env.NODE_ENV==="development"&&console.warn("createHandlebars will be deprecated in future versions, use `fumanchu` instead."),e}function Pt(n){let e=new d,r=y.default.create();return n?.handlebars?r=n.handlebars:Object.keys(y.default.partials).length>0&&r.registerPartial(y.default.partials),e.load(r),r}0&&(module.exports={Handlebars,HelperRegistry,createHandlebars,fumanchu,handlebars,helpers});
|
package/dist/index.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import
|
|
2
|
-
`},
|
|
3
|
-
`)},
|
|
4
|
-
`)},
|
|
5
|
-
`)}</ul>`},
|
|
6
|
-
`)}</ol>`},
|
|
7
|
-
`,r+=`<img ${
|
|
8
|
-
`,t?e+=`<a ${
|
|
1
|
+
import y from"handlebars";var fn=(n,e)=>Array.isArray(n)?n.slice(e):[],un=(n,e)=>Array.isArray(n)?n.slice(0,-e):[],g=n=>n==null?[]:Array.isArray(n)?n:[n],bn=(n,e)=>{if(Array.isArray(n))return typeof e!="number"?n[0]:n.slice(0,e)},dn=(n,e)=>{if(!Array.isArray(n)&&typeof n!="string")return;if(typeof e!="number"){let t=n;return t[t.length-1]}let r=Math.abs(e);return n.slice(-r)},hn=n=>n&&typeof n=="object"&&!Array.isArray(n)?Object.keys(n).length:typeof n=="string"||Array.isArray(n)?n.length:0,wn=(n,e=", ")=>typeof n=="string"?n:Array.isArray(n)?n.join(e):"",jn=function(n,e){if(!Array.isArray(n)||!e||typeof e.fn!="function")return e?.inverse?e.inverse(this)??"":"";if(n.length===0)return e.inverse?e.inverse(this)??"":"";let r=n.length,t=e.hash??{},o=e.data?{...e.data}:void 0,s="";for(let i=0;i<r;i++){let c=n[i],l={index:i,total:r,isFirst:i===0,isLast:i===r-1},gn={...o?{...o}:{},...t,...l},H;c!=null&&typeof c=="object"?H={...c,...t,...l}:H={value:c,...t,...l},s+=e.fn(H,{data:gn})}return s},N=[{name:"after",category:"array",compatibility:["browser","nodejs"],fn},{name:"before",category:"array",compatibility:["browser","nodejs"],fn:un},{name:"arrayify",category:"array",compatibility:["browser","nodejs"],fn:g},{name:"first",category:"array",compatibility:["browser","nodejs"],fn:bn},{name:"last",category:"array",compatibility:["browser","nodejs"],fn:dn},{name:"length",category:"array",compatibility:["browser","nodejs"],fn:hn},{name:"join",category:"array",compatibility:["browser","nodejs"],fn:wn},{name:"forEach",category:"array",compatibility:["browser","nodejs"],fn:jn}];import kn from"fs";import Hn from"path";import $ from"html-tag";import xn from"to-gfm-code-block";var On=(n,e)=>{let r=typeof e=="string"?e:Hn.extname(n).slice(1),t=kn.readFileSync(n,"utf8");return(r==="markdown"||r==="md")&&(r="markdown",t=t.split("`").join("`")),`${xn(t,r).trim()}
|
|
2
|
+
`},An=n=>$("script",{src:`https://gist.github.com/${n}.js`}),Nn=n=>{if(!n||!n.id)throw new Error("jsfiddle helper expects an `id`");let{id:e,width:r="100%",height:t="300",skin:o="/presentation/",tabs:s="result,js,html,css",allowfullscreen:i="allowfullscreen",frameborder:c="0"}=n,l=`http://jsfiddle.net/${e}/embedded/${s}${o}`;return $("iframe",{width:r,height:t,src:l,allowfullscreen:i,frameborder:c})},R=[{name:"embed",category:"code",compatibility:["nodejs"],fn:On},{name:"gist",category:"code",compatibility:["browser","nodejs"],fn:An},{name:"jsfiddle",category:"code",compatibility:["browser","nodejs"],fn:Nn}];var $n=n=>n==null?!0:Array.isArray(n)?n.length===0:typeof n=="object"?Object.keys(n).length===0:!1,Rn=(n,e,r)=>{if(Array.isArray(n)){let t="";for(let o=0;o<n.length;o++)t+=e(n[o],o);return t}if(n&&typeof n=="object"){let t="";for(let o of Object.keys(n))t+=e(n[o],o);return t}return r?r():""},S=[{name:"isEmpty",category:"collection",compatibility:["browser","nodejs"],fn:$n},{name:"iterate",category:"collection",compatibility:["browser","nodejs"],fn:Rn}];var Sn=(...n)=>n.every(Boolean),En=(n,e,r)=>{switch(e){case"==":return n==r;case"===":return n===r;case"!=":return n!=r;case"!==":return n!==r;case"<":return n<r;case">":return n>r;case"<=":return n<=r;case">=":return n>=r;case"typeof":return typeof n===r;default:throw new Error(`helper {{compare}}: invalid operator: '${e}'`)}},Tn=(n,e,r=0)=>n==null?!1:typeof n=="string"||Array.isArray(n)?n.indexOf(e,r)>-1:typeof n=="object"?e in n:!1,Fn=(...n)=>{for(let e of n)if(e!=null)return e;return""},Bn=(n,e)=>n===e,_n=(n,e)=>n>e,Cn=(n,e)=>n>=e,Mn=(n,e)=>n==null||e==null?!1:Array.isArray(n)||typeof n=="string"?n.indexOf(e)>-1:typeof n=="object"?e in n:!1,E=(n,e)=>{if(!n)return!0;let r=Array.isArray(e)?e:e!=null?[e]:["0","false","nada","nil","nay","nah","negative","no","none","nope","nul","null","nix","nyet","uh-uh","veto","zero"],t=typeof n=="string"?n.toLowerCase():null;for(let o of r)if(o===n||t!=null&&o===t)return!0;return!1},zn=n=>E(n),Ln=n=>!E(n),Pn=n=>typeof n=="number"&&n%2===0,Un=(n,e)=>typeof n=="number"&&typeof e=="number"&&e%n===0,In=n=>typeof n=="number"&&Math.abs(n%2)===1,Jn=(n,e)=>n==e,qn=(n,e)=>n!=e,vn=(n,e)=>n<e,Dn=(n,e)=>n<=e,Wn=(n,e)=>!n&&!e,Gn=n=>!n,Yn=(...n)=>n.some(Boolean),Qn=(n,e)=>n!==e,Zn=(n,e)=>n<=e,Kn=(n,e)=>n>=e,Vn=(n,e)=>n<e,Xn=(n,e)=>n>e,T=[{name:"and",category:"comparison",compatibility:["browser","nodejs"],fn:Sn},{name:"compare",category:"comparison",compatibility:["browser","nodejs"],fn:En},{name:"contains",category:"comparison",compatibility:["browser","nodejs"],fn:Tn},{name:"default",category:"comparison",compatibility:["browser","nodejs"],fn:Fn},{name:"eq",category:"comparison",compatibility:["browser","nodejs"],fn:Bn},{name:"gt",category:"comparison",compatibility:["browser","nodejs"],fn:_n},{name:"gte",category:"comparison",compatibility:["browser","nodejs"],fn:Cn},{name:"has",category:"comparison",compatibility:["browser","nodejs"],fn:Mn},{name:"isFalsey",category:"comparison",compatibility:["browser","nodejs"],fn:zn},{name:"isTruthy",category:"comparison",compatibility:["browser","nodejs"],fn:Ln},{name:"ifEven",category:"comparison",compatibility:["browser","nodejs"],fn:Pn},{name:"ifNth",category:"comparison",compatibility:["browser","nodejs"],fn:Un},{name:"ifOdd",category:"comparison",compatibility:["browser","nodejs"],fn:In},{name:"is",category:"comparison",compatibility:["browser","nodejs"],fn:Jn},{name:"isnt",category:"comparison",compatibility:["browser","nodejs"],fn:qn},{name:"lt",category:"comparison",compatibility:["browser","nodejs"],fn:vn},{name:"lte",category:"comparison",compatibility:["browser","nodejs"],fn:Dn},{name:"neither",category:"comparison",compatibility:["browser","nodejs"],fn:Wn},{name:"not",category:"comparison",compatibility:["browser","nodejs"],fn:Gn},{name:"or",category:"comparison",compatibility:["browser","nodejs"],fn:Yn},{name:"unlessEq",category:"comparison",compatibility:["browser","nodejs"],fn:Qn},{name:"unlessGt",category:"comparison",compatibility:["browser","nodejs"],fn:Zn},{name:"unlessLt",category:"comparison",compatibility:["browser","nodejs"],fn:Kn},{name:"unlessGteq",category:"comparison",compatibility:["browser","nodejs"],fn:Vn},{name:"unlessLteq",category:"comparison",compatibility:["browser","nodejs"],fn:Xn}];import{parseDate as ne}from"chrono-node";import ee from"dayjs";var re=()=>new Date().getFullYear().toString(),F=(n,e)=>{let r=ne(n);if(!r)throw new Error(`Unable to parse date: ${n}`);return ee(r).format(e)},B=[{name:"year",category:"date",compatibility:["browser","nodejs"],fn:re},{name:"date",category:"date",compatibility:["browser","nodejs"],fn:F},{name:"moment",category:"date",compatibility:["browser","nodejs"],fn:F}];import x from"fs";import te from"path";import oe from"is-glob";import se from"micromatch";var ie=(n,e)=>{if(n==null)return"0 B";let r=typeof n=="number"?n:n.length??0;if(!r)return"0 B";let t=typeof e=="number"?e:2,o=["B","kB","MB","GB","TB","PB","EB","ZB","YB"],s=10**t,i=o.length-1;do{let c=10**(i*3);if(c<=r+1)return`${Math.round(r*s/c)/s} ${o[i]}`}while(--i>=0);return`${r} B`},ae=n=>x.readFileSync(n,"utf8"),ce=n=>!!(n&&typeof n=="object"&&"hash"in n),pe=(n,e)=>{let r=x.readdirSync(n).map(o=>te.join(n,o)),t=ce(e)?void 0:e;if(typeof t=="function")return t(r);if(t instanceof RegExp)return r.filter(o=>t.test(o));if(typeof t=="string"){if(oe(t))return se(r,t);if(t==="isFile"||t==="isDirectory")return r.filter(o=>{let s=x.statSync(o);return t==="isFile"?s.isFile():s.isDirectory()})}return r},_=[{name:"fileSize",category:"fs",compatibility:["nodejs"],fn:ie},{name:"read",category:"fs",compatibility:["nodejs"],fn:ae},{name:"readdir",category:"fs",compatibility:["nodejs"],fn:pe}];import O from"path";import C from"html-tag";import me from"striptags";var f=(n={})=>Object.keys(n).map(e=>`${e}="${String(n[e]).replace(/^['"]|["']$/g,"")}"`).join(" "),le=n=>{let e=f(n?.hash??{});return e.trim()?` ${e}`:""},ye=function(n,e){arguments.length<2&&(e=n,n=[]);let r=g(n??[]),t="";return this&&this.options&&(t=this.options.assets||""),e?.hash?.href&&(r=g(e.hash.href)),r.map(o=>{let s=O.extname(o),i=o;return/(^\/\/)|(:\/\/)/.test(o)||(i=O.posix.join(t,o)),s===".less"?`<link type="text/css" rel="stylesheet/less" href="${i}">`:`<link type="text/css" rel="stylesheet" href="${i}">`}).join(`
|
|
3
|
+
`)},ge=n=>{if(n&&typeof n=="object"&&!Array.isArray(n)){let r=f(n.hash??{});return`<script${r?` ${r}`:""}></script>`}return typeof n=="string"?`<script src="${n}"></script>`:g(n).map(r=>O.extname(r)===".coffee"?C("script",{type:"text/coffeescript",src:r}):C("script",{src:r})).join(`
|
|
4
|
+
`)},fe=n=>typeof n!="string"?"":me(n).trim(),ue=(n,e)=>{let r=f(e.hash??{}),t=n.map(s=>typeof s=="string"?s:e.fn(s));return`${r?`<ul ${r}>`:"<ul>"}${t.map(s=>`<li>${s}</li>`).join(`
|
|
5
|
+
`)}</ul>`},be=(n,e)=>{let r=f(e.hash??{}),t=n.map(s=>typeof s=="string"?s:e.fn(s));return`${r?`<ol ${r}>`:"<ol>"}${t.map(s=>`<li>${s}</li>`).join(`
|
|
6
|
+
`)}</ol>`},de=n=>{let e="",r="",t=n.full||!1,o={alt:n.alt,src:n.thumbnail,width:n.size.width,height:n.size.height},s={id:`image-${n.id}`},i={href:t,rel:"thumbnail"};return n.classes&&(n.classes.image&&(o.class=n.classes.image.join(" ")),n.classes.figure&&(s.class=n.classes.figure.join(" ")),n.classes.link&&(i.class=n.classes.link.join(" "))),e+=`<figure ${f(s)}>
|
|
7
|
+
`,r+=`<img ${f(o)}>
|
|
8
|
+
`,t?e+=`<a ${f(i)}>
|
|
9
9
|
${r}</a>
|
|
10
10
|
`:e+=r,n.caption&&(e+=`<figcaption>${n.caption}</figcaption>
|
|
11
|
-
`),e+="</figure>",e},F=[{name:"attr",category:"html",compatibility:["browser","nodejs"],fn:ae},{name:"css",category:"html",compatibility:["nodejs"],fn:ce},{name:"js",category:"html",compatibility:["nodejs"],fn:pe},{name:"sanitize",category:"html",compatibility:["browser","nodejs"],fn:me},{name:"ul",category:"html",compatibility:["browser","nodejs"],fn:le},{name:"ol",category:"html",compatibility:["browser","nodejs"],fn:ye},{name:"thumbnailImage",category:"html",compatibility:["browser","nodejs"],fn:ge}];import fe from"get-value";var ue=function(n,e,r){if(e&&typeof e=="object"&&"hash"in e&&r===void 0&&(r=e,e={}),typeof n!="string")throw new Error('{{i18n}} helper expected "key" to be a string');let t={...this,...e,...r?.hash??{}},o=t.language||t.lang;if(typeof o!="string")throw new TypeError('{{i18n}} helper expected "language" to be a string');let s=t[o];if(typeof s>"u")throw new Error(`{{i18n}} helper cannot find language "${o}"`);let i=fe(s,n);if(typeof i>"u")throw new Error('{{i18n}} helper cannot find property "'+String(n)+'" for language "'+o+'"');return String(i)},_=[{name:"i18n",category:"i18n",compatibility:["browser","nodejs"],fn:ue}];var be=(n,e,r,t)=>{let o=n>1||n===0?r:e;return t?`${n} ${o}`:o},de=n=>{let e=Math.abs(Math.round(Number(n))),r=String(n),t=e%100;if([11,12,13].includes(t))return`${r}th`;switch(e%10){case 1:return`${r}st`;case 2:return`${r}nd`;case 3:return`${r}rd`;default:return`${r}th`}},C=[{name:"inflect",category:"inflection",compatibility:["browser","nodejs"],fn:be},{name:"ordinalize",category:"inflection",compatibility:["browser","nodejs"],fn:de}];import he from"logging-helpers";var{log:we,ok:je,success:ke,info:He,warning:xe,warn:Ne,error:$e,danger:Oe,bold:Ae,_debug:Re,_inspect:Se}=he,M=[{name:"log",category:"logging",compatibility:["nodejs"],fn:we},{name:"ok",category:"logging",compatibility:["nodejs"],fn:je},{name:"success",category:"logging",compatibility:["nodejs"],fn:ke},{name:"info",category:"logging",compatibility:["nodejs"],fn:He},{name:"warning",category:"logging",compatibility:["nodejs"],fn:xe},{name:"warn",category:"logging",compatibility:["nodejs"],fn:Ne},{name:"error",category:"logging",compatibility:["nodejs"],fn:$e},{name:"danger",category:"logging",compatibility:["nodejs"],fn:Oe},{name:"bold",category:"logging",compatibility:["nodejs"],fn:Ae},{name:"_debug",category:"logging",compatibility:["nodejs"],fn:Re},{name:"_inspect",category:"logging",compatibility:["nodejs"],fn:Se}];import z from"micromatch";var L=(n,e,r)=>{let t=typeof e=="string"?e.split(/, */):e;return z(n,t,r)},Be=(n,e,r)=>z.isMatch(n,e,r),Te=(...n)=>(console.log("the {{mm}} helper is depcrecated and will be removed"),console.log("in handlebars-helpers v1.0.0, please use the {{match}}"),console.log("helper instead."),L(...n)),U=[{name:"match",category:"match",compatibility:["browser","nodejs"],fn:L},{name:"isMatch",category:"match",compatibility:["browser","nodejs"],fn:Be},{name:"mm",category:"match",compatibility:["browser","nodejs"],fn:Te}];var h=n=>typeof n=="number"&&!Number.isNaN(n)||typeof n=="string"&&n.trim()!==""&&!Number.isNaN(Number(n)),a=(n,e="expected a number")=>{if(h(n))return Number(n);throw new TypeError(e)},Ee=n=>{let e=a(n);return Math.abs(e)},Fe=(n,e)=>h(n)&&h(e)?Number(n)+Number(e):"",_e=(...n)=>{let e=n.flat().map(r=>Number(r));return I(e)/e.length},Ce=n=>{let e=a(n);return Math.ceil(e)},Me=(n,e)=>{let r=a(n,"expected the first argument to be a number"),t=a(e,"expected the second argument to be a number");return r/t},ze=n=>{let e=a(n);return Math.floor(e)},Le=(n,e)=>{let r=a(n,"expected the first argument to be a number"),t=a(e,"expected the second argument to be a number");return r-t},Ue=(n,e)=>{let r=a(n,"expected the first argument to be a number"),t=a(e,"expected the second argument to be a number");return r%t},P=(n,e)=>{let r=a(n,"expected the first argument to be a number"),t=a(e,"expected the second argument to be a number");return r*t},Pe=(n,e)=>{let r=a(n,"expected the first argument to be a number"),t=a(e,"expected the second argument to be a number");return r+t},Ie=(n,e)=>{let r=a(n,"expected minimum to be a number"),t=a(e,"expected maximum to be a number");return r+Math.floor(Math.random()*(t-r+1))},Je=(n,e)=>n%e,qe=n=>{let e=a(n);return Math.round(e)},We=(n,e)=>{let r=a(n,"expected the first argument to be a number"),t=a(e,"expected the second argument to be a number");return r-t},I=(...n)=>{let e=n.flat(),r=0;for(let t of e)h(t)&&(r+=Number(t));return r},De=(n,e)=>P(n,e),J=[{name:"abs",category:"math",compatibility:["browser","nodejs"],fn:Ee},{name:"add",category:"math",compatibility:["browser","nodejs"],fn:Fe},{name:"avg",category:"math",compatibility:["browser","nodejs"],fn:_e},{name:"ceil",category:"math",compatibility:["browser","nodejs"],fn:Ce},{name:"divide",category:"math",compatibility:["browser","nodejs"],fn:Me},{name:"floor",category:"math",compatibility:["browser","nodejs"],fn:ze},{name:"minus",category:"math",compatibility:["browser","nodejs"],fn:Le},{name:"modulo",category:"math",compatibility:["browser","nodejs"],fn:Ue},{name:"multiply",category:"math",compatibility:["browser","nodejs"],fn:P},{name:"plus",category:"math",compatibility:["browser","nodejs"],fn:Pe},{name:"random",category:"math",compatibility:["browser","nodejs"],fn:Ie},{name:"remainder",category:"math",compatibility:["browser","nodejs"],fn:Je},{name:"round",category:"math",compatibility:["browser","nodejs"],fn:qe},{name:"subtract",category:"math",compatibility:["browser","nodejs"],fn:We},{name:"sum",category:"math",compatibility:["browser","nodejs"],fn:I},{name:"times",category:"math",compatibility:["browser","nodejs"],fn:De}];import q from"fs";import Ge from"path";import ve from"process";import Ye from"ent";import Qe from"handlebars";import{Remarkable as Ze}from"remarkable";var Ve=(n,e={})=>{let r={cwd:ve.cwd(),...e},t=new Ze({breaks:!0,html:!0,langPrefix:"lang-",typographer:!1,xhtmlOut:!1}),o=Ge.resolve(r.cwd,n),s=n;return q.existsSync(o)&&(s=q.readFileSync(o,"utf8")),new Qe.SafeString(Ye.decode(t.render(s)))},W=[{name:"md",category:"markdown",compatibility:["nodejs"],fn:Ve}];import Ke from"get-value";import Xe from"handlebars-helper-create-frame";import nr from"handlebars-utils";import er from"kind-of";var rr=Xe;function tr(n,e,r){return Ke(nr.options(this,e,r),n)}function or(n){return n.fn(this)}var sr=er;function ir(n){return n.hash&&Object.keys(n.hash).length?n.fn(n.hash):n.inverse(this)}var D=[{name:"frame",category:"misc",compatibility:["browser","nodejs"],fn:rr},{name:"option",category:"misc",compatibility:["browser","nodejs"],fn:tr},{name:"noop",category:"misc",compatibility:["browser","nodejs"],fn:or},{name:"typeOf",category:"misc",compatibility:["browser","nodejs"],fn:sr},{name:"withHash",category:"misc",compatibility:["browser","nodejs"],fn:ir}];var u=n=>typeof n=="number"&&!Number.isNaN(n),ar=(n,e)=>{if(n==null)return"0 B";let r;if(typeof n=="string"){if(r=n.length,!r)return"0 B"}else if(u(n))r=Number(n);else if(typeof n.length=="number"){if(r=n.length,!r)return"0 B"}else return"0 B";let t=typeof e=="number"&&!Number.isNaN(e)?e:2,o=["B","kB","MB","GB","TB","PB","EB","ZB","YB"],s=10**t;for(let i=o.length-1;i>=0;i--){let c=10**(i*3);if(c<=r+1)return`${Math.round(r*s/c)/s} ${o[i]}`}return`${r}`},cr=n=>n.toString().replace(/(\d)(?=(\d\d\d)+(?!\d))/g,"$1,"),pr=n=>{let e=n.toString();return`(${e.substr(0,3)}) ${e.substr(3,3)}-${e.substr(6,4)}`},mr=(n,e)=>{let r=u(n)?Number(n):0,o=10**(typeof e=="number"&&!Number.isNaN(e)?e:2),s=["k","m","b","t","q"];for(let i=s.length-1;i>=0;i--){let c=10**((i+1)*3);if(c<=r+1)return`${Math.round(r*o/c)/o}${s[i]}`}return`${r}`},lr=(n,e)=>{let r=u(n)?Number(n):0,t=typeof e=="number"&&!Number.isNaN(e)?e:0;return Number(r).toExponential(t)},yr=(n,e)=>{let r=u(n)?Number(n):0,t=typeof e=="number"&&!Number.isNaN(e)?e:0;return Number(r).toFixed(t)},gr=n=>parseFloat(String(n)),fr=n=>parseInt(String(n),10),ur=(n,e)=>{let r=u(n)?Number(n):0,t=typeof e=="number"&&!Number.isNaN(e)?e:1;return Number(r).toPrecision(t)},G=[{name:"bytes",category:"number",compatibility:["browser","nodejs"],fn:ar},{name:"addCommas",category:"number",compatibility:["browser","nodejs"],fn:cr},{name:"phoneNumber",category:"number",compatibility:["browser","nodejs"],fn:pr},{name:"toAbbr",category:"number",compatibility:["browser","nodejs"],fn:mr},{name:"toExponential",category:"number",compatibility:["browser","nodejs"],fn:lr},{name:"toFixed",category:"number",compatibility:["browser","nodejs"],fn:yr},{name:"toFloat",category:"number",compatibility:["browser","nodejs"],fn:gr},{name:"toInt",category:"number",compatibility:["browser","nodejs"],fn:fr},{name:"toPrecision",category:"number",compatibility:["browser","nodejs"],fn:ur}];import v from"get-object";import br from"get-value";var w=n=>!!(n&&typeof n=="object"&&"hash"in n),Y=(n,e)=>({...n?.data||{},...e}),dr=(...n)=>{let e=[...n];if(e.length&&w(e[e.length-1])){let t=e.pop();e.push(t.hash)}let r={};for(let t of e)t&&typeof t=="object"&&!Array.isArray(t)&&Object.assign(r,t);return r},hr=(n,e)=>{if(!w(e))return e?.inverse?.(n)??"";let r=Y(e,e.hash||{}),t="";for(let o in n)r.key=o,t+=e.fn(n[o],{data:r});return t},wr=(n,e)=>{if(!w(e))return e?.inverse?.(n)??"";let r=Y(e,e.hash||{}),t="";for(let o in n)Object.hasOwn(n,o)&&(r.key=o,t+=e.fn(n[o],{data:r}));return t},jr=(...n)=>{let e=[];for(let r of n)(typeof r=="string"||typeof r=="number")&&e.push(r);return e.join(".")},kr=(n,e,r)=>{let t=br(e,n);return r&&typeof r.fn=="function"?t?r.fn(t):r.inverse?.(e):t},Hr=(n,e)=>v(e,n),xr=(n,e)=>Object.hasOwn(n,e),Nr=n=>!!n&&typeof n=="object"&&!Array.isArray(n),Q=n=>JSON.parse(n),Z=(n,e)=>JSON.stringify(n,null,typeof e=="number"?e:0),$r=(n,...e)=>{let r=[n,...e];if(r.length&&w(r[r.length-1])){let t=r.pop();r.push(t.hash)}return Object.assign(...r)},Or=Q,Ar=Z,Rr=(n,e,r)=>{let t=l(n),o={};for(let s of t)o=Object.assign({},o,v(e,s));return r&&typeof r.fn=="function"?Object.keys(o).length?r.fn(o):r.inverse?.(e):o},V=[{name:"extend",category:"object",compatibility:["browser","nodejs"],fn:dr},{name:"forIn",category:"object",compatibility:["browser","nodejs"],fn:hr},{name:"forOwn",category:"object",compatibility:["browser","nodejs"],fn:wr},{name:"toPath",category:"object",compatibility:["browser","nodejs"],fn:jr},{name:"get",category:"object",compatibility:["browser","nodejs"],fn:kr},{name:"getObject",category:"object",compatibility:["browser","nodejs"],fn:Hr},{name:"hasOwn",category:"object",compatibility:["browser","nodejs"],fn:xr},{name:"isObject",category:"object",compatibility:["browser","nodejs"],fn:Nr},{name:"JSONparse",category:"object",compatibility:["browser","nodejs"],fn:Q},{name:"JSONstringify",category:"object",compatibility:["browser","nodejs"],fn:Z},{name:"merge",category:"object",compatibility:["browser","nodejs"],fn:$r},{name:"parseJSON",category:"object",compatibility:["browser","nodejs"],fn:Or},{name:"pick",category:"object",compatibility:["browser","nodejs"],fn:Rr},{name:"stringify",category:"object",compatibility:["browser","nodejs"],fn:Ar}];import m from"path";var Sr=(n,e,r)=>{let t=Object.prototype.toString.call(r).slice(8,-1).toLowerCase();return`Expected ${n} to be of type ${e}, but got ${t}`},p=(n,e)=>{if(typeof e!="string")throw new TypeError(Sr(n,"string",e));return e},Br=function(n,e){let r=p("filepath",n),t=e?.data?.root?.cwd??this?.cwd??process.cwd();return m.resolve(t,r)},Tr=n=>{let e=p("filepath",n);return m.dirname(e)},Er=(n,e)=>{let r=p("first path",n),t=p("second path",e);return m.relative(m.dirname(r),t)},Fr=n=>{let e=p("filepath",n);return m.basename(e)},_r=n=>{let e=p("filepath",n);return m.basename(e,m.extname(e))},Cr=n=>{let e=p("filepath",n);return m.extname(e)},Mr=function(n,...e){let r,t=e[e.length-1];typeof t=="object"&&t&&"data"in t&&(r=e.pop());let s=[r?.data?.root?.cwd??this?.cwd??process.cwd(),p("filepath",n),...e.map((i,c)=>p(`path${c}`,i))];return m.resolve(...s)},zr=(n,e,r)=>{let t=p("filepath",n),o=Number(e),s=Number(r);return t.split(/[\\/]+/).slice(o,s).join("/")},K=[{name:"absolute",category:"path",compatibility:["nodejs"],fn:Br},{name:"dirname",category:"path",compatibility:["nodejs"],fn:Tr},{name:"relative",category:"path",compatibility:["nodejs"],fn:Er},{name:"basename",category:"path",compatibility:["nodejs"],fn:Fr},{name:"stem",category:"path",compatibility:["nodejs"],fn:_r},{name:"extname",category:"path",compatibility:["nodejs"],fn:Cr},{name:"resolve",category:"path",compatibility:["nodejs"],fn:Mr},{name:"segments",category:"path",compatibility:["nodejs"],fn:zr}];import Lr from"handlebars-utils";var Ur=(n,e,r)=>{let t=Lr.options({},e,r);return new RegExp(n,t.flags)},Pr=(n,e)=>{if(typeof n!="string")return!1;if(!(e instanceof RegExp))throw new TypeError("expected a regular expression");return e.test(n)},X=[{name:"toRegex",category:"regex",compatibility:["browser","nodejs"],fn:Ur},{name:"test",category:"regex",compatibility:["browser","nodejs"],fn:Pr}];var nn=n=>n.trim().replace(/^[-_.\W\s]+|[-_.\W\s]+$/g,""),g=(n,e)=>n.length===1?n.toLowerCase():nn(n).toLowerCase().replace(/[-_.\W\s]+(\w|$)/g,(t,o)=>e(o)),Ir=(n,e)=>typeof n=="string"&&typeof e=="string"?n+e:n,Jr=n=>typeof n=="string"?g(n,e=>e.toUpperCase()):"",en=n=>typeof n!="string"||n.length===0?"":n.charAt(0).toUpperCase()+n.slice(1),qr=n=>typeof n!="string"?"":n.replace(/\w\S*/g,e=>en(e)),Wr=(n,e)=>{if(typeof n!="string")return"";let r="";for(let t=0;t<e;t++)r+=" ";return r+n+r},Dr=n=>typeof n=="string"?nn(n):"",Gr=n=>typeof n=="string"?g(n,e=>`-${e}`):"",vr=n=>typeof n=="string"?g(n,e=>`.${e}`):"",rn=(n,e,r)=>typeof n=="string"?(typeof r!="string"&&(r=""),n.length>e?n.slice(0,e-r.length)+r:n):"",Yr=(n,e)=>typeof n=="string"?n.length<=e?n:`${rn(n,e)}\u2026`:"",Qr=n=>typeof n=="string"?n.split(" ").join("-"):"",Zr=n=>typeof n=="string",tn=n=>typeof n=="object"&&n!==null&&"fn"in n&&typeof n.fn=="function"?String(n.fn()).toLowerCase():typeof n!="string"?"":n.toLowerCase(),Vr=(...n)=>tn(...n),Kr=(n,e)=>{if(typeof n!="string")return"";let r=e.length,t=n.indexOf(e,0),o=0;for(;t>-1;)o++,t=n.indexOf(e,t+r);return o},Xr=n=>{if(typeof n!="string")return"";let e=g(n,r=>r.toUpperCase());return e.charAt(0).toUpperCase()+e.slice(1)},nt=n=>typeof n=="string"?g(n,e=>`/${e}`):"",et=(n,e)=>typeof n!="string"?"":(typeof e!="string"&&(e=" "),n.split(e).join("+")),rt=(n,e)=>typeof n=="string"&&typeof e=="string"?e+n:n,tt=(n,e)=>typeof n!="string"?"":typeof e!="string"?n:n.split(e).join(""),ot=(n,e)=>typeof n!="string"?"":typeof e!="string"?n:n.replace(e,""),st=(n,e,r)=>typeof n!="string"?"":typeof e!="string"?n:(typeof r!="string"&&(r=""),n.split(e).join(r)),it=(n,e,r)=>typeof n!="string"?"":typeof e!="string"?n:(typeof r!="string"&&(r=""),n.replace(e,r)),at=n=>typeof n=="string"?n.split("").reverse().join(""):"",ct=n=>typeof n!="string"?"":n.replace(/((?:\S[^.?!]*)[.?!]*)/g,e=>e.charAt(0).toUpperCase()+e.substr(1).toLowerCase()),pt=n=>typeof n=="string"?g(n,e=>`_${e}`):"",mt=n=>typeof n=="string"?n.trim():"",lt=n=>typeof n=="string"?n.replace(/^\s+/,""):"",yt=n=>typeof n=="string"?n.replace(/\s+$/,""):"",gt=(n,e,r)=>{if(typeof n=="string"&&typeof e=="number"&&Number.isFinite(e)){typeof r!="string"&&(r="...");let t=Math.trunc(e),o=n.split(" ");return t<o.length&&(o=o.slice(0,t)),o.join(" ").trim()+r}return""},ft=gt,on=n=>typeof n=="object"&&n!==null&&"fn"in n&&typeof n.fn=="function"?String(n.fn()).toUpperCase():typeof n!="string"?"":n.toUpperCase(),ut=(...n)=>on(...n),sn=[{name:"append",category:"string",compatibility:["browser","nodejs"],fn:Ir},{name:"camelcase",category:"string",compatibility:["browser","nodejs"],fn:Jr},{name:"capitalize",category:"string",compatibility:["browser","nodejs"],fn:en},{name:"capitalizeAll",category:"string",compatibility:["browser","nodejs"],fn:qr},{name:"center",category:"string",compatibility:["browser","nodejs"],fn:Wr},{name:"chop",category:"string",compatibility:["browser","nodejs"],fn:Dr},{name:"dashcase",category:"string",compatibility:["browser","nodejs"],fn:Gr},{name:"dotcase",category:"string",compatibility:["browser","nodejs"],fn:vr},{name:"ellipsis",category:"string",compatibility:["browser","nodejs"],fn:Yr},{name:"hyphenate",category:"string",compatibility:["browser","nodejs"],fn:Qr},{name:"isString",category:"string",compatibility:["browser","nodejs"],fn:Zr},{name:"lowercase",category:"string",compatibility:["browser","nodejs"],fn:tn},{name:"downcase",category:"string",compatibility:["browser","nodejs"],fn:Vr},{name:"occurrences",category:"string",compatibility:["browser","nodejs"],fn:Kr},{name:"pascalcase",category:"string",compatibility:["browser","nodejs"],fn:Xr},{name:"pathcase",category:"string",compatibility:["browser","nodejs"],fn:nt},{name:"plusify",category:"string",compatibility:["browser","nodejs"],fn:et},{name:"prepend",category:"string",compatibility:["browser","nodejs"],fn:rt},{name:"remove",category:"string",compatibility:["browser","nodejs"],fn:tt},{name:"removeFirst",category:"string",compatibility:["browser","nodejs"],fn:ot},{name:"replace",category:"string",compatibility:["browser","nodejs"],fn:st},{name:"replaceFirst",category:"string",compatibility:["browser","nodejs"],fn:it},{name:"reverse",category:"string",compatibility:["browser","nodejs"],fn:at},{name:"sentence",category:"string",compatibility:["browser","nodejs"],fn:ct},{name:"snakecase",category:"string",compatibility:["browser","nodejs"],fn:pt},{name:"trim",category:"string",compatibility:["browser","nodejs"],fn:mt},{name:"trimLeft",category:"string",compatibility:["browser","nodejs"],fn:lt},{name:"trimRight",category:"string",compatibility:["browser","nodejs"],fn:yt},{name:"truncate",category:"string",compatibility:["browser","nodejs"],fn:rn},{name:"truncateWords",category:"string",compatibility:["browser","nodejs"],fn:ft},{name:"uppercase",category:"string",compatibility:["browser","nodejs"],fn:on},{name:"upcase",category:"string",compatibility:["browser","nodejs"],fn:ut}];import{escape as bt}from"querystring";import{format as dt,parse as an,resolve as ht}from"url";var b=["browser","nodejs"],cn=n=>{if(typeof n=="string")return encodeURIComponent(n)},wt=n=>{if(typeof n=="string")return bt(n)},pn=n=>{if(typeof n=="string")return decodeURIComponent(n)};function jt(...n){return cn.apply(this,n)}function kt(...n){return pn.apply(this,n)}var Ht=(n,e)=>ht(String(n),String(e)),xt=n=>an(String(n)),Nt=n=>{if(typeof n=="string")return n.split("?")[0]},$t=n=>{if(typeof n=="string"){let e=an(n);return e.protocol="",dt(e)}},mn=[{name:"encodeURI",category:"url",compatibility:b,fn:cn},{name:"escape",category:"url",compatibility:["nodejs"],fn:wt},{name:"decodeURI",category:"url",compatibility:b,fn:pn},{name:"url_encode",category:"url",compatibility:b,fn:jt},{name:"url_decode",category:"url",compatibility:b,fn:kt},{name:"urlResolve",category:"url",compatibility:["nodejs"],fn:Ht},{name:"urlParse",category:"url",compatibility:["nodejs"],fn:xt},{name:"stripQuerystring",category:"url",compatibility:b,fn:Nt},{name:"stripProtocol",category:"url",compatibility:["nodejs"],fn:$t}];var f=class{_helpers=[];constructor(){this.init()}get helpers(){return this._helpers}init(){this.registerHelpers(x),this.registerHelpers(O),this.registerHelpers(B),this.registerHelpers(T),this.registerHelpers($),this.registerHelpers(W),this.registerHelpers(F),this.registerHelpers(R),this.registerHelpers(_),this.registerHelpers(C),this.registerHelpers(M),this.registerHelpers(U),this.registerHelpers(J),this.registerHelpers(D),this.registerHelpers(G),this.registerHelpers(K),this.registerHelpers(X),this.registerHelpers(sn),this.registerHelpers(mn),this.registerHelpers(V)}register(e){return this.has(e.name)||this._helpers.push(e),!1}registerHelpers(e){for(let r of e)this.register(r)}has(e){return this._helpers.some(r=>r.name===e)}filter(e){let r=this._helpers;return e.names&&(r=r.filter(t=>e.names?.includes(t.name))),e.categories&&(r=r.filter(t=>e.categories?.includes(t.category))),e.compatibility&&(r=r.filter(t=>t.compatibility?.some(o=>e.compatibility?.includes(o)))),r}load(e,r){let t=this._helpers;r&&(t=this.filter(r));for(let o of t)e.registerHelper(o.name,o.fn)}swap(e){for(let r of this._helpers)e.unregisterHelper(r.name),e.registerHelper(r.name,r.fn)}};var Vo=j,Ko=j.create();function Xo(n){new f().load(n.handlebars??n.hbs)}async function ns(){let n=new f,e=j.create();return n.load(e),process.env.NODE_ENV==="development"&&console.warn("createHandlebars will be deprecated in future versions, use `fumanchu` instead."),e}function es(n){let e=new f,r=j.create();return n?.handlebars&&(r=n.handlebars),e.load(r),r}export{Vo as Handlebars,f as HelperRegistry,ns as createHandlebars,es as fumanchu,Ko as handlebars,Xo as helpers};
|
|
11
|
+
`),e+="</figure>",e},M=[{name:"attr",category:"html",compatibility:["browser","nodejs"],fn:le},{name:"css",category:"html",compatibility:["nodejs"],fn:ye},{name:"js",category:"html",compatibility:["nodejs"],fn:ge},{name:"sanitize",category:"html",compatibility:["browser","nodejs"],fn:fe},{name:"ul",category:"html",compatibility:["browser","nodejs"],fn:ue},{name:"ol",category:"html",compatibility:["browser","nodejs"],fn:be},{name:"thumbnailImage",category:"html",compatibility:["browser","nodejs"],fn:de}];var u=(n,e)=>{if(!n||typeof n!="object")return;let r=Array.isArray(e)?e:e.split("."),t=n;for(let o of r){if(t==null||typeof t!="object")return;t=t[o]}return t},A=(n,e)=>{if(!n||typeof n!="object")return;let r=Array.isArray(e)?e:e.split(".");if(r.length===0)return;let t=n;for(let s=0;s<r.length-1;s++){if(t==null||typeof t!="object")return;t=t[r[s]]}let o=r[r.length-1];if(!(t==null||typeof t!="object"||!(o in t)))return{[o]:t[o]}};var he=function(n,e,r){if(e&&typeof e=="object"&&"hash"in e&&r===void 0&&(r=e,e={}),typeof n!="string")throw new Error('{{i18n}} helper expected "key" to be a string');let t={...this,...e,...r?.hash??{}},o=t.language||t.lang;if(typeof o!="string")throw new TypeError('{{i18n}} helper expected "language" to be a string');let s=t[o];if(typeof s>"u")throw new Error(`{{i18n}} helper cannot find language "${o}"`);let i=u(s,n);if(typeof i>"u")throw new Error('{{i18n}} helper cannot find property "'+String(n)+'" for language "'+o+'"');return String(i)},z=[{name:"i18n",category:"i18n",compatibility:["browser","nodejs"],fn:he}];var we=(n,e,r,t)=>{let o=n>1||n===0?r:e;return t?`${n} ${o}`:o},je=n=>{let e=Math.abs(Math.round(Number(n))),r=String(n),t=e%100;if([11,12,13].includes(t))return`${r}th`;switch(e%10){case 1:return`${r}st`;case 2:return`${r}nd`;case 3:return`${r}rd`;default:return`${r}th`}},L=[{name:"inflect",category:"inflection",compatibility:["browser","nodejs"],fn:we},{name:"ordinalize",category:"inflection",compatibility:["browser","nodejs"],fn:je}];import ke from"logging-helpers";var{log:He,ok:xe,success:Oe,info:Ae,warning:Ne,warn:$e,error:Re,danger:Se,bold:Ee,_debug:Te,_inspect:Fe}=ke,P=[{name:"log",category:"logging",compatibility:["nodejs"],fn:He},{name:"ok",category:"logging",compatibility:["nodejs"],fn:xe},{name:"success",category:"logging",compatibility:["nodejs"],fn:Oe},{name:"info",category:"logging",compatibility:["nodejs"],fn:Ae},{name:"warning",category:"logging",compatibility:["nodejs"],fn:Ne},{name:"warn",category:"logging",compatibility:["nodejs"],fn:$e},{name:"error",category:"logging",compatibility:["nodejs"],fn:Re},{name:"danger",category:"logging",compatibility:["nodejs"],fn:Se},{name:"bold",category:"logging",compatibility:["nodejs"],fn:Ee},{name:"_debug",category:"logging",compatibility:["nodejs"],fn:Te},{name:"_inspect",category:"logging",compatibility:["nodejs"],fn:Fe}];import U from"micromatch";var I=(n,e,r)=>{let t=typeof e=="string"?e.split(/, */):e;return U(n,t,r)},Be=(n,e,r)=>U.isMatch(n,e,r),_e=(...n)=>(console.log("the {{mm}} helper is depcrecated and will be removed"),console.log("in handlebars-helpers v1.0.0, please use the {{match}}"),console.log("helper instead."),I(...n)),J=[{name:"match",category:"match",compatibility:["browser","nodejs"],fn:I},{name:"isMatch",category:"match",compatibility:["browser","nodejs"],fn:Be},{name:"mm",category:"match",compatibility:["browser","nodejs"],fn:_e}];var j=n=>typeof n=="number"&&!Number.isNaN(n)||typeof n=="string"&&n.trim()!==""&&!Number.isNaN(Number(n)),a=(n,e="expected a number")=>{if(j(n))return Number(n);throw new TypeError(e)},Ce=n=>{let e=a(n);return Math.abs(e)},Me=(n,e)=>j(n)&&j(e)?Number(n)+Number(e):"",ze=(...n)=>{let e=n.flat().map(r=>Number(r));return v(e)/e.length},Le=n=>{let e=a(n);return Math.ceil(e)},Pe=(n,e)=>{let r=a(n,"expected the first argument to be a number"),t=a(e,"expected the second argument to be a number");return r/t},Ue=n=>{let e=a(n);return Math.floor(e)},Ie=(n,e)=>{let r=a(n,"expected the first argument to be a number"),t=a(e,"expected the second argument to be a number");return r-t},Je=(n,e)=>{let r=a(n,"expected the first argument to be a number"),t=a(e,"expected the second argument to be a number");return r%t},q=(n,e)=>{let r=a(n,"expected the first argument to be a number"),t=a(e,"expected the second argument to be a number");return r*t},qe=(n,e)=>{let r=a(n,"expected the first argument to be a number"),t=a(e,"expected the second argument to be a number");return r+t},ve=(n,e)=>{let r=a(n,"expected minimum to be a number"),t=a(e,"expected maximum to be a number");return r+Math.floor(Math.random()*(t-r+1))},De=(n,e)=>n%e,We=n=>{let e=a(n);return Math.round(e)},Ge=(n,e)=>{let r=a(n,"expected the first argument to be a number"),t=a(e,"expected the second argument to be a number");return r-t},v=(...n)=>{let e=n.flat(),r=0;for(let t of e)j(t)&&(r+=Number(t));return r},Ye=(n,e)=>q(n,e),D=[{name:"abs",category:"math",compatibility:["browser","nodejs"],fn:Ce},{name:"add",category:"math",compatibility:["browser","nodejs"],fn:Me},{name:"avg",category:"math",compatibility:["browser","nodejs"],fn:ze},{name:"ceil",category:"math",compatibility:["browser","nodejs"],fn:Le},{name:"divide",category:"math",compatibility:["browser","nodejs"],fn:Pe},{name:"floor",category:"math",compatibility:["browser","nodejs"],fn:Ue},{name:"minus",category:"math",compatibility:["browser","nodejs"],fn:Ie},{name:"modulo",category:"math",compatibility:["browser","nodejs"],fn:Je},{name:"multiply",category:"math",compatibility:["browser","nodejs"],fn:q},{name:"plus",category:"math",compatibility:["browser","nodejs"],fn:qe},{name:"random",category:"math",compatibility:["browser","nodejs"],fn:ve},{name:"remainder",category:"math",compatibility:["browser","nodejs"],fn:De},{name:"round",category:"math",compatibility:["browser","nodejs"],fn:We},{name:"subtract",category:"math",compatibility:["browser","nodejs"],fn:Ge},{name:"sum",category:"math",compatibility:["browser","nodejs"],fn:v},{name:"times",category:"math",compatibility:["browser","nodejs"],fn:Ye}];import W from"fs";import Qe from"path";import Ze from"process";import Ke from"ent";import Ve from"handlebars";import{Remarkable as Xe}from"remarkable";var nr=(n,e={})=>{let r={cwd:Ze.cwd(),...e},t=new Xe({breaks:!0,html:!0,langPrefix:"lang-",typographer:!1,xhtmlOut:!1}),o=Qe.resolve(r.cwd,n),s=n;return W.existsSync(o)&&(s=W.readFileSync(o,"utf8")),new Ve.SafeString(Ke.decode(t.render(s)))},G=[{name:"md",category:"markdown",compatibility:["nodejs"],fn:nr}];import er from"handlebars-helper-create-frame";import rr from"handlebars-utils";import tr from"kind-of";var or=er;function sr(n,e,r){return u(rr.options(this,e,r),n)}function ir(n){return n.fn(this)}var ar=tr;function cr(n){return n.hash&&Object.keys(n.hash).length?n.fn(n.hash):n.inverse(this)}var Y=[{name:"frame",category:"misc",compatibility:["browser","nodejs"],fn:or},{name:"option",category:"misc",compatibility:["browser","nodejs"],fn:sr},{name:"noop",category:"misc",compatibility:["browser","nodejs"],fn:ir},{name:"typeOf",category:"misc",compatibility:["browser","nodejs"],fn:ar},{name:"withHash",category:"misc",compatibility:["browser","nodejs"],fn:cr}];var h=n=>typeof n=="number"&&!Number.isNaN(n),pr=(n,e)=>{if(n==null)return"0 B";let r;if(typeof n=="string"){if(r=n.length,!r)return"0 B"}else if(h(n))r=Number(n);else if(typeof n.length=="number"){if(r=n.length,!r)return"0 B"}else return"0 B";let t=typeof e=="number"&&!Number.isNaN(e)?e:2,o=["B","kB","MB","GB","TB","PB","EB","ZB","YB"],s=10**t;for(let i=o.length-1;i>=0;i--){let c=10**(i*3);if(c<=r+1)return`${Math.round(r*s/c)/s} ${o[i]}`}return`${r}`},mr=n=>n.toString().replace(/(\d)(?=(\d\d\d)+(?!\d))/g,"$1,"),lr=n=>{let e=n.toString();return`(${e.substr(0,3)}) ${e.substr(3,3)}-${e.substr(6,4)}`},yr=(n,e)=>{let r=h(n)?Number(n):0,o=10**(typeof e=="number"&&!Number.isNaN(e)?e:2),s=["k","m","b","t","q"];for(let i=s.length-1;i>=0;i--){let c=10**((i+1)*3);if(c<=r+1)return`${Math.round(r*o/c)/o}${s[i]}`}return`${r}`},gr=(n,e)=>{let r=h(n)?Number(n):0,t=typeof e=="number"&&!Number.isNaN(e)?e:0;return Number(r).toExponential(t)},fr=(n,e)=>{let r=h(n)?Number(n):0,t=typeof e=="number"&&!Number.isNaN(e)?e:0;return Number(r).toFixed(t)},ur=n=>parseFloat(String(n)),br=n=>parseInt(String(n),10),dr=(n,e)=>{let r=h(n)?Number(n):0,t=typeof e=="number"&&!Number.isNaN(e)?e:1;return Number(r).toPrecision(t)},Q=[{name:"bytes",category:"number",compatibility:["browser","nodejs"],fn:pr},{name:"addCommas",category:"number",compatibility:["browser","nodejs"],fn:mr},{name:"phoneNumber",category:"number",compatibility:["browser","nodejs"],fn:lr},{name:"toAbbr",category:"number",compatibility:["browser","nodejs"],fn:yr},{name:"toExponential",category:"number",compatibility:["browser","nodejs"],fn:gr},{name:"toFixed",category:"number",compatibility:["browser","nodejs"],fn:fr},{name:"toFloat",category:"number",compatibility:["browser","nodejs"],fn:ur},{name:"toInt",category:"number",compatibility:["browser","nodejs"],fn:br},{name:"toPrecision",category:"number",compatibility:["browser","nodejs"],fn:dr}];var k=n=>!!(n&&typeof n=="object"&&"hash"in n),Z=(n,e)=>({...n?.data||{},...e}),hr=(...n)=>{let e=[...n];if(e.length&&k(e[e.length-1])){let t=e.pop();e.push(t.hash)}let r={};for(let t of e)t&&typeof t=="object"&&!Array.isArray(t)&&Object.assign(r,t);return r},wr=(n,e)=>{if(!k(e))return e?.inverse?.(n)??"";let r=Z(e,e.hash||{}),t="";for(let o in n)r.key=o,t+=e.fn(n[o],{data:r});return t},jr=(n,e)=>{if(!k(e))return e?.inverse?.(n)??"";let r=Z(e,e.hash||{}),t="";for(let o in n)Object.hasOwn(n,o)&&(r.key=o,t+=e.fn(n[o],{data:r}));return t},kr=(...n)=>{let e=[];for(let r of n)(typeof r=="string"||typeof r=="number")&&e.push(r);return e.join(".")},Hr=(n,e,r)=>{let t=u(e,n);return r&&typeof r.fn=="function"?t?r.fn(t):r.inverse?.(e):t},xr=(n,e)=>A(e,n),Or=(n,e)=>Object.hasOwn(n,e),Ar=n=>!!n&&typeof n=="object"&&!Array.isArray(n),K=n=>JSON.parse(n),V=(n,e)=>JSON.stringify(n,null,typeof e=="number"?e:0),Nr=(n,...e)=>{let r=[n,...e];if(r.length&&k(r[r.length-1])){let t=r.pop();r.push(t.hash)}return Object.assign(...r)},$r=K,Rr=V,Sr=(n,e,r)=>{let t=g(n),o={};for(let s of t)o=Object.assign({},o,A(e,s));return r&&typeof r.fn=="function"?Object.keys(o).length?r.fn(o):r.inverse?.(e):o},X=[{name:"extend",category:"object",compatibility:["browser","nodejs"],fn:hr},{name:"forIn",category:"object",compatibility:["browser","nodejs"],fn:wr},{name:"forOwn",category:"object",compatibility:["browser","nodejs"],fn:jr},{name:"toPath",category:"object",compatibility:["browser","nodejs"],fn:kr},{name:"get",category:"object",compatibility:["browser","nodejs"],fn:Hr},{name:"getObject",category:"object",compatibility:["browser","nodejs"],fn:xr},{name:"hasOwn",category:"object",compatibility:["browser","nodejs"],fn:Or},{name:"isObject",category:"object",compatibility:["browser","nodejs"],fn:Ar},{name:"JSONparse",category:"object",compatibility:["browser","nodejs"],fn:K},{name:"JSONstringify",category:"object",compatibility:["browser","nodejs"],fn:V},{name:"merge",category:"object",compatibility:["browser","nodejs"],fn:Nr},{name:"parseJSON",category:"object",compatibility:["browser","nodejs"],fn:$r},{name:"pick",category:"object",compatibility:["browser","nodejs"],fn:Sr},{name:"stringify",category:"object",compatibility:["browser","nodejs"],fn:Rr}];import m from"path";var Er=(n,e,r)=>{let t=Object.prototype.toString.call(r).slice(8,-1).toLowerCase();return`Expected ${n} to be of type ${e}, but got ${t}`},p=(n,e)=>{if(typeof e!="string")throw new TypeError(Er(n,"string",e));return e},Tr=function(n,e){let r=p("filepath",n),t=e?.data?.root?.cwd??this?.cwd??process.cwd();return m.resolve(t,r)},Fr=n=>{let e=p("filepath",n);return m.dirname(e)},Br=(n,e)=>{let r=p("first path",n),t=p("second path",e);return m.relative(m.dirname(r),t)},_r=n=>{let e=p("filepath",n);return m.basename(e)},Cr=n=>{let e=p("filepath",n);return m.basename(e,m.extname(e))},Mr=n=>{let e=p("filepath",n);return m.extname(e)},zr=function(n,...e){let r,t=e[e.length-1];typeof t=="object"&&t&&"data"in t&&(r=e.pop());let s=[r?.data?.root?.cwd??this?.cwd??process.cwd(),p("filepath",n),...e.map((i,c)=>p(`path${c}`,i))];return m.resolve(...s)},Lr=(n,e,r)=>{let t=p("filepath",n),o=Number(e),s=Number(r);return t.split(/[\\/]+/).slice(o,s).join("/")},nn=[{name:"absolute",category:"path",compatibility:["nodejs"],fn:Tr},{name:"dirname",category:"path",compatibility:["nodejs"],fn:Fr},{name:"relative",category:"path",compatibility:["nodejs"],fn:Br},{name:"basename",category:"path",compatibility:["nodejs"],fn:_r},{name:"stem",category:"path",compatibility:["nodejs"],fn:Cr},{name:"extname",category:"path",compatibility:["nodejs"],fn:Mr},{name:"resolve",category:"path",compatibility:["nodejs"],fn:zr},{name:"segments",category:"path",compatibility:["nodejs"],fn:Lr}];import Pr from"handlebars-utils";var Ur=(n,e,r)=>{let t=Pr.options({},e,r);return new RegExp(n,t.flags)},Ir=(n,e)=>{if(typeof n!="string")return!1;if(!(e instanceof RegExp))throw new TypeError("expected a regular expression");return e.test(n)},en=[{name:"toRegex",category:"regex",compatibility:["browser","nodejs"],fn:Ur},{name:"test",category:"regex",compatibility:["browser","nodejs"],fn:Ir}];var rn=n=>n.trim().replace(/^[-_.\W\s]+|[-_.\W\s]+$/g,""),b=(n,e)=>n.length===1?n.toLowerCase():rn(n).toLowerCase().replace(/[-_.\W\s]+(\w|$)/g,(t,o)=>e(o)),Jr=(n,e)=>typeof n=="string"&&typeof e=="string"?n+e:n,qr=n=>typeof n=="string"?b(n,e=>e.toUpperCase()):"",tn=n=>typeof n!="string"||n.length===0?"":n.charAt(0).toUpperCase()+n.slice(1),vr=n=>typeof n!="string"?"":n.replace(/\w\S*/g,e=>tn(e)),Dr=(n,e)=>{if(typeof n!="string")return"";let r="";for(let t=0;t<e;t++)r+=" ";return r+n+r},Wr=n=>typeof n=="string"?rn(n):"",Gr=n=>typeof n=="string"?b(n,e=>`-${e}`):"",Yr=n=>typeof n=="string"?b(n,e=>`.${e}`):"",on=(n,e,r)=>typeof n=="string"?(typeof r!="string"&&(r=""),n.length>e?n.slice(0,e-r.length)+r:n):"",Qr=(n,e)=>typeof n=="string"?n.length<=e?n:`${on(n,e)}\u2026`:"",Zr=n=>typeof n=="string"?n.split(" ").join("-"):"",Kr=n=>typeof n=="string",sn=n=>typeof n=="object"&&n!==null&&"fn"in n&&typeof n.fn=="function"?String(n.fn()).toLowerCase():typeof n!="string"?"":n.toLowerCase(),Vr=(...n)=>sn(...n),Xr=(n,e)=>{if(typeof n!="string")return"";let r=e.length,t=n.indexOf(e,0),o=0;for(;t>-1;)o++,t=n.indexOf(e,t+r);return o},nt=n=>{if(typeof n!="string")return"";let e=b(n,r=>r.toUpperCase());return e.charAt(0).toUpperCase()+e.slice(1)},et=n=>typeof n=="string"?b(n,e=>`/${e}`):"",rt=(n,e)=>typeof n!="string"?"":(typeof e!="string"&&(e=" "),n.split(e).join("+")),tt=(n,e)=>typeof n=="string"&&typeof e=="string"?e+n:n,ot=(n,e)=>typeof n!="string"?"":typeof e!="string"?n:n.split(e).join(""),st=(n,e)=>typeof n!="string"?"":typeof e!="string"?n:n.replace(e,""),it=(n,e,r)=>typeof n!="string"?"":typeof e!="string"?n:(typeof r!="string"&&(r=""),n.split(e).join(r)),at=(n,e,r)=>typeof n!="string"?"":typeof e!="string"?n:(typeof r!="string"&&(r=""),n.replace(e,r)),ct=n=>typeof n=="string"?n.split("").reverse().join(""):"",pt=n=>typeof n!="string"?"":n.replace(/((?:\S[^.?!]*)[.?!]*)/g,e=>e.charAt(0).toUpperCase()+e.substr(1).toLowerCase()),mt=n=>typeof n=="string"?b(n,e=>`_${e}`):"",lt=n=>typeof n=="string"?n.trim():"",yt=n=>typeof n=="string"?n.replace(/^\s+/,""):"",gt=n=>typeof n=="string"?n.replace(/\s+$/,""):"",ft=(n,e,r)=>{if(typeof n=="string"&&typeof e=="number"&&Number.isFinite(e)){typeof r!="string"&&(r="...");let t=Math.trunc(e),o=n.split(" ");return t<o.length&&(o=o.slice(0,t)),o.join(" ").trim()+r}return""},ut=ft,an=n=>typeof n=="object"&&n!==null&&"fn"in n&&typeof n.fn=="function"?String(n.fn()).toUpperCase():typeof n!="string"?"":n.toUpperCase(),bt=(...n)=>an(...n),cn=[{name:"append",category:"string",compatibility:["browser","nodejs"],fn:Jr},{name:"camelcase",category:"string",compatibility:["browser","nodejs"],fn:qr},{name:"capitalize",category:"string",compatibility:["browser","nodejs"],fn:tn},{name:"capitalizeAll",category:"string",compatibility:["browser","nodejs"],fn:vr},{name:"center",category:"string",compatibility:["browser","nodejs"],fn:Dr},{name:"chop",category:"string",compatibility:["browser","nodejs"],fn:Wr},{name:"dashcase",category:"string",compatibility:["browser","nodejs"],fn:Gr},{name:"dotcase",category:"string",compatibility:["browser","nodejs"],fn:Yr},{name:"ellipsis",category:"string",compatibility:["browser","nodejs"],fn:Qr},{name:"hyphenate",category:"string",compatibility:["browser","nodejs"],fn:Zr},{name:"isString",category:"string",compatibility:["browser","nodejs"],fn:Kr},{name:"lowercase",category:"string",compatibility:["browser","nodejs"],fn:sn},{name:"downcase",category:"string",compatibility:["browser","nodejs"],fn:Vr},{name:"occurrences",category:"string",compatibility:["browser","nodejs"],fn:Xr},{name:"pascalcase",category:"string",compatibility:["browser","nodejs"],fn:nt},{name:"pathcase",category:"string",compatibility:["browser","nodejs"],fn:et},{name:"plusify",category:"string",compatibility:["browser","nodejs"],fn:rt},{name:"prepend",category:"string",compatibility:["browser","nodejs"],fn:tt},{name:"remove",category:"string",compatibility:["browser","nodejs"],fn:ot},{name:"removeFirst",category:"string",compatibility:["browser","nodejs"],fn:st},{name:"replace",category:"string",compatibility:["browser","nodejs"],fn:it},{name:"replaceFirst",category:"string",compatibility:["browser","nodejs"],fn:at},{name:"reverse",category:"string",compatibility:["browser","nodejs"],fn:ct},{name:"sentence",category:"string",compatibility:["browser","nodejs"],fn:pt},{name:"snakecase",category:"string",compatibility:["browser","nodejs"],fn:mt},{name:"trim",category:"string",compatibility:["browser","nodejs"],fn:lt},{name:"trimLeft",category:"string",compatibility:["browser","nodejs"],fn:yt},{name:"trimRight",category:"string",compatibility:["browser","nodejs"],fn:gt},{name:"truncate",category:"string",compatibility:["browser","nodejs"],fn:on},{name:"truncateWords",category:"string",compatibility:["browser","nodejs"],fn:ut},{name:"uppercase",category:"string",compatibility:["browser","nodejs"],fn:an},{name:"upcase",category:"string",compatibility:["browser","nodejs"],fn:bt}];import{escape as dt}from"querystring";import{format as ht,parse as pn,resolve as wt}from"url";var w=["browser","nodejs"],mn=n=>{if(typeof n=="string")return encodeURIComponent(n)},jt=n=>{if(typeof n=="string")return dt(n)},ln=n=>{if(typeof n=="string")return decodeURIComponent(n)};function kt(...n){return mn.apply(this,n)}function Ht(...n){return ln.apply(this,n)}var xt=(n,e)=>wt(String(n),String(e)),Ot=n=>pn(String(n)),At=n=>{if(typeof n=="string")return n.split("?")[0]},Nt=n=>{if(typeof n=="string"){let e=pn(n);return e.protocol="",ht(e)}},yn=[{name:"encodeURI",category:"url",compatibility:w,fn:mn},{name:"escape",category:"url",compatibility:["nodejs"],fn:jt},{name:"decodeURI",category:"url",compatibility:w,fn:ln},{name:"url_encode",category:"url",compatibility:w,fn:kt},{name:"url_decode",category:"url",compatibility:w,fn:Ht},{name:"urlResolve",category:"url",compatibility:["nodejs"],fn:xt},{name:"urlParse",category:"url",compatibility:["nodejs"],fn:Ot},{name:"stripQuerystring",category:"url",compatibility:w,fn:At},{name:"stripProtocol",category:"url",compatibility:["nodejs"],fn:Nt}];var d=class{_helpers=[];constructor(){this.init()}get helpers(){return this._helpers}init(){this.registerHelpers(N),this.registerHelpers(S),this.registerHelpers(B),this.registerHelpers(_),this.registerHelpers(R),this.registerHelpers(G),this.registerHelpers(M),this.registerHelpers(T),this.registerHelpers(z),this.registerHelpers(L),this.registerHelpers(P),this.registerHelpers(J),this.registerHelpers(D),this.registerHelpers(Y),this.registerHelpers(Q),this.registerHelpers(nn),this.registerHelpers(en),this.registerHelpers(cn),this.registerHelpers(yn),this.registerHelpers(X)}register(e){return this.has(e.name)||this._helpers.push(e),!1}registerHelpers(e){for(let r of e)this.register(r)}has(e){return this._helpers.some(r=>r.name===e)}filter(e){let r=this._helpers;return e.names&&(r=r.filter(t=>e.names?.includes(t.name))),e.categories&&(r=r.filter(t=>e.categories?.includes(t.category))),e.compatibility&&(r=r.filter(t=>t.compatibility?.some(o=>e.compatibility?.includes(o)))),r}load(e,r){let t=this._helpers;r&&(t=this.filter(r));for(let o of t)e.registerHelper(o.name,o.fn)}swap(e){for(let r of this._helpers)e.unregisterHelper(r.name),e.registerHelper(r.name,r.fn)}};var Vo=y,Xo=y.create();function ns(n){new d().load(n.handlebars??n.hbs)}async function es(){let n=new d,e=y.create();return Object.keys(y.partials).length>0&&e.registerPartial(y.partials),n.load(e),process.env.NODE_ENV==="development"&&console.warn("createHandlebars will be deprecated in future versions, use `fumanchu` instead."),e}function rs(n){let e=new d,r=y.create();return n?.handlebars?r=n.handlebars:Object.keys(y.partials).length>0&&r.registerPartial(y.partials),e.load(r),r}export{Vo as Handlebars,d as HelperRegistry,es as createHandlebars,rs as fumanchu,Xo as handlebars,ns as helpers};
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@jaredwray/fumanchu",
|
|
3
3
|
"description": "Handlebars + Helpers = Fumanchu",
|
|
4
|
-
"version": "4.0
|
|
4
|
+
"version": "4.1.0",
|
|
5
5
|
"homepage": "https://github.com/jaredwray/fumanchu",
|
|
6
6
|
"author": "Jared Wray (me@jaredwray.com)",
|
|
7
7
|
"type": "module",
|
|
@@ -66,8 +66,6 @@
|
|
|
66
66
|
"chrono-node": "2.8.4",
|
|
67
67
|
"dayjs": "^1.11.18",
|
|
68
68
|
"ent": "^2.2.2",
|
|
69
|
-
"get-object": "^0.2.0",
|
|
70
|
-
"get-value": "^4.0.1",
|
|
71
69
|
"handlebars": "^4.7.8",
|
|
72
70
|
"handlebars-helper-create-frame": "^0.1.0",
|
|
73
71
|
"handlebars-utils": "^1.0.6",
|
|
@@ -83,7 +81,6 @@
|
|
|
83
81
|
"devDependencies": {
|
|
84
82
|
"@biomejs/biome": "^2.2.4",
|
|
85
83
|
"@types/ent": "^2.2.8",
|
|
86
|
-
"@types/get-value": "^3.0.5",
|
|
87
84
|
"@types/html-tag": "^2.0.2",
|
|
88
85
|
"@types/is-glob": "^4.0.4",
|
|
89
86
|
"@types/kind-of": "^6.0.3",
|