@visactor/vgrammar-util
Advanced tools
Comparing version 0.6.6 to 0.7.5-alpha.0
@@ -13,1 +13,2 @@ export { accessor, accessorName, accessorFields } from './accessor'; | ||
export { regressionLinear } from './regression-linear'; | ||
export { parseViewBox } from './view-box'; |
@@ -20,3 +20,3 @@ "use strict"; | ||
value: !0 | ||
}), exports.regressionLinear = exports.toPercent = exports.splitAccessPath = exports.isEqual = exports.field = exports.extent = exports.error = exports.ascending = exports.compare = exports.emptyObject = exports.falsy = exports.truthy = exports.one = exports.zero = exports.identity = exports.id = exports.getter = exports.accessorFields = exports.accessorName = exports.accessor = void 0; | ||
}), exports.parseViewBox = exports.regressionLinear = exports.toPercent = exports.splitAccessPath = exports.isEqual = exports.field = exports.extent = exports.error = exports.ascending = exports.compare = exports.emptyObject = exports.falsy = exports.truthy = exports.one = exports.zero = exports.identity = exports.id = exports.getter = exports.accessorFields = exports.accessorName = exports.accessor = void 0; | ||
@@ -166,2 +166,11 @@ var accessor_1 = require("./accessor"); | ||
}); | ||
var view_box_1 = require("./view-box"); | ||
Object.defineProperty(exports, "parseViewBox", { | ||
enumerable: !0, | ||
get: function() { | ||
return view_box_1.parseViewBox; | ||
} | ||
}); | ||
//# sourceMappingURL=index.js.map |
@@ -8,5 +8,5 @@ "use strict"; | ||
const vutils_1 = require("@visactor/vutils"), toPercent = (percent, total) => (0, | ||
vutils_1.isNil)(percent) ? total : Math.min((0, vutils_1.isString)(percent) ? total * parseFloat(percent) / 100 : percent, total); | ||
vutils_1.isNil)(percent) ? total : (0, vutils_1.isString)(percent) ? total * parseFloat(percent) / 100 : percent; | ||
exports.toPercent = toPercent; | ||
//# sourceMappingURL=toPercent.js.map |
export * from './function'; | ||
export * from './logger'; | ||
export type LayoutViewBox = { | ||
width: number; | ||
height: number; | ||
} | { | ||
x0: number; | ||
x1: number; | ||
y0: number; | ||
y1: number; | ||
}; |
@@ -20,3 +20,3 @@ "use strict"; | ||
value: !0 | ||
}), __exportStar(require("./function"), exports), __exportStar(require("./logger"), exports); | ||
}), __exportStar(require("./function"), exports); | ||
//# sourceMappingURL=index.js.map |
@@ -710,3 +710,3 @@ (function (global, factory) { | ||
} | ||
return Math.min(isString(percent) ? (total * parseFloat(percent)) / 100 : percent, total); | ||
return isString(percent) ? (total * parseFloat(percent)) / 100 : percent; | ||
}; | ||
@@ -765,2 +765,15 @@ | ||
const parseViewBox = (config) => { | ||
return 'width' in config | ||
? { x0: 0, x1: config.width, y0: 0, y1: config.height, width: config.width, height: config.height } | ||
: { | ||
x0: Math.min(config.x0, config.x1), | ||
x1: Math.max(config.x0, config.x1), | ||
y0: Math.min(config.y0, config.y1), | ||
y1: Math.max(config.y0, config.y1), | ||
width: Math.abs(config.x1 - config.x0), | ||
height: Math.abs(config.y1 - config.y0) | ||
}; | ||
}; | ||
exports.accessor = accessor; | ||
@@ -781,2 +794,3 @@ exports.accessorFields = accessorFields; | ||
exports.one = one; | ||
exports.parseViewBox = parseViewBox; | ||
exports.regressionLinear = regressionLinear; | ||
@@ -783,0 +797,0 @@ exports.splitAccessPath = splitAccessPath; |
@@ -1,1 +0,1 @@ | ||
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).VGrammar=e.VGrammar||{},e.VGrammar.Util={}))}(this,(function(e){"use strict";!function(e){var t=Object.prototype.hasOwnProperty,n="~";function r(){}function o(e,t,n){this.fn=e,this.context=t,this.once=n||!1}function s(e,t,r,s,i){if("function"!=typeof r)throw new TypeError("The listener must be a function");var c=new o(r,s||e,i),l=n?n+t:t;return e._events[l]?e._events[l].fn?e._events[l]=[e._events[l],c]:e._events[l].push(c):(e._events[l]=c,e._eventsCount++),e}function i(e,t){0==--e._eventsCount?e._events=new r:delete e._events[t]}function c(){this._events=new r,this._eventsCount=0}Object.create&&(r.prototype=Object.create(null),(new r).__proto__||(n=!1)),c.prototype.eventNames=function(){var e,r,o=[];if(0===this._eventsCount)return o;for(r in e=this._events)t.call(e,r)&&o.push(n?r.slice(1):r);return Object.getOwnPropertySymbols?o.concat(Object.getOwnPropertySymbols(e)):o},c.prototype.listeners=function(e){var t=n?n+e:e,r=this._events[t];if(!r)return[];if(r.fn)return[r.fn];for(var o=0,s=r.length,i=new Array(s);o<s;o++)i[o]=r[o].fn;return i},c.prototype.listenerCount=function(e){var t=n?n+e:e,r=this._events[t];return r?r.fn?1:r.length:0},c.prototype.emit=function(e,t,r,o,s,i){var c=n?n+e:e;if(!this._events[c])return!1;var l,a,u=this._events[c],f=arguments.length;if(u.fn){switch(u.once&&this.removeListener(e,u.fn,void 0,!0),f){case 1:return u.fn.call(u.context),!0;case 2:return u.fn.call(u.context,t),!0;case 3:return u.fn.call(u.context,t,r),!0;case 4:return u.fn.call(u.context,t,r,o),!0;case 5:return u.fn.call(u.context,t,r,o,s),!0;case 6:return u.fn.call(u.context,t,r,o,s,i),!0}for(a=1,l=new Array(f-1);a<f;a++)l[a-1]=arguments[a];u.fn.apply(u.context,l)}else{var h,p=u.length;for(a=0;a<p;a++)switch(u[a].once&&this.removeListener(e,u[a].fn,void 0,!0),f){case 1:u[a].fn.call(u[a].context);break;case 2:u[a].fn.call(u[a].context,t);break;case 3:u[a].fn.call(u[a].context,t,r);break;case 4:u[a].fn.call(u[a].context,t,r,o);break;default:if(!l)for(h=1,l=new Array(f-1);h<f;h++)l[h-1]=arguments[h];u[a].fn.apply(u[a].context,l)}}return!0},c.prototype.on=function(e,t,n){return s(this,e,t,n,!1)},c.prototype.once=function(e,t,n){return s(this,e,t,n,!0)},c.prototype.removeListener=function(e,t,r,o){var s=n?n+e:e;if(!this._events[s])return this;if(!t)return i(this,s),this;var c=this._events[s];if(c.fn)c.fn!==t||o&&!c.once||r&&c.context!==r||i(this,s);else{for(var l=0,a=[],u=c.length;l<u;l++)(c[l].fn!==t||o&&!c[l].once||r&&c[l].context!==r)&&a.push(c[l]);a.length?this._events[s]=1===a.length?a[0]:a:i(this,s)}return this},c.prototype.removeAllListeners=function(e){var t;return e?(t=n?n+e:e,this._events[t]&&i(this,t)):(this._events=new r,this._eventsCount=0),this},c.prototype.off=c.prototype.removeListener,c.prototype.addListener=c.prototype.on,c.prefixed=n,c.EventEmitter=c,e.exports=c}({exports:{}});const t=(e,t)=>Object.prototype.toString.call(e)===`[object ${t}]`,n=e=>"function"==typeof e,r=e=>null==e,o=e=>{const t=typeof e;return null!==e&&"object"===t||"function"===t},s=e=>"object"==typeof e&&null!==e,i=function(e){const n=typeof e;return arguments.length>1&&void 0!==arguments[1]&&arguments[1]?"string"===n:"string"===n||t(e,"String")},c=e=>Array.isArray?Array.isArray(e):t(e,"Array"),l=function(e){const n=typeof e;return arguments.length>1&&void 0!==arguments[1]&&arguments[1]?"number"===n:"number"===n||t(e,"Number")};function a(e){return null!=e?c(e)?e:[e]:[]}let u=!1;try{u="function"==typeof requestAnimationFrame&&"function"==typeof cancelAnimationFrame}catch(e){u=!1}var f;u=!1,function(e){e[e.NONE=0]="NONE",e[e.BBOX1=1]="BBOX1",e[e.BBOX2=2]="BBOX2"}(f||(f={}));const h="undefined"!=typeof console;function p(e,t,n){const r=[t].concat([].slice.call(n));h&&console[e].apply(console,r)}var v;!function(e){e[e.None=0]="None",e[e.Error=1]="Error",e[e.Warn=2]="Warn",e[e.Info=3]="Info",e[e.Debug=4]="Debug"}(v||(v={}));class g{static getInstance(e,t){return g._instance&&l(e)?g._instance.level(e):g._instance||(g._instance=new g(e,t)),g._instance}static setInstance(e){return g._instance=e}static setInstanceLevel(e){g._instance?g._instance.level(e):g._instance=new g(e)}static clearInstance(){g._instance=null}constructor(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:v.None,t=arguments.length>1?arguments[1]:void 0;this._onErrorHandler=[],this._level=e,this._method=t}addErrorHandler(e){this._onErrorHandler.find((t=>t===e))||this._onErrorHandler.push(e)}removeErrorHandler(e){const t=this._onErrorHandler.findIndex((t=>t===e));t<0||this._onErrorHandler.splice(t,1)}callErrorHandler(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];this._onErrorHandler.forEach((e=>e(...t)))}canLogInfo(){return this._level>=v.Info}canLogDebug(){return this._level>=v.Debug}canLogError(){return this._level>=v.Error}canLogWarn(){return this._level>=v.Warn}level(e){return arguments.length?(this._level=+e,this):this._level}error(){for(var e,t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];return this._level>=v.Error&&(this._onErrorHandler.length?this.callErrorHandler(...n):p(null!==(e=this._method)&&void 0!==e?e:"error","ERROR",n)),this}warn(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return this._level>=v.Warn&&p(this._method||"warn","WARN",t),this}info(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return this._level>=v.Info&&p(this._method||"log","INFO",t),this}debug(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return this._level>=v.Debug&&p(this._method||"log","DEBUG",t),this}}g._instance=null;const y=(e,t,n)=>(e.fields=t||[],e.fname=n,e);function _(e){return r(e)?null:e.fields}const d=e=>t=>((e,t,n)=>{const r=i(t)?t.split("."):t;for(let t=0;t<r.length;t++)e=e?e[r[t]]:void 0;return void 0===e?n:e})(t,e),m=e=>{g.getInstance().error(e)},b=e=>{const t=[],n=e.length;let r,o,s,i=null,c=0,l="";e+="";const a=()=>{t.push(l+e.substring(r,o)),l="",r=o+1};for(r=0,o=0;o<n;o+=1)if(s=e[o],"\\"===s)l+=e.substring(r,o),l+=e.substring(++o,++o),r=o;else if(s===i)a(),i=null,c=-1;else{if(i)continue;r===c&&'"'===s||r===c&&"'"===s?(r=o+1,i=s):"."!==s||c?"["===s?(o>r&&a(),r=o+1,c=r):"]"===s&&(c||m("Access path missing open bracket: "+e),c>0&&a(),c=0,r=o+1):o>r?a():r=o+1}return c&&m("Access path missing closing bracket: "+e),i&&m("Access path missing closing quote: "+e),o>r&&(o+=1,a()),t},E=(e,t,r={})=>{if(n(e))return e;const o=b(e),s=1===o.length?o[0]:e;return y((r&&r.get||d)(o),[s],t||s)},N=(e,t,n={})=>{if(c(e)){const r=e.map((e=>E(e,t,n)));return e=>r.map((t=>t(e)))}return E(e,t,n)},x=N("id"),w=y((function(e){return e}),[],"identity"),O=y((function(){return 0}),[],"zero"),A=y((function(){return 1}),[],"one"),j=y((function(){return!0}),[],"true"),I=y((function(){return!1}),[],"false"),L=y((function(){return{}}),[],"emptyObject"),H=(e,t)=>{if((e<t||r(e))&&!r(t))return-1;if((e>t||r(t))&&!r(e))return 1;const n=t instanceof Date?+t:t,o=e instanceof Date?+e:e;return Number.isNaN(o)&&!Number.isNaN(n)?-1:Number.isNaN(n)&&!Number.isNaN(o)?1:0},k=(e,t)=>{return 1===e.length?(n=e[0],r=t[0],(e,t)=>H(n(e),n(t))*r):((e,t,n)=>(t.push(0),(r,o)=>{let s,i=0,c=-1;for(;0===i&&c+1<n;)c+=1,s=e[c],i=H(s(r),s(o));return i*t[c]}))(e,t,e.length);var n,r},B=(e,t,n,i=!0)=>{if(t===n)return!0;if(r(t)||r(n))return r(t)&&r(n);if(!s(t)&&!s(n))return t===n;const l=c(t)?t:t[e],a=c(n)?n:n[e];return l===a||!1!==i&&(c(a)?!(!c(l)||a.length!==l.length||!a.every(((e,t)=>e===l[t]))):!!o(a)&&!(!o(l)||Object.keys(a).length!==Object.keys(l).length||!Object.keys(a).every((e=>B(e,a,l)))))};function D(e,t,n,o){let s,i,c=-1;e.forEach((e=>{s=t(e),i=n(e),!r(s)&&(s=+s)>=s&&!r(i)&&(i=+i)>=i&&o(s,i,++c)}))}function C(e,t,n,r,o){let s=0,i=0;return D(e,t,n,((e,t)=>{const n=t-o(e),c=t-r;s+=n*n,i+=c*c})),1-s/i}e.accessor=y,e.accessorFields=_,e.accessorName=function(e){return r(e)?null:e.fname},e.ascending=H,e.compare=(e,t,o={})=>{const s=a(t)||[],i=[],c=[],l={},u=o.comparator||k;return a(e).forEach(((e,t)=>{if(r(e))return;i.push("desc"===s[t]?-1:1);const a=n(e)?e:N(e,null,o);c.push(a),(_(a)||[]).forEach((e=>{l[e]=1}))})),0===c.length?null:y(u(c,i),Object.keys(l))},e.emptyObject=L,e.error=m,e.extent=(e,t)=>{const o=n(t)?t:e=>e;let s,i;if(e&&e.length){const t=e.length;for(let n=0;n<t;n+=1){let t=o(e[n]);r(t)||!l(t=+t)||Number.isNaN(t)||(r(s)?(s=t,i=t):(s=Math.min(s,t),i=Math.max(i,t)))}return[s,i]}return[s,i]},e.falsy=I,e.field=N,e.getter=d,e.id=x,e.identity=w,e.isEqual=B,e.one=A,e.regressionLinear=function(e,t=(e=>e.x),n=(e=>e.y)){let r=0,o=0,s=0,i=0,c=0;D(e,t,n,((e,t)=>{++c,r+=(e-r)/c,o+=(t-o)/c,s+=(e*t-s)/c,i+=(e*e-i)/c}));const l=function(e,t,n,r){const o=r-e*e,s=Math.abs(o)<1e-24?0:(n-e*t)/o;return[t-s*e,s]}(r,o,s,i),a=e=>l[0]+l[1]*e;return{coef:l,predict:a,rSquared:C(e,t,n,o,a)}},e.splitAccessPath=b,e.toPercent=(e,t)=>r(e)?t:Math.min(i(e)?t*parseFloat(e)/100:e,t),e.truthy=j,e.zero=O})); | ||
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t(((e="undefined"!=typeof globalThis?globalThis:e||self).VGrammar=e.VGrammar||{},e.VGrammar.Util={}))}(this,(function(e){"use strict";!function(e){var t=Object.prototype.hasOwnProperty,n="~";function r(){}function o(e,t,n){this.fn=e,this.context=t,this.once=n||!1}function s(e,t,r,s,i){if("function"!=typeof r)throw new TypeError("The listener must be a function");var c=new o(r,s||e,i),a=n?n+t:t;return e._events[a]?e._events[a].fn?e._events[a]=[e._events[a],c]:e._events[a].push(c):(e._events[a]=c,e._eventsCount++),e}function i(e,t){0==--e._eventsCount?e._events=new r:delete e._events[t]}function c(){this._events=new r,this._eventsCount=0}Object.create&&(r.prototype=Object.create(null),(new r).__proto__||(n=!1)),c.prototype.eventNames=function(){var e,r,o=[];if(0===this._eventsCount)return o;for(r in e=this._events)t.call(e,r)&&o.push(n?r.slice(1):r);return Object.getOwnPropertySymbols?o.concat(Object.getOwnPropertySymbols(e)):o},c.prototype.listeners=function(e){var t=n?n+e:e,r=this._events[t];if(!r)return[];if(r.fn)return[r.fn];for(var o=0,s=r.length,i=new Array(s);o<s;o++)i[o]=r[o].fn;return i},c.prototype.listenerCount=function(e){var t=n?n+e:e,r=this._events[t];return r?r.fn?1:r.length:0},c.prototype.emit=function(e,t,r,o,s,i){var c=n?n+e:e;if(!this._events[c])return!1;var a,l,u=this._events[c],f=arguments.length;if(u.fn){switch(u.once&&this.removeListener(e,u.fn,void 0,!0),f){case 1:return u.fn.call(u.context),!0;case 2:return u.fn.call(u.context,t),!0;case 3:return u.fn.call(u.context,t,r),!0;case 4:return u.fn.call(u.context,t,r,o),!0;case 5:return u.fn.call(u.context,t,r,o,s),!0;case 6:return u.fn.call(u.context,t,r,o,s,i),!0}for(l=1,a=new Array(f-1);l<f;l++)a[l-1]=arguments[l];u.fn.apply(u.context,a)}else{var h,p=u.length;for(l=0;l<p;l++)switch(u[l].once&&this.removeListener(e,u[l].fn,void 0,!0),f){case 1:u[l].fn.call(u[l].context);break;case 2:u[l].fn.call(u[l].context,t);break;case 3:u[l].fn.call(u[l].context,t,r);break;case 4:u[l].fn.call(u[l].context,t,r,o);break;default:if(!a)for(h=1,a=new Array(f-1);h<f;h++)a[h-1]=arguments[h];u[l].fn.apply(u[l].context,a)}}return!0},c.prototype.on=function(e,t,n){return s(this,e,t,n,!1)},c.prototype.once=function(e,t,n){return s(this,e,t,n,!0)},c.prototype.removeListener=function(e,t,r,o){var s=n?n+e:e;if(!this._events[s])return this;if(!t)return i(this,s),this;var c=this._events[s];if(c.fn)c.fn!==t||o&&!c.once||r&&c.context!==r||i(this,s);else{for(var a=0,l=[],u=c.length;a<u;a++)(c[a].fn!==t||o&&!c[a].once||r&&c[a].context!==r)&&l.push(c[a]);l.length?this._events[s]=1===l.length?l[0]:l:i(this,s)}return this},c.prototype.removeAllListeners=function(e){var t;return e?(t=n?n+e:e,this._events[t]&&i(this,t)):(this._events=new r,this._eventsCount=0),this},c.prototype.off=c.prototype.removeListener,c.prototype.addListener=c.prototype.on,c.prefixed=n,c.EventEmitter=c,e.exports=c}({exports:{}});const t=(e,t)=>Object.prototype.toString.call(e)===`[object ${t}]`,n=e=>"function"==typeof e,r=e=>null==e,o=e=>{const t=typeof e;return null!==e&&"object"===t||"function"===t},s=e=>"object"==typeof e&&null!==e,i=function(e){const n=typeof e;return arguments.length>1&&void 0!==arguments[1]&&arguments[1]?"string"===n:"string"===n||t(e,"String")},c=e=>Array.isArray?Array.isArray(e):t(e,"Array"),a=function(e){const n=typeof e;return arguments.length>1&&void 0!==arguments[1]&&arguments[1]?"number"===n:"number"===n||t(e,"Number")};function l(e){return null!=e?c(e)?e:[e]:[]}let u=!1;try{u="function"==typeof requestAnimationFrame&&"function"==typeof cancelAnimationFrame}catch(e){u=!1}var f;u=!1,function(e){e[e.NONE=0]="NONE",e[e.BBOX1=1]="BBOX1",e[e.BBOX2=2]="BBOX2"}(f||(f={}));const h="undefined"!=typeof console;function p(e,t,n){const r=[t].concat([].slice.call(n));h&&console[e].apply(console,r)}var v;!function(e){e[e.None=0]="None",e[e.Error=1]="Error",e[e.Warn=2]="Warn",e[e.Info=3]="Info",e[e.Debug=4]="Debug"}(v||(v={}));class y{static getInstance(e,t){return y._instance&&a(e)?y._instance.level(e):y._instance||(y._instance=new y(e,t)),y._instance}static setInstance(e){return y._instance=e}static setInstanceLevel(e){y._instance?y._instance.level(e):y._instance=new y(e)}static clearInstance(){y._instance=null}constructor(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:v.None,t=arguments.length>1?arguments[1]:void 0;this._onErrorHandler=[],this._level=e,this._method=t}addErrorHandler(e){this._onErrorHandler.find((t=>t===e))||this._onErrorHandler.push(e)}removeErrorHandler(e){const t=this._onErrorHandler.findIndex((t=>t===e));t<0||this._onErrorHandler.splice(t,1)}callErrorHandler(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];this._onErrorHandler.forEach((e=>e(...t)))}canLogInfo(){return this._level>=v.Info}canLogDebug(){return this._level>=v.Debug}canLogError(){return this._level>=v.Error}canLogWarn(){return this._level>=v.Warn}level(e){return arguments.length?(this._level=+e,this):this._level}error(){for(var e,t=arguments.length,n=new Array(t),r=0;r<t;r++)n[r]=arguments[r];return this._level>=v.Error&&(this._onErrorHandler.length?this.callErrorHandler(...n):p(null!==(e=this._method)&&void 0!==e?e:"error","ERROR",n)),this}warn(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return this._level>=v.Warn&&p(this._method||"warn","WARN",t),this}info(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return this._level>=v.Info&&p(this._method||"log","INFO",t),this}debug(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return this._level>=v.Debug&&p(this._method||"log","DEBUG",t),this}}y._instance=null;const g=(e,t,n)=>(e.fields=t||[],e.fname=n,e);function d(e){return r(e)?null:e.fields}const _=e=>t=>((e,t,n)=>{const r=i(t)?t.split("."):t;for(let t=0;t<r.length;t++)e=e?e[r[t]]:void 0;return void 0===e?n:e})(t,e),m=e=>{y.getInstance().error(e)},b=e=>{const t=[],n=e.length;let r,o,s,i=null,c=0,a="";e+="";const l=()=>{t.push(a+e.substring(r,o)),a="",r=o+1};for(r=0,o=0;o<n;o+=1)if(s=e[o],"\\"===s)a+=e.substring(r,o),a+=e.substring(++o,++o),r=o;else if(s===i)l(),i=null,c=-1;else{if(i)continue;r===c&&'"'===s||r===c&&"'"===s?(r=o+1,i=s):"."!==s||c?"["===s?(o>r&&l(),r=o+1,c=r):"]"===s&&(c||m("Access path missing open bracket: "+e),c>0&&l(),c=0,r=o+1):o>r?l():r=o+1}return c&&m("Access path missing closing bracket: "+e),i&&m("Access path missing closing quote: "+e),o>r&&(o+=1,l()),t},x=(e,t,r={})=>{if(n(e))return e;const o=b(e),s=1===o.length?o[0]:e;return g((r&&r.get||_)(o),[s],t||s)},w=(e,t,n={})=>{if(c(e)){const r=e.map((e=>x(e,t,n)));return e=>r.map((t=>t(e)))}return x(e,t,n)},E=w("id"),N=g((function(e){return e}),[],"identity"),O=g((function(){return 0}),[],"zero"),A=g((function(){return 1}),[],"one"),j=g((function(){return!0}),[],"true"),I=g((function(){return!1}),[],"false"),L=g((function(){return{}}),[],"emptyObject"),H=(e,t)=>{if((e<t||r(e))&&!r(t))return-1;if((e>t||r(t))&&!r(e))return 1;const n=t instanceof Date?+t:t,o=e instanceof Date?+e:e;return Number.isNaN(o)&&!Number.isNaN(n)?-1:Number.isNaN(n)&&!Number.isNaN(o)?1:0},k=(e,t)=>{return 1===e.length?(n=e[0],r=t[0],(e,t)=>H(n(e),n(t))*r):((e,t,n)=>(t.push(0),(r,o)=>{let s,i=0,c=-1;for(;0===i&&c+1<n;)c+=1,s=e[c],i=H(s(r),s(o));return i*t[c]}))(e,t,e.length);var n,r},B=(e,t,n,i=!0)=>{if(t===n)return!0;if(r(t)||r(n))return r(t)&&r(n);if(!s(t)&&!s(n))return t===n;const a=c(t)?t:t[e],l=c(n)?n:n[e];return a===l||!1!==i&&(c(l)?!(!c(a)||l.length!==a.length||!l.every(((e,t)=>e===a[t]))):!!o(l)&&!(!o(a)||Object.keys(l).length!==Object.keys(a).length||!Object.keys(l).every((e=>B(e,l,a)))))};function M(e,t,n,o){let s,i,c=-1;e.forEach((e=>{s=t(e),i=n(e),!r(s)&&(s=+s)>=s&&!r(i)&&(i=+i)>=i&&o(s,i,++c)}))}function D(e,t,n,r,o){let s=0,i=0;return M(e,t,n,((e,t)=>{const n=t-o(e),c=t-r;s+=n*n,i+=c*c})),1-s/i}e.accessor=g,e.accessorFields=d,e.accessorName=function(e){return r(e)?null:e.fname},e.ascending=H,e.compare=(e,t,o={})=>{const s=l(t)||[],i=[],c=[],a={},u=o.comparator||k;return l(e).forEach(((e,t)=>{if(r(e))return;i.push("desc"===s[t]?-1:1);const l=n(e)?e:w(e,null,o);c.push(l),(d(l)||[]).forEach((e=>{a[e]=1}))})),0===c.length?null:g(u(c,i),Object.keys(a))},e.emptyObject=L,e.error=m,e.extent=(e,t)=>{const o=n(t)?t:e=>e;let s,i;if(e&&e.length){const t=e.length;for(let n=0;n<t;n+=1){let t=o(e[n]);r(t)||!a(t=+t)||Number.isNaN(t)||(r(s)?(s=t,i=t):(s=Math.min(s,t),i=Math.max(i,t)))}return[s,i]}return[s,i]},e.falsy=I,e.field=w,e.getter=_,e.id=E,e.identity=N,e.isEqual=B,e.one=A,e.parseViewBox=e=>"width"in e?{x0:0,x1:e.width,y0:0,y1:e.height,width:e.width,height:e.height}:{x0:Math.min(e.x0,e.x1),x1:Math.max(e.x0,e.x1),y0:Math.min(e.y0,e.y1),y1:Math.max(e.y0,e.y1),width:Math.abs(e.x1-e.x0),height:Math.abs(e.y1-e.y0)},e.regressionLinear=function(e,t=(e=>e.x),n=(e=>e.y)){let r=0,o=0,s=0,i=0,c=0;M(e,t,n,((e,t)=>{++c,r+=(e-r)/c,o+=(t-o)/c,s+=(e*t-s)/c,i+=(e*e-i)/c}));const a=function(e,t,n,r){const o=r-e*e,s=Math.abs(o)<1e-24?0:(n-e*t)/o;return[t-s*e,s]}(r,o,s,i),l=e=>a[0]+a[1]*e;return{coef:a,predict:l,rSquared:D(e,t,n,o,l)}},e.splitAccessPath=b,e.toPercent=(e,t)=>r(e)?t:i(e)?t*parseFloat(e)/100:e,e.truthy=j,e.zero=O})); |
@@ -13,1 +13,2 @@ export { accessor, accessorName, accessorFields } from './accessor'; | ||
export { regressionLinear } from './regression-linear'; | ||
export { parseViewBox } from './view-box'; |
@@ -24,2 +24,4 @@ export { accessor, accessorName, accessorFields } from "./accessor"; | ||
export { regressionLinear } from "./regression-linear"; | ||
export { parseViewBox } from "./view-box"; | ||
//# sourceMappingURL=index.js.map |
import { isNil, isString } from "@visactor/vutils"; | ||
export const toPercent = (percent, total) => isNil(percent) ? total : Math.min(isString(percent) ? total * parseFloat(percent) / 100 : percent, total); | ||
export const toPercent = (percent, total) => isNil(percent) ? total : isString(percent) ? total * parseFloat(percent) / 100 : percent; | ||
//# sourceMappingURL=toPercent.js.map |
export * from './function'; | ||
export * from './logger'; | ||
export type LayoutViewBox = { | ||
width: number; | ||
height: number; | ||
} | { | ||
x0: number; | ||
x1: number; | ||
y0: number; | ||
y1: number; | ||
}; |
export * from "./function"; | ||
export * from "./logger"; | ||
//# sourceMappingURL=index.js.map |
{ | ||
"name": "@visactor/vgrammar-util", | ||
"version": "0.6.6", | ||
"version": "0.7.5-alpha.0", | ||
"description": "The common utils functions of VGrammar", | ||
@@ -27,3 +27,3 @@ "keywords": [ | ||
"dependencies": { | ||
"@visactor/vutils": "~0.15.8" | ||
"@visactor/vutils": "~0.15.9" | ||
}, | ||
@@ -42,4 +42,4 @@ "devDependencies": { | ||
"@internal/bundler": "0.0.1", | ||
"@internal/ts-config": "0.0.1", | ||
"@internal/eslint-config": "0.0.1", | ||
"@internal/ts-config": "0.0.1", | ||
"@internal/jest-config": "0.0.1" | ||
@@ -46,0 +46,0 @@ }, |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
130541
1497
Updated@visactor/vutils@~0.15.9