@visactor/vutils 1.0.24 → 1.0.26
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.zh-CN.md +12 -0
- package/REGRESSION.md +36 -0
- package/cjs/angle.d.ts +61 -0
- package/cjs/angle.js +73 -7
- package/cjs/angle.js.map +1 -1
- package/cjs/color/Color.d.ts +3 -0
- package/cjs/color/Color.js +64 -10
- package/cjs/color/Color.js.map +1 -1
- package/cjs/color/hexToRgb.d.ts +5 -0
- package/cjs/color/hexToRgb.js +5 -0
- package/cjs/color/hexToRgb.js.map +1 -1
- package/cjs/color/rgbToHsl.js +5 -1
- package/cjs/color/rgbToHsl.js.map +1 -1
- package/cjs/common/array.d.ts +43 -0
- package/cjs/common/array.js +44 -0
- package/cjs/common/array.js.map +1 -1
- package/cjs/common/bisect.d.ts +21 -0
- package/cjs/common/bisect.js +29 -0
- package/cjs/common/bisect.js.map +1 -1
- package/cjs/common/bootstrap.d.ts +5 -0
- package/cjs/common/bootstrap.js +22 -0
- package/cjs/common/bootstrap.js.map +1 -0
- package/cjs/common/clone.js +6 -0
- package/cjs/common/clone.js.map +1 -1
- package/cjs/common/cloneDeep.js +4 -1
- package/cjs/common/cloneDeep.js.map +1 -1
- package/cjs/common/correlation.d.ts +3 -0
- package/cjs/common/correlation.js +83 -0
- package/cjs/common/correlation.js.map +1 -0
- package/cjs/common/debounce.js +22 -4
- package/cjs/common/debounce.js.map +1 -1
- package/cjs/common/deviation.js +1 -2
- package/cjs/common/ecdf.d.ts +8 -0
- package/cjs/common/ecdf.js +11 -2
- package/cjs/common/ecdf.js.map +1 -1
- package/cjs/common/extent.d.ts +4 -0
- package/cjs/common/extent.js +4 -2
- package/cjs/common/extent.js.map +1 -1
- package/cjs/common/field.d.ts +6 -0
- package/cjs/common/field.js +3 -0
- package/cjs/common/field.js.map +1 -1
- package/cjs/common/has.d.ts +17 -0
- package/cjs/common/has.js +18 -1
- package/cjs/common/has.js.map +1 -1
- package/cjs/common/index.d.ts +5 -0
- package/cjs/common/index.js +34 -6
- package/cjs/common/index.js.map +1 -1
- package/cjs/common/interpolate.js +16 -3
- package/cjs/common/interpolate.js.map +1 -1
- package/cjs/common/isBase64.d.ts +6 -0
- package/cjs/common/isBase64.js +6 -0
- package/cjs/common/isBase64.js.map +1 -1
- package/cjs/common/isBoolean.d.ts +13 -0
- package/cjs/common/isBoolean.js +13 -1
- package/cjs/common/isBoolean.js.map +1 -1
- package/cjs/common/isEmpty.js +11 -1
- package/cjs/common/isEmpty.js.map +1 -1
- package/cjs/common/isEqual.js +19 -7
- package/cjs/common/isEqual.js.map +1 -1
- package/cjs/common/isFunction.d.ts +25 -0
- package/cjs/common/isFunction.js +27 -2
- package/cjs/common/isFunction.js.map +1 -1
- package/cjs/common/isNull.js +2 -1
- package/cjs/common/isNumber.d.ts +23 -0
- package/cjs/common/isNumber.js +23 -1
- package/cjs/common/isNumber.js.map +1 -1
- package/cjs/common/isNumeric.d.ts +25 -0
- package/cjs/common/isNumeric.js +25 -0
- package/cjs/common/isNumeric.js.map +1 -1
- package/cjs/common/isObject.d.ts +21 -0
- package/cjs/common/isObject.js +22 -0
- package/cjs/common/isObject.js.map +1 -1
- package/cjs/common/isObjectLike.d.ts +20 -0
- package/cjs/common/isObjectLike.js +21 -0
- package/cjs/common/isObjectLike.js.map +1 -1
- package/cjs/common/isPlainObject.d.ts +25 -0
- package/cjs/common/isPlainObject.js.map +1 -1
- package/cjs/common/isPrototype.js +1 -1
- package/cjs/common/isRegExp.js +1 -1
- package/cjs/common/isShallowEqual.js +1 -0
- package/cjs/common/isShallowEqual.js.map +1 -1
- package/cjs/common/isString.d.ts +13 -0
- package/cjs/common/isString.js +13 -1
- package/cjs/common/isString.js.map +1 -1
- package/cjs/common/isType.d.ts +6 -0
- package/cjs/common/isType.js +6 -0
- package/cjs/common/isType.js.map +1 -1
- package/cjs/common/isValidNumber.js.map +1 -1
- package/cjs/common/isValidUrl.js.map +1 -1
- package/cjs/common/kde.d.ts +28 -0
- package/cjs/common/kde.js +29 -5
- package/cjs/common/kde.js.map +1 -1
- package/cjs/common/mean.d.ts +2 -0
- package/cjs/common/mean.js +25 -0
- package/cjs/common/mean.js.map +1 -0
- package/cjs/common/merge.js +20 -4
- package/cjs/common/merge.js.map +1 -1
- package/cjs/common/mixin.js +14 -3
- package/cjs/common/mixin.js.map +1 -1
- package/cjs/common/normalQuantile.d.ts +5 -0
- package/cjs/common/normalQuantile.js +21 -0
- package/cjs/common/normalQuantile.js.map +1 -0
- package/cjs/common/number.d.ts +24 -0
- package/cjs/common/number.js +24 -1
- package/cjs/common/number.js.map +1 -1
- package/cjs/common/pad.d.ts +21 -0
- package/cjs/common/pad.js +21 -1
- package/cjs/common/pad.js.map +1 -1
- package/cjs/common/random.d.ts +3 -0
- package/cjs/common/random.js +13 -0
- package/cjs/common/random.js.map +1 -1
- package/cjs/common/regression-bootstrap.d.ts +14 -0
- package/cjs/common/regression-bootstrap.js +37 -0
- package/cjs/common/regression-bootstrap.js.map +1 -0
- package/cjs/common/regression-linear.d.ts +5 -0
- package/cjs/common/regression-linear.js +28 -39
- package/cjs/common/regression-linear.js.map +1 -1
- package/cjs/common/regression-logistic.d.ts +6 -0
- package/cjs/common/regression-logistic.js +25 -14
- package/cjs/common/regression-logistic.js.map +1 -1
- package/cjs/common/regression-lowess.d.ts +11 -1
- package/cjs/common/regression-lowess.js +125 -118
- package/cjs/common/regression-lowess.js.map +1 -1
- package/cjs/common/regression-polynomial.d.ts +1 -0
- package/cjs/common/regression-polynomial.js +24 -94
- package/cjs/common/regression-polynomial.js.map +1 -1
- package/cjs/common/regression-solver.d.ts +26 -0
- package/cjs/common/regression-solver.js +180 -0
- package/cjs/common/regression-solver.js.map +1 -0
- package/cjs/common/regression-utils.d.ts +13 -1
- package/cjs/common/regression-utils.js +27 -12
- package/cjs/common/regression-utils.js.map +1 -1
- package/cjs/common/throttle.js +3 -0
- package/cjs/common/throttle.js.map +1 -1
- package/cjs/common/toDate.js +22 -3
- package/cjs/common/toDate.js.map +1 -1
- package/cjs/common/uuid.d.ts +7 -0
- package/cjs/common/uuid.js +15 -1
- package/cjs/common/uuid.js.map +1 -1
- package/cjs/data-structure/bounds.d.ts +101 -0
- package/cjs/data-structure/bounds.js +74 -7
- package/cjs/data-structure/bounds.js.map +1 -1
- package/cjs/data-structure/hashTable.d.ts +4 -0
- package/cjs/data-structure/hashTable.js +11 -2
- package/cjs/data-structure/hashTable.js.map +1 -1
- package/cjs/data-structure/index.js +6 -2
- package/cjs/data-structure/index.js.map +1 -1
- package/cjs/data-structure/matrix.d.ts +91 -0
- package/cjs/data-structure/matrix.js +52 -4
- package/cjs/data-structure/matrix.js.map +1 -1
- package/cjs/data-structure/point.d.ts +3 -0
- package/cjs/data-structure/point.js +5 -1
- package/cjs/data-structure/point.js.map +1 -1
- package/cjs/dom.d.ts +36 -0
- package/cjs/dom.js +43 -1
- package/cjs/dom.js.map +1 -1
- package/cjs/fmin/blas1.js +10 -1
- package/cjs/fmin/blas1.js.map +1 -1
- package/cjs/fmin/conjugate-gradient.js +18 -3
- package/cjs/fmin/conjugate-gradient.js.map +1 -1
- package/cjs/fmin/linesearch.js +15 -1
- package/cjs/fmin/linesearch.js.map +1 -1
- package/cjs/fmin/nelder-mead.d.ts +1 -0
- package/cjs/fmin/nelder-mead.js +30 -10
- package/cjs/fmin/nelder-mead.js.map +1 -1
- package/cjs/format/number/formatDecimal.js +9 -1
- package/cjs/format/number/formatDecimal.js.map +1 -1
- package/cjs/format/number/formatGroup.js +7 -0
- package/cjs/format/number/formatGroup.js.map +1 -1
- package/cjs/format/number/formatPrefixAuto.js +8 -0
- package/cjs/format/number/formatPrefixAuto.js.map +1 -1
- package/cjs/format/number/formatRounded.js +7 -0
- package/cjs/format/number/formatRounded.js.map +1 -1
- package/cjs/format/number/formatTrim.js +7 -0
- package/cjs/format/number/formatTrim.js.map +1 -1
- package/cjs/format/number/number.js +39 -9
- package/cjs/format/number/number.js.map +1 -1
- package/cjs/format/time.js +23 -6
- package/cjs/format/time.js.map +1 -1
- package/cjs/geo/circle-intersection.d.ts +12 -0
- package/cjs/geo/circle-intersection.js +54 -9
- package/cjs/geo/circle-intersection.js.map +1 -1
- package/cjs/geo/constant.js +8 -1
- package/cjs/geo/constant.js.map +1 -1
- package/cjs/geo/invariant.d.ts +22 -0
- package/cjs/geo/invariant.js +24 -1
- package/cjs/geo/invariant.js.map +1 -1
- package/cjs/graphics/algorithm/aabb.js +7 -3
- package/cjs/graphics/algorithm/aabb.js.map +1 -1
- package/cjs/graphics/algorithm/intersect.d.ts +48 -0
- package/cjs/graphics/algorithm/intersect.js +75 -7
- package/cjs/graphics/algorithm/intersect.js.map +1 -1
- package/cjs/graphics/bounds-util.js +4 -2
- package/cjs/graphics/bounds-util.js.map +1 -1
- package/cjs/graphics/graph-util.js +4 -0
- package/cjs/graphics/graph-util.js.map +1 -1
- package/cjs/graphics/index.js +7 -4
- package/cjs/graphics/index.js.map +1 -1
- package/cjs/graphics/polygon.d.ts +12 -0
- package/cjs/graphics/polygon.js +28 -5
- package/cjs/graphics/polygon.js.map +1 -1
- package/cjs/graphics/text/measure/interface.d.ts +12 -0
- package/cjs/graphics/text/measure/textMeasure.d.ts +23 -0
- package/cjs/graphics/text/measure/textMeasure.js +50 -22
- package/cjs/graphics/text/measure/textMeasure.js.map +1 -1
- package/cjs/graphics/text/measure/util.js +1 -0
- package/cjs/graphics/text/measure/util.js.map +1 -1
- package/cjs/graphics/text/stringWidth.js +7 -3
- package/cjs/graphics/text/stringWidth.js.map +1 -1
- package/cjs/index.d.ts +6 -0
- package/cjs/index.js +19 -4
- package/cjs/index.js.map +1 -1
- package/cjs/logger.js +12 -2
- package/cjs/logger.js.map +1 -1
- package/cjs/lru.js +14 -6
- package/cjs/lru.js.map +1 -1
- package/cjs/math.d.ts +9 -0
- package/cjs/math.js +10 -0
- package/cjs/math.js.map +1 -1
- package/cjs/padding.d.ts +5 -0
- package/cjs/padding.js +5 -0
- package/cjs/padding.js.map +1 -1
- package/cjs/time/formatUtils.d.ts +6 -0
- package/cjs/time/formatUtils.js +7 -0
- package/cjs/time/formatUtils.js.map +1 -1
- package/dist/index.js +2035 -411
- package/dist/index.min.js +128 -1
- package/es/angle.d.ts +61 -0
- package/es/angle.js +66 -10
- package/es/angle.js.map +1 -1
- package/es/color/Color.d.ts +3 -0
- package/es/color/Color.js +64 -9
- package/es/color/Color.js.map +1 -1
- package/es/color/hexToRgb.d.ts +5 -0
- package/es/color/hexToRgb.js +5 -0
- package/es/color/hexToRgb.js.map +1 -1
- package/es/color/rgbToHsl.js +5 -1
- package/es/color/rgbToHsl.js.map +1 -1
- package/es/common/array.d.ts +43 -0
- package/es/common/array.js +44 -8
- package/es/common/array.js.map +1 -1
- package/es/common/bisect.d.ts +21 -0
- package/es/common/bisect.js +29 -4
- package/es/common/bisect.js.map +1 -1
- package/es/common/bootstrap.d.ts +5 -0
- package/es/common/bootstrap.js +14 -0
- package/es/common/bootstrap.js.map +1 -0
- package/es/common/clone.js +6 -0
- package/es/common/clone.js.map +1 -1
- package/es/common/cloneDeep.js +4 -1
- package/es/common/cloneDeep.js.map +1 -1
- package/es/common/correlation.d.ts +3 -0
- package/es/common/correlation.js +77 -0
- package/es/common/correlation.js.map +1 -0
- package/es/common/debounce.js +22 -4
- package/es/common/debounce.js.map +1 -1
- package/es/common/deviation.js +1 -2
- package/es/common/ecdf.d.ts +8 -0
- package/es/common/ecdf.js +11 -1
- package/es/common/ecdf.js.map +1 -1
- package/es/common/extent.d.ts +4 -0
- package/es/common/extent.js +8 -3
- package/es/common/extent.js.map +1 -1
- package/es/common/field.d.ts +6 -0
- package/es/common/field.js +3 -1
- package/es/common/field.js.map +1 -1
- package/es/common/has.d.ts +17 -0
- package/es/common/has.js +18 -1
- package/es/common/has.js.map +1 -1
- package/es/common/index.d.ts +5 -0
- package/es/common/index.js +24 -0
- package/es/common/index.js.map +1 -1
- package/es/common/interpolate.js +16 -3
- package/es/common/interpolate.js.map +1 -1
- package/es/common/isBase64.d.ts +6 -0
- package/es/common/isBase64.js +6 -0
- package/es/common/isBase64.js.map +1 -1
- package/es/common/isBoolean.d.ts +13 -0
- package/es/common/isBoolean.js +13 -1
- package/es/common/isBoolean.js.map +1 -1
- package/es/common/isEmpty.js +11 -1
- package/es/common/isEmpty.js.map +1 -1
- package/es/common/isEqual.js +19 -7
- package/es/common/isEqual.js.map +1 -1
- package/es/common/isFunction.d.ts +25 -0
- package/es/common/isFunction.js +27 -2
- package/es/common/isFunction.js.map +1 -1
- package/es/common/isNull.js +2 -1
- package/es/common/isNumber.d.ts +23 -0
- package/es/common/isNumber.js +23 -1
- package/es/common/isNumber.js.map +1 -1
- package/es/common/isNumeric.d.ts +25 -0
- package/es/common/isNumeric.js +25 -0
- package/es/common/isNumeric.js.map +1 -1
- package/es/common/isObject.d.ts +21 -0
- package/es/common/isObject.js +22 -0
- package/es/common/isObject.js.map +1 -1
- package/es/common/isObjectLike.d.ts +20 -0
- package/es/common/isObjectLike.js +21 -0
- package/es/common/isObjectLike.js.map +1 -1
- package/es/common/isPlainObject.d.ts +25 -0
- package/es/common/isPlainObject.js +26 -0
- package/es/common/isPlainObject.js.map +1 -1
- package/es/common/isPrototype.js +1 -1
- package/es/common/isRegExp.js +1 -1
- package/es/common/isShallowEqual.js +1 -0
- package/es/common/isShallowEqual.js.map +1 -1
- package/es/common/isString.d.ts +13 -0
- package/es/common/isString.js +13 -1
- package/es/common/isString.js.map +1 -1
- package/es/common/isType.d.ts +6 -0
- package/es/common/isType.js +6 -0
- package/es/common/isType.js.map +1 -1
- package/es/common/isValidNumber.js.map +1 -1
- package/es/common/isValidUrl.js.map +1 -1
- package/es/common/kde.d.ts +28 -0
- package/es/common/kde.js +29 -7
- package/es/common/kde.js.map +1 -1
- package/es/common/mean.d.ts +2 -0
- package/es/common/mean.js +19 -0
- package/es/common/mean.js.map +1 -0
- package/es/common/merge.js +22 -5
- package/es/common/merge.js.map +1 -1
- package/es/common/mixin.js +14 -3
- package/es/common/mixin.js.map +1 -1
- package/es/common/normalQuantile.d.ts +5 -0
- package/es/common/normalQuantile.js +15 -0
- package/es/common/normalQuantile.js.map +1 -0
- package/es/common/number.d.ts +24 -0
- package/es/common/number.js +24 -2
- package/es/common/number.js.map +1 -1
- package/es/common/pad.d.ts +21 -0
- package/es/common/pad.js +21 -1
- package/es/common/pad.js.map +1 -1
- package/es/common/random.d.ts +3 -0
- package/es/common/random.js +13 -1
- package/es/common/random.js.map +1 -1
- package/es/common/regression-bootstrap.d.ts +14 -0
- package/es/common/regression-bootstrap.js +31 -0
- package/es/common/regression-bootstrap.js.map +1 -0
- package/es/common/regression-linear.d.ts +5 -0
- package/es/common/regression-linear.js +25 -39
- package/es/common/regression-linear.js.map +1 -1
- package/es/common/regression-logistic.d.ts +6 -0
- package/es/common/regression-logistic.js +24 -16
- package/es/common/regression-logistic.js.map +1 -1
- package/es/common/regression-lowess.d.ts +11 -1
- package/es/common/regression-lowess.js +120 -118
- package/es/common/regression-lowess.js.map +1 -1
- package/es/common/regression-polynomial.d.ts +1 -0
- package/es/common/regression-polynomial.js +21 -89
- package/es/common/regression-polynomial.js.map +1 -1
- package/es/common/regression-solver.d.ts +26 -0
- package/es/common/regression-solver.js +168 -0
- package/es/common/regression-solver.js.map +1 -0
- package/es/common/regression-utils.d.ts +13 -1
- package/es/common/regression-utils.js +18 -9
- package/es/common/regression-utils.js.map +1 -1
- package/es/common/throttle.js +3 -0
- package/es/common/throttle.js.map +1 -1
- package/es/common/toDate.js +23 -3
- package/es/common/toDate.js.map +1 -1
- package/es/common/uuid.d.ts +7 -0
- package/es/common/uuid.js +15 -1
- package/es/common/uuid.js.map +1 -1
- package/es/data-structure/bounds.d.ts +101 -0
- package/es/data-structure/bounds.js +74 -8
- package/es/data-structure/bounds.js.map +1 -1
- package/es/data-structure/hashTable.d.ts +4 -0
- package/es/data-structure/hashTable.js +11 -2
- package/es/data-structure/hashTable.js.map +1 -1
- package/es/data-structure/index.js +2 -0
- package/es/data-structure/index.js.map +1 -1
- package/es/data-structure/matrix.d.ts +91 -0
- package/es/data-structure/matrix.js +52 -5
- package/es/data-structure/matrix.js.map +1 -1
- package/es/data-structure/point.d.ts +3 -0
- package/es/data-structure/point.js +5 -1
- package/es/data-structure/point.js.map +1 -1
- package/es/dom.d.ts +36 -0
- package/es/dom.js +43 -8
- package/es/dom.js.map +1 -1
- package/es/fmin/blas1.js +10 -0
- package/es/fmin/blas1.js.map +1 -1
- package/es/fmin/conjugate-gradient.js +18 -2
- package/es/fmin/conjugate-gradient.js.map +1 -1
- package/es/fmin/linesearch.js +15 -0
- package/es/fmin/linesearch.js.map +1 -1
- package/es/fmin/nelder-mead.d.ts +1 -0
- package/es/fmin/nelder-mead.js +29 -9
- package/es/fmin/nelder-mead.js.map +1 -1
- package/es/format/number/formatDecimal.js +9 -1
- package/es/format/number/formatDecimal.js.map +1 -1
- package/es/format/number/formatGroup.js +7 -0
- package/es/format/number/formatGroup.js.map +1 -1
- package/es/format/number/formatPrefixAuto.js +8 -0
- package/es/format/number/formatPrefixAuto.js.map +1 -1
- package/es/format/number/formatRounded.js +7 -0
- package/es/format/number/formatRounded.js.map +1 -1
- package/es/format/number/formatTrim.js +7 -0
- package/es/format/number/formatTrim.js.map +1 -1
- package/es/format/number/number.js +40 -8
- package/es/format/number/number.js.map +1 -1
- package/es/format/time.js +23 -5
- package/es/format/time.js.map +1 -1
- package/es/geo/circle-intersection.d.ts +12 -0
- package/es/geo/circle-intersection.js +54 -14
- package/es/geo/circle-intersection.js.map +1 -1
- package/es/geo/constant.js +8 -0
- package/es/geo/constant.js.map +1 -1
- package/es/geo/invariant.d.ts +22 -0
- package/es/geo/invariant.js +24 -0
- package/es/geo/invariant.js.map +1 -1
- package/es/graphics/algorithm/aabb.js +7 -3
- package/es/graphics/algorithm/aabb.js.map +1 -1
- package/es/graphics/algorithm/intersect.d.ts +48 -0
- package/es/graphics/algorithm/intersect.js +75 -12
- package/es/graphics/algorithm/intersect.js.map +1 -1
- package/es/graphics/bounds-util.js +4 -2
- package/es/graphics/bounds-util.js.map +1 -1
- package/es/graphics/graph-util.js +4 -0
- package/es/graphics/graph-util.js.map +1 -1
- package/es/graphics/index.js +2 -0
- package/es/graphics/index.js.map +1 -1
- package/es/graphics/polygon.d.ts +12 -0
- package/es/graphics/polygon.js +28 -6
- package/es/graphics/polygon.js.map +1 -1
- package/es/graphics/text/measure/interface.d.ts +12 -0
- package/es/graphics/text/measure/textMeasure.d.ts +23 -0
- package/es/graphics/text/measure/textMeasure.js +46 -21
- package/es/graphics/text/measure/textMeasure.js.map +1 -1
- package/es/graphics/text/measure/util.js +1 -0
- package/es/graphics/text/measure/util.js.map +1 -1
- package/es/graphics/text/stringWidth.js +7 -3
- package/es/graphics/text/stringWidth.js.map +1 -1
- package/es/index.d.ts +6 -0
- package/es/index.js +15 -1
- package/es/index.js.map +1 -1
- package/es/logger.js +12 -1
- package/es/logger.js.map +1 -1
- package/es/lru.js +14 -6
- package/es/lru.js.map +1 -1
- package/es/math.d.ts +9 -0
- package/es/math.js +10 -1
- package/es/math.js.map +1 -1
- package/es/padding.d.ts +5 -0
- package/es/padding.js +5 -1
- package/es/padding.js.map +1 -1
- package/es/time/formatUtils.d.ts +6 -0
- package/es/time/formatUtils.js +7 -1
- package/es/time/formatUtils.js.map +1 -1
- package/package.json +4 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/common/debounce.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../src/common/debounce.ts"],"names":[],"mappings":"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","file":"debounce.js","sourcesContent":["/**\n * @see https://github.com/lodash/lodash/blob/master/debounce.js\n */\nimport isObject from './isObject';\nimport isValidNumber from './isValidNumber';\n\nexport type FunctionControlOptions = {\n // 是否在等待开始时调用\n leading?: boolean;\n // 是否在等待结束后调用\n trailing?: boolean;\n // 最长等待时间\n maxWait?: number;\n};\n\nlet hasRaf: boolean = false;\ntry {\n hasRaf = typeof requestAnimationFrame === 'function' && typeof cancelAnimationFrame === 'function';\n} catch (err) {\n hasRaf = false;\n}\nhasRaf = false;\n\nfunction debounce<T, S>(\n func: (...args: T[]) => S,\n wait: number,\n options?: FunctionControlOptions\n): (...args: T[]) => S {\n let lastArgs: any;\n let lastThis: any;\n let maxWait: number;\n let result: any;\n // eslint-disable-next-line no-undef\n let timerId: number | NodeJS.Timeout | undefined;\n let lastCallTime: number | undefined;\n\n let lastInvokeTime = 0;\n let leading = false;\n let maxing = false;\n let trailing = true;\n\n // Bypass `requestAnimationFrame` by explicitly setting `wait=0`.\n const useRAF = !wait && wait !== 0 && hasRaf;\n\n if (typeof func !== 'function') {\n throw new TypeError('Expected a function');\n }\n wait = +wait || 0;\n if (isObject(options)) {\n leading = !!options.leading;\n maxing = 'maxWait' in options;\n if (maxing) {\n maxWait = Math.max(isValidNumber(options.maxWait) ? options.maxWait : 0, wait);\n }\n\n trailing = 'trailing' in options ? !!options.trailing : trailing;\n }\n\n function invokeFunc(time: number) {\n const args = lastArgs;\n const thisArg = lastThis;\n\n lastArgs = lastThis = undefined;\n lastInvokeTime = time;\n result = func.apply(thisArg, args);\n return result;\n }\n\n function startTimer(pendingFunc: any, wait: number) {\n if (useRAF) {\n cancelAnimationFrame(timerId as number);\n return requestAnimationFrame(pendingFunc);\n }\n return setTimeout(pendingFunc, wait);\n }\n\n function cancelTimer(id: number) {\n if (useRAF) {\n return cancelAnimationFrame(id);\n }\n clearTimeout(id);\n }\n\n function leadingEdge(time: number) {\n // Reset any `maxWait` timer.\n lastInvokeTime = time;\n // Start the timer for the trailing edge.\n timerId = startTimer(timerExpired, wait);\n // Invoke the leading edge.\n return leading ? invokeFunc(time) : result;\n }\n\n function remainingWait(time: number) {\n const timeSinceLastCall = time - (lastCallTime as number);\n const timeSinceLastInvoke = time - lastInvokeTime;\n const timeWaiting = wait - timeSinceLastCall;\n\n return maxing ? Math.min(timeWaiting, maxWait - timeSinceLastInvoke) : timeWaiting;\n }\n\n function shouldInvoke(time: number) {\n const timeSinceLastCall = time - (lastCallTime as number);\n const timeSinceLastInvoke = time - lastInvokeTime;\n\n // Either this is the first call, activity has stopped and we're at the\n // trailing edge, the system time has gone backwards and we're treating\n // it as the trailing edge, or we've hit the `maxWait` limit.\n return (\n lastCallTime === undefined ||\n timeSinceLastCall >= wait ||\n timeSinceLastCall < 0 ||\n (maxing && timeSinceLastInvoke >= maxWait)\n );\n }\n\n function timerExpired() {\n const time = Date.now();\n if (shouldInvoke(time)) {\n return trailingEdge(time);\n }\n // Restart the timer.\n timerId = startTimer(timerExpired, remainingWait(time));\n }\n\n function trailingEdge(time: number) {\n timerId = undefined;\n\n // Only invoke if we have `lastArgs` which means `func` has been\n // debounced at least once.\n if (trailing && lastArgs) {\n return invokeFunc(time);\n }\n lastArgs = lastThis = undefined;\n return result;\n }\n\n function cancel() {\n if (timerId !== undefined) {\n cancelTimer(timerId as number);\n }\n lastInvokeTime = 0;\n lastArgs = lastCallTime = lastThis = timerId = undefined;\n }\n\n function flush() {\n return timerId === undefined ? result : trailingEdge(Date.now());\n }\n\n function pending() {\n return timerId !== undefined;\n }\n\n function debounced(...args: any[]) {\n const time = Date.now();\n const isInvoking = shouldInvoke(time);\n\n lastArgs = args;\n // @ts-ignore\n lastThis = this;\n lastCallTime = time;\n\n if (isInvoking) {\n if (timerId === undefined) {\n return leadingEdge(lastCallTime);\n }\n if (maxing) {\n // Handle invocations in a tight loop.\n timerId = startTimer(timerExpired, wait);\n return invokeFunc(lastCallTime);\n }\n }\n if (timerId === undefined) {\n timerId = startTimer(timerExpired, wait);\n }\n return result;\n }\n debounced.cancel = cancel;\n debounced.flush = flush;\n debounced.pending = pending;\n return debounced;\n}\n\nexport default debounce;\n"]}
|
package/es/common/deviation.js
CHANGED
package/es/common/ecdf.d.ts
CHANGED
|
@@ -1,3 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Empirical Cumulative Distribution Function (ECDF)
|
|
3
|
+
* Returns a factory that builds an evaluator over provided samples.
|
|
4
|
+
* The evaluator exposes:
|
|
5
|
+
* - evaluate(x:number) => proportion of samples <= x
|
|
6
|
+
* - evaluate(xs:number[]) => number[]
|
|
7
|
+
* - evaluateGrid(N:number) => { points: number[], cdf: number[] } over sample range
|
|
8
|
+
*/
|
|
1
9
|
export interface ECDFEvaluator {
|
|
2
10
|
evaluate: (x: number | number[]) => number | number[];
|
|
3
11
|
evaluateGrid: (N: number) => {
|
package/es/common/ecdf.js
CHANGED
|
@@ -1,8 +1,18 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Empirical Cumulative Distribution Function (ECDF)
|
|
3
|
+
* Returns a factory that builds an evaluator over provided samples.
|
|
4
|
+
* The evaluator exposes:
|
|
5
|
+
* - evaluate(x:number) => proportion of samples <= x
|
|
6
|
+
* - evaluate(xs:number[]) => number[]
|
|
7
|
+
* - evaluateGrid(N:number) => { points: number[], cdf: number[] } over sample range
|
|
8
|
+
*/
|
|
1
9
|
export function ecdf(data) {
|
|
2
10
|
const n = data.length, sorted = data.slice().sort(((a, b) => a - b));
|
|
3
11
|
function evaluateSingle(x) {
|
|
4
12
|
if (0 === n) return 0;
|
|
5
|
-
|
|
13
|
+
// count of values <= x (upper bound index)
|
|
14
|
+
let lo = 0, hi = n;
|
|
15
|
+
// exclusive
|
|
6
16
|
for (;lo < hi; ) {
|
|
7
17
|
const mid = lo + hi >>> 1;
|
|
8
18
|
sorted[mid] <= x ? lo = mid + 1 : hi = mid;
|
package/es/common/ecdf.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/common/ecdf.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../src/common/ecdf.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAQH,MAAM,UAAU,IAAI,CAAC,IAAc;IACjC,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC;IACtB,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IAElD,SAAS,cAAc,CAAC,CAAS;QAC/B,IAAI,CAAC,KAAK,CAAC,EAAE;YACX,OAAO,CAAC,CAAC;SACV;QACD,2CAA2C;QAC3C,IAAI,EAAE,GAAG,CAAC,CAAC;QACX,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC,YAAY;QACxB,OAAO,EAAE,GAAG,EAAE,EAAE;YACd,MAAM,GAAG,GAAG,CAAC,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC;YAC5B,IAAI,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;gBACpB,EAAE,GAAG,GAAG,GAAG,CAAC,CAAC;aACd;iBAAM;gBACL,EAAE,GAAG,GAAG,CAAC;aACV;SACF;QACD,OAAO,EAAE,GAAG,CAAC,CAAC;IAChB,CAAC;IAED,SAAS,QAAQ,CAAC,CAAoB;QACpC,IAAI,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE;YACpB,MAAM,GAAG,GAAa,EAAE,CAAC;YACzB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACjC,GAAG,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;aAChC;YACD,OAAO,GAAG,CAAC;SACZ;QACD,OAAO,cAAc,CAAC,CAAW,CAAC,CAAC;IACrC,CAAC;IAED,SAAS,YAAY,CAAC,CAAS;QAC7B,MAAM,GAAG,GAA+B,EAAE,CAAC;QAC3C,IAAI,CAAC,IAAI,CAAC,EAAE;YACV,OAAO,GAAG,CAAC;SACZ;QACD,IAAI,CAAC,KAAK,CAAC,EAAE;YACX,OAAO,GAAG,CAAC;SACZ;QACD,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;QACtB,MAAM,GAAG,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QAC1B,IAAI,GAAG,KAAK,GAAG,EAAE;YACf,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;gBAC1B,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;aAC5B;YACD,OAAO,GAAG,CAAC;SACZ;QACD,MAAM,IAAI,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QACnC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;YAC1B,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,IAAI,GAAG,CAAC,CAAC;YAE7C,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;SACvC;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IAED,OAAO;QACL,QAAQ,EAAE,QAAe;QACzB,YAAY;QACZ,CAAC;KACF,CAAC;AACJ,CAAC;AAED,eAAe,IAAI,CAAC","file":"ecdf.js","sourcesContent":["/**\n * Empirical Cumulative Distribution Function (ECDF)\n * Returns a factory that builds an evaluator over provided samples.\n * The evaluator exposes:\n * - evaluate(x:number) => proportion of samples <= x\n * - evaluate(xs:number[]) => number[]\n * - evaluateGrid(N:number) => { points: number[], cdf: number[] } over sample range\n */\n\nexport interface ECDFEvaluator {\n evaluate: (x: number | number[]) => number | number[];\n evaluateGrid: (N: number) => { x: number; y: number }[];\n n: number;\n}\n\nexport function ecdf(data: number[]): ECDFEvaluator {\n const n = data.length;\n const sorted = data.slice().sort((a, b) => a - b);\n\n function evaluateSingle(x: number) {\n if (n === 0) {\n return 0;\n }\n // count of values <= x (upper bound index)\n let lo = 0;\n let hi = n; // exclusive\n while (lo < hi) {\n const mid = (lo + hi) >>> 1;\n if (sorted[mid] <= x) {\n lo = mid + 1;\n } else {\n hi = mid;\n }\n }\n return lo / n;\n }\n\n function evaluate(x: number | number[]) {\n if (Array.isArray(x)) {\n const out: number[] = [];\n for (let i = 0; i < x.length; i++) {\n out.push(evaluateSingle(x[i]));\n }\n return out;\n }\n return evaluateSingle(x as number);\n }\n\n function evaluateGrid(N: number) {\n const out: { x: number; y: number }[] = [];\n if (N <= 0) {\n return out;\n }\n if (n === 0) {\n return out;\n }\n const min = sorted[0];\n const max = sorted[n - 1];\n if (min === max) {\n for (let i = 0; i < N; i++) {\n out.push({ x: min, y: 1 });\n }\n return out;\n }\n const step = (max - min) / (N - 1);\n for (let i = 0; i < N; i++) {\n const x = i === N - 1 ? max : min + step * i;\n\n out.push({ x, y: evaluateSingle(x) });\n }\n return out;\n }\n\n return {\n evaluate: evaluate as any,\n evaluateGrid,\n n\n };\n}\n\nexport default ecdf;\n"]}
|
package/es/common/extent.d.ts
CHANGED
package/es/common/extent.js
CHANGED
|
@@ -4,12 +4,16 @@ import isNil from "./isNil";
|
|
|
4
4
|
|
|
5
5
|
import isNumber from "./isNumber";
|
|
6
6
|
|
|
7
|
-
|
|
7
|
+
/**
|
|
8
|
+
* Return an array with minimum and maximum values, in the
|
|
9
|
+
* form [min, max]. Ignores null, undefined, and NaN values.
|
|
10
|
+
*/ export const extent = (array, func) => {
|
|
8
11
|
const valueGetter = isFunction(func) ? func : val => val;
|
|
9
12
|
let min, max;
|
|
10
13
|
if (array && array.length) {
|
|
11
14
|
const n = array.length;
|
|
12
|
-
|
|
15
|
+
// find first valid value
|
|
16
|
+
for (let i = 0; i < n; i += 1) {
|
|
13
17
|
let value = valueGetter(array[i]);
|
|
14
18
|
isNil(value) || !isNumber(value = +value) || Number.isNaN(value) || (isNil(min) ? (min = value,
|
|
15
19
|
max = value) : (min = Math.min(min, value), max = Math.max(max, value)));
|
|
@@ -17,4 +21,5 @@ export const extent = (array, func) => {
|
|
|
17
21
|
return [ min, max ];
|
|
18
22
|
}
|
|
19
23
|
return [ min, max ];
|
|
20
|
-
};
|
|
24
|
+
};
|
|
25
|
+
//# sourceMappingURL=extent.js.map
|
package/es/common/extent.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/common/extent.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,MAAM,SAAS,CAAC;AAC5B,OAAO,QAAQ,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"sources":["../src/common/extent.ts"],"names":[],"mappings":"AAAA,OAAO,UAAU,MAAM,cAAc,CAAC;AACtC,OAAO,KAAK,MAAM,SAAS,CAAC;AAC5B,OAAO,QAAQ,MAAM,YAAY,CAAC;AAClC;;;GAGG;AACH,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,KAAY,EAAE,IAA2B,EAAE,EAAE;IAClE,MAAM,WAAW,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAQ,EAAE,EAAE,CAAC,GAAG,CAAC;IAChE,IAAI,GAAW,CAAC;IAChB,IAAI,GAAW,CAAC;IAEhB,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,EAAE;QACzB,MAAM,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC;QAEvB,yBAAyB;QACzB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE;YAC7B,IAAI,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;YAClC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,QAAQ,CAAC,CAAC,KAAK,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE;gBACvE,IAAI,KAAK,CAAC,GAAG,CAAC,EAAE;oBACd,GAAG,GAAG,KAAK,CAAC;oBACZ,GAAG,GAAG,KAAK,CAAC;iBACb;qBAAM;oBACL,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;oBAC3B,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;iBAC5B;aACF;SACF;QAED,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;KACnB;IAED,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;AACpB,CAAC,CAAC","file":"extent.js","sourcesContent":["import isFunction from './isFunction';\nimport isNil from './isNil';\nimport isNumber from './isNumber';\n/**\n * Return an array with minimum and maximum values, in the\n * form [min, max]. Ignores null, undefined, and NaN values.\n */\nexport const extent = (array: any[], func?: (val: any) => number) => {\n const valueGetter = isFunction(func) ? func : (val: any) => val;\n let min: number;\n let max: number;\n\n if (array && array.length) {\n const n = array.length;\n\n // find first valid value\n for (let i = 0; i < n; i += 1) {\n let value = valueGetter(array[i]);\n if (!isNil(value) && isNumber((value = +value)) && !Number.isNaN(value)) {\n if (isNil(min)) {\n min = value;\n max = value;\n } else {\n min = Math.min(min, value);\n max = Math.max(max, value);\n }\n }\n }\n\n return [min, max];\n }\n\n return [min, max];\n};\n"]}
|
package/es/common/field.d.ts
CHANGED
|
@@ -1,12 +1,18 @@
|
|
|
1
|
+
/** 获取字段值的函数 */
|
|
1
2
|
export type FieldGetterFunction = (val: any) => any;
|
|
3
|
+
/** 根据字段路径,返回获取相应路径属性的函数 */
|
|
2
4
|
export type Getter = (path: string[]) => FieldGetterFunction;
|
|
3
5
|
export type FieldOption = {
|
|
4
6
|
field: string;
|
|
5
7
|
};
|
|
6
8
|
export type TagItemAttribute<T> = T | ((d?: any) => T);
|
|
9
|
+
/** field函数对应的参数 */
|
|
7
10
|
export interface FieldGetterGeneratorOptions {
|
|
8
11
|
get?: Getter;
|
|
9
12
|
}
|
|
10
13
|
export declare const getter: (path: string[]) => any;
|
|
11
14
|
export declare const field: (fieldStr: string | string[] | FieldGetterFunction | FieldGetterFunction[], opt?: FieldGetterGeneratorOptions) => any;
|
|
15
|
+
/**
|
|
16
|
+
* 取数逻辑
|
|
17
|
+
*/
|
|
12
18
|
export declare const simpleField: <T>(option: FieldOption | TagItemAttribute<T>) => (datum: any) => any;
|
package/es/common/field.js
CHANGED
|
@@ -20,5 +20,7 @@ export const field = (fieldStr, opt = {}) => {
|
|
|
20
20
|
return fieldSingle(fieldStr, opt);
|
|
21
21
|
};
|
|
22
22
|
|
|
23
|
-
|
|
23
|
+
/**
|
|
24
|
+
* 取数逻辑
|
|
25
|
+
*/ export const simpleField = option => option ? "string" == typeof option || "number" == typeof option ? () => option : isFunction(option) ? option : datum => datum[option.field] : null;
|
|
24
26
|
//# sourceMappingURL=field.js.map
|
package/es/common/field.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/common/field.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,OAAO,CAAC;AACxB,OAAO,OAAO,MAAM,WAAW,CAAC;AAChC,OAAO,UAAU,MAAM,cAAc,CAAC;AAgBtC,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,IAAc,EAAO,EAAE;IAC5C,OAAO,CAAC,GAAQ,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;AACtC,CAAC,CAAC;AAEF,MAAM,WAAW,GAAG,CAAC,QAAsC,EAAE,MAAmC,EAAE,EAAE,EAAE;IACpG,IAAI,UAAU,CAAC,QAAQ,CAAC,EAAE;QACxB,OAAO,QAAQ,CAAC;KACjB;IAED,MAAM,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC;IAExB,OAAO,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC;AAC5C,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,KAAK,GAAG,CACnB,QAAyE,EACzE,MAAmC,EAAE,EACrC,EAAE;IACF,IAAI,OAAO,CAAC,QAAQ,CAAC,EAAE;QACrB,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,WAAW,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC;QAE7D,OAAO,CAAC,KAAU,EAAE,EAAE;YACpB,OAAO,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;QACxC,CAAC,CAAC;KACH;IAED,OAAO,WAAW,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;AACpC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"sources":["../src/common/field.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,OAAO,CAAC;AACxB,OAAO,OAAO,MAAM,WAAW,CAAC;AAChC,OAAO,UAAU,MAAM,cAAc,CAAC;AAgBtC,MAAM,CAAC,MAAM,MAAM,GAAG,CAAC,IAAc,EAAO,EAAE;IAC5C,OAAO,CAAC,GAAQ,EAAE,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;AACtC,CAAC,CAAC;AAEF,MAAM,WAAW,GAAG,CAAC,QAAsC,EAAE,MAAmC,EAAE,EAAE,EAAE;IACpG,IAAI,UAAU,CAAC,QAAQ,CAAC,EAAE;QACxB,OAAO,QAAQ,CAAC;KACjB;IAED,MAAM,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAC;IAExB,OAAO,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,IAAI,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC;AAC5C,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,KAAK,GAAG,CACnB,QAAyE,EACzE,MAAmC,EAAE,EACrC,EAAE;IACF,IAAI,OAAO,CAAC,QAAQ,CAAC,EAAE;QACrB,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,WAAW,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC;QAE7D,OAAO,CAAC,KAAU,EAAE,EAAE;YACpB,OAAO,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;QACxC,CAAC,CAAC;KACH;IAED,OAAO,WAAW,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;AACpC,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CAAI,MAAyC,EAAE,EAAE;IAC1E,IAAI,CAAC,MAAM,EAAE;QACX,OAAO,IAAI,CAAC;KACb;IACD,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE;QAC5D,OAAO,GAAG,EAAE,CAAC,MAAM,CAAC;KACrB;SAAM,IAAI,UAAU,CAAC,MAAM,CAAC,EAAE;QAC7B,OAAO,MAA2B,CAAC;KACpC;IACD,OAAO,CAAC,KAAU,EAAE,EAAE,CAAC,KAAK,CAAE,MAAsB,CAAC,KAAK,CAAC,CAAC;AAC9D,CAAC,CAAC","file":"field.js","sourcesContent":["import get from './get';\nimport isArray from './isArray';\nimport isFunction from './isFunction';\n\n/** 获取字段值的函数 */\nexport type FieldGetterFunction = (val: any) => any;\n\n/** 根据字段路径,返回获取相应路径属性的函数 */\nexport type Getter = (path: string[]) => FieldGetterFunction;\n\nexport type FieldOption = { field: string };\nexport type TagItemAttribute<T> = T | ((d?: any) => T);\n\n/** field函数对应的参数 */\nexport interface FieldGetterGeneratorOptions {\n get?: Getter;\n}\n\nexport const getter = (path: string[]): any => {\n return (obj: any) => get(obj, path);\n};\n\nconst fieldSingle = (fieldStr: string | FieldGetterFunction, opt: FieldGetterGeneratorOptions = {}) => {\n if (isFunction(fieldStr)) {\n return fieldStr;\n }\n\n const path = [fieldStr];\n\n return ((opt && opt.get) || getter)(path);\n};\n\nexport const field = (\n fieldStr: string | string[] | FieldGetterFunction | FieldGetterFunction[],\n opt: FieldGetterGeneratorOptions = {}\n) => {\n if (isArray(fieldStr)) {\n const funcs = fieldStr.map(entry => fieldSingle(entry, opt));\n\n return (datum: any) => {\n return funcs.map(func => func(datum));\n };\n }\n\n return fieldSingle(fieldStr, opt);\n};\n\n/**\n * 取数逻辑\n */\nexport const simpleField = <T>(option: FieldOption | TagItemAttribute<T>) => {\n if (!option) {\n return null;\n }\n if (typeof option === 'string' || typeof option === 'number') {\n return () => option;\n } else if (isFunction(option)) {\n return option as (datum: any) => T;\n }\n return (datum: any) => datum[(option as FieldOption).field];\n};\n"]}
|
package/es/common/has.d.ts
CHANGED
|
@@ -1,3 +1,20 @@
|
|
|
1
1
|
import type { Dict } from './../type';
|
|
2
|
+
/**
|
|
3
|
+
* Checks if `key` is a direct property of `object`.
|
|
4
|
+
*
|
|
5
|
+
* @param {Object} object The object to query.
|
|
6
|
+
* @param {string} key The key to check.
|
|
7
|
+
* @returns {boolean} Returns `true` if `key` exists, else `false`.
|
|
8
|
+
* @example
|
|
9
|
+
*
|
|
10
|
+
* const object = { 'a': { 'b': 2 } }
|
|
11
|
+
* const other = create({ 'a': create({ 'b': 2 }) })
|
|
12
|
+
*
|
|
13
|
+
* has(object, 'a')
|
|
14
|
+
* // => true
|
|
15
|
+
*
|
|
16
|
+
* has(other, 'a')
|
|
17
|
+
* // => false
|
|
18
|
+
*/
|
|
2
19
|
declare const has: (object: Dict<any>, key: any) => boolean;
|
|
3
20
|
export default has;
|
package/es/common/has.js
CHANGED
|
@@ -1,4 +1,21 @@
|
|
|
1
|
+
/** Used to check objects for own properties. */
|
|
1
2
|
const hasOwnProperty = Object.prototype.hasOwnProperty, has = (object, key) => null != object && hasOwnProperty.call(object, key);
|
|
2
3
|
|
|
3
|
-
|
|
4
|
+
/**
|
|
5
|
+
* Checks if `key` is a direct property of `object`.
|
|
6
|
+
*
|
|
7
|
+
* @param {Object} object The object to query.
|
|
8
|
+
* @param {string} key The key to check.
|
|
9
|
+
* @returns {boolean} Returns `true` if `key` exists, else `false`.
|
|
10
|
+
* @example
|
|
11
|
+
*
|
|
12
|
+
* const object = { 'a': { 'b': 2 } }
|
|
13
|
+
* const other = create({ 'a': create({ 'b': 2 }) })
|
|
14
|
+
*
|
|
15
|
+
* has(object, 'a')
|
|
16
|
+
* // => true
|
|
17
|
+
*
|
|
18
|
+
* has(other, 'a')
|
|
19
|
+
* // => false
|
|
20
|
+
*/ export default has;
|
|
4
21
|
//# sourceMappingURL=has.js.map
|
package/es/common/has.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/common/has.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../src/common/has.ts"],"names":[],"mappings":"AAEA,gDAAgD;AAChD,MAAM,cAAc,GAAG,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC;AAEvD;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,GAAG,GAAG,CAAC,MAAiB,EAAE,GAAQ,EAAW,EAAE;IACnD,OAAO,MAAM,IAAI,IAAI,IAAI,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAC5D,CAAC,CAAC;AAEF,eAAe,GAAG,CAAC","file":"has.js","sourcesContent":["import type { Dict } from './../type';\n\n/** Used to check objects for own properties. */\nconst hasOwnProperty = Object.prototype.hasOwnProperty;\n\n/**\n * Checks if `key` is a direct property of `object`.\n *\n * @param {Object} object The object to query.\n * @param {string} key The key to check.\n * @returns {boolean} Returns `true` if `key` exists, else `false`.\n * @example\n *\n * const object = { 'a': { 'b': 2 } }\n * const other = create({ 'a': create({ 'b': 2 }) })\n *\n * has(object, 'a')\n * // => true\n *\n * has(other, 'a')\n * // => false\n */\nconst has = (object: Dict<any>, key: any): boolean => {\n return object != null && hasOwnProperty.call(object, key);\n};\n\nexport default has;\n"]}
|
package/es/common/index.d.ts
CHANGED
|
@@ -33,6 +33,7 @@ export * from './array';
|
|
|
33
33
|
export { range } from './range';
|
|
34
34
|
export { ascending } from './ascending';
|
|
35
35
|
export * from './quantileSorted';
|
|
36
|
+
export { normalQuantile } from './normalQuantile';
|
|
36
37
|
export { bisect, findZeroOfFunction, binaryFuzzySearch, binaryFuzzySearchInNumberRange } from './bisect';
|
|
37
38
|
export { deviation } from './deviation';
|
|
38
39
|
export { median } from './median';
|
|
@@ -67,3 +68,7 @@ export * from './regression-lowess';
|
|
|
67
68
|
export * from './regression-polynomial';
|
|
68
69
|
export * from './kde';
|
|
69
70
|
export * from './ecdf';
|
|
71
|
+
export * from './correlation';
|
|
72
|
+
export * from './mean';
|
|
73
|
+
export * from './bootstrap';
|
|
74
|
+
export * from './regression-bootstrap';
|
package/es/common/index.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
// type check
|
|
1
2
|
export { default as isBoolean } from "./isBoolean";
|
|
2
3
|
|
|
3
4
|
export { default as isFunction } from "./isFunction";
|
|
@@ -40,6 +41,7 @@ export { default as isBase64 } from "./isBase64";
|
|
|
40
41
|
|
|
41
42
|
export { default as isEmpty } from "./isEmpty";
|
|
42
43
|
|
|
44
|
+
// object
|
|
43
45
|
export { default as get } from "./get";
|
|
44
46
|
|
|
45
47
|
export { default as has } from "./has";
|
|
@@ -60,6 +62,7 @@ export { isShallowEqual } from "./isShallowEqual";
|
|
|
60
62
|
|
|
61
63
|
export * from "./mixin";
|
|
62
64
|
|
|
65
|
+
// array
|
|
63
66
|
export * from "./array";
|
|
64
67
|
|
|
65
68
|
export { range } from "./range";
|
|
@@ -68,6 +71,8 @@ export { ascending } from "./ascending";
|
|
|
68
71
|
|
|
69
72
|
export * from "./quantileSorted";
|
|
70
73
|
|
|
74
|
+
export { normalQuantile } from "./normalQuantile";
|
|
75
|
+
|
|
71
76
|
export { bisect, findZeroOfFunction, binaryFuzzySearch, binaryFuzzySearchInNumberRange } from "./bisect";
|
|
72
77
|
|
|
73
78
|
export { deviation } from "./deviation";
|
|
@@ -76,42 +81,53 @@ export { median } from "./median";
|
|
|
76
81
|
|
|
77
82
|
export { variance } from "./variance";
|
|
78
83
|
|
|
84
|
+
// tick
|
|
79
85
|
export { tickStep } from "./tickStep";
|
|
80
86
|
|
|
87
|
+
// number
|
|
81
88
|
export * from "./number";
|
|
82
89
|
|
|
90
|
+
// function
|
|
83
91
|
export { default as constant } from "./constant";
|
|
84
92
|
|
|
85
93
|
export { memoize } from "./memoize";
|
|
86
94
|
|
|
95
|
+
// pad
|
|
87
96
|
export { default as pad } from "./pad";
|
|
88
97
|
|
|
89
98
|
export { default as truncate } from "./truncate";
|
|
90
99
|
|
|
100
|
+
// uuid
|
|
91
101
|
export { default as uuid } from "./uuid";
|
|
92
102
|
|
|
103
|
+
// clamp
|
|
93
104
|
export { default as clamp } from "./clamp";
|
|
94
105
|
|
|
95
106
|
export { default as clampRange } from "./clampRange";
|
|
96
107
|
|
|
97
108
|
export { clamper } from "./clamper";
|
|
98
109
|
|
|
110
|
+
// debounce & throttle
|
|
99
111
|
export { default as debounce } from "./debounce";
|
|
100
112
|
|
|
101
113
|
export { default as throttle } from "./throttle";
|
|
102
114
|
|
|
115
|
+
// interpolate
|
|
103
116
|
export * from "./interpolate";
|
|
104
117
|
|
|
118
|
+
// type convert
|
|
105
119
|
export { toDate } from "./toDate";
|
|
106
120
|
|
|
107
121
|
export { toNumber } from "./toNumber";
|
|
108
122
|
|
|
109
123
|
export { toValidNumber } from "./toValidNumber";
|
|
110
124
|
|
|
125
|
+
// string
|
|
111
126
|
export { default as lowerFirst } from "./lowerFirst";
|
|
112
127
|
|
|
113
128
|
export { default as upperFirst } from "./upperFirst";
|
|
114
129
|
|
|
130
|
+
// string format
|
|
115
131
|
export { default as substitute } from "./substitute";
|
|
116
132
|
|
|
117
133
|
export * from "./random";
|
|
@@ -135,4 +151,12 @@ export * from "./regression-polynomial";
|
|
|
135
151
|
export * from "./kde";
|
|
136
152
|
|
|
137
153
|
export * from "./ecdf";
|
|
154
|
+
|
|
155
|
+
export * from "./correlation";
|
|
156
|
+
|
|
157
|
+
export * from "./mean";
|
|
158
|
+
|
|
159
|
+
export * from "./bootstrap";
|
|
160
|
+
|
|
161
|
+
export * from "./regression-bootstrap";
|
|
138
162
|
//# sourceMappingURL=index.js.map
|
package/es/common/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/common/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../src/common/index.ts"],"names":[],"mappings":"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","file":"index.js","sourcesContent":["// type check\nexport { default as isBoolean } from './isBoolean';\nexport { default as isFunction } from './isFunction';\nexport { default as isNil } from './isNil';\nexport { default as isNull } from './isNull';\nexport { default as isValid } from './isValid';\nexport { default as isObject } from './isObject';\nexport { default as isObjectLike } from './isObjectLike';\nexport { default as isPlainObject } from './isPlainObject';\nexport { default as isType } from './isType';\nexport { default as isUndefined } from './isUndefined';\nexport { default as isString } from './isString';\nexport { default as isArray } from './isArray';\nexport { default as isArrayLike } from './isArrayLike';\nexport { default as isDate } from './isDate';\nexport { default as isNumber } from './isNumber';\nexport { default as isNumeric } from './isNumeric';\nexport { default as isValidNumber } from './isValidNumber';\nexport { default as isValidUrl } from './isValidUrl';\nexport { default as isRegExp } from './isRegExp';\nexport { default as isBase64 } from './isBase64';\n\nexport { default as isEmpty } from './isEmpty';\n\n// object\nexport { default as get } from './get';\nexport { default as has } from './has';\nexport { default as clone } from './clone';\nexport { default as cloneDeep } from './cloneDeep';\nexport { default as merge, baseMerge } from './merge';\nexport { default as pick } from './pick';\nexport { default as pickWithout } from './pickWithout';\nexport { isEqual } from './isEqual';\nexport { isShallowEqual } from './isShallowEqual';\nexport * from './mixin';\n\n// array\nexport * from './array';\nexport { range } from './range';\nexport { ascending } from './ascending';\nexport * from './quantileSorted';\nexport { normalQuantile } from './normalQuantile';\nexport { bisect, findZeroOfFunction, binaryFuzzySearch, binaryFuzzySearchInNumberRange } from './bisect';\nexport { deviation } from './deviation';\nexport { median } from './median';\nexport { variance } from './variance';\n\n// tick\nexport { tickStep } from './tickStep';\n\n// number\nexport * from './number';\n\n// function\nexport { default as constant } from './constant';\nexport { memoize } from './memoize';\n\n// pad\nexport { default as pad } from './pad';\nexport { default as truncate } from './truncate';\n\n// uuid\nexport { default as uuid } from './uuid';\n\n// clamp\nexport { default as clamp } from './clamp';\nexport { default as clampRange } from './clampRange';\nexport { clamper } from './clamper';\n\n// debounce & throttle\nexport { default as debounce } from './debounce';\nexport { default as throttle } from './throttle';\n\n// interpolate\nexport * from './interpolate';\n\n// type convert\nexport { toDate } from './toDate';\nexport { toNumber } from './toNumber';\nexport { toValidNumber } from './toValidNumber';\n\n// string\nexport { default as lowerFirst } from './lowerFirst';\nexport { default as upperFirst } from './upperFirst';\n\n// string format\nexport { default as substitute } from './substitute';\n\nexport * from './random';\nexport * from './field';\nexport * from './toPercent';\nexport * from './zero';\nexport * from './extent';\nexport * from './regression-linear';\nexport * from './regression-logistic';\nexport * from './regression-lowess';\nexport * from './regression-polynomial';\nexport * from './kde';\nexport * from './ecdf';\n\nexport * from './correlation';\nexport * from './mean';\nexport * from './bootstrap';\nexport * from './regression-bootstrap';\n"]}
|
package/es/common/interpolate.js
CHANGED
|
@@ -29,13 +29,26 @@ function one(b) {
|
|
|
29
29
|
|
|
30
30
|
export function interpolateString(a, b) {
|
|
31
31
|
let am, bm, bs, bi = reA.lastIndex = reB.lastIndex = 0, i = -1;
|
|
32
|
+
// scan index for next number in b
|
|
33
|
+
// index in s
|
|
32
34
|
const s = [], q = [];
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
35
|
+
// string constants and placeholders
|
|
36
|
+
// Interpolate pairs of numbers in a & b.
|
|
37
|
+
for (// number interpolators
|
|
38
|
+
// Coerce inputs to strings.
|
|
39
|
+
a += "", b += ""; (am = reA.exec(a)) && (bm = reB.exec(b)); ) (bs = bm.index) > bi && (
|
|
40
|
+
// a string precedes the next number in b
|
|
41
|
+
bs = b.slice(bi, bs), s[i] ? s[i] += bs : s[++i] = bs), (am = am[0]) === (bm = bm[0]) ?
|
|
42
|
+
// numbers in a & b match
|
|
43
|
+
s[i] ? s[i] += bm : s[++i] = bm : (
|
|
44
|
+
// interpolate non-matching numbers
|
|
45
|
+
s[++i] = null, q.push({
|
|
36
46
|
i: i,
|
|
37
47
|
x: interpolateNumber(am, bm)
|
|
38
48
|
})), bi = reB.lastIndex;
|
|
49
|
+
// Add remains of b.
|
|
50
|
+
// Special optimization for only a single match.
|
|
51
|
+
// Otherwise, interpolate each of the numbers and rejoin the string.
|
|
39
52
|
return bi < b.length && (bs = b.slice(bi), s[i] ? s[i] += bs : s[++i] = bs), s.length < 2 ? q[0] ? one(q[0].x) : zero(b) : (b = q.length,
|
|
40
53
|
function(t) {
|
|
41
54
|
for (let o, i = 0; i < b; ++i) s[(o = q[i]).i] = o.x(t);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/common/interpolate.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,iBAAiB,CAAC,CAAS,EAAE,CAAS;IACpD,OAAO,CAAC,CAAS,EAAE,EAAE;QACnB,OAAO,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC7B,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,CAAS,EAAE,CAAS;IACzD,OAAO,UAAU,CAAC;QAChB,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;IACzC,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,CAAO,EAAE,CAAO;IAC9C,MAAM,IAAI,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC;IACzB,MAAM,IAAI,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC;IAEzB,MAAM,CAAC,GAAG,IAAI,IAAI,EAAE,CAAC;IACrB,OAAO,CAAC,CAAS,EAAE,EAAE;QACnB,CAAC,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC;QACrC,OAAO,CAAC,CAAC;IACX,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,GAAG,GAAG,6CAA6C,CAAC;AAC1D,MAAM,GAAG,GAAG,IAAI,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;AAExC,SAAS,IAAI,CAAC,CAAM;IAClB,OAAO;QACL,OAAO,CAAC,CAAC;IACX,CAAC,CAAC;AACJ,CAAC;AAED,SAAS,GAAG,CAAC,CAAM;IACjB,OAAO,UAAU,CAAM;QACrB,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;IACnB,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,CAAM,EAAE,CAAM;IAC9C,IAAI,EAAE,GAAG,CAAC,GAAG,CAAC,SAAS,GAAG,GAAG,CAAC,SAAS,GAAG,CAAC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"sources":["../src/common/interpolate.ts"],"names":[],"mappings":"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","file":"interpolate.js","sourcesContent":["export function interpolateNumber(a: number, b: number): (x: number) => number {\n return (t: number) => {\n return a * (1 - t) + b * t;\n };\n}\n\nexport function interpolateNumberRound(a: number, b: number): (x: number) => number {\n return function (t) {\n return Math.round(a * (1 - t) + b * t);\n };\n}\n\nexport function interpolateDate(a: Date, b: Date) {\n const aVal = a.valueOf();\n const bVal = b.valueOf();\n\n const d = new Date();\n return (t: number) => {\n d.setTime(aVal * (1 - t) + bVal * t);\n return d;\n };\n}\n\nconst reA = /[-+]?(?:\\d+\\.?\\d*|\\.?\\d+)(?:[eE][-+]?\\d+)?/g;\nconst reB = new RegExp(reA.source, 'g');\n\nfunction zero(b: any) {\n return function () {\n return b;\n };\n}\n\nfunction one(b: any) {\n return function (t: any) {\n return b(t) + '';\n };\n}\n\nexport function interpolateString(a: any, b: any) {\n let bi = (reA.lastIndex = reB.lastIndex = 0); // scan index for next number in b\n let am: any; // current match in a\n let bm: any; // current match in b\n let bs; // string preceding current number in b, if any\n let i = -1; // index in s\n const s: any[] = []; // string constants and placeholders\n const q: any[] = []; // number interpolators\n\n // Coerce inputs to strings.\n (a = a + ''), (b = b + '');\n\n // Interpolate pairs of numbers in a & b.\n while ((am = reA.exec(a)) && (bm = reB.exec(b))) {\n if ((bs = bm.index) > bi) {\n // a string precedes the next number in b\n bs = b.slice(bi, bs);\n if (s[i]) {\n s[i] += bs;\n } // coalesce with previous string\n else {\n s[++i] = bs;\n }\n }\n if ((am = am[0]) === (bm = bm[0])) {\n // numbers in a & b match\n if (s[i]) {\n s[i] += bm;\n } // coalesce with previous string\n else {\n s[++i] = bm;\n }\n } else {\n // interpolate non-matching numbers\n s[++i] = null;\n q.push({ i: i, x: interpolateNumber(am, bm) });\n }\n bi = reB.lastIndex;\n }\n\n // Add remains of b.\n if (bi < b.length) {\n bs = b.slice(bi);\n if (s[i]) {\n s[i] += bs;\n } // coalesce with previous string\n else {\n s[++i] = bs;\n }\n }\n\n // Special optimization for only a single match.\n // Otherwise, interpolate each of the numbers and rejoin the string.\n return s.length < 2\n ? q[0]\n ? one(q[0].x)\n : zero(b)\n : ((b = q.length),\n function (t: any) {\n for (let i = 0, o; i < b; ++i) {\n s[(o = q[i]).i] = o.x(t);\n }\n return s.join('');\n });\n}\n"]}
|
package/es/common/isBase64.d.ts
CHANGED
|
@@ -1,2 +1,8 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 迁移至 sirius
|
|
3
|
+
* Checks if `value` is classified as a `Base64` string;
|
|
4
|
+
* @param {string} The value to check.
|
|
5
|
+
* @returns {boolean} Returns `true` if `value` is a boolean, else `false`.
|
|
6
|
+
*/
|
|
1
7
|
declare const isBase64: (value: string) => boolean;
|
|
2
8
|
export default isBase64;
|
package/es/common/isBase64.js
CHANGED
|
@@ -1,3 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 迁移至 sirius
|
|
3
|
+
* Checks if `value` is classified as a `Base64` string;
|
|
4
|
+
* @param {string} The value to check.
|
|
5
|
+
* @returns {boolean} Returns `true` if `value` is a boolean, else `false`.
|
|
6
|
+
*/
|
|
1
7
|
const isBase64 = value => new RegExp(/^data:image\/(?:gif|png|jpeg|bmp|webp|svg\+xml)(?:;charset=utf-8)?;base64,(?:[A-Za-z0-9]|[+/])+={0,2}/g).test(value);
|
|
2
8
|
|
|
3
9
|
export default isBase64;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/common/isBase64.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"sources":["../src/common/isBase64.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,QAAQ,GAAG,CAAC,KAAa,EAAW,EAAE;IAC1C,MAAM,GAAG,GAAG,wGAAwG,CAAC;IACrH,MAAM,UAAU,GAAG,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC;IACnC,OAAO,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAChC,CAAC,CAAC;AAEF,eAAe,QAAQ,CAAC","file":"isBase64.js","sourcesContent":["/**\n * 迁移至 sirius\n * Checks if `value` is classified as a `Base64` string;\n * @param {string} The value to check.\n * @returns {boolean} Returns `true` if `value` is a boolean, else `false`.\n */\nconst isBase64 = (value: string): boolean => {\n const exp = /^data:image\\/(?:gif|png|jpeg|bmp|webp|svg\\+xml)(?:;charset=utf-8)?;base64,(?:[A-Za-z0-9]|[+/])+={0,2}/g;\n const urlPattern = new RegExp(exp);\n return urlPattern.test(value);\n};\n\nexport default isBase64;\n"]}
|
package/es/common/isBoolean.d.ts
CHANGED
|
@@ -1,2 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Checks if `value` is classified as a boolean primitive or object.
|
|
3
|
+
* @param {*} value The value to check.
|
|
4
|
+
* @param {boolean} fuzzy Whether to perform fuzzy judgment, for better performance,default to `false`.
|
|
5
|
+
* @returns {boolean} Returns `true` if `value` is a boolean, else `false`.
|
|
6
|
+
* @example
|
|
7
|
+
*
|
|
8
|
+
* isBoolean(false)
|
|
9
|
+
* // => true
|
|
10
|
+
*
|
|
11
|
+
* isBoolean(null)
|
|
12
|
+
* // => false
|
|
13
|
+
*/
|
|
1
14
|
declare const isBoolean: (value: any, fuzzy?: boolean) => value is boolean;
|
|
2
15
|
export default isBoolean;
|
package/es/common/isBoolean.js
CHANGED
|
@@ -1,6 +1,18 @@
|
|
|
1
1
|
import isType from "./isType";
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
/**
|
|
4
|
+
* Checks if `value` is classified as a boolean primitive or object.
|
|
5
|
+
* @param {*} value The value to check.
|
|
6
|
+
* @param {boolean} fuzzy Whether to perform fuzzy judgment, for better performance,default to `false`.
|
|
7
|
+
* @returns {boolean} Returns `true` if `value` is a boolean, else `false`.
|
|
8
|
+
* @example
|
|
9
|
+
*
|
|
10
|
+
* isBoolean(false)
|
|
11
|
+
* // => true
|
|
12
|
+
*
|
|
13
|
+
* isBoolean(null)
|
|
14
|
+
* // => false
|
|
15
|
+
*/ const isBoolean = (value, fuzzy = !1) => fuzzy ? "boolean" == typeof value : !0 === value || !1 === value || isType(value, "Boolean");
|
|
4
16
|
|
|
5
17
|
export default isBoolean;
|
|
6
18
|
//# sourceMappingURL=isBoolean.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/common/isBoolean.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"sources":["../src/common/isBoolean.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,UAAU,CAAC;AAE9B;;;;;;;;;;;;GAYG;AACH,MAAM,SAAS,GAAG,CAAC,KAAU,EAAE,QAAiB,KAAK,EAAoB,EAAE;IACzE,IAAI,KAAK,EAAE;QACT,OAAO,OAAO,KAAK,KAAK,SAAS,CAAC;KACnC;IACD,OAAO,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,KAAK,IAAI,MAAM,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;AACvE,CAAC,CAAC;AAEF,eAAe,SAAS,CAAC","file":"isBoolean.js","sourcesContent":["import isType from './isType';\n\n/**\n * Checks if `value` is classified as a boolean primitive or object.\n * @param {*} value The value to check.\n * @param {boolean} fuzzy Whether to perform fuzzy judgment, for better performance,default to `false`.\n * @returns {boolean} Returns `true` if `value` is a boolean, else `false`.\n * @example\n *\n * isBoolean(false)\n * // => true\n *\n * isBoolean(null)\n * // => false\n */\nconst isBoolean = (value: any, fuzzy: boolean = false): value is boolean => {\n if (fuzzy) {\n return typeof value === 'boolean';\n }\n return value === true || value === false || isType(value, 'Boolean');\n};\n\nexport default isBoolean;\n"]}
|
package/es/common/isEmpty.js
CHANGED
|
@@ -9,9 +9,19 @@ import isPrototype from "./isPrototype";
|
|
|
9
9
|
const hasOwnProperty = Object.prototype.hasOwnProperty;
|
|
10
10
|
|
|
11
11
|
function isEmpty(value) {
|
|
12
|
+
/**
|
|
13
|
+
* isEmpty(null) => true
|
|
14
|
+
* isEmpty() => true
|
|
15
|
+
* isEmpty(true) => true
|
|
16
|
+
* isEmpty(1) => true
|
|
17
|
+
* isEmpty([1, 2, 3]) => false
|
|
18
|
+
* isEmpty('abc') => false
|
|
19
|
+
* isEmpty({ a: 1 }) => false
|
|
20
|
+
*/
|
|
12
21
|
if (isNil(value)) return !0;
|
|
13
22
|
if (isArrayLike(value)) return !value.length;
|
|
14
|
-
|
|
23
|
+
// TODO: 这里需要优化下
|
|
24
|
+
const type = getType(value);
|
|
15
25
|
if ("Map" === type || "Set" === type) return !value.size;
|
|
16
26
|
if (isPrototype(value)) return !Object.keys(value).length;
|
|
17
27
|
for (const key in value) if (hasOwnProperty.call(value, key)) return !1;
|
package/es/common/isEmpty.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/common/isEmpty.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,SAAS,CAAC;AAC5B,OAAO,WAAW,MAAM,eAAe,CAAC;AACxC,OAAO,OAAO,MAAM,WAAW,CAAC;AAChC,OAAO,WAAW,MAAM,eAAe,CAAC;AAExC,MAAM,cAAc,GAAG,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC;AAEvD,SAAS,OAAO,CAAC,KAAU;
|
|
1
|
+
{"version":3,"sources":["../src/common/isEmpty.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,SAAS,CAAC;AAC5B,OAAO,WAAW,MAAM,eAAe,CAAC;AACxC,OAAO,OAAO,MAAM,WAAW,CAAC;AAChC,OAAO,WAAW,MAAM,eAAe,CAAC;AAExC,MAAM,cAAc,GAAG,MAAM,CAAC,SAAS,CAAC,cAAc,CAAC;AAEvD,SAAS,OAAO,CAAC,KAAU;IACzB;;;;;;;;OAQG;IACH,IAAI,KAAK,CAAC,KAAK,CAAC,EAAE;QAChB,OAAO,IAAI,CAAC;KACb;IACD,IAAI,WAAW,CAAC,KAAK,CAAC,EAAE;QACtB,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC;KACtB;IACD,gBAAgB;IAChB,MAAM,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;IAC5B,IAAI,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,KAAK,EAAE;QACpC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC;KACpB;IACD,IAAI,WAAW,CAAC,KAAK,CAAC,EAAE;QACtB,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC;KACnC;IACD,KAAK,MAAM,GAAG,IAAI,KAAK,EAAE;QACvB,IAAI,cAAc,CAAC,IAAI,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE;YACnC,OAAO,KAAK,CAAC;SACd;KACF;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,eAAe,OAAO,CAAC","file":"isEmpty.js","sourcesContent":["import isNil from './isNil';\nimport isArrayLike from './isArrayLike';\nimport getType from './getType';\nimport isPrototype from './isPrototype';\n\nconst hasOwnProperty = Object.prototype.hasOwnProperty;\n\nfunction isEmpty(value: any): boolean {\n /**\n * isEmpty(null) => true\n * isEmpty() => true\n * isEmpty(true) => true\n * isEmpty(1) => true\n * isEmpty([1, 2, 3]) => false\n * isEmpty('abc') => false\n * isEmpty({ a: 1 }) => false\n */\n if (isNil(value)) {\n return true;\n }\n if (isArrayLike(value)) {\n return !value.length;\n }\n // TODO: 这里需要优化下\n const type = getType(value);\n if (type === 'Map' || type === 'Set') {\n return !value.size;\n }\n if (isPrototype(value)) {\n return !Object.keys(value).length;\n }\n for (const key in value) {\n if (hasOwnProperty.call(value, key)) {\n return false;\n }\n }\n return true;\n}\n\nexport default isEmpty;\n"]}
|