@visactor/vrender-components 0.0.38-brush.2-alpha.0
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.md +9 -0
- package/cjs/axis/animate/group-fade.d.ts +17 -0
- package/cjs/axis/animate/group-fade.js +72 -0
- package/cjs/axis/animate/group-fade.js.map +1 -0
- package/cjs/axis/animate/group-transition.d.ts +10 -0
- package/cjs/axis/animate/group-transition.js +76 -0
- package/cjs/axis/animate/group-transition.js.map +1 -0
- package/cjs/axis/animate/index.d.ts +2 -0
- package/cjs/axis/animate/index.js +21 -0
- package/cjs/axis/animate/index.js.map +1 -0
- package/cjs/axis/base.d.ts +53 -0
- package/cjs/axis/base.js +305 -0
- package/cjs/axis/base.js.map +1 -0
- package/cjs/axis/circle.d.ts +88 -0
- package/cjs/axis/circle.js +182 -0
- package/cjs/axis/circle.js.map +1 -0
- package/cjs/axis/config.d.ts +71 -0
- package/cjs/axis/config.js +76 -0
- package/cjs/axis/config.js.map +1 -0
- package/cjs/axis/constant.d.ts +27 -0
- package/cjs/axis/constant.js +26 -0
- package/cjs/axis/constant.js.map +1 -0
- package/cjs/axis/grid.d.ts +9 -0
- package/cjs/axis/grid.js +106 -0
- package/cjs/axis/grid.js.map +1 -0
- package/cjs/axis/index.d.ts +6 -0
- package/cjs/axis/index.js +23 -0
- package/cjs/axis/index.js.map +1 -0
- package/cjs/axis/line.d.ts +89 -0
- package/cjs/axis/line.js +199 -0
- package/cjs/axis/line.js.map +1 -0
- package/cjs/axis/type.d.ts +177 -0
- package/cjs/axis/type.js +6 -0
- package/cjs/axis/type.js.map +1 -0
- package/cjs/brush/brush.d.ts +65 -0
- package/cjs/brush/brush.js +169 -0
- package/cjs/brush/brush.js.map +1 -0
- package/cjs/brush/config.d.ts +21 -0
- package/cjs/brush/config.js +26 -0
- package/cjs/brush/config.js.map +1 -0
- package/cjs/brush/index.d.ts +2 -0
- package/cjs/brush/index.js +21 -0
- package/cjs/brush/index.js.map +1 -0
- package/cjs/brush/type.d.ts +21 -0
- package/cjs/brush/type.js +6 -0
- package/cjs/brush/type.js.map +1 -0
- package/cjs/constant.d.ts +16 -0
- package/cjs/constant.js +18 -0
- package/cjs/constant.js.map +1 -0
- package/cjs/core/base.d.ts +12 -0
- package/cjs/core/base.js +44 -0
- package/cjs/core/base.js.map +1 -0
- package/cjs/core/type.d.ts +28 -0
- package/cjs/core/type.js +5 -0
- package/cjs/core/type.js.map +1 -0
- package/cjs/crosshair/base.d.ts +10 -0
- package/cjs/crosshair/base.js +19 -0
- package/cjs/crosshair/base.js.map +1 -0
- package/cjs/crosshair/circle.d.ts +17 -0
- package/cjs/crosshair/circle.js +33 -0
- package/cjs/crosshair/circle.js.map +1 -0
- package/cjs/crosshair/index.d.ts +6 -0
- package/cjs/crosshair/index.js +23 -0
- package/cjs/crosshair/index.js.map +1 -0
- package/cjs/crosshair/line.d.ts +17 -0
- package/cjs/crosshair/line.js +36 -0
- package/cjs/crosshair/line.js.map +1 -0
- package/cjs/crosshair/polygon.d.ts +17 -0
- package/cjs/crosshair/polygon.js +39 -0
- package/cjs/crosshair/polygon.js.map +1 -0
- package/cjs/crosshair/rect.d.ts +20 -0
- package/cjs/crosshair/rect.js +37 -0
- package/cjs/crosshair/rect.js.map +1 -0
- package/cjs/crosshair/sector.d.ts +15 -0
- package/cjs/crosshair/sector.js +38 -0
- package/cjs/crosshair/sector.js.map +1 -0
- package/cjs/crosshair/type.d.ts +37 -0
- package/cjs/crosshair/type.js +6 -0
- package/cjs/crosshair/type.js.map +1 -0
- package/cjs/data-zoom/config.d.ts +104 -0
- package/cjs/data-zoom/config.js +109 -0
- package/cjs/data-zoom/config.js.map +1 -0
- package/cjs/data-zoom/data-zoom.d.ts +193 -0
- package/cjs/data-zoom/data-zoom.js +447 -0
- package/cjs/data-zoom/data-zoom.js.map +1 -0
- package/cjs/data-zoom/index.d.ts +2 -0
- package/cjs/data-zoom/index.js +21 -0
- package/cjs/data-zoom/index.js.map +1 -0
- package/cjs/data-zoom/type.d.ts +59 -0
- package/cjs/data-zoom/type.js +6 -0
- package/cjs/data-zoom/type.js.map +1 -0
- package/cjs/index.d.ts +20 -0
- package/cjs/index.js +30 -0
- package/cjs/index.js.map +1 -0
- package/cjs/indicator/config.d.ts +2 -0
- package/cjs/indicator/config.js +31 -0
- package/cjs/indicator/config.js.map +1 -0
- package/cjs/indicator/index.d.ts +2 -0
- package/cjs/indicator/index.js +21 -0
- package/cjs/indicator/index.js.map +1 -0
- package/cjs/indicator/indicator.d.ts +9 -0
- package/cjs/indicator/indicator.js +73 -0
- package/cjs/indicator/indicator.js.map +1 -0
- package/cjs/indicator/type.d.ts +21 -0
- package/cjs/indicator/type.js +5 -0
- package/cjs/indicator/type.js.map +1 -0
- package/cjs/interface.d.ts +6 -0
- package/cjs/interface.js +6 -0
- package/cjs/interface.js.map +1 -0
- package/cjs/label/animate/animate.d.ts +7 -0
- package/cjs/label/animate/animate.js +53 -0
- package/cjs/label/animate/animate.js.map +1 -0
- package/cjs/label/animate/index.d.ts +1 -0
- package/cjs/label/animate/index.js +3 -0
- package/cjs/label/animate/index.js.map +1 -0
- package/cjs/label/base.d.ts +43 -0
- package/cjs/label/base.js +263 -0
- package/cjs/label/base.js.map +1 -0
- package/cjs/label/dataLabel.d.ts +13 -0
- package/cjs/label/dataLabel.js +56 -0
- package/cjs/label/dataLabel.js.map +1 -0
- package/cjs/label/index.d.ts +6 -0
- package/cjs/label/index.js +23 -0
- package/cjs/label/index.js.map +1 -0
- package/cjs/label/line.d.ts +15 -0
- package/cjs/label/line.js +47 -0
- package/cjs/label/line.js.map +1 -0
- package/cjs/label/overlap/bitmap.d.ts +13 -0
- package/cjs/label/overlap/bitmap.js +73 -0
- package/cjs/label/overlap/bitmap.js.map +1 -0
- package/cjs/label/overlap/index.d.ts +3 -0
- package/cjs/label/overlap/index.js +22 -0
- package/cjs/label/overlap/index.js.map +1 -0
- package/cjs/label/overlap/place.d.ts +14 -0
- package/cjs/label/overlap/place.js +61 -0
- package/cjs/label/overlap/place.js.map +1 -0
- package/cjs/label/overlap/scaler.d.ts +27 -0
- package/cjs/label/overlap/scaler.js +26 -0
- package/cjs/label/overlap/scaler.js.map +1 -0
- package/cjs/label/rect.d.ts +10 -0
- package/cjs/label/rect.js +59 -0
- package/cjs/label/rect.js.map +1 -0
- package/cjs/label/symbol.d.ts +10 -0
- package/cjs/label/symbol.js +69 -0
- package/cjs/label/symbol.js.map +1 -0
- package/cjs/label/type.d.ts +90 -0
- package/cjs/label/type.js +6 -0
- package/cjs/label/type.js.map +1 -0
- package/cjs/legend/base.d.ts +14 -0
- package/cjs/legend/base.js +58 -0
- package/cjs/legend/base.js.map +1 -0
- package/cjs/legend/color/color.d.ts +37 -0
- package/cjs/legend/color/color.js +128 -0
- package/cjs/legend/color/color.js.map +1 -0
- package/cjs/legend/color/index.d.ts +2 -0
- package/cjs/legend/color/index.js +21 -0
- package/cjs/legend/color/index.js.map +1 -0
- package/cjs/legend/color/type.d.ts +5 -0
- package/cjs/legend/color/type.js +6 -0
- package/cjs/legend/color/type.js.map +1 -0
- package/cjs/legend/constant.d.ts +29 -0
- package/cjs/legend/constant.js +24 -0
- package/cjs/legend/constant.js.map +1 -0
- package/cjs/legend/discrete/discrete.d.ts +26 -0
- package/cjs/legend/discrete/discrete.js +413 -0
- package/cjs/legend/discrete/discrete.js.map +1 -0
- package/cjs/legend/discrete/index.d.ts +2 -0
- package/cjs/legend/discrete/index.js +21 -0
- package/cjs/legend/discrete/index.js.map +1 -0
- package/cjs/legend/discrete/type.d.ts +65 -0
- package/cjs/legend/discrete/type.js +6 -0
- package/cjs/legend/discrete/type.js.map +1 -0
- package/cjs/legend/index.d.ts +8 -0
- package/cjs/legend/index.js +24 -0
- package/cjs/legend/index.js.map +1 -0
- package/cjs/legend/size/index.d.ts +1 -0
- package/cjs/legend/size/index.js +3 -0
- package/cjs/legend/size/index.js.map +1 -0
- package/cjs/legend/size/size.d.ts +34 -0
- package/cjs/legend/size/size.js +106 -0
- package/cjs/legend/size/size.js.map +1 -0
- package/cjs/legend/size/type.d.ts +6 -0
- package/cjs/legend/size/type.js +6 -0
- package/cjs/legend/size/type.js.map +1 -0
- package/cjs/legend/type.d.ts +27 -0
- package/cjs/legend/type.js +6 -0
- package/cjs/legend/type.js.map +1 -0
- package/cjs/link-path/index.d.ts +2 -0
- package/cjs/link-path/index.js +21 -0
- package/cjs/link-path/index.js.map +1 -0
- package/cjs/link-path/link-path.d.ts +15 -0
- package/cjs/link-path/link-path.js +65 -0
- package/cjs/link-path/link-path.js.map +1 -0
- package/cjs/link-path/type.d.ts +17 -0
- package/cjs/link-path/type.js +6 -0
- package/cjs/link-path/type.js.map +1 -0
- package/cjs/marker/area.d.ts +56 -0
- package/cjs/marker/area.js +64 -0
- package/cjs/marker/area.js.map +1 -0
- package/cjs/marker/base.d.ts +11 -0
- package/cjs/marker/base.js +22 -0
- package/cjs/marker/base.js.map +1 -0
- package/cjs/marker/config.d.ts +154 -0
- package/cjs/marker/config.js +240 -0
- package/cjs/marker/config.js.map +1 -0
- package/cjs/marker/index.d.ts +4 -0
- package/cjs/marker/index.js +22 -0
- package/cjs/marker/index.js.map +1 -0
- package/cjs/marker/line.d.ts +10 -0
- package/cjs/marker/line.js +45 -0
- package/cjs/marker/line.js.map +1 -0
- package/cjs/marker/point.d.ts +80 -0
- package/cjs/marker/point.js +102 -0
- package/cjs/marker/point.js.map +1 -0
- package/cjs/marker/type.d.ts +93 -0
- package/cjs/marker/type.js +26 -0
- package/cjs/marker/type.js.map +1 -0
- package/cjs/pager/index.d.ts +2 -0
- package/cjs/pager/index.js +21 -0
- package/cjs/pager/index.js.map +1 -0
- package/cjs/pager/pager.d.ts +20 -0
- package/cjs/pager/pager.js +132 -0
- package/cjs/pager/pager.js.map +1 -0
- package/cjs/pager/type.d.ts +19 -0
- package/cjs/pager/type.js +6 -0
- package/cjs/pager/type.js.map +1 -0
- package/cjs/player/base-player.d.ts +103 -0
- package/cjs/player/base-player.js +199 -0
- package/cjs/player/base-player.js.map +1 -0
- package/cjs/player/constant.d.ts +12 -0
- package/cjs/player/constant.js +16 -0
- package/cjs/player/constant.js.map +1 -0
- package/cjs/player/continuous-player.d.ts +34 -0
- package/cjs/player/continuous-player.js +107 -0
- package/cjs/player/continuous-player.js.map +1 -0
- package/cjs/player/controller/assets/index.d.ts +6 -0
- package/cjs/player/controller/assets/index.js +12 -0
- package/cjs/player/controller/assets/index.js.map +1 -0
- package/cjs/player/controller/constant.d.ts +12 -0
- package/cjs/player/controller/constant.js +15 -0
- package/cjs/player/controller/constant.js.map +1 -0
- package/cjs/player/controller/controller.d.ts +32 -0
- package/cjs/player/controller/controller.js +93 -0
- package/cjs/player/controller/controller.js.map +1 -0
- package/cjs/player/controller/icon/icon.d.ts +4 -0
- package/cjs/player/controller/icon/icon.js +16 -0
- package/cjs/player/controller/icon/icon.js.map +1 -0
- package/cjs/player/controller/icon/index.d.ts +1 -0
- package/cjs/player/controller/icon/index.js +21 -0
- package/cjs/player/controller/icon/index.js.map +1 -0
- package/cjs/player/controller/icon/type.d.ts +1 -0
- package/cjs/player/controller/icon/type.js +3 -0
- package/cjs/player/controller/icon/type.js.map +1 -0
- package/cjs/player/controller/index.d.ts +2 -0
- package/cjs/player/controller/index.js +21 -0
- package/cjs/player/controller/index.js.map +1 -0
- package/cjs/player/controller/type.d.ts +11 -0
- package/cjs/player/controller/type.js +6 -0
- package/cjs/player/controller/type.js.map +1 -0
- package/cjs/player/discrete-player.d.ts +32 -0
- package/cjs/player/discrete-player.js +85 -0
- package/cjs/player/discrete-player.js.map +1 -0
- package/cjs/player/index.d.ts +4 -0
- package/cjs/player/index.js +22 -0
- package/cjs/player/index.js.map +1 -0
- package/cjs/player/type/base.d.ts +7 -0
- package/cjs/player/type/base.js +6 -0
- package/cjs/player/type/base.js.map +1 -0
- package/cjs/player/type/continuous-player.d.ts +7 -0
- package/cjs/player/type/continuous-player.js +6 -0
- package/cjs/player/type/continuous-player.js.map +1 -0
- package/cjs/player/type/direction.d.ts +5 -0
- package/cjs/player/type/direction.js +10 -0
- package/cjs/player/type/direction.js.map +1 -0
- package/cjs/player/type/discrete-player.d.ts +9 -0
- package/cjs/player/type/discrete-player.js +6 -0
- package/cjs/player/type/discrete-player.js.map +1 -0
- package/cjs/player/type/event.d.ts +8 -0
- package/cjs/player/type/event.js +12 -0
- package/cjs/player/type/event.js.map +1 -0
- package/cjs/player/type/index.d.ts +9 -0
- package/cjs/player/type/index.js +23 -0
- package/cjs/player/type/index.js.map +1 -0
- package/cjs/player/type/layout.d.ts +35 -0
- package/cjs/player/type/layout.js +6 -0
- package/cjs/player/type/layout.js.map +1 -0
- package/cjs/player/utils.d.ts +20 -0
- package/cjs/player/utils.js +74 -0
- package/cjs/player/utils.js.map +1 -0
- package/cjs/scrollbar/index.d.ts +2 -0
- package/cjs/scrollbar/index.js +21 -0
- package/cjs/scrollbar/index.js.map +1 -0
- package/cjs/scrollbar/scrollbar.d.ts +43 -0
- package/cjs/scrollbar/scrollbar.js +161 -0
- package/cjs/scrollbar/scrollbar.js.map +1 -0
- package/cjs/scrollbar/type.d.ts +16 -0
- package/cjs/scrollbar/type.js +6 -0
- package/cjs/scrollbar/type.js.map +1 -0
- package/cjs/segment/index.d.ts +2 -0
- package/cjs/segment/index.js +21 -0
- package/cjs/segment/index.js.map +1 -0
- package/cjs/segment/segment.d.ts +18 -0
- package/cjs/segment/segment.js +105 -0
- package/cjs/segment/segment.js.map +1 -0
- package/cjs/segment/type.d.ts +22 -0
- package/cjs/segment/type.js +6 -0
- package/cjs/segment/type.js.map +1 -0
- package/cjs/slider/constant.d.ts +13 -0
- package/cjs/slider/constant.js +15 -0
- package/cjs/slider/constant.js.map +1 -0
- package/cjs/slider/index.d.ts +3 -0
- package/cjs/slider/index.js +22 -0
- package/cjs/slider/index.js.map +1 -0
- package/cjs/slider/slider.d.ts +96 -0
- package/cjs/slider/slider.js +405 -0
- package/cjs/slider/slider.js.map +1 -0
- package/cjs/slider/type.d.ts +44 -0
- package/cjs/slider/type.js +6 -0
- package/cjs/slider/type.js.map +1 -0
- package/cjs/tag/index.d.ts +2 -0
- package/cjs/tag/index.js +21 -0
- package/cjs/tag/index.js.map +1 -0
- package/cjs/tag/tag.d.ts +8 -0
- package/cjs/tag/tag.js +103 -0
- package/cjs/tag/tag.js.map +1 -0
- package/cjs/tag/type.d.ts +24 -0
- package/cjs/tag/type.js +6 -0
- package/cjs/tag/type.js.map +1 -0
- package/cjs/title/index.d.ts +2 -0
- package/cjs/title/index.js +21 -0
- package/cjs/title/index.js.map +1 -0
- package/cjs/title/title.d.ts +10 -0
- package/cjs/title/title.js +133 -0
- package/cjs/title/title.js.map +1 -0
- package/cjs/title/type.d.ts +41 -0
- package/cjs/title/type.js +6 -0
- package/cjs/title/type.js.map +1 -0
- package/cjs/tooltip/config.d.ts +3 -0
- package/cjs/tooltip/config.js +78 -0
- package/cjs/tooltip/config.js.map +1 -0
- package/cjs/tooltip/index.d.ts +2 -0
- package/cjs/tooltip/index.js +21 -0
- package/cjs/tooltip/index.js.map +1 -0
- package/cjs/tooltip/tooltip.d.ts +18 -0
- package/cjs/tooltip/tooltip.js +160 -0
- package/cjs/tooltip/tooltip.js.map +1 -0
- package/cjs/tooltip/type.d.ts +60 -0
- package/cjs/tooltip/type.js +6 -0
- package/cjs/tooltip/type.js.map +1 -0
- package/cjs/tooltip/util.d.ts +2 -0
- package/cjs/tooltip/util.js +17 -0
- package/cjs/tooltip/util.js.map +1 -0
- package/cjs/util/common.d.ts +3 -0
- package/cjs/util/common.js +21 -0
- package/cjs/util/common.js.map +1 -0
- package/cjs/util/index.d.ts +4 -0
- package/cjs/util/index.js +22 -0
- package/cjs/util/index.js.map +1 -0
- package/cjs/util/labelSmartInvert.d.ts +2 -0
- package/cjs/util/labelSmartInvert.js +45 -0
- package/cjs/util/labelSmartInvert.js.map +1 -0
- package/cjs/util/matrix.d.ts +4 -0
- package/cjs/util/matrix.js +24 -0
- package/cjs/util/matrix.js.map +1 -0
- package/cjs/util/text.d.ts +7 -0
- package/cjs/util/text.js +40 -0
- package/cjs/util/text.js.map +1 -0
- package/dist/vrender-components.js.js +1 -0
- package/dist/vrender-components.js.min.js +1 -0
- package/es/axis/animate/group-fade.d.ts +17 -0
- package/es/axis/animate/group-fade.js +62 -0
- package/es/axis/animate/group-fade.js.map +1 -0
- package/es/axis/animate/group-transition.d.ts +10 -0
- package/es/axis/animate/group-transition.js +72 -0
- package/es/axis/animate/group-transition.js.map +1 -0
- package/es/axis/animate/index.d.ts +2 -0
- package/es/axis/animate/index.js +4 -0
- package/es/axis/animate/index.js.map +1 -0
- package/es/axis/base.d.ts +53 -0
- package/es/axis/base.js +306 -0
- package/es/axis/base.js.map +1 -0
- package/es/axis/circle.d.ts +88 -0
- package/es/axis/circle.js +186 -0
- package/es/axis/circle.js.map +1 -0
- package/es/axis/config.d.ts +71 -0
- package/es/axis/config.js +72 -0
- package/es/axis/config.js.map +1 -0
- package/es/axis/constant.d.ts +27 -0
- package/es/axis/constant.js +26 -0
- package/es/axis/constant.js.map +1 -0
- package/es/axis/grid.d.ts +9 -0
- package/es/axis/grid.js +102 -0
- package/es/axis/grid.js.map +1 -0
- package/es/axis/index.d.ts +6 -0
- package/es/axis/index.js +12 -0
- package/es/axis/index.js.map +1 -0
- package/es/axis/line.d.ts +89 -0
- package/es/axis/line.js +204 -0
- package/es/axis/line.js.map +1 -0
- package/es/axis/type.d.ts +177 -0
- package/es/axis/type.js +2 -0
- package/es/axis/type.js.map +1 -0
- package/es/brush/brush.d.ts +65 -0
- package/es/brush/brush.js +171 -0
- package/es/brush/brush.js.map +1 -0
- package/es/brush/config.d.ts +21 -0
- package/es/brush/config.js +22 -0
- package/es/brush/config.js.map +1 -0
- package/es/brush/index.d.ts +2 -0
- package/es/brush/index.js +4 -0
- package/es/brush/index.js.map +1 -0
- package/es/brush/type.d.ts +21 -0
- package/es/brush/type.js +2 -0
- package/es/brush/type.js.map +1 -0
- package/es/constant.d.ts +16 -0
- package/es/constant.js +21 -0
- package/es/constant.js.map +1 -0
- package/es/core/base.d.ts +12 -0
- package/es/core/base.js +40 -0
- package/es/core/base.js.map +1 -0
- package/es/core/type.d.ts +28 -0
- package/es/core/type.js +1 -0
- package/es/core/type.js.map +1 -0
- package/es/crosshair/base.d.ts +10 -0
- package/es/crosshair/base.js +11 -0
- package/es/crosshair/base.js.map +1 -0
- package/es/crosshair/circle.d.ts +17 -0
- package/es/crosshair/circle.js +29 -0
- package/es/crosshair/circle.js.map +1 -0
- package/es/crosshair/index.d.ts +6 -0
- package/es/crosshair/index.js +12 -0
- package/es/crosshair/index.js.map +1 -0
- package/es/crosshair/line.d.ts +17 -0
- package/es/crosshair/line.js +32 -0
- package/es/crosshair/line.js.map +1 -0
- package/es/crosshair/polygon.d.ts +17 -0
- package/es/crosshair/polygon.js +35 -0
- package/es/crosshair/polygon.js.map +1 -0
- package/es/crosshair/rect.d.ts +20 -0
- package/es/crosshair/rect.js +33 -0
- package/es/crosshair/rect.js.map +1 -0
- package/es/crosshair/sector.d.ts +15 -0
- package/es/crosshair/sector.js +35 -0
- package/es/crosshair/sector.js.map +1 -0
- package/es/crosshair/type.d.ts +37 -0
- package/es/crosshair/type.js +2 -0
- package/es/crosshair/type.js.map +1 -0
- package/es/data-zoom/config.d.ts +104 -0
- package/es/data-zoom/config.js +106 -0
- package/es/data-zoom/config.js.map +1 -0
- package/es/data-zoom/data-zoom.d.ts +193 -0
- package/es/data-zoom/data-zoom.js +444 -0
- package/es/data-zoom/data-zoom.js.map +1 -0
- package/es/data-zoom/index.d.ts +2 -0
- package/es/data-zoom/index.js +4 -0
- package/es/data-zoom/index.js.map +1 -0
- package/es/data-zoom/type.d.ts +59 -0
- package/es/data-zoom/type.js +2 -0
- package/es/data-zoom/type.js.map +1 -0
- package/es/index.d.ts +20 -0
- package/es/index.js +40 -0
- package/es/index.js.map +1 -0
- package/es/indicator/config.d.ts +2 -0
- package/es/indicator/config.js +27 -0
- package/es/indicator/config.js.map +1 -0
- package/es/indicator/index.d.ts +2 -0
- package/es/indicator/index.js +4 -0
- package/es/indicator/index.js.map +1 -0
- package/es/indicator/indicator.d.ts +9 -0
- package/es/indicator/indicator.js +69 -0
- package/es/indicator/indicator.js.map +1 -0
- package/es/indicator/type.d.ts +21 -0
- package/es/indicator/type.js +1 -0
- package/es/indicator/type.js.map +1 -0
- package/es/interface.d.ts +6 -0
- package/es/interface.js +2 -0
- package/es/interface.js.map +1 -0
- package/es/label/animate/animate.d.ts +7 -0
- package/es/label/animate/animate.js +47 -0
- package/es/label/animate/animate.js.map +1 -0
- package/es/label/animate/index.d.ts +1 -0
- package/es/label/animate/index.js +3 -0
- package/es/label/animate/index.js.map +1 -0
- package/es/label/base.d.ts +43 -0
- package/es/label/base.js +263 -0
- package/es/label/base.js.map +1 -0
- package/es/label/dataLabel.d.ts +13 -0
- package/es/label/dataLabel.js +60 -0
- package/es/label/dataLabel.js.map +1 -0
- package/es/label/index.d.ts +6 -0
- package/es/label/index.js +12 -0
- package/es/label/index.js.map +1 -0
- package/es/label/line.d.ts +15 -0
- package/es/label/line.js +43 -0
- package/es/label/line.js.map +1 -0
- package/es/label/overlap/bitmap.d.ts +13 -0
- package/es/label/overlap/bitmap.js +65 -0
- package/es/label/overlap/bitmap.js.map +1 -0
- package/es/label/overlap/index.d.ts +3 -0
- package/es/label/overlap/index.js +6 -0
- package/es/label/overlap/index.js.map +1 -0
- package/es/label/overlap/place.d.ts +14 -0
- package/es/label/overlap/place.js +57 -0
- package/es/label/overlap/place.js.map +1 -0
- package/es/label/overlap/scaler.d.ts +27 -0
- package/es/label/overlap/scaler.js +18 -0
- package/es/label/overlap/scaler.js.map +1 -0
- package/es/label/rect.d.ts +10 -0
- package/es/label/rect.js +55 -0
- package/es/label/rect.js.map +1 -0
- package/es/label/symbol.d.ts +10 -0
- package/es/label/symbol.js +65 -0
- package/es/label/symbol.js.map +1 -0
- package/es/label/type.d.ts +90 -0
- package/es/label/type.js +2 -0
- package/es/label/type.js.map +1 -0
- package/es/legend/base.d.ts +14 -0
- package/es/legend/base.js +56 -0
- package/es/legend/base.js.map +1 -0
- package/es/legend/color/color.d.ts +37 -0
- package/es/legend/color/color.js +128 -0
- package/es/legend/color/color.js.map +1 -0
- package/es/legend/color/index.d.ts +2 -0
- package/es/legend/color/index.js +4 -0
- package/es/legend/color/index.js.map +1 -0
- package/es/legend/color/type.d.ts +5 -0
- package/es/legend/color/type.js +2 -0
- package/es/legend/color/type.js.map +1 -0
- package/es/legend/constant.d.ts +29 -0
- package/es/legend/constant.js +40 -0
- package/es/legend/constant.js.map +1 -0
- package/es/legend/discrete/discrete.d.ts +26 -0
- package/es/legend/discrete/discrete.js +409 -0
- package/es/legend/discrete/discrete.js.map +1 -0
- package/es/legend/discrete/index.d.ts +2 -0
- package/es/legend/discrete/index.js +4 -0
- package/es/legend/discrete/index.js.map +1 -0
- package/es/legend/discrete/type.d.ts +65 -0
- package/es/legend/discrete/type.js +2 -0
- package/es/legend/discrete/type.js.map +1 -0
- package/es/legend/index.d.ts +8 -0
- package/es/legend/index.js +16 -0
- package/es/legend/index.js.map +1 -0
- package/es/legend/size/index.d.ts +1 -0
- package/es/legend/size/index.js +3 -0
- package/es/legend/size/index.js.map +1 -0
- package/es/legend/size/size.d.ts +34 -0
- package/es/legend/size/size.js +105 -0
- package/es/legend/size/size.js.map +1 -0
- package/es/legend/size/type.d.ts +6 -0
- package/es/legend/size/type.js +2 -0
- package/es/legend/size/type.js.map +1 -0
- package/es/legend/type.d.ts +27 -0
- package/es/legend/type.js +2 -0
- package/es/legend/type.js.map +1 -0
- package/es/link-path/index.d.ts +2 -0
- package/es/link-path/index.js +4 -0
- package/es/link-path/index.js.map +1 -0
- package/es/link-path/link-path.d.ts +15 -0
- package/es/link-path/link-path.js +59 -0
- package/es/link-path/link-path.js.map +1 -0
- package/es/link-path/type.d.ts +17 -0
- package/es/link-path/type.js +2 -0
- package/es/link-path/type.js.map +1 -0
- package/es/marker/area.d.ts +56 -0
- package/es/marker/area.js +65 -0
- package/es/marker/area.js.map +1 -0
- package/es/marker/base.d.ts +11 -0
- package/es/marker/base.js +15 -0
- package/es/marker/base.js.map +1 -0
- package/es/marker/config.d.ts +154 -0
- package/es/marker/config.js +244 -0
- package/es/marker/config.js.map +1 -0
- package/es/marker/index.d.ts +4 -0
- package/es/marker/index.js +8 -0
- package/es/marker/index.js.map +1 -0
- package/es/marker/line.d.ts +10 -0
- package/es/marker/line.js +47 -0
- package/es/marker/line.js.map +1 -0
- package/es/marker/point.d.ts +80 -0
- package/es/marker/point.js +106 -0
- package/es/marker/point.js.map +1 -0
- package/es/marker/type.d.ts +93 -0
- package/es/marker/type.js +27 -0
- package/es/marker/type.js.map +1 -0
- package/es/pager/index.d.ts +2 -0
- package/es/pager/index.js +4 -0
- package/es/pager/index.js.map +1 -0
- package/es/pager/pager.d.ts +20 -0
- package/es/pager/pager.js +132 -0
- package/es/pager/pager.js.map +1 -0
- package/es/pager/type.d.ts +19 -0
- package/es/pager/type.js +2 -0
- package/es/pager/type.js.map +1 -0
- package/es/player/base-player.d.ts +103 -0
- package/es/player/base-player.js +200 -0
- package/es/player/base-player.js.map +1 -0
- package/es/player/constant.d.ts +12 -0
- package/es/player/constant.js +14 -0
- package/es/player/constant.js.map +1 -0
- package/es/player/continuous-player.d.ts +34 -0
- package/es/player/continuous-player.js +104 -0
- package/es/player/continuous-player.js.map +1 -0
- package/es/player/controller/assets/index.d.ts +6 -0
- package/es/player/controller/assets/index.js +12 -0
- package/es/player/controller/assets/index.js.map +1 -0
- package/es/player/controller/constant.d.ts +12 -0
- package/es/player/controller/constant.js +14 -0
- package/es/player/controller/constant.js.map +1 -0
- package/es/player/controller/controller.d.ts +32 -0
- package/es/player/controller/controller.js +97 -0
- package/es/player/controller/controller.js.map +1 -0
- package/es/player/controller/icon/icon.d.ts +4 -0
- package/es/player/controller/icon/icon.js +8 -0
- package/es/player/controller/icon/icon.js.map +1 -0
- package/es/player/controller/icon/index.d.ts +1 -0
- package/es/player/controller/icon/index.js +2 -0
- package/es/player/controller/icon/index.js.map +1 -0
- package/es/player/controller/icon/type.d.ts +1 -0
- package/es/player/controller/icon/type.js +3 -0
- package/es/player/controller/icon/type.js.map +1 -0
- package/es/player/controller/index.d.ts +2 -0
- package/es/player/controller/index.js +4 -0
- package/es/player/controller/index.js.map +1 -0
- package/es/player/controller/type.d.ts +11 -0
- package/es/player/controller/type.js +2 -0
- package/es/player/controller/type.js.map +1 -0
- package/es/player/discrete-player.d.ts +32 -0
- package/es/player/discrete-player.js +86 -0
- package/es/player/discrete-player.js.map +1 -0
- package/es/player/index.d.ts +4 -0
- package/es/player/index.js +8 -0
- package/es/player/index.js.map +1 -0
- package/es/player/type/base.d.ts +7 -0
- package/es/player/type/base.js +2 -0
- package/es/player/type/base.js.map +1 -0
- package/es/player/type/continuous-player.d.ts +7 -0
- package/es/player/type/continuous-player.js +2 -0
- package/es/player/type/continuous-player.js.map +1 -0
- package/es/player/type/direction.d.ts +5 -0
- package/es/player/type/direction.js +6 -0
- package/es/player/type/direction.js.map +1 -0
- package/es/player/type/discrete-player.d.ts +9 -0
- package/es/player/type/discrete-player.js +2 -0
- package/es/player/type/discrete-player.js.map +1 -0
- package/es/player/type/event.d.ts +8 -0
- package/es/player/type/event.js +8 -0
- package/es/player/type/event.js.map +1 -0
- package/es/player/type/index.d.ts +9 -0
- package/es/player/type/index.js +12 -0
- package/es/player/type/index.js.map +1 -0
- package/es/player/type/layout.d.ts +35 -0
- package/es/player/type/layout.js +2 -0
- package/es/player/type/layout.js.map +1 -0
- package/es/player/utils.d.ts +20 -0
- package/es/player/utils.js +45 -0
- package/es/player/utils.js.map +1 -0
- package/es/scrollbar/index.d.ts +2 -0
- package/es/scrollbar/index.js +4 -0
- package/es/scrollbar/index.js.map +1 -0
- package/es/scrollbar/scrollbar.d.ts +43 -0
- package/es/scrollbar/scrollbar.js +154 -0
- package/es/scrollbar/scrollbar.js.map +1 -0
- package/es/scrollbar/type.d.ts +16 -0
- package/es/scrollbar/type.js +2 -0
- package/es/scrollbar/type.js.map +1 -0
- package/es/segment/index.d.ts +2 -0
- package/es/segment/index.js +4 -0
- package/es/segment/index.js.map +1 -0
- package/es/segment/segment.d.ts +18 -0
- package/es/segment/segment.js +103 -0
- package/es/segment/segment.js.map +1 -0
- package/es/segment/type.d.ts +22 -0
- package/es/segment/type.js +2 -0
- package/es/segment/type.js.map +1 -0
- package/es/slider/constant.d.ts +13 -0
- package/es/slider/constant.js +11 -0
- package/es/slider/constant.js.map +1 -0
- package/es/slider/index.d.ts +3 -0
- package/es/slider/index.js +6 -0
- package/es/slider/index.js.map +1 -0
- package/es/slider/slider.d.ts +96 -0
- package/es/slider/slider.js +399 -0
- package/es/slider/slider.js.map +1 -0
- package/es/slider/type.d.ts +44 -0
- package/es/slider/type.js +2 -0
- package/es/slider/type.js.map +1 -0
- package/es/tag/index.d.ts +2 -0
- package/es/tag/index.js +4 -0
- package/es/tag/index.js.map +1 -0
- package/es/tag/tag.d.ts +8 -0
- package/es/tag/tag.js +97 -0
- package/es/tag/tag.js.map +1 -0
- package/es/tag/type.d.ts +24 -0
- package/es/tag/type.js +2 -0
- package/es/tag/type.js.map +1 -0
- package/es/title/index.d.ts +2 -0
- package/es/title/index.js +4 -0
- package/es/title/index.js.map +1 -0
- package/es/title/title.d.ts +10 -0
- package/es/title/title.js +125 -0
- package/es/title/title.js.map +1 -0
- package/es/title/type.d.ts +41 -0
- package/es/title/type.js +2 -0
- package/es/title/type.js.map +1 -0
- package/es/tooltip/config.d.ts +3 -0
- package/es/tooltip/config.js +76 -0
- package/es/tooltip/config.js.map +1 -0
- package/es/tooltip/index.d.ts +2 -0
- package/es/tooltip/index.js +4 -0
- package/es/tooltip/index.js.map +1 -0
- package/es/tooltip/tooltip.d.ts +18 -0
- package/es/tooltip/tooltip.js +161 -0
- package/es/tooltip/tooltip.js.map +1 -0
- package/es/tooltip/type.d.ts +60 -0
- package/es/tooltip/type.js +2 -0
- package/es/tooltip/type.js.map +1 -0
- package/es/tooltip/util.d.ts +2 -0
- package/es/tooltip/util.js +11 -0
- package/es/tooltip/util.js.map +1 -0
- package/es/util/common.d.ts +3 -0
- package/es/util/common.js +11 -0
- package/es/util/common.js.map +1 -0
- package/es/util/index.d.ts +4 -0
- package/es/util/index.js +8 -0
- package/es/util/index.js.map +1 -0
- package/es/util/labelSmartInvert.d.ts +2 -0
- package/es/util/labelSmartInvert.js +39 -0
- package/es/util/labelSmartInvert.js.map +1 -0
- package/es/util/matrix.d.ts +4 -0
- package/es/util/matrix.js +13 -0
- package/es/util/matrix.js.map +1 -0
- package/es/util/text.d.ts +7 -0
- package/es/util/text.js +38 -0
- package/es/util/text.js.map +1 -0
- package/package.json +49 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/player/utils.ts"],"names":[],"mappings":"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","file":"utils.js","sourcesContent":["import { OrientType } from '../interface';\nimport { DirectionEnum, DirectionType } from './type';\n\n/**\n * 检测下标是否正确\n */\ninterface ICheckIndex {\n direction: DirectionType;\n maxIndex: number;\n minIndex: number;\n dataIndex: number;\n}\nexport const checkIndex = ({ direction, maxIndex, minIndex, dataIndex }: ICheckIndex): boolean => {\n // 若默认方向, 检测下标是否合法\n if (direction === DirectionEnum.Default) {\n return dataIndex < maxIndex;\n }\n // 若逆向, 检测下标是否合法\n else if (direction === DirectionEnum.Reverse) {\n return dataIndex > minIndex;\n }\n};\n\n/**\n * 判断能否进入循环\n */\n\nexport const canPlay = ({ direction, maxIndex, minIndex, dataIndex }: ICheckIndex): boolean => {\n return checkIndex({ direction, maxIndex, minIndex, dataIndex });\n};\n\n/**\n * 判断是否到达了末尾\n */\nexport const isReachEndByDefault = ({ direction, maxIndex, dataIndex }: Omit<ICheckIndex, 'minIndex'>) => {\n if (direction === DirectionEnum.Default) {\n return dataIndex === maxIndex;\n }\n return false;\n};\n\nexport const isReachEndByReverse = ({ direction, minIndex, dataIndex }: Omit<ICheckIndex, 'maxIndex'>) => {\n if (direction === DirectionEnum.Reverse) {\n return dataIndex === minIndex;\n }\n return false;\n};\n\nexport const isReachEnd = ({ direction, maxIndex, minIndex, dataIndex }: ICheckIndex) => {\n return (\n isReachEndByDefault({ direction, maxIndex, dataIndex }) || isReachEndByReverse({ direction, minIndex, dataIndex })\n );\n};\n\n/**\n * 判断是否处于起点\n */\nexport const isReachStartByDefault = ({ direction, minIndex, dataIndex }: Omit<ICheckIndex, 'maxIndex'>) => {\n if (direction === DirectionEnum.Default) {\n return dataIndex === minIndex;\n }\n return false;\n};\n\nexport const isReachStartByReverse = ({ direction, maxIndex, dataIndex }: Omit<ICheckIndex, 'minIndex'>) => {\n if (direction === DirectionEnum.Reverse) {\n return dataIndex === maxIndex;\n }\n return false;\n};\n\nexport const isReachStart = ({ direction, maxIndex, minIndex, dataIndex }: ICheckIndex) => {\n return (\n isReachStartByDefault({ direction, minIndex, dataIndex }) ||\n isReachStartByReverse({ direction, maxIndex, dataIndex })\n );\n};\n\n/**\n * 得到初始化下标\n */\n\nexport const isVertical = (orient: OrientType) => orient === 'left' || orient === 'right';\n\nexport const isHorizontal = (orient: OrientType) => orient === 'top' || orient === 'bottom';\n\nexport const forwardStep = (direction: DirectionType, currentIndex: number, min: number, max: number) => {\n if (direction === 'default') {\n return Math.min(currentIndex + 1, max);\n }\n return Math.max(currentIndex - 1, min);\n};\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/scrollbar/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,QAAQ,CAAC","file":"index.js","sourcesContent":["export * from './scrollbar';\nexport * from './type';\n"]}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { AbstractComponent } from '../core/base';
|
|
2
|
+
import type { ScrollBarAttributes } from './type';
|
|
3
|
+
export declare class ScrollBar extends AbstractComponent<Required<ScrollBarAttributes>> {
|
|
4
|
+
name: string;
|
|
5
|
+
static defaultAttributes: {
|
|
6
|
+
direction: string;
|
|
7
|
+
round: boolean;
|
|
8
|
+
sliderSize: number;
|
|
9
|
+
sliderStyle: {
|
|
10
|
+
fill: boolean;
|
|
11
|
+
fillColor: string;
|
|
12
|
+
};
|
|
13
|
+
railStyle: {
|
|
14
|
+
fill: boolean;
|
|
15
|
+
fillColor: string;
|
|
16
|
+
};
|
|
17
|
+
padding: number;
|
|
18
|
+
scrollRange: number[];
|
|
19
|
+
};
|
|
20
|
+
private _container;
|
|
21
|
+
private _slider;
|
|
22
|
+
private _rail;
|
|
23
|
+
private _sliderRenderBounds;
|
|
24
|
+
private _sliderLimitRange;
|
|
25
|
+
private _prePos;
|
|
26
|
+
private _viewPosition;
|
|
27
|
+
private _sliderSize;
|
|
28
|
+
constructor(attributes: ScrollBarAttributes);
|
|
29
|
+
setScrollRange(range: [number, number], render?: boolean): void;
|
|
30
|
+
getScrollRange(): [number, number];
|
|
31
|
+
protected bindEvents(): void;
|
|
32
|
+
protected render(): void;
|
|
33
|
+
private _getSliderRenderBounds;
|
|
34
|
+
private _getDefaultSliderBorderRadius;
|
|
35
|
+
private _getSliderPos;
|
|
36
|
+
private _getScrollRange;
|
|
37
|
+
private _onRailPointerDown;
|
|
38
|
+
private _onSliderPointerDown;
|
|
39
|
+
private _onSliderPointerMove;
|
|
40
|
+
private _onSliderPointerUp;
|
|
41
|
+
private _onChange;
|
|
42
|
+
private _reset;
|
|
43
|
+
}
|
|
@@ -0,0 +1,154 @@
|
|
|
1
|
+
import { CustomEvent, global } from "@visactor/vrender";
|
|
2
|
+
|
|
3
|
+
import { merge, normalizePadding, clamp, clampRange } from "@visactor/vutils";
|
|
4
|
+
|
|
5
|
+
import { AbstractComponent } from "../core/base";
|
|
6
|
+
|
|
7
|
+
export class ScrollBar extends AbstractComponent {
|
|
8
|
+
constructor(attributes) {
|
|
9
|
+
super(merge({}, ScrollBar.defaultAttributes, attributes)), this.name = "scrollbar",
|
|
10
|
+
this._onRailPointerDown = e => {
|
|
11
|
+
var _a, _b;
|
|
12
|
+
const {viewX: viewX, viewY: viewY} = e, {direction: direction, width: width, height: height, range: range} = this.attribute, sliderSize = this._sliderSize, [min, max] = this._getScrollRange();
|
|
13
|
+
let currentScrollValue;
|
|
14
|
+
if ("vertical" === direction) {
|
|
15
|
+
const relativeY = viewY - this._viewPosition.y, currentYPos = clamp(relativeY - sliderSize / 2, min, max);
|
|
16
|
+
currentScrollValue = relativeY / height, this._slider.setAttribute("y", currentYPos, !0);
|
|
17
|
+
} else {
|
|
18
|
+
const relativeX = viewX - this._viewPosition.x, currentXPos = clamp(relativeX - sliderSize / 2, min, max);
|
|
19
|
+
currentScrollValue = relativeX / width, this._slider.setAttribute("x", currentXPos, !0);
|
|
20
|
+
}
|
|
21
|
+
this.setScrollRange([ currentScrollValue - (range[1] - range[0]) / 2, currentScrollValue + (range[1] - range[0]) / 2 ], !1),
|
|
22
|
+
(null === (_a = this.stage) || void 0 === _a ? void 0 : _a.autoRender) || null === (_b = this.stage) || void 0 === _b || _b.renderNextFrame();
|
|
23
|
+
}, this._onSliderPointerDown = e => {
|
|
24
|
+
e.stopPropagation();
|
|
25
|
+
const {direction: direction} = this.attribute;
|
|
26
|
+
this._prePos = "horizontal" === direction ? e.clientX : e.clientY, "browser" === global.env ? (global.addEventListener("pointermove", this._onSliderPointerMove),
|
|
27
|
+
global.addEventListener("pointerup", this._onSliderPointerUp)) : (this._slider.addEventListener("pointermove", this._onSliderPointerMove),
|
|
28
|
+
this._slider.addEventListener("pointerup", this._onSliderPointerUp), this._slider.addEventListener("pointerupoutside", this._onSliderPointerUp));
|
|
29
|
+
}, this._onSliderPointerMove = e => {
|
|
30
|
+
e.stopPropagation();
|
|
31
|
+
const {direction: direction} = this.attribute;
|
|
32
|
+
let currentScrollValue, currentPos, delta = 0;
|
|
33
|
+
const preScrollRange = this.getScrollRange(), {width: width, height: height} = this._getSliderRenderBounds();
|
|
34
|
+
"vertical" === direction ? (currentPos = e.clientY, delta = currentPos - this._prePos,
|
|
35
|
+
currentScrollValue = delta / height) : (currentPos = e.clientX, delta = currentPos - this._prePos,
|
|
36
|
+
currentScrollValue = delta / width), this.setScrollRange([ preScrollRange[0] + currentScrollValue, preScrollRange[1] + currentScrollValue ], !0),
|
|
37
|
+
this._prePos = currentPos;
|
|
38
|
+
}, this._onSliderPointerUp = e => {
|
|
39
|
+
e.preventDefault(), "browser" === global.env ? (global.removeEventListener("pointermove", this._onSliderPointerMove),
|
|
40
|
+
global.removeEventListener("pointerup", this._onSliderPointerUp)) : (this._slider.removeEventListener("pointermove", this._onSliderPointerMove),
|
|
41
|
+
this._slider.removeEventListener("pointerup", this._onSliderPointerUp), this._slider.removeEventListener("pointerupoutside", this._onSliderPointerUp));
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
setScrollRange(range, render = !0) {
|
|
45
|
+
var _a, _b;
|
|
46
|
+
const {direction: direction = "horizontal", limitRange: limitRange = [ 0, 1 ], range: preRange} = this.attribute, currScrollRange = clampRange(range, limitRange[0], limitRange[1]);
|
|
47
|
+
if (render) {
|
|
48
|
+
const sliderPos = this._getSliderPos(currScrollRange);
|
|
49
|
+
this._slider && ("horizontal" === direction ? this._slider.setAttribute("x", sliderPos[0], !0) : this._slider.setAttribute("y", sliderPos[0], !0),
|
|
50
|
+
(null === (_a = this.stage) || void 0 === _a ? void 0 : _a.autoRender) || null === (_b = this.stage) || void 0 === _b || _b.renderNextFrame());
|
|
51
|
+
}
|
|
52
|
+
this.attribute.range = currScrollRange, this._onChange({
|
|
53
|
+
pre: preRange,
|
|
54
|
+
value: currScrollRange
|
|
55
|
+
});
|
|
56
|
+
}
|
|
57
|
+
getScrollRange() {
|
|
58
|
+
return this.attribute.range;
|
|
59
|
+
}
|
|
60
|
+
bindEvents() {
|
|
61
|
+
this._rail && this._rail.addEventListener("pointerdown", this._onRailPointerDown),
|
|
62
|
+
this._slider && this._slider.addEventListener("pointerdown", this._onSliderPointerDown);
|
|
63
|
+
}
|
|
64
|
+
render() {
|
|
65
|
+
this._reset();
|
|
66
|
+
const {direction: direction = "horizontal", width: width, height: height, range: range, limitRange: limitRange = [ 0, 1 ], railStyle: railStyle, sliderStyle: sliderStyle, padding: padding = 2} = this.attribute, group = this.createOrUpdateChild("scrollbar-container", {}, "group"), rail = group.createOrUpdateChild("scrollbar-rail", Object.assign({
|
|
67
|
+
x: 0,
|
|
68
|
+
y: 0,
|
|
69
|
+
width: width,
|
|
70
|
+
height: height
|
|
71
|
+
}, railStyle), "rect");
|
|
72
|
+
this._rail = rail;
|
|
73
|
+
const sliderRenderBounds = this._getSliderRenderBounds(), sliderPos = this._getSliderPos(clampRange(range, limitRange[0], limitRange[1])), sliderSize = sliderPos[1] - sliderPos[0];
|
|
74
|
+
let sliderAttribute;
|
|
75
|
+
this._sliderSize = sliderSize, sliderAttribute = "horizontal" === direction ? {
|
|
76
|
+
x: sliderPos[0],
|
|
77
|
+
y: sliderRenderBounds.y1,
|
|
78
|
+
width: sliderSize,
|
|
79
|
+
height: sliderRenderBounds.height
|
|
80
|
+
} : {
|
|
81
|
+
x: sliderRenderBounds.x1,
|
|
82
|
+
y: sliderPos[0],
|
|
83
|
+
width: sliderRenderBounds.width,
|
|
84
|
+
height: sliderSize
|
|
85
|
+
};
|
|
86
|
+
const slider = group.createOrUpdateChild("slider", Object.assign(Object.assign(Object.assign(Object.assign({}, sliderAttribute), {
|
|
87
|
+
borderRadius: this._getDefaultSliderBorderRadius()
|
|
88
|
+
}), sliderStyle), {
|
|
89
|
+
boundsPadding: normalizePadding(padding),
|
|
90
|
+
pickMode: "imprecise"
|
|
91
|
+
}), "rect");
|
|
92
|
+
this._slider = slider, this._container = group;
|
|
93
|
+
const containerAABBBounds = this._container.AABBBounds;
|
|
94
|
+
this._viewPosition = {
|
|
95
|
+
x: containerAABBBounds.x1,
|
|
96
|
+
y: containerAABBBounds.y1
|
|
97
|
+
};
|
|
98
|
+
}
|
|
99
|
+
_getSliderRenderBounds() {
|
|
100
|
+
if (this._sliderRenderBounds) return this._sliderRenderBounds;
|
|
101
|
+
const {width: width, height: height, padding: padding = 2} = this.attribute, [top, right, bottom, left] = normalizePadding(padding), renderBounds = {
|
|
102
|
+
x1: left,
|
|
103
|
+
y1: top,
|
|
104
|
+
x2: width - right,
|
|
105
|
+
y2: height - bottom,
|
|
106
|
+
width: width - (left + right),
|
|
107
|
+
height: height - (top + bottom)
|
|
108
|
+
};
|
|
109
|
+
return this._sliderRenderBounds = renderBounds, renderBounds;
|
|
110
|
+
}
|
|
111
|
+
_getDefaultSliderBorderRadius() {
|
|
112
|
+
const {direction: direction, round: round} = this.attribute;
|
|
113
|
+
if (round) {
|
|
114
|
+
const {width: width, height: height} = this._getSliderRenderBounds();
|
|
115
|
+
return "horizontal" === direction ? height : width;
|
|
116
|
+
}
|
|
117
|
+
return 0;
|
|
118
|
+
}
|
|
119
|
+
_getSliderPos(range) {
|
|
120
|
+
const {direction: direction} = this.attribute, {width: width, height: height, x1: x1, y1: y1} = this._getSliderRenderBounds();
|
|
121
|
+
return "horizontal" === direction ? [ width * range[0] + x1, width * range[1] + x1 ] : [ height * range[0] + y1, height * range[1] + y1 ];
|
|
122
|
+
}
|
|
123
|
+
_getScrollRange() {
|
|
124
|
+
if (this._sliderLimitRange) return this._sliderLimitRange;
|
|
125
|
+
const {limitRange: limitRange = [ 0, 1 ], direction: direction} = this.attribute, [min, max] = clampRange(limitRange, 0, 1), {width: width, height: height, x1: x1, y1: y1} = this._getSliderRenderBounds(), sliderSize = this._sliderSize;
|
|
126
|
+
return "horizontal" === direction ? clampRange([ x1 + min * width, x1 + max * width ], x1, width - sliderSize) : clampRange([ y1 + min * height, y1 + max * height ], y1, height - sliderSize);
|
|
127
|
+
}
|
|
128
|
+
_onChange(detail) {
|
|
129
|
+
var _a;
|
|
130
|
+
const changeEvent = new CustomEvent("scroll", detail);
|
|
131
|
+
changeEvent.manager = null === (_a = this.stage) || void 0 === _a ? void 0 : _a.eventSystem.manager,
|
|
132
|
+
this.dispatchEvent(changeEvent);
|
|
133
|
+
}
|
|
134
|
+
_reset() {
|
|
135
|
+
this._sliderRenderBounds = null, this._sliderLimitRange = null;
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
ScrollBar.defaultAttributes = {
|
|
140
|
+
direction: "horizontal",
|
|
141
|
+
round: !0,
|
|
142
|
+
sliderSize: 20,
|
|
143
|
+
sliderStyle: {
|
|
144
|
+
fill: !0,
|
|
145
|
+
fillColor: "rgba(0, 0, 0, .5)"
|
|
146
|
+
},
|
|
147
|
+
railStyle: {
|
|
148
|
+
fill: !0,
|
|
149
|
+
fillColor: "rgba(0, 0, 0, .0)"
|
|
150
|
+
},
|
|
151
|
+
padding: 2,
|
|
152
|
+
scrollRange: [ 0, 1 ]
|
|
153
|
+
};
|
|
154
|
+
//# sourceMappingURL=scrollbar.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/scrollbar/scrollbar.ts"],"names":[],"mappings":"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","file":"scrollbar.js","sourcesContent":["/**\n * @description 滚动条组件\n */\nimport { IRectGraphicAttribute, FederatedPointerEvent, CustomEvent, global, IGroup, IRect } from '@visactor/vrender';\nimport { merge, normalizePadding, clamp, clampRange } from '@visactor/vutils';\nimport { AbstractComponent } from '../core/base';\n\nimport type { ScrollBarAttributes } from './type';\n\ntype ComponentBounds = {\n x1: number;\n y1: number;\n x2: number;\n y2: number;\n width: number;\n height: number;\n};\n\nexport class ScrollBar extends AbstractComponent<Required<ScrollBarAttributes>> {\n name = 'scrollbar';\n\n static defaultAttributes = {\n direction: 'horizontal',\n round: true,\n sliderSize: 20,\n sliderStyle: {\n fill: true,\n fillColor: 'rgba(0, 0, 0, .5)'\n },\n railStyle: {\n fill: true,\n fillColor: 'rgba(0, 0, 0, .0)'\n },\n padding: 2,\n scrollRange: [0, 1]\n };\n\n private _container!: IGroup;\n // 滚动条滑块\n private _slider!: IRect;\n // 滚动条滑轨\n private _rail!: IRect;\n // 滑块可渲染的区域包围盒\n private _sliderRenderBounds!: ComponentBounds | null;\n // 滑块滑动的范围\n private _sliderLimitRange!: [number, number] | null;\n // 保留滑块上一次的位置\n private _prePos!: number;\n // TODO: 临时方案\n private _viewPosition!: { x: number; y: number };\n private _sliderSize!: number;\n\n constructor(attributes: ScrollBarAttributes) {\n super(merge({}, ScrollBar.defaultAttributes, attributes));\n }\n\n setScrollRange(range: [number, number], render = true) {\n const { direction = 'horizontal', limitRange = [0, 1], range: preRange } = this.attribute as ScrollBarAttributes;\n\n const currScrollRange = clampRange(range, limitRange[0], limitRange[1]);\n if (render) {\n // 更新图形\n const sliderPos = this._getSliderPos(currScrollRange);\n if (this._slider) {\n if (direction === 'horizontal') {\n this._slider.setAttribute('x', sliderPos[0], true);\n } else {\n this._slider.setAttribute('y', sliderPos[0], true);\n }\n\n if (!this.stage?.autoRender) {\n this.stage?.renderNextFrame();\n }\n }\n }\n (this.attribute as ScrollBarAttributes).range = currScrollRange;\n // 发射 change 事件\n this._onChange({\n pre: preRange,\n value: currScrollRange\n });\n }\n\n getScrollRange(): [number, number] {\n return (this.attribute as ScrollBarAttributes).range;\n }\n\n // public setLocation(point: PointLocationCfg) {\n // this.translateTo(point.x, point.y);\n // }\n\n // 绑定事件\n protected bindEvents(): void {\n // TODO: wheel 事件支持\n if (this._rail) {\n this._rail.addEventListener('pointerdown', this._onRailPointerDown as EventListener);\n }\n if (this._slider) {\n this._slider.addEventListener('pointerdown', this._onSliderPointerDown as EventListener);\n }\n }\n\n protected render() {\n this._reset();\n const {\n direction = 'horizontal',\n width,\n height,\n range,\n limitRange = [0, 1],\n // sliderSize = 20,\n // scrollValue = 0,\n // scrollRange = [0, 1],\n railStyle,\n sliderStyle,\n padding = 2\n } = this.attribute as ScrollBarAttributes;\n\n const group = this.createOrUpdateChild('scrollbar-container', {}, 'group') as IGroup;\n // 绘制轨道\n\n const rail = group.createOrUpdateChild(\n 'scrollbar-rail',\n {\n x: 0,\n y: 0,\n width,\n height,\n ...railStyle\n },\n 'rect'\n ) as IRect;\n this._rail = rail;\n\n // 滑块\n const sliderRenderBounds = this._getSliderRenderBounds();\n const sliderPos = this._getSliderPos(clampRange(range, limitRange[0], limitRange[1]));\n const sliderSize = sliderPos[1] - sliderPos[0];\n this._sliderSize = sliderSize;\n // const sliderRangePos = this._getScrollRange();\n\n let sliderAttribute: IRectGraphicAttribute;\n if (direction === 'horizontal') {\n sliderAttribute = {\n x: sliderPos[0],\n y: sliderRenderBounds.y1,\n width: sliderSize,\n height: sliderRenderBounds.height\n };\n } else {\n sliderAttribute = {\n x: sliderRenderBounds.x1,\n y: sliderPos[0],\n width: sliderRenderBounds.width,\n height: sliderSize\n };\n }\n\n const slider = group.createOrUpdateChild(\n 'slider',\n {\n ...sliderAttribute,\n borderRadius: this._getDefaultSliderBorderRadius(),\n ...sliderStyle,\n boundsPadding: normalizePadding(padding),\n pickMode: 'imprecise'\n },\n 'rect'\n ) as IRect;\n this._slider = slider;\n this._container = group;\n\n const containerAABBBounds = this._container.AABBBounds;\n this._viewPosition = {\n x: containerAABBBounds.x1,\n y: containerAABBBounds.y1\n };\n }\n\n // 获取滑块渲染的包围盒区域\n private _getSliderRenderBounds() {\n if (this._sliderRenderBounds) {\n return this._sliderRenderBounds;\n }\n const { width, height, padding = 2 } = this.attribute as ScrollBarAttributes;\n const [top, right, bottom, left] = normalizePadding(padding);\n const renderBounds = {\n x1: left,\n y1: top,\n x2: width - right,\n y2: height - bottom,\n width: width - (left + right),\n height: height - (top + bottom)\n };\n this._sliderRenderBounds = renderBounds;\n return renderBounds;\n }\n\n // 获取默认的滑块圆角\n private _getDefaultSliderBorderRadius() {\n const { direction, round } = this.attribute as ScrollBarAttributes;\n\n if (round) {\n const { width, height } = this._getSliderRenderBounds();\n return direction === 'horizontal' ? height : width;\n }\n\n return 0;\n }\n\n // 计算滑块在轨道的位置\n private _getSliderPos(range: [number, number]) {\n const { direction } = this.attribute as ScrollBarAttributes;\n const { width, height, x1, y1 } = this._getSliderRenderBounds();\n\n if (direction === 'horizontal') {\n return [width * range[0] + x1, width * range[1] + x1];\n }\n return [height * range[0] + y1, height * range[1] + y1];\n }\n\n private _getScrollRange() {\n if (this._sliderLimitRange) {\n return this._sliderLimitRange;\n }\n const { limitRange = [0, 1], direction } = this.attribute as ScrollBarAttributes;\n const [min, max] = clampRange(limitRange, 0, 1);\n const { width, height, x1, y1 } = this._getSliderRenderBounds();\n const sliderSize = this._sliderSize;\n\n return direction === 'horizontal'\n ? clampRange([x1 + min * width, x1 + max * width], x1, width - sliderSize)\n : clampRange([y1 + min * height, y1 + max * height], y1, height - sliderSize);\n }\n\n private _onRailPointerDown = (e: FederatedPointerEvent) => {\n // 将事件坐标转换为实际的滑块位置\n // TODO: 这里有问题,应该拿 viewX viewY,同时 graphic 要提供接口获取它的 相对 view 的坐标\n const { viewX, viewY } = e;\n const { direction, width, height, range } = this.attribute as ScrollBarAttributes;\n const sliderSize = this._sliderSize;\n const [min, max] = this._getScrollRange();\n let currentScrollValue;\n if (direction === 'vertical') {\n const relativeY = viewY - this._viewPosition.y;\n const currentYPos = clamp(relativeY - sliderSize / 2, min, max);\n currentScrollValue = relativeY / height;\n this._slider.setAttribute('y', currentYPos, true);\n } else {\n const relativeX = viewX - this._viewPosition.x;\n const currentXPos = clamp(relativeX - sliderSize / 2, min, max);\n currentScrollValue = relativeX / width;\n this._slider.setAttribute('x', currentXPos, true);\n }\n\n this.setScrollRange(\n [currentScrollValue - (range[1] - range[0]) / 2, currentScrollValue + (range[1] - range[0]) / 2],\n false\n );\n\n if (!this.stage?.autoRender) {\n this.stage?.renderNextFrame();\n }\n };\n\n private _onSliderPointerDown = (e: FederatedPointerEvent) => {\n e.stopPropagation();\n const { direction } = this.attribute as ScrollBarAttributes;\n this._prePos = direction === 'horizontal' ? e.clientX : e.clientY;\n if (global.env === 'browser') {\n global.addEventListener('pointermove', this._onSliderPointerMove);\n global.addEventListener('pointerup', this._onSliderPointerUp);\n } else {\n this._slider.addEventListener('pointermove', this._onSliderPointerMove);\n this._slider.addEventListener('pointerup', this._onSliderPointerUp);\n this._slider.addEventListener('pointerupoutside', this._onSliderPointerUp);\n }\n };\n\n private _onSliderPointerMove = (e: any) => {\n e.stopPropagation();\n\n const { direction } = this.attribute as ScrollBarAttributes;\n let currentScrollValue;\n let currentPos;\n let delta = 0;\n const preScrollRange = this.getScrollRange();\n const { width, height } = this._getSliderRenderBounds();\n if (direction === 'vertical') {\n currentPos = e.clientY;\n delta = currentPos - this._prePos;\n currentScrollValue = delta / height;\n } else {\n currentPos = e.clientX;\n delta = currentPos - this._prePos;\n currentScrollValue = delta / width;\n }\n this.setScrollRange([preScrollRange[0] + currentScrollValue, preScrollRange[1] + currentScrollValue], true);\n this._prePos = currentPos;\n };\n\n private _onSliderPointerUp = (e: any) => {\n e.preventDefault();\n if (global.env === 'browser') {\n global.removeEventListener('pointermove', this._onSliderPointerMove);\n global.removeEventListener('pointerup', this._onSliderPointerUp);\n } else {\n this._slider.removeEventListener('pointermove', this._onSliderPointerMove);\n this._slider.removeEventListener('pointerup', this._onSliderPointerUp);\n this._slider.removeEventListener('pointerupoutside', this._onSliderPointerUp);\n }\n };\n\n private _onChange(detail: any) {\n const changeEvent = new CustomEvent('scroll', detail);\n // FIXME: 需要在 vrender 的事件系统支持\n // @ts-ignore\n changeEvent.manager = this.stage?.eventSystem.manager;\n this.dispatchEvent(changeEvent);\n }\n\n private _reset() {\n this._sliderRenderBounds = null;\n this._sliderLimitRange = null;\n }\n}\n"]}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { IGroupGraphicAttribute, IRectGraphicAttribute } from '@visactor/vrender';
|
|
2
|
+
import type { Direction } from '../interface';
|
|
3
|
+
import { Padding } from '../core/type';
|
|
4
|
+
export interface ScrollBarAttributes extends IGroupGraphicAttribute {
|
|
5
|
+
x: number;
|
|
6
|
+
y: number;
|
|
7
|
+
direction?: Direction;
|
|
8
|
+
width: number;
|
|
9
|
+
height: number;
|
|
10
|
+
round?: boolean;
|
|
11
|
+
railStyle?: Omit<IRectGraphicAttribute, 'width' | 'height'>;
|
|
12
|
+
sliderStyle?: Omit<IRectGraphicAttribute, 'width' | 'height'>;
|
|
13
|
+
padding?: Padding;
|
|
14
|
+
range: [number, number];
|
|
15
|
+
limitRange?: [number, number];
|
|
16
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/scrollbar/type.ts"],"names":[],"mappings":"","file":"type.js","sourcesContent":["import type { IGroupGraphicAttribute, IRectGraphicAttribute } from '@visactor/vrender';\nimport type { Direction } from '../interface';\nimport { Padding } from '../core/type';\nexport interface ScrollBarAttributes extends IGroupGraphicAttribute {\n x: number;\n y: number;\n /**\n * 滚动条的布局方向,默认为 `horizontal`,水平布局。\n * @default horizontal\n */\n direction?: Direction;\n /** 滚动条的宽度。 */\n width: number;\n /** 滚动条的高度。 */\n height: number;\n /** 滑块是否圆角。 */\n round?: boolean;\n /**\n * 滚动条轨道样式。\n */\n railStyle?: Omit<IRectGraphicAttribute, 'width' | 'height'>;\n /**\n * 滚动条滑块样式。\n */\n sliderStyle?: Omit<IRectGraphicAttribute, 'width' | 'height'>;\n /**\n * 滚动条内边距,影响滑轨的实际可用空间 [top, right, bottom, left]\n */\n padding?: Padding;\n /** 滑块当前的可视范围,数值为 0 - 1 */\n range: [number, number];\n /**\n * 滑块限制的滚动范围,数值为 0 - 1\n */\n limitRange?: [number, number];\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/segment/index.ts"],"names":[],"mappings":"AAGA,cAAc,WAAW,CAAC;AAC1B,cAAc,QAAQ,CAAC","file":"index.js","sourcesContent":["/**\n * @description 线,两端可带箭头等 symbol\n */\nexport * from './segment';\nexport * from './type';\n"]}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { ILine, ISymbol } from '@visactor/vrender';
|
|
2
|
+
import { AbstractComponent } from '../core/base';
|
|
3
|
+
import { SegmentAttributes } from './type';
|
|
4
|
+
export declare class Segment extends AbstractComponent<Required<SegmentAttributes>> {
|
|
5
|
+
name: string;
|
|
6
|
+
line: ILine;
|
|
7
|
+
startSymbol?: ISymbol;
|
|
8
|
+
endSymbol?: ISymbol;
|
|
9
|
+
private _startAngle;
|
|
10
|
+
private _endAngle;
|
|
11
|
+
static defaultAttributes: Partial<SegmentAttributes>;
|
|
12
|
+
constructor(attributes: SegmentAttributes);
|
|
13
|
+
protected computeLineAngle(): void;
|
|
14
|
+
protected render(): void;
|
|
15
|
+
private renderSymbol;
|
|
16
|
+
getStartAngle(): number;
|
|
17
|
+
getEndAngle(): number;
|
|
18
|
+
}
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
import { isEmpty, merge } from "@visactor/vutils";
|
|
2
|
+
|
|
3
|
+
import { createSymbol, createLine } from "@visactor/vrender";
|
|
4
|
+
|
|
5
|
+
import { AbstractComponent } from "../core/base";
|
|
6
|
+
|
|
7
|
+
export class Segment extends AbstractComponent {
|
|
8
|
+
constructor(attributes) {
|
|
9
|
+
super(merge({}, Segment.defaultAttributes, attributes)), this.name = "segment";
|
|
10
|
+
}
|
|
11
|
+
computeLineAngle() {
|
|
12
|
+
const {points: points} = this.attribute, start = points[0], startInside = points[1], endInside = points[points.length - 2], end = points[points.length - 1], startVector = [ start.x - startInside.x, start.y - startInside.y ], startAngle = Math.atan2(startVector[1], startVector[0]), endVector = [ end.x - endInside.x, end.y - endInside.y ], endAngle = Math.atan2(endVector[1], endVector[0]);
|
|
13
|
+
this._startAngle = startAngle, this._endAngle = endAngle;
|
|
14
|
+
}
|
|
15
|
+
render() {
|
|
16
|
+
this.removeAllChild();
|
|
17
|
+
const {points: points, startSymbol: startSymbol, endSymbol: endSymbol, lineStyle: lineStyle, state: state} = this.attribute;
|
|
18
|
+
points.length > 1 && this.computeLineAngle();
|
|
19
|
+
const startSymbolShape = this.renderSymbol(startSymbol, "start"), endSymbolShape = this.renderSymbol(endSymbol, "end");
|
|
20
|
+
this.startSymbol = startSymbolShape, this.endSymbol = endSymbolShape;
|
|
21
|
+
let pointsAfterClip = points;
|
|
22
|
+
if (null == startSymbol ? void 0 : startSymbol.visible) {
|
|
23
|
+
const startSize = (null == startSymbol ? void 0 : startSymbol.clip) ? (null == startSymbol ? void 0 : startSymbol.size) || 10 : 0;
|
|
24
|
+
pointsAfterClip = [ {
|
|
25
|
+
x: points[0].x - startSize / 2 * (Math.cos(this._startAngle) || 0),
|
|
26
|
+
y: points[0].y - startSize / 2 * (Math.sin(this._startAngle) || 0)
|
|
27
|
+
}, ...pointsAfterClip.slice(1) ];
|
|
28
|
+
}
|
|
29
|
+
if (null == endSymbol ? void 0 : endSymbol.visible) {
|
|
30
|
+
const endSize = (null == endSymbol ? void 0 : endSymbol.clip) ? (null == endSymbol ? void 0 : endSymbol.size) || 10 : 0, pointsEnd = {
|
|
31
|
+
x: points[points.length - 1].x - endSize / 2 * (Math.cos(this._endAngle) || 0),
|
|
32
|
+
y: points[points.length - 1].y - endSize / 2 * (Math.sin(this._endAngle) || 0)
|
|
33
|
+
};
|
|
34
|
+
pointsAfterClip = [ ...pointsAfterClip.slice(0, pointsAfterClip.length - 1), pointsEnd ];
|
|
35
|
+
}
|
|
36
|
+
const line = createLine(Object.assign({
|
|
37
|
+
points: pointsAfterClip,
|
|
38
|
+
fill: !1
|
|
39
|
+
}, lineStyle));
|
|
40
|
+
line.name = "line", line.id = this._getNodeId("line"), isEmpty(null == state ? void 0 : state.line) || (line.states = state.line),
|
|
41
|
+
this.line = line, this.add(line);
|
|
42
|
+
}
|
|
43
|
+
renderSymbol(attribute, dim) {
|
|
44
|
+
let symbol;
|
|
45
|
+
if (null == attribute ? void 0 : attribute.visible) {
|
|
46
|
+
const startAngle = this._startAngle, endAngle = this._endAngle, {points: points, state: state} = this.attribute, start = points[0], end = points[points.length - 1], {refX: refX = 0, refY: refY = 0, refAngle: refAngle = 0, style: style, symbolType: symbolType, size: size = 12} = attribute;
|
|
47
|
+
let position, rotate;
|
|
48
|
+
"start" === dim ? (position = {
|
|
49
|
+
x: start.x + (startAngle ? refX * Math.cos(startAngle) + refY * Math.cos(startAngle - Math.PI / 2) : 0),
|
|
50
|
+
y: start.y + (startAngle ? refX * Math.sin(startAngle) + refY * Math.sin(startAngle - Math.PI / 2) : 0)
|
|
51
|
+
}, rotate = startAngle + Math.PI / 2) : (position = {
|
|
52
|
+
x: end.x + (endAngle ? refX * Math.cos(endAngle) + refY * Math.cos(endAngle - Math.PI / 2) : 0),
|
|
53
|
+
y: end.y + (endAngle ? refX * Math.sin(endAngle) + refY * Math.sin(endAngle - Math.PI / 2) : 0)
|
|
54
|
+
}, rotate = endAngle + Math.PI / 2), symbol = createSymbol(Object.assign(Object.assign(Object.assign({}, position), {
|
|
55
|
+
symbolType: symbolType,
|
|
56
|
+
size: size,
|
|
57
|
+
angle: rotate + refAngle,
|
|
58
|
+
strokeBoundsBuffer: 0
|
|
59
|
+
}), style)), symbol.name = `${dim}-symbol`, symbol.id = this._getNodeId(`${dim}-symbol`),
|
|
60
|
+
isEmpty(null == state ? void 0 : state.symbol) || (symbol.states = state.symbol),
|
|
61
|
+
this.add(symbol);
|
|
62
|
+
}
|
|
63
|
+
return symbol;
|
|
64
|
+
}
|
|
65
|
+
getStartAngle() {
|
|
66
|
+
return this._startAngle;
|
|
67
|
+
}
|
|
68
|
+
getEndAngle() {
|
|
69
|
+
return this._endAngle;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
Segment.defaultAttributes = {
|
|
74
|
+
lineStyle: {
|
|
75
|
+
lineWidth: 1,
|
|
76
|
+
strokeColor: "#000"
|
|
77
|
+
},
|
|
78
|
+
startSymbol: {
|
|
79
|
+
visible: !1,
|
|
80
|
+
symbolType: "triangle",
|
|
81
|
+
size: 12,
|
|
82
|
+
refX: 0,
|
|
83
|
+
refY: 0,
|
|
84
|
+
refAngle: 0,
|
|
85
|
+
style: {
|
|
86
|
+
fillColor: "#000",
|
|
87
|
+
zIndex: 1
|
|
88
|
+
}
|
|
89
|
+
},
|
|
90
|
+
endSymbol: {
|
|
91
|
+
visible: !1,
|
|
92
|
+
symbolType: "triangle",
|
|
93
|
+
size: 12,
|
|
94
|
+
refX: 0,
|
|
95
|
+
refY: 0,
|
|
96
|
+
refAngle: 0,
|
|
97
|
+
style: {
|
|
98
|
+
fillColor: "#000",
|
|
99
|
+
zIndex: 1
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
};
|
|
103
|
+
//# sourceMappingURL=segment.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/segment/segment.ts"],"names":[],"mappings":"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","file":"segment.js","sourcesContent":["/**\n * @description 标签组件\n */\nimport { isEmpty, merge } from '@visactor/vutils';\nimport { createSymbol, ILine, ISymbol, createLine } from '@visactor/vrender';\nimport { AbstractComponent } from '../core/base';\nimport { SegmentAttributes, SymbolAttributes } from './type';\n\nexport class Segment extends AbstractComponent<Required<SegmentAttributes>> {\n name = 'segment';\n\n line!: ILine;\n startSymbol?: ISymbol;\n endSymbol?: ISymbol;\n\n private _startAngle!: number;\n private _endAngle!: number;\n\n static defaultAttributes: Partial<SegmentAttributes> = {\n lineStyle: {\n lineWidth: 1,\n strokeColor: '#000'\n },\n startSymbol: {\n visible: false,\n symbolType: 'triangle',\n size: 12,\n refX: 0,\n refY: 0,\n refAngle: 0,\n style: {\n fillColor: '#000',\n zIndex: 1 // 默认 symbol 绘制在 line 上面\n }\n },\n endSymbol: {\n visible: false,\n symbolType: 'triangle',\n size: 12,\n refX: 0,\n refY: 0,\n refAngle: 0,\n style: {\n fillColor: '#000',\n zIndex: 1 // 默认 symbol 绘制在 line 上面\n }\n }\n };\n\n constructor(attributes: SegmentAttributes) {\n super(merge({}, Segment.defaultAttributes, attributes));\n }\n\n protected computeLineAngle() {\n const { points } = this.attribute as SegmentAttributes;\n const start = points[0];\n const startInside = points[1];\n const endInside = points[points.length - 2];\n const end = points[points.length - 1];\n const startVector = [start.x - startInside.x, start.y - startInside.y]; // 起点正方向向量\n const startAngle = Math.atan2(startVector[1], startVector[0]); // 起点正方向角度\n const endVector = [end.x - endInside.x, end.y - endInside.y]; // 终点正方向向量\n const endAngle = Math.atan2(endVector[1], endVector[0]); // 终点正方向角度\n\n this._startAngle = startAngle;\n this._endAngle = endAngle;\n }\n protected render() {\n this.removeAllChild();\n const { points, startSymbol, endSymbol, lineStyle, state } = this.attribute as SegmentAttributes;\n\n // 计算线的起点和终点角度\n // 计算角度的原因:\n // 1. segment symbol的自动旋转提供参数\n // 2. 使用segment时,需要根据line的角度对附加元素进行自动旋转(比如:markLine的标签, markPoint的装饰线)\n if (points.length > 1) {\n this.computeLineAngle();\n }\n\n // 绘制start和end symbol\n const startSymbolShape = this.renderSymbol(startSymbol as SymbolAttributes, 'start');\n const endSymbolShape = this.renderSymbol(endSymbol as SymbolAttributes, 'end');\n\n this.startSymbol = startSymbolShape;\n this.endSymbol = endSymbolShape;\n\n // 通过改变line起点和终点的方式达到symbol在fill为false的情况下,也可以遮盖line的效果\n let pointsAfterClip = points;\n if (startSymbol?.visible) {\n const startSize = startSymbol?.clip ? startSymbol?.size || 10 : 0;\n const pointsStart = {\n x: points[0].x - (startSize / 2) * (Math.cos(this._startAngle) || 0),\n y: points[0].y - (startSize / 2) * (Math.sin(this._startAngle) || 0)\n };\n pointsAfterClip = [pointsStart, ...pointsAfterClip.slice(1)];\n }\n if (endSymbol?.visible) {\n const endSize = endSymbol?.clip ? endSymbol?.size || 10 : 0;\n const pointsEnd = {\n x: points[points.length - 1].x - (endSize / 2) * (Math.cos(this._endAngle) || 0),\n y: points[points.length - 1].y - (endSize / 2) * (Math.sin(this._endAngle) || 0)\n };\n pointsAfterClip = [...pointsAfterClip.slice(0, pointsAfterClip.length - 1), pointsEnd];\n }\n\n const line = createLine({\n points: pointsAfterClip,\n fill: false,\n ...lineStyle\n });\n\n line.name = 'line';\n line.id = this._getNodeId('line');\n if (!isEmpty(state?.line)) {\n line.states = state.line;\n }\n this.line = line;\n this.add(line);\n }\n\n private renderSymbol(attribute: SymbolAttributes, dim: string): ISymbol | undefined {\n let symbol;\n if (attribute?.visible) {\n const startAngle = this._startAngle;\n const endAngle = this._endAngle;\n const { points, state } = this.attribute as SegmentAttributes;\n const start = points[0];\n const end = points[points.length - 1];\n const { refX = 0, refY = 0, refAngle = 0, style, symbolType, size = 12 } = attribute;\n let position;\n let rotate;\n if (dim === 'start') {\n position = {\n x: start.x + (startAngle ? refX * Math.cos(startAngle) + refY * Math.cos(startAngle - Math.PI / 2) : 0),\n y: start.y + (startAngle ? refX * Math.sin(startAngle) + refY * Math.sin(startAngle - Math.PI / 2) : 0)\n };\n rotate = startAngle + Math.PI / 2; // @chensiji - 加Math.PI / 2是因为:默认symbol的包围盒垂直于line,所以在做自动旋转时需要在line正方向基础上做90度偏移\n } else {\n position = {\n x: end.x + (endAngle ? refX * Math.cos(endAngle) + refY * Math.cos(endAngle - Math.PI / 2) : 0),\n y: end.y + (endAngle ? refX * Math.sin(endAngle) + refY * Math.sin(endAngle - Math.PI / 2) : 0)\n };\n rotate = endAngle + Math.PI / 2;\n }\n\n symbol = createSymbol({\n ...position,\n symbolType: symbolType as string,\n size,\n angle: rotate + refAngle,\n strokeBoundsBuffer: 0,\n ...style\n });\n symbol.name = `${dim}-symbol`;\n symbol.id = this._getNodeId(`${dim}-symbol`);\n\n if (!isEmpty(state?.symbol)) {\n symbol.states = state.symbol;\n }\n\n this.add(symbol);\n }\n return symbol;\n }\n\n /**\n * 外部获取segement起点正方向\n */\n getStartAngle() {\n return this._startAngle;\n }\n\n /**\n * 外部获取segement终点正方向\n */\n getEndAngle() {\n return this._endAngle;\n }\n}\n"]}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { IGraphicAttribute, IGroupGraphicAttribute, ILineGraphicAttribute, ISymbolGraphicAttribute, SymbolType } from '@visactor/vrender';
|
|
2
|
+
import { Point, State } from '../core/type';
|
|
3
|
+
export type SymbolAttributes = {
|
|
4
|
+
visible: boolean;
|
|
5
|
+
symbolType?: SymbolType;
|
|
6
|
+
size?: number;
|
|
7
|
+
refX?: number;
|
|
8
|
+
refY?: number;
|
|
9
|
+
refAngle?: number;
|
|
10
|
+
clip?: boolean;
|
|
11
|
+
style?: Partial<IGraphicAttribute>;
|
|
12
|
+
};
|
|
13
|
+
export interface SegmentAttributes extends IGroupGraphicAttribute {
|
|
14
|
+
points: Point[];
|
|
15
|
+
startSymbol?: SymbolAttributes;
|
|
16
|
+
endSymbol?: SymbolAttributes;
|
|
17
|
+
lineStyle?: Partial<ILineGraphicAttribute>;
|
|
18
|
+
state?: {
|
|
19
|
+
line?: State<Partial<ILineGraphicAttribute>>;
|
|
20
|
+
symbol?: State<Partial<ISymbolGraphicAttribute>>;
|
|
21
|
+
};
|
|
22
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/segment/type.ts"],"names":[],"mappings":"","file":"type.js","sourcesContent":["import {\n IGraphicAttribute,\n IGroupGraphicAttribute,\n ILineGraphicAttribute,\n ISymbolGraphicAttribute,\n SymbolType\n} from '@visactor/vrender';\nimport { Point, State } from '../core/type';\n\nexport type SymbolAttributes = {\n /** 是否展示 symbol */\n visible: boolean;\n /**\n * symbol 形状,默认为带左右方向的箭头\n */\n symbolType?: SymbolType;\n /**\n * symbol 大小\n */\n size?: number;\n /**\n * symbol 相对line平行方向上的偏移\n */\n refX?: number;\n /**\n * symbol 相对line正交方向上的偏移\n */\n refY?: number;\n /**\n * symbol 相对默认角度的偏移\n * @description (@chensiji: 默认角度为笛卡尔坐标系y正方向,即默认symbol包围盒的角度为笛卡尔坐标系y正方向, 做自动旋转时, 会在此基础上,将包围盒转换到line平行方向上。)\n */\n refAngle?: number;\n /**\n * symbol 是否clip line,即当symbol fill为false时,line在symbol内部的部分是否展示\n * @defalut false\n */\n clip?: boolean;\n /**\n * symbol 样式配置\n */\n style?: Partial<IGraphicAttribute>;\n};\n\nexport interface SegmentAttributes extends IGroupGraphicAttribute {\n points: Point[];\n /** 轴线起始点 symbol 配置 */\n startSymbol?: SymbolAttributes;\n /** 轴线末端 symbol 配置 */\n endSymbol?: SymbolAttributes;\n /**\n * 线样式配置\n */\n lineStyle?: Partial<ILineGraphicAttribute>;\n\n state?: {\n line?: State<Partial<ILineGraphicAttribute>>;\n symbol?: State<Partial<ISymbolGraphicAttribute>>;\n };\n}\n"]}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export declare enum SLIDER_ELEMENT_NAME {
|
|
2
|
+
innerView = "innerView",
|
|
3
|
+
railContainer = "sliderRailContainer",
|
|
4
|
+
rail = "sliderRail",
|
|
5
|
+
startText = "sliderStartText",
|
|
6
|
+
endText = "sliderEndText",
|
|
7
|
+
startHandler = "sliderStartHandler",
|
|
8
|
+
startHandlerText = "startHandlerText",
|
|
9
|
+
endHandler = "sliderEndHandler",
|
|
10
|
+
endHandlerText = "sliderEndHandlerText",
|
|
11
|
+
track = "sliderTrack",
|
|
12
|
+
trackContainer = "sliderTrackContainer"
|
|
13
|
+
}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export var SLIDER_ELEMENT_NAME;
|
|
2
|
+
|
|
3
|
+
!function(SLIDER_ELEMENT_NAME) {
|
|
4
|
+
SLIDER_ELEMENT_NAME.innerView = "innerView", SLIDER_ELEMENT_NAME.railContainer = "sliderRailContainer",
|
|
5
|
+
SLIDER_ELEMENT_NAME.rail = "sliderRail", SLIDER_ELEMENT_NAME.startText = "sliderStartText",
|
|
6
|
+
SLIDER_ELEMENT_NAME.endText = "sliderEndText", SLIDER_ELEMENT_NAME.startHandler = "sliderStartHandler",
|
|
7
|
+
SLIDER_ELEMENT_NAME.startHandlerText = "startHandlerText", SLIDER_ELEMENT_NAME.endHandler = "sliderEndHandler",
|
|
8
|
+
SLIDER_ELEMENT_NAME.endHandlerText = "sliderEndHandlerText", SLIDER_ELEMENT_NAME.track = "sliderTrack",
|
|
9
|
+
SLIDER_ELEMENT_NAME.trackContainer = "sliderTrackContainer";
|
|
10
|
+
}(SLIDER_ELEMENT_NAME || (SLIDER_ELEMENT_NAME = {}));
|
|
11
|
+
//# sourceMappingURL=constant.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/slider/constant.ts"],"names":[],"mappings":"AAAA,MAAM,CAAN,IAAY,mBAeX;AAfD,WAAY,mBAAmB;IAC7B,8CAAuB,CAAA;IACvB,4DAAqC,CAAA;IACrC,0CAAmB,CAAA;IACnB,oDAA6B,CAAA;IAC7B,gDAAyB,CAAA;IAEzB,0DAAmC,CAAA;IACnC,4DAAqC,CAAA;IACrC,sDAA+B,CAAA;IAC/B,8DAAuC,CAAA;IAEvC,4CAAqB,CAAA;IAErB,8DAAuC,CAAA;AACzC,CAAC,EAfW,mBAAmB,KAAnB,mBAAmB,QAe9B","file":"constant.js","sourcesContent":["export enum SLIDER_ELEMENT_NAME {\n innerView = 'innerView',\n railContainer = 'sliderRailContainer',\n rail = 'sliderRail',\n startText = 'sliderStartText',\n endText = 'sliderEndText',\n\n startHandler = 'sliderStartHandler',\n startHandlerText = 'startHandlerText',\n endHandler = 'sliderEndHandler',\n endHandlerText = 'sliderEndHandlerText',\n\n track = 'sliderTrack',\n\n trackContainer = 'sliderTrackContainer'\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/slider/index.ts"],"names":[],"mappings":"AAAA,cAAc,QAAQ,CAAC;AACvB,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC","file":"index.js","sourcesContent":["export * from './type';\nexport * from './slider';\nexport * from './constant';\n"]}
|