You've already forked wakapi-readme-stats
1 line
51 KiB
JavaScript
1 line
51 KiB
JavaScript
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("vega-util"),require("vega-functions"),require("vega-event-selector"),require("vega-scale"),require("vega-dataflow")):"function"==typeof define&&define.amd?define(["exports","vega-util","vega-functions","vega-event-selector","vega-scale","vega-dataflow"],t):t((e=e||self).vega={},e.vega,e.vega,e.vega,e.vega,e.vega)}(this,(function(e,t,n,i,a,r){"use strict";function l(e){return t.isObject(e)?e:{type:e||"pad"}}const o=e=>+e||0;function s(e){return t.isObject(e)?e.signal?e:{top:o(e.top),bottom:o(e.bottom),left:o(e.left),right:o(e.right)}:{top:n=o(e),bottom:n,left:n,right:n};var n}const u=e=>t.isObject(e)&&!t.isArray(e)?t.extend({},e):{value:e};function d(e,n,i,a){return null!=i?(t.isObject(i)&&!t.isArray(i)?e.update[n]=i:e[a||"enter"][n]={value:i},1):0}function c(e,t,n){for(const n in t)d(e,n,t[n]);for(const t in n)d(e,t,n[t],"update")}function f(e,n,i){for(const a in n)i&&t.hasOwnProperty(i,a)||(e[a]=t.extend(e[a]||{},n[a]));return e}function p(e,t){return t&&(t.enter&&t.enter[e]||t.update&&t.update[e])}function g(e,t,n){e[t]=n&&n.signal?{signal:n.signal}:{value:n}}const m=e=>t.isString(e)?t.stringValue(e):e.signal?`(${e.signal})`:v(e);function h(e){if(null!=e.gradient)return function(e){const n=[e.start,e.stop,e.count].map(e=>null==e?null:t.stringValue(e));for(;n.length&&null==t.peek(n);)n.pop();return n.unshift(m(e.gradient)),`gradient(${n.join(",")})`}(e);let n=e.signal?`(${e.signal})`:e.color?function(e){return e.c?y("hcl",e.h,e.c,e.l):e.h||e.s?y("hsl",e.h,e.s,e.l):e.l||e.a?y("lab",e.l,e.a,e.b):e.r||e.g||e.b?y("rgb",e.r,e.g,e.b):null}(e.color):null!=e.field?v(e.field):void 0!==e.value?t.stringValue(e.value):void 0;return null!=e.scale&&(n=function(e,t){const n=m(e.scale);null!=e.range?t=`lerp(_range(${n}), ${+e.range})`:(void 0!==t&&(t=`_scale(${n}, ${t})`),e.band&&(t=(t?t+"+":"")+`_bandwidth(${n})`+(1==+e.band?"":"*"+b(e.band)),e.extra&&(t=`(datum.extra ? _scale(${n}, datum.extra.value) : ${t})`)),null==t&&(t="0"));return t}(e,n)),void 0===n&&(n=null),null!=e.exponent&&(n=`pow(${n},${b(e.exponent)})`),null!=e.mult&&(n+="*"+b(e.mult)),null!=e.offset&&(n+="+"+b(e.offset)),e.round&&(n=`round(${n})`),n}const y=(e,t,n,i)=>`(${e}(${[t,n,i].map(h).join(",")})+'')`;function b(e){return t.isObject(e)?"("+h(e)+")":e}function v(e){return function e(n){let i,a,r;if(n.signal)i="datum",r=n.signal;else if(n.group||n.parent){for(a=Math.max(1,n.level||1),i="item";a-- >0;)i+=".mark.group";n.parent?(r=n.parent,i+=".datum"):r=n.group}else n.datum?(i="datum",r=n.datum):t.error("Invalid field reference: "+t.stringValue(n));n.signal||(r=t.isString(r)?t.splitAccessPath(r).map(t.stringValue).join("]["):e(r));return i+"["+r+"]"}(t.isObject(e)?e:{datum:e})}function x(e,n,i,a,r,l){const o={};(l=l||{}).encoders={$encode:o},e=function(e,n,i,a,r){const l={},o={};let s,u,d,c;for(u in u="lineBreak","text"!==n||null==r[u]||p(u,e)||g(l,u,r[u]),("legend"==i||String(i).startsWith("axis"))&&(i=null),c="frame"===i?r.group:"mark"===i?t.extend({},r.mark,r[n]):null,c)d=p(u,e)||("fill"===u||"stroke"===u)&&(p("fill",e)||p("stroke",e)),d||g(l,u,c[u]);for(u in t.array(a).forEach(t=>{const n=r.style&&r.style[t];for(const t in n)p(t,e)||g(l,t,n[t])}),e=t.extend({},e),l)c=l[u],c.signal?(s=s||{})[u]=c:o[u]=c;return e.enter=t.extend(o,e.enter),s&&(e.update=t.extend(s,e.update)),e}(e,n,i,a,r.config);for(const t in e)o[t]=k(e[t],n,l,r);return l}function k(e,n,i,a){const r={},l={};for(const n in e)null!=e[n]&&(r[n]=$((o=e[n],t.isArray(o)?function(e){let n="";return e.forEach(e=>{const t=h(e);n+=e.test?`(${e.test})?${t}:`:t}),":"===t.peek(n)&&(n+="null"),n}(o):h(o)),a,i,l));var o;return{$expr:{marktype:n,channels:r},$fields:Object.keys(l),$output:Object.keys(e)}}function $(e,i,a,r){const l=n.parseExpression(e,i);return l.$fields.forEach(e=>r[e]=1),t.extend(a,l.$params),l.$expr}var S=["value","update","init","react","bind"];function O(e,n){t.error(e+' for "outer" push: '+t.stringValue(n))}function R(e,t){var n=e.name;if("outer"===e.push)t.signals[n]||O("No prior signal definition",n),S.forEach((function(t){void 0!==e[t]&&O("Invalid property ",t)}));else{var i=t.addSignal(n,e.value);!1===e.react&&(i.react=!1),e.bind&&t.addBinding(n,e.bind)}}function z(e,t,n,i){this.id=-1,this.type=e,this.value=t,this.params=n,i&&(this.parent=i)}function w(e,t,n,i){return new z(e,t,n,i)}function j(e,t){return w("operator",e,t)}function W(e){var t={$ref:e.id};return e.id<0&&(e.refs=e.refs||[]).push(t),t}function P(e,t){return t?{$field:e,$name:t}:{$field:e}}var D=P("key");function V(e,t){return{$compare:e,$order:t}}function C(e,t){return(e&&e.signal?"$"+e.signal:e||"")+(e&&t?"_":"")+(t&&t.signal?"$"+t.signal:t||"")}function E(e){return e&&e.signal}function _(e){if(E(e))return!0;if(t.isObject(e))for(var n in e)if(_(e[n]))return!0;return!1}function L(e,t){return null!=e?e:t}function F(e){return e&&e.signal||e}function A(e,n){return(e.merge?T:e.stream?B:e.type?q:t.error("Invalid stream specification: "+t.stringValue(e)))(e,n)}function T(e,t){var n=U({merge:e.merge.map(e=>A(e,t))},e,t);return t.addStream(n).id}function B(e,t){var n=U({stream:A(e.stream,t)},e,t);return t.addStream(n).id}function q(e,t){var n,i,a;return"timer"===e.type?(n=t.event("timer",e.throttle),e={between:e.between,filter:e.filter}):n=t.event("scope"===(a=e.source)?"view":a||"view",e.type),i=U({stream:n},e,t),1===Object.keys(i).length?n:t.addStream(i).id}function U(e,i,a){var r,l,o,s,u=i.between;return u&&(2!==u.length&&t.error('Stream "between" parameter must have 2 entries: '+t.stringValue(i)),e.between=[A(u[0],a),A(u[1],a)]),u=i.filter?[].concat(i.filter):[],(i.marktype||i.markname||i.markrole)&&u.push((r=i.marktype,l=i.markname,o=i.markrole,(s="event.item")+(r&&"*"!==r?"&&"+s+".mark.marktype==='"+r+"'":"")+(o?"&&"+s+".mark.role==='"+o+"'":"")+(l?"&&"+s+".mark.name==='"+l+"'":""))),"scope"===i.source&&u.push("inScope(event.item)"),u.length&&(e.filter=n.parseExpression("("+u.join(")&&(")+")",a).$expr),null!=(u=i.throttle)&&(e.throttle=+u),null!=(u=i.debounce)&&(e.debounce=+u),i.consume&&(e.consume=!0),e}const M={code:"_.$value",ast:{type:"Identifier",value:"value"}};function H(e,a,r){var l=e.events,o=e.update,s=e.encode,u=[],d={target:r};l||t.error("Signal update missing events specification."),t.isString(l)&&(l=i.selector(l,a.isSubscope()?"scope":"view")),l=t.array(l).filter(e=>e.signal||e.scale?(u.push(e),0):1),u.length>1&&(u=[I(u)]),l.length&&u.push(l.length>1?{merge:l}:l[0]),null!=s&&(o&&t.error("Signal encode and update are mutually exclusive."),o="encode(item(),"+t.stringValue(s)+")"),d.update=t.isString(o)?n.parseExpression(o,a):null!=o.expr?n.parseExpression(o.expr,a):null!=o.value?o.value:null!=o.signal?{$expr:M,$params:{$value:a.signalRef(o.signal)}}:t.error("Invalid signal update specification."),e.force&&(d.options={force:!0}),u.forEach((function(e){a.addUpdate(t.extend(function(e,t){return{source:e.signal?t.signalRef(e.signal):e.scale?t.scaleRef(e.scale):A(e,t)}}(e,a),d))}))}function I(e){return{signal:"["+e.map(e=>e.scale?'scale("'+e.scale+'")':e.signal)+"]"}}function X(e,i){var a=i.getSignal(e.name),r=e.update;e.init&&(r?t.error("Signals can not include both init and update expressions."):(r=e.init,a.initonly=!0)),r&&(r=n.parseExpression(r,i),a.update=r.$expr,a.params=r.$params),e.on&&e.on.forEach((function(e){H(e,i,a.id)}))}const Y=e=>(t,n,i)=>w(e,n,t||void 0,i);var N=Y("aggregate"),G=Y("axisticks"),Q=Y("bound"),J=Y("collect"),K=Y("compare"),Z=Y("datajoin"),ee=Y("encode"),te=Y("expression"),ne=Y("facet"),ie=Y("field"),ae=Y("key"),re=Y("legendentries"),le=Y("load"),oe=Y("mark"),se=Y("multiextent"),ue=Y("multivalues"),de=Y("overlap"),ce=Y("params"),fe=Y("prefacet"),pe=Y("projection"),ge=Y("proxy"),me=Y("relay"),he=Y("render"),ye=Y("scale"),be=Y("sieve"),ve=Y("sortitems"),xe=Y("viewlayout"),ke=Y("values"),$e=0,Se={min:"min",max:"max",count:"sum"};function Oe(e,n){var i,r,l=n.getScale(e.name).params;for(i in l.domain=je(e.domain,e,n),null!=e.range&&(l.range=function e(n,i,r){var l=n.range,o=i.config.range;if(l.signal)return i.signalRef(l.signal);if(t.isString(l)){if(o&&t.hasOwnProperty(o,l))return n=t.extend({},n,{range:o[l]}),e(n,i,r);"width"===l?l=[0,{signal:"width"}]:"height"===l?l=a.isDiscrete(n.type)?[0,{signal:"height"}]:[{signal:"height"},0]:t.error("Unrecognized scale range value: "+t.stringValue(l))}else{if(l.scheme)return r.scheme=t.isArray(l.scheme)?ze(l.scheme,i):Re(l.scheme,i),l.extent&&(r.schemeExtent=ze(l.extent,i)),void(l.count&&(r.schemeCount=Re(l.count,i)));if(l.step)return void(r.rangeStep=Re(l.step,i));if(a.isDiscrete(n.type)&&!t.isArray(l))return je(l,n,i);t.isArray(l)||t.error("Unsupported range type: "+t.stringValue(l))}return l.map(e=>(t.isArray(e)?ze:Re)(e,i))}(e,n,l)),null!=e.interpolate&&function(e,t){t.interpolate=Re(e.type||e),null!=e.gamma&&(t.interpolateGamma=Re(e.gamma))}(e.interpolate,l),null!=e.nice&&(l.nice=(r=e.nice,t.isObject(r)?{interval:Re(r.interval),step:Re(r.step)}:Re(r))),null!=e.bins&&(l.bins=function(e,n){return e.signal||t.isArray(e)?ze(e,n):n.objectProperty(e)}(e.bins,n)),e)t.hasOwnProperty(l,i)||"name"===i||(l[i]=Re(e[i],n))}function Re(e,n){return t.isObject(e)?e.signal?n.signalRef(e.signal):t.error("Unsupported object: "+t.stringValue(e)):e}function ze(e,t){return e.signal?t.signalRef(e.signal):e.map(e=>Re(e,t))}function we(e){t.error("Can not find data set: "+t.stringValue(e))}function je(e,n,i){if(e)return e.signal?i.signalRef(e.signal):(t.isArray(e)?We:e.fields?De:Pe)(e,n,i);null==n.domainMin&&null==n.domainMax||t.error("No scale domain defined for domainMin/domainMax to override.")}function We(e,t,n){return e.map((function(e){return Re(e,n)}))}function Pe(e,t,n){var i=n.getData(e.data);return i||we(e.data),a.isDiscrete(t.type)?i.valuesRef(n,e.field,Ce(e.sort,!1)):a.isQuantile(t.type)?i.domainRef(n,e.field):i.extentRef(n,e.field)}function De(e,n,i){var r=e.data,l=e.fields.reduce((function(e,n){return n=t.isString(n)?{data:r,field:n}:t.isArray(n)||n.signal?function(e,n){var i="_:vega:_"+$e++,a=J({});if(t.isArray(e))a.value={$ingest:e};else if(e.signal){var r="setdata("+t.stringValue(i)+","+e.signal+")";a.params.input=n.signalRef(r)}return n.addDataPipeline(i,[a,be({})]),{data:i,field:"data"}}(n,i):n,e.push(n),e}),[]);return(a.isDiscrete(n.type)?Ve:a.isQuantile(n.type)?Ee:_e)(e,i,l)}function Ve(e,t,n){var i,a,r,l,o,s=Ce(e.sort,!0);return i=n.map((function(e){var n=t.getData(e.data);return n||we(e.data),n.countsRef(t,e.field,s)})),a={groupby:D,pulse:i},s&&(r=s.op||"count",o=s.field?C(r,s.field):"count",a.ops=[Se[r]],a.fields=[t.fieldRef(o)],a.as=[o]),r=t.add(N(a)),l=t.add(J({pulse:W(r)})),o=t.add(ke({field:D,sort:t.sortRef(s),pulse:W(l)})),W(o)}function Ce(e,n){return e&&(e.field||e.op?e.field||"count"===e.op?n&&e.field&&e.op&&!Se[e.op]&&t.error("Multiple domain scales can not be sorted using "+e.op):t.error("No field provided for sort aggregate op: "+e.op):t.isObject(e)?e.field="key":e={field:"key"}),e}function Ee(e,t,n){var i=n.map((function(e){var n=t.getData(e.data);return n||we(e.data),n.domainRef(t,e.field)}));return W(t.add(ue({values:i})))}function _e(e,t,n){var i=n.map((function(e){var n=t.getData(e.data);return n||we(e.data),n.extentRef(t,e.field)}));return W(t.add(se({extents:i})))}function Le(e,n,i){return t.isArray(e)?e.map((function(e){return Le(e,n,i)})):t.isObject(e)?e.signal?i.signalRef(e.signal):"fit"===n?e:t.error("Unsupported parameter object: "+t.stringValue(e)):e}const Fe="top",Ae="value",Te=["size","shape","fill","stroke","strokeWidth","strokeDash","opacity"],Be={name:1,style:1,interactive:1},qe={value:0},Ue={value:1};function Me(e){return e.type="group",e.interactive=e.interactive||!1,e}function He(e,t){const n=(n,i)=>L(e[n],L(t[n],i));return n.isVertical=n=>"vertical"===L(e.direction,t.direction||(n?t.symbolDirection:t.gradientDirection)),n.gradientLength=()=>L(e.gradientLength,t.gradientLength||t.gradientWidth),n.gradientThickness=()=>L(e.gradientThickness,t.gradientThickness||t.gradientHeight),n.entryColumns=()=>L(e.columns,L(t.columns,+n.isVertical(!0))),n}function Ie(e,t){var n=t&&(t.update&&t.update[e]||t.enter&&t.enter[e]);return n&&n.signal?n:n?n.value:null}function Xe(e,t,n){return`item.anchor === 'start' ? ${e} : item.anchor === 'end' ? ${t} : ${n}`}const Ye=Xe(t.stringValue("left"),t.stringValue("right"),t.stringValue("center"));function Ne(e,n){return n?e?t.isObject(e)?Object.assign({},e,{offset:Ne(e.offset,n)}):{value:e,offset:n}:n:e}function Ge(e,t){return t?(e.name=t.name,e.style=t.style||e.style,e.interactive=!!t.interactive,e.encode=f(e.encode,t,Be)):e.interactive=!1,e}function Qe(e,n,i,a){var r,l,o,s,d,f,p=He(e,i),g=p.isVertical(),m=p.gradientThickness(),h=p.gradientLength();return g?(o=[0,1],s=[0,0],d=m,f=h):(o=[0,0],s=[1,0],d=h,f=m),c(r={enter:l={opacity:qe,x:qe,y:qe,width:u(d),height:u(f)},update:t.extend({},l,{opacity:Ue,fill:{gradient:n,start:o,stop:s}}),exit:{opacity:qe}},{stroke:p("gradientStrokeColor"),strokeWidth:p("gradientStrokeWidth")},{opacity:p("gradientOpacity")}),Ge({type:"rect",role:"legend-gradient",encode:r},a)}function Je(e,n,i,a,r){var l,o,s,d,f,p,g=He(e,i),m=g.isVertical(),h=g.gradientThickness(),y=g.gradientLength(),b="";return m?(s="y",f="y2",d="x",p="width",b="1-"):(s="x",f="x2",d="y",p="height"),(o={opacity:qe,fill:{scale:n,field:Ae}})[s]={signal:b+"datum.perc",mult:y},o[d]=qe,o[f]={signal:b+"datum.perc2",mult:y},o[p]=u(h),c(l={enter:o,update:t.extend({},o,{opacity:Ue}),exit:{opacity:qe}},{stroke:g("gradientStrokeColor"),strokeWidth:g("gradientStrokeWidth")},{opacity:g("gradientOpacity")}),Ge({type:"rect",role:"legend-band",key:Ae,from:r,encode:l},a)}function Ke(e,t,n,i){var a,r,l,o,s,d=He(e,t),f=d.isVertical(),p=u(d.gradientThickness()),g=d.gradientLength(),m=d("labelOverlap"),h="";return c(a={enter:r={opacity:qe},update:l={opacity:Ue,text:{field:"label"}},exit:{opacity:qe}},{fill:d("labelColor"),fillOpacity:d("labelOpacity"),font:d("labelFont"),fontSize:d("labelFontSize"),fontStyle:d("labelFontStyle"),fontWeight:d("labelFontWeight"),limit:L(e.labelLimit,t.gradientLabelLimit)}),f?(r.align={value:"left"},r.baseline=l.baseline={signal:'datum.perc<=0?"bottom":datum.perc>=1?"top":"middle"'},o="y",s="x",h="1-"):(r.align=l.align={signal:'datum.perc<=0?"left":datum.perc>=1?"right":"center"'},r.baseline={value:"top"},o="x",s="y"),r[o]=l[o]={signal:h+"datum.perc",mult:g},r[s]=l[s]=p,p.offset=L(e.labelOffset,t.gradientLabelOffset)||0,m=m?{separation:d("labelSeparation"),method:m,order:"datum.index"}:void 0,Ge({type:"text",role:"legend-label",style:"guide-label",key:Ae,from:i,encode:a,overlap:m},n)}function Ze(e,t,n,i,a){var r,l,o,s,d,p,g,m=He(e,t),h=n.entries,y=!(!h||!h.interactive),b=h?h.name:void 0,v=m("clipHeight"),x=m("symbolOffset"),k={data:"value"},$={},S=`(${a}) ? datum.offset : datum.size`,O=v?u(v):{field:"size"},R="datum.index",z=`max(1, ${a})`;O.mult=.5,$={enter:r={opacity:qe,x:{signal:S,mult:.5,offset:x},y:O},update:l={opacity:Ue,x:r.x,y:r.y},exit:{opacity:qe}};var w=null,j=null;return e.fill||(w=t.symbolBaseFillColor,j=t.symbolBaseStrokeColor),c($,{fill:m("symbolFillColor",w),shape:m("symbolType"),size:m("symbolSize"),stroke:m("symbolStrokeColor",j),strokeDash:m("symbolDash"),strokeDashOffset:m("symbolDashOffset"),strokeWidth:m("symbolStrokeWidth")},{opacity:m("symbolOpacity")}),Te.forEach((function(t){e[t]&&(l[t]=r[t]={scale:e[t],field:Ae})})),s=Ge({type:"symbol",role:"legend-symbol",key:Ae,from:k,clip:!!v||void 0,encode:$},n.symbols),(o=u(x)).offset=m("labelOffset"),c($={enter:r={opacity:qe,x:{signal:S,offset:o},y:O},update:l={opacity:Ue,text:{field:"label"},x:r.x,y:r.y},exit:{opacity:qe}},{align:m("labelAlign"),baseline:m("labelBaseline"),fill:m("labelColor"),fillOpacity:m("labelOpacity"),font:m("labelFont"),fontSize:m("labelFontSize"),fontStyle:m("labelFontStyle"),fontWeight:m("labelFontWeight"),limit:m("labelLimit")}),d=Ge({type:"text",role:"legend-label",style:"guide-label",key:Ae,from:k,encode:$},n.labels),$={enter:{noBound:{value:!v},width:qe,height:v?u(v):qe,opacity:qe},exit:{opacity:qe},update:l={opacity:Ue,row:{signal:null},column:{signal:null}}},m.isVertical(!0)?(p=`ceil(item.mark.items.length / ${z})`,l.row.signal=`${R}%${p}`,l.column.signal=`floor(${R} / ${p})`,g={field:["row",R]}):(l.row.signal=`floor(${R} / ${z})`,l.column.signal=`${R} % ${z}`,g={field:R}),l.column.signal=`(${a})?${l.column.signal}:${R}`,Me({role:"scope",from:i={facet:{data:i,name:"value",groupby:"index"}},encode:f($,h,Be),marks:[s,d],name:b,interactive:y,sort:g})}const et='item.orient === "left"',tt='item.orient === "right"',nt=`(${et} || ${tt})`,it="datum.vgrad && "+nt,at=Xe('"top"','"bottom"','"middle"'),rt=`datum.vgrad && ${tt} ? (${Xe('"right"','"left"','"center"')}) : (${nt} && !(datum.vgrad && ${et})) ? "left" : ${Ye}`,lt=`item._anchor || (${nt} ? "middle" : "start")`,ot=`${it} ? (${et} ? -90 : 90) : 0`,st=`${nt} ? (datum.vgrad ? (${tt} ? "bottom" : "top") : ${at}) : "top"`;function ut(e,n){var i;return t.isObject(e)&&(e.signal?i=e.signal:e.path?i="pathShape("+dt(e.path)+")":e.sphere&&(i="geoShape("+dt(e.sphere)+', {type: "Sphere"})')),i?n.signalRef(i):!!e}function dt(e){return t.isObject(e)&&e.signal?e.signal:t.stringValue(e)}function ct(e){var t=e.role||"";return t.indexOf("axis")&&t.indexOf("legend")&&t.indexOf("title")?"group"===e.type?"scope":t||"mark":t}function ft(e){return{marktype:e.type,name:e.name||void 0,role:e.role||ct(e),zindex:+e.zindex||void 0,aria:e.aria,description:e.description}}function pt(e,t){return e&&e.signal?t.signalRef(e.signal):!1!==e}function gt(e,n){var i=r.definition(e.type);i||t.error("Unrecognized transform type: "+t.stringValue(e.type));var a=w(i.type.toLowerCase(),null,mt(i,e,n));return e.signal&&n.addSignal(e.signal,n.proxy(a)),a.metadata=i.metadata||{},a}function mt(e,t,n){var i,a,r,l={};for(a=0,r=e.params.length;a<r;++a)l[(i=e.params[a]).name]=ht(i,t,n);return l}function ht(e,n,i){var a=e.type,r=n[e.name];return"index"===a?function(e,n,i){t.isString(n.from)||t.error('Lookup "from" parameter must be a string literal.');return i.getData(n.from).lookupRef(i,n.key)}(0,n,i):void 0!==r?"param"===a?function(e,n,i){var a=n[e.name];return e.array?(t.isArray(a)||t.error("Expected an array of sub-parameters. Instead: "+t.stringValue(a)),a.map((function(t){return bt(e,t,i)}))):bt(e,a,i)}(e,n,i):"projection"===a?i.projectionRef(n[e.name]):e.array&&!E(r)?r.map((function(t){return yt(e,t,i)})):yt(e,r,i):void(e.required&&t.error("Missing required "+t.stringValue(n.type)+" parameter: "+t.stringValue(e.name)))}function yt(e,i,a){var r=e.type;if(E(i))return vt(r)?t.error("Expression references can not be signals."):xt(r)?a.fieldRef(i):kt(r)?a.compareRef(i):a.signalRef(i.signal);var l,o=e.expr||xt(r);return o&&((l=i)&&l.expr)?a.exprRef(i.expr,i.as):o&&function(e){return e&&e.field}(i)?P(i.field,i.as):vt(r)?n.parseExpression(i,a):function(e){return"data"===e}(r)?W(a.getData(i).values):xt(r)?P(i):kt(r)?a.compareRef(i):i}function bt(e,n,i){var a,r,l,o,s;for(o=0,s=e.params.length;o<s;++o){for(l in(r=e.params[o]).key)if(r.key[l]!==n[l]){r=null;break}if(r)break}return r||t.error("Unsupported parameter: "+t.stringValue(n)),a=t.extend(mt(r,n,i),r.key),W(i.add(ce(a)))}function vt(e){return"expr"===e}function xt(e){return"field"===e}function kt(e){return"compare"===e}function $t(e,t){return e.$ref?e:e.data&&e.data.$ref?e.data:W(t.getData(e.data).output)}function St(e,t,n,i,a){this.scope=e,this.input=t,this.output=n,this.values=i,this.aggregate=a,this.index={}}St.fromEntries=function(e,t){var n=t.length,i=1,a=t[0],r=t[n-1],l=t[n-2],o=null;for(a&&"load"===a.type&&(a=t[1]),e.add(t[0]);i<n;++i)t[i].params.pulse=W(t[i-1]),e.add(t[i]),"aggregate"===t[i].type&&(o=t[i]);return new St(e,a,l,r,o)};var Ot=St.prototype;function Rt(e){return t.isString(e)?e:null}function zt(e,t,n){var i,a=C(n.op,n.field);if(t.ops){for(var r=0,l=t.as.length;r<l;++r)if(t.as[r]===a)return}else t.ops=["count"],t.fields=[null],t.as=["count"];n.op&&(t.ops.push((i=n.op.signal)?e.signalRef(i):n.op),t.fields.push(e.fieldRef(n.field)),t.as.push(a))}function wt(e,n,i,a,r,l,o){var s,u,d=n[i]||(n[i]={}),c=function(e){return t.isObject(e)?("descending"===e.order?"-":"+")+C(e.op,e.field):""}(l),f=Rt(r);if(null!=f&&(e=n.scope,s=d[f+=c?"|"+c:""]),!s){var p=l?{field:D,pulse:n.countsRef(e,r,l)}:{field:e.fieldRef(r),pulse:W(n.output)};c&&(p.sort=e.sortRef(l)),u=e.add(w(a,void 0,p)),o&&(n.index[r]=u),s=W(u),null!=f&&(d[f]=s)}return s}function jt(e,t,i){var a,r,l=e.remove,o=e.insert,s=e.toggle,u=e.modify,d=e.values,c=t.add(j());a="if("+e.trigger+',modify("'+i+'",'+[o,l,s,u,d].map((function(e){return null==e?"null":e})).join(",")+"),0)",r=n.parseExpression(a,t),c.update=r.$expr,c.params=r.$params}function Wt(e,n){var i,a,r,l,o,s,u,d,c,f,p,g,m,h,y=ct(e),b="group"===e.type,v=e.from&&e.from.facet,k=e.layout||"scope"===y||"frame"===y,$="mark"===y||k||v,S=e.overlap;r=function(e,n,i){var a,r,l,o,s;return e?(a=e.facet)&&(n||t.error("Only group marks can be faceted."),null!=a.field?o=s=$t(a,i):(e.data?s=W(i.getData(e.data).aggregate):((l=gt(t.extend({type:"aggregate",groupby:t.array(a.groupby)},a.aggregate),i)).params.key=i.keyRef(a.groupby),l.params.pulse=$t(a,i),o=s=W(i.add(l))),r=i.keyRef(a.groupby,!0))):o=W(i.add(J(null,[{}]))),o||(o=$t(e,i)),{key:r,pulse:o,parent:s}}(e.from,b,n),f=W(a=n.add(Z({key:r.key||(e.key?P(e.key):void 0),pulse:r.pulse,clean:!b}))),a=l=n.add(J({pulse:f})),a=n.add(oe({markdef:ft(e),interactive:pt(e.interactive,n),clip:ut(e.clip,n),context:{$context:!0},groups:n.lookup(),parent:n.signals.parent?n.signalRef("parent"):null,index:n.markpath(),pulse:W(a)})),p=W(a),(a=o=n.add(ee(x(e.encode,e.type,y,e.style,n,{mod:!1,pulse:p})))).params.parent=n.encode(),e.transform&&e.transform.forEach((function(e){const i=gt(e,n),r=i.metadata;(r.generates||r.changes)&&t.error("Mark transforms should not generate new data."),r.nomod||(o.params.mod=!0),i.params.pulse=W(a),n.add(a=i)})),e.sort&&(a=n.add(ve({sort:n.compareRef(e.sort),pulse:W(a)}))),g=W(a),(v||k)&&(m=W(k=n.add(xe({layout:n.objectProperty(e.layout),legends:n.legends,mark:p,pulse:g})))),h=W(s=n.add(Q({mark:p,pulse:m||g}))),b&&($&&((i=n.operators).pop(),k&&i.pop()),n.pushState(g,m||h,f),v?function(e,n,i){var a,r,l,o,s=e.from.facet,u=s.name,d=$t(s,n);s.name||t.error("Facet must have a name: "+t.stringValue(s)),s.data||t.error("Facet must reference a data set: "+t.stringValue(s)),s.field?o=n.add(fe({field:n.fieldRef(s.field),pulse:d})):s.groupby?o=n.add(ne({key:n.keyRef(s.groupby),group:W(n.proxy(i.parent)),pulse:d})):t.error("Facet must specify groupby or field: "+t.stringValue(s)),r=(a=n.fork()).add(J()),l=a.add(be({pulse:W(r)})),a.addData(u,new St(a,r,r,l)),a.addSignal("parent",null),o.params.subflow={$subflow:a.parse(e).toRuntime()}}(e,n,r):$?function(e,t,n){var i=t.add(fe({pulse:n.pulse})),a=t.fork();a.add(be()),a.addSignal("parent",null),i.params.subflow={$subflow:a.parse(e).toRuntime()}}(e,n,r):n.parse(e),n.popState(),$&&(k&&i.push(k),i.push(s))),S&&(h=function(e,t,n){var i,a=e.method,r=e.bound,l=e.separation,o={separation:E(l)?n.signalRef(l.signal):l,method:E(a)?n.signalRef(a.signal):a,pulse:t};e.order&&(o.sort=n.compareRef({field:e.order}));r&&(i=r.tolerance,o.boundTolerance=E(i)?n.signalRef(i.signal):+i,o.boundScale=n.scaleRef(r.scale),o.boundOrient=r.orient);return W(n.add(de(o)))}(S,h,n)),u=n.add(he({pulse:h})),d=n.add(be({pulse:W(u)},void 0,n.parent())),null!=e.name&&(c=e.name,n.addData(c,new St(n,l,u,d)),e.on&&e.on.forEach((function(e){(e.insert||e.remove||e.toggle)&&t.error("Marks only support modify triggers."),jt(e,n,c)})))}function Pt(e,i){var r,l,o,s,u,d,p,g,m=i.config.legend,h=e.encode||{},y=h.legend||{},b=y.name||void 0,v=y.interactive,x=y.style,k=He(e,m),$={},S=0;return Te.forEach(t=>e[t]?($[t]=e[t],S=S||e[t]):0),S||t.error("Missing valid scale for legend."),u=function(e,t){var n=e.type||"symbol";e.type||1!==function(e){return Te.reduce((function(t,n){return t+(e[n]?1:0)}),0)}(e)||!e.fill&&!e.stroke||(n=a.isContinuous(t)?"gradient":a.isDiscretizing(t)?"discrete":"symbol");return"gradient"!==n?n:a.isDiscretizing(t)?"discrete":"gradient"}(e,i.scaleType(S)),d={title:null!=e.title,scales:$,type:u,vgrad:"symbol"!==u&&k.isVertical()},p=W(i.add(J(null,[d]))),y=f(function(e,t,n){var i={enter:{},update:{}};return c(i,{orient:e("orient"),offset:e("offset"),padding:e("padding"),titlePadding:e("titlePadding"),cornerRadius:e("cornerRadius"),fill:e("fillColor"),stroke:e("strokeColor"),strokeWidth:n.strokeWidth,strokeDash:n.strokeDash,x:e("legendX"),y:e("legendY"),format:t.format,formatType:t.formatType}),i}(k,e,m),y,Be),r={enter:{x:{value:0},y:{value:0}}},g=W(i.add(re(o={type:u,scale:i.scaleRef(S),count:i.objectProperty(k("tickCount")),limit:i.property(k("symbolLimit")),values:i.objectProperty(e.values),minstep:i.property(e.tickMinStep),formatType:i.property(e.formatType),formatSpecifier:i.property(e.format)}))),"gradient"===u?(s=[Qe(e,S,m,h.gradient),Ke(e,m,h.labels,g)],o.count=o.count||i.signalRef(`max(2,2*floor((${F(k.gradientLength())})/100))`)):"discrete"===u?s=[Je(e,S,m,h.gradient,g),Ke(e,m,h.labels,g)]:(l=function(e,t){const n=He(e,t);return{align:n("gridAlign"),columns:n.entryColumns(),center:{row:!0,column:!1},padding:{row:n("rowPadding"),column:n("columnPadding")}}}(e,m),s=[Ze(e,m,h,g,F(l.columns))],o.size=function(e,t,i){var a=F(Dt("size",e,i)),r=F(Dt("strokeWidth",e,i)),l=F(function(e,t,n){return Ie("fontSize",e)||function(e,t,n){var i=t.config.style[n];return i&&i[e]}("fontSize",t,n)}(i[1].encode,t,"guide-label"));return n.parseExpression(`max(ceil(sqrt(${a})+${r}),${l})`,t)}(e,i,s[0].marks)),s=[Me({role:"legend-entry",from:p,encode:r,marks:s,layout:l,interactive:v})],d.title&&s.push(function(e,t,n,i){var a,r=He(e,t);return c(a={enter:{opacity:qe},update:{opacity:Ue,x:{field:{group:"padding"}},y:{field:{group:"padding"}}},exit:{opacity:qe}},{orient:r("titleOrient"),_anchor:r("titleAnchor"),anchor:{signal:lt},angle:{signal:ot},align:{signal:rt},baseline:{signal:st},text:e.title,fill:r("titleColor"),fillOpacity:r("titleOpacity"),font:r("titleFont"),fontSize:r("titleFontSize"),fontStyle:r("titleFontStyle"),fontWeight:r("titleFontWeight"),limit:r("titleLimit"),lineHeight:r("titleLineHeight")},{align:r("titleAlign"),baseline:r("titleBaseline")}),Ge({type:"text",role:"legend-title",style:"guide-title",from:i,encode:a},n)}(e,m,h.title,p)),Wt(Me({role:"legend",from:p,encode:y,marks:s,aria:k("aria"),description:k("description"),zindex:k("zindex"),name:b,interactive:v,style:x}),i)}function Dt(e,t,n){return t[e]?`scale("${t[e]}",datum)`:Ie(e,n[0].encode)}Ot.countsRef=function(e,t,n){var i,a,r,l=this.counts||(this.counts={}),o=Rt(t);return null!=o&&(e=this.scope,i=l[o]),i?n&&n.field&&zt(e,i.agg.params,n):(r={groupby:e.fieldRef(t,"key"),pulse:W(this.output)},n&&n.field&&zt(e,r,n),a=e.add(N(r)),i=e.add(J({pulse:W(a)})),i={agg:a,ref:W(i)},null!=o&&(l[o]=i)),i.ref},Ot.tuplesRef=function(){return W(this.values)},Ot.extentRef=function(e,t){return wt(e,this,"extent","extent",t,!1)},Ot.domainRef=function(e,t){return wt(e,this,"domain","values",t,!1)},Ot.valuesRef=function(e,t,n){return wt(e,this,"vals","values",t,n||!0)},Ot.lookupRef=function(e,t){return wt(e,this,"lookup","tupleindex",t,!1)},Ot.indataRef=function(e,t){return wt(e,this,"indata","tupleindex",t,!0,!0)};function Vt(e,n){var i,a,r=He(e=t.isString(e)?{text:e}:e,n.config.title),l=e.encode||{},o=l.group||{},s=o.name||void 0,u=o.interactive,d=o.style,f=[];return i={},a=W(n.add(J(null,[i]))),f.push(function(e,t,n,i){var a={value:0},r=e.text,l={enter:{opacity:a},update:{opacity:{value:1}},exit:{opacity:a}};return c(l,{text:r,align:{signal:"item.mark.group.align"},angle:{signal:"item.mark.group.angle"},limit:{signal:"item.mark.group.limit"},baseline:"top",dx:t("dx"),dy:t("dy"),fill:t("color"),font:t("font"),fontSize:t("fontSize"),fontStyle:t("fontStyle"),fontWeight:t("fontWeight"),lineHeight:t("lineHeight")},{align:t("align"),angle:t("angle"),baseline:t("baseline")}),Ge({type:"text",role:"title-text",style:"group-title",from:i,encode:l},n)}(e,r,function(e){const n=e.encode;return n&&n.title||t.extend({name:e.name,interactive:e.interactive,style:e.style},n)}(e),a)),e.subtitle&&f.push(function(e,t,n,i){var a={value:0},r=e.subtitle,l={enter:{opacity:a},update:{opacity:{value:1}},exit:{opacity:a}};return c(l,{text:r,align:{signal:"item.mark.group.align"},angle:{signal:"item.mark.group.angle"},limit:{signal:"item.mark.group.limit"},baseline:"top",dx:t("dx"),dy:t("dy"),fill:t("subtitleColor"),font:t("subtitleFont"),fontSize:t("subtitleFontSize"),fontStyle:t("subtitleFontStyle"),fontWeight:t("subtitleFontWeight"),lineHeight:t("subtitleLineHeight")},{align:t("align"),angle:t("angle"),baseline:t("baseline")}),Ge({type:"text",role:"title-subtitle",style:"group-subtitle",from:i,encode:l},n)}(e,r,l.subtitle,a)),Wt(Me({role:"title",from:a,encode:Ct(r,o),marks:f,aria:r("aria"),description:r("description"),zindex:r("zindex"),name:s,interactive:u,style:d}),n)}function Ct(e,t){var n={enter:{},update:{}};return c(n,{orient:e("orient"),anchor:e("anchor"),align:{signal:Ye},angle:{signal:'item.orient==="left"?-90:item.orient==="right"?90:0'},limit:e("limit"),frame:e("frame"),offset:e("offset")||0,padding:e("subtitlePadding")}),f(n,t,Be)}function Et(e,n){var i=[];e.transform&&e.transform.forEach((function(e){i.push(gt(e,n))})),e.on&&e.on.forEach((function(t){jt(t,n,e.name)})),n.addDataPipeline(e.name,function(e,n,i){var a,r,l,o,s,u=[],d=null,c=!1,f=!1;e.values?_(e.values)||_(e.format)?(u.push(Lt(n,e)),u.push(d=_t())):u.push(d=_t({$ingest:e.values,$format:e.format})):e.url?_(e.url)||_(e.format)?(u.push(Lt(n,e)),u.push(d=_t())):u.push(d=_t({$request:e.url,$format:e.format})):e.source&&(d=a=t.array(e.source).map((function(e){return W(n.getData(e).output)})),u.push(null));for(r=0,l=i.length;r<l;++r)o=i[r],s=o.metadata,d||s.source||u.push(d=_t()),u.push(o),s.generates&&(f=!0),s.modifies&&!f&&(c=!0),s.source?d=o:s.changes&&(d=null);a&&(l=a.length-1,u[0]=me({derive:c,pulse:l?a:a[0]}),(c||l)&&u.splice(1,0,_t()));d||u.push(_t());return u.push(be({})),u}(e,n,i))}function _t(e){var t=J({},e);return t.metadata={source:!0},t}function Lt(e,t){return le({url:t.url?e.property(t.url):void 0,async:t.async?e.property(t.async):void 0,values:t.values?e.property(t.values):void 0,format:e.objectProperty(t.format)})}const Ft=e=>"bottom"===e||e===Fe,At=(e,t,n)=>E(e)?Ht(e.signal,t,n):"left"===e||e===Fe?t:n,Tt=(e,t,n)=>E(e)?Ut(e.signal,t,n):Ft(e)?t:n,Bt=(e,t,n)=>E(e)?Mt(e.signal,t,n):Ft(e)?n:t,qt=(e,t,n)=>E(e)?It(e.signal,t,n):e===Fe?{value:t}:{value:n},Ut=(e,t,n)=>Yt(`${e} === 'top' || ${e} === 'bottom'`,t,n),Mt=(e,t,n)=>Yt(`${e} !== 'top' && ${e} !== 'bottom'`,t,n),Ht=(e,t,n)=>Gt(`${e} === 'left' || ${e} === 'top'`,t,n),It=(e,t,n)=>Gt(e+" === 'top'",t,n),Xt=(e,t,n)=>Gt(e+" === 'right'",t,n),Yt=(e,n,i)=>(n=null!=n?u(n):n,i=null!=i?u(i):i,Nt(n)&&Nt(i)?{signal:`${e} ? (${n=n?n.signal||t.stringValue(n.value):null}) : (${i=i?i.signal||t.stringValue(i.value):null})`}:[t.extend({test:e},n)].concat(i||[])),Nt=e=>null==e||1===Object.keys(e).length,Gt=(e,t,n)=>({signal:`${e} ? (${Qt(t)}) : (${Qt(n)})`}),Qt=e=>E(e)?e.signal:null==e?null:t.stringValue(e),Jt=(e,t)=>{const n=e.signal;return n&&n.endsWith("(null)")?{signal:n.slice(0,-6)+t.signal}:e};function Kt(e,n,i,a){let r;if(n&&t.hasOwnProperty(n,e))return n[e];if(t.hasOwnProperty(i,e))return i[e];if(e.startsWith("title")){switch(e){case"titleColor":r="fill";break;case"titleFont":case"titleFontSize":case"titleFontWeight":r=e[5].toLowerCase()+e.slice(6)}return a["guide-title"][r]}if(e.startsWith("label")){switch(e){case"labelColor":r="fill";break;case"labelFont":case"labelFontSize":r=e[5].toLowerCase()+e.slice(6)}return a["guide-label"][r]}return null}function Zt(e){const t={};for(const n of e)if(n)for(const e in n)t[e]=1;return Object.keys(t)}function en(e,t){return{scale:e.scale,range:t}}function tn(e,n,i,a,r){var l,o,s,u,d,f,p,g,m=He(e,n),h=e.orient,y=e.gridScale,b=At(h,1,-1),v=function(e,n){if(1===n);else if(t.isObject(e)){let i=e=t.extend({},e);for(;null!=i.mult;){if(!t.isObject(i.mult))return i.mult=E(n)?{signal:`(${i.mult}) * (${n.signal})`}:i.mult*n,e;i=i.mult=t.extend({},i.mult)}i.mult=n}else e=E(n)?{signal:`(${n.signal}) * (${e||0})`}:n*(e||0);return e}(e.offset,b);return c(l={enter:o={opacity:qe},update:u={opacity:Ue},exit:s={opacity:qe}},{stroke:m("gridColor"),strokeCap:m("gridCap"),strokeDash:m("gridDash"),strokeDashOffset:m("gridDashOffset"),strokeOpacity:m("gridOpacity"),strokeWidth:m("gridWidth")}),d={scale:e.scale,field:Ae,band:r.band,extra:r.extra,offset:r.offset,round:m("tickRound")},g=Tt(h,{signal:"height"},{signal:"width"}),f=y?{scale:y,range:0,mult:b,offset:v}:{value:0,offset:v},p=y?{scale:y,range:1,mult:b,offset:v}:t.extend(g,{mult:b,offset:v}),o.x=u.x=Tt(h,d,f),o.y=u.y=Bt(h,d,f),o.x2=u.x2=Bt(h,p),o.y2=u.y2=Tt(h,p),s.x=Tt(h,d),s.y=Bt(h,d),Ge({type:"rule",role:"axis-grid",key:Ae,from:a,encode:l},i)}function nn(e,t,n,i,a){return{signal:'flush(range("'+e+'"), scale("'+e+'", datum.value), '+t+","+n+","+i+","+a+")"}}function an(e,t,n,i,a,r){var l,o,s,d,f,p,g,m,h,y,b=He(e,t),v=e.orient,x=e.scale,k=At(v,-1,1),$=F(b("labelFlush")),S=F(b("labelFlushOffset")),O=0===$||!!$,R=b("labelAlign"),z=b("labelBaseline");return(d=u(a)).mult=k,d.offset=u(b("labelPadding")||0),d.offset.mult=k,f={scale:x,field:Ae,band:.5,offset:Ne(r.offset,b("labelOffset"))},p=Tt(v,O?nn(x,$,'"left"','"right"','"center"'):{value:"center"},((e,t,n)=>E(e)?Xt(e.signal,t,n):"right"===e?{value:t}:{value:n})(v,"left","right")),g=Tt(v,qt(v,"bottom","top"),O?nn(x,$,'"top"','"bottom"','"middle"'):{value:"middle"}),y=nn(x,$,`-(${S})`,S,0),O=O&&S,c(l={enter:o={opacity:qe,x:Tt(v,f,d),y:Bt(v,f,d)},update:s={opacity:Ue,text:{field:"label"},x:o.x,y:o.y,align:p,baseline:g},exit:{opacity:qe,x:o.x,y:o.y}},{dx:!R&&O?Tt(v,y):null,dy:!z&&O?Bt(v,y):null}),c(l,{angle:b("labelAngle"),fill:b("labelColor"),fillOpacity:b("labelOpacity"),font:b("labelFont"),fontSize:b("labelFontSize"),fontWeight:b("labelFontWeight"),fontStyle:b("labelFontStyle"),limit:b("labelLimit"),lineHeight:b("labelLineHeight")},{align:R,baseline:z}),m=b("labelBound"),h=(h=b("labelOverlap"))||m?{separation:b("labelSeparation"),method:h,order:"datum.index",bound:m?{scale:x,orient:v,tolerance:m}:null}:void 0,s.align!==p&&(s.align=Jt(s.align,p)),s.baseline!==g&&(s.baseline=Jt(s.baseline,g)),Ge({type:"text",role:"axis-label",style:"guide-label",key:Ae,from:i,encode:l,overlap:h},n)}function rn(e,n,i,a){var r,l,o,s,d=He(e,n),f=e.orient,g=At(f,-1,1);return r={enter:l={opacity:qe,anchor:u(d("titleAnchor",null)),align:{signal:Ye}},update:o=t.extend({},l,{opacity:Ue,text:u(e.title)}),exit:{opacity:qe}},s={signal:`lerp(range("${e.scale}"), ${Xe(0,1,.5)})`},o.x=Tt(f,s),o.y=Bt(f,s),l.angle=Tt(f,qe,((e,t)=>0===t?0:E(e)?{signal:`(${e.signal}) * ${t}`}:{value:e*t})(g,90)),l.baseline=Tt(f,qt(f,"bottom",Fe),{value:"bottom"}),o.angle=l.angle,o.baseline=l.baseline,c(r,{fill:d("titleColor"),fillOpacity:d("titleOpacity"),font:d("titleFont"),fontSize:d("titleFontSize"),fontStyle:d("titleFontStyle"),fontWeight:d("titleFontWeight"),limit:d("titleLimit"),lineHeight:d("titleLineHeight")},{align:d("titleAlign"),angle:d("titleAngle"),baseline:d("titleBaseline")}),function(e,t,n,i){const a=(e,t)=>null!=e?(n.update[t]=Jt(u(e),n.update[t]),!1):!p(t,i),r=a(e("titleX"),"x"),l=a(e("titleY"),"y");n.enter.auto=l===r?u(l):Tt(t,u(l),u(r))}(d,f,r,i),r.update.align=Jt(r.update.align,l.align),r.update.angle=Jt(r.update.angle,l.angle),r.update.baseline=Jt(r.update.baseline,l.baseline),Ge({type:"text",role:"axis-title",style:"guide-title",from:a,encode:r},i)}function ln(e,n){var i,a,r,l,o,s=function(e,n){var i,a,r,l,o,s,u,d,c=n.config,f=c.style,p=c.axis,g="band"===n.scaleType(e.scale)&&c.axisBand,m=e.orient;if(E(m)){const e=Zt([c.axisX,c.axisY]),t=Zt([c.axisTop,c.axisBottom,c.axisLeft,c.axisRight]);for(r of(i={},e))i[r]=Tt(m,Kt(r,c.axisX,p,f),Kt(r,c.axisY,p,f));for(r of(a={},t))a[r]=(l=m.signal,o=Kt(r,c.axisTop,p,f),s=Kt(r,c.axisBottom,p,f),u=Kt(r,c.axisLeft,p,f),d=Kt(r,c.axisRight,p,f),{signal:(null!=u?`${l} === 'left' ? (${Qt(u)}) : `:"")+(null!=s?`${l} === 'bottom' ? (${Qt(s)}) : `:"")+(null!=d?`${l} === 'right' ? (${Qt(d)}) : `:"")+(null!=o?`${l} === 'top' ? (${Qt(o)}) : `:"")+"(null)"})}else i=m===Fe||"bottom"===m?c.axisX:c.axisY,a=c["axis"+m[0].toUpperCase()+m.slice(1)];return i||a||g?t.extend({},p,i,a,g):p}(e,n),d=e.encode||{},p=d.axis||{},g=p.name||void 0,m=p.interactive,h=p.style,y=He(e,s),b=function(e){let n,i,a=e("tickBand"),r=e("tickOffset");return a?a.signal?(n={signal:`(${a.signal}) === 'extent' ? 1 : 0.5`},i={signal:`(${a.signal}) === 'extent'`},t.isObject(r)||(r={signal:`(${a.signal}) === 'extent' ? 0 : ${r}`})):"extent"===a?(n=1,i=!0,r=0):(n=.5,i=!1):(n=e("bandPosition"),i=e("tickExtra")),{extra:i,band:n,offset:r}}(y);return i={scale:e.scale,ticks:!!y("ticks"),labels:!!y("labels"),grid:!!y("grid"),domain:!!y("domain"),title:null!=e.title},a=W(n.add(J({},[i]))),p=f(function(e,t){var n={enter:{},update:{}};return c(n,{orient:e("orient"),offset:e("offset")||0,position:L(t.position,0),titlePadding:e("titlePadding"),minExtent:e("minExtent"),maxExtent:e("maxExtent"),range:{signal:`abs(span(range("${t.scale}")))`},translate:e("translate"),format:t.format,formatType:t.formatType}),n}(y,e),p,Be),r=W(n.add(G({scale:n.scaleRef(e.scale),extra:n.property(b.extra),count:n.objectProperty(e.tickCount),values:n.objectProperty(e.values),minstep:n.property(e.tickMinStep),formatType:n.property(e.formatType),formatSpecifier:n.property(e.format)}))),o=[],i.grid&&o.push(tn(e,s,d.grid,r,b)),i.ticks&&(l=y("tickSize"),o.push(function(e,t,n,i,a,r){var l,o,s,d,f,p,g=He(e,t),m=e.orient,h=At(m,-1,1);return c(l={enter:o={opacity:qe},update:d={opacity:Ue},exit:s={opacity:qe}},{stroke:g("tickColor"),strokeCap:g("tickCap"),strokeDash:g("tickDash"),strokeDashOffset:g("tickDashOffset"),strokeOpacity:g("tickOpacity"),strokeWidth:g("tickWidth")}),(f=u(a)).mult=h,p={scale:e.scale,field:Ae,band:r.band,extra:r.extra,offset:r.offset,round:g("tickRound")},d.y=o.y=Tt(m,qe,p),d.y2=o.y2=Tt(m,f),s.x=Tt(m,p),d.x=o.x=Bt(m,qe,p),d.x2=o.x2=Bt(m,f),s.y=Bt(m,p),Ge({type:"rule",role:"axis-tick",key:Ae,from:i,encode:l},n)}(e,s,d.ticks,r,l,b))),i.labels&&(l=i.ticks?l:0,o.push(an(e,s,d.labels,r,l,b))),i.domain&&o.push(function(e,t,n,i){var a,r,l,o=He(e,t),s=e.orient;c(a={enter:r={opacity:qe},update:l={opacity:Ue},exit:{opacity:qe}},{stroke:o("domainColor"),strokeCap:o("domainCap"),strokeDash:o("domainDash"),strokeDashOffset:o("domainDashOffset"),strokeWidth:o("domainWidth"),strokeOpacity:o("domainOpacity")});const u=en(e,0),d=en(e,1);return r.x=l.x=Tt(s,u,qe),r.x2=l.x2=Tt(s,d),r.y=l.y=Bt(s,u,qe),r.y2=l.y2=Bt(s,d),Ge({type:"rule",role:"axis-domain",from:i,encode:a},n)}(e,s,d.domain,a)),i.title&&o.push(rn(e,s,d.title,a)),Wt(Me({role:"axis",from:a,encode:p,marks:o,aria:y("aria"),description:y("description"),zindex:y("zindex"),name:g,interactive:m,style:h}),n)}function on(e,n,i){var r=t.array(e.signals),l=t.array(e.scales);return i||r.forEach(e=>R(e,n)),t.array(e.projections).forEach(e=>function(e,t){var n=t.config.projection||{},i={};for(var a in e)"name"!==a&&(i[a]=Le(e[a],a,t));for(a in n)null==i[a]&&(i[a]=Le(n[a],a,t));t.addProjection(e.name,i)}(e,n)),l.forEach(e=>function(e,n){var i=e.type||"linear";a.isValidScaleType(i)||t.error("Unrecognized scale type: "+t.stringValue(i)),n.addScale(e.name,{type:i,domain:void 0})}(e,n)),t.array(e.data).forEach(e=>Et(e,n)),l.forEach(e=>Oe(e,n)),(i||r).forEach(e=>X(e,n)),t.array(e.axes).forEach(e=>ln(e,n)),t.array(e.marks).forEach(e=>Wt(e,n)),t.array(e.legends).forEach(e=>Pt(e,n)),e.title&&Vt(e.title,n),n.parseLambdas(),n}function sn(e,n){const i=n.config,a=W(n.root=n.add(j())),r=function(e,n){const i=t=>L(e[t],n[t]),a=[un("background",i("background")),un("autosize",l(i("autosize"))),un("padding",s(i("padding"))),un("width",i("width")||0),un("height",i("height")||0)],r=a.reduce((e,t)=>(e[t.name]=t,e),{}),o={};return t.array(e.signals).forEach(e=>{t.hasOwnProperty(r,e.name)?e=t.extend(r[e.name],e):a.push(e),o[e.name]=e}),t.array(n.signals).forEach(e=>{t.hasOwnProperty(o,e.name)||t.hasOwnProperty(r,e.name)||a.push(e)}),a}(e,i);r.forEach(e=>R(e,n)),n.description=e.description||i.description,n.eventConfig=i.events,n.legends=n.objectProperty(i.legend&&i.legend.layout),n.locale=i.locale;const o=n.add(J()),u=n.add(ee(x((e=>f({enter:{x:{value:0},y:{value:0}},update:{width:{signal:"width"},height:{signal:"height"}}},e))(e.encode),"group","frame",e.style,n,{pulse:W(o)}))),d=n.add(xe({layout:n.objectProperty(e.layout),legends:n.legends,autosize:n.signalRef("autosize"),mark:a,pulse:W(u)}));n.operators.pop(),n.pushState(W(u),W(d),null),on(e,n,r),n.operators.push(d);let c=n.add(Q({mark:a,pulse:W(d)}));return c=n.add(he({pulse:W(c)})),c=n.add(be({pulse:W(c)})),n.addData("root",new St(n,o,o,c)),n}function un(e,t){return t&&t.signal?{name:e,update:t.signal}:{name:e,value:t}}function dn(e,t){this.config=e||{},this.options=t||{},this.bindings=[],this.field={},this.signals={},this.lambdas={},this.scales={},this.events={},this.data={},this.streams=[],this.updates=[],this.operators=[],this.eventConfig=null,this.locale=null,this._id=0,this._subid=0,this._nextsub=[0],this._parent=[],this._encode=[],this._lookup=[],this._markpath=[]}function cn(e){this.config=e.config,this.options=e.options,this.legends=e.legends,this.field=Object.create(e.field),this.signals=Object.create(e.signals),this.lambdas=Object.create(e.lambdas),this.scales=Object.create(e.scales),this.events=Object.create(e.events),this.data=Object.create(e.data),this.streams=[],this.updates=[],this.operators=[],this._id=0,this._subid=++e._nextsub[0],this._nextsub=e._nextsub,this._parent=e._parent.slice(),this._encode=e._encode.slice(),this._lookup=e._lookup.slice(),this._markpath=e._markpath}var fn=dn.prototype=cn.prototype;function pn(e){return(t.isArray(e)?gn:mn)(e)}function gn(e){for(var n,i="[",a=0,r=e.length;a<r;++a)n=e[a],i+=(a>0?",":"")+(t.isObject(n)?n.signal||pn(n):t.stringValue(n));return i+"]"}function mn(e){var n,i,a="{",r=0;for(n in e)i=e[n],a+=(++r>1?",":"")+t.stringValue(n)+":"+(t.isObject(i)?i.signal||pn(i):t.stringValue(i));return a+"}"}function hn(){return{description:"Vega visualization",padding:0,autosize:"pad",background:null,events:{defaults:{allow:["wheel"]}},group:null,mark:null,arc:{fill:"#4c78a8"},area:{fill:"#4c78a8"},image:null,line:{stroke:"#4c78a8",strokeWidth:2},path:{stroke:"#4c78a8"},rect:{fill:"#4c78a8"},rule:{stroke:"#000"},shape:{stroke:"#4c78a8"},symbol:{fill:"#4c78a8",size:64},text:{fill:"#000",font:"sans-serif",fontSize:11},trail:{fill:"#4c78a8",size:2},style:{"guide-label":{fill:"#000",font:"sans-serif",fontSize:10},"guide-title":{fill:"#000",font:"sans-serif",fontSize:11,fontWeight:"bold"},"group-title":{fill:"#000",font:"sans-serif",fontSize:13,fontWeight:"bold"},"group-subtitle":{fill:"#000",font:"sans-serif",fontSize:12},point:{size:30,strokeWidth:2,shape:"circle"},circle:{size:30,strokeWidth:2},square:{size:30,strokeWidth:2,shape:"square"},cell:{fill:"transparent",stroke:"#ddd"}},title:{orient:"top",anchor:"middle",offset:4,subtitlePadding:3},axis:{minExtent:0,maxExtent:200,bandPosition:.5,domain:!0,domainWidth:1,domainColor:"#888",grid:!1,gridWidth:1,gridColor:"#ddd",labels:!0,labelAngle:0,labelLimit:180,labelOffset:0,labelPadding:2,ticks:!0,tickColor:"#888",tickOffset:0,tickRound:!0,tickSize:5,tickWidth:1,titlePadding:4},axisBand:{tickOffset:-.5},projection:{type:"mercator"},legend:{orient:"right",padding:0,gridAlign:"each",columnPadding:10,rowPadding:2,symbolDirection:"vertical",gradientDirection:"vertical",gradientLength:200,gradientThickness:16,gradientStrokeColor:"#ddd",gradientStrokeWidth:0,gradientLabelOffset:2,labelAlign:"left",labelBaseline:"middle",labelLimit:160,labelOffset:4,labelOverlap:!0,symbolLimit:30,symbolType:"circle",symbolSize:100,symbolOffset:0,symbolStrokeWidth:1.5,symbolBaseFillColor:"transparent",symbolBaseStrokeColor:"#888",titleLimit:180,titleOrient:"top",titlePadding:5,layout:{offset:18,direction:"horizontal",left:{direction:"vertical"},right:{direction:"vertical"}}},range:{category:{scheme:"tableau10"},ordinal:{scheme:"blues"},heatmap:{scheme:"yellowgreenblue"},ramp:{scheme:"blues"},diverging:{scheme:"blueorange",extent:[1,0]},symbol:["circle","square","triangle-up","cross","diamond","triangle-right","triangle-down","triangle-left"]}}}fn.parse=function(e){return on(e,this)},fn.fork=function(){return new cn(this)},fn.isSubscope=function(){return this._subid>0},fn.toRuntime=function(){return this.finish(),{description:this.description,operators:this.operators,streams:this.streams,updates:this.updates,bindings:this.bindings,eventConfig:this.eventConfig,locale:this.locale}},fn.id=function(){return(this._subid?this._subid+":":0)+this._id++},fn.add=function(e){return this.operators.push(e),e.id=this.id(),e.refs&&(e.refs.forEach((function(t){t.$ref=e.id})),e.refs=null),e},fn.proxy=function(e){var t=e instanceof z?W(e):e;return this.add(ge({value:t}))},fn.addStream=function(e){return this.streams.push(e),e.id=this.id(),e},fn.addUpdate=function(e){return this.updates.push(e),e},fn.finish=function(){var e,t;for(e in this.root&&(this.root.root=!0),this.signals)this.signals[e].signal=e;for(e in this.scales)this.scales[e].scale=e;function n(e,t,n){var i;e&&((i=e.data||(e.data={}))[t]||(i[t]=[])).push(n)}for(e in this.data)for(var i in n((t=this.data[e]).input,e,"input"),n(t.output,e,"output"),n(t.values,e,"values"),t.index)n(t.index[i],e,"index:"+i);return this},fn.pushState=function(e,t,n){this._encode.push(W(this.add(be({pulse:e})))),this._parent.push(t),this._lookup.push(n?W(this.proxy(n)):null),this._markpath.push(-1)},fn.popState=function(){this._encode.pop(),this._parent.pop(),this._lookup.pop(),this._markpath.pop()},fn.parent=function(){return t.peek(this._parent)},fn.encode=function(){return t.peek(this._encode)},fn.lookup=function(){return t.peek(this._lookup)},fn.markpath=function(){var e=this._markpath;return++e[e.length-1]},fn.fieldRef=function(e,n){if(t.isString(e))return P(e,n);e.signal||t.error("Unsupported field reference: "+t.stringValue(e));var i,a=e.signal,r=this.field[a];return r||(i={name:this.signalRef(a)},n&&(i.as=n),this.field[a]=r=W(this.add(ie(i)))),r},fn.compareRef=function(e){function n(e){return E(e)?(a=!0,i.signalRef(e.signal)):function(e){return e&&e.expr}(e)?(a=!0,i.exprRef(e.expr)):e}var i=this,a=!1,r=t.array(e.field).map(n),l=t.array(e.order).map(n);return a?W(this.add(K({fields:r,orders:l}))):V(r,l)},fn.keyRef=function(e,n){var i=this.signals,a=!1;return e=t.array(e).map((function(e){return E(e)?(a=!0,W(i[e.signal])):e})),a?W(this.add(ae({fields:e,flat:n}))):function(e,t){var n={$key:e};return t&&(n.$flat=!0),n}(e,n)},fn.sortRef=function(e){if(!e)return e;var t=C(e.op,e.field),n=e.order||"ascending";return n.signal?W(this.add(K({fields:t,orders:this.signalRef(n.signal)}))):V(t,n)},fn.event=function(e,t){var n=e+":"+t;if(!this.events[n]){var i=this.id();this.streams.push({id:i,source:e,type:t}),this.events[n]=i}return this.events[n]},fn.hasOwnSignal=function(e){return t.hasOwnProperty(this.signals,e)},fn.addSignal=function(e,n){this.hasOwnSignal(e)&&t.error("Duplicate signal name: "+t.stringValue(e));var i=n instanceof z?n:this.add(j(n));return this.signals[e]=i},fn.getSignal=function(e){return this.signals[e]||t.error("Unrecognized signal name: "+t.stringValue(e)),this.signals[e]},fn.signalRef=function(e){return this.signals[e]?W(this.signals[e]):(t.hasOwnProperty(this.lambdas,e)||(this.lambdas[e]=this.add(j(null))),W(this.lambdas[e]))},fn.parseLambdas=function(){for(var e=Object.keys(this.lambdas),t=0,i=e.length;t<i;++t){var a=e[t],r=n.parseExpression(a,this),l=this.lambdas[a];l.params=r.$params,l.update=r.$expr}},fn.property=function(e){return e&&e.signal?this.signalRef(e.signal):e},fn.objectProperty=function(e){return e&&t.isObject(e)?this.signalRef(e.signal||pn(e)):e},fn.exprRef=function(e,t){var i={expr:n.parseExpression(e,this)};return t&&(i.expr.$name=t),W(this.add(te(i)))},fn.addBinding=function(e,n){this.bindings||t.error("Nested signals do not support binding: "+t.stringValue(e)),this.bindings.push(t.extend({signal:e},n))},fn.addScaleProj=function(e,n){t.hasOwnProperty(this.scales,e)&&t.error("Duplicate scale or projection name: "+t.stringValue(e)),this.scales[e]=this.add(n)},fn.addScale=function(e,t){this.addScaleProj(e,ye(t))},fn.addProjection=function(e,t){this.addScaleProj(e,pe(t))},fn.getScale=function(e){return this.scales[e]||t.error("Unrecognized scale name: "+t.stringValue(e)),this.scales[e]},fn.projectionRef=fn.scaleRef=function(e){return W(this.getScale(e))},fn.projectionType=fn.scaleType=function(e){return this.getScale(e).params.type},fn.addData=function(e,n){return t.hasOwnProperty(this.data,e)&&t.error("Duplicate data set name: "+t.stringValue(e)),this.data[e]=n},fn.getData=function(e){return this.data[e]||t.error("Undefined data set name: "+t.stringValue(e)),this.data[e]},fn.addDataPipeline=function(e,n){return t.hasOwnProperty(this.data,e)&&t.error("Duplicate data set name: "+t.stringValue(e)),this.addData(e,St.fromEntries(this,n))},e.AxisDomainRole="axis-domain",e.AxisGridRole="axis-grid",e.AxisLabelRole="axis-label",e.AxisRole="axis",e.AxisTickRole="axis-tick",e.AxisTitleRole="axis-title",e.DataScope=St,e.FrameRole="frame",e.LegendEntryRole="legend-entry",e.LegendLabelRole="legend-label",e.LegendRole="legend",e.LegendSymbolRole="legend-symbol",e.LegendTitleRole="legend-title",e.MarkRole="mark",e.Scope=dn,e.ScopeRole="scope",e.config=hn,e.parse=function(e,n,i){return t.isObject(e)||t.error("Input Vega specification must be an object."),sn(e,new dn(n=t.mergeConfig({description:"Vega visualization",padding:0,autosize:"pad",background:null,events:{defaults:{allow:["wheel"]}},group:null,mark:null,arc:{fill:"#4c78a8"},area:{fill:"#4c78a8"},image:null,line:{stroke:"#4c78a8",strokeWidth:2},path:{stroke:"#4c78a8"},rect:{fill:"#4c78a8"},rule:{stroke:"#000"},shape:{stroke:"#4c78a8"},symbol:{fill:"#4c78a8",size:64},text:{fill:"#000",font:"sans-serif",fontSize:11},trail:{fill:"#4c78a8",size:2},style:{"guide-label":{fill:"#000",font:"sans-serif",fontSize:10},"guide-title":{fill:"#000",font:"sans-serif",fontSize:11,fontWeight:"bold"},"group-title":{fill:"#000",font:"sans-serif",fontSize:13,fontWeight:"bold"},"group-subtitle":{fill:"#000",font:"sans-serif",fontSize:12},point:{size:30,strokeWidth:2,shape:"circle"},circle:{size:30,strokeWidth:2},square:{size:30,strokeWidth:2,shape:"square"},cell:{fill:"transparent",stroke:"#ddd"}},title:{orient:"top",anchor:"middle",offset:4,subtitlePadding:3},axis:{minExtent:0,maxExtent:200,bandPosition:.5,domain:!0,domainWidth:1,domainColor:"#888",grid:!1,gridWidth:1,gridColor:"#ddd",labels:!0,labelAngle:0,labelLimit:180,labelOffset:0,labelPadding:2,ticks:!0,tickColor:"#888",tickOffset:0,tickRound:!0,tickSize:5,tickWidth:1,titlePadding:4},axisBand:{tickOffset:-.5},projection:{type:"mercator"},legend:{orient:"right",padding:0,gridAlign:"each",columnPadding:10,rowPadding:2,symbolDirection:"vertical",gradientDirection:"vertical",gradientLength:200,gradientThickness:16,gradientStrokeColor:"#ddd",gradientStrokeWidth:0,gradientLabelOffset:2,labelAlign:"left",labelBaseline:"middle",labelLimit:160,labelOffset:4,labelOverlap:!0,symbolLimit:30,symbolType:"circle",symbolSize:100,symbolOffset:0,symbolStrokeWidth:1.5,symbolBaseFillColor:"transparent",symbolBaseStrokeColor:"#888",titleLimit:180,titleOrient:"top",titlePadding:5,layout:{offset:18,direction:"horizontal",left:{direction:"vertical"},right:{direction:"vertical"}}},range:{category:{scheme:"tableau10"},ordinal:{scheme:"blues"},heatmap:{scheme:"yellowgreenblue"},ramp:{scheme:"blues"},diverging:{scheme:"blueorange",extent:[1,0]},symbol:["circle","square","triangle-up","cross","diamond","triangle-right","triangle-down","triangle-left"]}},n,e.config),i)).toRuntime()},e.signal=R,e.signalUpdates=X,e.stream=A,Object.defineProperty(e,"__esModule",{value:!0})})); |