UNPKG

basb-cli

Version:
2 lines (1 loc) 5.09 kB
import{bh as i,Z as n,Y as a,bP as t,N as r,e,d as l,J as o,d9 as u,cT as s,aq as c,m as p,cS as f,w as h,aN as v,bL as d,bM as V}from"./index.js";var y=e,g=r,m=-1,z=function(){function c(a){var t=a.mappingMethod,o=a.type,u=this.option=i(a);this.type=o,this.mappingMethod=t,this._normalizeData=O[t];var s=c.visualHandlers[o];this.applyVisual=s.applyVisual,this.getColorMapper=s.getColorMapper,this._normalizedToVisual=s._normalizedToVisual[t],"piecewise"===t?(T(u),function(i){var n=i.pieceList;i.hasSpecialVisual=!1,e(n,(function(n,a){n.originIndex=a,null!=n.visual&&(i.hasSpecialVisual=!0)}))}(u)):"category"===t?u.categories?function(i){var n=i.categories,a=i.categoryMap={},t=i.visual;if(y(n,(function(i,n){a[i]=n})),!l(t)){var e=[];r(t)?y(t,(function(i,n){var t=a[n];e[null!=t?t:m]=i})):e[m]=t,t=H(i,e)}for(var o=n.length-1;o>=0;o--)null==t[o]&&(delete a[n[o]],n.pop())}(u):T(u,!0):(n("linear"!==t||u.dataExtent),T(u))}return c.prototype.mapValueToVisual=function(i){var n=this._normalizeData(i);return this._normalizedToVisual(n,i)},c.prototype.getNormalizer=function(){return a(this._normalizeData,this)},c.listVisualTypes=function(){return t(c.visualHandlers)},c.isValidType=function(i){return c.visualHandlers.hasOwnProperty(i)},c.eachVisual=function(i,n,a){r(i)?e(i,n,a):n.call(a,i)},c.mapVisual=function(i,n,a){var t,e=l(i)?[]:r(i)?{}:(t=!0,null);return c.eachVisual(i,(function(i,r){var l=n.call(a,i,r);t?e=l:e[r]=l})),e},c.retrieveVisuals=function(i){var n,a={};return i&&y(c.visualHandlers,(function(t,r){i.hasOwnProperty(r)&&(a[r]=i[r],n=!0)})),n?a:null},c.prepareVisualTypes=function(i){if(l(i))i=i.slice();else{if(!g(i))return[];var n=[];y(i,(function(i,a){n.push(a)})),i=n}return i.sort((function(i,n){return"color"===n&&"color"!==i&&0===i.indexOf("color")?1:-1})),i},c.dependsOn=function(i,n){return"color"===n?!(!i||0!==i.indexOf(n)):i===n},c.findPieceIndex=function(i,n,a){for(var t,r=1/0,e=0,l=n.length;e<l;e++){var u=n[e].value;if(null!=u){if(u===i||o(u)&&u===i+"")return e;a&&f(u,e)}}for(e=0,l=n.length;e<l;e++){var s=n[e],c=s.interval,p=s.close;if(c){if(c[0]===-1/0){if(D(p[1],i,c[1]))return e}else if(c[1]===1/0){if(D(p[0],c[0],i))return e}else if(D(p[0],c[0],i)&&D(p[1],i,c[1]))return e;a&&f(c[0],e),a&&f(c[1],e)}}if(a)return i===1/0?n.length-1:i===-1/0?0:t;function f(n,a){var e=Math.abs(n-i);e<r&&(r=e,t=a)}},c.visualHandlers={color:{applyVisual:b("color"),getColorMapper:function(){var i=this.option;return a("category"===i.mappingMethod?function(i,n){return!n&&(i=this._normalizeData(i)),w.call(this,i)}:function(n,a,t){var r=!!t;return!a&&(n=this._normalizeData(n)),t=u(n,i.parsedVisual,t),r?t:s(t,"rgba")},this)},_normalizedToVisual:{linear:function(i){return s(u(i,this.option.parsedVisual),"rgba")},category:w,piecewise:function(i,n){var a=S.call(this,n);return null==a&&(a=s(u(i,this.option.parsedVisual),"rgba")),a},fixed:M}},colorHue:x((function(i,n){return d(i,n)})),colorSaturation:x((function(i,n){return d(i,null,n)})),colorLightness:x((function(i,n){return d(i,null,null,n)})),colorAlpha:x((function(i,n){return V(i,n)})),decal:{applyVisual:b("decal"),_normalizedToVisual:{linear:null,category:w,piecewise:null,fixed:null}},opacity:{applyVisual:b("opacity"),_normalizedToVisual:P([0,1])},liftZ:{applyVisual:b("liftZ"),_normalizedToVisual:{linear:M,category:M,piecewise:M,fixed:M}},symbol:{applyVisual:function(i,n,a){a("symbol",this.mapValueToVisual(i))},_normalizedToVisual:{linear:_,category:w,piecewise:function(i,n){var a=S.call(this,n);return null==a&&(a=_.call(this,i)),a},fixed:M}},symbolSize:{applyVisual:b("symbolSize"),_normalizedToVisual:P([0,1])}},c}();function T(i,n){var a=i.visual,t=[];r(a)?y(a,(function(i){t.push(i)})):null!=a&&t.push(a);n||1!==t.length||{color:1,symbol:1}.hasOwnProperty(i.type)||(t[1]=t[0]),H(i,t)}function x(i){return{applyVisual:function(n,a,t){var r=this.mapValueToVisual(n);t("color",i(a("color"),r))},_normalizedToVisual:P([0,1])}}function _(i){var n=this.option.visual;return n[Math.round(c(i,[0,1],[0,n.length-1],!0))]||{}}function b(i){return function(n,a,t){t(i,this.mapValueToVisual(n))}}function w(i){var n=this.option.visual;return n[this.option.loop&&i!==m?i%n.length:i]}function M(){return this.option.visual[0]}function P(i){return{linear:function(n){return c(n,i,this.option.visual,!0)},category:w,piecewise:function(n,a){var t=S.call(this,a);return null==t&&(t=c(n,i,this.option.visual,!0)),t},fixed:M}}function S(i){var n=this.option,a=n.pieceList;if(n.hasSpecialVisual){var t=a[z.findPieceIndex(i,a)];if(t&&t.visual)return t.visual[this.type]}}function H(i,n){return i.visual=n,"color"===i.type&&(i.parsedVisual=p(n,(function(i){var n=f(i);return n||h("'"+i+"' is an illegal color, fallback to '#000000'",!0),n||[0,0,0,1]}))),n}var O={linear:function(i){return c(i,this.option.dataExtent,[0,1],!0)},piecewise:function(i){var n=this.option.pieceList,a=z.findPieceIndex(i,n,!0);if(null!=a)return c(a,[0,n.length-1],[0,1],!0)},category:function(i){var n=this.option.categories?this.option.categoryMap[i]:i;return null==n?m:n},fixed:v};function D(i,n,a){return i?n<=a:n<a}var L=z;export{L as V};