New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

@jsonic/multisource

Package Overview
Dependencies
Maintainers
1
Versions
36
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@jsonic/multisource - npm Package Compare versions

Comparing version 1.0.4 to 1.0.6

5

dist/multisource.d.ts

@@ -45,3 +45,6 @@ import { Jsonic, Context, Rule, Plugin } from '@jsonic/jsonic-next';

declare function resolvePathSpec(popts: MultiSourceOptions, ctx: Context, spec: any, resolvefolder: (path: string) => string): PathSpec;
declare const meta: {
name: string;
};
export type { Resolver, Resolution, Processor, MultiSourceOptions, Dependency, DependencyMap, MultiSourceMeta, PathSpec, };
export { MultiSource, resolvePathSpec, NONE, TOP, };
export { MultiSource, resolvePathSpec, NONE, TOP, meta };

7

dist/multisource.js
"use strict";
/* Copyright (c) 2021 Richard Rodger, MIT License */
Object.defineProperty(exports, "__esModule", { value: true });
exports.TOP = exports.NONE = exports.resolvePathSpec = exports.MultiSource = void 0;
exports.meta = exports.TOP = exports.NONE = exports.resolvePathSpec = exports.MultiSource = void 0;
const jsonic_next_1 = require("@jsonic/jsonic-next");

@@ -190,2 +190,7 @@ const directive_1 = require("@jsonic/directive");

exports.resolvePathSpec = resolvePathSpec;
// Plugin meta data
const meta = {
name: 'MultiSource',
};
exports.meta = meta;
//# sourceMappingURL=multisource.js.map

@@ -1,1 +0,1 @@

!function(e){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=e();else if("function"==typeof define&&define.amd)define([],e);else{("undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this).JsonicMultiSource=e()}}((function(){var e={exports:{}};(function(t){(function(){!function(n){"object"==typeof e.exports?e.exports=n():("undefined"!=typeof window?window:void 0!==t?t:"undefined"!=typeof self?self:this).Jsonic=n()}((function(){var e=function(e){var t;return function(n){return t||e(t={exports:{},parent:n},t.exports),t.exports}},t=e((function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.modlist=t.findTokenSet=t.values=t.keys=t.omap=t.str=t.prop=t.parserwrap=t.trimstk=t.tokenize=t.srcfmt=t.snip=t.regexp=t.mesc=t.makelog=t.isarr=t.filterRules=t.extract=t.escre=t.errinject=t.errdesc=t.entries=t.defprop=t.deep=t.configure=t.clone=t.clean=t.charset=t.badlex=t.assign=t.S=t.JsonicError=void 0;const l=n({}),i=e=>null==e?[]:Object.keys(e);t.keys=i;const o=e=>null==e?[]:Object.values(e);t.values=o;const s=e=>null==e?[]:Object.entries(e);t.entries=s;const a=(e,...t)=>Object.assign(null==e?{}:e,...t);t.assign=a,t.isarr=e=>Array.isArray(e);const c=Object.defineProperty;t.defprop=c;const u=(e,t)=>Object.entries(e||{}).reduce((e,n)=>{let r=t?t(n):n;void 0===r[0]?delete e[n[0]]:e[r[0]]=r[1];let l=2;for(;void 0!==r[l];)e[r[l]]=r[l+1],l+=2;return e},{});t.omap=u;const d={indent:". ",logindent:" ",space:" ",gap:" ",Object:"Object",Array:"Array",object:"object",string:"string",function:"function",unexpected:"unexpected",map:"map",list:"list",elem:"elem",pair:"pair",val:"val",node:"node",no_re_flags:r.EMPTY,unprintable:"unprintable",invalid_ascii:"invalid_ascii",invalid_unicode:"invalid_unicode",invalid_lex_state:"invalid_lex_state",unterminated_string:"unterminated_string",unterminated_comment:"unterminated_comment",lex:"lex",parse:"parse",error:"error",none:"none",imp_map:"imp,map",imp_list:"imp,list",imp_null:"imp,null",end:"end",open:"open",close:"close",rule:"rule",stack:"stack",nUll:"null",name:"name",make:"make",colon:":"};t.S=d;class p extends SyntaxError{constructor(e,t,n,r,l){let i=x(e,t=g({},t),n,r,l);super(i.message),a(this,i),v(this)}toJSON(){return{...this,__error:!0,name:this.name,message:this.message,stack:this.stack}}}function m(e,t,n){let l=t.t,i=l[e];return null==i&&r.STRING===typeof e&&(i=t.tI++,l[i]=e,l[e]=i,l[e.substring(1)]=i,null!=n&&a(n.token,t.t)),i}function h(e,...t){return new RegExp(t.map(e=>e.esc?f(e.toString()):e).join(r.EMPTY),null==e?"":e)}function f(e){return null==e?"":e.replace(/[-\\|\]{}()[^$+*?.!=]/g,"\\$&").replace(/\t/g,"\\t").replace(/\r/g,"\\r").replace(/\n/g,"\\n")}function g(e,...t){let n=d.function===typeof e,r=null!=e&&(d.object===typeof e||n);for(let l of t){let t,i=d.function===typeof l,o=null!=l&&(d.object===typeof l||i);if(r&&o&&!i&&Array.isArray(e)===Array.isArray(l))for(let n in l)e[n]=g(e[n],l[n]);else e=void 0===l?e:i?l:o?d.function===typeof(t=l.constructor)&&d.Object!==t.name&&d.Array!==t.name?l:g(Array.isArray(l)?[]:{},l):l,n=d.function===typeof e,r=null!=e&&(d.object===typeof e||n)}return e}function k(e,t,n,r,l,i){let o={code:t,details:n,token:r,rule:l,ctx:i};return null==e?"":e.replace(/\$(\{?)([\w_0-9]+)(\}?)/g,(e,t,s,a)=>{let c=null!=o[s]?o[s]:null!=n[s]?n[s]:i.meta&&null!=i.meta[s]?i.meta[s]:null!=r[s]?r[s]:null!=l[s]?l[s]:null!=i.opts[s]?i.opts[s]:null!=i.cfg[s]?i.cfg[s]:null!=i[s]?i[s]:"$"+s,u=t&&a?c:JSON.stringify(c);return u=null==u?"":u,u.replace(/\n/g,"\n ")})}function v(e){e.stack&&(e.stack=e.stack.split("\n").filter(e=>!e.includes("jsonic/jsonic")).map(e=>e.replace(/ at /,"at ")).join("\n"))}function b(e,t,n){let l=0<n.sI?n.sI:0,i=0<n.rI?n.rI:1,o=0<n.cI?n.cI:1,s=null==n.src?r.EMPTY:n.src,a=e.substring(Math.max(0,l-333),l).split("\n"),c=e.substring(l,l+333).split("\n"),u=2+(r.EMPTY+(i+2)).length,d=i<3?1:i-2,p=e=>"\x1b[34m"+(r.EMPTY+d++).padStart(u," ")+" | \x1b[0m"+(null==e?r.EMPTY:e),m=a.length;return[2<m?p(a[m-3]):null,1<m?p(a[m-2]):null,p(a[m-1]+c[0])," ".repeat(u)+" "+" ".repeat(o-1)+"\x1b[31m"+"^".repeat(s.length||1)+" "+t+"\x1b[0m",p(c[1]),p(c[2])].filter(e=>null!=e).join("\n")}function x(e,t,n,r,l){var i,o,s;try{let a=l.cfg,c=l.meta,u=k(a.error[e]||(null===(i=null==t?void 0:t.use)||void 0===i?void 0:i.err)&&(t.use.err.code||t.use.err.message)||a.error.unknown,e,t,n,r,l);d.function===typeof a.hint&&(a.hint={...a.hint(),...a.hint});let p=["\x1b[31m[jsonic/"+e+"]:\x1b[0m "+u," \x1b[34m--\x3e\x1b[0m "+(c&&c.fileName||"<no-file>")+":"+n.rI+":"+n.cI,b(l.src(),u,n),"",k((a.hint[e]||(null===(s=null===(o=t.use)||void 0===o?void 0:o.err)||void 0===s?void 0:s.message)||a.hint.unknown||"").trim().split("\n").map(e=>" "+e).join("\n"),e,t,n,r,l),""," \x1b[2mhttps://jsonic.senecajs.org\x1b[0m"," \x1b[2m--internal: rule="+r.name+"~"+r.state+"; token="+m(n.tin,l.cfg)+(null==n.why?"":"~"+n.why)+"; plugins="+l.plgn().map(e=>e.name).join(",")+"--\x1b[0m\n"].join("\n"),h={internal:{token:n,ctx:l}};return h={...Object.create(h),message:p,code:e,details:t,meta:c,fileName:c?c.fileName:void 0,lineNumber:n.rI,columnNumber:n.cI},h}catch(a){return console.log(a),{}}}function y(e){return"function"==typeof e.debug.print.src?e.debug.print.src:t=>{let n=null==t?r.EMPTY:Array.isArray(t)?JSON.stringify(t).replace(/]$/,s(t).filter(e=>isNaN(e[0])).map((e,t)=>(0===t?", ":"")+e[0]+": "+JSON.stringify(e[1]))+"]"):JSON.stringify(t);return n=n.substring(0,e.debug.maxlen)+(e.debug.maxlen<n.length?"...":r.EMPTY),n}}function S(e,t=44){let n;try{n="object"==typeof e?JSON.stringify(e):""+e}catch(r){n=""+e}return j(t<n.length?n.substring(0,t-3)+"...":n,t)}function j(e,t=5){return void 0===e?"":(""+e).substring(0,t).replace(/[\r\n\t]/g,".")}function O(...e){return null==e?{}:e.filter(e=>!1!==e).map(e=>"object"==typeof e?i(e).join(r.EMPTY):e).join(r.EMPTY).split(r.EMPTY).reduce((e,t)=>(e[t]=t.charCodeAt(0),e),{})}function E(e){for(let t in e)null==e[t]&&delete e[t];return e}t.JsonicError=p,t.configure=function(e,t,n){var r,l,c,d,p,g,k,v,b,x,y,S,j,I,T,M,N,P,w,C,_,R,A,L,$,Y,J,F,U,B,D,K,V,z,G,W,Z,q,H,X,Q,ee,te,ne,re,le,ie,oe,se,ae;const ce=t||{};ce.t=ce.t||{},ce.tI=ce.tI||1;const ue=e=>m(e,ce);!1!==n.standard$&&(ue("#BD"),ue("#ZZ"),ue("#UK"),ue("#AA"),ue("#SP"),ue("#LN"),ue("#CM"),ue("#NR"),ue("#ST"),ue("#TX"),ue("#VL")),ce.safe={key:!1!==(null===(r=n.safe)||void 0===r?void 0:r.key)},ce.fixed={lex:!!(null===(l=n.fixed)||void 0===l?void 0:l.lex),token:n.fixed?u(E(n.fixed.token),([e,t])=>[t,m(e,ce)]):{},ref:void 0,check:null===(c=n.fixed)||void 0===c?void 0:c.check},ce.fixed.ref=u(ce.fixed.token,([e,t])=>[e,t]),ce.fixed.ref=Object.assign(ce.fixed.ref,u(ce.fixed.ref,([e,t])=>[t,e])),ce.match={lex:!!(null===(d=n.match)||void 0===d?void 0:d.lex),value:n.match?u(E(n.match.value),([e,t])=>[e,t]):{},token:n.match?u(E(n.match.token),([e,t])=>[m(e,ce),t]):{},check:null===(p=n.match)||void 0===p?void 0:p.check},u(ce.match.token,([e,t])=>[e,(t.tin$=+e,t)]);const de=n.tokenSet?Object.keys(n.tokenSet).reduce((e,t)=>(e[t]=n.tokenSet[t].filter(e=>null!=e).map(e=>ue(e)),e),{}):{};ce.tokenSet=ce.tokenSet||{},s(de).map(e=>{let t=e[0],n=e[1];ce.tokenSet[t]?(ce.tokenSet[t].length=0,ce.tokenSet[t].push(...n)):ce.tokenSet[t]=n}),ce.tokenSetTins=s(ce.tokenSet).reduce((e,t)=>(e[t[0]]=e[t[0]]||{},t[1].map(n=>e[t[0]][n]=!0),e),{}),ce.tokenSetTins.IGNORE=ce.tokenSetTins.IGNORE||{},ce.space={lex:!!(null===(g=n.space)||void 0===g?void 0:g.lex),chars:O(null===(k=n.space)||void 0===k?void 0:k.chars),check:null===(v=n.space)||void 0===v?void 0:v.check},ce.line={lex:!!(null===(b=n.line)||void 0===b?void 0:b.lex),chars:O(null===(x=n.line)||void 0===x?void 0:x.chars),rowChars:O(null===(y=n.line)||void 0===y?void 0:y.rowChars),single:!!(null===(S=n.line)||void 0===S?void 0:S.single),check:null===(j=n.line)||void 0===j?void 0:j.check},ce.text={lex:!!(null===(I=n.text)||void 0===I?void 0:I.lex),modify:((null===(T=ce.text)||void 0===T?void 0:T.modify)||[]).concat(([null===(M=n.text)||void 0===M?void 0:M.modify]||[]).flat()).filter(e=>null!=e),check:null===(N=n.text)||void 0===N?void 0:N.check},ce.number={lex:!!(null===(P=n.number)||void 0===P?void 0:P.lex),hex:!!(null===(w=n.number)||void 0===w?void 0:w.hex),oct:!!(null===(C=n.number)||void 0===C?void 0:C.oct),bin:!!(null===(_=n.number)||void 0===_?void 0:_.bin),sep:null!=(null===(R=n.number)||void 0===R?void 0:R.sep)&&""!==n.number.sep,exclude:null===(A=n.number)||void 0===A?void 0:A.exclude,sepChar:null===(L=n.number)||void 0===L?void 0:L.sep,check:null===($=n.number)||void 0===$?void 0:$.check},ce.value={lex:!!(null===(Y=n.value)||void 0===Y?void 0:Y.lex),def:s((null===(J=n.value)||void 0===J?void 0:J.def)||{}).reduce((e,t)=>(null==t[1]||!1===t[1]||t[1].match||(e[t[0]]=t[1]),e),{}),defre:s((null===(F=n.value)||void 0===F?void 0:F.def)||{}).reduce((e,t)=>(t[1]&&t[1].match&&(e[t[0]]=t[1],e[t[0]].consume=!!e[t[0]].consume),e),{})},ce.rule={start:null==(null===(U=n.rule)||void 0===U?void 0:U.start)?"val":n.rule.start,maxmul:null==(null===(B=n.rule)||void 0===B?void 0:B.maxmul)?3:n.rule.maxmul,finish:!!(null===(D=n.rule)||void 0===D?void 0:D.finish),include:(null===(K=n.rule)||void 0===K?void 0:K.include)?n.rule.include.split(/\s*,+\s*/).filter(e=>""!==e):[],exclude:(null===(V=n.rule)||void 0===V?void 0:V.exclude)?n.rule.exclude.split(/\s*,+\s*/).filter(e=>""!==e):[]},ce.map={extend:!!(null===(z=n.map)||void 0===z?void 0:z.extend),merge:null===(G=n.map)||void 0===G?void 0:G.merge},ce.list={property:!!(null===(W=n.list)||void 0===W?void 0:W.property)};let pe=Object.keys(ce.fixed.token).sort((e,t)=>t.length-e.length).map(e=>f(e)).join("|"),me=(null===(Z=n.comment)||void 0===Z?void 0:Z.lex)?(n.comment.def?o(n.comment.def):[]).filter(e=>e&&e.lex).map(e=>f(e.start)).join("|"):"",he=["([",f(i(O(ce.space.lex&&ce.space.chars,ce.line.lex&&ce.line.chars)).join("")),"]",("string"==typeof n.ender?n.ender.split(""):Array.isArray(n.ender)?n.ender:[]).map(e=>"|"+f(e)).join(""),""===pe?"":"|",pe,""===me?"":"|",me,"|$)"];return ce.rePart={fixed:pe,ender:he,commentStart:me},ce.re={ender:h(null,...he),rowChars:h(null,f(null===(q=n.line)||void 0===q?void 0:q.rowChars)),columns:h(null,"["+f(null===(H=n.line)||void 0===H?void 0:H.chars)+"]","(.*)$")},ce.lex={empty:!!(null===(X=n.lex)||void 0===X?void 0:X.empty),emptyResult:null===(Q=n.lex)||void 0===Q?void 0:Q.emptyResult,match:(null===(ee=n.lex)||void 0===ee?void 0:ee.match)?s(n.lex.match).reduce((e,t)=>{let r=t[0],l=t[1];if(l){let t=l.make(ce,n);t&&(t.matcher=r,t.make=l.make,t.order=l.order),e.push(t)}return e},[]).filter(e=>null!=e&&!1!==e&&-1<+e.order).sort((e,t)=>e.order-t.order):[]},ce.parse={prepare:o(null===(te=n.parse)||void 0===te?void 0:te.prepare)},ce.debug={get_console:(null===(ne=n.debug)||void 0===ne?void 0:ne.get_console)||(()=>console),maxlen:null==(null===(re=n.debug)||void 0===re?void 0:re.maxlen)?99:n.debug.maxlen,print:{config:!!(null===(ie=null===(le=n.debug)||void 0===le?void 0:le.print)||void 0===ie?void 0:ie.config),src:null===(se=null===(oe=n.debug)||void 0===oe?void 0:oe.print)||void 0===se?void 0:se.src}},ce.error=n.error||{},ce.hint=n.hint||{},(null===(ae=n.config)||void 0===ae?void 0:ae.modify)&&i(n.config.modify).forEach(e=>n.config.modify[e](ce,n)),ce.debug.print.config&&ce.debug.get_console().dir(ce,{depth:null}),ce.result={fail:[]},n.result&&(ce.result.fail=[...n.result.fail]),a(e.options,n),a(e.token,ce.t),a(e.tokenSet,ce.tokenSet),a(e.fixed,ce.fixed.ref),ce},t.tokenize=m,t.findTokenSet=function(e,t){return t.tokenSet[e]},t.mesc=function(e,t){return(t=new String(e)).esc=!0,t},t.regexp=h,t.escre=f,t.deep=g,t.errinject=k,t.trimstk=v,t.extract=b,t.errdesc=x,t.badlex=function(e,t,n){let r=e.next.bind(e);return e.next=(e,l,i,o)=>{let s=r(e,l,i,o);if(t===s.tin){let t={};throw null!=s.use&&(t.use=s.use),new p(s.why||d.unexpected,t,s,e,n)}return s},e},t.makelog=function(e,t){var n,r,l;let i=null===(l=null===(r=null===(n=e.opts)||void 0===n?void 0:n.plugin)||void 0===r?void 0:r.debug)||void 0===l?void 0:l.trace;if(t||i)if("number"==typeof(null==t?void 0:t.log)||i){let n=!1,r=null==t?void 0:t.log;(-1===r||i)&&(r=1,n=!0),e.log=(...t)=>{if(n){let n=t.filter(e=>d.object!=typeof e).map(e=>d.function==typeof e?e.name:e).join(d.gap);e.cfg.debug.get_console().log(n)}else e.cfg.debug.get_console().dir(t,{depth:r})}}else"function"==typeof t.log&&(e.log=t.log);return e.log},t.srcfmt=y,t.str=S,t.snip=j,t.clone=function(e){return g(Object.create(Object.getPrototypeOf(e)),e)},t.charset=O,t.clean=E,t.filterRules=function(e,t){let n=["open","close"];for(let r of n)e.def[r]=e.def[r].map(e=>(e.g="string"==typeof e.g?(e.g||"").split(/\s*,+\s*/):e.g||[],e)).filter(e=>t.rule.include.reduce((t,n)=>t||null!=e.g&&-1!==e.g.indexOf(n),0===t.rule.include.length)).filter(e=>t.rule.exclude.reduce((t,n)=>t&&(null==e.g||-1===e.g.indexOf(n)),!0));return e},t.prop=function(e,t,n){let r=e;try{let r,l=t.split(".");for(let t=0;t<l.length;t++)r=l[t],t<l.length-1&&(e=e[r]=e[r]||{});return void 0!==n&&(e[r]=n),e[r]}catch(l){throw new Error("Cannot "+(void 0===n?"get":"set")+" path "+t+" on object: "+S(r)+(void 0===n?"":" to value: "+S(n,22)))}},t.modlist=function(e,t){if(t&&e){if(0<e.length){if(t.delete&&0<t.delete.length)for(let r=0;r<t.delete.length;r++){let n=t.delete[r];(n<0?-1*n<=e.length:n<e.length)&&(e[(e.length+n)%e.length]=null)}if(t.move)for(let r=0;r<t.move.length;r+=2){let n=(e.length+t.move[r])%e.length,l=(e.length+t.move[r+1])%e.length,i=e[n];e.splice(n,1),e.splice(l,0,i)}let n=e.filter(e=>null!=e);n.length!==e.length&&(e.length=0,e.push(...n))}if(t.custom){let n=t.custom(e);null!=n&&(e=n)}}return e},t.parserwrap=function(e){return{start:function(t,n,i,o){try{return e.start(t,n,i,o)}catch(s){if("SyntaxError"===s.name){let o=0,a=0,c=0,u=r.EMPTY,d=s.message.match(/^Unexpected token (.) .*position\s+(\d+)/i);if(d){u=d[1],o=parseInt(d[2]),a=t.substring(0,o).replace(/[^\n]/g,r.EMPTY).length;let e=o-1;for(;-1<e&&"\n"!==t.charAt(e);)e--;c=Math.max(t.substring(e,o).length,0)}let h=s.token||(0,l.makeToken)("#UK",m("#UK",n.internal().config),void 0,u,(0,l.makePoint)(u.length,o,s.lineNumber||a,s.columnNumber||c));throw new p(s.code||"json",s.details||{msg:s.message},h,{},s.ctx||{uI:-1,opts:n.options,cfg:n.internal().config,token:h,meta:i,src:()=>t,root:()=>{},plgn:()=>n.internal().plugins,inst:()=>n,rule:{name:"no-rule"},sub:{},xs:-1,v2:h,v1:h,t0:h,t1:h,tC:-1,kI:-1,rs:[],rsI:0,rsm:{},n:{},log:i?i.log:void 0,F:y(n.internal().config),u:{},NORULE:{name:"no-rule"},NOTOKEN:{name:"no-token"}})}throw s}}}}})),n=e((function(e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.makeTextMatcher=n.makeNumberMatcher=n.makeCommentMatcher=n.makeStringMatcher=n.makeLineMatcher=n.makeSpaceMatcher=n.makeFixedMatcher=n.makeMatchMatcher=n.makeToken=n.makePoint=n.makeLex=n.makeNoToken=void 0;const l=t({});class i{constructor(e,t,n,r){this.len=-1,this.sI=0,this.rI=1,this.cI=1,this.token=[],this.len=e,null!=t&&(this.sI=t),null!=n&&(this.rI=n),null!=r&&(this.cI=r)}toString(){return"Point["+[this.sI+"/"+this.len,this.rI,this.cI]+(0<this.token.length?" "+this.token:"")+"]"}[r.INSPECT](){return this.toString()}}const o=(...e)=>new i(...e);n.makePoint=o;class s{constructor(e,t,n,l,i,o,s){this.isToken=!0,this.name=r.EMPTY,this.tin=-1,this.val=void 0,this.src=r.EMPTY,this.sI=-1,this.rI=-1,this.cI=-1,this.len=-1,this.name=e,this.tin=t,this.src=l,this.val=n,this.sI=i.sI,this.rI=i.rI,this.cI=i.cI,this.use=o,this.why=s,this.len=null==l?0:l.length}resolveVal(e,t){return"function"==typeof this.val?this.val(e,t):this.val}bad(e,t){return this.err=e,null!=t&&(this.use=(0,l.deep)(this.use||{},t)),this}toString(){return"Token["+this.name+"="+this.tin+" "+(0,l.snip)(this.src)+(void 0===this.val||"#ST"===this.name||"#TX"===this.name?"":"="+(0,l.snip)(this.val))+" "+[this.sI,this.rI,this.cI]+(null==this.use?"":" "+(0,l.snip)(""+JSON.stringify(this.use).replace(/"/g,""),22))+(null==this.err?"":" "+this.err)+(null==this.why?"":" "+(0,l.snip)(""+this.why,22))+"]"}[r.INSPECT](){return this.toString()}}const a=(...e)=>new s(...e);function c(e,t,n){let r=e.pnt,l=t;if(e.cfg.fixed.lex&&null!=n&&0<n.length){let i,o=e.cfg.fixed.token[n];null!=o&&(i=e.token(o,void 0,n,r)),null!=i&&(r.sI+=i.src.length,r.cI+=i.src.length,null==t?l=i:r.token.push(i))}return l}n.makeToken=a,n.makeNoToken=()=>a("",-1,void 0,r.EMPTY,o(-1)),n.makeFixedMatcher=(e,t)=>{let n=(0,l.regexp)(null,"^(",e.rePart.fixed,")");return function(t){let r=e.fixed;if(!r.lex)return;if(e.fixed.check){let n=e.fixed.check(t);if(n&&n.done)return n.token}let l=t.pnt,i=t.src.substring(l.sI).match(n);if(i){let e=i[1],n=e.length;if(0<n){let i,o=r.token[e];return null!=o&&(i=t.token(o,void 0,e,l),l.sI+=n,l.cI+=n),i}}}},n.makeMatchMatcher=(e,t)=>{let n=(0,l.values)(e.match.value),r=(0,l.values)(e.match.token);return 0===n.length&&0===r.length?null:function(t,l,i=0){if(!e.match.lex)return;if(e.match.check){let n=e.match.check(t);if(n&&n.done)return n.token}let o=t.pnt,s=t.src.substring(o.sI),a="o"===l.state?0:1;for(let e of n)if(e.match instanceof RegExp){let n=s.match(e.match);if(n){let r=n[0],l=r.length;if(0<l){let i,s=e.val?e.val(n):r;return i=t.token("#VL",s,r,o),o.sI+=l,o.cI+=l,i}}}else{let n=e.match(t,l);if(null!=n)return n}for(let e of r)if(!e.tin$||l.spec.def.tcol[a][i].includes(e.tin$))if(e instanceof RegExp){let n=s.match(e);if(n){let r=n[0],l=r.length;if(0<l){let n,i=e.tin$;return n=t.token(i,r,r,o),o.sI+=l,o.cI+=l,n}}}else{let n=e(t,l);if(null!=n)return n}}},n.makeCommentMatcher=(e,t)=>{let n=t.comment;e.comment={lex:!!n&&!!n.lex,def:((null==n?void 0:n.def)?(0,l.entries)(n.def):[]).reduce((e,[t,n])=>{if(null==n||!1===n)return e;let r={name:t,start:n.start,end:n.end,line:!!n.line,lex:!!n.lex,eatline:!!n.eatline};return e[t]=r,e},{})};let r=e.comment.lex?(0,l.values)(e.comment.def).filter(e=>e.lex&&e.line):[],i=e.comment.lex?(0,l.values)(e.comment.def).filter(e=>e.lex&&!e.line):[];return function(t,n){if(!e.comment.lex)return;if(e.comment.check){let n=e.comment.check(t);if(n&&n.done)return n.token}let o=t.pnt,s=t.src.substring(o.sI),a=o.rI,c=o.cI;for(let l of r)if(s.startsWith(l.start)){let n=s.length,r=l.start.length;for(c+=l.start.length;r<n&&!e.line.chars[s[r]];)c++,r++;if(l.eatline)for(;r<n&&e.line.chars[s[r]];)e.line.rowChars[s[r]]&&a++,r++;let i=s.substring(0,r),u=t.token("#CM",void 0,i,o);return o.sI+=i.length,o.cI=c,o.rI=a,u}for(let r of i)if(s.startsWith(r.start)){let n=s.length,i=r.start.length,u=r.end;for(c+=r.start.length;i<n&&!s.substring(i).startsWith(u);)e.line.rowChars[s[i]]&&(a++,c=0),c++,i++;if(s.substring(i).startsWith(u)){if(c+=u.length,r.eatline)for(;i<n&&e.line.chars[s[i]];)e.line.rowChars[s[i]]&&a++,i++;let l=s.substring(0,i+u.length),d=t.token("#CM",void 0,l,o);return o.sI+=l.length,o.rI=a,o.cI=c,d}return t.bad(l.S.unterminated_comment,o.sI,o.sI+9*r.start.length)}}},n.makeTextMatcher=(e,t)=>{let n=(0,l.regexp)(e.line.lex?null:"s","^(.*?)",...e.rePart.ender);return function(r){if(e.text.check){let t=e.text.check(r);if(t&&t.done)return t.token}let l=e.text,i=r.pnt,o=r.src.substring(i.sI),s=e.value.def,a=e.value.defre,u=o.match(n);if(u){let n,d=u[1],p=u[2];if(null!=d){let t=d.length;if(0<t){let c;if(e.value.lex)if(void 0!==(c=s[d]))n=r.token("#VL",c.val,d,i),i.sI+=t,i.cI+=t;else for(let e in a){let t=a[e];if(t.match){let e=t.match.exec(t.consume?o:d);if(e&&(t.consume||e[0].length===d.length)){let l=e[0];if(null==t.val)n=r.token("#VL",l,l,i);else{let o=t.val(e);n=r.token("#VL",o,l,i)}i.sI+=l.length,i.cI+=l.length}}}null==n&&l.lex&&(n=r.token("#TX",d,d,i),i.sI+=t,i.cI+=t)}}if(n&&(n=c(r,n,p)),n&&0<e.text.modify.length){const l=e.text.modify;for(let i=0;i<l.length;i++)n.val=l[i](n.val,r,e,t)}return n}}},n.makeNumberMatcher=(e,t)=>{let n=e.number,r=(0,l.regexp)(null,["^([-+]?(0(",[n.hex?"x[0-9a-fA-F_]+":null,n.oct?"o[0-7_]+":null,n.bin?"b[01_]+":null].filter(e=>null!=e).join("|"),")|\\.?[0-9]+([0-9_]*[0-9])?)","(\\.[0-9]?([0-9_]*[0-9])?)?","([eE][-+]?[0-9]+([0-9_]*[0-9])?)?"].join("").replace(/_/g,n.sep?(0,l.escre)(n.sepChar):""),")",...e.rePart.ender),i=n.sep?(0,l.regexp)("g",(0,l.escre)(n.sepChar)):void 0;return function(t){if(n=e.number,!n.lex)return;if(e.number.check){let n=e.number.check(t);if(n&&n.done)return n.token}let l=t.pnt,o=t.src.substring(l.sI),s=e.value.def,a=o.match(r);if(a){let n,r=a[1],o=a[9],u=!0;if(null!=r&&(u=!e.number.exclude||!r.match(e.number.exclude))){let o=r.length;if(0<o){let a;if(e.value.lex&&void 0!==(a=s[r]))n=t.token("#VL",a.val,r,l);else{let e=i?r.replace(i,""):r,s=+e;if(isNaN(s)){let t=e[0];"-"!==t&&"+"!==t||(s=("-"===t?-1:1)*+e.substring(1))}isNaN(s)||(n=t.token("#NR",s,r,l),l.sI+=o,l.cI+=o)}}}return u&&(n=c(t,n,o)),n}}},n.makeStringMatcher=(e,t)=>{let n=t.string||{};return e.string=e.string||{},e.string=(0,l.deep)(e.string,{lex:!!(null==n?void 0:n.lex),quoteMap:(0,l.charset)(n.chars),multiChars:(0,l.charset)(n.multiChars),escMap:{...n.escape},escChar:n.escapeChar,escCharCode:null==n.escapeChar?void 0:n.escapeChar.charCodeAt(0),allowUnknown:!!n.allowUnknown,replaceCodeMap:(0,l.omap)((0,l.clean)({...n.replace}),([e,t])=>[e.charCodeAt(0),t]),hasReplace:!1,abandon:!!n.abandon}),e.string.escMap=(0,l.clean)(e.string.escMap),e.string.hasReplace=0<(0,l.keys)(e.string.replaceCodeMap).length,function(t){let n=e.string;if(!n.lex)return;if(e.string.check){let n=e.string.check(t);if(n&&n.done)return n.token}let{quoteMap:i,escMap:o,escChar:s,escCharCode:a,multiChars:c,allowUnknown:u,replaceCodeMap:d,hasReplace:p}=n,{pnt:m,src:h}=t,{sI:f,rI:g,cI:k}=m,v=h.length;if(i[h[f]]){const i=h[f],b=f,x=g,y=c[i];++f,++k;let S,j=[];for(;f<v;f++){k++;let r=h[f];if(S=void 0,i===r){f++;break}if(s===r){f++,k++;let e=o[h[f]];if(null!=e)j.push(e);else if("x"===h[f]){f++;let e=parseInt(h.substring(f,f+2),16);if(isNaN(e)){if(n.abandon)return;return f-=2,k-=2,m.sI=f,m.cI=k,t.bad(l.S.invalid_ascii,f,f+4)}let r=String.fromCharCode(e);j.push(r),f+=1,k+=2}else if("u"===h[f]){f++;let e="{"===h[f]?(f++,1):0,r=e?6:4,i=parseInt(h.substring(f,f+r),16);if(isNaN(i)){if(n.abandon)return;return f=f-2-e,k-=2,m.sI=f,m.cI=k,t.bad(l.S.invalid_unicode,f,f+r+2+2*e)}let o=String.fromCodePoint(i);j.push(o),f+=r-1+e,k+=r+e}else{if(!u){if(n.abandon)return;return m.sI=f,m.cI=k-1,t.bad(l.S.unexpected,f,f+1)}j.push(h[f])}}else if(p&&void 0!==(S=d[h.charCodeAt(f)]))j.push(S),k++;else{let r=f,o=i.charCodeAt(0),s=h.charCodeAt(f);for(;(!p||void 0===(S=d[s]))&&f<v&&32<=s&&o!==s&&a!==s;)s=h.charCodeAt(++f),k++;if(k--,void 0===S&&s<32){if(!y||!e.line.chars[h[f]]){if(n.abandon)return;return m.sI=f,m.cI=k,t.bad(l.S.unprintable,f,f+1)}e.line.rowChars[h[f]]&&(m.rI=++g),k=1,j.push(h.substring(r,f+1))}else j.push(h.substring(r,f)),f--}}if(h[f-1]!==i||m.sI===f-1){if(n.abandon)return;return m.rI=x,t.bad(l.S.unterminated_string,b,f)}const O=t.token("#ST",j.join(r.EMPTY),h.substring(m.sI,f),m);return m.sI=f,m.rI=g,m.cI=k,O}}},n.makeLineMatcher=(e,t)=>function(t){if(!e.line.lex)return;if(e.line.check){let n=e.line.check(t);if(n&&n.done)return n.token}let n,{chars:r,rowChars:l}=e.line,{pnt:i,src:o}=t,{sI:s,rI:a}=i,c=e.line.single;for(c&&(n={});r[o[s]]&&!(n&&(n[o[s]]=(n[o[s]]||0)+1,c&&1<n[o[s]]));)a+=l[o[s]]?1:0,s++;if(i.sI<s){let e=o.substring(i.sI,s);const n=t.token("#LN",void 0,e,i);return i.sI+=e.length,i.rI=a,i.cI=1,n}},n.makeSpaceMatcher=(e,t)=>function(t){if(!e.space.lex)return;if(e.space.check){let n=e.space.check(t);if(n&&n.done)return n.token}let{chars:n}=e.space,{pnt:r,src:l}=t,{sI:i,cI:o}=r;for(;n[l[i]];)i++,o++;if(r.sI<i){let e=l.substring(r.sI,i);const n=t.token("#SP",void 0,e,r);return r.sI+=e.length,r.cI=o,n}};class u{constructor(e){this.src=r.EMPTY,this.ctx={},this.cfg={},this.pnt=o(-1),this.ctx=e,this.src=e.src(),this.cfg=e.cfg,this.pnt=o(this.src.length)}token(e,t,n,r,i,o){let s,c;return"string"==typeof e?(c=e,s=(0,l.tokenize)(c,this.cfg)):(s=e,c=(0,l.tokenize)(e,this.cfg)),a(c,s,t,n,r||this.pnt,i,o)}next(e,t,n,r){let i,o,s=this.pnt,a=s.sI;if(s.end)i=s.end;else if(0<s.token.length)i=s.token.shift();else if(s.len<=s.sI)s.end=this.token("#ZZ",void 0,"",s),i=s.end;else{try{for(let t of this.cfg.lex.match)if(i=t(this,e,r)){o=t;break}}catch(c){i=i||this.token("#BD",void 0,this.src[s.sI],s,{err:c},c.code||l.S.unexpected)}i=i||this.token("#BD",void 0,this.src[s.sI],s,void 0,l.S.unexpected)}return this.ctx.log&&this.ctx.log(l.S.lex,this.ctx,e,this,s,a,o,i,t,n,r),this.ctx.sub.lex&&this.ctx.sub.lex.map(t=>t(i,e,this.ctx)),i}tokenize(e){return(0,l.tokenize)(e,this.cfg)}bad(e,t,n){return this.token("#BD",void 0,0<=t&&t<=n?this.src.substring(t,n):this.src[this.pnt.sI],void 0,void 0,e)}}n.makeLex=(...e)=>new u(...e)})),r={};Object.defineProperty(r,"__esModule",{value:!0}),r.STRING=r.INSPECT=r.EMPTY=r.AFTER=r.BEFORE=r.CLOSE=r.OPEN=void 0,r.OPEN="o",r.CLOSE="c",r.BEFORE="b",r.AFTER="a",r.EMPTY="",r.INSPECT=Symbol.for("nodejs.util.inspect.custom"),r.STRING="string";var l={};Object.defineProperty(l,"__esModule",{value:!0}),l.defaults=void 0;const i=n({}),o={safe:{key:!0},tag:"-",fixed:{lex:!0,token:{"#OB":"{","#CB":"}","#OS":"[","#CS":"]","#CL":":","#CA":","}},match:{lex:!0,token:{}},tokenSet:{IGNORE:["#SP","#LN","#CM"],VAL:["#TX","#NR","#ST","#VL"],KEY:["#TX","#NR","#ST","#VL"]},space:{lex:!0,chars:" \t"},line:{lex:!0,chars:"\r\n",rowChars:"\n",single:!1},text:{lex:!0},number:{lex:!0,hex:!0,oct:!0,bin:!0,sep:"_",exclude:void 0},comment:{lex:!0,def:{hash:{line:!0,start:"#",lex:!0,eatline:!1},slash:{line:!0,start:"//",lex:!0,eatline:!1},multi:{line:!1,start:"/*",end:"*/",lex:!0,eatline:!1}}},string:{lex:!0,chars:"'\"`",multiChars:"`",escapeChar:"\\",escape:{b:"\b",f:"\f",n:"\n",r:"\r",t:"\t",v:"\v",'"':'"',"'":"'","`":"`","\\":"\\","/":"/"},allowUnknown:!0,abandon:!1},map:{extend:!0,merge:void 0},list:{property:!0},value:{lex:!0,def:{true:{val:!0},false:{val:!1},null:{val:null}}},ender:[],plugin:{},debug:{get_console:()=>console,maxlen:99,print:{config:!1,src:void 0}},error:{unknown:"unknown error: $code",unexpected:"unexpected character(s): $src",invalid_unicode:"invalid unicode escape: $src",invalid_ascii:"invalid ascii escape: $src",unprintable:"unprintable character: $src",unterminated_string:"unterminated string: $src",unterminated_comment:"unterminated comment: $src",unknown_rule:"unknown rule: $rulename"},hint:function(e=((e,t="replace")=>e[t](/[A-Z]/g,e=>" "+e.toLowerCase())[t](/[~%][a-z]/g,e=>("~"==e[0]?" ":"")+e[1].toUpperCase())),t="~sinceTheErrorIsUnknown,ThisIsProbablyABugInsideJsonic\nitself,OrAPlugin.~pleaseConsiderPostingAGithubIssue -Thanks!\n\n~code: $code,~details: \n$details|~theCharacter(s) $srcWereNotExpectedAtThisPointAsTheyDoNot\nmatchTheExpectedSyntax,EvenUnderTheRelaxedJsonicRules.~ifIt\nisNotObviouslyWrong,TheActualSyntaxErrorMayBeElsewhere.~try\ncommentingOutLargerAreasAroundThisPointUntilYouGetNoErrors,\nthenRemoveTheCommentsInSmallSectionsUntilYouFindThe\noffendingSyntax.~n%o%t%e:~alsoCheckIfAnyPluginsYouAreUsing\nexpectDifferentSyntaxInThisCase.|~theEscapeSequence $srcDoesNotEncodeAValidUnicodeCodePoint\nnumber.~youMayNeedToValidateYourStringDataManuallyUsingTest\ncodeToSeeHow~javaScriptWillInterpretIt.~alsoConsiderThatYour\ndataMayHaveBecomeCorrupted,OrTheEscapeSequenceHasNotBeen\ngeneratedCorrectly.|~theEscapeSequence $srcDoesNotEncodeAValid~a%s%c%i%iCharacter.~you\nmayNeedToValidateYourStringDataManuallyUsingTestCodeToSee\nhow~javaScriptWillInterpretIt.~alsoConsiderThatYourDataMay\nhaveBecomeCorrupted,OrTheEscapeSequenceHasNotBeenGenerated\ncorrectly.|~stringValuesCannotContainUnprintableCharacters (characterCodes\nbelow 32).~theCharacter $srcIsUnprintable.~youMayNeedToRemove\ntheseCharactersFromYourSourceData.~alsoCheckThatItHasNot\nbecomeCorrupted.|~thisStringHasNoEndQuote.|~thisCommentIsNeverClosed.|~noRuleNamed $rulenameIsDefined.~thisIsProbablyAnErrorInThe\ngrammarOfAPlugin.".split("|")){return"unknown|unexpected|invalid_unicode|invalid_ascii|unprintable|unterminated_string|unterminated_comment|unknown_rule".split("|").reduce((n,r,l)=>(n[r]=e(t[l]),n),{})},lex:{match:{match:{order:1e6,make:i.makeMatchMatcher},fixed:{order:2e6,make:i.makeFixedMatcher},space:{order:3e6,make:i.makeSpaceMatcher},line:{order:4e6,make:i.makeLineMatcher},string:{order:5e6,make:i.makeStringMatcher},comment:{order:6e6,make:i.makeCommentMatcher},number:{order:7e6,make:i.makeNumberMatcher},text:{order:8e6,make:i.makeTextMatcher}},empty:!0,emptyResult:void 0},parse:{prepare:{}},rule:{start:"val",finish:!0,maxmul:3,include:"",exclude:""},result:{fail:[]},config:{modify:{}},parser:{start:void 0}};l.defaults=o;var s={};Object.defineProperty(s,"__esModule",{value:!0}),s.makeRuleSpec=s.makeNoRule=s.makeRule=void 0;const a=t({});class c{constructor(e,t,n){this.i=-1,this.name=r.EMPTY,this.node=null,this.state=r.OPEN,this.n=Object.create(null),this.d=-1,this.u=Object.create(null),this.k=Object.create(null),this.bo=!1,this.ao=!1,this.bc=!1,this.ac=!1,this.os=0,this.cs=0,this.need=0,this.i=t.uI++,this.name=e.name,this.spec=e,this.child=t.NORULE,this.parent=t.NORULE,this.prev=t.NORULE,this.o0=t.NOTOKEN,this.o1=t.NOTOKEN,this.c0=t.NOTOKEN,this.c1=t.NOTOKEN,this.node=n,this.d=t.rsI,this.bo=null!=e.def.bo,this.ao=null!=e.def.ao,this.bc=null!=e.def.bc,this.ac=null!=e.def.ac}process(e,t){return this.spec.process(this,e,t,this.state)}eq(e,t=0){let n=this.n[e];return null==n||n===t}lt(e,t=0){let n=this.n[e];return null==n||n<t}gt(e,t=0){let n=this.n[e];return null==n||n>t}lte(e,t=0){let n=this.n[e];return null==n||n<=t}gte(e,t=0){let n=this.n[e];return null==n||n>=t}toString(){return"[Rule "+this.name+"~"+this.i+"]"}}const u=(...e)=>new c(...e);s.makeRule=u,s.makeNoRule=e=>u(g(e.cfg,{}),e);class d{constructor(){this.p=r.EMPTY,this.r=r.EMPTY,this.b=0}}const p=(...e)=>new d(...e),m=p(),h=p();class f{constructor(e,t){this.name=r.EMPTY,this.def={open:[],close:[],bo:[],bc:[],ao:[],ac:[],tcol:[]},this.cfg=e,this.def=Object.assign(this.def,t),this.def.open=(this.def.open||[]).filter(e=>null!=e),this.def.close=(this.def.close||[]).filter(e=>null!=e);for(let n of[...this.def.open,...this.def.close])k(n)}tin(e){return(0,a.tokenize)(e,this.cfg)}add(e,t,n){let r=(null==n?void 0:n.append)?"push":"unshift",l=((0,a.isarr)(t)?t:[t]).filter(e=>null!=e&&"object"==typeof e).map(e=>k(e)),i="o"===e?"open":"close",o=this.def[i];return o[r](...l),o=this.def[i]=(0,a.modlist)(o,n),(0,a.filterRules)(this,this.cfg),this.norm(),this}open(e,t){return this.add("o",e,t)}close(e,t){return this.add("c",e,t)}action(e,t,n,r){let l=this.def[t+n];return e?l.push(r):l.unshift(r),this}bo(e,t){return this.action(!t||!!e,r.BEFORE,r.OPEN,t||e)}ao(e,t){return this.action(!t||!!e,r.AFTER,r.OPEN,t||e)}bc(e,t){return this.action(!t||!!e,r.BEFORE,r.CLOSE,t||e)}ac(e,t){return this.action(!t||!!e,r.AFTER,r.CLOSE,t||e)}clear(){return this.def.open.length=0,this.def.close.length=0,this.def.bo.length=0,this.def.ao.length=0,this.def.bc.length=0,this.def.ac.length=0,this}norm(){this.def.open.map(e=>k(e)),this.def.close.map(e=>k(e));const e=[];function t(e,t,n){return n[e]=n[e]||[],[function(e,n){if(n.s&&n.s[t]){let r=[...new Set(e.concat(n.s[t]))];e.length=0,e.push(...r)}return e},n[e][t]=n[e][t]||[]]}return this.def.open.reduce(...t(0,0,e)),this.def.open.reduce(...t(0,1,e)),this.def.close.reduce(...t(1,0,e)),this.def.close.reduce(...t(1,1,e)),this.def.tcol=e,this}process(e,t,n,l){t.log&&t.log(a.S.rule,t,e,n);let i="o"===l,o=i?e:t.NORULE,s=i?"O":"C",c=this.def,d=i?c.open:c.close,p=i?e.bo?c.bo:null:e.bc?c.bc:null;if(p){let n;for(let r=0;r<p.length;r++)if(n=p[r].call(this,e,t,o,n),(null==n?void 0:n.isToken)&&(null==n?void 0:n.err))return this.bad(n,e,t,{is_open:i})}let f=0<d.length?function(e,t,n,l,i){let o=m;o.b=0,o.p=r.EMPTY,o.r=r.EMPTY,o.n=void 0,o.h=void 0,o.a=void 0,o.u=void 0,o.k=void 0,o.e=void 0;let s=null,c=0,u=!0,d=1<<i.cfg.t.AA-1,p=i.cfg.tokenSetTins.IGNORE;function h(e,t,r,l){let o;do{o=n.next(e,t,r,l),i.tC++}while(p[o.tin]);return o}let f=t.length;for(c=0;c<f;c++){s=t[c];let n=!1,r=!1;if(u=!0,s.S0){let e=(i.t0=i.NOTOKEN!==i.t0?i.t0:i.t0=h(l,s,c,0)).tin;if(n=!0,u=!!(s.S0[e/31|0]&(1<<e%31-1|d)),u&&(r=null!=s.S1,s.S1)){let e=(i.t1=i.NOTOKEN!==i.t1?i.t1:i.t1=h(l,s,c,1)).tin;r=!0,u=!!(s.S1[e/31|0]&(1<<e%31-1|d))}}if(e?(l.o0=n?i.t0:i.NOTOKEN,l.o1=r?i.t1:i.NOTOKEN,l.os=(n?1:0)+(r?1:0)):(l.c0=n?i.t0:i.NOTOKEN,l.c1=r?i.t1:i.NOTOKEN,l.cs=(n?1:0)+(r?1:0)),u&&s.c&&(u=u&&s.c(l,i,o)),u)break;s=null}u||(o.e=i.t0),s&&(o.n=null!=s.n?s.n:o.n,o.h=null!=s.h?s.h:o.h,o.a=null!=s.a?s.a:o.a,o.u=null!=s.u?s.u:o.u,o.k=null!=s.k?s.k:o.k,o.g=null!=s.g?s.g:o.g,o.e=s.e&&s.e(l,i,o)||void 0,o.p=null!=s.p&&!1!==s.p?"string"==typeof s.p?s.p:s.p(l,i,o):o.p,o.r=null!=s.r&&!1!==s.r?"string"==typeof s.r?s.r:s.r(l,i,o):o.r,o.b=null!=s.b&&!1!==s.b?"number"==typeof s.b?s.b:s.b(l,i,o):o.b);let g=c<t.length;return i.log&&i.log(a.S.parse,i,l,n,g,u,c,s,o),o}(i,d,n,e,t):h;if(f.h&&(f=f.h(e,t,f,o)||f,s+="H"),f.e)return this.bad(f.e,e,t,{is_open:i});if(f.n)for(let r in f.n)e.n[r]=0===f.n[r]?0:(null==e.n[r]?0:e.n[r])+f.n[r];if(f.u&&(e.u=Object.assign(e.u,f.u)),f.k&&(e.k=Object.assign(e.k,f.k)),f.a){s+="A";let n=f.a(e,t,f);if(n&&n.isToken&&n.err)return this.bad(n,e,t,{is_open:i})}if(f.p){t.rs[t.rsI++]=e;let n=t.rsm[f.p];if(!n)return this.bad(this.unknownRule(t.t0,f.p),e,t,{is_open:i});o=e.child=u(n,t,e.node),o.parent=e,o.n={...e.n},0<Object.keys(e.k).length&&(o.k={...e.k}),s+="P`"+f.p+"`"}else if(f.r){let n=t.rsm[f.r];if(!n)return this.bad(this.unknownRule(t.t0,f.r),e,t,{is_open:i});o=u(n,t,e.node),o.parent=e.parent,o.prev=e,o.n={...e.n},0<Object.keys(e.k).length&&(o.k={...e.k}),s+="R`"+f.r+"`"}else i||(o=t.rs[--t.rsI]||t.NORULE);let g=i?e.ao?c.ao:null:e.ac?c.ac:null;if(g){let n;for(let r=0;r<g.length;r++)if(n=g[r](e,t,o,n),(null==n?void 0:n.isToken)&&(null==n?void 0:n.err))return this.bad(n,e,t,{is_open:i})}o.why=s,t.log&&t.log(a.S.node,t,e,n,o),r.OPEN===e.state&&(e.state=r.CLOSE);let k=e[i?"os":"cs"]-(f.b||0);return 1===k?(t.v2=t.v1,t.v1=t.t0,t.t0=t.t1,t.t1=t.NOTOKEN):2==k&&(t.v2=t.t1,t.v1=t.t0,t.t0=t.NOTOKEN,t.t1=t.NOTOKEN),o}bad(e,t,n,r){throw new a.JsonicError(e.err||a.S.unexpected,{...e.use,state:r.is_open?a.S.open:a.S.close},e,t,n)}unknownRule(e,t){return e.err="unknown_rule",e.use=e.use||{},e.use.rulename=t,e}}const g=(...e)=>new f(...e);function k(e){if(r.STRING===typeof e.g?e.g=e.g.split(/\s*,\s*/):null==e.g&&(e.g=[]),e.g=e.g.sort(),e.s&&0!==e.s.length){const t=e=>e.flat().filter(e=>"number"==typeof e),n=(e,t)=>e.filter(e=>31*t<=e&&e<31*(t+1)),r=(e,t)=>e.reduce((e,n)=>1<<n-(31*t+1)|e,0),l=t([e.s[0]]),i=t([e.s[1]]),o=e;o.S0=0<l.length?new Array(Math.max(...l.map(e=>1+e/31|0))).fill(null).map((e,t)=>t).map(e=>r(n(l,e),e)):null,o.S1=0<i.length?new Array(Math.max(...i.map(e=>1+e/31|0))).fill(null).map((e,t)=>t).map(e=>r(n(i,e),e)):null}else e.s=null;return e.p||(e.p=null),e.r||(e.r=null),e.b||(e.b=null),e}s.makeRuleSpec=g;var v={};Object.defineProperty(v,"__esModule",{value:!0}),v.makeParser=v.makeRuleSpec=v.makeRule=void 0;const b=t({}),x=n({});Object.defineProperty(v,"makeRule",{enumerable:!0,get:function(){return s.makeRule}}),Object.defineProperty(v,"makeRuleSpec",{enumerable:!0,get:function(){return s.makeRuleSpec}});class y{constructor(e,t){this.rsm={},this.options=e,this.cfg=t}rule(e,t){if(null==e)return this.rsm;let n=this.rsm[e];if(null===t)delete this.rsm[e];else if(void 0!==t)return n=this.rsm[e]=this.rsm[e]||(0,s.makeRuleSpec)(this.cfg,{}),n=this.rsm[e]=t(this.rsm[e],this)||this.rsm[e],void(n.name=e);return n}start(e,t,n,l){let i,o=(0,x.makeToken)("#ZZ",(0,b.tokenize)("#ZZ",this.cfg),void 0,r.EMPTY,(0,x.makePoint)(-1)),a=(0,x.makeNoToken)(),c={uI:0,opts:this.options,cfg:this.cfg,meta:n||{},src:()=>e,root:()=>i,plgn:()=>t.internal().plugins,inst:()=>t,rule:{},sub:t.internal().sub,xs:-1,v2:o,v1:o,t0:a,t1:a,tC:-2,kI:-1,rs:[],rsI:0,rsm:this.rsm,log:void 0,F:(0,b.srcfmt)(this.cfg),u:{},NOTOKEN:a,NORULE:{}};c=(0,b.deep)(c,l);let u=(0,s.makeNoRule)(c);if(c.NORULE=u,c.rule=u,n&&b.S.function===typeof n.log&&(c.log=n.log),this.cfg.parse.prepare.forEach(e=>e(t,c,n)),""===e){if(this.cfg.lex.empty)return this.cfg.lex.emptyResult;throw new b.JsonicError(b.S.unexpected,{src:e},c.t0,u,c)}let d=(0,b.badlex)((0,x.makeLex)(c),(0,b.tokenize)("#BD",this.cfg),c),p=this.rsm[this.cfg.rule.start];if(null==p)return;let m=(0,s.makeRule)(p,c);i=m;let h=2*(0,b.keys)(this.rsm).length*d.src.length*2*c.cfg.rule.maxmul,f=0;for(;u!==m&&f<h;)c.kI=f,c.rule=m,c.log&&c.log("",c.kI+":"),c.sub.rule&&c.sub.rule.map(e=>e(m,c)),m=m.process(c,d),c.log&&c.log(b.S.stack,c,m,d),f++;if(o.tin!==d.next(m).tin)throw new b.JsonicError(b.S.unexpected,{},c.t0,u,c);const g=c.root().node;if(this.cfg.result.fail.includes(g))throw new b.JsonicError(b.S.unexpected,{},c.t0,u,c);return g}clone(e,t){let n=new y(e,t);return n.rsm=Object.keys(this.rsm).reduce((e,t)=>(e[t]=(0,b.filterRules)(this.rsm[t],this.cfg),e),{}),n.norm(),n}norm(){(0,b.values)(this.rsm).map(e=>e.norm())}}v.makeParser=(...e)=>new y(...e);var S={};function j(e){const{deep:t}=e.util,{OB:n,CB:r,OS:l,CS:i,CL:o,CA:s,TX:a,ST:c,ZZ:u}=e.token,{VAL:d,KEY:p}=e.tokenSet,m=(e,t)=>{if(!t.cfg.rule.finish)return t.t0.src="END_OF_SOURCE",t.t0},h=e=>{const t=e.o0,n=c===t.tin||a===t.tin?t.val:t.src;e.u.key=n};e.rule("val",e=>{e.bo(e=>e.node=void 0).open([{s:[n],p:"map",b:1,g:"map,json"},{s:[l],p:"list",b:1,g:"list,json"},{s:[d],g:"val,json"}]).close([{s:[u],g:"end,json"},{b:1,g:"more,json"}]).bc((e,t)=>{e.node=void 0===e.node?void 0===e.child.node?0===e.os?void 0:e.o0.resolveVal(e,t):e.child.node:e.node})}),e.rule("map",e=>{e.bo(e=>{e.node=Object.create(null)}).open([{s:[n,r],b:1,n:{pk:0},g:"map,json"},{s:[n],p:"pair",n:{pk:0},g:"map,json,pair"}]).close([{s:[r],g:"end,json"}])}),e.rule("list",e=>{e.bo(e=>{e.node=[]}).open([{s:[l,i],b:1,g:"list,json"},{s:[l],p:"elem",g:"list,elem,json"}]).close([{s:[i],g:"end,json"}])}),e.rule("pair",e=>{e.open([{s:[p,o],p:"val",u:{pair:!0},a:h,g:"map,pair,key,json"}]).bc((e,t)=>{e.u.pair&&(e.u.prev=e.node[e.u.key],e.node[e.u.key]=e.child.node)}).close([{s:[s],r:"pair",g:"map,pair,json"},{s:[r],b:1,g:"map,pair,json"}])}),e.rule("elem",e=>{e.open([{p:"val",g:"list,elem,val,json"}]).bc(e=>{!0!==e.u.done&&e.node.push(e.child.node)}).close([{s:[s],r:"elem",g:"list,elem,json"},{s:[i],b:1,g:"list,elem,json"}])});const f=(e,n)=>{let r=e.u.key,l=e.child.node;const i=e.u.prev;l=void 0===l?null:l,e.u.list&&n.cfg.safe.key&&("__proto__"===r||"constructor"===r)||(e.node[r]=null==i?l:n.cfg.map.merge?n.cfg.map.merge(i,l,e,n):n.cfg.map.extend?t(i,l):l)};e.rule("val",e=>{e.open([{s:[p,o],p:"map",b:2,n:{pk:1},g:"pair,jsonic"},{s:[d],g:"val,json"},{s:[[r,i]],b:1,c:e=>0<e.d,g:"val,imp,null,jsonic"},{s:[s],c:e=>0===e.d,p:"list",b:1,g:"list,imp,jsonic"},{s:[s],b:1,g:"list,val,imp,null,jsonic"},{s:[u],g:"jsonic"}],{append:!0,delete:[2]}).close([{s:[[r,i]],b:1,g:"val,json,close",e:(e,t)=>0===e.d?t.t0:void 0},{s:[s],c:e=>e.lte("dlist")&&e.lte("dmap"),r:"list",u:{implist:!0},g:"list,val,imp,comma,jsonic"},{c:e=>e.lte("dlist")&&e.lte("dmap"),r:"list",u:{implist:!0},g:"list,val,imp,space,jsonic",b:1},{s:[u],g:"jsonic"}],{append:!0,move:[1,-1]})}),e.rule("map",e=>{e.bo(e=>{e.n.dmap=1+(e.n.dmap?e.n.dmap:0)}).open([{s:[n,u],b:1,e:m,g:"end,jsonic"}]).open([{s:[p,o],p:"pair",b:2,g:"pair,list,val,imp,jsonic"}],{append:!0}).close([{s:[r],c:e=>e.lte("pk"),g:"end,json"},{s:[r],b:1,g:"path,jsonic"},{s:[[s,i,...d]],b:1,g:"end,path,jsonic"},{s:[u],e:m,g:"end,jsonic"}],{append:!0,delete:[0]})}),e.rule("list",e=>{e.bo(e=>{e.n.dlist=1+(e.n.dlist?e.n.dlist:0),e.prev.u.implist&&(e.node.push(e.prev.node),e.prev.node=e.node)}).open({c:e=>e.prev.u.implist,p:"elem"}).open([{s:[s],p:"elem",b:1,g:"list,elem,val,imp,jsonic"},{p:"elem",g:"list,elem.jsonic"}],{append:!0}).close([{s:[u],e:m,g:"end,jsonic"}],{append:!0})}),e.rule("pair",(e,t)=>{e.open([{s:[s],g:"map,pair,comma,jsonic"}],{append:!0}).bc((e,t)=>{e.u.pair&&f(e,t)}).close([{s:[r],c:e=>e.lte("pk"),b:1,g:"map,pair,json"},{s:[s,r],c:e=>e.lte("pk"),b:1,g:"map,pair,comma,jsonic"},{s:[s,u],g:"end,jsonic"},{s:[s],c:e=>e.lte("pk"),r:"pair",g:"map,pair,json"},{s:[s],c:e=>e.lte("dmap",1),r:"pair",g:"map,pair,jsonic"},{s:[p],c:e=>e.lte("dmap",1),r:"pair",b:1,g:"map,pair,imp,jsonic"},{s:[[r,s,i,...p]],c:e=>0<e.n.pk,b:1,g:"map,pair,imp,path,jsonic"},{s:[i],e:e=>e.c0,g:"end,jsonic"},{s:[u],e:m,g:"map,pair,json"},{r:"pair",b:1,g:"map,pair,imp,jsonic"}],{append:!0,delete:[0,1]})}),e.rule("elem",(e,t)=>{e.open([{s:[s,s],b:2,u:{done:!0},a:e=>e.node.push(null),g:"list,elem,imp,null,jsonic"},{s:[s],u:{done:!0},a:e=>e.node.push(null),g:"list,elem,imp,null,jsonic"},{s:[p,o],e:t.cfg.list.property?void 0:(e,t)=>t.t0,p:"val",n:{pk:1,dmap:1},u:{done:!0,pair:!0,list:!0},a:h,g:"elem,pair,jsonic"}]).bc((e,t)=>{!0===e.u.pair&&(e.u.prev=e.node[e.u.key],f(e,t))}).close([{s:[s,[i,u]],b:1,g:"list,elem,comma,jsonic"},{s:[s],r:"elem",g:"list,elem,json"},{s:[i],b:1,g:"list,elem,json"},{s:[u],e:m,g:"list,elem,json"},{s:[r],e:e=>e.c0,g:"end,jsonic"},{r:"elem",b:1,g:"list,elem,imp,jsonic"}],{delete:[-1,-2]})})}Object.defineProperty(S,"__esModule",{value:!0}),S.makeJSON=S.grammar=void 0,S.grammar=j,S.makeJSON=function(e){let t=e.make({grammar$:!1,text:{lex:!1},number:{hex:!1,oct:!1,bin:!1,sep:null,exclude:/^00+/},string:{chars:'"',multiChars:"",allowUnknown:!1,escape:{v:null}},comment:{lex:!1},map:{extend:!1},lex:{empty:!1},rule:{finish:!1,include:"json"},result:{fail:[void 0,NaN]},tokenSet:{KEY:["#ST",null,null,null]}});return j(t),t};var O={exports:{}};Object.defineProperty(O.exports,"__esModule",{value:!0}),O.exports.root=O.exports.S=O.exports.EMPTY=O.exports.AFTER=O.exports.BEFORE=O.exports.CLOSE=O.exports.OPEN=O.exports.makeTextMatcher=O.exports.makeNumberMatcher=O.exports.makeCommentMatcher=O.exports.makeStringMatcher=O.exports.makeLineMatcher=O.exports.makeSpaceMatcher=O.exports.makeFixedMatcher=O.exports.makeParser=O.exports.makeLex=O.exports.makeRuleSpec=O.exports.makeRule=O.exports.makePoint=O.exports.makeToken=O.exports.make=O.exports.util=O.exports.JsonicError=O.exports.Jsonic=void 0,Object.defineProperty(O.exports,"OPEN",{enumerable:!0,get:function(){return r.OPEN}}),Object.defineProperty(O.exports,"CLOSE",{enumerable:!0,get:function(){return r.CLOSE}}),Object.defineProperty(O.exports,"BEFORE",{enumerable:!0,get:function(){return r.BEFORE}}),Object.defineProperty(O.exports,"AFTER",{enumerable:!0,get:function(){return r.AFTER}}),Object.defineProperty(O.exports,"EMPTY",{enumerable:!0,get:function(){return r.EMPTY}});const E=t({});Object.defineProperty(O.exports,"JsonicError",{enumerable:!0,get:function(){return E.JsonicError}}),Object.defineProperty(O.exports,"S",{enumerable:!0,get:function(){return E.S}});const I=n({});Object.defineProperty(O.exports,"makePoint",{enumerable:!0,get:function(){return I.makePoint}}),Object.defineProperty(O.exports,"makeToken",{enumerable:!0,get:function(){return I.makeToken}}),Object.defineProperty(O.exports,"makeLex",{enumerable:!0,get:function(){return I.makeLex}}),Object.defineProperty(O.exports,"makeFixedMatcher",{enumerable:!0,get:function(){return I.makeFixedMatcher}}),Object.defineProperty(O.exports,"makeSpaceMatcher",{enumerable:!0,get:function(){return I.makeSpaceMatcher}}),Object.defineProperty(O.exports,"makeLineMatcher",{enumerable:!0,get:function(){return I.makeLineMatcher}}),Object.defineProperty(O.exports,"makeStringMatcher",{enumerable:!0,get:function(){return I.makeStringMatcher}}),Object.defineProperty(O.exports,"makeCommentMatcher",{enumerable:!0,get:function(){return I.makeCommentMatcher}}),Object.defineProperty(O.exports,"makeNumberMatcher",{enumerable:!0,get:function(){return I.makeNumberMatcher}}),Object.defineProperty(O.exports,"makeTextMatcher",{enumerable:!0,get:function(){return I.makeTextMatcher}}),Object.defineProperty(O.exports,"makeRule",{enumerable:!0,get:function(){return v.makeRule}}),Object.defineProperty(O.exports,"makeRuleSpec",{enumerable:!0,get:function(){return v.makeRuleSpec}}),Object.defineProperty(O.exports,"makeParser",{enumerable:!0,get:function(){return v.makeParser}});const T={tokenize:E.tokenize,srcfmt:E.srcfmt,clone:E.clone,charset:E.charset,trimstk:E.trimstk,makelog:E.makelog,badlex:E.badlex,extract:E.extract,errinject:E.errinject,errdesc:E.errdesc,configure:E.configure,parserwrap:E.parserwrap,mesc:E.mesc,escre:E.escre,regexp:E.regexp,prop:E.prop,str:E.str,clean:E.clean,deep:E.deep,omap:E.omap,keys:E.keys,values:E.values,entries:E.entries};function M(e,t){let n=!0;if("jsonic"===e)n=!1;else if("json"===e)return(0,S.makeJSON)(N);e="string"==typeof e?{}:e;let r={parser:null,config:null,plugins:[],sub:{lex:void 0,rule:void 0},mark:Math.random()},i=(0,E.deep)({},t?{...t.options}:!1===(null==e?void 0:e.defaults$)?{}:l.defaults,e||{}),o=function(e,t,n){var r;if(E.S.string===typeof e){let l=o.internal();return((null===(r=s.parser)||void 0===r?void 0:r.start)?(0,E.parserwrap)(s.parser):l.parser).start(e,o,t,n)}return e},s=e=>{if(null!=e&&E.S.object===typeof e){(0,E.deep)(i,e),(0,E.configure)(o,r.config,i);let t=o.internal().parser;r.parser=t.clone(i,r.config)}return{...o.options}},a={token:e=>(0,E.tokenize)(e,r.config,o),tokenSet:e=>(0,E.findTokenSet)(e,r.config),fixed:e=>r.config.fixed.ref[e],options:(0,E.deep)(s,i),config:()=>(0,E.deep)(r.config),parse:o,use:function(e,t){if(E.S.function!==typeof e)throw new Error("Jsonic.use: the first argument must be a function defining a plugin. See https://jsonic.senecajs.org/plugin");const n=e.name.toLowerCase(),r=(0,E.deep)({},e.defaults||{},t||{});o.options({plugin:{[n]:r}});let l=o.options.plugin[n];return o.internal().plugins.push(e),e.options=l,e(o,l)||o},rule:(e,t)=>o.internal().parser.rule(e,t)||o,make:e=>M(e,o),empty:e=>M({defaults$:!1,standard$:!1,grammar$:!1,...e||{}}),id:"Jsonic/"+Date.now()+"/"+(""+Math.random()).substring(2,8).padEnd(6,"0")+(null==s.tag?"":"/"+s.tag),toString:()=>a.id,sub:e=>(e.lex&&(r.sub.lex=r.sub.lex||[],r.sub.lex.push(e.lex)),e.rule&&(r.sub.rule=r.sub.rule||[],r.sub.rule.push(e.rule)),o),util:T};if((0,E.defprop)(a.make,E.S.name,{value:E.S.make}),n?(0,E.assign)(o,a):(0,E.assign)(o,{empty:a.empty,parse:a.parse,sub:a.sub,id:a.id,toString:a.toString}),(0,E.defprop)(o,"internal",{value:()=>r}),t){for(let n in t)void 0===o[n]&&(o[n]=t[n]);o.parent=t;let e=t.internal();r.config=(0,E.deep)({},e.config),(0,E.configure)(o,r.config,i),(0,E.assign)(o.token,r.config.t),r.plugins=[...e.plugins],r.parser=e.parser.clone(i,r.config)}else{let e={...o,...a};r.config=(0,E.configure)(e,void 0,i),r.plugins=[],r.parser=(0,v.makeParser)(i,r.config),!1!==i.grammar$&&(0,S.grammar)(e)}return o}let N;O.exports.util=T,O.exports.make=M,O.exports.root=N;let P=O.exports.root=N=M("jsonic");return O.exports.Jsonic=P,N.Jsonic=N,N.JsonicError=E.JsonicError,N.makeLex=I.makeLex,N.makeParser=v.makeParser,N.makeToken=I.makeToken,N.makePoint=I.makePoint,N.makeRule=v.makeRule,N.makeRuleSpec=v.makeRuleSpec,N.makeFixedMatcher=I.makeFixedMatcher,N.makeSpaceMatcher=I.makeSpaceMatcher,N.makeLineMatcher=I.makeLineMatcher,N.makeStringMatcher=I.makeStringMatcher,N.makeCommentMatcher=I.makeCommentMatcher,N.makeNumberMatcher=I.makeNumberMatcher,N.makeTextMatcher=I.makeTextMatcher,N.OPEN=r.OPEN,N.CLOSE=r.CLOSE,N.BEFORE=r.BEFORE,N.AFTER=r.AFTER,N.EMPTY=r.EMPTY,N.util=T,N.make=M,N.S=E.S,O.exports.default=P,O.exports=P,O.exports}))}).call(this)}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{}),e=e.exports;var t={exports:{}};(function(e){(function(){!function(n){"object"==typeof t.exports?t.exports=n():("undefined"!=typeof window?window:void 0!==e?e:"undefined"!=typeof self?self:this).JsonicDirective=n()}((function(){var e={};Object.defineProperty(e,"__esModule",{value:!0}),e.Directive=void 0;const t=e=>("string"==typeof e?e.split(/\s*,\s*/):e||[]).filter(e=>null!=e&&""!==e),n=(e,n)=>{var r,l;let i,o={open:t(null===(r=null==n?void 0:n.rules)||void 0===r?void 0:r.open),close:t(null===(l=null==n?void 0:n.rules)||void 0===l?void 0:l.close)},s=n.name,a=n.open,c=n.close,u=n.custom;if("string"==typeof n.action){let t=n.action;i=n=>n.node=e.util.prop(e.options,t)}else i=n.action;let d={},p="#OD_"+s,m="#CD_"+s,h=e.fixed(a),f=null==c?null:e.fixed(c);if(null!=h)throw new Error("Directive open token already in use: "+a);d[p]=a,null==f&&null!=c&&(d[m]=c),e.options({fixed:{token:d},error:{[s+"_close"]:null==c?null:"directive "+s+' close "'+c+'" without open "'+a+'"'},hint:{[s+"_close"]:null==c?null:`\nThe ${s} directive must start with the characters "${a}" and end\nwith the characters "${c}". The end characters "${c}" may not\nappear without the start characters "${a}" appearing first:\n"${a}...${c}".\n`}});let g=e.token.CA;h=e.fixed(a),f=null==c?null:e.fixed(c),o.open.forEach(t=>{e.rule(t,e=>(e.open({s:[h],p:s,n:{["dr_"+s]:1},g:"start"}),null!=c&&(e.open({s:[h,f],b:1,p:s,n:{["dr_"+s]:1},g:"start,end"}),e.close({s:[f],b:1,g:"end"})),e))}),null!=c&&o.close.forEach(t=>{e.rule(t,e=>{e.close([{s:[f],c:e=>1===e.n["dr_"+s],b:1,g:"end"},{s:[g,f],c:e=>1===e.n["dr_"+s],b:1,g:"end,comma"}])})}),e.rule(s,e=>e.clear().bo(e=>{e.node={}}).open([null!=c?{s:[f],b:1}:null,{p:"val",n:null==c?{dlist:1,dmap:1}:{dlist:0,dmap:0}}]).bc((function(e,t,n,r){let l=i.call(this,e,t,n,r);if(null==l?void 0:l.isToken)return l})).close(null!=c?[{s:[f]},{s:[g,f]}]:[])),u&&u(e,{OPEN:h,CLOSE:f,name:s})};return e.Directive=n,n.defaults={rules:{open:"val",close:"list,elem,map,pair"}},e}))}).call(this)}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{}),t=t.exports;var n={};Object.defineProperty(n,"__esModule",{value:!0}),n.makeJsonicProcessor=void 0,n.makeJsonicProcessor=function(){return function(e,t,n,r,l){null!=e.src&&null!=e.full&&(e.val=l(e.src,r.meta))}};var r={};Object.defineProperty(r,"__esModule",{value:!0}),r.makeJavaScriptProcessor=void 0,r.makeJavaScriptProcessor=function(e){const t=e=>{e.val=function(e,t){let n;return n=require(e.full),n=null!=n.default?n.default:n,n}(e)};return t.opts=e,t};var l={};Object.defineProperty(l,"__esModule",{value:!0}),l.TOP=l.NONE=l.resolvePathSpec=l.MultiSource=void 0,l.NONE="";const i=Symbol("TOP");l.TOP=i;const o=(e,n)=>{const r=n.markchar,l=n.resolver,o=n.processor,{deep:s}=e.util,a=n.implictExt||[];for(let t=0;t<a.length;t++){let e=a[t];a[t]=e.startsWith(".")?e:"."+e}e.options({error:{multisource_not_found:"source not found: $path"},hint:{multisource_not_found:"The source path $path was not found.\n\nSearch paths:\n${searchstr}"}});let c={name:"multisource",open:r,rules:{open:"val,pair"},action:function(t,r){var a,c;let u=t.parent.name,d=t.child.node,p=l(d,n,t,r,e);if(!p.found)return null===(a=t.parent)||void 0===a?void 0:a.o0.bad("multisource_not_found",{...p,searchstr:((null==p?void 0:p.search)||[p.full]).join("\n")});let m=null!=p.full?p.full:null!=p.path?p.path:"no-path";p.kind=null==p.kind?"":p.kind;let h=(null===(c=r.meta)||void 0===c?void 0:c.multisource)||{},f=h.parents||[];null!=h.path&&f.push(h.path);let g={...r.meta||{},fileName:p.path,multisource:{...h,parents:f,path:p.full}};if(h.deps){let e=h.deps,t=h.path||i;if(null!=t){let n={tar:t,src:m,wen:Date.now()};e[t]=e[t]||{},e[t][m]=n}}let k={...r,meta:g};(o[p.kind]||o[""])(p,n,t,k,e),"pair"===u?r.cfg.map.merge?t.parent.parent.node=r.cfg.map.merge(t.parent.parent.node,p.val,t,r):r.cfg.map.extend?t.parent.parent.node=s(t.parent.parent.node,p.val):Object.assign(t.parent.node,p.val):t.node=p.val},custom:(e,{OPEN:t,name:n})=>{e.rule("val",e=>{e.open({s:[t],c:e=>0===e.d,p:"map",b:1,n:{[n+"_top"]:1}})}),e.rule("map",e=>{e.open({s:[t],c:e=>1===e.d&&1===e.n[n+"_top"],p:"pair",b:1})})}};e.use(t.Directive,c)};function s(e){return t=>t.val=e(t.src,t)}l.MultiSource=o;const a=s(e=>e),c=e.Jsonic.make("json"),u=s((e,t)=>null==e?void 0:c(e,{fileName:t.path})),d=(0,n.makeJsonicProcessor)(),p=(0,r.makeJavaScriptProcessor)();return o.defaults={markchar:"@",processor:{"":a,jsonic:d,jsc:d,json:u,js:p},implictExt:["jsonic","jsc","json","js"]},l.resolvePathSpec=function(e,t,n,r){var l;let i=null===(l=t.meta)||void 0===l?void 0:l.multisource,o=r(null==i||null==i.path?e.path:i.path),s="string"==typeof n?n:null!=n.path?""+n.path:void 0,a=!(!(null==s?void 0:s.startsWith("/"))&&!(null==s?void 0:s.startsWith("\\"))),c=a?s:null!=s&&""!=s?null!=o&&""!=o?o+"/"+s:s:void 0;return{kind:null==c?"":(c.match(/\.([^.]*)$/)||["",""])[1],path:s,full:c,base:o,abs:a,found:!1}},l}));
!function(e){if("object"==typeof exports&&"undefined"!=typeof module)module.exports=e();else if("function"==typeof define&&define.amd)define([],e);else{("undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this).JsonicMultiSource=e()}}((function(){var e={exports:{}};(function(t){(function(){!function(n){"object"==typeof e.exports?e.exports=n():("undefined"!=typeof window?window:void 0!==t?t:"undefined"!=typeof self?self:this).Jsonic=n()}((function(){var e=function(e){var t;return function(n){return t||e(t={exports:{},parent:n},t.exports),t.exports}},t=e((function(e,t){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.modlist=t.findTokenSet=t.values=t.keys=t.omap=t.str=t.prop=t.parserwrap=t.trimstk=t.tokenize=t.srcfmt=t.snip=t.regexp=t.mesc=t.makelog=t.isarr=t.filterRules=t.extract=t.escre=t.errinject=t.errdesc=t.entries=t.defprop=t.deep=t.configure=t.clone=t.clean=t.charset=t.badlex=t.assign=t.S=t.JsonicError=void 0;const l=n({}),i=e=>null==e?[]:Object.keys(e);t.keys=i;const o=e=>null==e?[]:Object.values(e);t.values=o;const s=e=>null==e?[]:Object.entries(e);t.entries=s;const a=(e,...t)=>Object.assign(null==e?{}:e,...t);t.assign=a,t.isarr=e=>Array.isArray(e);const c=Object.defineProperty;t.defprop=c;const u=(e,t)=>Object.entries(e||{}).reduce((e,n)=>{let r=t?t(n):n;void 0===r[0]?delete e[n[0]]:e[r[0]]=r[1];let l=2;for(;void 0!==r[l];)e[r[l]]=r[l+1],l+=2;return e},{});t.omap=u;const d={indent:". ",logindent:" ",space:" ",gap:" ",Object:"Object",Array:"Array",object:"object",string:"string",function:"function",unexpected:"unexpected",map:"map",list:"list",elem:"elem",pair:"pair",val:"val",node:"node",no_re_flags:r.EMPTY,unprintable:"unprintable",invalid_ascii:"invalid_ascii",invalid_unicode:"invalid_unicode",invalid_lex_state:"invalid_lex_state",unterminated_string:"unterminated_string",unterminated_comment:"unterminated_comment",lex:"lex",parse:"parse",error:"error",none:"none",imp_map:"imp,map",imp_list:"imp,list",imp_null:"imp,null",end:"end",open:"open",close:"close",rule:"rule",stack:"stack",nUll:"null",name:"name",make:"make",colon:":"};t.S=d;class p extends SyntaxError{constructor(e,t,n,r,l){let i=x(e,t=g({},t),n,r,l);super(i.message),a(this,i),v(this)}toJSON(){return{...this,__error:!0,name:this.name,message:this.message,stack:this.stack}}}function m(e,t,n){let l=t.t,i=l[e];return null==i&&r.STRING===typeof e&&(i=t.tI++,l[i]=e,l[e]=i,l[e.substring(1)]=i,null!=n&&a(n.token,t.t)),i}function h(e,...t){return new RegExp(t.map(e=>e.esc?f(e.toString()):e).join(r.EMPTY),null==e?"":e)}function f(e){return null==e?"":e.replace(/[-\\|\]{}()[^$+*?.!=]/g,"\\$&").replace(/\t/g,"\\t").replace(/\r/g,"\\r").replace(/\n/g,"\\n")}function g(e,...t){let n=d.function===typeof e,r=null!=e&&(d.object===typeof e||n);for(let l of t){let t,i=d.function===typeof l,o=null!=l&&(d.object===typeof l||i);if(r&&o&&!i&&Array.isArray(e)===Array.isArray(l))for(let n in l)e[n]=g(e[n],l[n]);else e=void 0===l?e:i?l:o?d.function===typeof(t=l.constructor)&&d.Object!==t.name&&d.Array!==t.name?l:g(Array.isArray(l)?[]:{},l):l,n=d.function===typeof e,r=null!=e&&(d.object===typeof e||n)}return e}function k(e,t,n,r,l,i){let o={code:t,details:n,token:r,rule:l,ctx:i};return null==e?"":e.replace(/\$(\{?)([\w_0-9]+)(\}?)/g,(e,t,s,a)=>{let c=null!=o[s]?o[s]:null!=n[s]?n[s]:i.meta&&null!=i.meta[s]?i.meta[s]:null!=r[s]?r[s]:null!=l[s]?l[s]:null!=i.opts[s]?i.opts[s]:null!=i.cfg[s]?i.cfg[s]:null!=i[s]?i[s]:"$"+s,u=t&&a?c:JSON.stringify(c);return u=null==u?"":u,u.replace(/\n/g,"\n ")})}function v(e){e.stack&&(e.stack=e.stack.split("\n").filter(e=>!e.includes("jsonic/jsonic")).map(e=>e.replace(/ at /,"at ")).join("\n"))}function b(e,t,n){let l=0<n.sI?n.sI:0,i=0<n.rI?n.rI:1,o=0<n.cI?n.cI:1,s=null==n.src?r.EMPTY:n.src,a=e.substring(Math.max(0,l-333),l).split("\n"),c=e.substring(l,l+333).split("\n"),u=2+(r.EMPTY+(i+2)).length,d=i<3?1:i-2,p=e=>"\x1b[34m"+(r.EMPTY+d++).padStart(u," ")+" | \x1b[0m"+(null==e?r.EMPTY:e),m=a.length;return[2<m?p(a[m-3]):null,1<m?p(a[m-2]):null,p(a[m-1]+c[0])," ".repeat(u)+" "+" ".repeat(o-1)+"\x1b[31m"+"^".repeat(s.length||1)+" "+t+"\x1b[0m",p(c[1]),p(c[2])].filter(e=>null!=e).join("\n")}function x(e,t,n,r,l){var i,o,s;try{let a=l.cfg,c=l.meta,u=k(a.error[e]||(null===(i=null==t?void 0:t.use)||void 0===i?void 0:i.err)&&(t.use.err.code||t.use.err.message)||a.error.unknown,e,t,n,r,l);d.function===typeof a.hint&&(a.hint={...a.hint(),...a.hint});let p=["\x1b[31m[jsonic/"+e+"]:\x1b[0m "+u," \x1b[34m--\x3e\x1b[0m "+(c&&c.fileName||"<no-file>")+":"+n.rI+":"+n.cI,b(l.src(),u,n),"",k((a.hint[e]||(null===(s=null===(o=t.use)||void 0===o?void 0:o.err)||void 0===s?void 0:s.message)||a.hint.unknown||"").trim().split("\n").map(e=>" "+e).join("\n"),e,t,n,r,l),""," \x1b[2mhttps://jsonic.senecajs.org\x1b[0m"," \x1b[2m--internal: rule="+r.name+"~"+r.state+"; token="+m(n.tin,l.cfg)+(null==n.why?"":"~"+n.why)+"; plugins="+l.plgn().map(e=>e.name).join(",")+"--\x1b[0m\n"].join("\n"),h={internal:{token:n,ctx:l}};return h={...Object.create(h),message:p,code:e,details:t,meta:c,fileName:c?c.fileName:void 0,lineNumber:n.rI,columnNumber:n.cI},h}catch(a){return console.log(a),{}}}function y(e){return"function"==typeof e.debug.print.src?e.debug.print.src:t=>{let n=null==t?r.EMPTY:Array.isArray(t)?JSON.stringify(t).replace(/]$/,s(t).filter(e=>isNaN(e[0])).map((e,t)=>(0===t?", ":"")+e[0]+": "+JSON.stringify(e[1]))+"]"):JSON.stringify(t);return n=n.substring(0,e.debug.maxlen)+(e.debug.maxlen<n.length?"...":r.EMPTY),n}}function S(e,t=44){let n;try{n="object"==typeof e?JSON.stringify(e):""+e}catch(r){n=""+e}return j(t<n.length?n.substring(0,t-3)+"...":n,t)}function j(e,t=5){return void 0===e?"":(""+e).substring(0,t).replace(/[\r\n\t]/g,".")}function O(...e){return null==e?{}:e.filter(e=>!1!==e).map(e=>"object"==typeof e?i(e).join(r.EMPTY):e).join(r.EMPTY).split(r.EMPTY).reduce((e,t)=>(e[t]=t.charCodeAt(0),e),{})}function E(e){for(let t in e)null==e[t]&&delete e[t];return e}t.JsonicError=p,t.configure=function(e,t,n){var r,l,c,d,p,g,k,v,b,x,y,S,j,I,T,M,N,P,w,C,_,R,A,L,$,Y,J,F,U,B,D,K,V,z,G,W,Z,q,H,X,Q,ee,te,ne,re,le,ie,oe,se,ae;const ce=t||{};ce.t=ce.t||{},ce.tI=ce.tI||1;const ue=e=>m(e,ce);!1!==n.standard$&&(ue("#BD"),ue("#ZZ"),ue("#UK"),ue("#AA"),ue("#SP"),ue("#LN"),ue("#CM"),ue("#NR"),ue("#ST"),ue("#TX"),ue("#VL")),ce.safe={key:!1!==(null===(r=n.safe)||void 0===r?void 0:r.key)},ce.fixed={lex:!!(null===(l=n.fixed)||void 0===l?void 0:l.lex),token:n.fixed?u(E(n.fixed.token),([e,t])=>[t,m(e,ce)]):{},ref:void 0,check:null===(c=n.fixed)||void 0===c?void 0:c.check},ce.fixed.ref=u(ce.fixed.token,([e,t])=>[e,t]),ce.fixed.ref=Object.assign(ce.fixed.ref,u(ce.fixed.ref,([e,t])=>[t,e])),ce.match={lex:!!(null===(d=n.match)||void 0===d?void 0:d.lex),value:n.match?u(E(n.match.value),([e,t])=>[e,t]):{},token:n.match?u(E(n.match.token),([e,t])=>[m(e,ce),t]):{},check:null===(p=n.match)||void 0===p?void 0:p.check},u(ce.match.token,([e,t])=>[e,(t.tin$=+e,t)]);const de=n.tokenSet?Object.keys(n.tokenSet).reduce((e,t)=>(e[t]=n.tokenSet[t].filter(e=>null!=e).map(e=>ue(e)),e),{}):{};ce.tokenSet=ce.tokenSet||{},s(de).map(e=>{let t=e[0],n=e[1];ce.tokenSet[t]?(ce.tokenSet[t].length=0,ce.tokenSet[t].push(...n)):ce.tokenSet[t]=n}),ce.tokenSetTins=s(ce.tokenSet).reduce((e,t)=>(e[t[0]]=e[t[0]]||{},t[1].map(n=>e[t[0]][n]=!0),e),{}),ce.tokenSetTins.IGNORE=ce.tokenSetTins.IGNORE||{},ce.space={lex:!!(null===(g=n.space)||void 0===g?void 0:g.lex),chars:O(null===(k=n.space)||void 0===k?void 0:k.chars),check:null===(v=n.space)||void 0===v?void 0:v.check},ce.line={lex:!!(null===(b=n.line)||void 0===b?void 0:b.lex),chars:O(null===(x=n.line)||void 0===x?void 0:x.chars),rowChars:O(null===(y=n.line)||void 0===y?void 0:y.rowChars),single:!!(null===(S=n.line)||void 0===S?void 0:S.single),check:null===(j=n.line)||void 0===j?void 0:j.check},ce.text={lex:!!(null===(I=n.text)||void 0===I?void 0:I.lex),modify:((null===(T=ce.text)||void 0===T?void 0:T.modify)||[]).concat(([null===(M=n.text)||void 0===M?void 0:M.modify]||[]).flat()).filter(e=>null!=e),check:null===(N=n.text)||void 0===N?void 0:N.check},ce.number={lex:!!(null===(P=n.number)||void 0===P?void 0:P.lex),hex:!!(null===(w=n.number)||void 0===w?void 0:w.hex),oct:!!(null===(C=n.number)||void 0===C?void 0:C.oct),bin:!!(null===(_=n.number)||void 0===_?void 0:_.bin),sep:null!=(null===(R=n.number)||void 0===R?void 0:R.sep)&&""!==n.number.sep,exclude:null===(A=n.number)||void 0===A?void 0:A.exclude,sepChar:null===(L=n.number)||void 0===L?void 0:L.sep,check:null===($=n.number)||void 0===$?void 0:$.check},ce.value={lex:!!(null===(Y=n.value)||void 0===Y?void 0:Y.lex),def:s((null===(J=n.value)||void 0===J?void 0:J.def)||{}).reduce((e,t)=>(null==t[1]||!1===t[1]||t[1].match||(e[t[0]]=t[1]),e),{}),defre:s((null===(F=n.value)||void 0===F?void 0:F.def)||{}).reduce((e,t)=>(t[1]&&t[1].match&&(e[t[0]]=t[1],e[t[0]].consume=!!e[t[0]].consume),e),{})},ce.rule={start:null==(null===(U=n.rule)||void 0===U?void 0:U.start)?"val":n.rule.start,maxmul:null==(null===(B=n.rule)||void 0===B?void 0:B.maxmul)?3:n.rule.maxmul,finish:!!(null===(D=n.rule)||void 0===D?void 0:D.finish),include:(null===(K=n.rule)||void 0===K?void 0:K.include)?n.rule.include.split(/\s*,+\s*/).filter(e=>""!==e):[],exclude:(null===(V=n.rule)||void 0===V?void 0:V.exclude)?n.rule.exclude.split(/\s*,+\s*/).filter(e=>""!==e):[]},ce.map={extend:!!(null===(z=n.map)||void 0===z?void 0:z.extend),merge:null===(G=n.map)||void 0===G?void 0:G.merge},ce.list={property:!!(null===(W=n.list)||void 0===W?void 0:W.property)};let pe=Object.keys(ce.fixed.token).sort((e,t)=>t.length-e.length).map(e=>f(e)).join("|"),me=(null===(Z=n.comment)||void 0===Z?void 0:Z.lex)?(n.comment.def?o(n.comment.def):[]).filter(e=>e&&e.lex).map(e=>f(e.start)).join("|"):"",he=["([",f(i(O(ce.space.lex&&ce.space.chars,ce.line.lex&&ce.line.chars)).join("")),"]",("string"==typeof n.ender?n.ender.split(""):Array.isArray(n.ender)?n.ender:[]).map(e=>"|"+f(e)).join(""),""===pe?"":"|",pe,""===me?"":"|",me,"|$)"];return ce.rePart={fixed:pe,ender:he,commentStart:me},ce.re={ender:h(null,...he),rowChars:h(null,f(null===(q=n.line)||void 0===q?void 0:q.rowChars)),columns:h(null,"["+f(null===(H=n.line)||void 0===H?void 0:H.chars)+"]","(.*)$")},ce.lex={empty:!!(null===(X=n.lex)||void 0===X?void 0:X.empty),emptyResult:null===(Q=n.lex)||void 0===Q?void 0:Q.emptyResult,match:(null===(ee=n.lex)||void 0===ee?void 0:ee.match)?s(n.lex.match).reduce((e,t)=>{let r=t[0],l=t[1];if(l){let t=l.make(ce,n);t&&(t.matcher=r,t.make=l.make,t.order=l.order),e.push(t)}return e},[]).filter(e=>null!=e&&!1!==e&&-1<+e.order).sort((e,t)=>e.order-t.order):[]},ce.parse={prepare:o(null===(te=n.parse)||void 0===te?void 0:te.prepare)},ce.debug={get_console:(null===(ne=n.debug)||void 0===ne?void 0:ne.get_console)||(()=>console),maxlen:null==(null===(re=n.debug)||void 0===re?void 0:re.maxlen)?99:n.debug.maxlen,print:{config:!!(null===(ie=null===(le=n.debug)||void 0===le?void 0:le.print)||void 0===ie?void 0:ie.config),src:null===(se=null===(oe=n.debug)||void 0===oe?void 0:oe.print)||void 0===se?void 0:se.src}},ce.error=n.error||{},ce.hint=n.hint||{},(null===(ae=n.config)||void 0===ae?void 0:ae.modify)&&i(n.config.modify).forEach(e=>n.config.modify[e](ce,n)),ce.debug.print.config&&ce.debug.get_console().dir(ce,{depth:null}),ce.result={fail:[]},n.result&&(ce.result.fail=[...n.result.fail]),a(e.options,n),a(e.token,ce.t),a(e.tokenSet,ce.tokenSet),a(e.fixed,ce.fixed.ref),ce},t.tokenize=m,t.findTokenSet=function(e,t){return t.tokenSet[e]},t.mesc=function(e,t){return(t=new String(e)).esc=!0,t},t.regexp=h,t.escre=f,t.deep=g,t.errinject=k,t.trimstk=v,t.extract=b,t.errdesc=x,t.badlex=function(e,t,n){let r=e.next.bind(e);return e.next=(e,l,i,o)=>{let s=r(e,l,i,o);if(t===s.tin){let t={};throw null!=s.use&&(t.use=s.use),new p(s.why||d.unexpected,t,s,e,n)}return s},e},t.makelog=function(e,t){var n,r,l;let i=null===(l=null===(r=null===(n=e.opts)||void 0===n?void 0:n.plugin)||void 0===r?void 0:r.debug)||void 0===l?void 0:l.trace;if(t||i)if("number"==typeof(null==t?void 0:t.log)||i){let n=!1,r=null==t?void 0:t.log;(-1===r||i)&&(r=1,n=!0),e.log=(...t)=>{if(n){let n=t.filter(e=>d.object!=typeof e).map(e=>d.function==typeof e?e.name:e).join(d.gap);e.cfg.debug.get_console().log(n)}else e.cfg.debug.get_console().dir(t,{depth:r})}}else"function"==typeof t.log&&(e.log=t.log);return e.log},t.srcfmt=y,t.str=S,t.snip=j,t.clone=function(e){return g(Object.create(Object.getPrototypeOf(e)),e)},t.charset=O,t.clean=E,t.filterRules=function(e,t){let n=["open","close"];for(let r of n)e.def[r]=e.def[r].map(e=>(e.g="string"==typeof e.g?(e.g||"").split(/\s*,+\s*/):e.g||[],e)).filter(e=>t.rule.include.reduce((t,n)=>t||null!=e.g&&-1!==e.g.indexOf(n),0===t.rule.include.length)).filter(e=>t.rule.exclude.reduce((t,n)=>t&&(null==e.g||-1===e.g.indexOf(n)),!0));return e},t.prop=function(e,t,n){let r=e;try{let r,l=t.split(".");for(let t=0;t<l.length;t++)r=l[t],t<l.length-1&&(e=e[r]=e[r]||{});return void 0!==n&&(e[r]=n),e[r]}catch(l){throw new Error("Cannot "+(void 0===n?"get":"set")+" path "+t+" on object: "+S(r)+(void 0===n?"":" to value: "+S(n,22)))}},t.modlist=function(e,t){if(t&&e){if(0<e.length){if(t.delete&&0<t.delete.length)for(let r=0;r<t.delete.length;r++){let n=t.delete[r];(n<0?-1*n<=e.length:n<e.length)&&(e[(e.length+n)%e.length]=null)}if(t.move)for(let r=0;r<t.move.length;r+=2){let n=(e.length+t.move[r])%e.length,l=(e.length+t.move[r+1])%e.length,i=e[n];e.splice(n,1),e.splice(l,0,i)}let n=e.filter(e=>null!=e);n.length!==e.length&&(e.length=0,e.push(...n))}if(t.custom){let n=t.custom(e);null!=n&&(e=n)}}return e},t.parserwrap=function(e){return{start:function(t,n,i,o){try{return e.start(t,n,i,o)}catch(s){if("SyntaxError"===s.name){let o=0,a=0,c=0,u=r.EMPTY,d=s.message.match(/^Unexpected token (.) .*position\s+(\d+)/i);if(d){u=d[1],o=parseInt(d[2]),a=t.substring(0,o).replace(/[^\n]/g,r.EMPTY).length;let e=o-1;for(;-1<e&&"\n"!==t.charAt(e);)e--;c=Math.max(t.substring(e,o).length,0)}let h=s.token||(0,l.makeToken)("#UK",m("#UK",n.internal().config),void 0,u,(0,l.makePoint)(u.length,o,s.lineNumber||a,s.columnNumber||c));throw new p(s.code||"json",s.details||{msg:s.message},h,{},s.ctx||{uI:-1,opts:n.options,cfg:n.internal().config,token:h,meta:i,src:()=>t,root:()=>{},plgn:()=>n.internal().plugins,inst:()=>n,rule:{name:"no-rule"},sub:{},xs:-1,v2:h,v1:h,t0:h,t1:h,tC:-1,kI:-1,rs:[],rsI:0,rsm:{},n:{},log:i?i.log:void 0,F:y(n.internal().config),u:{},NORULE:{name:"no-rule"},NOTOKEN:{name:"no-token"}})}throw s}}}}})),n=e((function(e,n){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.makeTextMatcher=n.makeNumberMatcher=n.makeCommentMatcher=n.makeStringMatcher=n.makeLineMatcher=n.makeSpaceMatcher=n.makeFixedMatcher=n.makeMatchMatcher=n.makeToken=n.makePoint=n.makeLex=n.makeNoToken=void 0;const l=t({});class i{constructor(e,t,n,r){this.len=-1,this.sI=0,this.rI=1,this.cI=1,this.token=[],this.len=e,null!=t&&(this.sI=t),null!=n&&(this.rI=n),null!=r&&(this.cI=r)}toString(){return"Point["+[this.sI+"/"+this.len,this.rI,this.cI]+(0<this.token.length?" "+this.token:"")+"]"}[r.INSPECT](){return this.toString()}}const o=(...e)=>new i(...e);n.makePoint=o;class s{constructor(e,t,n,l,i,o,s){this.isToken=!0,this.name=r.EMPTY,this.tin=-1,this.val=void 0,this.src=r.EMPTY,this.sI=-1,this.rI=-1,this.cI=-1,this.len=-1,this.name=e,this.tin=t,this.src=l,this.val=n,this.sI=i.sI,this.rI=i.rI,this.cI=i.cI,this.use=o,this.why=s,this.len=null==l?0:l.length}resolveVal(e,t){return"function"==typeof this.val?this.val(e,t):this.val}bad(e,t){return this.err=e,null!=t&&(this.use=(0,l.deep)(this.use||{},t)),this}toString(){return"Token["+this.name+"="+this.tin+" "+(0,l.snip)(this.src)+(void 0===this.val||"#ST"===this.name||"#TX"===this.name?"":"="+(0,l.snip)(this.val))+" "+[this.sI,this.rI,this.cI]+(null==this.use?"":" "+(0,l.snip)(""+JSON.stringify(this.use).replace(/"/g,""),22))+(null==this.err?"":" "+this.err)+(null==this.why?"":" "+(0,l.snip)(""+this.why,22))+"]"}[r.INSPECT](){return this.toString()}}const a=(...e)=>new s(...e);function c(e,t,n){let r=e.pnt,l=t;if(e.cfg.fixed.lex&&null!=n&&0<n.length){let i,o=e.cfg.fixed.token[n];null!=o&&(i=e.token(o,void 0,n,r)),null!=i&&(r.sI+=i.src.length,r.cI+=i.src.length,null==t?l=i:r.token.push(i))}return l}n.makeToken=a,n.makeNoToken=()=>a("",-1,void 0,r.EMPTY,o(-1)),n.makeFixedMatcher=(e,t)=>{let n=(0,l.regexp)(null,"^(",e.rePart.fixed,")");return function(t){let r=e.fixed;if(!r.lex)return;if(e.fixed.check){let n=e.fixed.check(t);if(n&&n.done)return n.token}let l=t.pnt,i=t.src.substring(l.sI).match(n);if(i){let e=i[1],n=e.length;if(0<n){let i,o=r.token[e];return null!=o&&(i=t.token(o,void 0,e,l),l.sI+=n,l.cI+=n),i}}}},n.makeMatchMatcher=(e,t)=>{let n=(0,l.values)(e.match.value),r=(0,l.values)(e.match.token);return 0===n.length&&0===r.length?null:function(t,l,i=0){if(!e.match.lex)return;if(e.match.check){let n=e.match.check(t);if(n&&n.done)return n.token}let o=t.pnt,s=t.src.substring(o.sI),a="o"===l.state?0:1;for(let e of n)if(e.match instanceof RegExp){let n=s.match(e.match);if(n){let r=n[0],l=r.length;if(0<l){let i,s=e.val?e.val(n):r;return i=t.token("#VL",s,r,o),o.sI+=l,o.cI+=l,i}}}else{let n=e.match(t,l);if(null!=n)return n}for(let e of r)if(!e.tin$||l.spec.def.tcol[a][i].includes(e.tin$))if(e instanceof RegExp){let n=s.match(e);if(n){let r=n[0],l=r.length;if(0<l){let n,i=e.tin$;return n=t.token(i,r,r,o),o.sI+=l,o.cI+=l,n}}}else{let n=e(t,l);if(null!=n)return n}}},n.makeCommentMatcher=(e,t)=>{let n=t.comment;e.comment={lex:!!n&&!!n.lex,def:((null==n?void 0:n.def)?(0,l.entries)(n.def):[]).reduce((e,[t,n])=>{if(null==n||!1===n)return e;let r={name:t,start:n.start,end:n.end,line:!!n.line,lex:!!n.lex,eatline:!!n.eatline};return e[t]=r,e},{})};let r=e.comment.lex?(0,l.values)(e.comment.def).filter(e=>e.lex&&e.line):[],i=e.comment.lex?(0,l.values)(e.comment.def).filter(e=>e.lex&&!e.line):[];return function(t,n){if(!e.comment.lex)return;if(e.comment.check){let n=e.comment.check(t);if(n&&n.done)return n.token}let o=t.pnt,s=t.src.substring(o.sI),a=o.rI,c=o.cI;for(let l of r)if(s.startsWith(l.start)){let n=s.length,r=l.start.length;for(c+=l.start.length;r<n&&!e.line.chars[s[r]];)c++,r++;if(l.eatline)for(;r<n&&e.line.chars[s[r]];)e.line.rowChars[s[r]]&&a++,r++;let i=s.substring(0,r),u=t.token("#CM",void 0,i,o);return o.sI+=i.length,o.cI=c,o.rI=a,u}for(let r of i)if(s.startsWith(r.start)){let n=s.length,i=r.start.length,u=r.end;for(c+=r.start.length;i<n&&!s.substring(i).startsWith(u);)e.line.rowChars[s[i]]&&(a++,c=0),c++,i++;if(s.substring(i).startsWith(u)){if(c+=u.length,r.eatline)for(;i<n&&e.line.chars[s[i]];)e.line.rowChars[s[i]]&&a++,i++;let l=s.substring(0,i+u.length),d=t.token("#CM",void 0,l,o);return o.sI+=l.length,o.rI=a,o.cI=c,d}return t.bad(l.S.unterminated_comment,o.sI,o.sI+9*r.start.length)}}},n.makeTextMatcher=(e,t)=>{let n=(0,l.regexp)(e.line.lex?null:"s","^(.*?)",...e.rePart.ender);return function(r){if(e.text.check){let t=e.text.check(r);if(t&&t.done)return t.token}let l=e.text,i=r.pnt,o=r.src.substring(i.sI),s=e.value.def,a=e.value.defre,u=o.match(n);if(u){let n,d=u[1],p=u[2];if(null!=d){let t=d.length;if(0<t){let c;if(e.value.lex)if(void 0!==(c=s[d]))n=r.token("#VL",c.val,d,i),i.sI+=t,i.cI+=t;else for(let e in a){let t=a[e];if(t.match){let e=t.match.exec(t.consume?o:d);if(e&&(t.consume||e[0].length===d.length)){let l=e[0];if(null==t.val)n=r.token("#VL",l,l,i);else{let o=t.val(e);n=r.token("#VL",o,l,i)}i.sI+=l.length,i.cI+=l.length}}}null==n&&l.lex&&(n=r.token("#TX",d,d,i),i.sI+=t,i.cI+=t)}}if(n&&(n=c(r,n,p)),n&&0<e.text.modify.length){const l=e.text.modify;for(let i=0;i<l.length;i++)n.val=l[i](n.val,r,e,t)}return n}}},n.makeNumberMatcher=(e,t)=>{let n=e.number,r=(0,l.regexp)(null,["^([-+]?(0(",[n.hex?"x[0-9a-fA-F_]+":null,n.oct?"o[0-7_]+":null,n.bin?"b[01_]+":null].filter(e=>null!=e).join("|"),")|\\.?[0-9]+([0-9_]*[0-9])?)","(\\.[0-9]?([0-9_]*[0-9])?)?","([eE][-+]?[0-9]+([0-9_]*[0-9])?)?"].join("").replace(/_/g,n.sep?(0,l.escre)(n.sepChar):""),")",...e.rePart.ender),i=n.sep?(0,l.regexp)("g",(0,l.escre)(n.sepChar)):void 0;return function(t){if(n=e.number,!n.lex)return;if(e.number.check){let n=e.number.check(t);if(n&&n.done)return n.token}let l=t.pnt,o=t.src.substring(l.sI),s=e.value.def,a=o.match(r);if(a){let n,r=a[1],o=a[9],u=!0;if(null!=r&&(u=!e.number.exclude||!r.match(e.number.exclude))){let o=r.length;if(0<o){let a;if(e.value.lex&&void 0!==(a=s[r]))n=t.token("#VL",a.val,r,l);else{let e=i?r.replace(i,""):r,s=+e;if(isNaN(s)){let t=e[0];"-"!==t&&"+"!==t||(s=("-"===t?-1:1)*+e.substring(1))}isNaN(s)||(n=t.token("#NR",s,r,l),l.sI+=o,l.cI+=o)}}}return u&&(n=c(t,n,o)),n}}},n.makeStringMatcher=(e,t)=>{let n=t.string||{};return e.string=e.string||{},e.string=(0,l.deep)(e.string,{lex:!!(null==n?void 0:n.lex),quoteMap:(0,l.charset)(n.chars),multiChars:(0,l.charset)(n.multiChars),escMap:{...n.escape},escChar:n.escapeChar,escCharCode:null==n.escapeChar?void 0:n.escapeChar.charCodeAt(0),allowUnknown:!!n.allowUnknown,replaceCodeMap:(0,l.omap)((0,l.clean)({...n.replace}),([e,t])=>[e.charCodeAt(0),t]),hasReplace:!1,abandon:!!n.abandon}),e.string.escMap=(0,l.clean)(e.string.escMap),e.string.hasReplace=0<(0,l.keys)(e.string.replaceCodeMap).length,function(t){let n=e.string;if(!n.lex)return;if(e.string.check){let n=e.string.check(t);if(n&&n.done)return n.token}let{quoteMap:i,escMap:o,escChar:s,escCharCode:a,multiChars:c,allowUnknown:u,replaceCodeMap:d,hasReplace:p}=n,{pnt:m,src:h}=t,{sI:f,rI:g,cI:k}=m,v=h.length;if(i[h[f]]){const i=h[f],b=f,x=g,y=c[i];++f,++k;let S,j=[];for(;f<v;f++){k++;let r=h[f];if(S=void 0,i===r){f++;break}if(s===r){f++,k++;let e=o[h[f]];if(null!=e)j.push(e);else if("x"===h[f]){f++;let e=parseInt(h.substring(f,f+2),16);if(isNaN(e)){if(n.abandon)return;return f-=2,k-=2,m.sI=f,m.cI=k,t.bad(l.S.invalid_ascii,f,f+4)}let r=String.fromCharCode(e);j.push(r),f+=1,k+=2}else if("u"===h[f]){f++;let e="{"===h[f]?(f++,1):0,r=e?6:4,i=parseInt(h.substring(f,f+r),16);if(isNaN(i)){if(n.abandon)return;return f=f-2-e,k-=2,m.sI=f,m.cI=k,t.bad(l.S.invalid_unicode,f,f+r+2+2*e)}let o=String.fromCodePoint(i);j.push(o),f+=r-1+e,k+=r+e}else{if(!u){if(n.abandon)return;return m.sI=f,m.cI=k-1,t.bad(l.S.unexpected,f,f+1)}j.push(h[f])}}else if(p&&void 0!==(S=d[h.charCodeAt(f)]))j.push(S),k++;else{let r=f,o=i.charCodeAt(0),s=h.charCodeAt(f);for(;(!p||void 0===(S=d[s]))&&f<v&&32<=s&&o!==s&&a!==s;)s=h.charCodeAt(++f),k++;if(k--,void 0===S&&s<32){if(!y||!e.line.chars[h[f]]){if(n.abandon)return;return m.sI=f,m.cI=k,t.bad(l.S.unprintable,f,f+1)}e.line.rowChars[h[f]]&&(m.rI=++g),k=1,j.push(h.substring(r,f+1))}else j.push(h.substring(r,f)),f--}}if(h[f-1]!==i||m.sI===f-1){if(n.abandon)return;return m.rI=x,t.bad(l.S.unterminated_string,b,f)}const O=t.token("#ST",j.join(r.EMPTY),h.substring(m.sI,f),m);return m.sI=f,m.rI=g,m.cI=k,O}}},n.makeLineMatcher=(e,t)=>function(t){if(!e.line.lex)return;if(e.line.check){let n=e.line.check(t);if(n&&n.done)return n.token}let n,{chars:r,rowChars:l}=e.line,{pnt:i,src:o}=t,{sI:s,rI:a}=i,c=e.line.single;for(c&&(n={});r[o[s]]&&!(n&&(n[o[s]]=(n[o[s]]||0)+1,c&&1<n[o[s]]));)a+=l[o[s]]?1:0,s++;if(i.sI<s){let e=o.substring(i.sI,s);const n=t.token("#LN",void 0,e,i);return i.sI+=e.length,i.rI=a,i.cI=1,n}},n.makeSpaceMatcher=(e,t)=>function(t){if(!e.space.lex)return;if(e.space.check){let n=e.space.check(t);if(n&&n.done)return n.token}let{chars:n}=e.space,{pnt:r,src:l}=t,{sI:i,cI:o}=r;for(;n[l[i]];)i++,o++;if(r.sI<i){let e=l.substring(r.sI,i);const n=t.token("#SP",void 0,e,r);return r.sI+=e.length,r.cI=o,n}};class u{constructor(e){this.src=r.EMPTY,this.ctx={},this.cfg={},this.pnt=o(-1),this.ctx=e,this.src=e.src(),this.cfg=e.cfg,this.pnt=o(this.src.length)}token(e,t,n,r,i,o){let s,c;return"string"==typeof e?(c=e,s=(0,l.tokenize)(c,this.cfg)):(s=e,c=(0,l.tokenize)(e,this.cfg)),a(c,s,t,n,r||this.pnt,i,o)}next(e,t,n,r){let i,o,s=this.pnt,a=s.sI;if(s.end)i=s.end;else if(0<s.token.length)i=s.token.shift();else if(s.len<=s.sI)s.end=this.token("#ZZ",void 0,"",s),i=s.end;else{try{for(let t of this.cfg.lex.match)if(i=t(this,e,r)){o=t;break}}catch(c){i=i||this.token("#BD",void 0,this.src[s.sI],s,{err:c},c.code||l.S.unexpected)}i=i||this.token("#BD",void 0,this.src[s.sI],s,void 0,l.S.unexpected)}return this.ctx.log&&this.ctx.log(l.S.lex,this.ctx,e,this,s,a,o,i,t,n,r),this.ctx.sub.lex&&this.ctx.sub.lex.map(t=>t(i,e,this.ctx)),i}tokenize(e){return(0,l.tokenize)(e,this.cfg)}bad(e,t,n){return this.token("#BD",void 0,0<=t&&t<=n?this.src.substring(t,n):this.src[this.pnt.sI],void 0,void 0,e)}}n.makeLex=(...e)=>new u(...e)})),r={};Object.defineProperty(r,"__esModule",{value:!0}),r.STRING=r.INSPECT=r.EMPTY=r.AFTER=r.BEFORE=r.CLOSE=r.OPEN=void 0,r.OPEN="o",r.CLOSE="c",r.BEFORE="b",r.AFTER="a",r.EMPTY="",r.INSPECT=Symbol.for("nodejs.util.inspect.custom"),r.STRING="string";var l={};Object.defineProperty(l,"__esModule",{value:!0}),l.defaults=void 0;const i=n({}),o={safe:{key:!0},tag:"-",fixed:{lex:!0,token:{"#OB":"{","#CB":"}","#OS":"[","#CS":"]","#CL":":","#CA":","}},match:{lex:!0,token:{}},tokenSet:{IGNORE:["#SP","#LN","#CM"],VAL:["#TX","#NR","#ST","#VL"],KEY:["#TX","#NR","#ST","#VL"]},space:{lex:!0,chars:" \t"},line:{lex:!0,chars:"\r\n",rowChars:"\n",single:!1},text:{lex:!0},number:{lex:!0,hex:!0,oct:!0,bin:!0,sep:"_",exclude:void 0},comment:{lex:!0,def:{hash:{line:!0,start:"#",lex:!0,eatline:!1},slash:{line:!0,start:"//",lex:!0,eatline:!1},multi:{line:!1,start:"/*",end:"*/",lex:!0,eatline:!1}}},string:{lex:!0,chars:"'\"`",multiChars:"`",escapeChar:"\\",escape:{b:"\b",f:"\f",n:"\n",r:"\r",t:"\t",v:"\v",'"':'"',"'":"'","`":"`","\\":"\\","/":"/"},allowUnknown:!0,abandon:!1},map:{extend:!0,merge:void 0},list:{property:!0},value:{lex:!0,def:{true:{val:!0},false:{val:!1},null:{val:null}}},ender:[],plugin:{},debug:{get_console:()=>console,maxlen:99,print:{config:!1,src:void 0}},error:{unknown:"unknown error: $code",unexpected:"unexpected character(s): $src",invalid_unicode:"invalid unicode escape: $src",invalid_ascii:"invalid ascii escape: $src",unprintable:"unprintable character: $src",unterminated_string:"unterminated string: $src",unterminated_comment:"unterminated comment: $src",unknown_rule:"unknown rule: $rulename"},hint:function(e=((e,t="replace")=>e[t](/[A-Z]/g,e=>" "+e.toLowerCase())[t](/[~%][a-z]/g,e=>("~"==e[0]?" ":"")+e[1].toUpperCase())),t="~sinceTheErrorIsUnknown,ThisIsProbablyABugInsideJsonic\nitself,OrAPlugin.~pleaseConsiderPostingAGithubIssue -Thanks!\n\n~code: $code,~details: \n$details|~theCharacter(s) $srcWereNotExpectedAtThisPointAsTheyDoNot\nmatchTheExpectedSyntax,EvenUnderTheRelaxedJsonicRules.~ifIt\nisNotObviouslyWrong,TheActualSyntaxErrorMayBeElsewhere.~try\ncommentingOutLargerAreasAroundThisPointUntilYouGetNoErrors,\nthenRemoveTheCommentsInSmallSectionsUntilYouFindThe\noffendingSyntax.~n%o%t%e:~alsoCheckIfAnyPluginsYouAreUsing\nexpectDifferentSyntaxInThisCase.|~theEscapeSequence $srcDoesNotEncodeAValidUnicodeCodePoint\nnumber.~youMayNeedToValidateYourStringDataManuallyUsingTest\ncodeToSeeHow~javaScriptWillInterpretIt.~alsoConsiderThatYour\ndataMayHaveBecomeCorrupted,OrTheEscapeSequenceHasNotBeen\ngeneratedCorrectly.|~theEscapeSequence $srcDoesNotEncodeAValid~a%s%c%i%iCharacter.~you\nmayNeedToValidateYourStringDataManuallyUsingTestCodeToSee\nhow~javaScriptWillInterpretIt.~alsoConsiderThatYourDataMay\nhaveBecomeCorrupted,OrTheEscapeSequenceHasNotBeenGenerated\ncorrectly.|~stringValuesCannotContainUnprintableCharacters (characterCodes\nbelow 32).~theCharacter $srcIsUnprintable.~youMayNeedToRemove\ntheseCharactersFromYourSourceData.~alsoCheckThatItHasNot\nbecomeCorrupted.|~thisStringHasNoEndQuote.|~thisCommentIsNeverClosed.|~noRuleNamed $rulenameIsDefined.~thisIsProbablyAnErrorInThe\ngrammarOfAPlugin.".split("|")){return"unknown|unexpected|invalid_unicode|invalid_ascii|unprintable|unterminated_string|unterminated_comment|unknown_rule".split("|").reduce((n,r,l)=>(n[r]=e(t[l]),n),{})},lex:{match:{match:{order:1e6,make:i.makeMatchMatcher},fixed:{order:2e6,make:i.makeFixedMatcher},space:{order:3e6,make:i.makeSpaceMatcher},line:{order:4e6,make:i.makeLineMatcher},string:{order:5e6,make:i.makeStringMatcher},comment:{order:6e6,make:i.makeCommentMatcher},number:{order:7e6,make:i.makeNumberMatcher},text:{order:8e6,make:i.makeTextMatcher}},empty:!0,emptyResult:void 0},parse:{prepare:{}},rule:{start:"val",finish:!0,maxmul:3,include:"",exclude:""},result:{fail:[]},config:{modify:{}},parser:{start:void 0}};l.defaults=o;var s={};Object.defineProperty(s,"__esModule",{value:!0}),s.makeRuleSpec=s.makeNoRule=s.makeRule=void 0;const a=t({});class c{constructor(e,t,n){this.i=-1,this.name=r.EMPTY,this.node=null,this.state=r.OPEN,this.n=Object.create(null),this.d=-1,this.u=Object.create(null),this.k=Object.create(null),this.bo=!1,this.ao=!1,this.bc=!1,this.ac=!1,this.os=0,this.cs=0,this.need=0,this.i=t.uI++,this.name=e.name,this.spec=e,this.child=t.NORULE,this.parent=t.NORULE,this.prev=t.NORULE,this.o0=t.NOTOKEN,this.o1=t.NOTOKEN,this.c0=t.NOTOKEN,this.c1=t.NOTOKEN,this.node=n,this.d=t.rsI,this.bo=null!=e.def.bo,this.ao=null!=e.def.ao,this.bc=null!=e.def.bc,this.ac=null!=e.def.ac}process(e,t){return this.spec.process(this,e,t,this.state)}eq(e,t=0){let n=this.n[e];return null==n||n===t}lt(e,t=0){let n=this.n[e];return null==n||n<t}gt(e,t=0){let n=this.n[e];return null==n||n>t}lte(e,t=0){let n=this.n[e];return null==n||n<=t}gte(e,t=0){let n=this.n[e];return null==n||n>=t}toString(){return"[Rule "+this.name+"~"+this.i+"]"}}const u=(...e)=>new c(...e);s.makeRule=u,s.makeNoRule=e=>u(g(e.cfg,{}),e);class d{constructor(){this.p=r.EMPTY,this.r=r.EMPTY,this.b=0}}const p=(...e)=>new d(...e),m=p(),h=p();class f{constructor(e,t){this.name=r.EMPTY,this.def={open:[],close:[],bo:[],bc:[],ao:[],ac:[],tcol:[]},this.cfg=e,this.def=Object.assign(this.def,t),this.def.open=(this.def.open||[]).filter(e=>null!=e),this.def.close=(this.def.close||[]).filter(e=>null!=e);for(let n of[...this.def.open,...this.def.close])k(n)}tin(e){return(0,a.tokenize)(e,this.cfg)}add(e,t,n){let r=(null==n?void 0:n.append)?"push":"unshift",l=((0,a.isarr)(t)?t:[t]).filter(e=>null!=e&&"object"==typeof e).map(e=>k(e)),i="o"===e?"open":"close",o=this.def[i];return o[r](...l),o=this.def[i]=(0,a.modlist)(o,n),(0,a.filterRules)(this,this.cfg),this.norm(),this}open(e,t){return this.add("o",e,t)}close(e,t){return this.add("c",e,t)}action(e,t,n,r){let l=this.def[t+n];return e?l.push(r):l.unshift(r),this}bo(e,t){return this.action(!t||!!e,r.BEFORE,r.OPEN,t||e)}ao(e,t){return this.action(!t||!!e,r.AFTER,r.OPEN,t||e)}bc(e,t){return this.action(!t||!!e,r.BEFORE,r.CLOSE,t||e)}ac(e,t){return this.action(!t||!!e,r.AFTER,r.CLOSE,t||e)}clear(){return this.def.open.length=0,this.def.close.length=0,this.def.bo.length=0,this.def.ao.length=0,this.def.bc.length=0,this.def.ac.length=0,this}norm(){this.def.open.map(e=>k(e)),this.def.close.map(e=>k(e));const e=[];function t(e,t,n){return n[e]=n[e]||[],[function(e,n){if(n.s&&n.s[t]){let r=[...new Set(e.concat(n.s[t]))];e.length=0,e.push(...r)}return e},n[e][t]=n[e][t]||[]]}return this.def.open.reduce(...t(0,0,e)),this.def.open.reduce(...t(0,1,e)),this.def.close.reduce(...t(1,0,e)),this.def.close.reduce(...t(1,1,e)),this.def.tcol=e,this}process(e,t,n,l){t.log&&t.log(a.S.rule,t,e,n);let i="o"===l,o=i?e:t.NORULE,s=i?"O":"C",c=this.def,d=i?c.open:c.close,p=i?e.bo?c.bo:null:e.bc?c.bc:null;if(p){let n;for(let r=0;r<p.length;r++)if(n=p[r].call(this,e,t,o,n),(null==n?void 0:n.isToken)&&(null==n?void 0:n.err))return this.bad(n,e,t,{is_open:i})}let f=0<d.length?function(e,t,n,l,i){let o=m;o.b=0,o.p=r.EMPTY,o.r=r.EMPTY,o.n=void 0,o.h=void 0,o.a=void 0,o.u=void 0,o.k=void 0,o.e=void 0;let s=null,c=0,u=!0,d=1<<i.cfg.t.AA-1,p=i.cfg.tokenSetTins.IGNORE;function h(e,t,r,l){let o;do{o=n.next(e,t,r,l),i.tC++}while(p[o.tin]);return o}let f=t.length;for(c=0;c<f;c++){s=t[c];let n=!1,r=!1;if(u=!0,s.S0){let e=(i.t0=i.NOTOKEN!==i.t0?i.t0:i.t0=h(l,s,c,0)).tin;if(n=!0,u=!!(s.S0[e/31|0]&(1<<e%31-1|d)),u&&(r=null!=s.S1,s.S1)){let e=(i.t1=i.NOTOKEN!==i.t1?i.t1:i.t1=h(l,s,c,1)).tin;r=!0,u=!!(s.S1[e/31|0]&(1<<e%31-1|d))}}if(e?(l.o0=n?i.t0:i.NOTOKEN,l.o1=r?i.t1:i.NOTOKEN,l.os=(n?1:0)+(r?1:0)):(l.c0=n?i.t0:i.NOTOKEN,l.c1=r?i.t1:i.NOTOKEN,l.cs=(n?1:0)+(r?1:0)),u&&s.c&&(u=u&&s.c(l,i,o)),u)break;s=null}u||(o.e=i.t0),s&&(o.n=null!=s.n?s.n:o.n,o.h=null!=s.h?s.h:o.h,o.a=null!=s.a?s.a:o.a,o.u=null!=s.u?s.u:o.u,o.k=null!=s.k?s.k:o.k,o.g=null!=s.g?s.g:o.g,o.e=s.e&&s.e(l,i,o)||void 0,o.p=null!=s.p&&!1!==s.p?"string"==typeof s.p?s.p:s.p(l,i,o):o.p,o.r=null!=s.r&&!1!==s.r?"string"==typeof s.r?s.r:s.r(l,i,o):o.r,o.b=null!=s.b&&!1!==s.b?"number"==typeof s.b?s.b:s.b(l,i,o):o.b);let g=c<t.length;return i.log&&i.log(a.S.parse,i,l,n,g,u,c,s,o),o}(i,d,n,e,t):h;if(f.h&&(f=f.h(e,t,f,o)||f,s+="H"),f.e)return this.bad(f.e,e,t,{is_open:i});if(f.n)for(let r in f.n)e.n[r]=0===f.n[r]?0:(null==e.n[r]?0:e.n[r])+f.n[r];if(f.u&&(e.u=Object.assign(e.u,f.u)),f.k&&(e.k=Object.assign(e.k,f.k)),f.a){s+="A";let n=f.a(e,t,f);if(n&&n.isToken&&n.err)return this.bad(n,e,t,{is_open:i})}if(f.p){t.rs[t.rsI++]=e;let n=t.rsm[f.p];if(!n)return this.bad(this.unknownRule(t.t0,f.p),e,t,{is_open:i});o=e.child=u(n,t,e.node),o.parent=e,o.n={...e.n},0<Object.keys(e.k).length&&(o.k={...e.k}),s+="P`"+f.p+"`"}else if(f.r){let n=t.rsm[f.r];if(!n)return this.bad(this.unknownRule(t.t0,f.r),e,t,{is_open:i});o=u(n,t,e.node),o.parent=e.parent,o.prev=e,o.n={...e.n},0<Object.keys(e.k).length&&(o.k={...e.k}),s+="R`"+f.r+"`"}else i||(o=t.rs[--t.rsI]||t.NORULE);let g=i?e.ao?c.ao:null:e.ac?c.ac:null;if(g){let n;for(let r=0;r<g.length;r++)if(n=g[r](e,t,o,n),(null==n?void 0:n.isToken)&&(null==n?void 0:n.err))return this.bad(n,e,t,{is_open:i})}o.why=s,t.log&&t.log(a.S.node,t,e,n,o),r.OPEN===e.state&&(e.state=r.CLOSE);let k=e[i?"os":"cs"]-(f.b||0);return 1===k?(t.v2=t.v1,t.v1=t.t0,t.t0=t.t1,t.t1=t.NOTOKEN):2==k&&(t.v2=t.t1,t.v1=t.t0,t.t0=t.NOTOKEN,t.t1=t.NOTOKEN),o}bad(e,t,n,r){throw new a.JsonicError(e.err||a.S.unexpected,{...e.use,state:r.is_open?a.S.open:a.S.close},e,t,n)}unknownRule(e,t){return e.err="unknown_rule",e.use=e.use||{},e.use.rulename=t,e}}const g=(...e)=>new f(...e);function k(e){if(r.STRING===typeof e.g?e.g=e.g.split(/\s*,\s*/):null==e.g&&(e.g=[]),e.g=e.g.sort(),e.s&&0!==e.s.length){const t=e=>e.flat().filter(e=>"number"==typeof e),n=(e,t)=>e.filter(e=>31*t<=e&&e<31*(t+1)),r=(e,t)=>e.reduce((e,n)=>1<<n-(31*t+1)|e,0),l=t([e.s[0]]),i=t([e.s[1]]),o=e;o.S0=0<l.length?new Array(Math.max(...l.map(e=>1+e/31|0))).fill(null).map((e,t)=>t).map(e=>r(n(l,e),e)):null,o.S1=0<i.length?new Array(Math.max(...i.map(e=>1+e/31|0))).fill(null).map((e,t)=>t).map(e=>r(n(i,e),e)):null}else e.s=null;return e.p||(e.p=null),e.r||(e.r=null),e.b||(e.b=null),e}s.makeRuleSpec=g;var v={};Object.defineProperty(v,"__esModule",{value:!0}),v.makeParser=v.makeRuleSpec=v.makeRule=void 0;const b=t({}),x=n({});Object.defineProperty(v,"makeRule",{enumerable:!0,get:function(){return s.makeRule}}),Object.defineProperty(v,"makeRuleSpec",{enumerable:!0,get:function(){return s.makeRuleSpec}});class y{constructor(e,t){this.rsm={},this.options=e,this.cfg=t}rule(e,t){if(null==e)return this.rsm;let n=this.rsm[e];if(null===t)delete this.rsm[e];else if(void 0!==t)return n=this.rsm[e]=this.rsm[e]||(0,s.makeRuleSpec)(this.cfg,{}),n=this.rsm[e]=t(this.rsm[e],this)||this.rsm[e],void(n.name=e);return n}start(e,t,n,l){let i,o=(0,x.makeToken)("#ZZ",(0,b.tokenize)("#ZZ",this.cfg),void 0,r.EMPTY,(0,x.makePoint)(-1)),a=(0,x.makeNoToken)(),c={uI:0,opts:this.options,cfg:this.cfg,meta:n||{},src:()=>e,root:()=>i,plgn:()=>t.internal().plugins,inst:()=>t,rule:{},sub:t.internal().sub,xs:-1,v2:o,v1:o,t0:a,t1:a,tC:-2,kI:-1,rs:[],rsI:0,rsm:this.rsm,log:void 0,F:(0,b.srcfmt)(this.cfg),u:{},NOTOKEN:a,NORULE:{}};c=(0,b.deep)(c,l);let u=(0,s.makeNoRule)(c);if(c.NORULE=u,c.rule=u,n&&b.S.function===typeof n.log&&(c.log=n.log),this.cfg.parse.prepare.forEach(e=>e(t,c,n)),""===e){if(this.cfg.lex.empty)return this.cfg.lex.emptyResult;throw new b.JsonicError(b.S.unexpected,{src:e},c.t0,u,c)}let d=(0,b.badlex)((0,x.makeLex)(c),(0,b.tokenize)("#BD",this.cfg),c),p=this.rsm[this.cfg.rule.start];if(null==p)return;let m=(0,s.makeRule)(p,c);i=m;let h=2*(0,b.keys)(this.rsm).length*d.src.length*2*c.cfg.rule.maxmul,f=0;for(;u!==m&&f<h;)c.kI=f,c.rule=m,c.log&&c.log("",c.kI+":"),c.sub.rule&&c.sub.rule.map(e=>e(m,c)),m=m.process(c,d),c.log&&c.log(b.S.stack,c,m,d),f++;if(o.tin!==d.next(m).tin)throw new b.JsonicError(b.S.unexpected,{},c.t0,u,c);const g=c.root().node;if(this.cfg.result.fail.includes(g))throw new b.JsonicError(b.S.unexpected,{},c.t0,u,c);return g}clone(e,t){let n=new y(e,t);return n.rsm=Object.keys(this.rsm).reduce((e,t)=>(e[t]=(0,b.filterRules)(this.rsm[t],this.cfg),e),{}),n.norm(),n}norm(){(0,b.values)(this.rsm).map(e=>e.norm())}}v.makeParser=(...e)=>new y(...e);var S={};function j(e){const{deep:t}=e.util,{OB:n,CB:r,OS:l,CS:i,CL:o,CA:s,TX:a,ST:c,ZZ:u}=e.token,{VAL:d,KEY:p}=e.tokenSet,m=(e,t)=>{if(!t.cfg.rule.finish)return t.t0.src="END_OF_SOURCE",t.t0},h=e=>{const t=e.o0,n=c===t.tin||a===t.tin?t.val:t.src;e.u.key=n};e.rule("val",e=>{e.bo(e=>e.node=void 0).open([{s:[n],p:"map",b:1,g:"map,json"},{s:[l],p:"list",b:1,g:"list,json"},{s:[d],g:"val,json"}]).close([{s:[u],g:"end,json"},{b:1,g:"more,json"}]).bc((e,t)=>{e.node=void 0===e.node?void 0===e.child.node?0===e.os?void 0:e.o0.resolveVal(e,t):e.child.node:e.node})}),e.rule("map",e=>{e.bo(e=>{e.node=Object.create(null)}).open([{s:[n,r],b:1,n:{pk:0},g:"map,json"},{s:[n],p:"pair",n:{pk:0},g:"map,json,pair"}]).close([{s:[r],g:"end,json"}])}),e.rule("list",e=>{e.bo(e=>{e.node=[]}).open([{s:[l,i],b:1,g:"list,json"},{s:[l],p:"elem",g:"list,elem,json"}]).close([{s:[i],g:"end,json"}])}),e.rule("pair",e=>{e.open([{s:[p,o],p:"val",u:{pair:!0},a:h,g:"map,pair,key,json"}]).bc((e,t)=>{e.u.pair&&(e.u.prev=e.node[e.u.key],e.node[e.u.key]=e.child.node)}).close([{s:[s],r:"pair",g:"map,pair,json"},{s:[r],b:1,g:"map,pair,json"}])}),e.rule("elem",e=>{e.open([{p:"val",g:"list,elem,val,json"}]).bc(e=>{!0!==e.u.done&&e.node.push(e.child.node)}).close([{s:[s],r:"elem",g:"list,elem,json"},{s:[i],b:1,g:"list,elem,json"}])});const f=(e,n)=>{let r=e.u.key,l=e.child.node;const i=e.u.prev;l=void 0===l?null:l,e.u.list&&n.cfg.safe.key&&("__proto__"===r||"constructor"===r)||(e.node[r]=null==i?l:n.cfg.map.merge?n.cfg.map.merge(i,l,e,n):n.cfg.map.extend?t(i,l):l)};e.rule("val",e=>{e.open([{s:[p,o],p:"map",b:2,n:{pk:1},g:"pair,jsonic"},{s:[d],g:"val,json"},{s:[[r,i]],b:1,c:e=>0<e.d,g:"val,imp,null,jsonic"},{s:[s],c:e=>0===e.d,p:"list",b:1,g:"list,imp,jsonic"},{s:[s],b:1,g:"list,val,imp,null,jsonic"},{s:[u],g:"jsonic"}],{append:!0,delete:[2]}).close([{s:[[r,i]],b:1,g:"val,json,close",e:(e,t)=>0===e.d?t.t0:void 0},{s:[s],c:e=>e.lte("dlist")&&e.lte("dmap"),r:"list",u:{implist:!0},g:"list,val,imp,comma,jsonic"},{c:e=>e.lte("dlist")&&e.lte("dmap"),r:"list",u:{implist:!0},g:"list,val,imp,space,jsonic",b:1},{s:[u],g:"jsonic"}],{append:!0,move:[1,-1]})}),e.rule("map",e=>{e.bo(e=>{e.n.dmap=1+(e.n.dmap?e.n.dmap:0)}).open([{s:[n,u],b:1,e:m,g:"end,jsonic"}]).open([{s:[p,o],p:"pair",b:2,g:"pair,list,val,imp,jsonic"}],{append:!0}).close([{s:[r],c:e=>e.lte("pk"),g:"end,json"},{s:[r],b:1,g:"path,jsonic"},{s:[[s,i,...d]],b:1,g:"end,path,jsonic"},{s:[u],e:m,g:"end,jsonic"}],{append:!0,delete:[0]})}),e.rule("list",e=>{e.bo(e=>{e.n.dlist=1+(e.n.dlist?e.n.dlist:0),e.prev.u.implist&&(e.node.push(e.prev.node),e.prev.node=e.node)}).open({c:e=>e.prev.u.implist,p:"elem"}).open([{s:[s],p:"elem",b:1,g:"list,elem,val,imp,jsonic"},{p:"elem",g:"list,elem.jsonic"}],{append:!0}).close([{s:[u],e:m,g:"end,jsonic"}],{append:!0})}),e.rule("pair",(e,t)=>{e.open([{s:[s],g:"map,pair,comma,jsonic"}],{append:!0}).bc((e,t)=>{e.u.pair&&f(e,t)}).close([{s:[r],c:e=>e.lte("pk"),b:1,g:"map,pair,json"},{s:[s,r],c:e=>e.lte("pk"),b:1,g:"map,pair,comma,jsonic"},{s:[s,u],g:"end,jsonic"},{s:[s],c:e=>e.lte("pk"),r:"pair",g:"map,pair,json"},{s:[s],c:e=>e.lte("dmap",1),r:"pair",g:"map,pair,jsonic"},{s:[p],c:e=>e.lte("dmap",1),r:"pair",b:1,g:"map,pair,imp,jsonic"},{s:[[r,s,i,...p]],c:e=>0<e.n.pk,b:1,g:"map,pair,imp,path,jsonic"},{s:[i],e:e=>e.c0,g:"end,jsonic"},{s:[u],e:m,g:"map,pair,json"},{r:"pair",b:1,g:"map,pair,imp,jsonic"}],{append:!0,delete:[0,1]})}),e.rule("elem",(e,t)=>{e.open([{s:[s,s],b:2,u:{done:!0},a:e=>e.node.push(null),g:"list,elem,imp,null,jsonic"},{s:[s],u:{done:!0},a:e=>e.node.push(null),g:"list,elem,imp,null,jsonic"},{s:[p,o],e:t.cfg.list.property?void 0:(e,t)=>t.t0,p:"val",n:{pk:1,dmap:1},u:{done:!0,pair:!0,list:!0},a:h,g:"elem,pair,jsonic"}]).bc((e,t)=>{!0===e.u.pair&&(e.u.prev=e.node[e.u.key],f(e,t))}).close([{s:[s,[i,u]],b:1,g:"list,elem,comma,jsonic"},{s:[s],r:"elem",g:"list,elem,json"},{s:[i],b:1,g:"list,elem,json"},{s:[u],e:m,g:"list,elem,json"},{s:[r],e:e=>e.c0,g:"end,jsonic"},{r:"elem",b:1,g:"list,elem,imp,jsonic"}],{delete:[-1,-2]})})}Object.defineProperty(S,"__esModule",{value:!0}),S.makeJSON=S.grammar=void 0,S.grammar=j,S.makeJSON=function(e){let t=e.make({grammar$:!1,text:{lex:!1},number:{hex:!1,oct:!1,bin:!1,sep:null,exclude:/^00+/},string:{chars:'"',multiChars:"",allowUnknown:!1,escape:{v:null}},comment:{lex:!1},map:{extend:!1},lex:{empty:!1},rule:{finish:!1,include:"json"},result:{fail:[void 0,NaN]},tokenSet:{KEY:["#ST",null,null,null]}});return j(t),t};var O={exports:{}};Object.defineProperty(O.exports,"__esModule",{value:!0}),O.exports.root=O.exports.S=O.exports.EMPTY=O.exports.AFTER=O.exports.BEFORE=O.exports.CLOSE=O.exports.OPEN=O.exports.makeTextMatcher=O.exports.makeNumberMatcher=O.exports.makeCommentMatcher=O.exports.makeStringMatcher=O.exports.makeLineMatcher=O.exports.makeSpaceMatcher=O.exports.makeFixedMatcher=O.exports.makeParser=O.exports.makeLex=O.exports.makeRuleSpec=O.exports.makeRule=O.exports.makePoint=O.exports.makeToken=O.exports.make=O.exports.util=O.exports.JsonicError=O.exports.Jsonic=void 0,Object.defineProperty(O.exports,"OPEN",{enumerable:!0,get:function(){return r.OPEN}}),Object.defineProperty(O.exports,"CLOSE",{enumerable:!0,get:function(){return r.CLOSE}}),Object.defineProperty(O.exports,"BEFORE",{enumerable:!0,get:function(){return r.BEFORE}}),Object.defineProperty(O.exports,"AFTER",{enumerable:!0,get:function(){return r.AFTER}}),Object.defineProperty(O.exports,"EMPTY",{enumerable:!0,get:function(){return r.EMPTY}});const E=t({});Object.defineProperty(O.exports,"JsonicError",{enumerable:!0,get:function(){return E.JsonicError}}),Object.defineProperty(O.exports,"S",{enumerable:!0,get:function(){return E.S}});const I=n({});Object.defineProperty(O.exports,"makePoint",{enumerable:!0,get:function(){return I.makePoint}}),Object.defineProperty(O.exports,"makeToken",{enumerable:!0,get:function(){return I.makeToken}}),Object.defineProperty(O.exports,"makeLex",{enumerable:!0,get:function(){return I.makeLex}}),Object.defineProperty(O.exports,"makeFixedMatcher",{enumerable:!0,get:function(){return I.makeFixedMatcher}}),Object.defineProperty(O.exports,"makeSpaceMatcher",{enumerable:!0,get:function(){return I.makeSpaceMatcher}}),Object.defineProperty(O.exports,"makeLineMatcher",{enumerable:!0,get:function(){return I.makeLineMatcher}}),Object.defineProperty(O.exports,"makeStringMatcher",{enumerable:!0,get:function(){return I.makeStringMatcher}}),Object.defineProperty(O.exports,"makeCommentMatcher",{enumerable:!0,get:function(){return I.makeCommentMatcher}}),Object.defineProperty(O.exports,"makeNumberMatcher",{enumerable:!0,get:function(){return I.makeNumberMatcher}}),Object.defineProperty(O.exports,"makeTextMatcher",{enumerable:!0,get:function(){return I.makeTextMatcher}}),Object.defineProperty(O.exports,"makeRule",{enumerable:!0,get:function(){return v.makeRule}}),Object.defineProperty(O.exports,"makeRuleSpec",{enumerable:!0,get:function(){return v.makeRuleSpec}}),Object.defineProperty(O.exports,"makeParser",{enumerable:!0,get:function(){return v.makeParser}});const T={tokenize:E.tokenize,srcfmt:E.srcfmt,clone:E.clone,charset:E.charset,trimstk:E.trimstk,makelog:E.makelog,badlex:E.badlex,extract:E.extract,errinject:E.errinject,errdesc:E.errdesc,configure:E.configure,parserwrap:E.parserwrap,mesc:E.mesc,escre:E.escre,regexp:E.regexp,prop:E.prop,str:E.str,clean:E.clean,deep:E.deep,omap:E.omap,keys:E.keys,values:E.values,entries:E.entries};function M(e,t){let n=!0;if("jsonic"===e)n=!1;else if("json"===e)return(0,S.makeJSON)(N);e="string"==typeof e?{}:e;let r={parser:null,config:null,plugins:[],sub:{lex:void 0,rule:void 0},mark:Math.random()},i=(0,E.deep)({},t?{...t.options}:!1===(null==e?void 0:e.defaults$)?{}:l.defaults,e||{}),o=function(e,t,n){var r;if(E.S.string===typeof e){let l=o.internal();return((null===(r=s.parser)||void 0===r?void 0:r.start)?(0,E.parserwrap)(s.parser):l.parser).start(e,o,t,n)}return e},s=e=>{if(null!=e&&E.S.object===typeof e){(0,E.deep)(i,e),(0,E.configure)(o,r.config,i);let t=o.internal().parser;r.parser=t.clone(i,r.config)}return{...o.options}},a={token:e=>(0,E.tokenize)(e,r.config,o),tokenSet:e=>(0,E.findTokenSet)(e,r.config),fixed:e=>r.config.fixed.ref[e],options:(0,E.deep)(s,i),config:()=>(0,E.deep)(r.config),parse:o,use:function(e,t){if(E.S.function!==typeof e)throw new Error("Jsonic.use: the first argument must be a function defining a plugin. See https://jsonic.senecajs.org/plugin");const n=e.name.toLowerCase(),r=(0,E.deep)({},e.defaults||{},t||{});o.options({plugin:{[n]:r}});let l=o.options.plugin[n];return o.internal().plugins.push(e),e.options=l,e(o,l)||o},rule:(e,t)=>o.internal().parser.rule(e,t)||o,make:e=>M(e,o),empty:e=>M({defaults$:!1,standard$:!1,grammar$:!1,...e||{}}),id:"Jsonic/"+Date.now()+"/"+(""+Math.random()).substring(2,8).padEnd(6,"0")+(null==s.tag?"":"/"+s.tag),toString:()=>a.id,sub:e=>(e.lex&&(r.sub.lex=r.sub.lex||[],r.sub.lex.push(e.lex)),e.rule&&(r.sub.rule=r.sub.rule||[],r.sub.rule.push(e.rule)),o),util:T};if((0,E.defprop)(a.make,E.S.name,{value:E.S.make}),n?(0,E.assign)(o,a):(0,E.assign)(o,{empty:a.empty,parse:a.parse,sub:a.sub,id:a.id,toString:a.toString}),(0,E.defprop)(o,"internal",{value:()=>r}),t){for(let n in t)void 0===o[n]&&(o[n]=t[n]);o.parent=t;let e=t.internal();r.config=(0,E.deep)({},e.config),(0,E.configure)(o,r.config,i),(0,E.assign)(o.token,r.config.t),r.plugins=[...e.plugins],r.parser=e.parser.clone(i,r.config)}else{let e={...o,...a};r.config=(0,E.configure)(e,void 0,i),r.plugins=[],r.parser=(0,v.makeParser)(i,r.config),!1!==i.grammar$&&(0,S.grammar)(e)}return o}let N;O.exports.util=T,O.exports.make=M,O.exports.root=N;let P=O.exports.root=N=M("jsonic");return O.exports.Jsonic=P,N.Jsonic=N,N.JsonicError=E.JsonicError,N.makeLex=I.makeLex,N.makeParser=v.makeParser,N.makeToken=I.makeToken,N.makePoint=I.makePoint,N.makeRule=v.makeRule,N.makeRuleSpec=v.makeRuleSpec,N.makeFixedMatcher=I.makeFixedMatcher,N.makeSpaceMatcher=I.makeSpaceMatcher,N.makeLineMatcher=I.makeLineMatcher,N.makeStringMatcher=I.makeStringMatcher,N.makeCommentMatcher=I.makeCommentMatcher,N.makeNumberMatcher=I.makeNumberMatcher,N.makeTextMatcher=I.makeTextMatcher,N.OPEN=r.OPEN,N.CLOSE=r.CLOSE,N.BEFORE=r.BEFORE,N.AFTER=r.AFTER,N.EMPTY=r.EMPTY,N.util=T,N.make=M,N.S=E.S,O.exports.default=P,O.exports=P,O.exports}))}).call(this)}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{}),e=e.exports;var t={exports:{}};(function(e){(function(){!function(n){"object"==typeof t.exports?t.exports=n():("undefined"!=typeof window?window:void 0!==e?e:"undefined"!=typeof self?self:this).JsonicDirective=n()}((function(){var e={};Object.defineProperty(e,"__esModule",{value:!0}),e.Directive=void 0;const t=e=>("string"==typeof e?e.split(/\s*,\s*/):e||[]).filter(e=>null!=e&&""!==e),n=(e,n)=>{var r,l;let i,o={open:t(null===(r=null==n?void 0:n.rules)||void 0===r?void 0:r.open),close:t(null===(l=null==n?void 0:n.rules)||void 0===l?void 0:l.close)},s=n.name,a=n.open,c=n.close,u=n.custom;if("string"==typeof n.action){let t=n.action;i=n=>n.node=e.util.prop(e.options,t)}else i=n.action;let d={},p="#OD_"+s,m="#CD_"+s,h=e.fixed(a),f=null==c?null:e.fixed(c);if(null!=h)throw new Error("Directive open token already in use: "+a);d[p]=a,null==f&&null!=c&&(d[m]=c),e.options({fixed:{token:d},error:{[s+"_close"]:null==c?null:"directive "+s+' close "'+c+'" without open "'+a+'"'},hint:{[s+"_close"]:null==c?null:`\nThe ${s} directive must start with the characters "${a}" and end\nwith the characters "${c}". The end characters "${c}" may not\nappear without the start characters "${a}" appearing first:\n"${a}...${c}".\n`}});let g=e.token.CA;h=e.fixed(a),f=null==c?null:e.fixed(c),o.open.forEach(t=>{e.rule(t,e=>(e.open({s:[h],p:s,n:{["dr_"+s]:1},g:"start"}),null!=c&&(e.open({s:[h,f],b:1,p:s,n:{["dr_"+s]:1},g:"start,end"}),e.close({s:[f],b:1,g:"end"})),e))}),null!=c&&o.close.forEach(t=>{e.rule(t,e=>{e.close([{s:[f],c:e=>1===e.n["dr_"+s],b:1,g:"end"},{s:[g,f],c:e=>1===e.n["dr_"+s],b:1,g:"end,comma"}])})}),e.rule(s,e=>e.clear().bo(e=>{e.node={}}).open([null!=c?{s:[f],b:1}:null,{p:"val",n:null==c?{dlist:1,dmap:1}:{dlist:0,dmap:0}}]).bc((function(e,t,n,r){let l=i.call(this,e,t,n,r);if(null==l?void 0:l.isToken)return l})).close(null!=c?[{s:[f]},{s:[g,f]}]:[])),u&&u(e,{OPEN:h,CLOSE:f,name:s})};return e.Directive=n,n.defaults={rules:{open:"val",close:"list,elem,map,pair"}},e}))}).call(this)}).call(this,"undefined"!=typeof global?global:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{}),t=t.exports;var n={};Object.defineProperty(n,"__esModule",{value:!0}),n.makeJsonicProcessor=void 0,n.makeJsonicProcessor=function(){return function(e,t,n,r,l){null!=e.src&&null!=e.full&&(e.val=l(e.src,r.meta))}};var r={};Object.defineProperty(r,"__esModule",{value:!0}),r.makeJavaScriptProcessor=void 0,r.makeJavaScriptProcessor=function(e){const t=e=>{e.val=function(e,t){let n;return n=require(e.full),n=null!=n.default?n.default:n,n}(e)};return t.opts=e,t};var l={};Object.defineProperty(l,"__esModule",{value:!0}),l.meta=l.TOP=l.NONE=l.resolvePathSpec=l.MultiSource=void 0,l.NONE="";const i=Symbol("TOP");l.TOP=i;const o=(e,n)=>{const r=n.markchar,l=n.resolver,o=n.processor,{deep:s}=e.util,a=n.implictExt||[];for(let t=0;t<a.length;t++){let e=a[t];a[t]=e.startsWith(".")?e:"."+e}e.options({error:{multisource_not_found:"source not found: $path"},hint:{multisource_not_found:"The source path $path was not found.\n\nSearch paths:\n${searchstr}"}});let c={name:"multisource",open:r,rules:{open:"val,pair"},action:function(t,r){var a,c;let u=t.parent.name,d=t.child.node,p=l(d,n,t,r,e);if(!p.found)return null===(a=t.parent)||void 0===a?void 0:a.o0.bad("multisource_not_found",{...p,searchstr:((null==p?void 0:p.search)||[p.full]).join("\n")});let m=null!=p.full?p.full:null!=p.path?p.path:"no-path";p.kind=null==p.kind?"":p.kind;let h=(null===(c=r.meta)||void 0===c?void 0:c.multisource)||{},f=h.parents||[];null!=h.path&&f.push(h.path);let g={...r.meta||{},fileName:p.path,multisource:{...h,parents:f,path:p.full}};if(h.deps){let e=h.deps,t=h.path||i;if(null!=t){let n={tar:t,src:m,wen:Date.now()};e[t]=e[t]||{},e[t][m]=n}}let k={...r,meta:g};(o[p.kind]||o[""])(p,n,t,k,e),"pair"===u?r.cfg.map.merge?t.parent.parent.node=r.cfg.map.merge(t.parent.parent.node,p.val,t,r):r.cfg.map.extend?t.parent.parent.node=s(t.parent.parent.node,p.val):Object.assign(t.parent.node,p.val):t.node=p.val},custom:(e,{OPEN:t,name:n})=>{e.rule("val",e=>{e.open({s:[t],c:e=>0===e.d,p:"map",b:1,n:{[n+"_top"]:1}})}),e.rule("map",e=>{e.open({s:[t],c:e=>1===e.d&&1===e.n[n+"_top"],p:"pair",b:1})})}};e.use(t.Directive,c)};function s(e){return t=>t.val=e(t.src,t)}l.MultiSource=o;const a=s(e=>e),c=e.Jsonic.make("json"),u=s((e,t)=>null==e?void 0:c(e,{fileName:t.path})),d=(0,n.makeJsonicProcessor)(),p=(0,r.makeJavaScriptProcessor)();return o.defaults={markchar:"@",processor:{"":a,jsonic:d,jsc:d,json:u,js:p},implictExt:["jsonic","jsc","json","js"]},l.resolvePathSpec=function(e,t,n,r){var l;let i=null===(l=t.meta)||void 0===l?void 0:l.multisource,o=r(null==i||null==i.path?e.path:i.path),s="string"==typeof n?n:null!=n.path?""+n.path:void 0,a=!(!(null==s?void 0:s.startsWith("/"))&&!(null==s?void 0:s.startsWith("\\"))),c=a?s:null!=s&&""!=s?null!=o&&""!=o?o+"/"+s:s:void 0;return{kind:null==c?"":(c.match(/\.([^.]*)$/)||["",""])[1],path:s,full:c,base:o,abs:a,found:!1}},l.meta={name:"MultiSource"},l}));
{
"name": "@jsonic/multisource",
"version": "1.0.4",
"version": "1.0.6",
"description": "",

@@ -34,3 +34,3 @@ "main": "dist/multisource.js",

"repo-publish": "npm run clean && npm i && npm run repo-publish-quick",
"repo-publish-quick": "npm run prettier && npm run build && npm run test && npm run repo-tag && npm publish --access public --registry https://registry.npmjs.org "
"repo-publish-quick": "npm run prettier && npm run build && npm run test && npm run doc && npm run repo-tag && npm publish --access public --registry https://registry.npmjs.org "
},

@@ -47,3 +47,3 @@ "license": "MIT",

"devDependencies": {
"@jsonic/doc": "^0.0.7",
"@jsonic/doc": "^0.0.8",
"@types/jest": "^29.5.3",

@@ -50,0 +50,0 @@ "browserify": "^17.0.0",

@@ -9,4 +9,4 @@ # multisource

[![Known Vulnerabilities](https://snyk.io/test/github/jsonicjs/multisource/badge.svg)](https://snyk.io/test/github/jsonicjs/multisource)
[![DeepScan grade](https://deepscan.io/api/teams/5016/projects/25267/branches/788638/badge/grade.svg)](https://deepscan.io/dashboard#view=project&tid=5016&pid=25267&bid=788638)
[![Maintainability](https://api.codeclimate.com/v1/badges/6da148ebd83e336cdcbe/maintainability)](https://codeclimate.com/github/jsonicjs/multisource/maintainability)
[![DeepScan grade](https://deepscan.io/api/teams/5016/projects/22471/branches/663911/badge/grade.svg)](https://deepscan.io/dashboard#view=project&tid=5016&pid=22471&bid=663911)
[![Maintainability](https://api.codeclimate.com/v1/badges/eb0f99f5302e3bd37924/maintainability)](https://codeclimate.com/github/jsonicjs/multisource/maintainability)

@@ -21,3 +21,14 @@

## Options
_None_
* _implictExt_
* _0_: `string` (default: jsonic) - 0
* _1_: `string` (default: jsc) - 1
* _2_: `string` (default: json) - 2
* _3_: `string` (default: js) - 3
* _markchar_: `string` (default: @) - markchar
* _processor_
* __: `function` (default: (res) => (res.val = process(res.src, res))) -
* _js_: `instance` (required) - js
* _jsc_: `instance` (required) - jsc
* _json_: `function` (default: (res) => (res.val = process(res.src, res))) - json
* _jsonic_: `instance` (required) - jsonic
<!--END:options-->

@@ -295,2 +295,7 @@ /* Copyright (c) 2021 Richard Rodger, MIT License */

// Plugin meta data
const meta = {
name: 'MultiSource',
}
export type {

@@ -307,14 +312,2 @@ Resolver,

export {
MultiSource,
resolvePathSpec,
NONE,
TOP,
// // Re-exported from jsonic for convenience
// Context,
// // TODO: remove for better tree shaking
// makeFileResolver,
// makeMemResolver,
}
export { MultiSource, resolvePathSpec, NONE, TOP, meta }

Sorry, the diff of this file is not supported yet

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc