bbj-screen-widget 2.4.61 → 2.4.62
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/core/package.json +2 -10
- package/core/src/service/baidu-map.service.ts +107 -0
- package/karma.conf.js +32 -0
- package/ng-package.json +59 -0
- package/package.json +4 -13
- package/src/lib/announcement/announcement.component.html +3 -0
- package/src/lib/announcement/announcement.component.less +5 -0
- package/src/lib/announcement/announcement.component.spec.ts +25 -0
- package/src/lib/announcement/announcement.component.ts +55 -0
- package/src/lib/announcement/announcement.module.ts +19 -0
- package/src/lib/audio/audio.component.html +6 -0
- package/src/lib/audio/audio.component.less +12 -0
- package/src/lib/audio/audio.component.spec.ts +25 -0
- package/src/lib/audio/audio.component.ts +167 -0
- package/src/lib/audio/audio.module.ts +15 -0
- package/src/lib/background/background.component.html +1 -0
- package/src/lib/background/background.component.less +6 -0
- package/src/lib/background/background.component.spec.ts +25 -0
- package/src/lib/background/background.component.ts +33 -0
- package/src/lib/background/background.module.ts +14 -0
- package/src/lib/bar-chart-three-d/bar-chart-three-d.component.html +1 -0
- package/src/lib/bar-chart-three-d/bar-chart-three-d.component.less +8 -0
- package/src/lib/bar-chart-three-d/bar-chart-three-d.component.spec.ts +25 -0
- package/src/lib/bar-chart-three-d/bar-chart-three-d.component.ts +271 -0
- package/src/lib/bar-chart-three-d/bar-chart-three-d.module.ts +15 -0
- package/src/lib/basic-bar-chart/basic-bar-chart.component.html +7 -0
- package/src/lib/basic-bar-chart/basic-bar-chart.component.less +5 -0
- package/src/lib/basic-bar-chart/basic-bar-chart.component.spec.ts +25 -0
- package/src/lib/basic-bar-chart/basic-bar-chart.component.ts +493 -0
- package/src/lib/basic-bar-chart/basic-bar-chart.module.ts +21 -0
- package/src/lib/basic-line-chart/basic-line-chart.component.html +7 -0
- package/src/lib/basic-line-chart/basic-line-chart.component.less +8 -0
- package/src/lib/basic-line-chart/basic-line-chart.component.spec.ts +25 -0
- package/src/lib/basic-line-chart/basic-line-chart.component.ts +654 -0
- package/src/lib/basic-line-chart/basic-line-chart.module.ts +15 -0
- package/src/lib/basic-pie-chart/basic-pie-chart.component.html +7 -0
- package/src/lib/basic-pie-chart/basic-pie-chart.component.less +8 -0
- package/src/lib/basic-pie-chart/basic-pie-chart.component.spec.ts +25 -0
- package/src/lib/basic-pie-chart/basic-pie-chart.component.ts +439 -0
- package/src/lib/basic-pie-chart/basic-pie-chart.module.ts +15 -0
- package/src/lib/basic-planimetric-map/basic-planimetric-map.component.html +2 -0
- package/src/lib/basic-planimetric-map/basic-planimetric-map.component.less +9 -0
- package/src/lib/basic-planimetric-map/basic-planimetric-map.component.spec.ts +25 -0
- package/src/lib/basic-planimetric-map/basic-planimetric-map.component.ts +211 -0
- package/src/lib/basic-planimetric-map/basic-planimetric-map.module.ts +16 -0
- package/src/lib/breathing-bubble-layer/breathing-bubble-layer.component.css +0 -0
- package/src/lib/breathing-bubble-layer/breathing-bubble-layer.component.html +1 -0
- package/src/lib/breathing-bubble-layer/breathing-bubble-layer.component.spec.ts +25 -0
- package/src/lib/breathing-bubble-layer/breathing-bubble-layer.component.ts +487 -0
- package/src/lib/breathing-bubble-layer/breathing-bubble-layer.module.ts +14 -0
- package/src/lib/bubble-chart/bubble-chart.component.html +7 -0
- package/src/lib/bubble-chart/bubble-chart.component.less +8 -0
- package/src/lib/bubble-chart/bubble-chart.component.spec.ts +25 -0
- package/src/lib/bubble-chart/bubble-chart.component.ts +307 -0
- package/src/lib/bubble-chart/bubble-chart.module.ts +15 -0
- package/src/lib/bulletin-board/bulletin-board.component.html +15 -0
- package/src/lib/bulletin-board/bulletin-board.component.less +27 -0
- package/src/lib/bulletin-board/bulletin-board.component.spec.ts +25 -0
- package/src/lib/bulletin-board/bulletin-board.component.ts +127 -0
- package/src/lib/bulletin-board/bulletin-board.module.ts +20 -0
- package/src/lib/button/button.component.html +1 -0
- package/src/lib/button/button.component.less +17 -0
- package/src/lib/button/button.component.spec.ts +25 -0
- package/src/lib/button/button.component.ts +137 -0
- package/src/lib/button/button.module.ts +16 -0
- package/src/lib/calendar/background-events/background-events.component.html +0 -0
- package/src/lib/calendar/background-events/background-events.component.less +0 -0
- package/src/lib/calendar/background-events/background-events.component.spec.ts +25 -0
- package/src/lib/calendar/background-events/background-events.component.ts +51 -0
- package/src/lib/calendar/calendar-events-child.ts +27 -0
- package/src/lib/calendar/calendar.component.html +2 -0
- package/src/lib/calendar/calendar.component.less +14 -0
- package/src/lib/calendar/calendar.component.spec.ts +25 -0
- package/src/lib/calendar/calendar.component.ts +151 -0
- package/src/lib/calendar/calendar.module.ts +27 -0
- package/src/lib/calendar/calendar.util.ts +14 -0
- package/src/lib/calendar/events/events.component.html +0 -0
- package/src/lib/calendar/events/events.component.less +0 -0
- package/src/lib/calendar/events/events.component.spec.ts +25 -0
- package/src/lib/calendar/events/events.component.ts +61 -0
- package/src/lib/checkbox/checkbox.component.html +61 -0
- package/src/lib/checkbox/checkbox.component.less +104 -0
- package/src/lib/checkbox/checkbox.component.spec.ts +25 -0
- package/src/lib/checkbox/checkbox.component.ts +292 -0
- package/src/lib/checkbox/checkbox.module.ts +16 -0
- package/src/lib/cross-table/cross-table.component.html +16 -0
- package/src/lib/cross-table/cross-table.component.less +75 -0
- package/src/lib/cross-table/cross-table.component.spec.ts +25 -0
- package/src/lib/cross-table/cross-table.component.ts +257 -0
- package/src/lib/cross-table/cross-table.module.ts +18 -0
- package/src/lib/custom-baidu-map/baidu-marker-layer/baidu-marker-layer.component.html +32 -0
- package/src/lib/custom-baidu-map/baidu-marker-layer/baidu-marker-layer.component.less +11 -0
- package/src/lib/custom-baidu-map/baidu-marker-layer/baidu-marker-layer.component.spec.ts +25 -0
- package/src/lib/custom-baidu-map/baidu-marker-layer/baidu-marker-layer.component.ts +689 -0
- package/src/lib/custom-baidu-map/baidu-polyline-layer/baidu-polyline-layer.component.html +0 -0
- package/src/lib/custom-baidu-map/baidu-polyline-layer/baidu-polyline-layer.component.less +0 -0
- package/src/lib/custom-baidu-map/baidu-polyline-layer/baidu-polyline-layer.component.spec.ts +25 -0
- package/src/lib/custom-baidu-map/baidu-polyline-layer/baidu-polyline-layer.component.ts +248 -0
- package/src/lib/custom-baidu-map/base-layer.ts +50 -0
- package/src/lib/custom-baidu-map/custom-baidu-map.component.html +15 -0
- package/src/lib/custom-baidu-map/custom-baidu-map.component.less +69 -0
- package/src/lib/custom-baidu-map/custom-baidu-map.component.spec.ts +25 -0
- package/src/lib/custom-baidu-map/custom-baidu-map.component.ts +652 -0
- package/src/lib/custom-baidu-map/custom-baidu-map.module.ts +41 -0
- package/src/lib/custom-baidu-map/typhoon-area-layer/typhoon-area-layer.component.html +0 -0
- package/src/lib/custom-baidu-map/typhoon-area-layer/typhoon-area-layer.component.less +0 -0
- package/src/lib/custom-baidu-map/typhoon-area-layer/typhoon-area-layer.component.spec.ts +25 -0
- package/src/lib/custom-baidu-map/typhoon-area-layer/typhoon-area-layer.component.ts +99 -0
- package/src/lib/custom-baidu-map/wind-layer/wind-layer.component.html +0 -0
- package/src/lib/custom-baidu-map/wind-layer/wind-layer.component.less +0 -0
- package/src/lib/custom-baidu-map/wind-layer/wind-layer.component.spec.ts +25 -0
- package/src/lib/custom-baidu-map/wind-layer/wind-layer.component.ts +404 -0
- package/src/lib/data-map/data-map.component.html +9 -0
- package/src/lib/data-map/data-map.component.less +0 -0
- package/src/lib/data-map/data-map.component.spec.ts +25 -0
- package/src/lib/data-map/data-map.component.ts +105 -0
- package/src/lib/data-map/data-map.module.ts +15 -0
- package/src/lib/date-picker/date-picker.component.html +32 -0
- package/src/lib/date-picker/date-picker.component.less +20 -0
- package/src/lib/date-picker/date-picker.component.spec.ts +25 -0
- package/src/lib/date-picker/date-picker.component.ts +389 -0
- package/src/lib/date-picker/date-picker.module.ts +18 -0
- package/src/lib/drop-down-detail-list/drop-down-detail-list.component.html +25 -0
- package/src/lib/drop-down-detail-list/drop-down-detail-list.component.less +35 -0
- package/src/lib/drop-down-detail-list/drop-down-detail-list.component.spec.ts +25 -0
- package/src/lib/drop-down-detail-list/drop-down-detail-list.component.ts +117 -0
- package/src/lib/drop-down-detail-list/drop-down-detail-list.module.ts +15 -0
- package/src/lib/dynamic-list/dynamic-list.component.html +15 -0
- package/src/lib/dynamic-list/dynamic-list.component.less +31 -0
- package/src/lib/dynamic-list/dynamic-list.component.spec.ts +25 -0
- package/src/lib/dynamic-list/dynamic-list.component.ts +57 -0
- package/src/lib/dynamic-list/dynamic-list.module.ts +15 -0
- package/src/lib/funnel-chart/funnel-chart.component.html +7 -0
- package/src/lib/funnel-chart/funnel-chart.component.less +8 -0
- package/src/lib/funnel-chart/funnel-chart.component.spec.ts +25 -0
- package/src/lib/funnel-chart/funnel-chart.component.ts +198 -0
- package/src/lib/funnel-chart/funnel-chart.module.ts +15 -0
- package/src/lib/gantt/gantt.component.html +10 -0
- package/src/lib/gantt/gantt.component.less +76 -0
- package/src/lib/gantt/gantt.component.spec.ts +25 -0
- package/src/lib/gantt/gantt.component.ts +213 -0
- package/src/lib/gantt/gantt.module.ts +37 -0
- package/src/lib/gauge/gauge.component.html +1 -0
- package/src/lib/gauge/gauge.component.less +8 -0
- package/src/lib/gauge/gauge.component.spec.ts +25 -0
- package/src/lib/gauge/gauge.component.ts +268 -0
- package/src/lib/gauge/gauge.module.ts +15 -0
- package/src/lib/gauge-progress/gauge-progress.component.html +29 -0
- package/src/lib/gauge-progress/gauge-progress.component.less +51 -0
- package/src/lib/gauge-progress/gauge-progress.component.ts +293 -0
- package/src/lib/gauge-progress/gauge.module.ts +17 -0
- package/src/lib/general-text/general-text.component.html +7 -0
- package/src/lib/general-text/general-text.component.less +8 -0
- package/src/lib/general-text/general-text.component.spec.ts +25 -0
- package/src/lib/general-text/general-text.component.ts +114 -0
- package/src/lib/general-text/general-text.module.ts +15 -0
- package/src/lib/iconfont/icon.ts +198 -0
- package/src/lib/iconfont/iconfont.component.html +4 -0
- package/src/lib/iconfont/iconfont.component.less +5 -0
- package/src/lib/iconfont/iconfont.component.spec.ts +25 -0
- package/src/lib/iconfont/iconfont.component.ts +42 -0
- package/src/lib/iconfont/iconfont.module.ts +15 -0
- package/src/lib/iframe/iframe.component.html +1 -0
- package/src/lib/iframe/iframe.component.less +13 -0
- package/src/lib/iframe/iframe.component.spec.ts +25 -0
- package/src/lib/iframe/iframe.component.ts +34 -0
- package/src/lib/iframe/iframe.module.ts +15 -0
- package/src/lib/image/image.component.html +2 -0
- package/src/lib/image/image.component.less +13 -0
- package/src/lib/image/image.component.spec.ts +25 -0
- package/src/lib/image/image.component.ts +79 -0
- package/src/lib/image/image.module.ts +14 -0
- package/src/lib/item-swiper/item-swiper.component.html +48 -0
- package/src/lib/item-swiper/item-swiper.component.less +75 -0
- package/src/lib/item-swiper/item-swiper.component.spec.ts +25 -0
- package/src/lib/item-swiper/item-swiper.component.ts +277 -0
- package/src/lib/item-swiper/item-swiper.module.ts +17 -0
- package/src/lib/line-bar-chart/line-bar-chart.component.html +7 -0
- package/src/lib/line-bar-chart/line-bar-chart.component.less +3 -0
- package/src/lib/line-bar-chart/line-bar-chart.component.spec.ts +25 -0
- package/src/lib/line-bar-chart/line-bar-chart.component.ts +346 -0
- package/src/lib/line-bar-chart/line-bar-chart.module.ts +15 -0
- package/src/lib/line-light-flow/line-light-flow.component.css +0 -0
- package/src/lib/line-light-flow/line-light-flow.component.html +3 -0
- package/src/lib/line-light-flow/line-light-flow.component.spec.ts +25 -0
- package/src/lib/line-light-flow/line-light-flow.component.ts +274 -0
- package/src/lib/line-light-flow/line-light-flow.module.ts +21 -0
- package/src/lib/liquid-fill/liquid-fill.component.html +1 -0
- package/src/lib/liquid-fill/liquid-fill.component.less +8 -0
- package/src/lib/liquid-fill/liquid-fill.component.spec.ts +25 -0
- package/src/lib/liquid-fill/liquid-fill.component.ts +127 -0
- package/src/lib/liquid-fill/liquid-fill.module.ts +15 -0
- package/src/lib/marquee/marquee.component.html +5 -0
- package/src/lib/marquee/marquee.component.less +9 -0
- package/src/lib/marquee/marquee.component.spec.ts +25 -0
- package/src/lib/marquee/marquee.component.ts +84 -0
- package/src/lib/marquee/marquee.module.ts +14 -0
- package/src/lib/mip-anim/mip-anim.component.html +1 -0
- package/src/lib/mip-anim/mip-anim.component.less +7 -0
- package/src/lib/mip-anim/mip-anim.component.spec.ts +25 -0
- package/src/lib/mip-anim/mip-anim.component.ts +18 -0
- package/src/lib/mip-anim/mip-anim.module.ts +14 -0
- package/src/lib/multi-title-gauge/multi-title-gauge.component.html +1 -0
- package/src/lib/multi-title-gauge/multi-title-gauge.component.less +9 -0
- package/src/lib/multi-title-gauge/multi-title-gauge.component.spec.ts +25 -0
- package/src/lib/multi-title-gauge/multi-title-gauge.component.ts +231 -0
- package/src/lib/multi-title-gauge/multi-title-gauge.module.ts +19 -0
- package/src/lib/number-flop/number-flop.component.html +31 -0
- package/src/lib/number-flop/number-flop.component.less +155 -0
- package/src/lib/number-flop/number-flop.component.spec.ts +25 -0
- package/src/lib/number-flop/number-flop.component.ts +96 -0
- package/src/lib/number-flop/number-flop.module.ts +14 -0
- package/src/lib/parent-container/parent-container.component.html +0 -0
- package/src/lib/parent-container/parent-container.component.less +0 -0
- package/src/lib/parent-container/parent-container.component.spec.ts +25 -0
- package/src/lib/parent-container/parent-container.component.ts +21 -0
- package/src/lib/parent-container/parent-container.module.ts +14 -0
- package/src/lib/percent-pie-chart/percent-pie-chart.component.html +8 -0
- package/src/lib/percent-pie-chart/percent-pie-chart.component.less +8 -0
- package/src/lib/percent-pie-chart/percent-pie-chart.component.spec.ts +25 -0
- package/src/lib/percent-pie-chart/percent-pie-chart.component.ts +213 -0
- package/src/lib/percent-pie-chart/percent-pie-chart.module.ts +15 -0
- package/src/lib/pie3d-chart/pie3d-chart.component.html +1 -0
- package/src/lib/pie3d-chart/pie3d-chart.component.less +9 -0
- package/src/lib/pie3d-chart/pie3d-chart.component.spec.ts +25 -0
- package/src/lib/pie3d-chart/pie3d-chart.component.ts +278 -0
- package/src/lib/pie3d-chart/pie3d-chart.module.ts +16 -0
- package/src/lib/planimetric-map2d/fly-line-layer/fly-line-layer.component.html +0 -0
- package/src/lib/planimetric-map2d/fly-line-layer/fly-line-layer.component.less +0 -0
- package/src/lib/planimetric-map2d/fly-line-layer/fly-line-layer.component.spec.ts +25 -0
- package/src/lib/planimetric-map2d/fly-line-layer/fly-line-layer.component.ts +411 -0
- package/src/lib/planimetric-map2d/fly-line-layer/fly-line-layer.module.ts +13 -0
- package/src/lib/planimetric-map2d/map2d-mark-layer/map2d-mark-layer.component.html +1 -0
- package/src/lib/planimetric-map2d/map2d-mark-layer/map2d-mark-layer.component.less +0 -0
- package/src/lib/planimetric-map2d/map2d-mark-layer/map2d-mark-layer.component.spec.ts +25 -0
- package/src/lib/planimetric-map2d/map2d-mark-layer/map2d-mark-layer.component.ts +235 -0
- package/src/lib/planimetric-map2d/map2d-mark-layer/map2d-mark-layer.module.ts +16 -0
- package/src/lib/planimetric-map2d/map2d-polyline-layer/map2d-polyline-layer.component.html +0 -0
- package/src/lib/planimetric-map2d/map2d-polyline-layer/map2d-polyline-layer.component.less +0 -0
- package/src/lib/planimetric-map2d/map2d-polyline-layer/map2d-polyline-layer.component.spec.ts +25 -0
- package/src/lib/planimetric-map2d/map2d-polyline-layer/map2d-polyline-layer.component.ts +107 -0
- package/src/lib/planimetric-map2d/map2d-polyline-layer/map2d-polyline-layer.module.ts +17 -0
- package/src/lib/planimetric-map2d/map2d-visual-layer/map2d-visual-layer.component.html +0 -0
- package/src/lib/planimetric-map2d/map2d-visual-layer/map2d-visual-layer.component.less +0 -0
- package/src/lib/planimetric-map2d/map2d-visual-layer/map2d-visual-layer.component.spec.ts +25 -0
- package/src/lib/planimetric-map2d/map2d-visual-layer/map2d-visual-layer.component.ts +337 -0
- package/src/lib/planimetric-map2d/map2d-visual-layer/map2d-visual-layer.module.ts +18 -0
- package/src/lib/planimetric-map2d/planimetric-map2d.component.html +11 -0
- package/src/lib/planimetric-map2d/planimetric-map2d.component.less +9 -0
- package/src/lib/planimetric-map2d/planimetric-map2d.component.spec.ts +25 -0
- package/src/lib/planimetric-map2d/planimetric-map2d.component.ts +690 -0
- package/src/lib/planimetric-map2d/planimetric-map2d.module.ts +29 -0
- package/src/lib/planimetric-map3d/map3d-line-layer/map3d-line-layer.component.html +0 -0
- package/src/lib/planimetric-map3d/map3d-line-layer/map3d-line-layer.component.less +0 -0
- package/src/lib/planimetric-map3d/map3d-line-layer/map3d-line-layer.component.spec.ts +25 -0
- package/src/lib/planimetric-map3d/map3d-line-layer/map3d-line-layer.component.ts +123 -0
- package/src/lib/planimetric-map3d/map3d-line-layer/map3d-line-layer.module.ts +14 -0
- package/src/lib/planimetric-map3d/map3d-mark-layer/map3d-mark-layer.component.html +0 -0
- package/src/lib/planimetric-map3d/map3d-mark-layer/map3d-mark-layer.component.less +0 -0
- package/src/lib/planimetric-map3d/map3d-mark-layer/map3d-mark-layer.component.spec.ts +25 -0
- package/src/lib/planimetric-map3d/map3d-mark-layer/map3d-mark-layer.component.ts +229 -0
- package/src/lib/planimetric-map3d/map3d-mark-layer/map3d-mark-layer.module.ts +14 -0
- package/src/lib/planimetric-map3d/planimetric-map3d.component.html +2 -0
- package/src/lib/planimetric-map3d/planimetric-map3d.component.less +10 -0
- package/src/lib/planimetric-map3d/planimetric-map3d.component.spec.ts +25 -0
- package/src/lib/planimetric-map3d/planimetric-map3d.component.ts +227 -0
- package/src/lib/planimetric-map3d/planimetric-map3d.module.ts +17 -0
- package/src/lib/radar-chart/radar-chart.component.html +7 -0
- package/src/lib/radar-chart/radar-chart.component.less +8 -0
- package/src/lib/radar-chart/radar-chart.component.spec.ts +25 -0
- package/src/lib/radar-chart/radar-chart.component.ts +219 -0
- package/src/lib/radar-chart/radar-chart.module.ts +15 -0
- package/src/lib/radio/radio.component.html +18 -0
- package/src/lib/radio/radio.component.less +61 -0
- package/src/lib/radio/radio.component.spec.ts +25 -0
- package/src/lib/radio/radio.component.ts +116 -0
- package/src/lib/radio/radio.module.ts +16 -0
- package/src/lib/rate/rate.component.html +16 -0
- package/src/lib/rate/rate.component.less +39 -0
- package/src/lib/rate/rate.component.spec.ts +25 -0
- package/src/lib/rate/rate.component.ts +40 -0
- package/src/lib/rate/rate.module.ts +18 -0
- package/src/lib/scatter3d/scatter3d.component.html +1 -0
- package/src/lib/scatter3d/scatter3d.component.less +8 -0
- package/src/lib/scatter3d/scatter3d.component.spec.ts +25 -0
- package/src/lib/scatter3d/scatter3d.component.ts +129 -0
- package/src/lib/scatter3d/scatter3d.module.ts +15 -0
- package/src/lib/screen-widget.module.ts +592 -0
- package/src/lib/search/search.component.html +30 -0
- package/src/lib/search/search.component.less +30 -0
- package/src/lib/search/search.component.spec.ts +25 -0
- package/src/lib/search/search.component.ts +103 -0
- package/src/lib/search/search.module.ts +22 -0
- package/src/lib/select/select.component.html +30 -0
- package/src/lib/select/select.component.less +117 -0
- package/src/lib/select/select.component.spec.ts +25 -0
- package/src/lib/select/select.component.ts +297 -0
- package/src/lib/select/select.module.ts +18 -0
- package/src/lib/shape/shape.component.html +39 -0
- package/src/lib/shape/shape.component.less +8 -0
- package/src/lib/shape/shape.component.spec.ts +25 -0
- package/src/lib/shape/shape.component.ts +207 -0
- package/src/lib/shape/shape.module.ts +14 -0
- package/src/lib/shared/component/video-player/video-player.component.html +2 -0
- package/src/lib/shared/component/video-player/video-player.component.less +15 -0
- package/src/lib/shared/component/video-player/video-player.component.spec.ts +25 -0
- package/src/lib/shared/component/video-player/video-player.component.ts +132 -0
- package/src/lib/shared/component/video-player/video-player.module.ts +11 -0
- package/src/lib/shared/model/scale.token.ts +8 -0
- package/src/lib/shared/service/common.service.ts +28 -0
- package/src/lib/shared/service/file-url.service.ts +8 -0
- package/src/lib/shared/service/gaode-map.service.ts +37 -0
- package/src/lib/shared/service/highcharts.service.ts +29 -0
- package/src/lib/shared/service/http.service.ts +15 -0
- package/src/lib/shared/util/base.util.ts +4 -0
- package/src/lib/shared/util/echarts.util.ts +11 -0
- package/src/lib/shared/util/style.util.ts +12 -0
- package/src/lib/shuffling-list/color.pipe.ts +21 -0
- package/src/lib/shuffling-list/shuffling-list.component.html +37 -0
- package/src/lib/shuffling-list/shuffling-list.component.less +55 -0
- package/src/lib/shuffling-list/shuffling-list.component.spec.ts +25 -0
- package/src/lib/shuffling-list/shuffling-list.component.ts +534 -0
- package/src/lib/shuffling-list/shuffling-list.module.ts +17 -0
- package/src/lib/table/table.component.html +123 -0
- package/src/lib/table/table.component.less +76 -0
- package/src/lib/table/table.component.spec.ts +25 -0
- package/src/lib/table/table.component.ts +608 -0
- package/src/lib/table/table.module.ts +33 -0
- package/src/lib/tabs/tab/tab.component.html +1 -0
- package/src/lib/tabs/tab/tab.component.less +5 -0
- package/src/lib/tabs/tab/tab.component.spec.ts +25 -0
- package/src/lib/tabs/tab/tab.component.ts +18 -0
- package/src/lib/tabs/tabs.component.html +13 -0
- package/src/lib/tabs/tabs.component.less +40 -0
- package/src/lib/tabs/tabs.component.spec.ts +25 -0
- package/src/lib/tabs/tabs.component.ts +68 -0
- package/src/lib/tabs/tabs.module.ts +17 -0
- package/src/lib/temporary-data/temporary-data.component.html +1 -0
- package/src/lib/temporary-data/temporary-data.component.less +4 -0
- package/src/lib/temporary-data/temporary-data.component.spec.ts +25 -0
- package/src/lib/temporary-data/temporary-data.component.ts +46 -0
- package/src/lib/temporary-data/temporary-data.module.ts +15 -0
- package/src/lib/text/text.component.css +0 -0
- package/src/lib/text/text.component.html +3 -0
- package/src/lib/text/text.component.spec.ts +25 -0
- package/src/lib/text/text.component.ts +22 -0
- package/src/lib/text/text.module.ts +14 -0
- package/src/lib/time-picker/time-picker.component.html +1 -0
- package/src/lib/time-picker/time-picker.component.less +14 -0
- package/src/lib/time-picker/time-picker.component.spec.ts +25 -0
- package/src/lib/time-picker/time-picker.component.ts +86 -0
- package/src/lib/time-picker/time-picker.module.ts +19 -0
- package/src/lib/timer/timer.component.html +7 -0
- package/src/lib/timer/timer.component.less +24 -0
- package/src/lib/timer/timer.component.spec.ts +25 -0
- package/src/lib/timer/timer.component.ts +74 -0
- package/src/lib/timer/timer.module.ts +15 -0
- package/src/lib/tree-control/tree-control.component.html +97 -0
- package/src/lib/tree-control/tree-control.component.less +111 -0
- package/src/lib/tree-control/tree-control.component.spec.ts +25 -0
- package/src/lib/tree-control/tree-control.component.ts +363 -0
- package/src/lib/tree-control/tree-control.module.ts +18 -0
- package/src/lib/tree-ring-chart/tree-ring-chart.component.html +7 -0
- package/src/lib/tree-ring-chart/tree-ring-chart.component.less +8 -0
- package/src/lib/tree-ring-chart/tree-ring-chart.component.spec.ts +25 -0
- package/src/lib/tree-ring-chart/tree-ring-chart.component.ts +192 -0
- package/src/lib/tree-ring-chart/tree-ring-chart.module.ts +15 -0
- package/src/lib/upload/upload.component.html +32 -0
- package/src/lib/upload/upload.component.less +14 -0
- package/src/lib/upload/upload.component.spec.ts +25 -0
- package/src/lib/upload/upload.component.ts +109 -0
- package/src/lib/upload/upload.module.ts +19 -0
- package/src/lib/video-grid/video-grid.component.html +33 -0
- package/src/lib/video-grid/video-grid.component.less +68 -0
- package/src/lib/video-grid/video-grid.component.spec.ts +25 -0
- package/src/lib/video-grid/video-grid.component.ts +115 -0
- package/src/lib/video-grid/video-grid.module.ts +17 -0
- package/src/lib/visual-map-chart/visual-map-chart.component.html +8 -0
- package/src/lib/visual-map-chart/visual-map-chart.component.less +21 -0
- package/src/lib/visual-map-chart/visual-map-chart.component.spec.ts +25 -0
- package/src/lib/visual-map-chart/visual-map-chart.component.ts +365 -0
- package/src/lib/visual-map-chart/visual-map-chart.module.ts +18 -0
- package/src/lib/vote/vote.component.html +6 -0
- package/src/lib/vote/vote.component.less +41 -0
- package/src/lib/vote/vote.component.spec.ts +25 -0
- package/src/lib/vote/vote.component.ts +71 -0
- package/src/lib/vote/vote.module.ts +16 -0
- package/src/lib/weather/weather.component.html +27 -0
- package/src/lib/weather/weather.component.less +67 -0
- package/src/lib/weather/weather.component.spec.ts +25 -0
- package/src/lib/weather/weather.component.ts +78 -0
- package/src/lib/weather/weather.module.ts +16 -0
- package/src/lib/wordart/wordart.component.html +2 -0
- package/src/lib/wordart/wordart.component.less +12 -0
- package/src/lib/wordart/wordart.component.spec.ts +25 -0
- package/src/lib/wordart/wordart.component.ts +56 -0
- package/src/lib/wordart/wordart.module.ts +14 -0
- package/src/lib/workbench-widget.module.ts +675 -0
- package/{public-api.d.ts → src/public-api.ts} +46 -35
- package/src/test.ts +22 -0
- package/tsconfig.lib.json +37 -0
- package/tsconfig.lib.prod.json +9 -0
- package/tsconfig.spec.json +17 -0
- package/tslint.json +17 -0
- package/bbj-screen-widget.d.ts +0 -119
- package/bbj-screen-widget.metadata.json +0 -1
- package/bundles/bbj-screen-widget-core.umd.js +0 -606
- package/bundles/bbj-screen-widget-core.umd.js.map +0 -1
- package/bundles/bbj-screen-widget-core.umd.min.js +0 -2
- package/bundles/bbj-screen-widget-core.umd.min.js.map +0 -1
- package/bundles/bbj-screen-widget.umd.js +0 -21735
- package/bundles/bbj-screen-widget.umd.js.map +0 -1
- package/bundles/bbj-screen-widget.umd.min.js +0 -2
- package/bundles/bbj-screen-widget.umd.min.js.map +0 -1
- package/core/bbj-screen-widget-core.d.ts +0 -4
- package/core/bbj-screen-widget-core.metadata.json +0 -1
- package/core/service/baidu-map.service.d.ts +0 -16
- package/esm2015/bbj-screen-widget.js +0 -120
- package/esm2015/core/bbj-screen-widget-core.js +0 -5
- package/esm2015/core/public_api.js +0 -2
- package/esm2015/core/service/baidu-map.service.js +0 -101
- package/esm2015/lib/announcement/announcement.component.js +0 -80
- package/esm2015/lib/announcement/announcement.module.js +0 -25
- package/esm2015/lib/audio/audio.component.js +0 -167
- package/esm2015/lib/audio/audio.module.js +0 -20
- package/esm2015/lib/background/background.component.js +0 -52
- package/esm2015/lib/background/background.module.js +0 -19
- package/esm2015/lib/bar-chart-three-d/bar-chart-three-d.component.js +0 -323
- package/esm2015/lib/bar-chart-three-d/bar-chart-three-d.module.js +0 -20
- package/esm2015/lib/basic-bar-chart/basic-bar-chart.component.js +0 -604
- package/esm2015/lib/basic-bar-chart/basic-bar-chart.module.js +0 -27
- package/esm2015/lib/basic-line-chart/basic-line-chart.component.js +0 -782
- package/esm2015/lib/basic-line-chart/basic-line-chart.module.js +0 -20
- package/esm2015/lib/basic-pie-chart/basic-pie-chart.component.js +0 -471
- package/esm2015/lib/basic-pie-chart/basic-pie-chart.module.js +0 -20
- package/esm2015/lib/basic-planimetric-map/basic-planimetric-map.component.js +0 -233
- package/esm2015/lib/basic-planimetric-map/basic-planimetric-map.module.js +0 -21
- package/esm2015/lib/breathing-bubble-layer/breathing-bubble-layer.component.js +0 -503
- package/esm2015/lib/breathing-bubble-layer/breathing-bubble-layer.module.js +0 -19
- package/esm2015/lib/bubble-chart/bubble-chart.component.js +0 -348
- package/esm2015/lib/bubble-chart/bubble-chart.module.js +0 -20
- package/esm2015/lib/bulletin-board/bulletin-board.component.js +0 -160
- package/esm2015/lib/bulletin-board/bulletin-board.module.js +0 -23
- package/esm2015/lib/button/button.component.js +0 -186
- package/esm2015/lib/button/button.module.js +0 -21
- package/esm2015/lib/calendar/background-events/background-events.component.js +0 -65
- package/esm2015/lib/calendar/calendar-events-child.js +0 -28
- package/esm2015/lib/calendar/calendar.component.js +0 -168
- package/esm2015/lib/calendar/calendar.module.js +0 -32
- package/esm2015/lib/calendar/calendar.util.js +0 -12
- package/esm2015/lib/calendar/events/events.component.js +0 -75
- package/esm2015/lib/checkbox/checkbox.component.js +0 -333
- package/esm2015/lib/checkbox/checkbox.module.js +0 -21
- package/esm2015/lib/cross-table/cross-table.component.js +0 -291
- package/esm2015/lib/cross-table/cross-table.module.js +0 -20
- package/esm2015/lib/custom-baidu-map/baidu-marker-layer/baidu-marker-layer.component.js +0 -747
- package/esm2015/lib/custom-baidu-map/baidu-polyline-layer/baidu-polyline-layer.component.js +0 -278
- package/esm2015/lib/custom-baidu-map/base-layer.js +0 -53
- package/esm2015/lib/custom-baidu-map/custom-baidu-map.component.js +0 -675
- package/esm2015/lib/custom-baidu-map/custom-baidu-map.module.js +0 -46
- package/esm2015/lib/custom-baidu-map/typhoon-area-layer/typhoon-area-layer.component.js +0 -116
- package/esm2015/lib/custom-baidu-map/wind-layer/wind-layer.component.js +0 -331
- package/esm2015/lib/date-picker/date-picker.component.js +0 -447
- package/esm2015/lib/date-picker/date-picker.module.js +0 -22
- package/esm2015/lib/funnel-chart/funnel-chart.component.js +0 -241
- package/esm2015/lib/funnel-chart/funnel-chart.module.js +0 -20
- package/esm2015/lib/gantt/gantt.component.js +0 -222
- package/esm2015/lib/gantt/gantt.module.js +0 -39
- package/esm2015/lib/gauge/gauge.component.js +0 -324
- package/esm2015/lib/gauge/gauge.module.js +0 -20
- package/esm2015/lib/gauge-progress/gauge-progress.component.js +0 -356
- package/esm2015/lib/gauge-progress/gauge.module.js +0 -22
- package/esm2015/lib/general-text/general-text.component.js +0 -144
- package/esm2015/lib/general-text/general-text.module.js +0 -20
- package/esm2015/lib/iconfont/icon.js +0 -199
- package/esm2015/lib/iconfont/iconfont.component.js +0 -56
- package/esm2015/lib/iconfont/iconfont.module.js +0 -20
- package/esm2015/lib/iframe/iframe.component.js +0 -46
- package/esm2015/lib/iframe/iframe.module.js +0 -20
- package/esm2015/lib/image/image.component.js +0 -98
- package/esm2015/lib/image/image.module.js +0 -19
- package/esm2015/lib/item-swiper/item-swiper.component.js +0 -343
- package/esm2015/lib/item-swiper/item-swiper.module.js +0 -22
- package/esm2015/lib/line-bar-chart/line-bar-chart.component.js +0 -398
- package/esm2015/lib/line-bar-chart/line-bar-chart.module.js +0 -20
- package/esm2015/lib/line-light-flow/line-light-flow.component.js +0 -241
- package/esm2015/lib/line-light-flow/line-light-flow.module.js +0 -24
- package/esm2015/lib/liquid-fill/liquid-fill.component.js +0 -158
- package/esm2015/lib/liquid-fill/liquid-fill.module.js +0 -20
- package/esm2015/lib/marquee/marquee.component.js +0 -110
- package/esm2015/lib/marquee/marquee.module.js +0 -19
- package/esm2015/lib/mip-anim/mip-anim.component.js +0 -26
- package/esm2015/lib/mip-anim/mip-anim.module.js +0 -19
- package/esm2015/lib/multi-title-gauge/multi-title-gauge.component.js +0 -277
- package/esm2015/lib/multi-title-gauge/multi-title-gauge.module.js +0 -22
- package/esm2015/lib/number-flop/number-flop.component.js +0 -124
- package/esm2015/lib/number-flop/number-flop.module.js +0 -19
- package/esm2015/lib/parent-container/parent-container.component.js +0 -21
- package/esm2015/lib/parent-container/parent-container.module.js +0 -19
- package/esm2015/lib/percent-pie-chart/percent-pie-chart.component.js +0 -248
- package/esm2015/lib/percent-pie-chart/percent-pie-chart.module.js +0 -20
- package/esm2015/lib/pie3d-chart/pie3d-chart.component.js +0 -303
- package/esm2015/lib/pie3d-chart/pie3d-chart.module.js +0 -19
- package/esm2015/lib/planimetric-map2d/fly-line-layer/fly-line-layer.component.js +0 -431
- package/esm2015/lib/planimetric-map2d/fly-line-layer/fly-line-layer.module.js +0 -19
- package/esm2015/lib/planimetric-map2d/map2d-mark-layer/map2d-mark-layer.component.js +0 -252
- package/esm2015/lib/planimetric-map2d/map2d-mark-layer/map2d-mark-layer.module.js +0 -19
- package/esm2015/lib/planimetric-map2d/map2d-polyline-layer/map2d-polyline-layer.component.js +0 -124
- package/esm2015/lib/planimetric-map2d/map2d-polyline-layer/map2d-polyline-layer.module.js +0 -19
- package/esm2015/lib/planimetric-map2d/map2d-visual-layer/map2d-visual-layer.component.js +0 -359
- package/esm2015/lib/planimetric-map2d/map2d-visual-layer/map2d-visual-layer.module.js +0 -21
- package/esm2015/lib/planimetric-map2d/planimetric-map2d.component.js +0 -753
- package/esm2015/lib/planimetric-map2d/planimetric-map2d.module.js +0 -34
- package/esm2015/lib/planimetric-map3d/map3d-line-layer/map3d-line-layer.component.js +0 -128
- package/esm2015/lib/planimetric-map3d/map3d-line-layer/map3d-line-layer.module.js +0 -19
- package/esm2015/lib/planimetric-map3d/map3d-mark-layer/map3d-mark-layer.component.js +0 -242
- package/esm2015/lib/planimetric-map3d/map3d-mark-layer/map3d-mark-layer.module.js +0 -19
- package/esm2015/lib/planimetric-map3d/planimetric-map3d.component.js +0 -265
- package/esm2015/lib/planimetric-map3d/planimetric-map3d.module.js +0 -22
- package/esm2015/lib/radar-chart/radar-chart.component.js +0 -255
- package/esm2015/lib/radar-chart/radar-chart.module.js +0 -20
- package/esm2015/lib/radio/radio.component.js +0 -148
- package/esm2015/lib/radio/radio.module.js +0 -21
- package/esm2015/lib/rate/rate.component.js +0 -57
- package/esm2015/lib/rate/rate.module.js +0 -23
- package/esm2015/lib/scatter3d/scatter3d.component.js +0 -166
- package/esm2015/lib/scatter3d/scatter3d.module.js +0 -20
- package/esm2015/lib/screen-widget.module.js +0 -536
- package/esm2015/lib/search/search.component.js +0 -130
- package/esm2015/lib/search/search.module.js +0 -29
- package/esm2015/lib/select/select.component.js +0 -359
- package/esm2015/lib/select/select.module.js +0 -22
- package/esm2015/lib/shape/shape.component.js +0 -248
- package/esm2015/lib/shape/shape.module.js +0 -19
- package/esm2015/lib/shared/component/video-player/video-player.component.js +0 -114
- package/esm2015/lib/shared/component/video-player/video-player.module.js +0 -14
- package/esm2015/lib/shared/service/common.service.js +0 -39
- package/esm2015/lib/shared/service/file-url.service.js +0 -12
- package/esm2015/lib/shared/service/gaode-map.service.js +0 -36
- package/esm2015/lib/shared/service/highcharts.service.js +0 -36
- package/esm2015/lib/shared/service/http.service.js +0 -20
- package/esm2015/lib/shared/util/base.util.js +0 -5
- package/esm2015/lib/shared/util/echarts.util.js +0 -12
- package/esm2015/lib/shared/util/style.util.js +0 -19
- package/esm2015/lib/shuffling-list/color.pipe.js +0 -23
- package/esm2015/lib/shuffling-list/shuffling-list.component.js +0 -601
- package/esm2015/lib/shuffling-list/shuffling-list.module.js +0 -22
- package/esm2015/lib/table/table.component.js +0 -657
- package/esm2015/lib/table/table.module.js +0 -38
- package/esm2015/lib/tabs/tab/tab.component.js +0 -27
- package/esm2015/lib/tabs/tabs.component.js +0 -85
- package/esm2015/lib/tabs/tabs.module.js +0 -22
- package/esm2015/lib/temporary-data/temporary-data.component.js +0 -49
- package/esm2015/lib/temporary-data/temporary-data.module.js +0 -20
- package/esm2015/lib/time-picker/time-picker.component.js +0 -112
- package/esm2015/lib/time-picker/time-picker.module.js +0 -21
- package/esm2015/lib/timer/timer.component.js +0 -108
- package/esm2015/lib/timer/timer.module.js +0 -20
- package/esm2015/lib/tree-control/tree-control.component.js +0 -435
- package/esm2015/lib/tree-control/tree-control.module.js +0 -24
- package/esm2015/lib/tree-ring-chart/tree-ring-chart.component.js +0 -215
- package/esm2015/lib/tree-ring-chart/tree-ring-chart.module.js +0 -20
- package/esm2015/lib/upload/upload.component.js +0 -127
- package/esm2015/lib/upload/upload.module.js +0 -22
- package/esm2015/lib/video-grid/video-grid.component.js +0 -140
- package/esm2015/lib/video-grid/video-grid.module.js +0 -22
- package/esm2015/lib/visual-map-chart/visual-map-chart.component.js +0 -395
- package/esm2015/lib/visual-map-chart/visual-map-chart.module.js +0 -20
- package/esm2015/lib/vote/vote.component.js +0 -100
- package/esm2015/lib/vote/vote.module.js +0 -21
- package/esm2015/lib/weather/weather.component.js +0 -92
- package/esm2015/lib/weather/weather.module.js +0 -21
- package/esm2015/lib/wordart/wordart.component.js +0 -84
- package/esm2015/lib/wordart/wordart.module.js +0 -19
- package/esm2015/lib/workbench-widget.module.js +0 -620
- package/esm2015/public-api.js +0 -40
- package/fesm2015/bbj-screen-widget-core.js +0 -107
- package/fesm2015/bbj-screen-widget-core.js.map +0 -1
- package/fesm2015/bbj-screen-widget.js +0 -20633
- package/fesm2015/bbj-screen-widget.js.map +0 -1
- package/lib/announcement/announcement.component.d.ts +0 -13
- package/lib/announcement/announcement.module.d.ts +0 -5
- package/lib/audio/audio.component.d.ts +0 -22
- package/lib/audio/audio.module.d.ts +0 -4
- package/lib/background/background.component.d.ts +0 -12
- package/lib/background/background.module.d.ts +0 -4
- package/lib/bar-chart-three-d/bar-chart-three-d.component.d.ts +0 -30
- package/lib/bar-chart-three-d/bar-chart-three-d.module.d.ts +0 -4
- package/lib/basic-bar-chart/basic-bar-chart.component.d.ts +0 -105
- package/lib/basic-bar-chart/basic-bar-chart.module.d.ts +0 -5
- package/lib/basic-line-chart/basic-line-chart.component.d.ts +0 -102
- package/lib/basic-line-chart/basic-line-chart.module.d.ts +0 -4
- package/lib/basic-pie-chart/basic-pie-chart.component.d.ts +0 -56
- package/lib/basic-pie-chart/basic-pie-chart.module.d.ts +0 -4
- package/lib/basic-planimetric-map/basic-planimetric-map.component.d.ts +0 -18
- package/lib/basic-planimetric-map/basic-planimetric-map.module.d.ts +0 -4
- package/lib/breathing-bubble-layer/breathing-bubble-layer.component.d.ts +0 -210
- package/lib/breathing-bubble-layer/breathing-bubble-layer.module.d.ts +0 -4
- package/lib/bubble-chart/bubble-chart.component.d.ts +0 -75
- package/lib/bubble-chart/bubble-chart.module.d.ts +0 -4
- package/lib/bulletin-board/bulletin-board.component.d.ts +0 -25
- package/lib/bulletin-board/bulletin-board.module.d.ts +0 -4
- package/lib/button/button.component.d.ts +0 -25
- package/lib/button/button.module.d.ts +0 -4
- package/lib/calendar/background-events/background-events.component.d.ts +0 -10
- package/lib/calendar/calendar-events-child.d.ts +0 -12
- package/lib/calendar/calendar.component.d.ts +0 -27
- package/lib/calendar/calendar.module.d.ts +0 -4
- package/lib/calendar/calendar.util.d.ts +0 -6
- package/lib/calendar/events/events.component.d.ts +0 -13
- package/lib/checkbox/checkbox.component.d.ts +0 -45
- package/lib/checkbox/checkbox.module.d.ts +0 -4
- package/lib/cross-table/cross-table.component.d.ts +0 -30
- package/lib/cross-table/cross-table.module.d.ts +0 -4
- package/lib/custom-baidu-map/baidu-marker-layer/baidu-marker-layer.component.d.ts +0 -72
- package/lib/custom-baidu-map/baidu-polyline-layer/baidu-polyline-layer.component.d.ts +0 -23
- package/lib/custom-baidu-map/base-layer.d.ts +0 -16
- package/lib/custom-baidu-map/custom-baidu-map.component.d.ts +0 -93
- package/lib/custom-baidu-map/custom-baidu-map.module.d.ts +0 -4
- package/lib/custom-baidu-map/typhoon-area-layer/typhoon-area-layer.component.d.ts +0 -16
- package/lib/custom-baidu-map/wind-layer/wind-layer.component.d.ts +0 -28
- package/lib/date-picker/date-picker.component.d.ts +0 -63
- package/lib/date-picker/date-picker.module.d.ts +0 -4
- package/lib/funnel-chart/funnel-chart.component.d.ts +0 -24
- package/lib/funnel-chart/funnel-chart.module.d.ts +0 -4
- package/lib/gantt/gantt.component.d.ts +0 -25
- package/lib/gantt/gantt.module.d.ts +0 -4
- package/lib/gauge/gauge.component.d.ts +0 -37
- package/lib/gauge/gauge.module.d.ts +0 -4
- package/lib/gauge-progress/gauge-progress.component.d.ts +0 -46
- package/lib/gauge-progress/gauge.module.d.ts +0 -5
- package/lib/general-text/general-text.component.d.ts +0 -21
- package/lib/general-text/general-text.module.d.ts +0 -4
- package/lib/iconfont/icon.d.ts +0 -1
- package/lib/iconfont/iconfont.component.d.ts +0 -11
- package/lib/iconfont/iconfont.module.d.ts +0 -4
- package/lib/iframe/iframe.component.d.ts +0 -10
- package/lib/iframe/iframe.module.d.ts +0 -4
- package/lib/image/image.component.d.ts +0 -21
- package/lib/image/image.module.d.ts +0 -4
- package/lib/item-swiper/item-swiper.component.d.ts +0 -41
- package/lib/item-swiper/item-swiper.module.d.ts +0 -5
- package/lib/line-bar-chart/line-bar-chart.component.d.ts +0 -63
- package/lib/line-bar-chart/line-bar-chart.module.d.ts +0 -4
- package/lib/line-light-flow/line-light-flow.component.d.ts +0 -26
- package/lib/line-light-flow/line-light-flow.module.d.ts +0 -4
- package/lib/liquid-fill/liquid-fill.component.d.ts +0 -18
- package/lib/liquid-fill/liquid-fill.module.d.ts +0 -4
- package/lib/marquee/marquee.component.d.ts +0 -20
- package/lib/marquee/marquee.module.d.ts +0 -4
- package/lib/mip-anim/mip-anim.component.d.ts +0 -6
- package/lib/mip-anim/mip-anim.module.d.ts +0 -4
- package/lib/multi-title-gauge/multi-title-gauge.component.d.ts +0 -26
- package/lib/multi-title-gauge/multi-title-gauge.module.d.ts +0 -4
- package/lib/number-flop/number-flop.component.d.ts +0 -22
- package/lib/number-flop/number-flop.module.d.ts +0 -4
- package/lib/parent-container/parent-container.component.d.ts +0 -9
- package/lib/parent-container/parent-container.module.d.ts +0 -4
- package/lib/percent-pie-chart/percent-pie-chart.component.d.ts +0 -24
- package/lib/percent-pie-chart/percent-pie-chart.module.d.ts +0 -4
- package/lib/pie3d-chart/pie3d-chart.component.d.ts +0 -30
- package/lib/pie3d-chart/pie3d-chart.module.d.ts +0 -4
- package/lib/planimetric-map2d/fly-line-layer/fly-line-layer.component.d.ts +0 -206
- package/lib/planimetric-map2d/fly-line-layer/fly-line-layer.module.d.ts +0 -4
- package/lib/planimetric-map2d/map2d-mark-layer/map2d-mark-layer.component.d.ts +0 -15
- package/lib/planimetric-map2d/map2d-mark-layer/map2d-mark-layer.module.d.ts +0 -4
- package/lib/planimetric-map2d/map2d-polyline-layer/map2d-polyline-layer.component.d.ts +0 -15
- package/lib/planimetric-map2d/map2d-polyline-layer/map2d-polyline-layer.module.d.ts +0 -4
- package/lib/planimetric-map2d/map2d-visual-layer/map2d-visual-layer.component.d.ts +0 -49
- package/lib/planimetric-map2d/map2d-visual-layer/map2d-visual-layer.module.d.ts +0 -4
- package/lib/planimetric-map2d/planimetric-map2d.component.d.ts +0 -49
- package/lib/planimetric-map2d/planimetric-map2d.module.d.ts +0 -4
- package/lib/planimetric-map3d/map3d-line-layer/map3d-line-layer.component.d.ts +0 -14
- package/lib/planimetric-map3d/map3d-line-layer/map3d-line-layer.module.d.ts +0 -4
- package/lib/planimetric-map3d/map3d-mark-layer/map3d-mark-layer.component.d.ts +0 -41
- package/lib/planimetric-map3d/map3d-mark-layer/map3d-mark-layer.module.d.ts +0 -4
- package/lib/planimetric-map3d/planimetric-map3d.component.d.ts +0 -29
- package/lib/planimetric-map3d/planimetric-map3d.module.d.ts +0 -4
- package/lib/radar-chart/radar-chart.component.d.ts +0 -24
- package/lib/radar-chart/radar-chart.module.d.ts +0 -4
- package/lib/radio/radio.component.d.ts +0 -21
- package/lib/radio/radio.module.d.ts +0 -4
- package/lib/rate/rate.component.d.ts +0 -13
- package/lib/rate/rate.module.d.ts +0 -4
- package/lib/scatter3d/scatter3d.component.d.ts +0 -25
- package/lib/scatter3d/scatter3d.module.d.ts +0 -4
- package/lib/screen-widget.module.d.ts +0 -4
- package/lib/search/search.component.d.ts +0 -21
- package/lib/search/search.module.d.ts +0 -6
- package/lib/select/select.component.d.ts +0 -37
- package/lib/select/select.module.d.ts +0 -4
- package/lib/shape/shape.component.d.ts +0 -50
- package/lib/shape/shape.module.d.ts +0 -4
- package/lib/shared/component/video-player/video-player.component.d.ts +0 -28
- package/lib/shared/component/video-player/video-player.module.d.ts +0 -2
- package/lib/shared/service/common.service.d.ts +0 -21
- package/lib/shared/service/file-url.service.d.ts +0 -3
- package/lib/shared/service/gaode-map.service.d.ts +0 -10
- package/lib/shared/service/highcharts.service.d.ts +0 -9
- package/lib/shared/service/http.service.d.ts +0 -7
- package/lib/shared/util/base.util.d.ts +0 -1
- package/lib/shared/util/echarts.util.d.ts +0 -1
- package/lib/shared/util/style.util.d.ts +0 -1
- package/lib/shuffling-list/color.pipe.d.ts +0 -4
- package/lib/shuffling-list/shuffling-list.component.d.ts +0 -76
- package/lib/shuffling-list/shuffling-list.module.d.ts +0 -4
- package/lib/table/table.component.d.ts +0 -65
- package/lib/table/table.module.d.ts +0 -4
- package/lib/tabs/tab/tab.component.d.ts +0 -7
- package/lib/tabs/tabs.component.d.ts +0 -13
- package/lib/tabs/tabs.module.d.ts +0 -4
- package/lib/temporary-data/temporary-data.component.d.ts +0 -13
- package/lib/temporary-data/temporary-data.module.d.ts +0 -4
- package/lib/time-picker/time-picker.component.d.ts +0 -17
- package/lib/time-picker/time-picker.module.d.ts +0 -4
- package/lib/timer/timer.component.d.ts +0 -21
- package/lib/timer/timer.module.d.ts +0 -4
- package/lib/tree-control/tree-control.component.d.ts +0 -62
- package/lib/tree-control/tree-control.module.d.ts +0 -4
- package/lib/tree-ring-chart/tree-ring-chart.component.d.ts +0 -24
- package/lib/tree-ring-chart/tree-ring-chart.module.d.ts +0 -4
- package/lib/upload/upload.component.d.ts +0 -21
- package/lib/upload/upload.module.d.ts +0 -4
- package/lib/video-grid/video-grid.component.d.ts +0 -23
- package/lib/video-grid/video-grid.module.d.ts +0 -4
- package/lib/visual-map-chart/visual-map-chart.component.d.ts +0 -49
- package/lib/visual-map-chart/visual-map-chart.module.d.ts +0 -4
- package/lib/vote/vote.component.d.ts +0 -15
- package/lib/vote/vote.module.d.ts +0 -4
- package/lib/weather/weather.component.d.ts +0 -26
- package/lib/weather/weather.module.d.ts +0 -4
- package/lib/wordart/wordart.component.d.ts +0 -14
- package/lib/wordart/wordart.module.d.ts +0 -4
- package/lib/workbench-widget.module.d.ts +0 -4
- /package/core/{public_api.d.ts → src/public_api.ts} +0 -0
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"bbj-screen-widget.umd.js","sources":["../../../projects/screen-widget/src/lib/shared/service/gaode-map.service.ts","../../../projects/screen-widget/src/lib/shared/service/common.service.ts","../../../node_modules/tslib/tslib.es6.mjs","../../../projects/screen-widget/src/lib/image/image.component.ts","../../../projects/screen-widget/src/lib/image/image.module.ts","../../../projects/screen-widget/src/lib/shared/util/echarts.util.ts","../../../projects/screen-widget/src/lib/basic-line-chart/basic-line-chart.component.ts","../../../projects/screen-widget/src/lib/basic-line-chart/basic-line-chart.module.ts","../../../projects/screen-widget/src/lib/shared/service/http.service.ts","../../../projects/screen-widget/src/lib/button/button.component.ts","../../../projects/screen-widget/src/lib/button/button.module.ts","../../../projects/screen-widget/src/lib/timer/timer.component.ts","../../../projects/screen-widget/src/lib/timer/timer.module.ts","../../../projects/screen-widget/src/lib/number-flop/number-flop.component.ts","../../../projects/screen-widget/src/lib/number-flop/number-flop.module.ts","../../../projects/screen-widget/src/lib/vote/vote.component.ts","../../../projects/screen-widget/src/lib/vote/vote.module.ts","../../../projects/screen-widget/src/lib/select/select.component.ts","../../../projects/screen-widget/src/lib/select/select.module.ts","../../../projects/screen-widget/src/lib/shared/util/style.util.ts","../../../projects/screen-widget/src/lib/search/search.component.ts","../../../projects/screen-widget/src/lib/search/search.module.ts","../../../projects/screen-widget/src/lib/weather/weather.component.ts","../../../projects/screen-widget/src/lib/weather/weather.module.ts","../../../projects/screen-widget/src/lib/radio/radio.component.ts","../../../projects/screen-widget/src/lib/radio/radio.module.ts","../../../projects/screen-widget/src/lib/checkbox/checkbox.component.ts","../../../projects/screen-widget/src/lib/checkbox/checkbox.module.ts","../../../projects/screen-widget/src/lib/rate/rate.component.ts","../../../projects/screen-widget/src/lib/rate/rate.module.ts","../../../projects/screen-widget/src/lib/general-text/general-text.component.ts","../../../projects/screen-widget/src/lib/general-text/general-text.module.ts","../../../projects/screen-widget/src/lib/marquee/marquee.component.ts","../../../projects/screen-widget/src/lib/marquee/marquee.module.ts","../../../projects/screen-widget/src/lib/wordart/wordart.component.ts","../../../projects/screen-widget/src/lib/wordart/wordart.module.ts","../../../projects/screen-widget/src/lib/iconfont/iconfont.component.ts","../../../projects/screen-widget/src/lib/iconfont/iconfont.module.ts","../../../projects/screen-widget/src/lib/shared/service/file-url.service.ts","../../../projects/screen-widget/src/lib/audio/audio.component.ts","../../../projects/screen-widget/src/lib/shared/component/video-player/video-player.component.ts","../../../projects/screen-widget/src/lib/shared/component/video-player/video-player.module.ts","../../../projects/screen-widget/src/lib/audio/audio.module.ts","../../../projects/screen-widget/src/lib/basic-bar-chart/basic-bar-chart.component.ts","../../../projects/screen-widget/src/lib/basic-bar-chart/basic-bar-chart.module.ts","../../../projects/screen-widget/src/lib/basic-pie-chart/basic-pie-chart.component.ts","../../../projects/screen-widget/src/lib/basic-pie-chart/basic-pie-chart.module.ts","../../../projects/screen-widget/src/lib/bar-chart-three-d/bar-chart-three-d.component.ts","../../../projects/screen-widget/src/lib/bar-chart-three-d/bar-chart-three-d.module.ts","../../../projects/screen-widget/src/lib/shape/shape.component.ts","../../../projects/screen-widget/src/lib/shape/shape.module.ts","../../../projects/screen-widget/src/lib/line-bar-chart/line-bar-chart.component.ts","../../../projects/screen-widget/src/lib/line-bar-chart/line-bar-chart.module.ts","../../../projects/screen-widget/src/lib/bubble-chart/bubble-chart.component.ts","../../../projects/screen-widget/src/lib/bubble-chart/bubble-chart.module.ts","../../../projects/screen-widget/src/lib/radar-chart/radar-chart.component.ts","../../../projects/screen-widget/src/lib/radar-chart/radar-chart.module.ts","../../../projects/screen-widget/src/lib/funnel-chart/funnel-chart.component.ts","../../../projects/screen-widget/src/lib/funnel-chart/funnel-chart.module.ts","../../../projects/screen-widget/src/lib/background/background.component.ts","../../../projects/screen-widget/src/lib/background/background.module.ts","../../../projects/screen-widget/src/lib/gauge/gauge.component.ts","../../../projects/screen-widget/src/lib/gauge/gauge.module.ts","../../../projects/screen-widget/src/lib/percent-pie-chart/percent-pie-chart.component.ts","../../../projects/screen-widget/src/lib/percent-pie-chart/percent-pie-chart.module.ts","../../../projects/screen-widget/src/lib/tree-ring-chart/tree-ring-chart.component.ts","../../../projects/screen-widget/src/lib/tree-ring-chart/tree-ring-chart.module.ts","../../../projects/screen-widget/src/lib/liquid-fill/liquid-fill.component.ts","../../../projects/screen-widget/src/lib/liquid-fill/liquid-fill.module.ts","../../../projects/screen-widget/src/lib/shuffling-list/shuffling-list.component.ts","../../../projects/screen-widget/src/lib/shuffling-list/color.pipe.ts","../../../projects/screen-widget/src/lib/shuffling-list/shuffling-list.module.ts","../../../projects/screen-widget/src/lib/parent-container/parent-container.component.ts","../../../projects/screen-widget/src/lib/basic-planimetric-map/basic-planimetric-map.component.ts","../../../projects/screen-widget/src/lib/breathing-bubble-layer/breathing-bubble-layer.component.ts","../../../projects/screen-widget/src/lib/breathing-bubble-layer/breathing-bubble-layer.module.ts","../../../projects/screen-widget/src/lib/basic-planimetric-map/basic-planimetric-map.module.ts","../../../projects/screen-widget/src/lib/planimetric-map2d/planimetric-map2d.component.ts","../../../projects/screen-widget/src/lib/planimetric-map2d/fly-line-layer/fly-line-layer.component.ts","../../../projects/screen-widget/src/lib/planimetric-map2d/fly-line-layer/fly-line-layer.module.ts","../../../projects/screen-widget/src/lib/planimetric-map2d/map2d-polyline-layer/map2d-polyline-layer.component.ts","../../../projects/screen-widget/src/lib/planimetric-map2d/map2d-polyline-layer/map2d-polyline-layer.module.ts","../../../projects/screen-widget/src/lib/planimetric-map2d/map2d-mark-layer/map2d-mark-layer.component.ts","../../../projects/screen-widget/src/lib/planimetric-map2d/map2d-mark-layer/map2d-mark-layer.module.ts","../../../projects/screen-widget/src/lib/planimetric-map2d/map2d-visual-layer/map2d-visual-layer.component.ts","../../../projects/screen-widget/src/lib/planimetric-map2d/map2d-visual-layer/map2d-visual-layer.module.ts","../../../projects/screen-widget/src/lib/planimetric-map2d/planimetric-map2d.module.ts","../../../projects/screen-widget/src/lib/parent-container/parent-container.module.ts","../../../projects/screen-widget/src/lib/planimetric-map3d/planimetric-map3d.component.ts","../../../projects/screen-widget/src/lib/planimetric-map3d/map3d-mark-layer/map3d-mark-layer.component.ts","../../../projects/screen-widget/src/lib/planimetric-map3d/map3d-mark-layer/map3d-mark-layer.module.ts","../../../projects/screen-widget/src/lib/planimetric-map3d/map3d-line-layer/map3d-line-layer.component.ts","../../../projects/screen-widget/src/lib/planimetric-map3d/map3d-line-layer/map3d-line-layer.module.ts","../../../projects/screen-widget/src/lib/planimetric-map3d/planimetric-map3d.module.ts","../../../projects/screen-widget/src/lib/mip-anim/mip-anim.component.ts","../../../projects/screen-widget/src/lib/mip-anim/mip-anim.module.ts","../../../projects/screen-widget/src/lib/tree-control/tree-control.component.ts","../../../projects/screen-widget/src/lib/tree-control/tree-control.module.ts","../../../projects/screen-widget/src/lib/visual-map-chart/visual-map-chart.component.ts","../../../projects/screen-widget/src/lib/visual-map-chart/visual-map-chart.module.ts","../../../projects/screen-widget/src/lib/date-picker/date-picker.component.ts","../../../projects/screen-widget/src/lib/date-picker/date-picker.module.ts","../../../projects/screen-widget/src/lib/time-picker/time-picker.component.ts","../../../projects/screen-widget/src/lib/time-picker/time-picker.module.ts","../../../projects/screen-widget/src/lib/custom-baidu-map/custom-baidu-map.component.ts","../../../projects/screen-widget/src/lib/custom-baidu-map/wind-layer/wind-layer.component.ts","../../../projects/screen-widget/src/lib/custom-baidu-map/base-layer.ts","../../../projects/screen-widget/src/lib/shared/util/base.util.ts","../../../projects/screen-widget/src/lib/custom-baidu-map/baidu-marker-layer/baidu-marker-layer.component.ts","../../../projects/screen-widget/src/lib/custom-baidu-map/baidu-polyline-layer/baidu-polyline-layer.component.ts","../../../projects/screen-widget/src/lib/custom-baidu-map/typhoon-area-layer/typhoon-area-layer.component.ts","../../../projects/screen-widget/src/lib/custom-baidu-map/custom-baidu-map.module.ts","../../../projects/screen-widget/src/lib/iconfont/icon.ts","../../../projects/screen-widget/src/lib/upload/upload.component.ts","../../../projects/screen-widget/src/lib/upload/upload.module.ts","../../../projects/screen-widget/src/lib/cross-table/cross-table.component.ts","../../../projects/screen-widget/src/lib/cross-table/cross-table.module.ts","../../../projects/screen-widget/src/lib/table/table.component.ts","../../../projects/screen-widget/src/lib/table/table.module.ts","../../../projects/screen-widget/src/lib/shared/service/highcharts.service.ts","../../../projects/screen-widget/src/lib/pie3d-chart/pie3d-chart.component.ts","../../../projects/screen-widget/src/lib/pie3d-chart/pie3d-chart.module.ts","../../../projects/screen-widget/src/lib/multi-title-gauge/multi-title-gauge.component.ts","../../../projects/screen-widget/src/lib/multi-title-gauge/multi-title-gauge.module.ts","../../../projects/screen-widget/src/lib/gauge-progress/gauge-progress.component.ts","../../../projects/screen-widget/src/lib/gauge-progress/gauge.module.ts","../../../projects/screen-widget/src/lib/bulletin-board/bulletin-board.component.ts","../../../projects/screen-widget/src/lib/bulletin-board/bulletin-board.module.ts","../../../projects/screen-widget/src/lib/item-swiper/item-swiper.component.ts","../../../projects/screen-widget/src/lib/item-swiper/item-swiper.module.ts","../../../projects/screen-widget/src/lib/temporary-data/temporary-data.component.ts","../../../projects/screen-widget/src/lib/temporary-data/temporary-data.module.ts","../../../projects/screen-widget/src/lib/line-light-flow/line-light-flow.component.ts","../../../projects/screen-widget/src/lib/line-light-flow/line-light-flow.module.ts","../../../projects/screen-widget/src/lib/iframe/iframe.component.ts","../../../projects/screen-widget/src/lib/iframe/iframe.module.ts","../../../projects/screen-widget/src/lib/video-grid/video-grid.component.ts","../../../projects/screen-widget/src/lib/video-grid/video-grid.module.ts","../../../projects/screen-widget/src/lib/scatter3d/scatter3d.component.ts","../../../projects/screen-widget/src/lib/scatter3d/scatter3d.module.ts","../../../projects/screen-widget/src/lib/screen-widget.module.ts","../../../projects/screen-widget/src/lib/announcement/announcement.component.ts","../../../projects/screen-widget/src/lib/announcement/announcement.module.ts","../../../projects/screen-widget/src/lib/calendar/calendar.util.ts","../../../projects/screen-widget/src/lib/calendar/calendar.component.ts","../../../projects/screen-widget/src/lib/calendar/calendar-events-child.ts","../../../projects/screen-widget/src/lib/calendar/background-events/background-events.component.ts","../../../projects/screen-widget/src/lib/calendar/events/events.component.ts","../../../projects/screen-widget/src/lib/calendar/calendar.module.ts","../../../projects/screen-widget/src/lib/tabs/tabs.component.ts","../../../projects/screen-widget/src/lib/tabs/tab/tab.component.ts","../../../projects/screen-widget/src/lib/tabs/tabs.module.ts","../../../projects/screen-widget/src/lib/gantt/gantt.component.ts","../../../projects/screen-widget/src/lib/gantt/gantt.module.ts","../../../projects/screen-widget/src/lib/workbench-widget.module.ts","../../../projects/screen-widget/src/public-api.ts","../../../projects/screen-widget/src/bbj-screen-widget.ts"],"sourcesContent":["import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { LazyService } from '@delon/util';\r\n\r\n// (window as any)._AMapSecurityConfig = {\r\n// securityJsCode: '1f288f3bf91dc24647c540ef2988ba30',\r\n// };\r\ndeclare const AMap;\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class GaodeMapService {\r\n private loadAmapPromise: Promise<any>;\r\n\r\n constructor(public lazy: LazyService, private http: HttpClient) {}\r\n\r\n loadMap(): Promise<any> {\r\n if (typeof AMap !== 'undefined') {\r\n return Promise.resolve();\r\n }\r\n if (!this.loadAmapPromise) {\r\n this.loadAmapPromise = this.lazy.loadScript(\r\n 'https://webapi.amap.com/maps?v=1.4.15&key=803815fd5b53fbb5bfb6656b049f1d37&plugin=AMap.ControlBar',\r\n );\r\n }\r\n return this.loadAmapPromise;\r\n }\r\n\r\n getWeather(city): Promise<any> {\r\n // 高德地图\r\n return this.http\r\n .jsonp(\r\n `https://restapi.amap.com/v3/weather/weatherInfo?key=d633c7a49d34575ad5fb4235856f3a7b&city=${city}`,\r\n 'callback',\r\n )\r\n .toPromise();\r\n }\r\n}\r\n","import { Injectable } from '@angular/core';\r\nimport { BaiduMapService } from 'bbj-screen-widget/core';\r\nimport { GaodeMapService } from './gaode-map.service';\r\n\r\n/**\r\n * @deprecated\r\n * 用BaiduMapService和GaodeMapService替代\r\n */\r\n@Injectable({ providedIn: 'root' })\r\nexport class CommonService {\r\n constructor(private baiduMapService: BaiduMapService, public gaodeMapService: GaodeMapService) {}\r\n\r\n /**\r\n * @deprecated\r\n * 用BaiduMapService.loadMap替代\r\n */\r\n getMap(): Promise<any> {\r\n return this.baiduMapService.loadMap();\r\n }\r\n\r\n /**\r\n * @deprecated\r\n * 用GaodeMapService.loadMap替代\r\n */\r\n loadMap(): Promise<any> {\r\n return this.gaodeMapService.loadMap();\r\n }\r\n}\r\n","/******************************************************************************\nCopyright (c) Microsoft Corporation.\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\nPERFORMANCE OF THIS SOFTWARE.\n***************************************************************************** */\n/* global Reflect, Promise, SuppressedError, Symbol, Iterator */\n\nvar extendStatics = function(d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n};\n\nexport function __extends(d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n}\n\nexport var __assign = function() {\n __assign = Object.assign || function __assign(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\n }\n return t;\n }\n return __assign.apply(this, arguments);\n}\n\nexport function __rest(s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n}\n\nexport function __decorate(decorators, target, key, desc) {\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\n return c > 3 && r && Object.defineProperty(target, key, r), r;\n}\n\nexport function __param(paramIndex, decorator) {\n return function (target, key) { decorator(target, key, paramIndex); }\n}\n\nexport function __esDecorate(ctor, descriptorIn, decorators, contextIn, initializers, extraInitializers) {\n function accept(f) { if (f !== void 0 && typeof f !== \"function\") throw new TypeError(\"Function expected\"); return f; }\n var kind = contextIn.kind, key = kind === \"getter\" ? \"get\" : kind === \"setter\" ? \"set\" : \"value\";\n var target = !descriptorIn && ctor ? contextIn[\"static\"] ? ctor : ctor.prototype : null;\n var descriptor = descriptorIn || (target ? Object.getOwnPropertyDescriptor(target, contextIn.name) : {});\n var _, done = false;\n for (var i = decorators.length - 1; i >= 0; i--) {\n var context = {};\n for (var p in contextIn) context[p] = p === \"access\" ? {} : contextIn[p];\n for (var p in contextIn.access) context.access[p] = contextIn.access[p];\n context.addInitializer = function (f) { if (done) throw new TypeError(\"Cannot add initializers after decoration has completed\"); extraInitializers.push(accept(f || null)); };\n var result = (0, decorators[i])(kind === \"accessor\" ? { get: descriptor.get, set: descriptor.set } : descriptor[key], context);\n if (kind === \"accessor\") {\n if (result === void 0) continue;\n if (result === null || typeof result !== \"object\") throw new TypeError(\"Object expected\");\n if (_ = accept(result.get)) descriptor.get = _;\n if (_ = accept(result.set)) descriptor.set = _;\n if (_ = accept(result.init)) initializers.unshift(_);\n }\n else if (_ = accept(result)) {\n if (kind === \"field\") initializers.unshift(_);\n else descriptor[key] = _;\n }\n }\n if (target) Object.defineProperty(target, contextIn.name, descriptor);\n done = true;\n};\n\nexport function __runInitializers(thisArg, initializers, value) {\n var useValue = arguments.length > 2;\n for (var i = 0; i < initializers.length; i++) {\n value = useValue ? initializers[i].call(thisArg, value) : initializers[i].call(thisArg);\n }\n return useValue ? value : void 0;\n};\n\nexport function __propKey(x) {\n return typeof x === \"symbol\" ? x : \"\".concat(x);\n};\n\nexport function __setFunctionName(f, name, prefix) {\n if (typeof name === \"symbol\") name = name.description ? \"[\".concat(name.description, \"]\") : \"\";\n return Object.defineProperty(f, \"name\", { configurable: true, value: prefix ? \"\".concat(prefix, \" \", name) : name });\n};\n\nexport function __metadata(metadataKey, metadataValue) {\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\n}\n\nexport function __awaiter(thisArg, _arguments, P, generator) {\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n}\n\nexport function __generator(thisArg, body) {\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g = Object.create((typeof Iterator === \"function\" ? Iterator : Object).prototype);\n return g.next = verb(0), g[\"throw\"] = verb(1), g[\"return\"] = verb(2), typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\n function verb(n) { return function (v) { return step([n, v]); }; }\n function step(op) {\n if (f) throw new TypeError(\"Generator is already executing.\");\n while (g && (g = 0, op[0] && (_ = 0)), _) try {\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\n if (y = 0, t) op = [op[0] & 2, t.value];\n switch (op[0]) {\n case 0: case 1: t = op; break;\n case 4: _.label++; return { value: op[1], done: false };\n case 5: _.label++; y = op[1]; op = [0]; continue;\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\n default:\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\n if (t[2]) _.ops.pop();\n _.trys.pop(); continue;\n }\n op = body.call(thisArg, _);\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\n }\n}\n\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n var desc = Object.getOwnPropertyDescriptor(m, k);\n if (!desc || (\"get\" in desc ? !m.__esModule : desc.writable || desc.configurable)) {\n desc = { enumerable: true, get: function() { return m[k]; } };\n }\n Object.defineProperty(o, k2, desc);\n}) : (function(o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n});\n\nexport function __exportStar(m, o) {\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\n}\n\nexport function __values(o) {\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\n if (m) return m.call(o);\n if (o && typeof o.length === \"number\") return {\n next: function () {\n if (o && i >= o.length) o = void 0;\n return { value: o && o[i++], done: !o };\n }\n };\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\n}\n\nexport function __read(o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n}\n\n/** @deprecated */\nexport function __spread() {\n for (var ar = [], i = 0; i < arguments.length; i++)\n ar = ar.concat(__read(arguments[i]));\n return ar;\n}\n\n/** @deprecated */\nexport function __spreadArrays() {\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\n r[k] = a[j];\n return r;\n}\n\nexport function __spreadArray(to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n}\n\nexport function __await(v) {\n return this instanceof __await ? (this.v = v, this) : new __await(v);\n}\n\nexport function __asyncGenerator(thisArg, _arguments, generator) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\n return i = Object.create((typeof AsyncIterator === \"function\" ? AsyncIterator : Object).prototype), verb(\"next\"), verb(\"throw\"), verb(\"return\", awaitReturn), i[Symbol.asyncIterator] = function () { return this; }, i;\n function awaitReturn(f) { return function (v) { return Promise.resolve(v).then(f, reject); }; }\n function verb(n, f) { if (g[n]) { i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; if (f) i[n] = f(i[n]); } }\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\n function fulfill(value) { resume(\"next\", value); }\n function reject(value) { resume(\"throw\", value); }\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\n}\n\nexport function __asyncDelegator(o) {\n var i, p;\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: false } : f ? f(v) : v; } : f; }\n}\n\nexport function __asyncValues(o) {\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\n var m = o[Symbol.asyncIterator], i;\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\n}\n\nexport function __makeTemplateObject(cooked, raw) {\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\n return cooked;\n};\n\nvar __setModuleDefault = Object.create ? (function(o, v) {\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\n}) : function(o, v) {\n o[\"default\"] = v;\n};\n\nexport function __importStar(mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n}\n\nexport function __importDefault(mod) {\n return (mod && mod.__esModule) ? mod : { default: mod };\n}\n\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\n}\n\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\n}\n\nexport function __classPrivateFieldIn(state, receiver) {\n if (receiver === null || (typeof receiver !== \"object\" && typeof receiver !== \"function\")) throw new TypeError(\"Cannot use 'in' operator on non-object\");\n return typeof state === \"function\" ? receiver === state : state.has(receiver);\n}\n\nexport function __addDisposableResource(env, value, async) {\n if (value !== null && value !== void 0) {\n if (typeof value !== \"object\" && typeof value !== \"function\") throw new TypeError(\"Object expected.\");\n var dispose, inner;\n if (async) {\n if (!Symbol.asyncDispose) throw new TypeError(\"Symbol.asyncDispose is not defined.\");\n dispose = value[Symbol.asyncDispose];\n }\n if (dispose === void 0) {\n if (!Symbol.dispose) throw new TypeError(\"Symbol.dispose is not defined.\");\n dispose = value[Symbol.dispose];\n if (async) inner = dispose;\n }\n if (typeof dispose !== \"function\") throw new TypeError(\"Object not disposable.\");\n if (inner) dispose = function() { try { inner.call(this); } catch (e) { return Promise.reject(e); } };\n env.stack.push({ value: value, dispose: dispose, async: async });\n }\n else if (async) {\n env.stack.push({ async: true });\n }\n return value;\n}\n\nvar _SuppressedError = typeof SuppressedError === \"function\" ? SuppressedError : function (error, suppressed, message) {\n var e = new Error(message);\n return e.name = \"SuppressedError\", e.error = error, e.suppressed = suppressed, e;\n};\n\nexport function __disposeResources(env) {\n function fail(e) {\n env.error = env.hasError ? new _SuppressedError(e, env.error, \"An error was suppressed during disposal.\") : e;\n env.hasError = true;\n }\n var r, s = 0;\n function next() {\n while (r = env.stack.pop()) {\n try {\n if (!r.async && s === 1) return s = 0, env.stack.push(r), Promise.resolve().then(next);\n if (r.dispose) {\n var result = r.dispose.call(r.value);\n if (r.async) return s |= 2, Promise.resolve(result).then(next, function(e) { fail(e); return next(); });\n }\n else s |= 1;\n }\n catch (e) {\n fail(e);\n }\n }\n if (s === 1) return env.hasError ? Promise.reject(env.error) : Promise.resolve();\n if (env.hasError) throw env.error;\n }\n return next();\n}\n\nexport default {\n __extends,\n __assign,\n __rest,\n __decorate,\n __param,\n __metadata,\n __awaiter,\n __generator,\n __createBinding,\n __exportStar,\n __values,\n __read,\n __spread,\n __spreadArrays,\n __spreadArray,\n __await,\n __asyncGenerator,\n __asyncDelegator,\n __asyncValues,\n __makeTemplateObject,\n __importStar,\n __importDefault,\n __classPrivateFieldGet,\n __classPrivateFieldSet,\n __classPrivateFieldIn,\n __addDisposableResource,\n __disposeResources,\n};\n","import {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n ElementRef,\n OnChanges,\n OnInit,\n Renderer2,\n SimpleChanges,\n} from '@angular/core';\nimport { Data, Property, Widget, WidgetRef } from 'bbj-widget-base';\n\n@Component({\n selector: 'sc-picture',\n templateUrl: './image.component.html',\n styleUrls: ['./image.component.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\n@Widget('图片', { group: 'picture', icon: 'icontupian' })\nexport class ImageComponent implements OnInit, OnChanges {\n @Property('', { min: 1, ui: { widget: 'myUpload', spanLabel: 0, spanControl: 24 } })\n image: string;\n\n @Property('透明度', { ui: { widget: 'myRange', min: 0, max: 1, step: 0.1 } })\n opacity = 1;\n @Property('阴影', { ui: { widget: 'myShadow' } })\n shadow: any = { color: '', X: 0, Y: 0, Z: 0 };\n style: any = {};\n hideHead: boolean;\n @Property('布局', {\n enum: [\n { label: '自适应', value: 'auto' },\n { label: '拉伸', value: 'stretch' },\n { label: '重复', value: 'repeat' },\n ],\n })\n layout = 'auto';\n @Data({\n properties: {\n image: { type: 'string', title: '路径' },\n },\n })\n _data: any[] = [];\n backgroundImage: string;\n constructor(\n private cd: ChangeDetectorRef,\n private renderer: Renderer2,\n private elementRef: ElementRef,\n private widgetRef: WidgetRef,\n ) {}\n ngOnChanges(changes: SimpleChanges): void {\n let image: string;\n if (this._data && this._data[0]?.image) {\n image = this._data[0].image;\n } else {\n image = this.image;\n }\n this.setStyle('backgroundImage', image ? `url(${image})` : null);\n this.cd.markForCheck();\n }\n\n ngOnInit() {\n this.renderer.addClass(this.element, this.layout || 'auto');\n this.setStyle('opacity', this.opacity === 1 ? null : this.opacity);\n const { color, X, Y, Z } = this.shadow;\n this.setStyle('boxShadow', color ? `${color} ${X}px ${Y}px ${Z}px` : null);\n const widget: any = this.widgetRef.widget as any;\n if (widget.link?.enabled || widget.outputs?.enabled) {\n this.setStyle('cursor', 'pointer');\n }\n }\n\n get element(): HTMLElement {\n return this.elementRef.nativeElement;\n }\n setStyle(style: string, value: any) {\n this.renderer.setStyle(this.element, style, value);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { ImageComponent } from './image.component';\nimport { WidgetBaseModule, WidgetService } from 'bbj-widget-base';\n\n@NgModule({\n declarations: [ImageComponent],\n imports: [CommonModule, WidgetBaseModule],\n})\nexport class ImageModule {\n constructor(widgetService: WidgetService) {\n widgetService.register(ImageComponent);\n }\n}\n","export function getEchartsTextStyle(font: any) {\r\n const textStyle: any = {};\r\n if (font) {\r\n textStyle.color = font.color;\r\n textStyle.fontFamily = font.family;\r\n textStyle.fontWeight = font.weight;\r\n textStyle.fontSize = font.size;\r\n textStyle.lineHeight = font.lineHeight;\r\n }\r\n return textStyle;\r\n}\r\n","import { Component, OnChanges, OnInit, SimpleChanges, EventEmitter } from '@angular/core';\nimport { Data, Property, Widget, Drill, DataOutput } from 'bbj-widget-base';\nimport { getEchartsTextStyle } from '../shared/util/echarts.util';\n\n@Component({\n selector: 'sc-basicLine',\n templateUrl: './basic-line-chart.component.html',\n styleUrls: ['./basic-line-chart.component.less'],\n})\n@Widget('基本折线图', {\n group: 'lineChart',\n image: 'assets/img/screen/basic-line-chart.png',\n icon: 'icontubiao',\n})\nexport class BasicLineChartComponent implements OnInit, OnChanges {\n @Property('类型', { ui: { hidden: true } })\n type = 'basic';\n @Property('图表样式', {\n ui: {\n widget: 'myImageExample',\n spanLabel: 24,\n spanControl: 24,\n reset: ['lineColor'],\n example: [\n {\n background: 'assets/img/screen/line2.png',\n data: { lineColor: ['#FF851D', '#FFEF66'] },\n },\n {\n background: 'assets/img/screen/line3.png',\n data: { lineColor: ['#00D191', '#00FECB'] },\n },\n {\n background: 'assets/img/screen/line1.png',\n data: { lineColor: ['#3285FF', '#00D2FD'] },\n },\n {\n background: 'assets/img/screen/line4.png',\n data: { lineColor: ['#8934F8', '#FF3699'] },\n },\n ],\n },\n })\n example: any;\n @Property('系列颜色', {\n ui: {\n widget: 'seriesColor',\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],\n },\n })\n lineColor = ['#3285FF', '#00D2FD'];\n @Property('字体', { ui: { widget: 'myFont' } })\n font: any = {\n family: '',\n color: '#595F7A',\n weight: 'normal',\n size: 12,\n space: 0,\n lineHeight: 12,\n };\n @Property('边距', { ui: { widget: 'myGrid' } })\n grid: any = {\n top: 30,\n right: 30,\n bottom: 40,\n left: 36,\n };\n @Property('图例', {\n ui: { widget: 'select' },\n enum: [\n { label: '无', value: 'none' },\n { label: '自动', value: 'auto' },\n { label: '居中', value: 'center' },\n { label: '左对齐', value: 'left' },\n { label: '右对齐', value: 'right' },\n ],\n })\n align = 'center';\n @Property('提示线样式', {\n ui: { widget: 'select' },\n enum: [\n { label: '直线指示器', value: 'line' },\n { label: '阴影指示器', value: 'shadow' },\n { label: '十字准星指示器', value: 'cross' },\n { label: '无', value: 'none' },\n ],\n })\n axisType = 'none';\n @Property('提示线类型', {\n ui: { widget: 'select' },\n enum: [\n { label: '实线', value: 'solid' },\n { label: '虚线', value: 'dashed' },\n { label: '点线', value: 'dotted' },\n ],\n })\n lineType = 'dashed';\n // @Property('轴单位', {ui: {widget: 'myUnit'}})\n // unit = {x: '', y: ''};\n @Property('提示线颜色', {\n ui: {\n widget: 'myColor',\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],\n },\n })\n axisColor = '#333333';\n @Property('提示线宽度', { type: 'number' })\n axisWidth = 10;\n @Property('x轴类型', {\n enum: [\n { label: '类目', value: 'category' },\n { label: '时间', value: 'time' },\n ],\n })\n xType = 'category';\n @Property('y轴单位', { type: 'string' })\n yUnit = '';\n @Property('x轴单位', { type: 'string' })\n xUnit = '';\n @Property('y轴最小')\n yMin: number;\n @Property('y轴最大')\n yMax: number;\n @Property('y轴最小间隔')\n yMinInterval: number;\n @Property('y轴最大增减')\n yMaxAddNum: number;\n @Property('坐标留白', { type: 'boolean' })\n boundaryGap = true;\n @Property('显示Y轴', { type: 'boolean' })\n showY = true;\n @Property('y轴网络线', { type: 'boolean' })\n netLine = false;\n\n @Property('y网络线类型', {\n ui: { widget: 'select', visibleIf: { netLine: [true] } },\n enum: [\n { label: '实线', value: 'solid' },\n { label: '虚线', value: 'dashed' },\n { label: '点线', value: 'dotted' },\n ],\n })\n netLineType = 'dashed';\n @Property('x轴网络线', { type: 'boolean' })\n netLineX = false;\n\n @Property('x网络线类型', {\n ui: { widget: 'select', visibleIf: { netLineX: [true] } },\n enum: [\n { label: '实线', value: 'solid' },\n { label: '虚线', value: 'dashed' },\n { label: '点线', value: 'dotted' },\n ],\n })\n netLineXType = 'dashed';\n\n @Property('网络线颜色', {\n ui: {\n widget: 'myColor',\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],\n },\n })\n netLineColor = 'rgba(255,255,255,0.2)';\n\n @Property('标签', { type: 'boolean' })\n label = false;\n\n @Property('标线', { type: 'boolean' })\n markLine = false;\n @Property('Y轴标线高度', { type: 'number', ui: { visibleIf: { markLine: [true] } } })\n YmarkLineHeight = 10;\n\n // @Property('显示X轴', {\n // ui: { widget: 'boolean', checkedChildren: '开', unCheckedChildren: '关' },\n // })\n // showX = true;\n @Property('Y标线标题', {\n type: 'string',\n ui: { visibleIf: { markLine: [true] }, optionalHelp: '此标题需要跟x字段内名字一致' },\n })\n YmarkLineName = '';\n // @Property('标线数值', { type: 'number' })\n // markLineVal = null;\n\n @Property('Y标线类型', {\n ui: { widget: 'select', visibleIf: { markLine: [true] } },\n enum: [\n { label: '实线', value: 'solid' },\n { label: '虚线', value: 'dashed' },\n { label: '点线', value: 'dotted' },\n ],\n })\n YmarkLineType = 'dashed';\n\n @Property('Y标线颜色', {\n ui: {\n widget: 'myColor',\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],\n visibleIf: { markLine: [true] },\n },\n })\n YmarkLineColor = '#f00';\n @Property('Y标线粗细', {\n type: 'number',\n ui: { visibleIf: { markLine: [true] } },\n })\n YmarkWidth = 2;\n @Property('X轴标线位置', { type: 'string', ui: { visibleIf: { markLine: [true] } } })\n XmarkLineLocation = '二月';\n @Property('X标线标题', {\n type: 'string',\n ui: { optionalHelp: '此标题需要跟x字段内名字一致', visibleIf: { markLine: [true] } },\n })\n XmarkLineName = '';\n @Property('X标线类型', {\n ui: { widget: 'select', visibleIf: { markLine: [true] } },\n enum: [\n { label: '实线', value: 'solid' },\n { label: '虚线', value: 'dashed' },\n { label: '点线', value: 'dotted' },\n ],\n })\n XmarkLineType = 'dashed';\n\n @Property('X标线颜色', {\n ui: {\n visibleIf: { markLine: [true] },\n widget: 'myColor',\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],\n },\n })\n XmarkLineColor = '#f00';\n @Property('X标线粗细', {\n type: 'number',\n ui: { visibleIf: { markLine: [true] } },\n })\n XmarkWidth = 2;\n @Property('数据标线')\n showDataMarkLine: boolean;\n @Property('数据标线格式化', {\n ui: { visibleIf: { showDataMarkLine: [true] }, optionalHelp: 'function(params){return params.data.value}' },\n })\n dataMarkLineFormatter: string;\n @Property('隐藏x轴标签')\n hideXLabel: boolean;\n @Property('x轴标签角度', {\n ui: { widget: 'myRange', min: -90, max: 90, step: 10, visibleIf: { hideXLabel: (value) => !value } },\n })\n xLabelRotate = 0;\n @Property('x轴文本宽度', { ui: { visibleIf: { hideXLabel: (value) => !value } } })\n xLabelWidth: number;\n @Property('x轴文字宽度超出', {\n enum: [\n { label: '自动', value: 'auto' },\n { label: '截断', value: 'truncate' },\n { label: '换行', value: 'break' },\n { label: '强制换行', value: 'breakAll' },\n ],\n ui: { widget: 'select', visibleIf: { hideXLabel: (value) => !value } },\n })\n xLabelOverflow = 'auto';\n @Property('标签显示间隔', {\n ui: {\n visibleIf: { hideXLabel: (value) => !value },\n optionalHelp: {\n text: `默认会采用标签不重叠的策略间隔显示标签。\n可以设置成 0 强制显示所有标签。 \n如果设置为 1,表示『隔一个标签显示一个标签』,如果值为 2,表示隔两个标签显示一个标签,以此类推。`,\n overlayStyle: {\n whiteSpace: 'pre-line',\n },\n },\n },\n })\n xLabelInterval: number;\n\n @Property('区域缩放')\n insideDataZoom: boolean;\n @Property('缩放最少数量', { ui: { visibleIf: { insideDataZoom: [true] } } })\n dataZoomMinData: number;\n @Property('缩放开始百分比', { ui: { visibleIf: { insideDataZoom: [true] } } })\n dataZoomStart: number;\n @Property('缩放结束百分比', { ui: { visibleIf: { insideDataZoom: [true] } } })\n dataZoomEnd: number;\n @Property('滚轮缩放', {\n enum: [\n { label: '启用', value: true },\n { label: '禁用', value: false },\n { label: '按住shift', value: 'shift' },\n { label: '按住ctrl', value: 'ctrl' },\n { label: '按住alt', value: 'alt' },\n ],\n ui: { widget: 'select', visibleIf: { insideDataZoom: [true] } },\n })\n zoomOnMouseWheel = true;\n @Property('滑动条', { ui: { visibleIf: { insideDataZoom: [true] } } })\n sliderDataZoom: boolean;\n @Property('锁定区域大小', { ui: { visibleIf: { sliderDataZoom: [true] } } })\n zoomLock: boolean;\n @Property('提示框字体', { ui: { widget: 'myFont' } })\n tooltipFont: any;\n @Property('阶梯拐点', {\n enum: [\n { label: '当前点', value: 'start' },\n { label: '中间点', value: 'middle' },\n { label: '下个点', value: 'end' },\n ],\n ui: { widget: 'select', visibleIf: { type: ['step'] } },\n })\n step: string;\n @Property('标记点大小', { type: 'number' })\n symbolSize: number;\n chartOption: any = null;\n @Data({\n properties: {\n x: { type: 'string', title: '类目' },\n y: { type: 'number', title: '值' },\n s: { type: 'string', title: '系列' },\n },\n })\n _data: any[] = [\n { x: '一月', y: 10, s: '收入' },\n { x: '二月', y: 20, s: '收入' },\n { x: '三月', y: 25, s: '收入' },\n { x: '四月', y: 35, s: '收入' },\n { x: '五月', y: 27, s: '收入' },\n { x: '六月', y: 28, s: '收入' },\n { x: '一月', y: 18, s: '支出' },\n { x: '二月', y: 28, s: '支出' },\n { x: '三月', y: 32, s: '支出' },\n { x: '四月', y: 48, s: '支出' },\n { x: '五月', y: 20, s: '支出' },\n { x: '六月', y: 17, s: '支出' },\n ];\n @Drill()\n @DataOutput(['x', 's'])\n dataClick = new EventEmitter<any>();\n xData = [];\n yData = [];\n // series = [];\n style = {\n color: '',\n fontFamily: '',\n fontWeight: '',\n fontSize: '',\n lineHeight: '',\n };\n constructor() {}\n\n ngOnInit() {}\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes._data) {\n const textStyle = this.getTextStyle(this.font);\n this.style = textStyle;\n this.chartOption = {\n dataZoom: this.getDataZoom(),\n tooltip: this.getTooltip(),\n legend: this.getLegend(),\n grid: this.getGrid(),\n xAxis: this.getXAxis(),\n yAxis: this.getYAxis(),\n color: this.lineColor,\n series: [],\n };\n this.reloadData();\n }\n }\n\n getXAxis(): any {\n return {\n name: this.xUnit,\n nameTextStyle: this.style,\n type: this.xType || 'category',\n boundaryGap: this.boundaryGap,\n axisLine: {\n lineStyle: {\n color: this.style.color,\n },\n },\n axisLabel: {\n ...this.style,\n rotate: this.xLabelRotate,\n show: !this.hideXLabel,\n width: this.xLabelWidth,\n overflow: this.xLabelOverflow,\n interval: this.xLabelInterval,\n },\n splitLine: {\n show: this.netLineX,\n lineStyle: {\n type: this.netLineXType,\n color: this.netLineColor,\n },\n },\n };\n }\n\n getYAxis(): any {\n return {\n show: true,\n name: this.yUnit,\n nameTextStyle: this.style,\n type: 'value',\n min: this.yMin,\n max: (value) => {\n let yMax = value.max;\n if (this.yMax) {\n yMax = Number(this.yMax);\n } else if (this.markLine) {\n yMax = Math.max(Number(this.YmarkLineHeight), yMax);\n }\n return Math.ceil(this.yMaxAddNum ? yMax + Number(this.yMaxAddNum) : yMax);\n },\n axisLine: {\n show: this.showY,\n lineStyle: {\n color: this.style.color,\n },\n },\n axisLabel: this.style,\n splitLine: {\n show: this.netLine,\n lineStyle: {\n type: this.netLineXType,\n color: this.netLineColor,\n },\n },\n axisTick: {\n show: this.showY,\n },\n minInterval: this.yMinInterval,\n };\n }\n\n getGrid() {\n return {\n top: this.grid.top,\n right: this.grid.right,\n left: this.grid.left,\n bottom: this.grid.bottom,\n };\n }\n getLegend(): any {\n return {\n align: 'left',\n left: this.align,\n show: this.align !== 'none',\n icon: 'rect',\n textStyle: this.style,\n };\n }\n getTooltip() {\n return {\n trigger: 'axis',\n textStyle: this.getTextStyle(this.tooltipFont),\n axisPointer: {\n type: this.axisType,\n label: {\n show: false,\n },\n lineStyle: {\n type: this.lineType,\n color: this.axisColor,\n width: this.axisWidth,\n },\n },\n };\n }\n\n getTextStyle(font: any) {\n return getEchartsTextStyle(font);\n }\n\n getDataZoom() {\n const dataZoom = [];\n if (this.insideDataZoom) {\n let enableDataZoom = true;\n if (this.dataZoomMinData != null) {\n const xSet = new Set<string>();\n this._data.forEach((data) => {\n if (data.x) {\n xSet.add(data.x);\n }\n });\n if (xSet.size < this.dataZoomMinData) {\n enableDataZoom = false;\n }\n }\n if (enableDataZoom) {\n let start = this.dataZoomStart || 0;\n let end = this.dataZoomEnd || 100;\n dataZoom.push({ type: 'inside', start, end, zoomOnMouseWheel: this.zoomOnMouseWheel });\n if (this.sliderDataZoom) {\n dataZoom.push({ type: 'slider', start, end, zoomLock: this.zoomLock, brushSelect: false });\n }\n }\n }\n return dataZoom;\n }\n\n reloadData() {\n const seriesMap = {};\n const dataset = [];\n const source = [];\n dataset.push({ source });\n this._data.forEach((record) => {\n // 针对markline标线关联数据库的操作, 若x的名字与markline的name一致,则获取对应的y轴数据作为markline的value; 目前仅支持一个markline\n // data中过滤掉markline的数据\n if (this.markLine && this.YmarkLineName && record.x === this.YmarkLineName) {\n this.YmarkLineHeight = record.y;\n } else {\n //为空filter会报错\n if (record.s == null) {\n record = { ...record, s: '' };\n }\n source.push(record);\n const s = record.s;\n let series = seriesMap[s];\n if (!series) {\n // seriesSet.add(s);\n const transform = {\n type: 'filter',\n config: { dimension: 's', value: s },\n };\n dataset.push({ transform });\n series = this.setSeriesStyle(s, dataset.length - 1);\n seriesMap[s] = series;\n if (this.showDataMarkLine) {\n series.markLine = {\n symbol: ['none', 'none'],\n label: {\n ...this.style,\n position: 'start',\n },\n data: [],\n };\n if (this.dataMarkLineFormatter) {\n series.markLine.label.formatter = eval('(' + this.dataMarkLineFormatter + ')');\n }\n }\n }\n if (this.showDataMarkLine) {\n series.markLine.data.push({ xAxis: record.x });\n }\n }\n });\n this.chartOption.dataset = dataset;\n if (this.markLine) {\n const marklineStyle: any = {\n symbol: 'none',\n silent: true, // 鼠标悬停书剑,true没有\n data: [],\n };\n if (this.YmarkLineName) {\n marklineStyle.data.push({\n name: this.YmarkLineName,\n type: this.YmarkLineHeight ? null : 'average',\n yAxis: this.YmarkLineHeight,\n lineStyle: {\n color: this.YmarkLineColor,\n type: this.YmarkLineType,\n width: this.YmarkWidth ? this.YmarkWidth : 2,\n },\n label: {\n formatter: '{b}{c}',\n position: 'insideEndTop',\n color: this.YmarkLineColor,\n fontSize: this.font.size,\n },\n });\n }\n if (this.XmarkLineName) {\n marklineStyle.data.push({\n name: this.XmarkLineName,\n type: this.XmarkLineLocation ? null : 'average',\n xAxis: this.XmarkLineLocation,\n lineStyle: {\n color: this.XmarkLineColor,\n type: this.XmarkLineType,\n width: this.XmarkWidth ? this.XmarkWidth : 2,\n },\n label: {\n formatter: '{b}{c}',\n position: 'insideEndTop',\n color: this.XmarkLineColor,\n fontSize: this.font.size,\n },\n });\n }\n this.chartOption.series.push({ type: 'line', markLine: marklineStyle, data: [] });\n // this.chartOption.series[this.chartOption.series.length - 1].markLine = marklineStyle;\n }\n }\n\n setSeriesStyle(name: string, datasetIndex: number) {\n const series: any = {\n name,\n label: {\n show: this.label,\n textStyle: this.style,\n },\n connectNulls: true,\n itemStyle: {},\n type: 'line',\n areaStyle: {},\n smooth: false,\n symbolSize: this.symbolSize ?? 10,\n encode: { x: 'x', y: 'y' },\n datasetIndex,\n };\n this.chartOption.series.push(series);\n series.areaStyle.opacity = 0;\n if (this.type === 'smooth' || this.type === 'smooth-area') {\n series.smooth = true;\n }\n if (this.type === 'area' || this.type === 'smooth-area') {\n series.areaStyle.opacity = 0.5;\n series.symbolSize = this.symbolSize ?? (this.label ? 10 : 0);\n }\n if (this.type === 'step') {\n series.step = this.step;\n }\n return series;\n }\n\n uniqueData(data) {\n for (let i = 0; i < data.length - 1; i++) {\n for (let j = i + 1; j < data.length; j++) {\n if (data[i] === data[j]) {\n data.splice(j, 1);\n j--;\n }\n }\n }\n return data;\n }\n\n getMaxY() {\n for (let i = 0; i < this._data.length; i++) {\n this.yData[i] = this._data[i].y;\n }\n this.uniqueData(this.yData);\n const a = Math.max(...this.yData).toFixed(0);\n const b = a.toString().length;\n const c = Math.pow(10, b - 1);\n const max = Number(c) + Number(a);\n return max;\n }\n\n onChartClick(event) {\n this.dataClick.emit({ x: event.name, s: event.seriesName });\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { BasicLineChartComponent } from './basic-line-chart.component';\nimport { NgxEchartsModule } from 'ngx-echarts';\nimport { WidgetBaseModule, WidgetService } from 'bbj-widget-base';\n\n@NgModule({\n declarations: [BasicLineChartComponent],\n imports: [CommonModule, WidgetBaseModule, NgxEchartsModule],\n})\nexport class BasicLineChartModule {\n constructor(widgetService: WidgetService) {\n widgetService.register(BasicLineChartComponent);\n }\n}\n","import { HttpClient } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\n\r\n@Injectable()\r\nexport class HttpService {\r\n constructor(private http: HttpClient) {}\r\n\r\n get(url: string, options: any) {\r\n return this.http.get(url, options).toPromise();\r\n }\r\n\r\n post(url: string, body: any, options: any) {\r\n return this.http.post(url, body, options).toPromise();\r\n }\r\n}\r\n","import { Component, EventEmitter, OnInit } from '@angular/core';\nimport { Data, DataOutput, GlobalVarService, Property, TemplateUtil, Widget } from 'bbj-widget-base';\nimport { SFOptionalHelp, SFRadioWidgetSchema } from '@delon/form';\nimport { of } from 'rxjs';\nimport { HttpClient } from '@angular/common/http';\nimport { HttpService } from '../shared/service/http.service';\n\n@Component({\n selector: 'sc-button',\n templateUrl: './button.component.html',\n styleUrls: ['./button.component.less'],\n})\n@Widget('按钮', { group: 'component', image: 'assets/img/screen/myButton.png', icon: 'iconmokuai' })\nexport class ButtonComponent implements OnInit {\n textStyle: any = {};\n edit: any;\n @Property('按钮样式', {\n ui: {\n widget: 'myButton',\n spanLabel: 24,\n spanControl: 24,\n name: 'button',\n reset: ['background', 'borderColor'],\n background: [\n { background: '#FFB700', borderColor: '#FFB700' },\n { background: '#00E371', borderColor: '#00E371' },\n { background: '#3285FF', borderColor: '#3285FF' },\n { background: '#B232FF', borderColor: '#B232FF' },\n { background: '#FF3286', borderColor: '#FF3286' },\n { background: '#FF3832', borderColor: '#FF3832' },\n { background: 'linear-gradient(-180deg, #FAD961 0%, #F76B1C 100%)', borderColor: '#F76B1C' },\n { background: 'linear-gradient(-180deg, #B4EC51 0%, #429321 100%)', borderColor: '#429321' },\n { background: 'linear-gradient(-180deg, #20C8FF 0%, #0059DD 100%)', borderColor: '#0059DD' },\n { background: 'linear-gradient(-90deg, #3023AE 0%, #C86DD7 87%)', borderColor: '#C86DD7' },\n ],\n },\n })\n colorExample: any;\n @Property('内容')\n title = 'button';\n @Property('填充', {\n ui: {\n widget: 'myColor',\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', null],\n },\n })\n background = 'linear-gradient(-180deg, #20C8FF 0%, #0059DD 100%)';\n @Property('边框', {\n ui: {\n widget: 'myColor',\n example: ['#FFFFFF', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', null],\n },\n })\n borderColor = '#0059DD';\n @Property('字体', { ui: { widget: 'myFont' } })\n font: any = { family: '', color: '#ffffff', weight: 'normal', size: 12, space: 0, lineHeight: '' };\n @Property('透明度', { ui: { widget: 'myRange', min: 0, max: 1, step: 0.1 } })\n opacity = 1;\n @Property('圆角', { ui: { widget: 'myRange', min: 0, max: 100, step: 1 } })\n radius = 4;\n @Property('阴影', { ui: { widget: 'myShadow' } })\n shadow: any = { color: '', X: 0, Y: 0, Z: 0 };\n @Property('超链接')\n href = '';\n @Property('另起窗口', {\n type: 'boolean',\n ui: {\n checkedChildren: '是',\n unCheckedChildren: '否',\n },\n })\n openModel = true;\n @Property('执行脚本', {\n ui: {\n widget: 'textarea',\n autosize: { minRows: 6, maxRows: 10 },\n optionalHelp: {\n text: `内置变量:\n1、http:用于发起http请求\n2、global:全局变量\n例:http.post(\"http://www.xxx.com/xxx\",{a:global.a});// POST,body传参\n http.post(\"http://www.xxx.com/xxx\",null,{params:{a:global.a}});// POST,url传参\n http.get(\"http://www.xxx.com/xxx\",{params:{a:global.a}});// GET,url传参\n`,\n overlayStyle: {\n whiteSpace: 'pre-line',\n },\n },\n },\n })\n script: string;\n @Data({\n properties: {\n value: { type: 'string', title: '值' },\n },\n })\n data: any[] = [];\n @DataOutput('值')\n valueOutput = new EventEmitter<string>();\n constructor(private http: HttpService, private gloabl: GlobalVarService) {}\n\n ngOnInit() {\n this.textStyle = {\n background: this.background,\n borderColor: this.borderColor,\n fontSize: this.font.size + 'px',\n fontFamily: this.font.family,\n color: this.font.color,\n fontWeight: this.font.weight,\n letterSpacing: this.font.space + 'px',\n lineHeight: this.font.lineHeight + 'px',\n opacity: this.opacity,\n borderRadius: this.radius + '%',\n boxShadow: this.shadow.color + ' ' + this.shadow.X + 'px ' + this.shadow.Y + 'px ' + this.shadow.Z + 'px',\n };\n }\n openPage(event) {\n if (!this.edit) {\n if (this.href) {\n if (this.openModel) {\n window.open(this.href, '_blank');\n } else {\n window.location.href = this.href;\n }\n }\n if (this.script) {\n const fn = new Function('http', 'global', this.script);\n fn(this.http, this.gloabl.data);\n }\n }\n if (this.data?.length) {\n this.valueOutput.emit(this.data[0].value);\n }else{\n this.valueOutput.emit(null);\n }\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { ButtonComponent } from './button.component';\nimport { WidgetBaseModule, WidgetService } from 'bbj-widget-base';\nimport { HttpService } from '../shared/service/http.service';\n\n@NgModule({\n declarations: [ButtonComponent],\n imports: [CommonModule, WidgetBaseModule],\n providers: [HttpService],\n})\nexport class ButtonModule {\n constructor(widgetService: WidgetService) {\n widgetService.register(ButtonComponent);\n }\n}\n","import { Component, OnInit } from '@angular/core';\nimport {Property, Widget} from 'bbj-widget-base';\n\n@Component({\n selector: 'sc-timer',\n templateUrl: './timer.component.html',\n styleUrls: ['./timer.component.less']\n})\n @Widget('时间',{group: 'component',image: 'assets/img/screen/timer.png',icon: 'iconmokuai'})\nexport class TimerComponent implements OnInit {\n\n @Property('图标显示',{ui:{widget: 'checkbox'}})\n iconShow = true;\n @Property('星期显示',{ui:{widget: 'checkbox'}})\n weekShow = true;\n @Property('图标大小',{ui:{widget: 'myRange',min: 0, max: 100, step: 1}})\n iconFontSize = 20;\n @Property('图标右边距',{ui:{widget: 'myRange',min: 0, max: 100, step: 1}})\n iconMarginRight = 10;\n @Property('图标颜色',{ui:{widget: 'myColor', example:['#D0021B','#F5A623','#F8E71C','#50E3C2','#3285FF','#B45FFF','#9B9B9B','#ffffff']}})\n iconColor = '#5DF5F4';\n @Property('字体',{ui:{widget: 'myFont'}})\n font: any = {family: '', color: '#ffffff', weight: 'normal', size: 12, space: 0, lineHeight: ''};\n @Property('字体发光',{ui:{widget: 'checkbox'}})\n fontGlow = false;\n @Property('发光颜色',{ui:{widget: 'myColor', example:['#D0021B','#F5A623','#F8E71C','#50E3C2','#3285FF','#B45FFF','#9B9B9B','#ffffff']}})\n flowColor = '#ffffff';\n @Property('发光程度',{ui:{widget: 'myRange',min: 1, max: 10, step: 1}})\n flowSize = 3;\n @Property('格式')\n format = 'yyyy-MM-dd HH:mm:ss';\n iconStyle: any;\n textStyle: any;\n data: any;\n timer: any;\n week='';\n constructor() { }\n\n ngOnInit() {\n this.getTime();\n this.iconStyle = {\n fontSize: this.iconFontSize + 'px',\n marginRight: this.iconMarginRight + 'px',\n color: this.iconColor\n }\n this.textStyle = {\n fontSize: this.font.size + 'px',\n fontFamily: this.font.family,\n color: this.font.color,\n fontWeight: this.font.weight,\n letterSpacing: this.font.space + 'px',\n lineHeight: this.font.lineHeight + 'px',\n }\n if (this.fontGlow) {// 发光\n let str = '';\n for (let i = 0; i < this.flowSize; i++) {\n str += '0 0 20px ' + this.flowColor + ',';\n }\n str = str.substr(0, str.length - 1);\n this.textStyle['text-shadow'] = str;\n } else {\n this.textStyle['text-shadow'] = '';\n }\n clearInterval(this.timer);\n this.timer = setInterval(() => {\n this.getTime();// 检测变化\n }, 1000);\n }\n getTime() {\n const show_day=new Array('星期天','星期一','星期二','星期三','星期四','星期五','星期六');\n this.data = new Date();\n this.week=show_day[this.data.getDay()];\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { TimerComponent } from './timer.component';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\nimport { WidgetBaseModule, WidgetService } from 'bbj-widget-base';\n\n@NgModule({\n declarations: [TimerComponent],\n imports: [CommonModule, WidgetBaseModule, NzIconModule],\n})\nexport class TimerModule {\n constructor(widgetService: WidgetService) {\n widgetService.register(TimerComponent);\n }\n}\n","import { Component, OnInit, OnChanges } from '@angular/core';\nimport { Property, Widget, Data } from 'bbj-widget-base';\n\n@Component({\n selector: 'sc-number-flop',\n templateUrl: './number-flop.component.html',\n styleUrls: ['./number-flop.component.less'],\n})\n@Widget('数字翻牌器', { group: 'component', image: 'assets/img/screen/number-flop.png', icon: 'iconmokuai' })\nexport class NumberFlopComponent implements OnInit, OnChanges {\n // @Property('静态值')\n // number: number = 1024;\n @Property('前缀内容')\n prefixContent = '';\n @Property('前缀字体', { ui: { widget: 'myFont', hideProperty: { lineHeight: true } } })\n prefixFont: any = { family: '', color: '#ffffff', weight: 'normal', size: 12, space: 0, lineHeight: '' };\n @Property('数字字体', { ui: { widget: 'myFont' , hideProperty: { lineHeight: true } } })\n numberFont: any = { family: '', color: '#ffffff', weight: 'normal', size: 90, space: 0, lineHeight: '' };\n @Property('填充', {\n ui: {\n widget: 'myColor',\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', null],\n },\n })\n background = '#01A4F9';\n @Property('小数点位数', { ui: { widget: 'myRange', min: 0, max: 10, step: 1 } })\n point = 0;\n @Property('后缀内容')\n suffixContent = '';\n @Property('后缀字体', { ui: { widget: 'myFont' } })\n suffixFont: any = { family: '', color: '#ffffff', weight: 'normal', size: 12, space: 0, lineHeight: '' };\n @Property('数字位数')\n numDigit:number = 0;\n headlineStyle: any;\n prefixStyle: any;\n suffixStyle: any;\n numberdate: any;\n textStyle: any;\n serial: any = {};\n tableBar: any = {};\n @Data({\n properties: {\n value: { type: 'number', title: '数值' },\n },\n })\n number: any[] = [{ value: 1024 }];\n\n constructor() {}\n ngOnChanges() {\n this.headlineStyle = {\n height: this.numberFont.size + 'px',\n lineHeight: this.numberFont.size + 'px',\n };\n this.prefixStyle = {\n fontSize: this.prefixFont.size + 'px',\n fontFamily: this.prefixFont.family,\n color: this.prefixFont.color,\n fontWeight: this.prefixFont.weight,\n letterSpacing: this.prefixFont.space + 'px',\n lineHeight: this.prefixFont.lineHeight + 'px',\n };\n this.suffixStyle = {\n fontSize: this.suffixFont.size + 'px',\n fontFamily: this.suffixFont.family,\n color: this.suffixFont.color,\n fontWeight: this.suffixFont.weight,\n letterSpacing: this.suffixFont.space + 'px',\n lineHeight: this.suffixFont.lineHeight + 'px',\n };\n this.textStyle = {\n fontSize: this.numberFont.size + 'px',\n fontFamily: this.numberFont.family,\n color: this.numberFont.color,\n fontWeight: this.numberFont.weight,\n letterSpacing: this.numberFont.space + 'px',\n // lineHeight: this.numberFont.lineHeight + 'px',\n };\n this.serial.width = this.numberFont.size * 0.58 + 'px';\n this.tableBar.width = this.numberFont.size * 0.7 + 'px';\n this.numberdate = Number(this.number && this.number[0] ? this.number[0].value : 0);\n let digits=0;\n if(this.numDigit>0 && this.numberdate.toString().length<this.numDigit){\n digits=this.numDigit-this.numberdate.toString().length;\n }\n this.numberdate=this.numberdate.toFixed(this.point)\n .toString();\n if(digits>0){\n for (let index = 0; index < digits; index++) {\n this.numberdate='0'+this.numberdate;\n }\n }\n this.numberdate= this.numberdate.split('');\n }\n\n ngOnInit() {}\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { NumberFlopComponent } from './number-flop.component';\nimport { WidgetBaseModule, WidgetService } from 'bbj-widget-base';\n\n@NgModule({\n declarations: [NumberFlopComponent],\n imports: [CommonModule, WidgetBaseModule],\n})\nexport class NumberFlopModule {\n constructor(widgetService: WidgetService) {\n widgetService.register(NumberFlopComponent);\n }\n}\n","import { Component, ElementRef, OnInit, EventEmitter } from '@angular/core';\nimport { Property, Widget, DataOutput, Data } from 'bbj-widget-base';\n\n@Component({\n selector: 'sc-vote',\n templateUrl: './vote.component.html',\n styleUrls: ['./vote.component.less'],\n})\n@Widget('投票', { group: 'component', image: 'assets/img/screen/vote.png', icon: 'iconmokuai' })\nexport class VoteComponent implements OnInit {\n\n @Data({\n properties: {\n label: { title: '标签', type: 'string' },\n value: { title: '值', type: 'string' },\n checked: { title: '是否选中', type: 'boolean' },\n },\n })\n options: any = [\n { label: '选项一', value: 'option1' },\n { label: '选项二', value: 'option2' },\n { label: '选项三', value: 'option3' },\n ];\n @Property('', { ui: { widget: 'myCheckNumber', title: '多选个数', spanLabel: 0, spanControl: 24 } })\n num = 1;\n @Property('填充', {\n ui: {\n widget: 'myColor',\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', null],\n },\n })\n background = 'rgba(50,133,255,0.2)';\n @Property('边框', {\n ui: {\n widget: 'myColor',\n example: ['#ffffff', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', null],\n },\n })\n borderColor = '#3285FF';\n @Property('按钮颜色', {\n ui: {\n widget: 'myColor',\n example: ['#ffffff', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', null],\n },\n })\n btnColor = '#3285FF';\n @Property('字体', { ui: { widget: 'myFont' } })\n font: any = { family: '', color: '#ffffff', weight: 'normal', size: 12, space: 0, lineHeight: '' };\n /*checkOptionsOne = [];*/\n textStyle: any;\n @DataOutput('值')\n valueChange = new EventEmitter<any>();\n constructor(private ele: ElementRef) {}\n\n ngOnInit() {\n this.ele.nativeElement.style.background = this.background;\n this.ele.nativeElement.style.border = this.borderColor ? '1px solid ' + this.borderColor : 0;\n this.ele.nativeElement.style.setProperty('--color', this.borderColor);\n this.textStyle = {\n fontSize: this.font.size + 'px',\n fontFamily: this.font.family,\n color: this.font.color,\n fontWeight: this.font.weight,\n letterSpacing: this.font.space + 'px',\n lineHeight: this.font.lineHeight + 'px',\n };\n }\n log(value: object[]): void {\n this.valueChange.emit(value);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { VoteComponent } from './vote.component';\nimport { FormsModule } from '@angular/forms';\nimport { NzCheckboxModule } from 'ng-zorro-antd/checkbox';\nimport { WidgetBaseModule, WidgetService } from 'bbj-widget-base';\n\n@NgModule({\n declarations: [VoteComponent],\n imports: [CommonModule, WidgetBaseModule, NzCheckboxModule, FormsModule],\n})\nexport class VoteModule {\n constructor(widgetService: WidgetService) {\n widgetService.register(VoteComponent);\n }\n}\n","import { Component, OnInit, EventEmitter, OnChanges, SimpleChanges } from '@angular/core';\nimport { Property, Widget, DataOutput, Data, Event, DataInput, Method, Param } from 'bbj-widget-base';\n\n@Component({\n selector: 'sc-select',\n templateUrl: './select.component.html',\n styleUrls: ['./select.component.less'],\n})\n@Widget('下拉框', {\n group: 'component',\n image: 'assets/img/screen/select.png',\n icon: 'iconmokuai',\n})\nexport class SelectComponent implements OnInit, OnChanges {\n @Property('下拉框样式', {\n ui: {\n widget: 'myImageExample',\n spanLabel: 24,\n spanControl: 24,\n reset: ['background', 'borderColor', 'selectColor'],\n example: [\n {\n background: 'assets/img/screen/select1.png',\n data: {\n selectColor: '#F5A623',\n borderColor: '#F5A623',\n background: 'rgba(245,166,35,0.2)',\n dropdownBg: 'rgba(245,166,35,0.2)',\n dropdownBorderColor: '#F5A623',\n },\n },\n {\n background: 'assets/img/screen/select2.png',\n data: {\n selectColor: '#50E3C2',\n borderColor: '#50E3C2',\n background: 'rgba(80,227,194,0.2)',\n dropdownBg: 'rgba(80,227,194,0.2)',\n dropdownBorderColor: '#50E3C2',\n },\n },\n {\n background: 'assets/img/screen/select3.png',\n data: {\n selectColor: '#9013fe',\n borderColor: '#9013fe',\n background: 'rgba(144,19,254,0.2)',\n dropdownBg: 'rgba(144,19,254,0.2)',\n dropdownBorderColor: '#9013fe',\n },\n },\n {\n background: 'assets/img/screen/select4.png',\n data: {\n selectColor: '#3285ff',\n borderColor: '#3285ff',\n background: 'rgba(50,133,255,0.2)',\n dropdownBg: 'rgba(50,133,255,0.2)',\n dropdownBorderColor: '#3285ff',\n },\n },\n ],\n },\n })\n example: any;\n @Property('提示用语', { type: 'string' })\n hint = '请选择';\n @Property('', {\n ui: {\n widget: 'myCheckNumber',\n title: '多选个数',\n spanLabel: 0,\n spanControl: 24,\n },\n })\n num = 1;\n @Property('填充', {\n ui: {\n widget: 'myColor',\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', null],\n },\n })\n background: string;\n @Property('边框', {\n ui: {\n widget: 'myColor',\n example: ['#ffffff', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', null],\n },\n })\n borderColor = '#d9d9d9';\n\n // 通过全局变量来控制颜色变化 当多个时会互相替换 移除此功能\n @Property('选中颜色', {\n ui: {\n widget: 'myColor',\n example: ['#ffffff', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', null],\n },\n })\n dropdownBackgroundColor = '#E6F7FF';\n @Property('选中字体颜色', {\n ui: {\n widget: 'myColor',\n example: ['#ffffff', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', null],\n },\n })\n selectDropDownColor = 'rgba(0,0,0,0.85)';\n @Property('hover字体颜色', {\n ui: {\n widget: 'myColor',\n example: ['#ffffff', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', null],\n },\n })\n selectHoverColor = 'rgba(0,0,0,0.85)';\n @Property('hover背景颜色', {\n ui: {\n widget: 'myColor',\n example: ['#ffffff', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', null],\n },\n })\n selectHoverBackgroundColor = '#f5f5f5';\n\n @Property('字体', { ui: { widget: 'myFont' } })\n font: any = {\n family: '',\n weight: 'normal',\n size: 12,\n space: 0,\n lineHeight: 30,\n };\n\n @Property('对齐方式', {\n enum: [\n { label: '左对齐', value: 'left' },\n { label: '居中', value: 'center' },\n { label: '右对齐', value: 'right' },\n ],\n })\n align = 'left';\n @Property('搜索')\n showSearch: boolean;\n @Property('清空按钮')\n showClean: boolean;\n @Property('查看按钮')\n showConfirm: boolean;\n @Property('下拉宽度', { type: 'number' })\n dropdownWidth = null;\n\n @Property('下拉填充', {\n ui: {\n widget: 'myColor',\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', null],\n },\n })\n dropdownBg = '#fff';\n @Property('下拉边框', {\n ui: {\n widget: 'myColor',\n example: ['#ffffff', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', null],\n },\n })\n dropdownBorderColor = '#fff';\n\n @Property('输出格式', {\n enum: [\n { label: '数组', value: 'array' },\n { label: '字符串', value: 'string' },\n ],\n ui: { widget: 'select', visibleIf: { num: (value) => value > 1 } },\n })\n outputFormat = 'array';\n @Property('分隔字符', { ui: { visibleIf: { outputFormat: ['string'] } } })\n separator = ',';\n selectedValue: any;\n ngStyle: any;\n dropdownStyle: any;\n mode = 'default';\n open: boolean;\n\n @Data({\n properties: {\n label: { title: '标签', type: 'string' },\n value: { title: '值', type: 'string' },\n checked: { title: '是否选中', type: 'boolean' },\n },\n })\n options: any = [\n { label: '选项1', value: 'option1' },\n { label: '选项2', value: 'option2' },\n ];\n\n @DataInput('选中值')\n value: any;\n\n @DataOutput('值')\n @Event('值改变', { params: '值' })\n valueChange = new EventEmitter<any>();\n @DataOutput('原始数据')\n optionChange = new EventEmitter<any>();\n\n constructor() {}\n\n ngOnInit() {\n this.ngStyle = {\n backgroundColor: this.background,\n border: '1px solid ' + this.borderColor,\n fontSize: this.font.size + 'px',\n fontFamily: this.font.family,\n color: this.font.color,\n fontWeight: this.font.weight,\n letterSpacing: this.font.space + 'px',\n lineHeight: this.font.lineHeight + 'px',\n };\n this.dropdownBg = this.dropdownBg ? this.dropdownBg : this.background;\n this.dropdownBorderColor = this.dropdownBorderColor ? this.dropdownBorderColor : this.borderColor;\n this.dropdownStyle = {\n backgroundColor: this.dropdownBg,\n border: '1px solid ' + this.dropdownBorderColor,\n fontSize: this.font.size + 'px',\n fontFamily: this.font.family,\n color: this.font.color,\n fontWeight: this.font.weight,\n letterSpacing: this.font.space + 'px',\n lineHeight: this.font.lineHeight + 'px',\n width: this.dropdownWidth + 'px',\n };\n // this.dropdownStyle.width = this.dropdownWidth ? this.dropdownWidth + 'px' : '';\n document.body.style.setProperty(\n '--dropdownBackgroundColor',\n this.dropdownBackgroundColor || ' rgba(255,255,255,0.2)',\n );\n document.body.style.setProperty('--selectDropDownColor', this.selectDropDownColor || '#333');\n document.body.style.setProperty('--selectHoverColor', this.selectHoverColor || 'rgba(255,255,255,0.5)');\n document.body.style.setProperty('--selectHoverBackgroundColor', this.selectHoverBackgroundColor || '#333');\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes.options) {\n if (this.num && this.num > 1) {\n this.mode = 'multiple';\n this.selectedValue = [];\n this.options.forEach((option) => {\n if (option.checked && this.selectedValue.length < this.num) {\n this.selectedValue.push(option.value ? option.value : option.label);\n }\n });\n if (this.selectedValue.length > 0) {\n this.selectChange(this.selectedValue);\n }\n } else {\n this.mode = 'default';\n const item = this.options.find((s) => s.checked);\n if (item) {\n this.selectedValue = item.value ? item.value : item.label;\n this.selectChange(this.selectedValue);\n }\n }\n }\n if (changes.value) {\n this.selectedValue = this.value;\n // console.log(this.value);\n }\n }\n\n selectAllData() {\n this.selectedValue = [];\n this.options.forEach((data) => {\n this.selectedValue.push(data.value);\n });\n this.selectChange(this.selectedValue);\n // this.valueChange.emit(this.selectedValue);\n // this.optionChange.emit(this.options);\n }\n\n selectChange(value: string | string[]) {\n this.selectedValue = value;\n if (Array.isArray(value)) {\n // 多选\n if (this.outputFormat === 'string') {\n this.valueChange.emit(value.join(this.separator || ','));\n } else {\n this.valueChange.emit(value);\n }\n const selectedOption = this.options.filter((option) => value.includes(option.value));\n this.optionChange.emit(selectedOption);\n } else {\n this.valueChange.emit(value);\n const selectedOption = this.options.find((option) => option.value === event);\n this.optionChange.emit(selectedOption);\n }\n }\n\n @Method('选中')\n select(@Param('值') value: any) {\n this.selectedValue = value;\n this.selectChange(value);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SelectComponent } from './select.component';\nimport { FormsModule } from '@angular/forms';\nimport { NzSelectModule } from 'ng-zorro-antd/select';\nimport { WidgetBaseModule, WidgetService } from 'bbj-widget-base';\nimport { NzButtonModule } from 'ng-zorro-antd/button';\nimport { NzDividerModule } from 'ng-zorro-antd/divider';\n\n@NgModule({\n declarations: [SelectComponent],\n imports: [CommonModule, WidgetBaseModule, NzSelectModule, FormsModule, NzButtonModule],\n})\nexport class SelectModule {\n constructor(widgetService: WidgetService) {\n widgetService.register(SelectComponent);\n }\n}\n","export function getFontStyle(font: any) {\r\n let style: any = {};\r\n if (font) {\r\n if (font.size) style.fontSize = font.size + 'px';\r\n if (font.family) style.fontFamily = font.family;\r\n if (font.color) style.color = font.color;\r\n if (font.weight) style.fontWeight = font.weight;\r\n if (font.space) style.letterSpacing = font.space + 'px';\r\n if (font.lineHeight) style.lineHeight = font.lineHeight + 'px';\r\n }\r\n return style;\r\n}\r\n","import { Component, OnInit, EventEmitter } from '@angular/core';\nimport { Property, Widget, DataOutput } from 'bbj-widget-base';\nimport { getFontStyle } from '../shared/util/style.util';\n\n@Component({\n selector: 'sc-search',\n templateUrl: './search.component.html',\n styleUrls: ['./search.component.less'],\n})\n@Widget('搜索框', { group: 'component', image: 'assets/img/screen/search.png', icon: 'iconmokuai' })\nexport class SearchComponent implements OnInit {\n @Property('按钮样式', {\n ui: {\n widget: 'myButton',\n spanLabel: 24,\n spanControl: 24,\n icon: 'search',\n reset: ['background', 'borderColor', { parent: 'font', child: 'color' }],\n background: [\n { color: '#F5A623', borderColor: '#F5A623', background: 'rgba(245,166,35,0.2)' },\n { color: '#50E3C2', borderColor: '#50E3C2', background: 'rgba(80,227,194,0.2)' },\n { color: '#9013fe', borderColor: '#9013fe', background: 'rgba(144,19,254,0.2)' },\n { color: '#3285ff', borderColor: '#3285ff', background: 'rgba(50,133,255,0.2)' },\n ],\n },\n })\n colorExample: any = { color: '#3285ff', borderColor: '#3285ff', background: 'rgba(50,133,255,0.2)' };\n\n @Property('填充', {\n ui: {\n widget: 'myColor',\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', null],\n },\n })\n background = 'rgba(50,133,255,0.2)';\n @Property('边框', {\n ui: {\n widget: 'myColor',\n example: ['#ffffff', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', null],\n },\n })\n borderColor = '#3285ff';\n @Property('字体', { ui: { widget: 'myFont' } })\n font: any = { family: '', color: '#3285ff', weight: 'normal', size: 12, space: 0, lineHeight: '' };\n @Property('按钮样式', {\n enum: [\n { label: '样式一', value: 'default' },\n { label: '样式二', value: 'iconSingle' }\n ],\n })\n btnStyleOption = 'default';\n\n @Property('按钮颜色', {\n ui: {\n widget: 'myColor',\n visibleIf: { btnStyleOption: ['iconSingle'] }\n },\n })\n iconSingleColor = '#fff';\n @Property('按钮大小', {\n ui: {\n visibleIf: { btnStyleOption: ['iconSingle'] }\n },\n })\n iconSingleSize = 16;\n\n @Property('隐藏按钮')\n hideBtn: boolean;\n @Property('提示文字')\n placeholder: string;\n @Property('高度')\n height = 26;\n btnStyle: any;\n btnIconStyle: any;\n @DataOutput('值')\n valueChange = new EventEmitter<any>();\n value: any;\n constructor() { }\n\n ngOnInit() {\n this.btnStyle = {\n backgroundColor: this.background,\n borderColor: this.borderColor,\n ...getFontStyle(this.font),\n };\n if (this.btnStyleOption === 'iconSingle') {\n this.btnIconStyle = {\n fontSize: this.iconSingleSize + 'px',\n color: this.iconSingleColor,\n }\n }\n }\n\n searchChange(value) {\n this.valueChange.emit(value);\n }\n\n onKeypress(event: KeyboardEvent) {\n if (event.key === 'Enter') {\n this.valueChange.emit(this.value);\n }\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { SearchComponent } from './search.component';\nimport { NzInputModule } from 'ng-zorro-antd/input';\nimport { NzButtonModule } from 'ng-zorro-antd/button';\nimport { FormsModule } from '@angular/forms';\nimport { WidgetBaseModule, WidgetService } from 'bbj-widget-base';\nimport { NzIconModule, NzIconService } from 'ng-zorro-antd/icon';\nimport { NzPipesModule } from 'ng-zorro-antd/pipes';\n\n@NgModule({\n declarations: [SearchComponent],\n imports: [CommonModule, WidgetBaseModule, NzIconModule, NzInputModule, NzButtonModule, FormsModule, NzPipesModule],\n})\nexport class SearchModule {\n constructor(widgetService: WidgetService, private iconService: NzIconService) {\n widgetService.register(SearchComponent);\n this.iconService.fetchFromIconfont({\n scriptUrl: 'assets/icons/screen-icons.js'\n });\n }\n}\n","import { Component, OnInit, ElementRef, OnChanges, SimpleChanges, NgZone } from '@angular/core';\nimport { Property, Widget } from 'bbj-widget-base';\nimport { BaiduMapService } from 'bbj-screen-widget/core';\nimport { GaodeMapService } from '../shared/service/gaode-map.service';\nimport { getFontStyle } from '../shared/util/style.util';\ndeclare var BMapGL: any;\n\n@Component({\n selector: 'sc-weather',\n templateUrl: './weather.component.html',\n styleUrls: ['./weather.component.less'],\n})\n@Widget('天气', { group: 'component', image: 'assets/img/screen/weather.png', icon: 'iconmokuai' })\nexport class WeatherComponent implements OnInit {\n @Property('字体', { ui: { widget: 'myFont' } })\n tempFont: any = { family: '', color: '#ffffff', weight: 'normal', size: 40, space: 0, lineHeight: '' };\n\n @Property('显示样式', {\n enum: [\n { label: '样式1', value: 'default' },\n { label: '样式2', value: 'mini' },\n ],\n })\n weatherStyleType = 'default';\n\n @Property('图标大小', {\n ui: {\n widget: 'myRange',\n min: 0,\n max: 100,\n step: 1,\n visibleIf: { weatherStyleType: ['mini'] },\n },\n })\n iconSize = 64;\n\n city: string;\n weather: string;\n temperature: string;\n weatherIcon: any[] = ['iconfont', 'icon-duoyun'];\n weatherImgs = {\n cloudy: 'weather_cloudy',\n rain: 'weather_rain',\n overcast: 'weather_overcast',\n sunny: 'weather_sunny',\n };\n weatherImgName = 'overcast';\n tempStyle: any;\n\n constructor(\n public baiduMapService: BaiduMapService,\n private gaodeMapService: GaodeMapService,\n private zone: NgZone,\n ) {}\n\n ngOnInit() {\n this.tempStyle = getFontStyle(this.tempFont);\n this.reload();\n }\n\n async reload() {\n const localCity = await this.baiduMapService.localCity();\n const cityName = localCity.name;\n this.city = cityName;\n const data = await this.gaodeMapService.getWeather(cityName);\n this.zone.run(() => {\n this.weather = data.lives[0].weather;\n this.weatherImgName = this.weather.includes('雨')\n ? 'rain'\n : this.weather === '晴'\n ? 'sunny'\n : this.weather.includes('云')\n ? 'cloudy'\n : 'overcast';\n this.temperature = data.lives[0].temperature;\n });\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { WeatherComponent } from './weather.component';\nimport { HttpClientJsonpModule } from '@angular/common/http';\nimport { WidgetBaseModule, WidgetService } from 'bbj-widget-base';\n\n@NgModule({\n declarations: [WeatherComponent],\n imports: [CommonModule, WidgetBaseModule, HttpClientJsonpModule],\n providers: [],\n})\nexport class WeatherModule {\n constructor(widgetService: WidgetService) {\n widgetService.register(WeatherComponent);\n }\n}\n","import { Component, ElementRef, OnInit, EventEmitter, OnChanges, SimpleChanges } from '@angular/core';\nimport { Property, Widget, DataOutput, Data } from 'bbj-widget-base';\nimport {SFNumberWidgetSchema} from '@delon/form';\n\n@Component({\n selector: 'sc-radio',\n templateUrl: './radio.component.html',\n styleUrls: ['./radio.component.less'],\n})\n@Widget('单选', { group: 'component', image: 'assets/img/screen/radio.png', icon: 'iconmokuai' })\nexport class RadioComponent implements OnInit, OnChanges {\n\n @Property('颜色', {\n ui: {\n widget: 'myColor',\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],\n },\n })\n radioColor = '#3285FF';\n @Property('样式类型', {\n ui: { widget: 'select' },\n enum: [\n { label: '圆点', value: 'circle' },\n { label: '按钮', value: 'button' },\n ],\n })\n styleType = 'circle';\n @Property('字体', { ui: { widget: 'myFont' } })\n font: any = { family: '', color: '#ffffff', weight: 'normal', size: 12, space: 0, lineHeight: 26 };\n radioValue: any;\n ngStyle: any;\n @Property('选中图片',{\n type: 'string',\n ui: {\n widget: 'myUpload',\n },\n })\n selectImage='';\n @Property('未选图片',{\n type: 'string',\n ui: {\n widget: 'myUpload',\n }\n })\n notSelectImage='';\n @Property('自定义宽',{type:'number'})\n width=150;\n @Property('自定义高',{type:'number'})\n height=50;\n isCustom=false;\n @Data({\n properties: {\n label: { title: '标签', type: 'string' },\n value: { title: '值', type: 'string' },\n checked: { title: '是否选中', type: 'boolean' },\n },\n })\n options:any[]=[\n { label: '是', value: '1', checked: true },\n { label: '否', value: '0' },\n ]\n @DataOutput('值')\n valueChange = new EventEmitter<any>();\n constructor(private ele: ElementRef) {}\n\n ngOnInit() {\n this.ele.nativeElement.style.setProperty('--radioColor', this.radioColor);\n this.ele.nativeElement.style.setProperty('--outerSize', this.font.size+'px');\n this.ele.nativeElement.style.setProperty('--innerSize', this.font.size/2+'px');\n this.ele.nativeElement.style.setProperty('--width', this.width+'px');\n this.ele.nativeElement.style.setProperty('--height', this.height+'px');\n this.ele.nativeElement.style.setProperty('--color', this.font.color );\n this.ele.nativeElement.style.setProperty('--weight', this.font.weight );\n this.ele.nativeElement.style.setProperty('--family', this.font.weight );\n this.ele.nativeElement.style.setProperty('--select', 'url('+this.selectImage+')' );\n this.ele.nativeElement.style.setProperty('--notSelect', 'url('+this.notSelectImage+')');\n this.ngStyle = {\n fontSize: this.font.size + 'px',\n fontFamily: this.font.family,\n color: this.font.color,\n fontWeight: this.font.weight,\n letterSpacing: this.font.space + 'px',\n lineHeight: this.font.lineHeight + 'px',\n };\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if(this.selectImage&&this.notSelectImage&&this.selectImage!=''&&this.notSelectImage!=''){\n this.isCustom=true;\n }\n if (changes.options) {\n if (this.options) {\n const selectRadio = this.options.find((s) => s.checked);\n if (selectRadio) {\n this.radioValue = selectRadio.value;\n this.valueChange.emit(this.radioValue);\n }\n }\n }\n }\n\n checked(option){\n this.options.forEach((o)=>{\n if(o.value===option.value){\n o.checked=true;\n this.valueChange.emit(o.value);\n }else{\n o.checked=false;\n }\n })\n }\n\n radioChange(event) {\n this.valueChange.emit(event);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { RadioComponent } from './radio.component';\nimport { FormsModule } from '@angular/forms';\nimport { NzRadioModule } from 'ng-zorro-antd/radio';\nimport { WidgetBaseModule, WidgetService } from 'bbj-widget-base';\n\n@NgModule({\n declarations: [RadioComponent],\n imports: [CommonModule, WidgetBaseModule, NzRadioModule, FormsModule],\n})\nexport class RadioModule {\n constructor(widgetService: WidgetService) {\n widgetService.register(RadioComponent);\n }\n}\n","import { Component, ElementRef, OnInit, EventEmitter, OnChanges, SimpleChanges } from '@angular/core';\nimport { NzCheckBoxOptionInterface } from 'ng-zorro-antd/checkbox';\nimport { Property, Widget, DataOutput, Data, Event, DataInput } from 'bbj-widget-base';\n\ninterface CheckBoxOption extends NzCheckBoxOptionInterface {\n color?: string;\n}\n\n@Component({\n selector: 'sc-checkbox',\n templateUrl: './checkbox.component.html',\n styleUrls: ['./checkbox.component.less'],\n host: {\n '[class.vertical]': 'layout===\"vertical\"',\n },\n})\n@Widget('复选框', {\n group: 'component',\n image: 'assets/img/screen/checkbox.png',\n icon: 'iconmokuai',\n})\nexport class CheckboxComponent implements OnInit, OnChanges {\n @Data({\n properties: {\n label: { title: '标签', type: 'string' },\n value: { title: '值', type: 'string' },\n checked: { title: '是否选中', type: 'boolean' },\n },\n })\n options: CheckBoxOption[] = [\n { label: '多选一', value: 'option1', checked: true },\n { label: '多选二', value: 'option2' },\n { label: '多选三', value: 'option3' },\n ];\n @Property('复选框颜色', {\n ui: {\n widget: 'myColor',\n },\n })\n borderColor = '#3285FF';\n @Property('字体', { ui: { widget: 'myFont' } })\n font: any = {\n family: '',\n weight: 'normal',\n size: 12,\n space: 0,\n lineHeight: 26,\n };\n textStyle: any;\n @Property('整体布局', {\n enum: [\n { label: '横向', value: 'horizontal' },\n { label: '纵向', value: 'vertical' },\n ],\n })\n layout = 'horizontal';\n @Property('选项布局', {\n enum: [\n { label: '横向', value: 'horizontal' },\n { label: '纵向', value: 'vertical' },\n ],\n })\n lableLayout = 'horizontal';\n @Property('选项宽度')\n labelWidthNum: any;\n @Property('选项边距', { ui: { widget: 'myGrid' } })\n lablePaddNum: any = {\n top: 0,\n right: 0,\n bottom: 0,\n left: 0,\n };\n\n @Property('显示全选')\n showCheckAll: boolean;\n @Property('隐藏文本')\n hiddenLabel: boolean;\n @Property('输出格式', {\n enum: [\n { label: '数组', value: 'array' },\n { label: '字符串', value: 'string' },\n ],\n })\n outputFormat = 'array';\n @Property('分隔字符', { ui: { visibleIf: { outputFormat: ['string'] } } })\n separator = ',';\n @Property('标签颜色', {\n ui: {\n widget: 'seriesColor',\n },\n })\n labelColors: string[];\n @Property('选中图片', {\n type: 'string',\n ui: {\n widget: 'myUpload',\n },\n })\n selectImage = '';\n @Property('未选图片', {\n type: 'string',\n ui: {\n widget: 'myUpload',\n },\n })\n notSelectImage = '';\n @Property('图片宽', { type: 'number' })\n width = 150;\n @Property('图片高', { type: 'number' })\n height = 50;\n isCustom = false;\n\n @DataInput('选中值')\n value: any;\n\n @DataOutput('值')\n @Event('值改变', { params: '值' })\n valueChange = new EventEmitter<any>();\n\n checkOptions: CheckBoxOption[];\n allChecked = false;\n indeterminate = true;\n lablePadd: any;\n labelWidth: any;\n @Property('禁用', { type: 'boolean' })\n disabled: boolean;\n\n constructor(private ele: ElementRef) {}\n\n ngOnInit() {\n /*this.ele.nativeElement.style.borderColor = this.borderColor;*/\n /* this.ele.nativeElement.style.setProperty('--color', this.borderColor);*/\n this.textStyle = {\n fontSize: this.font.size + 'px',\n fontFamily: this.font.family,\n color: this.font.color,\n fontWeight: this.font.weight,\n letterSpacing: this.font.space + 'px',\n lineHeight: this.font.lineHeight + 'px',\n borderColor: this.borderColor,\n backgroudColor: this.borderColor,\n };\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (this.selectImage && this.notSelectImage && this.selectImage != '' && this.notSelectImage != '') {\n this.ele.nativeElement.style.setProperty('--outerSize', this.font.size + 'px');\n this.ele.nativeElement.style.setProperty('--innerSize', this.font.size / 2 + 'px');\n this.ele.nativeElement.style.setProperty('--width', this.width + 'px');\n this.ele.nativeElement.style.setProperty('--height', this.height + 'px');\n this.ele.nativeElement.style.setProperty('--color', this.font.color);\n this.ele.nativeElement.style.setProperty('--weight', this.font.weight);\n this.ele.nativeElement.style.setProperty('--family', this.font.weight);\n this.ele.nativeElement.style.setProperty('--select', 'url(' + this.selectImage + ')');\n this.ele.nativeElement.style.setProperty('--notSelect', 'url(' + this.notSelectImage + ')');\n this.isCustom = true;\n }\n if (changes.value) {\n this.updateCheckOptions();\n }\n if (changes.options) {\n this.checkOptions = this.options.map((option, i) => {\n option = { ...option };\n if (this.labelColors?.length) {\n option.color = this.labelColors[i % this.labelColors.length];\n }\n return option;\n });\n this.updateSingleChecked();\n if (this.value) {\n this.updateCheckOptions();\n } else {\n this.updateValue(true);\n }\n }\n\n if (changes.lablePaddNum && changes.lablePaddNum.currentValue) {\n const padd = changes.lablePaddNum.currentValue;\n this.lablePadd = `${padd.top || 0}px ${padd.right || 0}px ${padd.bottom || 0}px ${padd.left || 0}px`;\n // console.log(this.lablePadd);\n }\n if (changes.labelWidthNum && changes.labelWidthNum.currentValue) {\n const labelWidth = changes.labelWidthNum.currentValue;\n if (Number(labelWidth)) {\n this.labelWidth = labelWidth + 'px';\n } else {\n const isPercent =\n labelWidth.charAt(labelWidth.length - 1) === '%' ? Number(labelWidth.slice(0, labelWidth.length - 1)) : false;\n\n if (isPercent) {\n this.labelWidth = labelWidth;\n }\n }\n }\n }\n change(event: NzCheckBoxOptionInterface[]) {\n this.updateSingleChecked();\n this.updateValue();\n }\n\n updateCheckOptions() {\n if (this.value && this.checkOptions?.length) {\n let values: string[];\n if (typeof this.value === 'string') {\n values = this.value.split(this.separator || ',');\n } else {\n values = this.value;\n }\n let changed = false;\n this.checkOptions.forEach((option) => {\n const checked = option.value && values.includes(option.value.toString());\n if (option.checked !== checked) {\n changed = true;\n option.checked = checked;\n }\n });\n if (changed) {\n this.checkOptions = [...this.checkOptions];\n this.updateSingleChecked();\n }\n }\n }\n\n updateValue(init?: boolean) {\n const value = [];\n this.checkOptions.forEach((item) => {\n if (item.checked) {\n value.push(item.value);\n }\n });\n if (!init || value.length) {\n if (this.outputFormat === 'string') {\n this.valueChange.emit(value.join(this.separator || ','));\n } else {\n this.valueChange.emit(value);\n }\n }\n }\n\n updateAllChecked(): void {\n this.indeterminate = false;\n if (this.allChecked) {\n this.checkOptions = this.checkOptions.map((item) => {\n return {\n ...item,\n checked: true,\n };\n });\n } else {\n this.checkOptions = this.checkOptions.map((item) => {\n return {\n ...item,\n checked: false,\n };\n });\n }\n this.updateValue();\n }\n\n updateSingleChecked(): void {\n if (this.showCheckAll) {\n if (this.checkOptions.every((item) => !item.checked)) {\n this.allChecked = false;\n this.indeterminate = false;\n } else if (this.checkOptions.every((item) => item.checked)) {\n this.allChecked = true;\n this.indeterminate = false;\n } else {\n this.indeterminate = true;\n }\n }\n }\n\n // 全选\n checkedAll() {\n this.allChecked = !this.allChecked;\n // this.\n }\n\n checked(option) {\n let arr = [];\n this.options.forEach((o) => {\n if (o.value === option.value) {\n o.checked = !o.checked;\n }\n if (o.checked) {\n arr.push(o.value);\n }\n });\n this.valueChange.emit(arr.join(this.separator || ','));\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\nimport { NzCheckboxModule } from 'ng-zorro-antd/checkbox';\nimport { CheckboxComponent } from './checkbox.component';\nimport { WidgetBaseModule, WidgetService } from 'bbj-widget-base';\n\n@NgModule({\n declarations: [CheckboxComponent],\n imports: [CommonModule, WidgetBaseModule, NzCheckboxModule, FormsModule],\n})\nexport class CheckboxModule {\n constructor(widgetService: WidgetService) {\n widgetService.register(CheckboxComponent);\n }\n}\n","import {Component, ElementRef, OnInit} from '@angular/core';\nimport {Property, Widget} from 'bbj-widget-base';\n\n@Component({\n selector: 'sc-rate',\n templateUrl: './rate.component.html',\n styleUrls: ['./rate.component.less']\n})\n@Widget('评分',{group: 'component',image: 'assets/img/screen/rate.png',icon:'iconmokuai'})\nexport class RateComponent implements OnInit {\n\n @Property('类型', {enum: [\n { label: '分数', value: 'slider' },\n { label: '星级', value: 'rate' },\n { label: '满意度', value: 'radio' },\n ],ui: {widget: 'select'}})\n type = 'rate';\n @Property('颜色',{ui:{widget: 'myColor', example:['#D0021B','#F5A623','#F8E71C','#50E3C2','#3285FF','#B45FFF','#9B9B9B','#333333']}})\n radioColor = '#3285FF';\n @Property('字体',{ui:{widget: 'myFont'}})\n font: any = {family: '', color: '#ffffff', weight: 'normal', size: 12, space: 0, lineHeight: 26};\n rateValue = 3.5;\n radioValue = 'great';\n sliderValue = 8;\n style: any;\n constructor(private ele: ElementRef) { }\n\n ngOnInit() {\n this.ele.nativeElement.style.setProperty('--backgroundColor', this.radioColor);\n this.style = {\n fontSize: this.font.size + 'px',\n fontFamily: this.font.family,\n color: this.font.color,\n fontWeight: this.font.weight,\n letterSpacing: this.font.space + 'px',\n lineHeight: this.font.lineHeight + 'px',\n }\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\nimport { NzRateModule } from 'ng-zorro-antd/rate';\nimport { NzRadioModule } from 'ng-zorro-antd/radio';\nimport { NzSliderModule } from 'ng-zorro-antd/slider';\nimport { RateComponent } from './rate.component';\nimport { WidgetBaseModule, WidgetService } from 'bbj-widget-base';\n\n@NgModule({\n declarations: [RateComponent],\n imports: [CommonModule, WidgetBaseModule, NzRateModule, FormsModule, NzRadioModule, NzSliderModule],\n})\nexport class RateModule {\n constructor(widgetService: WidgetService) {\n widgetService.register(RateComponent);\n }\n}\n","import {\n Component,\n OnInit,\n ElementRef,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n OnChanges,\n SimpleChanges,\n EventEmitter,\n Renderer2,\n} from '@angular/core';\nimport { Property, Widget, Data, DataOutput, WidgetRef, CustomExport } from 'bbj-widget-base';\n\n@Component({\n selector: 'sc-general-text',\n templateUrl: './general-text.component.html',\n styleUrls: ['./general-text.component.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\n@Widget('常规文本', { group: 'generalText', icon: 'iconwenzi' })\nexport class GeneralTextComponent implements OnInit, OnChanges, CustomExport {\n @Property('内容', { ui: { widget: 'textarea', autosize: { minRows: 6, maxRows: 6 } } })\n title = '文本';\n @Property('背景', {\n ui: {\n widget: 'myColor',\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', null],\n },\n })\n background: string;\n @Property('字体', { ui: { widget: 'myFont' } })\n font: any = { family: '', color: '#ffffff', weight: 'normal', size: 12, space: 0, lineHeight: '' };\n @Property('透明度', { ui: { widget: 'myRange', min: 0, max: 1, step: 0.1 } })\n opacity = 1;\n @Property('阴影', { ui: { widget: 'myShadow' } })\n shadow: any = { color: '', X: 0, Y: 0, Z: 0 };\n @Property('文字对齐', {\n ui: { widget: 'select' },\n enum: [\n { label: '左对齐', value: 'left' },\n { label: '右对齐', value: 'right' },\n { label: '居中', value: 'center' },\n ],\n })\n align = 'left';\n @Property('内容边距', { ui: { widget: 'myGrid' } })\n grid: any = {\n top: 0,\n right: 0,\n bottom: 0,\n left: 0,\n };\n style: any;\n @Data({\n properties: {\n value: { type: 'string', title: '值' },\n color: { type: 'string', title: '颜色' },\n },\n })\n data: any[] = [];\n @DataOutput('值', { triggerLink: false })\n dataChange = new EventEmitter();\n constructor(private renderer: Renderer2, private cd: ChangeDetectorRef, private widgetRef: WidgetRef) {}\n\n ngOnInit() {}\n\n ngOnChanges(changes: SimpleChanges): void {\n this.style = {\n backgroundColor: this.background,\n fontSize: this.font.size + 'px',\n fontFamily: this.font.family,\n color: this.data && this.data[0] && this.data[0].color ? this.data[0].color : this.font.color,\n fontWeight: this.font.weight,\n letterSpacing: this.font.space + 'px',\n lineHeight: this.font.lineHeight + 'px',\n opacity: this.opacity,\n textShadow: this.shadow.X + 'px ' + this.shadow.Y + 'px ' + this.shadow.Z + 'px ' + this.shadow.color,\n };\n if (this.grid) {\n const { top = 0, right = 0, bottom = 0, left = 0 } = this.grid;\n this.style.padding = top + 'px ' + right + 'px ' + bottom + 'px ' + left + 'px';\n }\n const widget: any = this.widgetRef.widget as any;\n if (widget.link?.enabled || widget.outputs?.enabled) {\n this.style.cursor = 'pointer';\n }\n this.style.textAlign = this.align;\n if (changes.data) {\n if (this.data?.length && this.data[0].value) {\n this.dataChange.emit(this.data[0].value);\n } else {\n this.dataChange.emit(null);\n }\n }\n this.cd.markForCheck();\n }\n\n exportWord() {\n let content = this.title;\n if (this.data != null && this.data[0] != null && this.data[0].value != null) {\n content = this.data[0].value;\n }\n if (content) {\n content = content.replace(/\\n/g, '<br/>').replace(/ /g, ' ');\n const p = document.createElement('p');\n p.innerHTML = content;\n Object.keys(this.style).forEach((key) => {\n this.renderer.setStyle(p, key, this.style[key]);\n });\n return p.outerHTML;\n }\n return null;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { GeneralTextComponent } from './general-text.component';\nimport { WidgetBaseModule, WidgetService } from 'bbj-widget-base';\nimport { NzPipesModule } from 'ng-zorro-antd/pipes';\n\n@NgModule({\n declarations: [GeneralTextComponent],\n imports: [CommonModule, WidgetBaseModule,NzPipesModule],\n})\nexport class GeneralTextModule {\n constructor(widgetService: WidgetService) {\n widgetService.register(GeneralTextComponent);\n }\n}\n","import { Component, ElementRef, OnChanges, OnInit, SimpleChanges, ViewChild } from '@angular/core';\nimport { Property, Widget, Data } from 'bbj-widget-base';\n\n@Component({\n selector: 'sc-marquee',\n templateUrl: './marquee.component.html',\n styleUrls: ['./marquee.component.less'],\n})\n@Widget('跑马灯', { group: 'scrollText', icon: 'iconwenzi' })\nexport class MarqueeComponent implements OnInit, OnChanges {\n @Property('背景', {\n ui: {\n widget: 'myColor',\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],\n },\n })\n background: string;\n @Property('字体', { ui: { widget: 'myFont' } })\n font: any = { family: '', color: '#ffffff', weight: 'normal', size: 12, space: 0, lineHeight: '' };\n @Property('透明度', { ui: { widget: 'myRange', min: 0, max: 1, step: 0.1 } })\n opacity = 1;\n @Property('阴影', { ui: { widget: 'myShadow' } })\n shadow: any = { color: '', X: 0, Y: 0, Z: 0 };\n @Property('动画', {\n enum: [\n { label: '从下向上滚动', value: 'up' },\n { label: '从上向下滚动', value: 'down' },\n { label: '从左向右滚动', value: 'right' },\n { label: '从右向左滚动', value: 'left' },\n ],\n ui: { widget: 'select' },\n })\n direction = 'left';\n @Property('速度', { ui: { widget: 'myRange', min: 0, max: 20, step: 1 } })\n scrollamount = 2;\n @Property('轨迹', {\n enum: [\n { label: '循环绕行', value: 'scroll' },\n { label: '播放一次', value: 'slide' },\n { label: '来回往复运动', value: 'alternate' },\n ],\n ui: { widget: 'select' },\n })\n behavior = 'scroll';\n\n @Data({\n properties: {\n value: { type: 'string', title: '值' },\n },\n })\n data: any[] = [{ value: '跑马灯' }];\n style: any;\n display = true;\n\n constructor() {}\n\n ngOnInit() {\n this.style = {\n backgroundColor: this.background,\n fontSize: this.font.size + 'px',\n fontFamily: this.font.family,\n color: this.font.color,\n fontWeight: this.font.weight,\n letterSpacing: this.font.space + 'px',\n lineHeight: this.font.lineHeight + 'px',\n opacity: this.opacity,\n boxShadow: this.shadow.color + ' ' + this.shadow.X + 'px ' + this.shadow.Y + 'px ' + this.shadow.Z + 'px',\n };\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes.data) {\n this.reset();\n }\n }\n\n /**\n * 数据改变之后重置跑马灯\n */\n reset() {\n this.display = false;\n setTimeout(() => (this.display = true));\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { MarqueeComponent } from './marquee.component';\nimport { WidgetBaseModule, WidgetService } from 'bbj-widget-base';\n\n@NgModule({\n declarations: [MarqueeComponent],\n imports: [CommonModule, WidgetBaseModule],\n})\nexport class MarqueeModule {\n constructor(widgetService: WidgetService) {\n widgetService.register(MarqueeComponent);\n }\n}\n","import { Component, ElementRef, OnInit } from '@angular/core';\nimport { Property, Widget, Data } from 'bbj-widget-base';\n\n@Component({\n selector: 'sc-wordart',\n templateUrl: './wordart.component.html',\n styleUrls: ['./wordart.component.less']\n})\n@Widget('艺术字', { group: 'wordart', icon: 'iconwenzi' })\nexport class WordartComponent implements OnInit {\n @Property('内容')\n title = '艺术字';\n @Property('背景', { ui: { widget: 'myColor', example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', null] } })\n background: string;\n @Property('字体', { ui: { widget: 'myFont' , hideProperty: {size: true, lineHeight: true, space: true }} })\n font: any = { family: '', color: '#333333', weight: 'normal', size: 12, space: 0, lineHeight: '' };\n @Property('透明度', { ui: { widget: 'myRange', min: 0, max: 1, step: 0.1 } })\n opacity = 1;\n @Property('渐变色', { ui: { hidden: true } })\n backgroundImage: string;\n @Property('文字对齐', {\n ui: { widget: 'select' },\n enum: [\n { label: '左对齐', value: 'left' },\n { label: '右对齐', value: 'right' },\n { label: '居中', value: 'center' }\n ]\n })\n align = 'left';\n style: any;\n @Data({\n properties: {\n value: { type: 'string', title: '值' },\n },\n })\n data: any[] = [];\n constructor(private ele: ElementRef) { }\n\n ngOnInit() {\n this.style = {\n fontSize: this.ele.nativeElement.offsetHeight > (this.ele.nativeElement.offsetWidth - 10) / this.title.length ? (this.ele.nativeElement.offsetWidth - 10) / this.title.length + 'px' : (this.ele.nativeElement.offsetHeight - 10) + 'px',\n lineHeight: this.ele.nativeElement.offsetHeight > this.ele.nativeElement.offsetWidth / this.title.length ? (this.ele.nativeElement.offsetWidth - 10) / this.title.length + 'px' : (this.ele.nativeElement.offsetHeight - 10) + 'px',\n fontFamily: this.font.family,\n color: this.font.color,\n fontWeight: this.font.weight,\n letterSpacing: this.font.space + 'px',\n opacity: this.opacity\n }\n if (this.backgroundImage) {\n this.style.backgroundImage = this.backgroundImage;\n }\n this.ele.nativeElement.style.backgroundColor = this.background;\n this.ele.nativeElement.style.textAlign = this.align;\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { WordartComponent } from './wordart.component';\nimport { WidgetBaseModule, WidgetService } from 'bbj-widget-base';\n\n@NgModule({\n declarations: [WordartComponent],\n imports: [CommonModule, WidgetBaseModule],\n})\nexport class WordartModule {\n constructor(widgetService: WidgetService) {\n widgetService.register(WordartComponent);\n }\n}\n","import { Component, OnInit, ElementRef } from '@angular/core';\nimport { Property, Widget } from 'bbj-widget-base';\n\n@Component({\n selector: 'sc-iconfont',\n templateUrl: './iconfont.component.html',\n styleUrls: ['./iconfont.component.less'],\n})\n@Widget('图标', { group: 'iconfont', icon: 'icontupian' })\nexport class IconfontComponent implements OnInit {\n\n @Property('图标', { ui: { hidden: true } })\n type = 'iconfont';\n @Property('图标名称', { ui: { hidden: true } })\n icon: string;\n // @Property('图标大小',{ui:{widget: 'myRange',min: 12, max: 150, step: 2}})\n // fontSize: number = 40;\n @Property('图标颜色', {\n ui: {\n widget: 'myColor',\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', null],\n },\n })\n background = '#3285FF';\n style: any;\n hideHead: boolean;\n constructor(private element: ElementRef) {}\n\n ngOnInit() {\n this.style = {\n fontSize:\n this.element.nativeElement.offsetWidth > this.element.nativeElement.offsetHeight\n ? this.element.nativeElement.offsetHeight + 'px'\n : this.element.nativeElement.offsetWidth + 'px',\n lineHeight:\n this.element.nativeElement.offsetWidth > this.element.nativeElement.offsetHeight\n ? this.element.nativeElement.offsetHeight + 'px'\n : this.element.nativeElement.offsetWidth + 'px',\n color: this.background,\n };\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { IconfontComponent } from './iconfont.component';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\nimport { WidgetBaseModule, WidgetService } from 'bbj-widget-base';\n\n@NgModule({\n declarations: [IconfontComponent],\n imports: [CommonModule, WidgetBaseModule, NzIconModule],\n})\nexport class IconfontModule {\n constructor(widgetService: WidgetService) {\n widgetService.register(IconfontComponent);\n }\n}\n","import { Injectable } from '@angular/core';\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class FileUrlService {\r\n getUrl(url: string) {\r\n return url;\r\n }\r\n}\r\n","import { Component, ElementRef, OnChanges, OnDestroy, OnInit, SimpleChanges, ViewChild } from '@angular/core';\nimport { LazyService } from '@delon/util';\nimport { Widget, Property, Data } from 'bbj-widget-base';\nimport { FileUrlService } from '../shared/service/file-url.service';\ndeclare const flvjs;\n@Component({\n selector: 'sc-audio',\n templateUrl: './audio.component.html',\n styleUrls: ['./audio.component.less'],\n})\n@Widget('音频', { group: 'audio', icon: 'icontupian' })\nexport class AudioComponent implements OnInit, OnChanges{\n @Property('', {\n min: 1,\n type: 'string',\n ui: { widget: 'radio', spanLabel: 0, spanControl: 24 },\n enum: [\n { value: 'video', label: '视频' },\n { value: 'audio', label: '音频' },\n { value: 'auto', label: '自动' },\n ],\n })\n type = 'video';\n @Property('', {\n min: 1,\n ui: {\n widget: 'myUploadAudio',\n spanLabel: 0,\n spanControl: 24,\n list: [\n { name: '无', value: null },\n { name: '测试一号', value: 'https://xiche.oss-cn-beijing.aliyuncs.com/video/20180417154421.mp4' },\n { name: '测试二号', value: 'https://xiche.oss-cn-beijing.aliyuncs.com/video/20180508102521.mp4' },\n ],\n },\n })\n src: string;\n @Property('透明度', { ui: { widget: 'myRange', min: 0, max: 1, step: 0.1 } })\n opacity = 1;\n @Property('阴影', { ui: { widget: 'myShadow' } })\n shadow: any = { color: '', X: 0, Y: 0, Z: 0 };\n @Data({\n properties: {\n src: { title: '视频/音频地址', type: 'string' },\n },\n })\n data: any[];\n _src: string;\n\n @Property('视频格式', {\n enum: [\n { label: 'MP4', value: 'mp4' },\n { label: 'flv', value: 'flv' },\n ],\n ui: { visibleIf: { type: ['video'] }, widget: 'select' },\n })\n videoType: string;\n\n @Property('是否有声音', { ui: { visibleIf: { videoType: ['flv'] } } })\n hasAudio: boolean;\n style: any;\n @ViewChild('video')\n video: ElementRef;\n flvPlayer: any;\n obj: any;\n // loadFlvPromise: Promise<any>;\n _type: string;\n // destroyed: boolean;\n constructor( private fileUrlService: FileUrlService) {}\n\n ngOnInit() {}\n\n ngOnChanges(changes: SimpleChanges): void {\n this.style = {\n opacity: this.opacity,\n boxShadow: this.shadow.color + ' ' + this.shadow.X + 'px ' + this.shadow.Y + 'px ' + this.shadow.Z + 'px',\n };\n if (changes.type || changes.videoType || changes.src || changes.data) {\n this.reset();\n }\n }\n\n async reset() {\n this._src = null;\n let url: string;\n if (this.data && this.data.length && this.data[0].src) {\n url = this.data[0].src;\n } else {\n url = this.src;\n }\n url = this.fileUrlService.getUrl(url);\n if (this.type === 'auto' && url && url.includes('.')) {\n const ext = url.substring(url.lastIndexOf('.') + 1);\n switch (ext) {\n case 'png':\n case 'jpg':\n this._type = 'image';\n break;\n case 'mp4':\n this._type = 'video';\n break;\n case 'mp3':\n this._type = 'audio';\n break;\n }\n } else {\n this._type = this.type;\n if (this._type === 'video' && this.videoType === 'flv') {\n this._type = 'flv';\n }\n }\n this._src = url;\n // if (url) {\n // if (this._type === 'video' && this.videoType === 'flv') {\n // const obj = new Object();\n // this.obj = obj;\n // await this.loadFlv();\n // if (this.obj === obj && !this.destroyed) {\n // this.destroyFlv();\n // // 防止异步操作先后顺序问题\n // this.flvPlayer = flvjs.createPlayer(\n // {\n // type: 'flv',\n // url,\n // hasAudio: this.hasAudio === true,\n // hasVideo: true,\n // isLive: true,\n // withCredentials: false,\n // },\n // {\n // enableWorker: false,\n // lazyLoadMaxDuration: 3 * 60,\n // seekType: 'range',\n // },\n // );\n // this.flvPlayer.attachMediaElement(this.video.nativeElement);\n // console.log('load');\n // this.flvPlayer.load();\n // }\n // } else {\n // this._src = url;\n // }\n // }\n }\n\n // loadFlv() {\n // if (this.loadFlvPromise == null) {\n // this.loadFlvPromise = this.lazy.loadScript('assets/js/flv.min.js');\n // }\n // return this.loadFlvPromise;\n // }\n\n // destroyFlv() {\n // if (this.flvPlayer) {\n // console.log('destroy');\n // this.flvPlayer.unload();\n // this.flvPlayer.detachMediaElement();\n // this.flvPlayer.destroy();\n // this.flvPlayer = null;\n // }\n // }\n\n // ngOnDestroy(): void {\n // this.destroyFlv();\n // this.destroyed = true;\n // }\n}\n","import {\n AfterViewInit,\n Component,\n ElementRef,\n Input,\n OnChanges,\n OnDestroy,\n OnInit,\n SimpleChanges,\n ViewChild,\n} from '@angular/core';\nimport { LazyResult, LazyService } from '@delon/util';\nimport { FileUrlService } from '../../service/file-url.service';\ndeclare const flvjs;\ndeclare const Hls;\n@Component({\n selector: 'sc-video-player',\n templateUrl: './video-player.component.html',\n styleUrls: ['./video-player.component.less'],\n})\nexport class VideoPlayerComponent implements OnInit, OnChanges, OnDestroy, AfterViewInit {\n static loadFlvPromise: Promise<LazyResult>;\n static loadHlsPromise: Promise<LazyResult>;\n @Input()\n type: string;\n @Input()\n src: string;\n @Input()\n hasAudio: boolean;\n @ViewChild('video', { static: false })\n video: ElementRef<HTMLVideoElement>;\n flvPlayer: any;\n hlsPlayer: any;\n destroyed: boolean;\n initd: boolean;\n\n constructor(private lazy: LazyService, private fileUrlService: FileUrlService) {}\n\n ngOnInit() {\n\n }\n\n ngAfterViewInit(): void {\n this.reset();\n this.initd = true;\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (this.initd && (changes.type || changes.src)) {\n this.reset();\n }\n }\n\n reset() {\n if (this.type === 'hls') {\n this.resetHls();\n } else if (this.type === 'iframe') {\n this.destroy();\n } else {\n this.resetFlv();\n }\n }\n\n loadHls() {\n if (VideoPlayerComponent.loadHlsPromise == null) {\n VideoPlayerComponent.loadHlsPromise = this.lazy.loadScript('/assets/js/hls.js');\n }\n return VideoPlayerComponent.loadHlsPromise;\n }\n\n async resetHls() {\n await this.loadHls();\n this.destroy();\n if (this.src && Hls.isSupported() && !this.destroyed) {\n const url = this.fileUrlService.getUrl(this.src);\n this.hlsPlayer = new Hls();\n this.hlsPlayer.loadSource(url);\n this.hlsPlayer.attachMedia(this.video.nativeElement);\n }\n }\n\n async resetFlv() {\n await this.loadFlv();\n this.destroy();\n // TODO 目前只做了flv,接下来要根据type播放不同类型\n if (this.src && !this.destroyed) {\n const url = this.fileUrlService.getUrl(this.src);\n this.flvPlayer = flvjs.createPlayer(\n {\n type: 'flv',\n url,\n hasAudio: this.hasAudio === true,\n hasVideo: true,\n isLive: true,\n withCredentials: false,\n },\n {\n enableWorker: false,\n lazyLoadMaxDuration: 3 * 60,\n seekType: 'range',\n },\n );\n this.flvPlayer.attachMediaElement(this.video.nativeElement);\n this.flvPlayer.load();\n }\n }\n\n loadFlv() {\n if (VideoPlayerComponent.loadFlvPromise == null) {\n VideoPlayerComponent.loadFlvPromise = this.lazy.loadScript('assets/js/flv.min.js');\n }\n return VideoPlayerComponent.loadFlvPromise;\n }\n\n destroy() {\n if (this.flvPlayer) {\n this.flvPlayer.unload();\n this.flvPlayer.detachMediaElement();\n this.flvPlayer.destroy();\n this.flvPlayer = null;\n }\n if (this.hlsPlayer) {\n this.hlsPlayer.destroy();\n this.hlsPlayer = null;\n }\n }\n\n ngOnDestroy(): void {\n this.destroy();\n this.destroyed = true;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { VideoPlayerComponent } from './video-player.component';\nimport { NzPipesModule } from 'ng-zorro-antd/pipes';\n\n@NgModule({\n declarations: [VideoPlayerComponent],\n imports: [CommonModule, NzPipesModule],\n exports: [VideoPlayerComponent],\n})\nexport class VideoPlayerModule {}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { AudioComponent } from './audio.component';\nimport { WidgetBaseModule, WidgetService } from 'bbj-widget-base';\nimport { VideoPlayerModule } from '../shared/component/video-player/video-player.module';\n\n@NgModule({\n declarations: [AudioComponent],\n imports: [CommonModule, WidgetBaseModule, VideoPlayerModule],\n})\nexport class AudioModule {\n constructor(widgetService: WidgetService) {\n widgetService.register(AudioComponent);\n }\n}\n","import { Component, OnChanges, OnInit, SimpleChanges, EventEmitter } from '@angular/core';\nimport { Property, Widget, Data, Drill, DataOutput } from 'bbj-widget-base';\nimport { BasicLineChartComponent } from '../basic-line-chart/basic-line-chart.component';\n\n@Component({\n selector: 'sc-basic-bar-chart',\n templateUrl: './basic-bar-chart.component.html',\n styleUrls: ['./basic-bar-chart.component.less'],\n})\n@Widget('基本柱状图', {\n group: 'barChart',\n image: 'assets/img/screen/baseBar.png',\n icon: 'icontubiao',\n})\nexport class BasicBarChartComponent extends BasicLineChartComponent implements OnInit, OnChanges {\n @Property('类型', { ui: { hidden: true } })\n type = 'basic';\n @Property('图表样式', {\n ui: {\n widget: 'myImageExample',\n spanLabel: 24,\n spanControl: 24,\n reset: ['barColor'],\n example: [\n {\n background: 'assets/img/screen/bar1.png',\n data: { barColor: { gradient: true, value: [['#FFEF66', '#FF851D']] } },\n },\n {\n background: 'assets/img/screen/bar2.png',\n data: { barColor: { gradient: true, value: [['#00FECB', '#00D191']] } },\n },\n {\n background: 'assets/img/screen/bar3.png',\n data: { barColor: { gradient: true, value: [['#00D2FD', '#3285FF']] } },\n },\n {\n background: 'assets/img/screen/bar4.png',\n data: { barColor: { gradient: true, value: [['#FF3699', '#8934F8']] } },\n },\n ],\n },\n })\n example: any;\n @Property('填充', {\n ui: {\n widget: 'seriesColor',\n type: 'gradual',\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],\n },\n })\n barColor = { gradient: true, value: [['#00D2FD', '#3285FF']] };\n @Property('字体', { ui: { widget: 'myFont' } })\n font: any = {\n family: '',\n color: '#595F7A',\n weight: 'normal',\n size: 12,\n space: 0,\n lineHeight: 12,\n };\n @Property('单系多色')\n colorSwitch: boolean;\n\n @Property('类别颜色', {\n ui: {\n widget: 'seriesColor',\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],\n visibleIf: { colorSwitch: [true] },\n },\n })\n colors = ['#058DC7', '#50B432', '#ED561B', '#DDDF00', '#24CBE5', '#64E572', '#FF9655', '#FFF263', '#6AF9C4'];\n @Property('边距', { ui: { widget: 'myGrid' } })\n grid: any = {\n top: 30,\n right: 30,\n bottom: 36,\n left: 38,\n };\n @Property('图例', {\n ui: { widget: 'select' },\n enum: [\n { label: '无', value: 'none' },\n { label: '自动', value: 'auto' },\n { label: '居中', value: 'center' },\n { label: '左对齐', value: 'left' },\n { label: '右对齐', value: 'right' },\n ],\n })\n align = 'center';\n @Property('轴隐藏', {\n ui: { widget: 'select' },\n enum: [\n { label: '无', value: 'true' },\n { label: 'x轴', value: '0' },\n { label: 'y轴', value: '1' },\n { label: '两轴', value: 'false' },\n ],\n })\n axisShow = 'true';\n @Property('刻度隐藏', {\n ui: { widget: 'select' },\n enum: [\n { label: '无', value: 'true' },\n { label: 'x轴', value: '0' },\n { label: 'y轴', value: '1' },\n { label: '两轴', value: 'false' },\n ],\n })\n scaleShow = 'true';\n // @Property('轴单位', {ui: {widget: 'myUnit'}})\n // unit = {x: '', y: '', yMax: ''};\n @Property('y轴单位', { type: 'string' })\n yUnit = '';\n @Property('x轴单位', { type: 'string' })\n xUnit = '';\n @Property('y轴最小')\n yMin: number;\n @Property('y轴最大')\n yMax: number;\n @Property('y轴最小间隔')\n yMinInterval: number;\n @Property('y轴最大增减')\n yMaxAddNum: number;\n @Property('网络线', {\n ui: { widget: 'boolean', checkedChildren: '开', unCheckedChildren: '关' },\n })\n netLine = false;\n @Property('网络线颜色', {\n ui: {\n widget: 'myColor',\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],\n },\n })\n netLineColor = 'rgba(255,255,255,0.2)';\n @Property('标签', {\n ui: { widget: 'select' },\n enum: [\n { label: '无', value: 'none' },\n { label: '居上', value: 'top' },\n { label: '居中', value: 'inside' },\n { label: '居右', value: 'right' },\n ],\n })\n labelDirection = 'none';\n @Property('列间距', { ui: { widget: 'myRange', min: 0, max: 100, step: 10 } })\n barCategoryGap = 40;\n @Property('圆角', { ui: { widget: 'myRange', min: 0, max: 100, step: 1 } })\n barBorderRadius: 20;\n @Property('x轴类型', {\n enum: [\n { label: '类目', value: 'category' },\n { label: '时间', value: 'time' },\n ],\n })\n xType = 'category';\n @Property('轴标签角度', {\n ui: { widget: 'myRange', min: -90, max: 90, step: 10 },\n })\n xLabelRotate = 0;\n @Property('x轴文本宽度')\n xLabelWidth: number;\n @Property('x轴文字宽度超出', {\n enum: [\n { label: '自动', value: 'auto' },\n { label: '截断', value: 'truncate' },\n { label: '换行', value: 'break' },\n { label: '强制换行', value: 'breakAll' },\n ],\n })\n xLabelOverflow = 'auto';\n @Property('标签显示间隔', {\n ui: {\n optionalHelp: {\n text: `默认会采用标签不重叠的策略间隔显示标签。\n可以设置成 0 强制显示所有标签。 \n如果设置为 1,表示『隔一个标签显示一个标签』,如果值为 2,表示隔两个标签显示一个标签,以此类推。`,\n overlayStyle: {\n whiteSpace: 'pre-line',\n },\n },\n },\n })\n xLabelInterval: number;\n\n @Property('区域缩放')\n insideDataZoom: boolean;\n @Property('缩放最少数量', { ui: { visibleIf: { insideDataZoom: [true] } } })\n dataZoomMinData: number;\n @Property('缩放开始百分比', { ui: { visibleIf: { insideDataZoom: [true] } } })\n dataZoomStart: number;\n @Property('缩放结束百分比', { ui: { visibleIf: { insideDataZoom: [true] } } })\n dataZoomEnd: number;\n @Property('滚轮缩放', {\n enum: [\n { label: '启用', value: true },\n { label: '禁用', value: false },\n { label: '按住shift', value: 'shift' },\n { label: '按住ctrl', value: 'ctrl' },\n { label: '按住alt', value: 'alt' },\n ],\n ui: { widget: 'select', visibleIf: { insideDataZoom: [true] } },\n })\n zoomOnMouseWheel = true;\n @Property('滑动条', { ui: { visibleIf: { insideDataZoom: [true] } } })\n sliderDataZoom: boolean;\n @Property('锁定区域大小', { ui: { visibleIf: { sliderDataZoom: [true] } } })\n zoomLock: boolean;\n @Property('提示框字体', { ui: { widget: 'myFont' } })\n tooltipFont: any;\n @Property('显示柱条背景', { type: 'boolean' })\n showBackground = true;\n @Property('标线', { type: 'boolean' })\n markLine = false;\n @Property('Y轴标线高度', { type: 'number', ui: { visibleIf: { markLine: [true] } } })\n YmarkLineHeight = 10;\n\n // @Property('显示X轴', {\n // ui: { widget: 'boolean', checkedChildren: '开', unCheckedChildren: '关' },\n // })\n // showX = true;\n @Property('Y标线标题', {\n type: 'string',\n ui: { visibleIf: { markLine: [true] }, optionalHelp: '此标题需要跟x字段内名字一致' },\n })\n YmarkLineName = '';\n // @Property('标线数值', { type: 'number' })\n // markLineVal = null;\n\n @Property('Y标线类型', {\n ui: { widget: 'select', visibleIf: { markLine: [true] } },\n enum: [\n { label: '实线', value: 'solid' },\n { label: '虚线', value: 'dashed' },\n { label: '点线', value: 'dotted' },\n ],\n })\n YmarkLineType = 'dashed';\n\n @Property('Y标线颜色', {\n ui: {\n widget: 'myColor',\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],\n visibleIf: { markLine: [true] },\n },\n })\n YmarkLineColor = '#f00';\n @Property('Y标线粗细', {\n type: 'number',\n ui: { visibleIf: { markLine: [true] } },\n })\n YmarkWidth = 2;\n @Property('X轴标线位置', { type: 'string', ui: { visibleIf: { markLine: [true] } } })\n XmarkLineLocation = '二月';\n @Property('X标线标题', {\n type: 'string',\n ui: { optionalHelp: '此标题需要跟x字段内名字一致', visibleIf: { markLine: [true] } },\n })\n XmarkLineName = '';\n @Property('X标线类型', {\n ui: { widget: 'select', visibleIf: { markLine: [true] } },\n enum: [\n { label: '实线', value: 'solid' },\n { label: '虚线', value: 'dashed' },\n { label: '点线', value: 'dotted' },\n ],\n })\n XmarkLineType = 'dashed';\n\n @Property('X标线颜色', {\n ui: {\n visibleIf: { markLine: [true] },\n widget: 'myColor',\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],\n },\n })\n XmarkLineColor = '#f00';\n @Property('X标线粗细', {\n type: 'number',\n ui: { visibleIf: { markLine: [true] } },\n })\n XmarkWidth = 2;\n chartOption: any = {};\n\n @Data({\n properties: {\n x: { type: 'string', title: '类目' },\n y: { type: 'number', title: '值' },\n s: { type: 'string', title: '系列' },\n },\n })\n _data = [\n { x: '一月', y: 10, s: '收入' },\n { x: '二月', y: 20, s: '收入' },\n { x: '三月', y: 25, s: '收入' },\n { x: '四月', y: 35, s: '收入' },\n { x: '五月', y: 27, s: '收入' },\n { x: '六月', y: 28, s: '收入' },\n { x: '一月', y: 18, s: '支出' },\n { x: '二月', y: 28, s: '支出' },\n { x: '三月', y: 32, s: '支出' },\n { x: '四月', y: 48, s: '支出' },\n { x: '五月', y: 20, s: '支出' },\n { x: '六月', y: 17, s: '支出' },\n ];\n\n @Drill()\n @DataOutput(['x', 's'])\n dataClick = new EventEmitter<any>();\n xData = [];\n yData = [];\n color = [];\n legends = [];\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes._data) {\n // this.reloadData();\n const dataShadow: number[] = [];\n const maxNum = this.getMaxY();\n dataShadow.fill(maxNum, 0, this.xData.length);\n const textStyle = this.getTextStyle(this.font);\n this.style = textStyle;\n let hori = this.horizontal;\n let barColors: string[][];\n if (this.barColor && this.barColor.value) {\n barColors = this.barColor.value;\n } else {\n barColors = this.barColor as any;\n }\n this.color = barColors.map((barColor) => ({\n type: 'linear',\n x: 0,\n y: 0,\n x2: hori ? 1 : 0,\n y2: hori ? 0 : 1,\n global: false,\n colorStops: [\n { offset: 0, color: barColor[0] },\n { offset: 1, color: barColor[1] },\n ],\n }));\n\n let xAxis: any = this.getXAxis();\n\n let yAxis: any = this.getYAxis();\n let grid: any = {\n top: this.grid.top,\n right: this.grid.right,\n left: this.grid.left,\n bottom: this.grid.bottom,\n };\n if (this.type === 'dcolor') {\n const yAxis1 = yAxis;\n const yAxis2 = this.getYAxis();\n yAxis1.inverse = true;\n yAxis = [yAxis1, yAxis2];\n yAxis.forEach((axis, i) => {\n axis.gridIndex = i;\n axis.position = 'top';\n });\n xAxis = [xAxis, this.getXAxis()];\n xAxis.forEach((axis, i) => {\n axis.gridIndex = i;\n });\n grid = [\n {\n right: '50%',\n },\n {\n left: '50%',\n },\n ];\n }\n const dataZoom = this.getDataZoom();\n this.chartOption = {\n dataZoom,\n tooltip: this.getTooltip(),\n legend: this.getLegend(),\n grid,\n xAxis: !hori ? xAxis : yAxis,\n yAxis: !hori ? yAxis : xAxis,\n color: this.color,\n series: [],\n };\n this.reloadData();\n }\n }\n\n ngOnInit() {}\n\n get horizontal(): boolean {\n return this.type === 'hori' || this.type === 'horiD' || this.type === 'dcolor';\n }\n\n getXAxis(): any {\n let XdisplayScaleShow =\n this.scaleShow === 'true' ? true : this.scaleShow === '0' ? false : this.scaleShow === '1' ? true : false;\n return {\n nameTextStyle: this.style,\n type: this.xType || 'category',\n name: this.xUnit,\n axisLine: {\n show: this.axisShow === 'true' ? true : this.axisShow === '0' ? false : this.axisShow === '1' ? true : false,\n lineStyle: {\n color: this.font.color,\n },\n },\n axisTick: {\n show: XdisplayScaleShow,\n },\n axisLabel: {\n ...this.style,\n show: XdisplayScaleShow,\n rotate: this.xLabelRotate,\n width: this.xLabelWidth,\n overflow: this.xLabelOverflow,\n interval: this.xLabelInterval,\n },\n };\n }\n\n getYAxis(): any {\n let YdisplayScaleShow =\n this.scaleShow === 'true' ? true : this.scaleShow === '0' ? true : this.scaleShow === '1' ? false : false;\n return {\n nameTextStyle: this.style,\n type: 'value',\n name: this.yUnit,\n axisLine: {\n show: this.axisShow === 'true' ? true : this.axisShow === '0' ? true : this.axisShow === '1' ? false : false,\n lineStyle: {\n color: this.font.color,\n },\n },\n axisTick: {\n show: YdisplayScaleShow,\n },\n min: this.yMin,\n max: (value) => {\n const yMax = Number(this.yMax ? this.yMax : value.max);\n return Math.ceil(this.yMaxAddNum ? yMax + Number(this.yMaxAddNum) : yMax);\n },\n axisLabel: {\n ...this.style,\n show: YdisplayScaleShow,\n // formatter: '{value}' + this.yUnit,\n },\n splitLine: {\n show: this.netLine,\n lineStyle: {\n type: 'dashed',\n color: this.netLineColor,\n },\n },\n minInterval: this.yMinInterval,\n };\n }\n\n setSeriesStyle(name: string, datasetIndex: number) {\n const textStyle = this.style;\n const i = this.chartOption.series.length;\n const series = {\n name,\n showBackground: this.showBackground,\n xAxisIndex: this.type === 'dcolor' ? i : 0,\n yAxisIndex: this.type === 'dcolor' ? i : 0,\n label: {\n normal: {\n show: this.labelDirection === 'none' ? false : true,\n // formatter: '{@' + name + '}',\n position: this.labelDirection || '',\n textStyle,\n },\n },\n barCategoryGap: this.barCategoryGap + '%',\n itemStyle: {\n barBorderRadius: this.barBorderRadius,\n },\n stack: this.type === 'double' || this.type === 'horiD' ? '0' : null,\n type: 'bar',\n areaStyle: {\n opacity: 0,\n },\n emphasis: {\n focus: this.type === 'double' || this.type === 'horiD' ? 'series' : null,\n },\n encode: this.horizontal ? { y: 'x', x: 'y' } : { x: 'x', y: 'y' },\n datasetIndex,\n };\n this.chartOption.series.push(series);\n return series;\n }\n}\n","import {NgModule} from '@angular/core';\nimport {CommonModule} from '@angular/common';\nimport { NgxEchartsModule } from 'ngx-echarts';\nimport {BasicBarChartComponent} from './basic-bar-chart.component';\nimport { WidgetBaseModule, WidgetService } from 'bbj-widget-base';\n\n@NgModule({\n declarations: [\n BasicBarChartComponent\n ],\n imports: [\n CommonModule,\n WidgetBaseModule,\n NgxEchartsModule\n ]\n})\nexport class BasicBarChartModule {\n constructor(private widgetService:WidgetService){\n widgetService.register(BasicBarChartComponent);\n }\n}\n","import { Component, OnChanges, OnInit, SimpleChanges, EventEmitter } from '@angular/core';\nimport { Property, Widget, Data, Drill, DataOutput } from 'bbj-widget-base';\nimport { BasicLineChartComponent } from '../basic-line-chart/basic-line-chart.component';\n\n@Component({\n selector: 'sc-basic-pie-chart',\n templateUrl: './basic-pie-chart.component.html',\n styleUrls: ['./basic-pie-chart.component.less'],\n})\n@Widget('饼图', {\n group: 'pieChart',\n image: 'assets/img/screen/pie.png',\n icon: 'icontubiao',\n})\nexport class BasicPieChartComponent extends BasicLineChartComponent implements OnInit, OnChanges {\n @Property('类型', { ui: { hidden: true } })\n type = 'basic';\n @Property('图表样式', {\n ui: {\n widget: 'myImageExample',\n spanLabel: 24,\n spanControl: 24,\n reset: ['pieColor'],\n class: 'pie',\n example: [\n {\n background: 'assets/img/screen/pie1.png',\n data: {\n pieColor: {\n gradient: true,\n value: [\n ['#FFB82E', '#FFB82E'],\n ['#FF7C24', '#FF7C24'],\n ['#FF610F', '#FF610F'],\n ['#EE2100', '#EE2100'],\n ['#A52501', '#A52501'],\n ['#7B2C04', '#7B2C04'],\n ],\n },\n },\n },\n {\n background: 'assets/img/screen/pie2.png',\n data: {\n pieColor: {\n gradient: true,\n value: [\n ['#00FEC3', '#00FEC3'],\n ['#00F4A8', '#00F4A8'],\n ['#00D59B', '#00D59B'],\n ['#00B880', '#00B880'],\n ['#00896E', '#00896E'],\n ['#006A60', '#006A60'],\n ],\n },\n },\n },\n {\n background: 'assets/img/screen/pie3.png',\n data: {\n pieColor: {\n gradient: true,\n value: [\n ['#45C1FC', '#45C1FC'],\n ['#00A1FB', '#00A1FB'],\n ['#0076B7', '#0076B7'],\n ['#004D7E', '#004D7E'],\n ['#003560', '#003560'],\n ['#001736', '#001736'],\n ],\n },\n },\n },\n {\n background: 'assets/img/screen/pie4.png',\n data: {\n pieColor: {\n gradient: true,\n value: [\n ['#BF91FA', '#BF91FA'],\n ['#9B35F8', '#9B35F8'],\n ['#9813D9', '#9813D9'],\n ['#790588', '#790588'],\n ['#B30B9A', '#B30B9A'],\n ['#DC1098', '#DC1098'],\n ],\n },\n },\n },\n ],\n },\n })\n example: any;\n @Property('填充', {\n ui: {\n widget: 'seriesColor',\n type: 'gradual',\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],\n },\n })\n pieColor = {\n gradient: true,\n value: [\n ['#45C1FC', '#45C1FC'],\n ['#00A1FB', '#00A1FB'],\n ['#0076B7', '#0076B7'],\n ['#004D7E', '#004D7E'],\n ['#003560', '#003560'],\n ['#001736', '#001736'],\n ],\n };\n @Property('字体', { ui: { widget: 'myFont' } })\n font: any = {\n family: '',\n color: '#FFFFFF',\n weight: 'normal',\n size: 12,\n space: 0,\n lineHeight: '',\n };\n @Property('图例', {\n ui: { widget: 'select' },\n enum: [\n { label: '无', value: 'none' },\n { label: '自动', value: 'auto' },\n { label: '纵向居中', value: 'center' },\n { label: '纵向居左', value: 'left' },\n { label: '纵向居右', value: 'right' },\n ],\n })\n align = 'none';\n @Property('图例呈现', {\n ui: { widget: 'select' },\n enum: [\n { label: '数据', value: 'data' },\n { label: '百分比', value: 'percent' },\n { label: '数据-百分比', value: 'both' },\n ],\n })\n legentData = 'data';\n @Property('线标', {\n ui: { widget: 'boolean', checkedChildren: '开', unCheckedChildren: '关' },\n })\n lineMark = false;\n @Property('浮标', {\n ui: { widget: 'boolean', checkedChildren: '开', unCheckedChildren: '关' },\n })\n buoy = false;\n @Property('缩放', { type: 'number' })\n radius = 1;\n @Property('边距', { ui: { widget: 'myGrid', type: 'pie' } })\n grid: any = {\n top: 50,\n left: 50,\n };\n\n @Property('环宽', { type: 'number' })\n roundWidth = 15;\n\n @Property('增加隔断', {\n ui: { widget: 'boolean', checkedChildren: '开', unCheckedChildren: '关' },\n })\n addSplit = false;\n\n @Property('单位')\n unit: string;\n\n seriesDataPie = [];\n xData = [];\n radiusPie = ['0%', '75%'];\n chartOption: any = {};\n roseType = 'false';\n @Data({\n properties: {\n x: { type: 'string', title: '类目' },\n y: { type: 'number', title: '值' },\n },\n })\n _data = [\n { x: '一月', y: 33 },\n { x: '二月', y: 31 },\n { x: '三月', y: 11 },\n { x: '四月', y: 11 },\n { x: '五月', y: 7 },\n { x: '六月', y: 20 },\n ];\n @Drill()\n @DataOutput(['x'])\n dataClick = new EventEmitter<any>();\n // 隔断样式\n splitWidth = 0;\n splitItem = {\n value: this.splitWidth,\n name: 'split',\n itemStyle: {\n normal: {\n label: {\n show: false,\n },\n labelLine: {\n show: false,\n },\n color: 'rgba(0, 0, 0, 0)',\n borderColor: 'rgba(0, 0, 0, 0)',\n borderWidth: 0,\n },\n },\n };\n ngOnChanges(changes: SimpleChanges): void {\n if (changes._data) {\n if (this._data == null) {\n this._data = [];\n }\n this.getPieData();\n if (this.addSplit) {\n // 计算隔断层的宽度 取1%作为隔断\n const splitWidth = this._data.reduce((a, b) => a + Number(b.y), 0) / 100;\n this.splitItem.value = splitWidth;\n }\n if (this.type === 'ring' || this.type === 'roseRing') {\n const min = 75 - (Math.abs(Number(this.roundWidth)) || 75); // 获取最小的宽度 最大宽固定是75\n this.radiusPie = [`${min}%`, '75%'];\n } else {\n this.radiusPie = ['0%', '75%'];\n }\n if (this.radius != null) {\n this.radiusPie[0] = parseInt(this.radiusPie[0], 10) * this.radius + '%';\n this.radiusPie[1] = parseInt(this.radiusPie[1], 10) * this.radius + '%';\n }\n if (this.type === 'rose' || this.type === 'roseRing') {\n this.roseType = 'radius';\n }\n const objData = this.array2obj(this.seriesDataPie, 'name');\n const color = [];\n const textStyle = {\n color: this.font.color,\n fontFamily: this.font.family,\n fontWeight: this.font.weight,\n fontSize: this.font.size,\n lineHeight: this.font.lineHeight,\n };\n let pieColor;\n if (this.pieColor && this.pieColor.value) {\n pieColor = this.pieColor.value;\n } else {\n pieColor = this.pieColor;\n }\n for (let i = 0; i < pieColor.length; i++) {\n color.push(pieColor[i][0]);\n }\n this.chartOption = {\n tooltip: {\n show: this.buoy,\n textStyle: {\n fontFamily: this.font.family,\n fontWeight: this.font.weight,\n fontSize: this.font.size,\n lineHeight: this.font.lineHeight,\n },\n trigger: 'item',\n // formatter: '{b} : {c} ({d}%)',\n formatter: (item) => {\n return item.name === 'split' ? '' : `${item.name}: ${this.addUnit(item.value)}(${item.percent}%)`;\n },\n },\n legend: {\n type: 'scroll',\n orient: 'vertical',\n data: this.xData,\n x: this.align,\n show: this.align !== 'none',\n // formatter: function (name) {\n // return name + '(' + objData[name].value + ')';\n // },\n textStyle,\n },\n color,\n series: [\n {\n name: 'pie',\n type: 'pie',\n roseType: this.roseType === 'radius' ? 'radius' : false,\n label: {\n normal: {\n show: this.lineMark,\n formatter: (item) => {\n return item.name === 'split' ? '' : this.addUnit(item.value);\n },\n textStyle,\n },\n },\n center: [this.grid.left + '%', this.grid.top + '%'],\n radius: this.radiusPie,\n labelLine: {\n normal: {\n show: this.lineMark,\n },\n },\n textStyle,\n data: [],\n // ,\n // data: this.seriesDataPie\n /* .sort(function(a, b) {\n return a.value - b.value;\n }),*/\n },\n ],\n // dataset: {\n // // 用 dimensions 指定了维度的顺序。直角坐标系中,\n // // 默认把第一个维度映射到 X 轴上,第二个维度映射到 Y 轴上。\n // // 如果不指定 dimensions,也可以通过指定 series.encode\n // // 完成映射,参见后文。\n // // dimensions: [],\n // source: [],\n // },\n };\n this.reloadData();\n // console.log(this.chartOption);\n if (this.legentData === 'percent') {\n this.chartOption.legend.formatter = (name: string) => {\n let total = 0;\n Object.keys(objData).forEach((key) => {\n for (const a of objData[key]) {\n total += parseInt(a.value, 10);\n }\n });\n let b = 0;\n for (const a of objData[name]) {\n b += Number(a.value);\n }\n const p = ((b / total) * 100).toFixed(0);\n return name + '(' + p + '%)';\n };\n }\n if (this.legentData === 'both') {\n this.chartOption.legend.formatter = (name) => {\n let total = 0;\n Object.keys(objData).forEach((key) => {\n // console.log(key);\n for (const a of objData[key]) {\n total += parseInt(a.value, 10);\n }\n });\n let b = 0;\n for (const a of objData[name]) {\n b += Number(a.value);\n }\n const p = ((b / total) * 100).toFixed(0);\n return name + '(' + this.addUnit(b) + '-' + p + '%)';\n };\n }\n if (this.legentData === 'data') {\n this.chartOption.legend.formatter = (name) => {\n let total = 0;\n // for (let key of Object.keys(objData)) {\n for (const a of objData[name]) {\n total += Number(a.value);\n }\n // total += Number(objData[key].value);\n // }\n // let p = ((objData[name].value / total) * 100).toFixed(0);\n return name + '(' + this.addUnit(total) + ')';\n };\n }\n }\n }\n\n addUnit(value: any) {\n if (this.unit && value != null && value !== '') {\n value += this.unit;\n }\n return value;\n }\n\n reloadData() {\n const source = [];\n const addSplit = this.addSplit && this._data.filter((item) => item.y).length > 1;\n this._data.forEach((record) => {\n // const x=record.x;\n // const s=record.s;\n // const y=record.y;\n const { x, y } = record;\n const arr = {\n name: x,\n value: Number(y),\n };\n // arr.push(x, Number(y));\n source.push(arr);\n if (addSplit) {\n source.push(this.splitItem);\n }\n });\n this.chartOption.series[0].data = source;\n // this.chartOption.dataset.source = source;\n this._data.forEach((a) => {\n const x = { name: a.x };\n this.xData.push(x);\n });\n this.uniqueData(this.xData);\n }\n\n ngOnInit() {}\n\n getPieData() {\n this.seriesDataPie = [];\n let total = 0;\n if (this.addSplit) {\n this._data.forEach((t) => {\n total += t.y;\n });\n }\n for (let i = 0; i < this._data.length; i++) {\n // if (total > 0 && this._data[i].y / total >= 1) {\n // this.addSplit = false;\n // }\n this.seriesDataPie.push({\n value: this._data[i].y,\n name: this._data[i].x,\n });\n }\n }\n\n array2obj(array, key) {\n const resObj = {};\n for (let i = 0; i < array.length; i++) {\n if (!resObj[array[i][key]]) {\n resObj[array[i][key]] = [];\n }\n resObj[array[i][key]].push(array[i]);\n }\n return resObj;\n }\n\n getLegentData(name) {}\n\n onChartClick(event) {\n this.dataClick.emit({ x: event.name, s: event.seriesName });\n }\n}\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { BasicPieChartComponent } from './basic-pie-chart.component';\r\nimport { NgxEchartsModule } from 'ngx-echarts';\r\nimport { WidgetBaseModule, WidgetService } from 'bbj-widget-base';\r\n\r\n@NgModule({\r\n declarations: [BasicPieChartComponent],\r\n imports: [CommonModule, WidgetBaseModule, NgxEchartsModule],\r\n})\r\nexport class BasicPieChartModule {\r\n constructor(widgetService: WidgetService) {\r\n widgetService.register(BasicPieChartComponent);\r\n }\r\n}\r\n","import { Component, OnChanges, OnInit, SimpleChanges, EventEmitter } from '@angular/core';\nimport { Property, Widget, Data, Drill, DataOutput } from 'bbj-widget-base';\nimport { BasicLineChartComponent } from '../basic-line-chart/basic-line-chart.component';\nimport 'echarts-gl';\n@Component({\n selector: 'sc-bar-chart-three-d',\n templateUrl: './bar-chart-three-d.component.html',\n styleUrls: ['./bar-chart-three-d.component.less'],\n})\n@Widget('3D柱状图', {\n group: 'barChart',\n image: 'assets/img/screen/basic-bar-chart.png',\n icon: 'icontubiao',\n})\nexport class BarChartThreeDComponent extends BasicLineChartComponent implements OnInit, OnChanges {\n @Property('类型', { ui: { hidden: true } })\n type = 'basic';\n @Property('图表样式', {\n ui: {\n widget: 'myImageExample',\n spanLabel: 24,\n spanControl: 24,\n reset: ['barColor'],\n example: [\n {\n background: 'assets/img/screen/3d1.png',\n data: { barColor: ['#FAA736'] },\n },\n {\n background: 'assets/img/screen/3d2.png',\n data: { barColor: ['#00D190'] },\n },\n {\n background: 'assets/img/screen/3d3.png',\n data: { barColor: ['#3285FF'] },\n },\n {\n background: 'assets/img/screen/3d4.png',\n data: { barColor: ['#8934F8'] },\n },\n ],\n },\n })\n example: any;\n @Property('系列颜色', {\n ui: {\n widget: 'seriesColor',\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],\n },\n })\n barColor = ['#3285FF', '#00D2FD'];\n @Property('字体', { ui: { widget: 'myFont' } })\n font: any = {\n family: '',\n color: '#FFFFFF',\n weight: 'normal',\n size: 12,\n space: 0,\n lineHeight: 12,\n };\n @Property('边距', { ui: { widget: 'myGrid' } })\n grid: any = {\n top: 0,\n right: 0,\n bottom: 0,\n left: 0,\n };\n // @Property('轴单位', { ui: { widget: 'myUnit' } })\n // unit = { x: '', y: '' };\n @Property('y轴单位', { type: 'string' })\n yUnit = '';\n @Property('x轴单位', { type: 'string' })\n xUnit = '';\n @Property('y轴最大')\n yMax: number;\n @Property('网络线', {\n ui: { widget: 'boolean', checkedChildren: '开', unCheckedChildren: '关' },\n })\n netLine = false;\n @Property('标签', {\n ui: { widget: 'boolean', checkedChildren: '开', unCheckedChildren: '关' },\n })\n label = false;\n @Property('自动旋转', {\n ui: { widget: 'boolean', checkedChildren: '开', unCheckedChildren: '关' },\n })\n autoRotate = false;\n @Property('柱子宽度', {\n ui: { widget: 'myRange', min: 100, max: 1000, step: 100 },\n })\n boxWidth = 200;\n @Property('柱子深度', {\n ui: { widget: 'myRange', min: 10, max: 100, step: 10 },\n })\n boxDepth = 20;\n\n @Data({\n properties: {\n x: { type: 'string', title: '类目' },\n y: { type: 'number', title: '值' },\n z: { type: 'string', title: '系列' },\n },\n })\n _data = [\n { x: '一月', y: 10, s: '收入' },\n { x: '二月', y: 20, s: '收入' },\n { x: '三月', y: 25, s: '收入' },\n { x: '四月', y: 35, s: '收入' },\n { x: '五月', y: 27, s: '收入' },\n { x: '六月', y: 28, s: '收入' },\n { x: '一月', y: 18, s: '支出' },\n { x: '二月', y: 28, s: '支出' },\n { x: '三月', y: 32, s: '支出' },\n { x: '四月', y: 48, s: '支出' },\n { x: '五月', y: 20, s: '支出' },\n { x: '六月', y: 17, s: '支出' },\n ];\n @Drill()\n @DataOutput(['x', 'z'])\n dataClick = new EventEmitter<any>();\n sData = [];\n series = [];\n ngOnChanges(changes: SimpleChanges): void {\n if (changes._data) {\n this.reloadData();\n\n const style = {\n color: this.font.color,\n fontFamily: this.font.family,\n fontWeight: this.font.weight,\n fontSize: this.font.size,\n margin: this.font.lineHeight,\n };\n\n this.chartOption = {\n xAxis3D: {\n name: this.xUnit,\n nameTextStyle: style,\n type: 'category',\n splitLine: {\n show: false,\n },\n data: this.xData,\n },\n yAxis3D: {\n name: '',\n type: 'category',\n data: [],\n },\n zAxis3D: {\n name: this.yUnit,\n nameTextStyle: style,\n type: 'value',\n splitLine: {\n show: this.netLine,\n lineStyle: {\n width: 1,\n },\n },\n },\n grid3D: {\n top: this.grid.top,\n right: this.grid.right,\n left: this.grid.left,\n bottom: this.grid.bottom,\n boxWidth: this.boxWidth,\n boxDepth: this.boxDepth,\n axisTick: {\n show: false,\n },\n axisLine: {\n lineStyle: {\n color: this.font.color,\n width: 1,\n },\n },\n axisLabel: {\n textStyle: style,\n },\n viewControl: {\n alpha: 10,\n beta: 0,\n autoRotate: this.autoRotate,\n zoomSensitivity: 0,\n autoRotateAfterStill: 15,\n distance: 250,\n },\n },\n color: ['#45C1FC', '#00A1FB', '#0076B7', '#004D7E', '#003560', '#001736'],\n series: [],\n };\n if (this.type === '3D') {\n this.series = [this.series[0]];\n }\n for (let i = 0; i < this.series.length; i++) {\n this.chartOption.series.push({\n type: 'bar3D',\n itemStyle: {},\n data: [],\n shading: 'lambert',\n stack: 'stack',\n label: {\n show: this.label,\n textStyle: style,\n },\n emphasis: {\n label: {\n textStyle: {\n fontSize: this.font.size,\n color: this.font.color,\n fontWeight: this.font.weight,\n fontFamily: this.font.family,\n lineHeight: this.font.lineHeight,\n borderWidth: 0,\n borderColor: '#00000000',\n },\n },\n },\n });\n this.chartOption.series[i].itemStyle.color = this.barColor[i];\n const temp = [];\n this._data.forEach((record) => {\n if (this.series[i] === record.s) {\n temp.push(record);\n }\n });\n this.xData.forEach((x) => {\n let count = 0;\n temp.forEach((t) => {\n if (t.x === x) {\n count++;\n }\n });\n if (count === 0) {\n this._data.push({ x, y: 0, s: this.series[i] });\n }\n });\n this._data.sort((prev, next) => {\n return this.xData.indexOf(prev.x) - this.xData.indexOf(next.x);\n });\n this._data\n .filter((els) => els.s === this.series[i])\n .forEach((el) => {\n for (let j = 0; j < this.xData.length; j++) {\n if (this.xData[j] === el.x) {\n this.chartOption.series[i].data.push([j, 0, el.y]);\n }\n }\n });\n }\n }\n }\n reloadData() {\n if (this._data[0]) {\n for (let i = 0; i < this._data.length; i++) {\n if (this._data[i].s) {\n this.series[i] = this._data[i].s;\n }\n }\n this.uniqueData(this.series);\n }\n for (let i = 0; i < this._data.length; i++) {\n this.xData[i] = this._data[i].x;\n }\n this.uniqueData(this.xData);\n }\n ngOnInit() {}\n onChartClick(event) {\n this.dataClick.emit({ x: event.name, s: event.seriesName });\n }\n}\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { NgxEchartsModule } from 'ngx-echarts';\r\nimport { BarChartThreeDComponent } from './bar-chart-three-d.component';\r\nimport { WidgetBaseModule, WidgetService } from 'bbj-widget-base';\r\n\r\n@NgModule({\r\n declarations: [BarChartThreeDComponent],\r\n imports: [CommonModule, WidgetBaseModule, NgxEchartsModule],\r\n})\r\nexport class BarChartThreeDModule {\r\n constructor(widgetService: WidgetService) {\r\n widgetService.register(BarChartThreeDComponent);\r\n }\r\n}\r\n","import { Property, Widget, WidgetRef } from 'bbj-widget-base';\nimport {\n OnInit,\n Component,\n ElementRef,\n OnDestroy,\n NgZone,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n} from '@angular/core';\nimport { NzResizeObserver } from 'ng-zorro-antd/core/resize-observers';\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\n@Component({\n selector: 'sc-shape',\n templateUrl: './shape.component.html',\n styleUrls: ['./shape.component.less'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\n@Widget('图形', { group: 'shape', icon: 'iconxingzhuang' })\nexport class ShapeComponent implements OnInit, OnDestroy {\n @Property('填充', {\n ui: {\n widget: 'myColor',\n visibleIf: {\n type: ['rect', 'polygonplus', 'polyhedrosis', 'circle', 'path', 'polygon', 'parallelogram', 'trapezoid'],\n },\n },\n })\n background = null;\n @Property('线条颜色', { ui: { widget: 'myColor' } })\n borderColor = '#3285ff';\n @Property('线条粗细', { type: 'number' })\n borderWidth = 1;\n @Property('圆角', {\n type: 'number',\n ui: { widget: 'myRange', min: 0, max: 100, step: 1, visibleIf: { type: ['rect'] } },\n })\n fillet = 0;\n @Property('几边形', {\n type: 'number',\n ui: { widget: 'myRange', min: 3, max: 100, step: 1, visibleIf: { type: ['polygonplus', 'polyhedrosis'] } },\n })\n side = 3;\n @Property('内半径', { ui: { widget: 'myRange', min: 1, max: 99, step: 1, visibleIf: { type: ['polyhedrosis'] } } })\n sr = 38;\n @Property('上底', { ui: { widget: 'myRange', min: 1, max: 100, step: 1, visibleIf: { type: ['trapezoid'] } } })\n upper = 60;\n @Property('下底', {\n ui: { widget: 'myRange', min: 1, max: 100, step: 1, visibleIf: { type: ['trapezoid'] } },\n })\n bottom = 100;\n @Property('偏移', {\n ui: {\n widget: 'myRange',\n min: -100,\n max: 100,\n step: 1,\n visibleIf: { type: ['parallelogram', 'trapezoid', 'triangle'] },\n },\n })\n deviation = 0;\n @Property('透明度', { ui: { widget: 'myRange', min: 0, max: 1, step: 0.1 } })\n opacity = 1;\n @Property('阴影', { ui: { widget: 'myShadow' } })\n shadow: any = { color: '', X: 0, Y: 0, Z: 0 };\n @Property('', {\n type: 'string',\n ui: { hidden: true },\n })\n type = 'rect';\n style: any;\n image: string;\n @Property('数据', { ui: { hidden: true } })\n data: { x: number; y: number }[];\n width: number;\n height: number;\n points: string;\n destroy$ = new Subject();\n filterId: string;\n filterUrl: string;\n\n constructor(\n private elementRef: ElementRef,\n private resizeObserver: NzResizeObserver,\n private zone: NgZone,\n private cd: ChangeDetectorRef,\n private widgetRef: WidgetRef,\n ) {}\n\n ngOnInit() {\n this.reset();\n this.resizeObserver\n .observe(this.elementRef)\n .pipe(takeUntil(this.destroy$))\n .subscribe(() => {\n this.zone.run(() => {\n this.reset();\n });\n });\n }\n\n ngOnDestroy(): void {\n this.destroy$.next();\n this.destroy$.complete();\n }\n\n reset() {\n const { clientWidth: width, clientHeight: height } = this.elementRef.nativeElement;\n this.width = width;\n this.height = height;\n this.style = {\n opacity: this.opacity,\n stroke: this.borderColor,\n strokeWidth: this.borderWidth,\n fill: this.background ? this.background : 'rgba(0,0,0,0)',\n };\n if (this.shadow && (this.shadow.X || this.shadow.Y || this.shadow.Z)) {\n this.filterId = this.widgetRef.widget.id;\n this.filterUrl = `url(#${this.filterId})`;\n }\n switch (this.type) {\n case 'rect': // 矩形\n this.style.rx = this.style.ry = this.fillet;\n break;\n case 'triangle': //三角形\n this.points = `${width / 2 + (width * this.deviation) / 200},0 ${width},${height} 0,${height}`;\n break;\n case 'parallelogram': // 平行四边形\n const offset = (width * this.deviation) / 100;\n if (this.deviation >= 0) {\n this.points = `${offset},0 ${width},0 ${width - offset},${height} 0,${height}`;\n } else {\n this.points = `0,0 ${width + offset},0 ${width},${height} ${-offset},${height}`;\n }\n break;\n case 'trapezoid': // 梯形\n const top = (this.upper * width) / 100;\n const bottom = (this.bottom * width) / 100;\n const offset1 = ((width - top) / 2) * (1 + this.deviation / 100);\n const offset2 = ((width - bottom) / 2) * (1 - this.deviation / 100);\n this.points = `${offset1},0 ${offset1 + top},0 ${offset2 + bottom},${height} ${offset2},${height}`;\n break;\n case 'polyline': //折线\n case 'polygon': //多边形\n this.points = '';\n let minX: number, maxX: number, minY: number, maxY: number;\n this.data.forEach(({ x, y }) => {\n if (x < minX || minX == null) minX = x;\n if (x > maxX || maxX == null) maxX = x;\n if (y < minY || minY == null) minY = y;\n if (y > maxY || maxY == null) maxY = y;\n });\n const scaleX = width / (maxX - minX);\n const scaleY = height / (maxY - minY);\n this.data.forEach(({ x, y }) => {\n this.points += `${(x - minX) * scaleX},${(y - minY) * scaleY} `;\n });\n break;\n case 'polygonplus': //正多边形\n const rx = width / 2;\n const ry = height / 2;\n this.points = '';\n for (let i = 0; i < this.side; i++) {\n this.points += this.getEllipsePoint(i, this.side, rx, ry, rx, ry);\n }\n break;\n case 'polyhedrosis': // 星形\n this.points = '';\n const rx1 = width / 2;\n const ry1 = height / 2;\n const rx2 = (rx1 * this.sr) / 100;\n const ry2 = (ry1 * this.sr) / 100;\n for (let i = 0; i < this.side; i++) {\n this.points += this.getEllipsePoint(i, this.side, rx1, ry1, rx1, ry1);\n this.points += this.getEllipsePoint(i + 1 / 2, this.side, rx1, ry1, rx2, ry2);\n }\n break;\n case 'path':\n this.points = '';\n for (let i = 0; i < this.data.length; i++) {\n this.points += 'L' + this.data[i].x + ' ' + this.data[i].y + ' ';\n }\n this.points = 'M' + this.points.substring(1) + 'Z';\n break;\n default:\n break;\n }\n this.cd.markForCheck();\n }\n\n /**\n * 获取椭圆上的的坐标点,起始角度为90度\n * @param index 序号\n * @param max 总数\n * @param cx 中心x\n * @param cy 中心y\n * @param rx x半径\n * @param ry y半径\n * @returns\n */\n getEllipsePoint(index: number, max: number, cx: number, cy: number, rx: number, ry: number) {\n const rad = ((index * 2) / max + 1 / 2) * Math.PI;\n return cx + Math.cos(rad) * rx + ',' + (cy - Math.sin(rad) * ry) + ' ';\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { ShapeComponent } from './shape.component';\nimport { WidgetBaseModule, WidgetService } from 'bbj-widget-base';\n\n@NgModule({\n declarations: [ShapeComponent],\n imports: [CommonModule, WidgetBaseModule],\n})\nexport class ShapeModule {\n constructor(widgetService: WidgetService) {\n widgetService.register(ShapeComponent);\n }\n}\n","import { Component, OnChanges, OnInit, SimpleChanges, EventEmitter } from '@angular/core';\nimport { Property, Widget, Data, Drill, DataOutput } from 'bbj-widget-base';\nimport { BasicLineChartComponent } from '../basic-line-chart/basic-line-chart.component';\nimport { BasicBarChartComponent } from '../basic-bar-chart/basic-bar-chart.component';\n\n@Component({\n selector: 'sc-line-bar-chart',\n templateUrl: './line-bar-chart.component.html',\n styleUrls: ['./line-bar-chart.component.less'],\n})\n@Widget('折线柱图', {\n group: 'barChart',\n image: 'assets/img/screen/lineBar.png',\n icon: 'icontubiao',\n})\nexport class LineBarChartComponent extends BasicLineChartComponent implements OnInit, OnChanges {\n @Property('类型', { ui: { hidden: true } })\n type = 'line';\n @Property('图表样式', {\n ui: {\n widget: 'myImageExample',\n spanLabel: 24,\n spanControl: 24,\n reset: ['barColor'],\n example: [\n {\n background: 'assets/img/screen/bar1.png',\n data: { barColor: { gradient: true, value: [['#FFEF66', '#FF851D']] } },\n },\n {\n background: 'assets/img/screen/bar2.png',\n data: { barColor: { gradient: true, value: [['#00FECB', '#00D191']] } },\n },\n {\n background: 'assets/img/screen/bar3.png',\n data: { barColor: { gradient: true, value: [['#00D2FD', '#3285FF']] } },\n },\n {\n background: 'assets/img/screen/bar4.png',\n data: { barColor: { gradient: true, value: [['#FF3699', '#8934F8']] } },\n },\n ],\n },\n })\n example: any;\n @Property('填充', {\n ui: {\n widget: 'seriesColor',\n type: 'gradual',\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],\n },\n })\n barColor = { gradient: true, value: [['#00D2FD', '#3285FF']] };\n @Property('字体', { ui: { widget: 'myFont' } })\n font: any = {\n family: '',\n color: '#FFFFFF',\n weight: 'normal',\n size: 12,\n space: 0,\n lineHeight: 12,\n };\n @Property('边距', { ui: { widget: 'myGrid' } })\n grid: any = {\n top: 30,\n right: 30,\n bottom: 30,\n left: 30,\n };\n @Property('图例', {\n ui: { widget: 'select' },\n enum: [\n { label: '无', value: 'none' },\n { label: '自动', value: 'auto' },\n { label: '左对齐', value: 'left' },\n { label: '右对齐', value: 'right' },\n ],\n })\n align = 'none';\n // @Property('轴单位', { ui: { widget: 'myUnit', type: 'double' } })\n // unit = { x: '', y: '', yMax: '', y1: '', y1Max: '', showY1: false };\n @Property('y轴单位', { type: 'string' })\n yUnit = '';\n @Property('x轴单位', { type: 'string' })\n xUnit = '';\n @Property('y轴最大')\n yMax: number;\n @Property('y轴最大', { type: 'boolean' })\n showY1 = false;\n @Property('网络线', {\n ui: { widget: 'boolean', checkedChildren: '开', unCheckedChildren: '关' },\n })\n netLine = false;\n @Property('标签', {\n ui: { widget: 'boolean', checkedChildren: '开', unCheckedChildren: '关' },\n })\n label = false;\n @Property('列间距', { ui: { widget: 'myRange', min: 0, max: 100, step: 10 } })\n barCategoryGap = 40;\n @Property('圆角', { ui: { widget: 'myRange', min: 0, max: 10, step: 1 } })\n barBorderRadius = 0;\n @Property('轴标签角度', {\n ui: { widget: 'myRange', min: -90, max: 90, step: 10 },\n })\n xLabelRotate = 0;\n\n chartOption: any = {};\n @Data({\n properties: {\n x: { type: 'string', title: '类目' },\n y: { type: 'number', title: '值' },\n s: { type: 'string', title: '系列' },\n },\n })\n _data: any[] = [\n { x: '一月', y: 2.0, s: '蒸发量' },\n { x: '二月', y: 4.9, s: '蒸发量' },\n { x: '三月', y: 7.0, s: '蒸发量' },\n { x: '四月', y: 35.6, s: '蒸发量' },\n { x: '五月', y: 73.4, s: '蒸发量' },\n { x: '六月', y: 123.4, s: '蒸发量' },\n { x: '一月', y: 2.6, s: '降水量' },\n { x: '二月', y: 5.9, s: '降水量' },\n { x: '三月', y: 9.0, s: '降水量' },\n { x: '四月', y: 25.7, s: '降水量' },\n { x: '五月', y: 43.5, s: '降水量' },\n { x: '六月', y: 78.9, s: '降水量' },\n { x: '一月', y: 2.0, s: '温度' },\n { x: '二月', y: 2.2, s: '温度' },\n { x: '三月', y: 3.3, s: '温度' },\n { x: '四月', y: 4.5, s: '温度' },\n { x: '五月', y: 6.3, s: '温度' },\n { x: '六月', y: 10.2, s: '温度' },\n ];\n @Drill()\n @DataOutput(['x', 's'])\n dataClick = new EventEmitter<any>();\n xData = [];\n series = [];\n yData = [];\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes._data) {\n const dataShadow = [];\n const maxNum = this.getMaxY();\n\n for (let i = 0; i < this.xData.length; i++) {\n dataShadow.push(maxNum);\n }\n this.style = {\n color: this.font.color,\n fontFamily: this.font.family,\n fontWeight: this.font.weight,\n fontSize: this.font.size,\n lineHeight: this.font.lineHeight,\n };\n\n const color = [];\n let barColor;\n if (this.barColor && this.barColor.value) {\n barColor = this.barColor.value;\n } else {\n barColor = this.barColor;\n }\n for (let i = 0; i < barColor.length; i++) {\n color.push({\n type: 'linear',\n x: 0,\n y: 0,\n x2: 0,\n y2: 1,\n global: false,\n colorStops: [\n { offset: 0, color: barColor[i][0] },\n { offset: 1, color: barColor[i][1] },\n ],\n });\n }\n\n const xAxis: any = {\n type: 'category',\n name: this.xUnit,\n nameTextStyle: this.style,\n axisLine: {\n show: true,\n lineStyle: {\n color: this.style.color,\n },\n },\n axisTick: {\n show: true,\n },\n axisLabel: {\n rotate: this.xLabelRotate,\n show: true,\n color: this.font.color,\n fontFamily: this.font.family,\n fontWeight: this.font.weight,\n fontSize: this.font.size,\n margin: this.font.lineHeight,\n },\n };\n\n let yAxis: any = {\n type: 'value',\n name: this.yUnit,\n nameTextStyle: this.style,\n axisLine: {\n lineStyle: {\n color: this.style.color,\n },\n },\n max: this.yMax ? undefined : this.yMax,\n axisLabel: this.style,\n splitLine: {\n show: this.netLine,\n lineStyle: {\n type: 'dashed',\n },\n },\n };\n\n const grid: any = {\n top: this.grid.top,\n right: this.grid.right,\n left: this.grid.left,\n bottom: this.grid.bottom,\n };\n\n if (this.showY1) {\n yAxis = [\n {\n type: 'value',\n name: this.yUnit,\n nameTextStyle: this.style,\n axisLine: {\n lineStyle: {\n color: this.style.color,\n },\n },\n max: this.yMax ? undefined : this.yMax,\n axisLabel: this.style,\n splitLine: {\n show: this.netLine,\n lineStyle: {\n type: 'dashed',\n },\n },\n },\n {\n type: 'value',\n name: this.yUnit,\n nameTextStyle: this.style,\n axisLine: {\n lineStyle: {\n color: this.style.color,\n },\n },\n max: this.yMax ? undefined : this.yMax,\n axisLabel: this.style,\n splitLine: {\n show: false,\n },\n },\n ];\n }\n this.chartOption = {\n legend: {\n data: this.series,\n align: this.align,\n icon: 'stack',\n show: this.align !== 'none',\n textStyle: this.style,\n },\n grid,\n xAxis,\n yAxis,\n color,\n series: [],\n };\n this.reloadData();\n // let temp = [];\n // for (let j = 0; j < this._data.length; j++) {\n // if (this.series[i] === this._data[j].s) {\n // temp.push(this._data[j]);\n // }\n // }\n // for (let j = 0; j < this.xData.length; j++) {\n // let count = 0;\n // for (let k = 0; k < temp.length; k++) {\n // if (temp[k].x == this.xData[j]) {\n // count++;\n // }\n // }\n // if (count == 0) {\n // this._data.push({ x: this.xData[j], y: null, s: this.series[i] });\n // }\n // }\n // this._data.sort((prev, next) => {\n // return this.xData.indexOf(prev.x) - this.xData.indexOf(next.x);\n // });\n // this._data\n // .filter(els => els.s === this.series[i])\n // .forEach(el => {\n // for (let j = 0; j < this.xData.length; j++) {\n // if (this.xData[j] === el.x) {\n // this.chartOption.series[i].data.push(el.y);\n // }\n // }\n // });\n // }\n }\n }\n setSeriesStyle(name: string, datasetIndex: number) {\n const first = datasetIndex === 1;\n const series = {\n name,\n showBackground: true,\n label: {\n show: this.label,\n position: 'top',\n textStyle: this.style,\n },\n itemStyle: {\n normal: {\n barBorderRadius: this.barBorderRadius,\n },\n },\n connectNulls: true,\n barCategoryGap: this.barCategoryGap + '%',\n type: first ? 'bar' : 'line',\n yAxisIndex: this.showY1 && !first ? 1 : 0,\n areaStyle: {\n opacity: 0,\n },\n encode: { x: 'x', y: 'y' },\n datasetIndex,\n };\n this.chartOption.series.push(series);\n return series;\n }\n ngOnInit() {}\n onChartClick(event) {\n this.dataClick.emit({ x: event.name, s: event.seriesName });\n }\n}\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { LineBarChartComponent } from './line-bar-chart.component';\r\nimport { NgxEchartsModule } from 'ngx-echarts';\r\nimport { WidgetBaseModule, WidgetService } from 'bbj-widget-base';\r\n\r\n@NgModule({\r\n declarations: [LineBarChartComponent],\r\n imports: [CommonModule, WidgetBaseModule, NgxEchartsModule],\r\n})\r\nexport class LineBarChartModule {\r\n constructor(widgetService: WidgetService) {\r\n widgetService.register(LineBarChartComponent);\r\n }\r\n}\r\n","import { Component, OnChanges, OnInit, SimpleChanges, EventEmitter } from '@angular/core';\nimport { Property, Widget, Data, Drill, DataOutput } from 'bbj-widget-base';\nimport { BasicLineChartComponent } from '../basic-line-chart/basic-line-chart.component';\n\n@Component({\n selector: 'sc-bubble-chart',\n templateUrl: './bubble-chart.component.html',\n styleUrls: ['./bubble-chart.component.less'],\n})\n@Widget('散点图', {\n group: 'otherChart',\n image: 'assets/img/screen/bubble.png',\n icon: 'icontubiao',\n})\nexport class BubbleChartComponent extends BasicLineChartComponent implements OnInit, OnChanges {\n @Property('图表样式', {\n ui: {\n widget: 'myImageExample',\n spanLabel: 24,\n spanControl: 24,\n reset: ['bubbleColor'],\n example: [\n {\n background: 'assets/img/screen/bubble1.png',\n data: { bubbleColor: { gradient: true, value: [['#FFEF66', '#FF851D']] } },\n },\n {\n background: 'assets/img/screen/bubble2.png',\n data: { bubbleColor: { gradient: true, value: [['#00FECB', '#00D191']] } },\n },\n {\n background: 'assets/img/screen/bubble3.png',\n data: { bubbleColor: { gradient: true, value: [['#00D2FD', '#3285FF']] } },\n },\n {\n background: 'assets/img/screen/bubble4.png',\n data: { bubbleColor: { gradient: true, value: [['#FF3699', '#8934F8']] } },\n },\n ],\n },\n })\n example: any;\n @Property('填充', {\n ui: {\n widget: 'seriesColor',\n type: 'gradual',\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],\n },\n })\n bubbleColor = { gradient: true, value: [['#00D2FD', '#3285FF']] };\n @Property('字体', { ui: { widget: 'myFont' } })\n font: any = {\n family: '',\n color: '#FFFFFF',\n weight: 'normal',\n size: 12,\n space: 0,\n lineHeight: 12,\n };\n @Property('边距', { ui: { widget: 'myGrid' } })\n grid: any = {\n top: 30,\n right: 30,\n bottom: 34,\n left: 36,\n };\n @Property('图例', {\n ui: { widget: 'select' },\n enum: [\n { label: '无', value: 'none' },\n { label: '自动', value: 'auto' },\n { label: '左对齐', value: 'left' },\n { label: '右对齐', value: 'right' },\n ],\n })\n align = 'auto';\n // @Property('轴单位', { ui: { widget: 'myUnit' } })\n // unit = { x: '', y: '' };\n @Property('y轴单位', { type: 'string' })\n yUnit = '';\n @Property('x轴单位', { type: 'string' })\n xUnit = '';\n @Property('y轴最大')\n yMax: number;\n @Property('网络线', {\n ui: { widget: 'boolean', checkedChildren: '开', unCheckedChildren: '关' },\n })\n netLine = false;\n @Property('标签', {\n ui: { widget: 'boolean', checkedChildren: '开', unCheckedChildren: '关' },\n })\n label = false;\n @Property('轴标签角度', {\n ui: { widget: 'myRange', min: -90, max: 90, step: 10 },\n })\n xLabelRotate = 0;\n\n chartOption: any = {};\n @Data({\n properties: {\n x: { type: 'string', title: '类目' },\n y: { type: 'number', title: '高度' },\n v: { type: 'number', title: '值' },\n s: { type: 'string', title: '系列' },\n },\n })\n _data = [\n { x: '一月', y: 10, v: 32, s: '收入' },\n { x: '二月', y: 20, v: 13, s: '收入' },\n { x: '三月', y: 25, v: 87, s: '收入' },\n { x: '四月', y: 35, v: 45, s: '收入' },\n { x: '五月', y: 27, v: 18, s: '收入' },\n { x: '六月', y: 28, v: 95, s: '收入' },\n { x: '一月', y: 18, v: 59, s: '支出' },\n { x: '二月', y: 28, v: 32, s: '支出' },\n { x: '三月', y: 32, v: 75, s: '支出' },\n { x: '四月', y: 48, v: 17, s: '支出' },\n { x: '五月', y: 20, v: 43, s: '支出' },\n { x: '六月', y: 17, v: 94, s: '支出' },\n ];\n @Drill()\n @DataOutput(['x', 's'])\n dataClick = new EventEmitter<any>();\n\n style = {\n color: '',\n fontFamily: '',\n fontWeight: '',\n fontSize: '',\n lineHeight: '',\n };\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes._data) {\n this.style = {\n color: this.font.color,\n fontFamily: this.font.family,\n fontWeight: this.font.weight,\n fontSize: this.font.size,\n lineHeight: this.font.lineHeight,\n };\n\n const color = [];\n let bubbleColor;\n if (this.bubbleColor && this.bubbleColor.value) {\n bubbleColor = this.bubbleColor.value;\n } else {\n bubbleColor = this.bubbleColor;\n }\n for (let i = 0; i < bubbleColor.length; i++) {\n color.push({\n type: 'radial',\n x: 0.4,\n y: 0.3,\n r: 1,\n global: false,\n colorStops: [\n { offset: 0, color: bubbleColor[i][0] },\n { offset: 1, color: bubbleColor[i][1] },\n ],\n });\n }\n this.chartOption = {\n legend: {\n align: this.align,\n show: this.align !== 'none',\n textStyle: this.style,\n },\n grid: {\n top: this.grid.top,\n right: this.grid.right,\n left: this.grid.left,\n bottom: this.grid.bottom,\n },\n xAxis: {\n name: this.xUnit,\n nameTextStyle: this.style,\n type: 'category',\n axisLine: {\n lineStyle: {\n color: this.style.color,\n },\n },\n axisLabel: {\n rotate: this.xLabelRotate,\n show: true,\n color: this.font.color,\n fontFamily: this.font.family,\n fontWeight: this.font.weight,\n fontSize: this.font.size,\n margin: this.font.lineHeight,\n },\n // data: this.xData,\n },\n yAxis: {\n name: this.yUnit,\n nameTextStyle: this.style,\n type: 'value',\n axisLine: {\n lineStyle: {\n color: this.style.color,\n },\n },\n axisLabel: this.style,\n splitLine: {\n show: this.netLine,\n lineStyle: {\n type: 'dashed',\n },\n },\n },\n color,\n series: [],\n };\n this.reloadData();\n // for (let i = 0; i < this.series.length; i++) {\n\n // let temp = [];\n // for (let j = 0; j < this._data.length; j++) {\n // if (this.series[i] === this._data[j].s) {\n // temp.push(this._data[j]);\n // }\n // }\n // for (let j = 0; j < this.xData.length; j++) {\n // let count = 0;\n // for (let k = 0; k < temp.length; k++) {\n // if (temp[k].x == this.xData[j]) {\n // count++;\n // }\n // }\n // if (count == 0) {\n // this._data.push({ x: this.xData[j], y: null,v:null, s: this.series[i] });\n // }\n // }\n // this._data.sort((prev, next) => {\n // return this.xData.indexOf(prev.x) - this.xData.indexOf(next.x);\n // });\n // this._data\n // .filter(els => els.s === this.series[i])\n // .forEach(el => {\n // for (let j = 0; j < this.xData.length; j++) {\n // if (this.xData[j] === el.x) {\n // this.chartOption.series[i].data.push([el.x, el.y, el.v]);\n // }\n // }\n // });\n // this.chartOption.series[i].symbolSize = function(data) {\n // return data[2] / 2;\n // };\n // this.chartOption.series[i].label.emphasis.formatter = function(param) {\n // return param.data[2];\n // };\n // }\n\n // console.log(JSON.stringify(this.chartOption));\n }\n }\n // reloadData(){\n // if (this._data[0]) {\n // for (let i = 0; i < this._data.length; i++) {\n // if ( this._data[i].s) {\n // this.series[i] = this._data[i].s;\n // }\n // }\n // this.uniqueData(this.series);\n // }\n // for (let i = 0; i < this._data.length; i++) {\n // this.xData[i] = this._data[i].x;\n // }\n // this.uniqueData(this.xData);\n // }\n setSeriesStyle(name: string, datasetIndex: number) {\n const series = {\n type: 'scatter',\n symbolSize: (data) => {\n return data.v;\n },\n name,\n label: {\n show: this.label,\n textStyle: this.style,\n emphasis: {\n show: true,\n position: 'top',\n textStyle: this.style,\n formatter: [],\n },\n },\n itemStyle: {\n normal: {\n shadowBlur: 10,\n shadowOffsetY: 5,\n shadowColor: 'rgba(67, 74, 78, 0.5)',\n },\n },\n encode: { x: 'x', y: 'y' },\n datasetIndex,\n // data: [],\n };\n this.chartOption.series.push(series);\n return series;\n }\n ngOnInit() {}\n onChartClick(event) {\n this.dataClick.emit({ x: event.name, s: event.seriesName });\n }\n}\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { BubbleChartComponent } from './bubble-chart.component';\r\nimport { NgxEchartsModule } from 'ngx-echarts';\r\nimport { WidgetBaseModule, WidgetService } from 'bbj-widget-base';\r\n\r\n@NgModule({\r\n declarations: [BubbleChartComponent],\r\n imports: [CommonModule, WidgetBaseModule, NgxEchartsModule],\r\n})\r\nexport class BubbleChartModule {\r\n constructor(widgetService: WidgetService) {\r\n widgetService.register(BubbleChartComponent);\r\n }\r\n}\r\n","import { Component, OnChanges, OnInit, SimpleChanges, EventEmitter } from '@angular/core';\nimport { Property, Widget, Data, Drill, DataOutput } from 'bbj-widget-base';\nimport { BasicLineChartComponent } from '../basic-line-chart/basic-line-chart.component';\n\n@Component({\n selector: 'sc-radar-chart',\n templateUrl: './radar-chart.component.html',\n styleUrls: ['./radar-chart.component.less'],\n})\n@Widget('雷达图', {\n group: 'otherChart',\n image: 'assets/img/screen/radar.png',\n icon: 'icontubiao',\n})\nexport class RadarChartComponent extends BasicLineChartComponent implements OnInit, OnChanges {\n @Property('系列颜色', {\n ui: {\n widget: 'seriesColor',\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],\n },\n })\n lineColor = ['#3285FF', '#00D2FD'];\n @Property('字体', { ui: { widget: 'myFont' } })\n font: any = {\n family: '',\n color: '#FFFFFF',\n weight: 'normal',\n size: 12,\n space: 0,\n lineHeight: '',\n };\n @Property('图例', {\n ui: { widget: 'select' },\n enum: [\n { label: '无', value: 'none' },\n { label: '自动', value: 'auto' },\n { label: '左对齐', value: 'left' },\n { label: '右对齐', value: 'right' },\n ],\n })\n align = 'auto';\n @Property('标签', { type: 'boolean' })\n label = false;\n @Property('形状', {\n ui: { widget: 'select' },\n enum: [\n { label: '多边形', value: 'polygon' },\n { label: '圆形', value: 'circle' },\n ],\n })\n shape = 'polygon';\n @Property('区域', {\n ui: { widget: 'boolean', checkedChildren: '开', unCheckedChildren: '关' },\n })\n area = false;\n @Property('边距', { ui: { widget: 'myGrid' } })\n grid: any = {\n top: 30,\n right: 30,\n bottom: 40,\n left: 36,\n };\n // @Property('缩放', { type: 'number' })\n // radius = 100;\n chartOption: any = {};\n @Data({\n properties: {\n x: { type: 'string', title: '类目' },\n y: { type: 'number', title: '值' },\n m: { type: 'number', title: '最大值' },\n s: { type: 'string', title: '系列' },\n },\n })\n _data = [\n { x: '销售', y: 10, m: 37, s: '预算' },\n { x: '管理', y: 20, m: 56, s: '预算' },\n { x: '信息技术', y: 25, m: 65, s: '预算' },\n { x: '客服', y: 35, m: 67, s: '预算' },\n { x: '研发', y: 27, m: 76, s: '预算' },\n { x: '市场', y: 28, m: 35, s: '预算' },\n { x: '销售', y: 18, m: 76, s: '实际' },\n { x: '管理', y: 28, m: 53, s: '实际' },\n { x: '信息技术', y: 32, m: 76, s: '实际' },\n { x: '客服', y: 48, m: 57, s: '实际' },\n // { x: \"研发\", y: 20, m: 57, s: \"实际\" },\n { x: '市场', y: 17, m: 56, s: '实际' },\n ];\n @Drill()\n @DataOutput(['x', 's'])\n dataClick = new EventEmitter<any>();\n series = [];\n ngOnChanges(changes: SimpleChanges): void {\n if (changes._data) {\n this.reloadData();\n const style = {\n color: this.font.color,\n fontFamily: this.font.family,\n fontWeight: this.font.weight,\n fontSize: this.font.size,\n lineHeight: this.font.lineHeight,\n };\n\n this.chartOption = {\n legend: {\n data: this.series,\n align: this.align,\n show: this.align !== 'none',\n textStyle: style,\n },\n radar: {\n shape: this.shape,\n name: {\n textStyle: style,\n },\n indicator: [],\n // radius: this.radius,\n },\n color: this.lineColor,\n grid: this.grid,\n series: [\n {\n label: {\n show: this.label,\n textStyle: this.getTextStyle(this.font),\n formatter: function (params) {\n return params.value;\n },\n },\n type: 'radar',\n areaStyle: { opacity: this.area ? 0.3 : 0 },\n data: [],\n },\n ],\n };\n for (let i = 0; i < this.xData.length; i++) {\n this._data\n .filter((els) => els.x === this.xData[i])\n .forEach((el) => {\n if (this.series.length > 1) {\n if (this.chartOption.radar.indicator[i] && this.chartOption.radar.indicator[i].max) {\n const ext = this.chartOption.radar.indicator[i].max;\n this.chartOption.radar.indicator[i].max = Math.max(ext, el.m);\n } else {\n this.chartOption.radar.indicator.push({\n name: this.xData[i],\n max: el.m,\n });\n }\n } else {\n this.chartOption.radar.indicator.push({\n name: this.xData[i],\n max: el.m,\n });\n }\n });\n }\n for (let i = 0; i < this.series.length; i++) {\n this.chartOption.series[0].data.push({\n value: [],\n name: this.series[i],\n });\n const temp = [];\n for (let j = 0; j < this._data.length; j++) {\n if (this.series[i] === this._data[j].s || ' ') {\n temp.push(this._data[j]);\n }\n }\n for (let j = 0; j < this.xData.length; j++) {\n let count = 0;\n for (let k = 0; k < temp.length; k++) {\n if (temp[k].x == this.xData[j]) {\n count++;\n }\n }\n if (count == 0) {\n this._data.push({\n x: this.xData[j],\n y: null,\n m: null,\n s: this.series[i],\n });\n }\n }\n this._data.sort((prev, next) => {\n return this.xData.indexOf(prev.x) - this.xData.indexOf(next.x);\n });\n this._data\n .filter((els) => els.s === this.series[i])\n .forEach((el) => {\n for (let j = 0; j < this.xData.length; j++) {\n if (this.xData[j] === el.x) {\n this.chartOption.series[0].data[i].value.push(el.y);\n }\n }\n });\n }\n }\n }\n reloadData() {\n if (this._data[0]) {\n for (let i = 0; i < this._data.length; i++) {\n if (!this._data[i].s) {\n this.align = 'none';\n }\n this._data[i].s = this._data[i].s || ' ';\n this.series[i] = this._data[i].s;\n }\n this.uniqueData(this.series);\n }\n for (let i = 0; i < this._data.length; i++) {\n this.xData[i] = this._data[i].x;\n }\n this.uniqueData(this.xData);\n }\n ngOnInit() {}\n onChartClick(event) {\n this.dataClick.emit({ x: event.name, s: event.seriesName });\n }\n}\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { RadarChartComponent } from './radar-chart.component';\r\nimport { NgxEchartsModule } from 'ngx-echarts';\r\nimport { WidgetBaseModule, WidgetService } from 'bbj-widget-base';\r\n\r\n@NgModule({\r\n declarations: [RadarChartComponent],\r\n imports: [CommonModule, WidgetBaseModule, NgxEchartsModule],\r\n})\r\nexport class RadarChartModule {\r\n constructor(widgetService: WidgetService) {\r\n widgetService.register(RadarChartComponent);\r\n }\r\n}\r\n","import { Component, OnChanges, OnInit, SimpleChanges, EventEmitter } from '@angular/core';\nimport { Property, Widget, Data, Drill, DataOutput } from 'bbj-widget-base';\nimport { BasicLineChartComponent } from '../basic-line-chart/basic-line-chart.component';\n\n@Component({\n selector: 'sc-funnel-chart',\n templateUrl: './funnel-chart.component.html',\n styleUrls: ['./funnel-chart.component.less'],\n})\n@Widget('三角图', {\n group: 'otherChart',\n image: 'assets/img/screen/funnel.png',\n icon: 'icontubiao',\n})\nexport class FunnelChartComponent extends BasicLineChartComponent implements OnInit, OnChanges {\n @Property('图表样式', {\n ui: {\n widget: 'myImageExample',\n spanLabel: 24,\n spanControl: 24,\n reset: ['seriesColor'],\n example: [\n {\n background: 'assets/img/screen/funnel1.png',\n data: {\n seriesColor: ['#FFE53F', '#FFBF47', '#FF7F1D', '#FC460D', '#EE2100'],\n },\n },\n {\n background: 'assets/img/screen/funnel2.png',\n data: {\n seriesColor: ['#C0E656', '#52D852', '#00B335', '#008F44', '#006A61'],\n },\n },\n {\n background: 'assets/img/screen/funnel3.png',\n data: {\n seriesColor: ['#00E5E3', '#0DBBD8', '#2A8BC9', '#345EBB', '#003560'],\n },\n },\n {\n background: 'assets/img/screen/funnel4.png',\n data: {\n seriesColor: ['#FF6DB7', '#E23FCA', '#AD12CE', '#7F0B84', '#610796'],\n },\n },\n ],\n },\n })\n example: any;\n @Property('系列颜色', {\n ui: {\n widget: 'seriesColor',\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],\n },\n })\n seriesColor = ['#00E5E3', '#0DBBD8', '#2A8BC9', '#345EBB', '#003560'];\n @Property('字体', { ui: { widget: 'myFont' } })\n font: any = {\n family: '',\n color: '#FFFFFF',\n weight: 'normal',\n size: 12,\n space: 0,\n lineHeight: '',\n };\n @Property('边距', { ui: { widget: 'myGrid' } })\n grid: any = {\n top: 60,\n right: 16,\n bottom: 20,\n left: 16,\n };\n @Property('图例', {\n ui: { widget: 'select' },\n enum: [\n { label: '无', value: 'none' },\n { label: '自动', value: 'auto' },\n { label: '左对齐', value: 'left' },\n { label: '右对齐', value: 'right' },\n ],\n })\n align = 'auto';\n @Property('最大值', {\n ui: { widget: 'myRange', min: 0, max: 100, step: 1 },\n })\n max = 100;\n @Property('最小值', {\n ui: { widget: 'myRange', min: 0, max: 100, step: 1 },\n })\n min = 0;\n @Property('排序', {\n ui: { widget: 'select' },\n enum: [\n { label: '升序', value: 'ascending' },\n { label: '降序', value: 'descending' },\n { label: '无/按数据先后', value: 'none' },\n ],\n })\n sort = 'ascending';\n @Property('间隔', {\n ui: { widget: 'myRange', min: 0, max: 10, step: 1 },\n })\n gap = 4;\n @Property('标签', {\n ui: { widget: 'boolean', checkedChildren: '开', unCheckedChildren: '关' },\n })\n label = true;\n\n chartOption: any = {};\n @Data({\n properties: {\n x: { type: 'string', title: '类目' },\n y: { type: 'number', title: '值' },\n },\n })\n _data = [\n { x: '一月', y: 20 },\n { x: '二月', y: 40 },\n { x: '三月', y: 60 },\n { x: '四月', y: 80 },\n { x: '五月', y: 100 },\n ];\n @Drill()\n @DataOutput(['x'])\n dataClick = new EventEmitter<any>();\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes._data) {\n const style = {\n color: this.font.color,\n fontFamily: this.font.family,\n fontWeight: this.font.weight,\n fontSize: this.font.size,\n lineHeight: this.font.lineHeight,\n };\n\n this.chartOption = {\n legend: {\n data: this.xData,\n align: this.align,\n show: this.align !== 'none',\n textStyle: style,\n },\n calculable: true,\n color: this.seriesColor,\n series: [\n {\n type: 'funnel',\n top: this.grid.top,\n right: this.grid.right,\n left: this.grid.left,\n bottom: this.grid.bottom,\n maxSize: this.max + '%',\n minSize: this.min + '%',\n sort: this.sort,\n gap: this.gap,\n itemStyle: { borderWidth: 0 },\n label: {\n show: this.label,\n position: 'inside',\n },\n },\n ],\n dataset: {\n // 用 dimensions 指定了维度的顺序。直角坐标系中,\n // 默认把第一个维度映射到 X 轴上,第二个维度映射到 Y 轴上。\n // 如果不指定 dimensions,也可以通过指定 series.encode\n // 完成映射,参见后文。\n dimensions: [],\n source: [],\n },\n };\n this.reloadData();\n // for (let i = 0; i < this._data.length; i++) {\n // this.chartOption.series[0].data.push({\n // value: this._data[i].y,\n // name: this._data[i].x\n // });\n // }\n // console.log(JSON.stringify(this.chartOption));\n }\n }\n reloadData() {\n const dimensions = ['x', 'y'];\n const source = this._data;\n for (let i = 0; i < this._data.length; i++) {\n this.xData[i] = this._data[i].x;\n }\n this.uniqueData(this.xData);\n this.chartOption.dataset.dimensions = dimensions;\n this.chartOption.dataset.source = source;\n }\n ngOnInit() {}\n onChartClick(event) {\n this.dataClick.emit({ x: event.name, s: event.seriesName });\n }\n}\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FunnelChartComponent } from './funnel-chart.component';\r\nimport { NgxEchartsModule } from 'ngx-echarts';\r\nimport { WidgetBaseModule, WidgetService } from 'bbj-widget-base';\r\n\r\n@NgModule({\r\n declarations: [FunnelChartComponent],\r\n imports: [CommonModule, WidgetBaseModule, NgxEchartsModule],\r\n})\r\nexport class FunnelChartModule {\r\n constructor(widgetService: WidgetService) {\r\n widgetService.register(FunnelChartComponent);\r\n }\r\n}\r\n","import { Component, ElementRef, HostBinding, HostListener, OnInit } from '@angular/core';\nimport { Property, Widget } from 'bbj-widget-base';\n\n@Component({\n selector: 'sc-background',\n templateUrl: './background.component.html',\n styleUrls: ['./background.component.less'],\n})\n@Widget('图片', { group: 'background', icon: 'iconbeijing' })\nexport class BackgroundComponent implements OnInit {\n @Property('', { min: 1, ui: { widget: 'myUpload', spanLabel: 0, spanControl: 24 } })\n image: string;\n @Property('透明度', { ui: { widget: 'myRange', min: 0, max: 1, step: 0.1 } })\n opacity = 1;\n @Property('阴影', { ui: { widget: 'myShadow' } })\n shadow: any = { color: '', X: 0, Y: 0, Z: 0 };\n style: any;\n type: string;\n @Property('响应鼠标事件', { type: 'boolean', default: true })\n pointerEvents = false;\n\n constructor(private ele: ElementRef) {}\n\n ngOnInit() {\n this.style = {\n opacity: this.opacity,\n boxShadow: this.shadow.color + ' ' + this.shadow.X + 'px ' + this.shadow.Y + 'px ' + this.shadow.Z + 'px',\n };\n if (this.pointerEvents === false) {\n this.ele.nativeElement.style.pointerEvents = 'none';\n }\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { BackgroundComponent } from './background.component';\nimport { WidgetBaseModule, WidgetService } from 'bbj-widget-base';\n\n@NgModule({\n declarations: [BackgroundComponent],\n imports: [CommonModule, WidgetBaseModule],\n})\nexport class BackgroundModule {\n constructor(widgetService: WidgetService) {\n widgetService.register(BackgroundComponent);\n }\n}\n","import { Component, OnChanges, OnInit, SimpleChanges } from '@angular/core';\nimport { Property, Widget, Data } from 'bbj-widget-base';\n\n@Component({\n selector: 'sc-gauge',\n templateUrl: './gauge.component.html',\n styleUrls: ['./gauge.component.less'],\n})\n@Widget('仪表盘', {\n group: 'otherChart',\n image: 'assets/img/screen/gauge.png',\n icon: 'icontubiao',\n})\nexport class GaugeComponent implements OnInit, OnChanges {\n\n @Property('表盘颜色', {\n ui: {\n widget: 'seriesColor',\n type: 'gradual',\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],\n },\n })\n seriesColor = { gradient: true, value: [['#2841E8', '#00CAFA']] };\n\n @Property('指针颜色', {\n ui: {\n widget: 'myColor',\n example: ['#ffffff', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', null]\n },\n })\n pointerColor = 'auto';\n @Property('指针阴影', {\n ui: {\n widget: 'myColor',\n example: ['#ffffff', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', null]\n },\n })\n pointerShadow = 'rgba(0,138,255,0.45)';\n\n @Property('表盘宽度', {\n ui: { widget: 'myRange', min: 0, max: 100, step: 1 },\n })\n width = 10;\n @Property('起始角度', {\n ui: { widget: 'myRange', min: 90, max: 360, step: 1 },\n })\n startAngle = 225;\n @Property('结束角度', {\n ui: { widget: 'myRange', min: -90, max: 90, step: 1 },\n })\n endAngle = -45;\n\n\n\n @Property('显示标题', {\n ui: { widget: 'boolean', checkedChildren: '开', unCheckedChildren: '关' },\n })\n label = false;\n @Property('字体', { ui: { widget: 'myFont' } })\n font: any = {\n family: '',\n color: '#FFFFFF',\n weight: 'normal',\n size: 12,\n space: 0,\n lineHeight: 12,\n };\n\n @Property('标题位移', {\n ui: { widget: 'number' },\n })\n labelOffset = 50;\n @Property('标题宽度', {\n ui: { widget: 'number' },\n })\n labelWidth = null;\n\n @Property('显示数值', {\n ui: { widget: 'boolean', checkedChildren: '开', unCheckedChildren: '关' },\n })\n labelVal = true;\n\n @Property('数值字体', { ui: { widget: 'myFont' } })\n numFont: any = {\n family: '',\n color: '#FFFFFF',\n weight: 'normal',\n size: 38,\n space: 0,\n lineHeight: 38,\n };\n\n @Property('百分号', {\n ui: { widget: 'boolean', checkedChildren: '开', unCheckedChildren: '关' },\n })\n percent = false;\n\n @Property('数值位移', {\n ui: { widget: 'number' },\n })\n labelValOffset = -10;\n\n @Property('最大值', {\n ui: { widget: 'number' },\n })\n max = 100;\n @Property('最小值', {\n ui: { widget: 'number' },\n })\n min = 0;\n\n // 显示分隔线\n @Property('分隔线', {\n ui: { widget: 'boolean', checkedChildren: '开', unCheckedChildren: '关' },\n })\n splitLine = false;\n\n // 显示刻度\n @Property('刻度', {\n ui: { widget: 'boolean', checkedChildren: '开', unCheckedChildren: '关' },\n })\n axisTick = true;\n\n @Property('刻度数值', {\n ui: { widget: 'boolean', checkedChildren: '开', unCheckedChildren: '关' },\n })\n axisLabel = true;\n\n @Property('刻度长度', {\n ui: { widget: 'number' },\n })\n axisTickLen = 10;\n\n @Property('刻度宽度', {\n ui: { widget: 'number' },\n })\n axisTickWidth = 1;\n\n @Property('刻度颜色', {\n ui: {\n widget: 'myColor',\n example: ['#ffffff', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', null]\n },\n })\n axisTickColor = 'auto';\n\n\n image: string;\n constructor() { }\n chartOption: any = {};\n @Data({\n properties: {\n name: { type: 'string', title: '文字' },\n value: { type: 'number', title: '值' },\n },\n })\n _data = [{ name: '速度', value: 48 }];\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes._data) {\n const style = {\n show: this.axisLabel,\n color: this.font.color,\n fontFamily: this.font.family,\n fontWeight: this.font.weight,\n fontSize: this.font.size,\n lineHeight: this.font.lineHeight,\n };\n const color = [];\n const color1 = [];\n let seriesColor;\n if (this.seriesColor && this.seriesColor.value) {\n seriesColor = this.seriesColor.value;\n } else {\n seriesColor = this.seriesColor;\n }\n for (let i = 0; i < seriesColor.length; i++) {\n color.push({\n type: 'linear',\n x: 0,\n y: 0,\n x2: 1,\n y2: 0,\n global: false,\n colorStops: [\n { offset: 0, color: seriesColor[i][0] },\n { offset: 1, color: seriesColor[i][1] },\n ],\n });\n }\n let count = 1;\n if (seriesColor.length > 1) {\n count = 1 / seriesColor.length;\n for (let i = 0; i < seriesColor.length; i++) {\n color1.push([count * (i + 1), color[i]]);\n }\n }\n this.chartOption = {\n series: [\n {\n // name: this.title,\n type: 'gauge',\n detail: {\n show: this.labelVal,\n formatter: this.percent ? '' + ((this._data[0].value / this.max) * 100).toFixed(2) + '%' : '{value}',\n color: this.numFont.color,\n fontFamily: this.numFont.family,\n fontWeight: this.numFont.weight,\n fontSize: this.numFont.size,\n lineHeight: this.numFont.lineHeight,\n offsetCenter: [0, `${this.labelValOffset}%`],\n },\n data: this._data,\n startAngle: this.startAngle,\n endAngle: this.endAngle,\n title: {\n show: this.label,\n color: this.font.color,\n fontFamily: this.font.family,\n fontWeight: this.font.weight,\n fontSize: this.font.size,\n lineHeight: this.font.lineHeight,\n offsetCenter: [0, `${this.labelOffset}%`],\n overflow: 'breakAll',\n width: this.labelWidth\n },\n axisLine: {\n lineStyle: {\n width: this.width,\n color: count < 1 ? color1 : [[1, color[0]]],\n },\n },\n axisLabel: style,\n max: this.max,\n min: this.min,\n splitLine: {\n show: this.splitLine,\n distance: 0,\n length: 10\n },\n axisTick: {\n show: this.axisTick,\n length: this.axisTickLen,\n lineStyle: {\n width: this.axisTickWidth,\n color: this.axisTickColor\n }\n },\n pointer: {\n width: 6,\n length: '70%',\n itemStyle: {\n color: this.pointerColor,\n shadowColor: this.pointerShadow,\n shadowBlur: 10,\n shadowOffsetX: 2,\n shadowOffsetY: 2\n }\n },\n\n },\n ],\n };\n // console.log(JSON.stringify(this.chartOption));\n }\n }\n ngOnInit() { }\n}\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { GaugeComponent } from './gauge.component';\r\nimport { NgxEchartsModule } from 'ngx-echarts';\r\nimport { WidgetBaseModule, WidgetService } from 'bbj-widget-base';\r\n\r\n@NgModule({\r\n declarations: [GaugeComponent],\r\n imports: [CommonModule, WidgetBaseModule, NgxEchartsModule],\r\n})\r\nexport class GaugeModule {\r\n constructor(widgetService: WidgetService) {\r\n widgetService.register(GaugeComponent);\r\n }\r\n}\r\n","import { Component, OnChanges, OnInit, SimpleChanges, EventEmitter } from '@angular/core';\nimport { Property, Widget, Data, Drill, DataOutput } from 'bbj-widget-base';\n\n@Component({\n selector: 'sc-percent-pie-chart',\n templateUrl: './percent-pie-chart.component.html',\n styleUrls: ['./percent-pie-chart.component.less'],\n})\n@Widget('占比饼图', {\n group: 'pieChart',\n image: 'assets/img/screen/percent_pie.png',\n icon: 'icontubiao',\n})\nexport class PercentPieChartComponent implements OnInit, OnChanges {\n @Property('图表样式', {\n ui: {\n widget: 'myImageExample',\n spanLabel: 24,\n spanControl: 24,\n class: 'percentPie',\n reset: ['pieColor'],\n example: [\n {\n background: 'assets/img/screen/percent_pie1.png',\n data: { pieColor: { gradient: true, value: [['#FF7C24', '#50536E']] } },\n },\n {\n background: 'assets/img/screen/percent_pie2.png',\n data: { pieColor: { gradient: true, value: [['#00FEC3', '#50536E']] } },\n },\n {\n background: 'assets/img/screen/percent_pie3.png',\n data: { pieColor: { gradient: true, value: [['#00D2FD', '#50536E']] } },\n },\n {\n background: 'assets/img/screen/percent_pie4.png',\n data: { pieColor: { gradient: true, value: [['#BF91FA', '#50536E']] } },\n },\n ],\n },\n })\n example: any;\n @Property('颜色', {\n ui: {\n widget: 'seriesColor',\n type: 'gradual',\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],\n },\n })\n pieColor = {\n gradient: true,\n value: [\n ['#00A2FD', '#50536E'],\n ['black', 'black'],\n ],\n };\n @Property('字体', { ui: { widget: 'myFont' } })\n font: any = {\n family: '',\n color: '#AFB2BF',\n weight: 'normal',\n size: 20,\n space: 0,\n lineHeight: '',\n };\n @Property('环宽', { type: 'number' })\n width = 20;\n @Property('圆角', {\n ui: { widget: 'boolean', checkedChildren: '开', unCheckedChildren: '关' },\n })\n fillet = false;\n @Property('顺时针', {\n ui: { widget: 'boolean', checkedChildren: '顺', unCheckedChildren: '逆' },\n })\n clockwise = true;\n @Property('百分值', {\n ui: { widget: 'boolean', checkedChildren: '开', unCheckedChildren: '关' },\n })\n percent = true;\n image: string;\n constructor() {}\n\n chartOption: any = {};\n @Data({\n properties: {\n value: { type: 'number', title: '值' },\n max: { type: 'number', title: '最大值' },\n },\n })\n _data = [{ value: 80, max: 100 }];\n @Drill()\n @DataOutput(['value', 'max'])\n dataClick = new EventEmitter<any>();\n ngOnChanges(changes: SimpleChanges): void {\n if (changes._data) {\n const value = this._data[0].value;\n const value_per = (this._data[0].value / this._data[0].max) * 100;\n const style = {\n color: this.font.color,\n fontFamily: this.font.family,\n fontWeight: this.font.weight,\n fontSize: this.font.size,\n lineHeight: this.font.lineHeight,\n };\n let pieColor;\n if (this.pieColor && this.pieColor.value) {\n pieColor = this.pieColor.value;\n } else {\n pieColor = this.pieColor;\n }\n const color = {\n type: 'linear',\n x: 0,\n y: 0,\n global: false,\n colorStops: [\n { offset: 0, color: pieColor[0][0] },\n { offset: 1, color: pieColor[0][1] },\n ],\n };\n\n this.chartOption = {\n title: {\n text: this.percent ? parseInt(value_per.toString()) + '%' : parseInt(value.toString()),\n textStyle: style,\n left: 'center',\n top: 'center',\n },\n angleAxis: {\n max: this._data[0].max, // 满分\n clockwise: this.clockwise, // 逆时针\n // 隐藏刻度线\n axisLine: {\n show: false,\n },\n axisTick: {\n show: false,\n },\n axisLabel: {\n show: false,\n },\n splitLine: {\n show: false,\n },\n },\n radiusAxis: {\n type: 'category',\n // 隐藏刻度线\n axisLine: {\n show: false,\n },\n axisTick: {\n show: false,\n },\n axisLabel: {\n show: false,\n },\n splitLine: {\n show: false,\n },\n },\n polar: {\n center: ['50%', '50%'],\n radius: '100%', // 图形大小\n },\n series: [\n {\n type: 'bar',\n label: {\n show: false,\n },\n data: [\n {\n value,\n itemStyle: {\n // 颜色渐变\n color,\n },\n },\n ],\n coordinateSystem: 'polar',\n roundCap: this.fillet,\n barWidth: this.width,\n barGap: '-100%', // 两环重叠\n z: 2,\n },\n {\n // 灰色环\n type: 'bar',\n data: [\n {\n value: this._data[0].max,\n itemStyle: {\n color: pieColor[pieColor.length - 1][0],\n },\n },\n ],\n coordinateSystem: 'polar',\n roundCap: this.fillet,\n barWidth: this.width,\n barGap: '-100%', // 两环重叠\n z: 1,\n },\n ],\n };\n }\n console.log(this.chartOption);\n }\n ngOnInit() {}\n onChartClick(event) {\n this.dataClick.emit({ x: event.name, s: event.seriesName });\n }\n}\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { PercentPieChartComponent } from './percent-pie-chart.component';\r\nimport { NgxEchartsModule } from 'ngx-echarts';\r\nimport { WidgetBaseModule, WidgetService } from 'bbj-widget-base';\r\n\r\n@NgModule({\r\n declarations: [PercentPieChartComponent],\r\n imports: [CommonModule, WidgetBaseModule, NgxEchartsModule],\r\n})\r\nexport class PercentPieChartModule {\r\n constructor(widgetService: WidgetService) {\r\n widgetService.register(PercentPieChartComponent);\r\n }\r\n}\r\n","import { Component, OnChanges, OnInit, SimpleChanges, EventEmitter } from '@angular/core';\nimport { Property, Widget, Data, Drill, DataOutput } from 'bbj-widget-base';\nimport { BasicLineChartComponent } from '../basic-line-chart/basic-line-chart.component';\n\n@Component({\n selector: 'sc-tree-ring-chart',\n templateUrl: './tree-ring-chart.component.html',\n styleUrls: ['./tree-ring-chart.component.less'],\n})\n@Widget('年轮图', {\n group: 'pieChart',\n image: 'assets/img/screen/ringTree.png',\n icon: 'icontubiao',\n})\nexport class TreeRingChartComponent extends BasicLineChartComponent implements OnInit, OnChanges {\n\n @Property('系列颜色', {\n ui: {\n widget: 'seriesColor',\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],\n },\n })\n color = ['#3285FF', '#00D2FD'];\n @Property('字体', { ui: { widget: 'myFont' } })\n font: any = {\n family: '',\n color: '#FFFFFF',\n weight: 'normal',\n size: 12,\n space: 0,\n lineHeight: 12,\n };\n @Property('顺时针', {\n ui: { widget: 'boolean', checkedChildren: '顺', unCheckedChildren: '逆' },\n })\n clockwise = false;\n @Property('图例', {\n ui: { widget: 'select' },\n enum: [\n { label: '无', value: 'none' },\n { label: '自动', value: 'auto' },\n { label: '纵向居中', value: 'center' },\n { label: '纵向居左', value: 'left' },\n { label: '纵向居右', value: 'right' },\n ],\n })\n align = 'none';\n @Property('边距', { ui: { widget: 'myGrid', type: 'pie' } })\n grid: any = {\n top: 45,\n left: 50,\n };\n\n chartOption: any = {};\n @Data({\n properties: {\n name: { type: 'string', title: '类目' },\n value: { type: 'number', title: '值' },\n },\n })\n _data = [\n { name: '短信', value: 1419 },\n { name: '客服', value: 1776 },\n { name: '外呼', value: 1895 },\n { name: '网厅', value: 1576 },\n { name: '手厅', value: 2077 },\n ];\n @Drill()\n @DataOutput(['value'])\n dataClick = new EventEmitter<any>();\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes._data) {\n const data = this._data.sort(function (a, b) {\n return b.value - a.value;\n });\n const objData = this.array2obj(data, 'name');\n const textStyle = {\n color: this.font.color,\n fontFamily: this.font.family,\n fontWeight: this.font.weight,\n fontSize: this.font.size,\n lineHeight: this.font.lineHeight,\n };\n\n this.chartOption = {\n legend: {\n type: 'scroll',\n orient: 'vertical',\n data,\n x: this.align,\n show: this.align !== 'none',\n formatter (name) {\n return name + '(' + objData[name].value + ')';\n },\n textStyle,\n },\n color: this.color,\n yAxis: [\n {\n type: 'category',\n inverse: true,\n axisLine: {\n show: false,\n },\n axisTick: {\n show: false,\n },\n axisLabel: {\n show: false,\n },\n data: this.getData(data).yAxis,\n },\n ],\n xAxis: [\n {\n show: false,\n },\n ],\n series: this.getData(data).series,\n };\n }\n }\n ngOnInit() {}\n\n getMax(data) {\n const a = Math.max(...data.map((item) => item.value));\n const b = a.toString().length;\n const c = Math.pow(10, b - 1);\n const max = Number(c) + Number(a);\n return max;\n }\n\n getData(data) {\n const res = {\n series: [],\n yAxis: [],\n };\n for (let i = 0; i < data.length; i++) {\n res.series.push({\n name: i,\n type: 'pie',\n clockWise: this.clockwise,\n hoverAnimation: false,\n radius: [63 - i * 8 + '%', 58 - i * 8 + '%'],\n center: [this.grid.left + '%', this.grid.top + '%'],\n label: {\n show: false,\n },\n itemStyle: {\n label: {\n show: false,\n },\n labelLine: {\n show: false,\n },\n borderWidth: 5,\n },\n data: [\n {\n value: this.getMax(data) - data[i].value,\n name: '',\n itemStyle: {\n color: '#ffffff00',\n borderWidth: 0,\n },\n tooltip: {\n show: false,\n },\n hoverAnimation: false,\n },\n {\n value: data[i].value,\n name: data[i].name,\n },\n ],\n });\n }\n return res;\n }\n\n array2obj(array, key) {\n const resObj = {};\n for (let i = 0; i < array.length; i++) {\n resObj[array[i][key]] = array[i];\n }\n return resObj;\n }\n onChartClick(event) {\n this.dataClick.emit({ x: event.name, s: event.seriesName });\n }\n}\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { TreeRingChartComponent } from './tree-ring-chart.component';\r\nimport { NgxEchartsModule } from 'ngx-echarts';\r\nimport { WidgetBaseModule, WidgetService } from 'bbj-widget-base';\r\n\r\n@NgModule({\r\n declarations: [TreeRingChartComponent],\r\n imports: [CommonModule, WidgetBaseModule, NgxEchartsModule],\r\n})\r\nexport class TreeRingChartModule {\r\n constructor(widgetService: WidgetService) {\r\n widgetService.register(TreeRingChartComponent);\r\n }\r\n}\r\n","import { Component, OnChanges, OnInit, SimpleChanges } from '@angular/core';\nimport { Property, Widget, Data } from 'bbj-widget-base';\n\nimport 'echarts-liquidfill';\n@Component({\n selector: 'sc-liquid-fill',\n templateUrl: './liquid-fill.component.html',\n styleUrls: ['./liquid-fill.component.less'],\n})\n@Widget('水球图', {\n group: 'otherChart',\n image: 'assets/img/screen/liquidFill.png',\n icon: 'icontubiao',\n})\nexport class LiquidFillComponent implements OnInit,OnChanges {\n\n @Property('字体', { ui: { widget: 'myFont' } })\n font: any = {\n family: '',\n color: '#294D99',\n weight: 'normal',\n size: 40,\n space: 0,\n lineHeight: '',\n };\n @Property('字体覆盖', {\n ui: {\n widget: 'myColor',\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', null],\n },\n })\n cover = '#fff';\n @Property('背景色', {\n ui: {\n widget: 'myColor',\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', null],\n },\n })\n bg = '#DEDEDE';\n @Property('边框色', {\n ui: {\n widget: 'myColor',\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', null],\n },\n })\n border = '#DEDEDE';\n @Property('水波色系', {\n ui: {\n widget: 'seriesColor',\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],\n },\n })\n seriesColor = ['#1DE2C4', '#008FE9'];\n @Property('水波层数', {\n ui: { widget: 'myRange', min: 1, max: 5, step: 1 },\n })\n level = 2;\n @Property('形状', {\n ui: { widget: 'select' },\n enum: [\n { label: '圆形', value: 'circle' },\n { label: '矩形', value: 'rect' },\n { label: '圆角矩形', value: 'roundRect' },\n { label: '三角形', value: 'triangle' },\n { label: '菱形', value: 'diamond' },\n { label: '大头针', value: 'pin' },\n { label: '箭头', value: 'arrow' },\n ],\n })\n shape = 'circle';\n @Property('动画', {\n ui: { widget: 'boolean', checkedChildren: '开', unCheckedChildren: '关' },\n })\n waveAnimation = true;\n image: string;\n constructor() {}\n @Data({\n properties: { value: { type: 'number', title: '值' } },\n })\n _data: any[] = [{ value: 0.48 }];\n chartOption: any = null;\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes._data) {\n const value = this._data[0].value;\n const style = {\n color: this.font.color,\n fontFamily: this.font.family,\n fontWeight: this.font.weight,\n fontSize: this.font.size,\n lineHeight: this.font.lineHeight,\n };\n\n const data = [];\n for (let i = 0; i < this.level; i++) {\n data.push({\n value,\n label: { normal: { textStyle: style, insideColor: this.cover } },\n });\n }\n\n if (this.bg == '') {\n this.bg = '#ffffff00';\n }\n this.chartOption = {\n series: [\n {\n type: 'liquidFill',\n data,\n radius: '80%',\n shape: this.shape,\n waveAnimation: this.waveAnimation,\n backgroundStyle: {\n borderColor: this.border,\n color: this.bg,\n },\n color: this.seriesColor,\n outline: {\n show: false,\n },\n },\n ],\n };\n }\n }\n ngOnInit() {}\n}\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { LiquidFillComponent } from './liquid-fill.component';\r\nimport { NgxEchartsModule } from 'ngx-echarts';\r\nimport { WidgetBaseModule, WidgetService } from 'bbj-widget-base';\r\n\r\n@NgModule({\r\n declarations: [LiquidFillComponent],\r\n imports: [CommonModule, WidgetBaseModule, NgxEchartsModule],\r\n})\r\nexport class LiquidFillModule {\r\n constructor(widgetService: WidgetService) {\r\n widgetService.register(LiquidFillComponent);\r\n }\r\n}\r\n","import {\n Component,\n ElementRef,\n OnInit,\n SimpleChanges,\n OnChanges,\n EventEmitter,\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n ViewChild,\n HostBinding,\n Renderer2,\n OnDestroy,\n} from '@angular/core';\nimport { Widget, Data, Property, DataSchema, DataOutput, WidgetRef, CustomExport } from 'bbj-widget-base';\nimport { SFArrayWidgetSchema, SFSchema } from '@delon/form';\nimport { deepCopy } from '@delon/util';\nimport { getFontStyle } from '../shared/util/style.util';\n\n@Component({\n selector: 'sc-shuffling-list',\n templateUrl: './shuffling-list.component.html',\n changeDetection: ChangeDetectionStrategy.OnPush,\n styleUrls: ['./shuffling-list.component.less'],\n})\n@Widget('滚动表格', { group: 'table', icon: 'icontubiao', image: '/assets/img/screen/shuffling.png' })\nexport class ShufflingListComponent implements OnInit, OnChanges, OnDestroy, CustomExport {\n @Property('轮播', { type: 'boolean' })\n carousel = true;\n _carousel: boolean;\n @Property('自动换行', { type: 'boolean' })\n lineWrap = true;\n @Property('轮播间隔', { ui: { widget: 'myRange', min: 1, max: 20, step: 1 } })\n time = 1;\n @Property('序列号显示', { type: 'boolean' })\n serialNumberDisplay = true;\n @Property('表头显示', { type: 'boolean' })\n headDisplay = true;\n @Property('表头背景', {\n ui: {\n widget: 'myColor',\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#ffffff'],\n },\n })\n headBackground = '';\n @Property('表头字体', { ui: { widget: 'myFont' } })\n headFont: any = { family: '', color: '#ffffff', weight: 'normal', size: 20, space: 0, lineHeight: 40 };\n @Property('字体发光', { type: 'boolean' })\n fontBling = false;\n @Property('字段颜色', {\n type: 'array',\n maxItems: 99,\n items: {\n type: 'object',\n properties: {\n key: {\n type: 'string',\n title: '字段',\n },\n value: {\n type: 'string',\n title: '值',\n },\n color: {\n type: 'string',\n title: '颜色',\n ui: {\n widget: 'myColor',\n },\n },\n },\n required: [],\n },\n ui: { grid: { arraySpan: 24 }, spanControl: 24 } as SFArrayWidgetSchema,\n })\n bindColor = [];\n @Property('发光颜色', {\n ui: {\n widget: 'myColor',\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#ffffff'],\n },\n })\n blingColor = '';\n @Property('边框颜色', {\n ui: {\n widget: 'myColor',\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#ffffff'],\n },\n })\n borderColor = '';\n @Property('边框发光', {\n ui: {\n widget: 'myColor',\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#ffffff'],\n },\n })\n borderBlingColor = '';\n @Property('边框粗细', {\n ui: { widget: 'myRange', min: 0, max: 40, step: 1 },\n })\n borderSize = 0;\n\n @Property('点击触发方式', {\n enum: [\n { label: '行', value: 'row' },\n { label: '单元格', value: 'cell' },\n ],\n })\n clickTarget = 'row';\n @Property('表头设置', {\n type: 'array',\n maxItems: 99,\n items: {\n type: 'object',\n properties: {\n key: {\n type: 'string',\n title: 'key',\n },\n width: {\n type: 'number',\n title: '宽度',\n },\n align: {\n type: 'string',\n ui: { widget: 'select' },\n enum: [\n { label: '居左', value: 'left' },\n { label: '居中', value: 'center' },\n { label: '居右', value: 'right' },\n ],\n },\n show: {\n type: 'boolean',\n title: '是否显示',\n default: true,\n },\n clickable: {\n type: 'boolean',\n title: '是否可点击',\n ui: { visibleIf: { '/clickTarget': ['cell'] } },\n },\n },\n required: [],\n },\n ui: { grid: { arraySpan: 24 }, spanControl: 24 } as SFArrayWidgetSchema,\n })\n titleStyle = [];\n @Property('发光程度', { ui: { widget: 'myRange', min: 1, max: 10, step: 1 } })\n blingNum = 3;\n @Property('奇行背景', {\n ui: {\n widget: 'myColor',\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#ffffff'],\n },\n })\n oddBackground = '';\n @Property('偶行背景', {\n ui: {\n widget: 'myColor',\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#ffffff'],\n },\n })\n evenBackground = '';\n @Property('内容字体', { ui: { widget: 'myFont' } })\n contentFont: any = { family: '', color: '#ffffff', weight: 'normal', size: 12, space: 0, lineHeight: 40 };\n @Property('字体发光', { type: 'boolean' })\n contentFontBling = false;\n @Property('发光颜色', {\n ui: {\n widget: 'myColor',\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#ffffff'],\n },\n })\n contentBlingColor = '';\n @Property('发光程度', { ui: { widget: 'myRange', min: 1, max: 10, step: 1 } })\n contentBlingNum = 3;\n @Property('左内边距', { ui: { widget: 'myRange', min: 1, max: 100, step: 1 } })\n paddingLeft = 0;\n @Property('右内边距', { ui: { widget: 'myRange', min: 1, max: 100, step: 1 } })\n paddingRight = 0;\n @Data({})\n data: any = [\n {\n 地区: '温州',\n 流量: '123',\n 行为: 'xxxx',\n },\n {\n 地区: '杭州',\n 流量: '1235',\n 行为: 'xxxx',\n },\n {\n 地区: '上海',\n 流量: '1234',\n 行为: 'xxxx',\n },\n {\n 地区: '北京',\n 流量: '12367',\n 行为: 'xxxx',\n },\n {\n 地区: '温州1',\n 流量: '123835',\n 行为: 'xxxx',\n },\n {\n 地区: '温州2',\n 流量: '123835',\n 行为: 'xxxx',\n },\n {\n 地区: '温州3',\n 流量: '123835',\n 行为: 'xxxx',\n },\n {\n 地区: '温州4',\n 流量: '123835',\n 行为: 'xxxx',\n },\n ];\n @DataSchema('data')\n schema: SFSchema;\n tableStyle: any = {};\n\n animationDelay = 0;\n @DataOutput('行数据')\n dateChange = new EventEmitter<any>();\n @DataOutput('单元格')\n cellClick = new EventEmitter<any>();\n @DataOutput('列')\n columnClick = new EventEmitter<any>();\n columns: any[];\n headStyle: any = {};\n bodyStyle: any = {};\n rowStyle: any = {};\n content: any[];\n placeholder: any;\n paged: boolean;\n total: number;\n runtime: number; //已滚动时间\n lastTime: number; //上一次计时时间\n @DataOutput('翻页')\n pageChange = new EventEmitter<any>();\n nextPageTimeout: any;\n parentHeight: number;\n headerHeight: any;\n rowHeight: any;\n paused: boolean;\n constructor(\n private ele: ElementRef,\n private cd: ChangeDetectorRef,\n private widgetRef: WidgetRef,\n private renderer: Renderer2,\n ) {}\n ngOnInit() {\n const widget: any = this.widgetRef.widget as any;\n if (this.clickTarget !== 'cell' && (widget.link?.enabled || widget.outputs?.enabled)) {\n this.tableStyle.cursor = 'pointer';\n }\n this.headStyle = getFontStyle(this.headFont);\n this.headStyle.backgroundColor = this.headBackground;\n if (this.paddingLeft) {\n this.headStyle.paddingLeft = this.rowStyle.paddingLeft = this.paddingLeft + 'px';\n }\n if (this.paddingRight) {\n this.headStyle.paddingRight = this.rowStyle.paddingRight = this.paddingRight + 'px';\n }\n\n Object.assign(this.tableStyle, getFontStyle(this.contentFont));\n\n if (this.borderSize && this.borderColor) {\n const element = this.ele.nativeElement;\n const border = `${this.borderSize}px solid ${this.borderColor || '#fff'}`;\n this.rowStyle.borderBottom = this.headStyle.borderBottom = border;\n this.renderer.setStyle(element, 'border', border);\n if (this.borderBlingColor) {\n const filter = `drop-shadow(0 0 8px ${this.borderBlingColor})`;\n this.renderer.setStyle(element, 'filter', filter);\n }\n }\n\n if (this.fontBling) {\n // 发光\n let color = this.blingColor || this.headFont.color || '#ffffff';\n let num = this.blingNum || 3;\n this.headStyle.textShadow = this.getBlingStyle(color, num);\n }\n if (this.contentFontBling) {\n // 发光\n let color = this.contentBlingColor || this.contentFont.color || '#ffffff';\n let num = this.blingNum || 3;\n this.tableStyle.textShadow = this.getBlingStyle(color, num);\n }\n if (this.lineWrap) {\n this.tableStyle.wordBreak = 'break-all';\n } else {\n this.tableStyle.whiteSpace = 'nowrap';\n }\n this.cd.markForCheck();\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if ((changes.data || changes.schema) && this.data) {\n if (this.data.totalElements != null) {\n this.paged = true;\n const start = this.data.number * this.data.size;\n if (this.content == null) {\n this.content = [];\n }\n if (this.content.length > start) {\n this.content.splice(start, this.content.length - start);\n } else if (this.content.length < start) {\n this.pageChange.emit(Math.ceil(this.content.length / this.data.size));\n return;\n }\n this.content.push(...this.data.content);\n this.total = this.data.totalElements;\n } else {\n this.paged = false;\n this.content = this.data;\n this.total = this.data.length;\n }\n if (!this.paged || this.data.number === 0) {\n this.updateColumns();\n }\n const element: HTMLElement = this.ele.nativeElement;\n this.parentHeight = Number(element.parentElement.style.height.replace('px', ''));\n this.headerHeight = this.headFont.lineHeight || 40;\n this.rowHeight = this.contentFont.linHeight || 40;\n if (this.borderSize && this.borderColor) {\n this.headerHeight += this.borderSize;\n this.rowHeight += this.borderSize;\n }\n if (!this.headDisplay) {\n this.headerHeight = 0;\n }\n const carousel = this.carousel && this.total * this.rowHeight + this.headerHeight > this.parentHeight;\n if (!this._carousel && carousel) {\n this.runtime = 0;\n }\n this._carousel = carousel;\n this.placeholder = null;\n if (this._carousel) {\n const time = this.total * this.time;\n this.tableStyle.animation = 'carousel ' + time + 's linear infinite';\n if (this.paged && this.total > this.content.length) {\n this.placeholder = this.rowHeight * (this.total - this.content.length);\n }\n if (!this.paused) {\n this.updateRuntime();\n this.loadNextPage();\n }\n } else {\n this.tableStyle.animation = null;\n }\n }\n this.cd.markForCheck();\n }\n\n ngOnDestroy(): void {\n this.stopLoadNext();\n }\n\n getBlingStyle(color: string, num: number) {\n let str = '';\n for (let i = 0; i < num; i++) {\n str += '0 0 20px ' + color + ',';\n }\n return str.substr(0, str.length - 1);\n }\n\n /**\n * 更新已滚动时间\n */\n updateRuntime() {\n const now = new Date().getTime();\n if (this.lastTime) {\n this.runtime += now - this.lastTime;\n }\n this.lastTime = now;\n }\n\n stopLoadNext() {\n if (this.nextPageTimeout != null) {\n clearTimeout(this.nextPageTimeout);\n }\n }\n\n getNextLoadTime() {\n const contentHeight = this.headerHeight + this.rowHeight * this.content.length; // 已加载内容的高度\n let nextLoadTime =\n ((contentHeight - this.parentHeight) / this.rowHeight) * this.time * 1000 - this.runtime + this.animationDelay;\n return nextLoadTime;\n }\n\n loadNextPage() {\n this.stopLoadNext();\n if (this.paged && this.total > this.content.length) {\n let nextLoadTime = this.getNextLoadTime();\n if (nextLoadTime < 0) {\n nextLoadTime = 0;\n }\n this.nextPageTimeout = setTimeout(() => {\n this.pageChange.next(this.data.number + 1);\n }, nextLoadTime);\n }\n }\n\n updateColumns() {\n this.columns = [];\n let keys: string[];\n if (this.schema && this.schema.properties) {\n keys = Object.keys(this.schema.properties);\n } else if (this.content && this.content[0]) {\n keys = Object.keys(this.content[0]);\n }\n const titleStyleMap = {};\n if (this.titleStyle && this.titleStyle.length > 0) {\n this.titleStyle.forEach((titleStyle) => {\n if (titleStyle.key) {\n titleStyleMap[titleStyle.key] = titleStyle;\n }\n });\n }\n if (keys) {\n for (const key of keys) {\n let title = key;\n if (this.schema && this.schema.properties) {\n const property = this.schema.properties[key];\n if (property && property.title) {\n title = property.title;\n }\n }\n const headStyle: any = {};\n const cellStyle: any = {};\n const column: any = { index: key, title, headStyle, cellStyle };\n const titleStyle = titleStyleMap[key];\n if (this.titleStyle?.length && (titleStyle == null || !titleStyle.show)) {\n continue;\n }\n let width: number;\n if (titleStyle) {\n width = titleStyle.width;\n if (titleStyle.align) {\n cellStyle.textAlign = titleStyle.align;\n }\n if (this.clickTarget === 'cell' && titleStyle.clickable) {\n column.clickable = true;\n }\n }\n if (width) {\n headStyle.width = cellStyle.width = width + 'px';\n } else {\n headStyle.flex = cellStyle.flex = 1;\n }\n\n this.columns.push(column);\n }\n }\n }\n\n onClick(value) {\n if (this.clickTarget !== 'cell') {\n this.dateChange.emit(value);\n }\n }\n mouseover() {\n // this._carousel=false;\n if (this._carousel) {\n this.paused = true;\n this.tableStyle.animationPlayState = 'paused';\n this.updateRuntime();\n this.stopLoadNext();\n }\n }\n mouseout() {\n if (this._carousel) {\n this.paused = false;\n this.lastTime = new Date().getTime();\n this.tableStyle.animationPlayState = 'running';\n if (this.paged) {\n this.loadNextPage();\n }\n }\n }\n onMousewheel(event: WheelEvent) {\n if (this._carousel) {\n this.animationDelay -= event.deltaY * 2;\n if (this.animationDelay > this.runtime) {\n this.animationDelay = this.runtime;\n }\n this.tableStyle.animationDelay = this.animationDelay / 1000 + 's';\n if (this.paged && this.total > this.content.length && this.getNextLoadTime() < 0) {\n this.pageChange.emit(this.data.number + 1);\n }\n event.stopPropagation();\n event.preventDefault();\n }\n }\n\n onCellClick(column: any, row: any, event: MouseEvent) {\n if (this.clickTarget !== 'cell' || column.clickable) {\n event.stopPropagation();\n this.cellClick.emit(row[column.index]);\n this.columnClick.emit(column.index);\n this.dateChange.emit(row);\n }\n }\n\n exportWord() {\n let html = '<table>';\n if (this.headDisplay) {\n html += '<thead><tr>';\n this.columns.forEach((column) => {\n html += `<th>${column.title}</th>`;\n });\n html += '</tr></thead>';\n }\n html += '<tbody>';\n this.content.forEach((row) => {\n html += '<tr>';\n this.columns.forEach((column) => {\n html += `<td>${row[column.index]}</td>`;\n });\n html += '</tr>';\n });\n html += '</tbody></table><br/>';\n return html;\n }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n name: 'bindColor',\n})\nexport class ColorPipe implements PipeTransform {\n transform(data: any, ...args: any[]): unknown {\n if (data) {\n const bindColor = args[0];\n if (bindColor?.length) {\n for (const item of bindColor) {\n const { key, value, color } = item;\n if (key && color && data[key] == value) {\n return color;\n }\n }\n }\n }\n return null;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { ShufflingListComponent } from './shuffling-list.component';\nimport { WidgetBaseModule, WidgetService } from 'bbj-widget-base';\nimport { NzPipesModule } from 'ng-zorro-antd/pipes';\nimport { ColorPipe } from './color.pipe';\nimport { NzToolTipModule } from 'ng-zorro-antd/tooltip';\n\n@NgModule({\n declarations: [ShufflingListComponent, ColorPipe],\n imports: [CommonModule, WidgetBaseModule, NzPipesModule, NzToolTipModule],\n})\nexport class ShufflingListModule {\n constructor(widgetService: WidgetService) {\n widgetService.register(ShufflingListComponent);\n }\n}\n","import { Component, OnInit } from '@angular/core';\n\n@Component({\n selector: 'sc-parent-container',\n templateUrl: './parent-container.component.html',\n styleUrls: ['./parent-container.component.less']\n})\nexport class ParentContainerComponent implements OnInit {\n children: any;\n childId: string;\n constructor() { }\n\n ngOnInit() {\n }\n childInit(child: any) {\n // this.children = child;\n }\n deleteChild(childId: string) {\n // this.childId = childId\n }\n}\n","import { Component, OnInit, OnChanges, SimpleChanges, forwardRef } from '@angular/core';\nimport { Widget, Property } from 'bbj-widget-base';\n// import 'echarts/dist/extension/bmap.js';\nimport { ParentContainerComponent } from '../parent-container/parent-container.component';\nimport { BaiduMapService } from 'bbj-screen-widget/core';\n\n@Component({\n selector: 'sc-basic-planimetric-map',\n templateUrl: './basic-planimetric-map.component.html',\n styleUrls: ['./basic-planimetric-map.component.less'],\n providers: [{ provide: ParentContainerComponent, useExisting: forwardRef(() => BasicPlanimetricMapComponent) }],\n})\n@Widget('基础平面地图',{group: 'component',image: 'assets/img/screen/basicMap.png',icon: 'iconmokuai', children:[\n{\n title: '呼吸气泡层',\n type: 'sc-breathing-bubble-layer',\n option: {\n },\n hidden: true,\n hideChild: true\n },],\n childTypes:['sc-breathing-bubble-layer'],\n description: 'hasChildItem'})\nexport class BasicPlanimetricMapComponent extends ParentContainerComponent implements OnInit, OnChanges {\n\n @Property('地图缩放', {\n ui: { widget: 'myRange', min: 1, max: 40, step: 1 },\n })\n zoom = 5;\n @Property('中心经度', {\n ui: { widget: 'myRange', min: -180, max: 180, step: 1 },\n })\n centerLng = 104;\n @Property('中心纬度', {\n ui: { widget: 'myRange', min: -90, max: 90, step: 1 },\n })\n centerLat = 36;\n chartOption: any;\n hasMap = false;\n _children: any = [];\n constructor(public baiduMapService: BaiduMapService) {\n super();\n }\n ngOnChanges(changes: SimpleChanges): void {\n }\n\n async ngOnInit() {\n await this.baiduMapService.loadMap();\n await import('echarts/extension/bmap/bmap.js');\n this.hasMap = true;\n this.chartInit();\n }\n chartInit() {\n let series = [];\n this._children.forEach(child => {\n if (Array.isArray(child.item)) {\n series = [...series, ...child.item];\n } else {\n series = [...series, child.item];\n }\n });\n this.chartOption = {\n title: {\n text: '基础平面地图'\n },\n tooltip : {\n trigger: 'item'\n },\n bmap: {\n label: {\n emphasis: {\n show: false\n }\n },\n itemStyle: {\n normal: {\n areaColor: '#323c48',\n borderColor: '#404a59',\n opacity:1\n },\n emphasis: {\n areaColor: '#2a333d'\n }\n },\n center: [this.centerLng, this.centerLat],\n zoom: this.zoom,\n roam: true,\n mapStyle: {\n styleJson: [{\n featureType: 'water',\n elementType: 'all',\n stylers: {\n color: '#d1d1d1'\n }\n }, {\n featureType: 'land',\n elementType: 'all',\n stylers: {\n color: '#f3f3f3'\n }\n }, {\n featureType: 'railway',\n elementType: 'all',\n stylers: {\n visibility: 'off'\n }\n }, {\n featureType: 'highway',\n elementType: 'all',\n stylers: {\n color: '#fdfdfd'\n }\n }, {\n featureType: 'highway',\n elementType: 'labels',\n stylers: {\n visibility: 'off'\n }\n }, {\n featureType: 'arterial',\n elementType: 'geometry',\n stylers: {\n color: '#fefefe'\n }\n }, {\n featureType: 'arterial',\n elementType: 'geometry.fill',\n stylers: {\n color: '#fefefe'\n }\n }, {\n featureType: 'poi',\n elementType: 'all',\n stylers: {\n visibility: 'off'\n }\n }, {\n featureType: 'green',\n elementType: 'all',\n stylers: {\n visibility: 'off'\n }\n }, {\n featureType: 'subway',\n elementType: 'all',\n stylers: {\n visibility: 'off'\n }\n }, {\n featureType: 'manmade',\n elementType: 'all',\n stylers: {\n color: '#d1d1d1'\n }\n }, {\n featureType: 'local',\n elementType: 'all',\n stylers: {\n color: '#d1d1d1'\n }\n }, {\n featureType: 'arterial',\n elementType: 'labels',\n stylers: {\n visibility: 'off'\n }\n }, {\n featureType: 'boundary',\n elementType: 'all',\n stylers: {\n color: '#fefefe'\n }\n }, {\n featureType: 'building',\n elementType: 'all',\n stylers: {\n color: '#d1d1d1'\n }\n }, {\n featureType: 'label',\n elementType: 'labels.text.fill',\n stylers: {\n color: '#999999'\n }\n }]\n }\n },\n series\n };\n }\n childInit(child: any) {\n if (child.id) {\n const childIndex = this._children.findIndex(s => s.id === child.id);\n if (childIndex > -1) {\n this._children[childIndex] = child;\n } else {\n this._children.push(child);\n }\n this.chartInit();\n }\n }\n deleteChild(childId: string) {\n if (childId) {\n const childIndex = this._children.findIndex((s) => s.id === childId);\n if (childIndex > -1) {\n this._children.splice(childIndex, 1);\n this.chartInit();\n }\n }\n }\n}\n","import { Component, OnInit, Inject, forwardRef, OnChanges, SimpleChanges, OnDestroy } from '@angular/core';\nimport { Widget, Data, Property } from 'bbj-widget-base';\nimport { ParentContainerComponent } from '../parent-container/parent-container.component';\n\n@Component({\n selector: 'sc-breathing-bubble-layer',\n templateUrl: './breathing-bubble-layer.component.html',\n styleUrls: ['./breathing-bubble-layer.component.css'],\n})\n@Widget('呼吸气泡层', {\n group: 'component',\n image: '',\n icon: '',\n hidden: true,\n})\nexport class BreathingBubbleLayerComponent implements OnInit, OnChanges, OnDestroy {\n // @Property('', {\n // ui: {\n // widget: 'myBubbleType',\n // spanLabel: 0,\n // spanControl: 24,\n // title: '气泡类型',\n // example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],\n // },\n // })\n @Property('气泡类型', {\n type: 'array',\n items: {\n type: 'object',\n properties: {\n key: { type: 'string' },\n color: {\n type: 'string',\n title: '颜色',\n ui: { widget: 'myColor' },\n },\n size: {\n type: 'string',\n title: '大小',\n ui: { widget: 'textarea', autosize: { minRows: 4 } },\n },\n },\n ui: { spanLabelFixed: 50 },\n },\n ui: { grid: { arraySpan: 24 }, spanControl: 24 },\n })\n bubbleType = [{ key: 1, color: '#ddb926', size: 'function (val) {return val[2]*0.1;}' }];\n\n @Data({\n properties: {\n name: { type: 'string', title: '地名' },\n value: { type: 'number', title: '值' },\n series: { type: 'string', title: '系列' },\n },\n })\n data: any[] = [\n { name: '海门', value: 9, series: 1 },\n { name: '鄂尔多斯', value: 12, series: 1 },\n { name: '招远', value: 12, series: 1 },\n { name: '舟山', value: 12, series: 1 },\n { name: '齐齐哈尔', value: 14, series: 1 },\n { name: '盐城', value: 15, series: 1 },\n { name: '赤峰', value: 16, series: 1 },\n { name: '青岛', value: 18, series: 1 },\n { name: '乳山', value: 18, series: 1 },\n { name: '金昌', value: 19, series: 1 },\n { name: '泉州', value: 21, series: 1 },\n { name: '莱西', value: 21, series: 1 },\n { name: '日照', value: 21, series: 1 },\n { name: '胶南', value: 22, series: 1 },\n { name: '南通', value: 23, series: 1 },\n { name: '拉萨', value: 24, series: 2 },\n { name: '云浮', value: 24, series: 2 },\n { name: '梅州', value: 25, series: 2 },\n { name: '文登', value: 25, series: 2 },\n { name: '上海', value: 25, series: 2 },\n { name: '攀枝花', value: 25, series: 2 },\n { name: '威海', value: 25, series: 2 },\n { name: '承德', value: 25, series: 2 },\n { name: '厦门', value: 26, series: 2 },\n { name: '汕尾', value: 26, series: 2 },\n { name: '潮州', value: 26, series: 2 },\n { name: '丹东', value: 27, series: 2 },\n { name: '太仓', value: 27, series: 2 },\n { name: '曲靖', value: 27, series: 2 },\n { name: '烟台', value: 28, series: 2 },\n { name: '福州', value: 29, series: 2 },\n { name: '瓦房店', value: 30, series: 2 },\n { name: '即墨', value: 30, series: 2 },\n { name: '抚顺', value: 31, series: 2 },\n { name: '玉溪', value: 31, series: 2 },\n { name: '张家口', value: 31, series: 2 },\n { name: '阳泉', value: 31, series: 2 },\n { name: '莱州', value: 32, series: 2 },\n { name: '湖州', value: 32, series: 2 },\n { name: '汕头', value: 32, series: 2 },\n { name: '昆山', value: 33, series: 2 },\n { name: '宁波', value: 33, series: 2 },\n { name: '湛江', value: 33, series: 2 },\n { name: '揭阳', value: 34, series: 1 },\n { name: '荣成', value: 34, series: 1 },\n { name: '连云港', value: 35, series: 1 },\n { name: '葫芦岛', value: 35, series: 1 },\n { name: '常熟', value: 36, series: 1 },\n { name: '东莞', value: 36, series: 1 },\n { name: '河源', value: 36, series: 1 },\n { name: '淮安', value: 36, series: 1 },\n { name: '泰州', value: 36, series: 1 },\n { name: '南宁', value: 37, series: 1 },\n { name: '营口', value: 37, series: 1 },\n { name: '惠州', value: 37, series: 1 },\n { name: '江阴', value: 37, series: 1 },\n { name: '蓬莱', value: 37, series: 1 },\n { name: '韶关', value: 38, series: 1 },\n { name: '嘉峪关', value: 38, series: 1 },\n { name: '广州', value: 38, series: 1 },\n { name: '延安', value: 38, series: 1 },\n { name: '太原', value: 39, series: 1 },\n { name: '清远', value: 39, series: 1 },\n { name: '中山', value: 39, series: 1 },\n { name: '昆明', value: 39, series: 1 },\n { name: '寿光', value: 40, series: 1 },\n { name: '盘锦', value: 40, series: 1 },\n { name: '长治', value: 41, series: 1 },\n { name: '深圳', value: 41, series: 1 },\n { name: '珠海', value: 42, series: 1 },\n { name: '宿迁', value: 43, series: 1 },\n { name: '咸阳', value: 43, series: 1 },\n { name: '铜川', value: 44, series: 1 },\n { name: '平度', value: 44, series: 1 },\n { name: '佛山', value: 44, series: 1 },\n { name: '海口', value: 44, series: 1 },\n { name: '江门', value: 45, series: 1 },\n { name: '章丘', value: 45, series: 1 },\n { name: '肇庆', value: 46, series: 1 },\n { name: '大连', value: 47, series: 1 },\n { name: '临汾', value: 47, series: 1 },\n { name: '吴江', value: 47, series: 1 },\n { name: '石嘴山', value: 49, series: 1 },\n { name: '沈阳', value: 50, series: 1 },\n { name: '苏州', value: 50, series: 1 },\n { name: '茂名', value: 50, series: 1 },\n { name: '嘉兴', value: 51, series: 1 },\n { name: '长春', value: 51, series: 1 },\n { name: '胶州', value: 52, series: 1 },\n { name: '银川', value: 52, series: 1 },\n { name: '张家港', value: 52, series: 1 },\n { name: '三门峡', value: 53, series: 1 },\n { name: '锦州', value: 54, series: 1 },\n { name: '南昌', value: 54, series: 1 },\n { name: '柳州', value: 54, series: 1 },\n { name: '三亚', value: 54, series: 1 },\n { name: '自贡', value: 56, series: 1 },\n { name: '吉林', value: 56, series: 1 },\n { name: '阳江', value: 57, series: 1 },\n { name: '泸州', value: 57, series: 1 },\n { name: '西宁', value: 57, series: 1 },\n { name: '宜宾', value: 58, series: 1 },\n { name: '呼和浩特', value: 58, series: 1 },\n { name: '成都', value: 58, series: 1 },\n { name: '大同', value: 58, series: 1 },\n { name: '镇江', value: 59, series: 1 },\n { name: '桂林', value: 59, series: 1 },\n { name: '张家界', value: 59, series: 1 },\n { name: '宜兴', value: 59, series: 1 },\n { name: '北海', value: 60, series: 1 },\n { name: '西安', value: 61, series: 1 },\n { name: '金坛', value: 62, series: 1 },\n { name: '东营', value: 62, series: 1 },\n { name: '牡丹江', value: 63, series: 1 },\n { name: '遵义', value: 63, series: 1 },\n { name: '绍兴', value: 63, series: 1 },\n { name: '扬州', value: 64, series: 1 },\n { name: '常州', value: 64, series: 1 },\n { name: '潍坊', value: 65, series: 1 },\n { name: '重庆', value: 66, series: 1 },\n { name: '台州', value: 67, series: 1 },\n { name: '南京', value: 67, series: 1 },\n { name: '滨州', value: 70, series: 1 },\n { name: '贵阳', value: 71, series: 1 },\n { name: '无锡', value: 71, series: 1 },\n { name: '本溪', value: 71, series: 1 },\n { name: '克拉玛依', value: 72, series: 1 },\n { name: '渭南', value: 72, series: 1 },\n { name: '马鞍山', value: 72, series: 1 },\n { name: '宝鸡', value: 72, series: 1 },\n { name: '焦作', value: 75, series: 1 },\n { name: '句容', value: 75, series: 1 },\n { name: '北京', value: 79, series: 1 },\n { name: '徐州', value: 79, series: 1 },\n { name: '衡水', value: 80, series: 1 },\n { name: '包头', value: 80, series: 1 },\n { name: '绵阳', value: 80, series: 1 },\n { name: '乌鲁木齐', value: 84, series: 1 },\n { name: '枣庄', value: 84, series: 1 },\n { name: '杭州', value: 84, series: 1 },\n { name: '淄博', value: 85, series: 1 },\n { name: '鞍山', value: 86, series: 1 },\n { name: '溧阳', value: 86, series: 1 },\n { name: '库尔勒', value: 86, series: 1 },\n { name: '安阳', value: 90, series: 1 },\n { name: '开封', value: 90, series: 1 },\n { name: '济南', value: 92, series: 1 },\n { name: '德阳', value: 93, series: 1 },\n { name: '温州', value: 95, series: 1 },\n { name: '九江', value: 96, series: 1 },\n { name: '邯郸', value: 98, series: 1 },\n { name: '临安', value: 99, series: 1 },\n { name: '兰州', value: 99, series: 1 },\n { name: '沧州', value: 100, series: 1 },\n { name: '临沂', value: 103, series: 1 },\n { name: '南充', value: 104, series: 1 },\n { name: '天津', value: 105, series: 1 },\n { name: '富阳', value: 106, series: 1 },\n { name: '泰安', value: 112, series: 1 },\n { name: '诸暨', value: 112, series: 1 },\n { name: '郑州', value: 113, series: 1 },\n { name: '哈尔滨', value: 114, series: 1 },\n { name: '聊城', value: 116, series: 1 },\n { name: '芜湖', value: 117, series: 1 },\n { name: '唐山', value: 119, series: 1 },\n { name: '平顶山', value: 119, series: 1 },\n { name: '邢台', value: 11, series: 19 },\n { name: '德州', value: 120, series: 1 },\n { name: '济宁', value: 120, series: 1 },\n { name: '荆州', value: 127, series: 1 },\n { name: '宜昌', value: 130, series: 1 },\n { name: '义乌', value: 132, series: 1 },\n { name: '丽水', value: 133, series: 1 },\n { name: '洛阳', value: 134, series: 1 },\n { name: '秦皇岛', value: 136, series: 1 },\n { name: '株洲', value: 143, series: 1 },\n { name: '石家庄', value: 147, series: 1 },\n { name: '莱芜', value: 148, series: 1 },\n { name: '常德', value: 152, series: 1 },\n { name: '保定', value: 153, series: 1 },\n { name: '湘潭', value: 154, series: 1 },\n { name: '金华', value: 157, series: 1 },\n { name: '岳阳', value: 169, series: 1 },\n { name: '长沙', value: 175, series: 1 },\n { name: '衢州', value: 177, series: 1 },\n { name: '廊坊', value: 193, series: 1 },\n { name: '菏泽', value: 194, series: 1 },\n { name: '合肥', value: 229, series: 1 },\n { name: '武汉', value: 273, series: 1 },\n { name: '大庆', value: 279, series: 1 },\n ];\n geoCoordMap = {\n 海门: [121.15, 31.89],\n 鄂尔多斯: [109.781327, 39.608266],\n 招远: [120.38, 37.35],\n 舟山: [122.207216, 29.985295],\n 齐齐哈尔: [123.97, 47.33],\n 盐城: [120.13, 33.38],\n 赤峰: [118.87, 42.28],\n 青岛: [120.33, 36.07],\n 乳山: [121.52, 36.89],\n 金昌: [102.188043, 38.520089],\n 泉州: [118.58, 24.93],\n 莱西: [120.53, 36.86],\n 日照: [119.46, 35.42],\n 胶南: [119.97, 35.88],\n 南通: [121.05, 32.08],\n 拉萨: [91.11, 29.97],\n 云浮: [112.02, 22.93],\n 梅州: [116.1, 24.55],\n 文登: [122.05, 37.2],\n 上海: [121.48, 31.22],\n 攀枝花: [101.718637, 26.582347],\n 威海: [122.1, 37.5],\n 承德: [117.93, 40.97],\n 厦门: [118.1, 24.46],\n 汕尾: [115.375279, 22.786211],\n 潮州: [116.63, 23.68],\n 丹东: [124.37, 40.13],\n 太仓: [121.1, 31.45],\n 曲靖: [103.79, 25.51],\n 烟台: [121.39, 37.52],\n 福州: [119.3, 26.08],\n 瓦房店: [121.979603, 39.627114],\n 即墨: [120.45, 36.38],\n 抚顺: [123.97, 41.97],\n 玉溪: [102.52, 24.35],\n 张家口: [114.87, 40.82],\n 阳泉: [113.57, 37.85],\n 莱州: [119.942327, 37.177017],\n 湖州: [120.1, 30.86],\n 汕头: [116.69, 23.39],\n 昆山: [120.95, 31.39],\n 宁波: [121.56, 29.86],\n 湛江: [110.359377, 21.270708],\n 揭阳: [116.35, 23.55],\n 荣成: [122.41, 37.16],\n 连云港: [119.16, 34.59],\n 葫芦岛: [120.836932, 40.711052],\n 常熟: [120.74, 31.64],\n 东莞: [113.75, 23.04],\n 河源: [114.68, 23.73],\n 淮安: [119.15, 33.5],\n 泰州: [119.9, 32.49],\n 南宁: [108.33, 22.84],\n 营口: [122.18, 40.65],\n 惠州: [114.4, 23.09],\n 江阴: [120.26, 31.91],\n 蓬莱: [120.75, 37.8],\n 韶关: [113.62, 24.84],\n 嘉峪关: [98.289152, 39.77313],\n 广州: [113.23, 23.16],\n 延安: [109.47, 36.6],\n 太原: [112.53, 37.87],\n 清远: [113.01, 23.7],\n 中山: [113.38, 22.52],\n 昆明: [102.73, 25.04],\n 寿光: [118.73, 36.86],\n 盘锦: [122.070714, 41.119997],\n 长治: [113.08, 36.18],\n 深圳: [114.07, 22.62],\n 珠海: [113.52, 22.3],\n 宿迁: [118.3, 33.96],\n 咸阳: [108.72, 34.36],\n 铜川: [109.11, 35.09],\n 平度: [119.97, 36.77],\n 佛山: [113.11, 23.05],\n 海口: [110.35, 20.02],\n 江门: [113.06, 22.61],\n 章丘: [117.53, 36.72],\n 肇庆: [112.44, 23.05],\n 大连: [121.62, 38.92],\n 临汾: [111.5, 36.08],\n 吴江: [120.63, 31.16],\n 石嘴山: [106.39, 39.04],\n 沈阳: [123.38, 41.8],\n 苏州: [120.62, 31.32],\n 茂名: [110.88, 21.68],\n 嘉兴: [120.76, 30.77],\n 长春: [125.35, 43.88],\n 胶州: [120.03336, 36.264622],\n 银川: [106.27, 38.47],\n 张家港: [120.555821, 31.875428],\n 三门峡: [111.19, 34.76],\n 锦州: [121.15, 41.13],\n 南昌: [115.89, 28.68],\n 柳州: [109.4, 24.33],\n 三亚: [109.511909, 18.252847],\n 自贡: [104.778442, 29.33903],\n 吉林: [126.57, 43.87],\n 阳江: [111.95, 21.85],\n 泸州: [105.39, 28.91],\n 西宁: [101.74, 36.56],\n 宜宾: [104.56, 29.77],\n 呼和浩特: [111.65, 40.82],\n 成都: [104.06, 30.67],\n 大同: [113.3, 40.12],\n 镇江: [119.44, 32.2],\n 桂林: [110.28, 25.29],\n 张家界: [110.479191, 29.117096],\n 宜兴: [119.82, 31.36],\n 北海: [109.12, 21.49],\n 西安: [108.95, 34.27],\n 金坛: [119.56, 31.74],\n 东营: [118.49, 37.46],\n 牡丹江: [129.58, 44.6],\n 遵义: [106.9, 27.7],\n 绍兴: [120.58, 30.01],\n 扬州: [119.42, 32.39],\n 常州: [119.95, 31.79],\n 潍坊: [119.1, 36.62],\n 重庆: [106.54, 29.59],\n 台州: [121.420757, 28.656386],\n 南京: [118.78, 32.04],\n 滨州: [118.03, 37.36],\n 贵阳: [106.71, 26.57],\n 无锡: [120.29, 31.59],\n 本溪: [123.73, 41.3],\n 克拉玛依: [84.77, 45.59],\n 渭南: [109.5, 34.52],\n 马鞍山: [118.48, 31.56],\n 宝鸡: [107.15, 34.38],\n 焦作: [113.21, 35.24],\n 句容: [119.16, 31.95],\n 北京: [116.46, 39.92],\n 徐州: [117.2, 34.26],\n 衡水: [115.72, 37.72],\n 包头: [110, 40.58],\n 绵阳: [104.73, 31.48],\n 乌鲁木齐: [87.68, 43.77],\n 枣庄: [117.57, 34.86],\n 杭州: [120.19, 30.26],\n 淄博: [118.05, 36.78],\n 鞍山: [122.85, 41.12],\n 溧阳: [119.48, 31.43],\n 库尔勒: [86.06, 41.68],\n 安阳: [114.35, 36.1],\n 开封: [114.35, 34.79],\n 济南: [117, 36.65],\n 德阳: [104.37, 31.13],\n 温州: [120.65, 28.01],\n 九江: [115.97, 29.71],\n 邯郸: [114.47, 36.6],\n 临安: [119.72, 30.23],\n 兰州: [103.73, 36.03],\n 沧州: [116.83, 38.33],\n 临沂: [118.35, 35.05],\n 南充: [106.110698, 30.837793],\n 天津: [117.2, 39.13],\n 富阳: [119.95, 30.07],\n 泰安: [117.13, 36.18],\n 诸暨: [120.23, 29.71],\n 郑州: [113.65, 34.76],\n 哈尔滨: [126.63, 45.75],\n 聊城: [115.97, 36.45],\n 芜湖: [118.38, 31.33],\n 唐山: [118.02, 39.63],\n 平顶山: [113.29, 33.75],\n 邢台: [114.48, 37.05],\n 德州: [116.29, 37.45],\n 济宁: [116.59, 35.38],\n 荆州: [112.239741, 30.335165],\n 宜昌: [111.3, 30.7],\n 义乌: [120.06, 29.32],\n 丽水: [119.92, 28.45],\n 洛阳: [112.44, 34.7],\n 秦皇岛: [119.57, 39.95],\n 株洲: [113.16, 27.83],\n 石家庄: [114.48, 38.03],\n 莱芜: [117.67, 36.19],\n 常德: [111.69, 29.05],\n 保定: [115.48, 38.85],\n 湘潭: [112.91, 27.87],\n 金华: [119.64, 29.12],\n 岳阳: [113.09, 29.37],\n 长沙: [113, 28.21],\n 衢州: [118.88, 28.97],\n 廊坊: [116.7, 39.53],\n 菏泽: [115.480656, 35.23375],\n 合肥: [117.27, 31.86],\n 武汉: [114.31, 30.52],\n 大庆: [125.03, 46.58],\n };\n id: string;\n constructor(@Inject(forwardRef(() => ParentContainerComponent)) private parent: ParentContainerComponent) {}\n ngOnChanges(changes: SimpleChanges): void {\n const item = [];\n this.bubbleType.forEach((series) => {\n item.push({\n coordinateSystem: 'bmap',\n data: this.convertData(this.data, series.key),\n itemStyle: { normal: { color: series.color } },\n label: {\n formatter: '{b}',\n position: 'right',\n show: false,\n },\n symbolSize: this.getItem(series.size),\n name: series.key,\n type: 'scatter',\n });\n });\n this.parent.childInit({\n id: this.id,\n item,\n });\n }\n ngOnInit() {}\n ngOnDestroy(): void {\n this.parent.deleteChild(this.id);\n }\n getItem(v) {\n if (v && v.indexOf && v.indexOf('function') > -1) {\n return eval('(' + v + ')');\n }\n }\n convertData(data, key) {\n let res = [];\n for (let i = 0; i < data.length; i++) {\n let geoCoord = this.geoCoordMap[data[i].name];\n if (geoCoord && data[i].series == key) {\n res.push({\n name: data[i].name,\n extraData: { lat: geoCoord[1], lng: geoCoord[0], s: data[i].series, value: data[i].value },\n value: geoCoord.concat(data[i].value),\n });\n }\n }\n return res;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { BreathingBubbleLayerComponent } from './breathing-bubble-layer.component';\nimport { WidgetBaseModule, WidgetService } from 'bbj-widget-base';\n\n@NgModule({\n declarations: [BreathingBubbleLayerComponent],\n imports: [CommonModule, WidgetBaseModule],\n})\nexport class BreathingBubbleLayerModule {\n constructor(widgetService: WidgetService) {\n widgetService.register(BreathingBubbleLayerComponent);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { BasicPlanimetricMapComponent } from './basic-planimetric-map.component';\nimport { NgxEchartsModule } from 'ngx-echarts';\nimport { WidgetBaseModule, WidgetService } from 'bbj-widget-base';\nimport { BreathingBubbleLayerModule } from '../breathing-bubble-layer/breathing-bubble-layer.module';\n\n@NgModule({\n declarations: [BasicPlanimetricMapComponent],\n imports: [CommonModule, NgxEchartsModule, WidgetBaseModule, BreathingBubbleLayerModule],\n})\nexport class BasicPlanimetricMapModule {\n constructor(widgetService: WidgetService) {\n widgetService.register(BasicPlanimetricMapComponent);\n }\n}\n","import {\r\n Component,\r\n OnInit,\r\n forwardRef,\r\n ViewChild,\r\n ElementRef,\r\n OnDestroy,\r\n OnChanges,\r\n SimpleChanges,\r\n EventEmitter,\r\n} from '@angular/core';\r\nimport { Widget, Property, Data, DataOutput, Event } from 'bbj-widget-base';\r\nimport { ParentContainerComponent } from '../parent-container/parent-container.component';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport * as echarts from 'echarts';\r\nimport { NgxEchartsDirective } from 'ngx-echarts';\r\nimport { getEchartsTextStyle } from '../shared/util/echarts.util';\r\n\r\n@Component({\r\n selector: 'sc-planimetric-map2d',\r\n templateUrl: './planimetric-map2d.component.html',\r\n styleUrls: ['./planimetric-map2d.component.less'],\r\n providers: [{ provide: ParentContainerComponent, useExisting: forwardRef(() => PlanimetricMap2dComponent) }],\r\n})\r\n@Widget('2D平面地图', {\r\n group: 'component',\r\n image: 'assets/img/screen/2dmap.png',\r\n icon: 'iconmokuai',\r\n children: [\r\n {\r\n title: '呼吸气泡层',\r\n type: 'sc-breathing-bubble-layer',\r\n option: {},\r\n hidden: true,\r\n hideChild: true,\r\n },\r\n ],\r\n childTypes: [\r\n 'sc-fly-line-layer',\r\n 'sc-breathing-bubble-layer',\r\n 'sc-map2d-polyline-layer',\r\n 'sc-map2d-mark-layer',\r\n 'sc-map2d-visual-layer',\r\n ],\r\n description: 'hasChildItem',\r\n})\r\nexport class PlanimetricMap2dComponent extends ParentContainerComponent implements OnInit, OnDestroy, OnChanges {\r\n @Property('地图样式', {\r\n ui: {\r\n widget: 'myUrlSelect',\r\n url: '/assets/mapListItem.json',\r\n },\r\n })\r\n mapStyle = 'china';\r\n @Property('地图缩放', {\r\n ui: { widget: 'myRange', min: 1, max: 40, step: 1 },\r\n })\r\n zoom = 1;\r\n @Property('区域背景', {\r\n ui: {\r\n widget: 'myColor',\r\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],\r\n },\r\n })\r\n areaColor = '#323c48';\r\n @Property('区域描边', {\r\n ui: {\r\n widget: 'myColor',\r\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],\r\n },\r\n })\r\n borderColor = '#404a59';\r\n @Property('移动高亮', {\r\n ui: {\r\n widget: 'myColor',\r\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],\r\n },\r\n })\r\n _areaColor = '#2a333d';\r\n @Property('地区字体', { ui: { widget: 'myFont' } })\r\n areaNamefont: any = {\r\n family: '',\r\n color: '#FFFFFF',\r\n weight: 'normal',\r\n size: 12,\r\n space: 0,\r\n lineHeight: 12,\r\n };\r\n @Property('显示地名', {\r\n type: 'boolean',\r\n })\r\n showAreaName = true;\r\n @Property('触发方式', {\r\n ui: { widget: 'select' },\r\n enum: [\r\n { label: '点击', value: 'click' },\r\n { label: '鼠标移动', value: 'mousemove' },\r\n ],\r\n })\r\n triggerType = 'mousemove';\r\n @Property('选中方式', {\r\n ui: { widget: 'select' },\r\n enum: [\r\n { label: '默认', value: '' },\r\n { label: '单选', value: 'single' },\r\n { label: '多选', value: 'multiple' },\r\n ],\r\n })\r\n selectedMode = '';\r\n\r\n @Property('缩放开关', {\r\n type: 'boolean',\r\n })\r\n zoomSwitch = 'false';\r\n @Property('高亮描边', {\r\n ui: {\r\n widget: 'myColor',\r\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],\r\n },\r\n })\r\n _borderColor = '';\r\n @Property('阴影颜色', {\r\n ui: {\r\n widget: 'myColor',\r\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],\r\n },\r\n })\r\n shadowColor = '#2a333d';\r\n @Property('边框粗细', {\r\n type: 'number',\r\n })\r\n shadowWidth = 20;\r\n @Property('地图渐变开始', {\r\n ui: {\r\n widget: 'myColor',\r\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],\r\n },\r\n })\r\n mapColorStart = '#2a333d';\r\n @Property('地图渐变结束', {\r\n ui: {\r\n widget: 'myColor',\r\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],\r\n },\r\n })\r\n mapColorEnd = '#2a333d';\r\n @Property('选中渐变开始', {\r\n ui: {\r\n widget: 'myColor',\r\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],\r\n },\r\n })\r\n selectColorStart = '#2a333d';\r\n @Property('选中渐变结束', {\r\n ui: {\r\n widget: 'myColor',\r\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],\r\n },\r\n })\r\n selectColorEnd = '#2a333d';\r\n\r\n chartOption: any;\r\n hasMap = false;\r\n @Data({\r\n properties: {\r\n name: { type: 'string', title: '地名' },\r\n lng: { type: 'number', title: '经度' },\r\n lat: { type: 'string', title: '纬度' },\r\n },\r\n })\r\n data: any[] = [];\r\n @DataOutput(['name', 'lng', 'lat'])\r\n @Event('选中', {\r\n params: {\r\n properties: {\r\n name: { type: 'string', title: '值' },\r\n lng: { type: 'number', title: '经度' },\r\n lat: { type: 'string', title: '纬度' },\r\n },\r\n },\r\n })\r\n areaClick = new EventEmitter();\r\n\r\n nameMap: any = {\r\n Somalia: '索马里',\r\n Liechtenstein: '列支敦士登',\r\n Morocco: '摩洛哥',\r\n 'W. Sahara': '西撒哈拉',\r\n Serbia: '塞尔维亚',\r\n Afghanistan: '阿富汗',\r\n Angola: '安哥拉',\r\n Albania: '阿尔巴尼亚',\r\n Aland: '奥兰群岛',\r\n Andorra: '安道尔',\r\n 'United Arab Emirates': '阿拉伯联合酋长国',\r\n Argentina: '阿根廷',\r\n Armenia: '亚美尼亚',\r\n 'American Samoa': '美属萨摩亚',\r\n 'Fr. S. Antarctic Lands': '法属南部领地',\r\n 'Antigua and Barb.': '安提瓜和巴布达',\r\n Australia: '澳大利亚',\r\n Austria: '奥地利',\r\n Azerbaijan: '阿塞拜疆',\r\n Burundi: '布隆迪',\r\n Belgium: '比利时',\r\n Benin: '贝宁',\r\n 'Burkina Faso': '布基纳法索',\r\n Bangladesh: '孟加拉国',\r\n Bulgaria: '保加利亚',\r\n Bahrain: '巴林',\r\n Bahamas: '巴哈马',\r\n 'Bosnia and Herz.': '波斯尼亚和黑塞哥维那',\r\n Belarus: '白俄罗斯',\r\n Belize: '伯利兹',\r\n Bermuda: '百慕大',\r\n Bolivia: '玻利维亚',\r\n Brazil: '巴西',\r\n Barbados: '巴巴多斯',\r\n Brunei: '文莱',\r\n Bhutan: '不丹',\r\n Botswana: '博茨瓦纳',\r\n 'Central African Rep.': '中非共和国',\r\n Canada: '加拿大',\r\n Switzerland: '瑞士',\r\n Chile: '智利',\r\n China: '中国',\r\n \"Côte d'Ivoire\": '科特迪瓦',\r\n Cameroon: '喀麦隆',\r\n 'Dem. Rep. Congo': '刚果(金)',\r\n Congo: '刚果(布)',\r\n Colombia: '哥伦比亚',\r\n Comoros: '科摩罗',\r\n 'Cape Verde': '佛得角',\r\n 'Costa Rica': '哥斯达黎加',\r\n Cuba: '古巴',\r\n Curaçao: '库拉索',\r\n 'Cayman Is.': '开曼群岛',\r\n 'N. Cyprus': '北塞浦路斯',\r\n Cyprus: '塞浦路斯',\r\n 'Czech Rep.': '捷克',\r\n Germany: '德国',\r\n Djibouti: '吉布提',\r\n Dominica: '多米尼克',\r\n Denmark: '丹麦',\r\n 'Dominican Rep.': '多米尼加',\r\n Algeria: '阿尔及利亚',\r\n Ecuador: '厄瓜多尔',\r\n Egypt: '埃及',\r\n Eritrea: '厄立特里亚',\r\n Spain: '西班牙',\r\n Estonia: '爱沙尼亚',\r\n Ethiopia: '埃塞俄比亚',\r\n Finland: '芬兰',\r\n Fiji: '斐济',\r\n 'Falkland Is.': '福克兰群岛',\r\n France: '法国',\r\n 'Faeroe Is.': '法罗群岛',\r\n Micronesia: '密克罗尼西亚',\r\n Gabon: '加蓬',\r\n 'United Kingdom': '英国',\r\n Georgia: '格鲁吉亚',\r\n Ghana: '加纳',\r\n Guinea: '几内亚',\r\n Gambia: '冈比亚',\r\n 'Guinea-Bissau': '几内亚比绍',\r\n 'Eq. Guinea': '赤道几内亚',\r\n Greece: '希腊',\r\n Grenada: '格林纳达',\r\n Greenland: '格陵兰',\r\n Guatemala: '危地马拉',\r\n Guam: '关岛',\r\n Guyana: '圭亚那',\r\n 'Heard I. and McDonald Is.': '赫德岛和麦克唐纳群岛',\r\n Honduras: '洪都拉斯',\r\n Croatia: '克罗地亚',\r\n Haiti: '海地',\r\n Hungary: '匈牙利',\r\n Indonesia: '印度尼西亚',\r\n 'Isle of Man': '马恩岛',\r\n India: '印度',\r\n 'Br. Indian Ocean Ter.': '英属印度洋领地',\r\n Ireland: '爱尔兰',\r\n Iran: '伊朗',\r\n Iraq: '伊拉克',\r\n Iceland: '冰岛',\r\n Israel: '以色列',\r\n Italy: '意大利',\r\n Jamaica: '牙买加',\r\n Jersey: '泽西岛',\r\n Jordan: '约旦',\r\n Japan: '日本',\r\n 'Siachen Glacier': '锡亚琴冰川',\r\n Kazakhstan: '哈萨克斯坦',\r\n Kenya: '肯尼亚',\r\n Kyrgyzstan: '吉尔吉斯斯坦',\r\n Cambodia: '柬埔寨',\r\n Kiribati: '基里巴斯',\r\n Korea: '韩国',\r\n Kuwait: '科威特',\r\n 'Lao PDR': '老挝',\r\n Lebanon: '黎巴嫩',\r\n Liberia: '利比里亚',\r\n Libya: '利比亚',\r\n 'Saint Lucia': '圣卢西亚',\r\n 'Sri Lanka': '斯里兰卡',\r\n Lesotho: '莱索托',\r\n Lithuania: '立陶宛',\r\n Luxembourg: '卢森堡',\r\n Latvia: '拉脱维亚',\r\n Moldova: '摩尔多瓦',\r\n Madagascar: '马达加斯加',\r\n Mexico: '墨西哥',\r\n Macedonia: '北马其顿',\r\n Mali: '马里',\r\n Malta: '马耳他',\r\n Myanmar: '缅甸',\r\n Montenegro: '黑山',\r\n Mongolia: '蒙古',\r\n 'N. Mariana Is.': '北马里亚纳群岛',\r\n Mozambique: '莫桑比克',\r\n Mauritania: '毛里塔尼亚',\r\n Montserrat: '蒙特塞拉特',\r\n Mauritius: '毛里求斯',\r\n Malawi: '马拉维',\r\n Malaysia: '马来西亚',\r\n Namibia: '纳米比亚',\r\n 'New Caledonia': '新喀里多尼亚',\r\n Niger: '尼日尔',\r\n Nigeria: '尼日利亚',\r\n Nicaragua: '尼加拉瓜',\r\n Niue: '纽埃',\r\n Netherlands: '荷兰',\r\n Norway: '挪威',\r\n Nepal: '尼泊尔',\r\n 'New Zealand': '新西兰',\r\n Oman: '阿曼',\r\n Pakistan: '巴基斯坦',\r\n Panama: '巴拿马',\r\n Peru: '秘鲁',\r\n Philippines: '菲律宾',\r\n Palau: '帕劳',\r\n 'Papua New Guinea': '巴布亚新几内亚',\r\n Poland: '波兰',\r\n 'Puerto Rico': '波多黎各',\r\n 'Dem. Rep. Korea': '朝鲜',\r\n Portugal: '葡萄牙',\r\n Paraguay: '巴拉圭',\r\n Palestine: '巴勒斯坦',\r\n 'Fr. Polynesia': '法属波利尼西亚',\r\n Qatar: '卡塔尔',\r\n Romania: '罗马尼亚',\r\n Russia: '俄罗斯',\r\n Rwanda: '卢旺达',\r\n 'Saudi Arabia': '沙特阿拉伯',\r\n Sudan: '苏丹',\r\n 'S. Sudan': '南苏丹',\r\n Senegal: '塞内加尔',\r\n Singapore: '新加坡',\r\n 'S. Geo. and S. Sandw. Is.': '南乔治亚岛和南桑威奇群岛',\r\n 'Saint Helena': '圣赫勒拿',\r\n 'Solomon Is.': '所罗门群岛',\r\n 'Sierra Leone': '塞拉利昂',\r\n 'El Salvador': '萨尔瓦多',\r\n 'St. Pierre and Miquelon': '圣皮埃尔和密克隆',\r\n 'São Tomé and Principe': '圣多美和普林西比',\r\n Suriname: '苏里南',\r\n Slovakia: '斯洛伐克',\r\n Slovenia: '斯洛文尼亚',\r\n Sweden: '瑞典',\r\n Swaziland: '斯威士兰',\r\n Seychelles: '塞舌尔',\r\n Syria: '叙利亚',\r\n 'Turks and Caicos Is.': '特克斯和凯科斯群岛',\r\n Chad: '乍得',\r\n Togo: '多哥',\r\n Thailand: '泰国',\r\n Tajikistan: '塔吉克斯坦',\r\n Turkmenistan: '土库曼斯坦',\r\n 'Timor-Leste': '东帝汶',\r\n Tonga: '汤加',\r\n 'Trinidad and Tobago': '特立尼达和多巴哥',\r\n Tunisia: '突尼斯',\r\n Turkey: '土耳其',\r\n Tanzania: '坦桑尼亚',\r\n Uganda: '乌干达',\r\n Ukraine: '乌克兰',\r\n Uruguay: '乌拉圭',\r\n 'United States': '美国',\r\n Uzbekistan: '乌兹别克斯坦',\r\n 'St. Vin. and Gren.': '圣文森特和格林纳丁斯',\r\n Venezuela: '委内瑞拉',\r\n 'U.S. Virgin Is.': '美属维尔京群岛',\r\n Vietnam: '越南',\r\n Vanuatu: '瓦努阿图',\r\n Samoa: '萨摩亚',\r\n Yemen: '也门',\r\n 'South Africa': '南非',\r\n Zambia: '赞比亚',\r\n Zimbabwe: '津巴布韦',\r\n };\r\n _children: any = [];\r\n loadedMap: { [name: string]: Promise<any> } = {};\r\n provinces: any;\r\n stack = [];\r\n visualMap: any[];\r\n @ViewChild(NgxEchartsDirective)\r\n ngxEcharts: NgxEchartsDirective;\r\n renderer = 'svg';\r\n constructor(protected http: HttpClient) {\r\n super();\r\n }\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes.data) {\r\n if (this.data && this.data[0]) {\r\n this.mapStyle = this.data[0].name;\r\n this.stack.push(this.mapStyle);\r\n }\r\n this.reloadMap();\r\n }\r\n }\r\n async ngOnInit() {\r\n // await this.commonService.getMap();\r\n // await import('echarts/dist/extension/bmap.js');\r\n this.provinces = (await this.http.get('/assets/mapListItem.json').toPromise()) as any;\r\n // const map = echarts.getMap(this.mapStyle);\r\n // if (map == null) {\r\n // const data = await this.http.get('assets/echarts/map/json/' + this.mapStyle + '.json').toPromise();\r\n // echarts.registerMap(this.mapStyle, data);\r\n // }\r\n // this.hasMap = true;\r\n // this.chartInit();\r\n }\r\n ngOnDestroy(): void {\r\n if (this.ngxEcharts) {\r\n (this.ngxEcharts as any).initChart = () => {};\r\n }\r\n }\r\n chartInit() {\r\n // this.loadMap(this.mapStyle).then((data) => {\r\n let series = [];\r\n this.visualMap = [];\r\n this.renderer = 'svg';\r\n this._children.forEach((child) => {\r\n if (child.type === 'visual') {\r\n // series = child.series;\r\n // series[0].mapType = this.mapStyle;\r\n if (child.visualMap && child.item.length) {\r\n if (child.visualMap2) {\r\n this.visualMap.push(child.visualMap2);\r\n }\r\n this.visualMap.push(child.visualMap);\r\n child.visualMap.seriesIndex = series.length;\r\n }\r\n }\r\n if (Array.isArray(child.item)) {\r\n series = [...series, ...child.item];\r\n } else {\r\n series = [...series, child.item];\r\n }\r\n });\r\n series.forEach((layer, index) => {\r\n if (layer.type === 'lines') {\r\n delete layer.coordinateSystem;\r\n // 飞线层不支持svg渲染\r\n this.renderer = 'canvas';\r\n }\r\n if (layer.type === 'scatter') {\r\n layer.coordinateSystem = 'geo';\r\n // layer.symbolSize = '10';\r\n }\r\n // if (layer.type === 'map') {\r\n // this.visualMap.forEach((visualMap) => {\r\n // visualMap['seriesIndex'] = index;\r\n // });\r\n // }\r\n });\r\n const textStyle = getEchartsTextStyle(this.areaNamefont);\r\n this.chartOption = {\r\n tooltip: {\r\n trigger: 'item',\r\n triggerOn: this.triggerType ? this.triggerType : 'mousemove',\r\n },\r\n geo: {\r\n label: {\r\n normal: {\r\n //静态的时候展示样式\r\n show: this.showAreaName, //是否显示地图省份得名称\r\n textStyle,\r\n },\r\n emphasis: {\r\n show: this.showAreaName,\r\n textStyle,\r\n },\r\n },\r\n selectedMode: this.selectedMode,\r\n select: {\r\n label: {\r\n show: this.showAreaName, //是否显示地图省份得名称\r\n textStyle: {\r\n color: this.areaNamefont?.color || '#fff',\r\n fontSize: this.areaNamefont?.size || 12,\r\n fontFamily: this.areaNamefont?.family || '',\r\n lineHeight: this.areaNamefont?.lineHeight || 12,\r\n },\r\n },\r\n itemStyle: {\r\n areaColor: {\r\n type: 'radial',\r\n x: 0.5,\r\n y: 0.5,\r\n r: 0.8,\r\n colorStops: [\r\n {\r\n offset: 0,\r\n color: this.selectColorStart ? this.selectColorStart : this._areaColor, // 0% 处的颜色\r\n },\r\n {\r\n offset: 1,\r\n color: this.selectColorEnd ? this.selectColorEnd : this._areaColor, // 100% 处的颜色\r\n },\r\n ],\r\n globalCoord: false, // 缺省为 false\r\n },\r\n borderColor: this._borderColor,\r\n },\r\n },\r\n itemStyle: {\r\n normal: {\r\n // areaColor: this.areaColor,\r\n borderColor: this.borderColor,\r\n opacity: 1,\r\n areaColor: {\r\n type: 'radial',\r\n x: 0.5,\r\n y: 0.5,\r\n r: 0.8,\r\n colorStops: [\r\n {\r\n offset: 0,\r\n color: this.mapColorStart ? this.mapColorStart : this.areaColor, // 0% 处的颜色\r\n },\r\n {\r\n offset: 1,\r\n color: this.mapColorEnd ? this.mapColorEnd : this.areaColor, // 100% 处的颜色\r\n },\r\n ],\r\n globalCoord: false, // 缺省为 false\r\n },\r\n shadowColor: this.shadowColor,\r\n shadowBlur: this.shadowWidth,\r\n shadowOffsetX: -2,\r\n shadowOffsetY: 2,\r\n },\r\n emphasis: {\r\n areaColor: {\r\n type: 'radial',\r\n x: 0.5,\r\n y: 0.5,\r\n r: 0.8,\r\n colorStops: [\r\n {\r\n offset: 0,\r\n color: this.selectColorStart ? this.selectColorStart : this._areaColor, // 0% 处的颜色\r\n },\r\n {\r\n offset: 1,\r\n color: this.selectColorEnd ? this.selectColorEnd : this._areaColor, // 100% 处的颜色\r\n },\r\n ],\r\n globalCoord: false, // 缺省为 false\r\n },\r\n borderColor: this._borderColor,\r\n },\r\n },\r\n\r\n map: this.mapStyle,\r\n roam: this.zoomSwitch,\r\n nameMap: this.nameMap,\r\n zoom: this.zoom,\r\n },\r\n series,\r\n };\r\n if (this.visualMap?.length) {\r\n this.chartOption.visualMap = this.visualMap;\r\n }\r\n // });\r\n }\r\n childInit(child: any) {\r\n if (child.id) {\r\n const childIndex = this._children.findIndex((s) => s.id === child.id);\r\n if (childIndex > -1) {\r\n this._children[childIndex] = child;\r\n } else {\r\n this._children.push(child);\r\n }\r\n this.chartInit();\r\n }\r\n }\r\n deleteChild(childId: string) {\r\n if (childId) {\r\n const childIndex = this._children.findIndex((s) => s.id === childId);\r\n // this._children.forEach((element) => {\r\n // if (childId === element.id) {\r\n // this.visualMap = null;\r\n // }\r\n // });\r\n if (childIndex > -1) {\r\n this._children.splice(childIndex, 1);\r\n this.chartInit();\r\n }\r\n }\r\n }\r\n\r\n // loadMap(name: string) {\r\n // let loadMapPromise = this.loadedMap[name];\r\n // if (!loadMapPromise) {\r\n // loadMapPromise = this.http.get('assets/echarts/map/json/' + name + '.json').toPromise();\r\n // this.loadedMap[name] = loadMapPromise;\r\n // }\r\n // return loadMapPromise;\r\n // }\r\n async reloadMap() {\r\n const mapStyle = this.mapStyle;\r\n const map = echarts.getMap(mapStyle);\r\n if (map == null) {\r\n const data: any = await this.http.get('assets/echarts/map/json/' + mapStyle + '.json').toPromise();\r\n echarts.registerMap(mapStyle, data);\r\n }\r\n this.hasMap = true;\r\n this.chartInit();\r\n }\r\n async markClick(event) {\r\n let lng: number;\r\n let lat: number;\r\n if (event.seriesId) {\r\n lng = event.value[0];\r\n lat = event.value[1];\r\n const child = this._children.find((s) => event.seriesId.startsWith(s.id));\r\n if (child && child.onClick) {\r\n child.onClick(event);\r\n }\r\n } else {\r\n const map = echarts.getMap(this.mapStyle);\r\n if (map) {\r\n for (const feature of map.geoJson.features) {\r\n const properties = feature.properties;\r\n if (properties.name === event.name) {\r\n if (properties.cp) {\r\n lng = properties.cp[0];\r\n lat = properties.cp[1];\r\n } else if (properties.center) {\r\n lng = properties.center[0];\r\n lat = properties.center[1];\r\n } else {\r\n console.log(properties);\r\n }\r\n break;\r\n }\r\n }\r\n }\r\n const province = this.provinces.find((element) => element.label === event.name);\r\n if (province) {\r\n this.stack.push(this.mapStyle);\r\n this.mapStyle = province.value;\r\n this.reloadMap();\r\n }\r\n }\r\n this.areaClick.emit({ name: event.name, lng, lat });\r\n // if(event.componentSubType!=null && event.componentSubType==='scatter'){\r\n // const obj=event.data;\r\n // console.log(event);\r\n // this.markerTierClick.emit({\r\n // address: obj.name,\r\n // information: '',\r\n // group: '',\r\n // lng: obj.value[0],\r\n // lat: obj.value[1],\r\n // });\r\n // }\r\n }\r\n rollback(event: MouseEvent) {\r\n event.preventDefault();\r\n if (this.stack != null && this.stack.length != 0) {\r\n this.mapStyle = this.stack.pop();\r\n this.reloadMap();\r\n }\r\n }\r\n\r\n getTextStyle() {}\r\n}\r\n","import { Component, OnInit, Inject, forwardRef, SimpleChanges, OnDestroy } from '@angular/core';\nimport { Widget, Property, Data } from 'bbj-widget-base';\nimport { ParentContainerComponent } from '../../parent-container/parent-container.component';\n\n@Component({\n selector: 'sc-fly-line-layer',\n templateUrl: './fly-line-layer.component.html',\n styleUrls: ['./fly-line-layer.component.less'],\n})\n@Widget('飞线层', {\n group: 'component',\n image: '',\n icon: '',\n hidden: true,\n})\nexport class FlyLineLayerComponent implements OnInit, OnDestroy {\n @Property('飞线粗细', {\n ui: { widget: 'myRange', min: 1, max: 100, step: 1 },\n })\n size = 1;\n @Property('飞线颜色', {\n ui: {\n widget: 'myColor',\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', null],\n },\n })\n color = 'RGB(0, 252, 255)';\n @Data({\n properties: {\n from: { type: 'number', title: '出发位置' },\n to: { type: 'number', title: '结束位置' },\n fromInfo: { type: 'string', title: '出发信息' },\n toInfo: { type: 'string', title: '结束信息' },\n },\n })\n data: any[] = [\n {\n from: '116.85059,31.69078',\n to: '118.69629,36.20882',\n fromInfo: '起点',\n toInfo: '终点',\n },\n {\n from: '120.89355,37.09024',\n to: '116.93848,31.61597',\n fromInfo: '起点',\n toInfo: '终点',\n },\n {\n from: '121.28906,29.34388',\n to: '117.20215,31.12820',\n fromInfo: '起点',\n toInfo: '终点',\n },\n {\n from: '118.16895,31.57854',\n to: '119.79492,32.47270',\n fromInfo: '起点',\n toInfo: '终点',\n },\n {\n from: '116.76270,33.35806',\n to: '116.49902,38.95941',\n fromInfo: '起点',\n toInfo: '终点',\n },\n {\n from: '116.41113,30.93992',\n to: '114.78516,26.58853',\n fromInfo: '起点',\n toInfo: '终点',\n },\n {\n from: '115.83984,32.13841',\n to: '97.47070,37.54458',\n fromInfo: '起点',\n toInfo: '终点',\n },\n {\n from: '116.27930,32.36140',\n to: '114.08203,36.27971',\n fromInfo: '起点',\n toInfo: '终点',\n },\n {\n from: '103.66699,25.79989',\n to: '116.05957,31.54109',\n fromInfo: '起点',\n toInfo: '终点',\n },\n {\n from: '112.14844,24.40714',\n to: '116.71875,33.21112',\n fromInfo: '起点',\n toInfo: '终点',\n },\n {\n from: '116.93848,31.65338',\n to: '118.34473,26.62782',\n fromInfo: '起点',\n toInfo: '终点',\n },\n {\n from: '90.70313,42.26105',\n to: '116.23535,32.32428',\n fromInfo: '起点',\n toInfo: '终点',\n },\n {\n from: '116.41113,30.82678',\n to: '114.87305,36.94989',\n fromInfo: '起点',\n toInfo: '终点',\n },\n {\n from: '116.45508,30.78904',\n to: '118.91602,28.57487',\n fromInfo: '起点',\n toInfo: '终点',\n },\n {\n from: '116.01562,40.07807',\n to: '116.71875,31.69078',\n fromInfo: '起点',\n toInfo: '终点',\n },\n {\n from: '116.71875,31.72817',\n to: '108.45703,40.24599',\n fromInfo: '起点',\n toInfo: '终点',\n },\n {\n from: '117.99316,40.84706',\n to: '116.85059,31.69078',\n fromInfo: '起点',\n toInfo: '终点',\n },\n {\n from: '118.30078,36.56260',\n to: '117.24609,40.97990',\n fromInfo: '起点',\n toInfo: '终点',\n },\n {\n from: '119.35547,26.86328',\n to: '120.41016,32.28713',\n fromInfo: '起点',\n toInfo: '终点',\n },\n {\n from: '113.07129,31.42866',\n to: '106.04004,31.31610',\n fromInfo: '起点',\n toInfo: '终点',\n },\n {\n from: '116.85059,31.31610',\n to: '110.43457,32.76880',\n fromInfo: '起点',\n toInfo: '终点',\n },\n ];\n geoCoordMap = {\n 海门: [121.15, 31.89],\n 鄂尔多斯: [109.781327, 39.608266],\n 招远: [120.38, 37.35],\n 舟山: [122.207216, 29.985295],\n 齐齐哈尔: [123.97, 47.33],\n 盐城: [120.13, 33.38],\n 赤峰: [118.87, 42.28],\n 青岛: [120.33, 36.07],\n 乳山: [121.52, 36.89],\n 金昌: [102.188043, 38.520089],\n 泉州: [118.58, 24.93],\n 莱西: [120.53, 36.86],\n 日照: [119.46, 35.42],\n 胶南: [119.97, 35.88],\n 南通: [121.05, 32.08],\n 拉萨: [91.11, 29.97],\n 云浮: [112.02, 22.93],\n 梅州: [116.1, 24.55],\n 文登: [122.05, 37.2],\n 上海: [121.48, 31.22],\n 攀枝花: [101.718637, 26.582347],\n 威海: [122.1, 37.5],\n 承德: [117.93, 40.97],\n 厦门: [118.1, 24.46],\n 汕尾: [115.375279, 22.786211],\n 潮州: [116.63, 23.68],\n 丹东: [124.37, 40.13],\n 太仓: [121.1, 31.45],\n 曲靖: [103.79, 25.51],\n 烟台: [121.39, 37.52],\n 福州: [119.3, 26.08],\n 瓦房店: [121.979603, 39.627114],\n 即墨: [120.45, 36.38],\n 抚顺: [123.97, 41.97],\n 玉溪: [102.52, 24.35],\n 张家口: [114.87, 40.82],\n 阳泉: [113.57, 37.85],\n 莱州: [119.942327, 37.177017],\n 湖州: [120.1, 30.86],\n 汕头: [116.69, 23.39],\n 昆山: [120.95, 31.39],\n 宁波: [121.56, 29.86],\n 湛江: [110.359377, 21.270708],\n 揭阳: [116.35, 23.55],\n 荣成: [122.41, 37.16],\n 连云港: [119.16, 34.59],\n 葫芦岛: [120.836932, 40.711052],\n 常熟: [120.74, 31.64],\n 东莞: [113.75, 23.04],\n 河源: [114.68, 23.73],\n 淮安: [119.15, 33.5],\n 泰州: [119.9, 32.49],\n 南宁: [108.33, 22.84],\n 营口: [122.18, 40.65],\n 惠州: [114.4, 23.09],\n 江阴: [120.26, 31.91],\n 蓬莱: [120.75, 37.8],\n 韶关: [113.62, 24.84],\n 嘉峪关: [98.289152, 39.77313],\n 广州: [113.23, 23.16],\n 延安: [109.47, 36.6],\n 太原: [112.53, 37.87],\n 清远: [113.01, 23.7],\n 中山: [113.38, 22.52],\n 昆明: [102.73, 25.04],\n 寿光: [118.73, 36.86],\n 盘锦: [122.070714, 41.119997],\n 长治: [113.08, 36.18],\n 深圳: [114.07, 22.62],\n 珠海: [113.52, 22.3],\n 宿迁: [118.3, 33.96],\n 咸阳: [108.72, 34.36],\n 铜川: [109.11, 35.09],\n 平度: [119.97, 36.77],\n 佛山: [113.11, 23.05],\n 海口: [110.35, 20.02],\n 江门: [113.06, 22.61],\n 章丘: [117.53, 36.72],\n 肇庆: [112.44, 23.05],\n 大连: [121.62, 38.92],\n 临汾: [111.5, 36.08],\n 吴江: [120.63, 31.16],\n 石嘴山: [106.39, 39.04],\n 沈阳: [123.38, 41.8],\n 苏州: [120.62, 31.32],\n 茂名: [110.88, 21.68],\n 嘉兴: [120.76, 30.77],\n 长春: [125.35, 43.88],\n 胶州: [120.03336, 36.264622],\n 银川: [106.27, 38.47],\n 张家港: [120.555821, 31.875428],\n 三门峡: [111.19, 34.76],\n 锦州: [121.15, 41.13],\n 南昌: [115.89, 28.68],\n 柳州: [109.4, 24.33],\n 三亚: [109.511909, 18.252847],\n 自贡: [104.778442, 29.33903],\n 吉林: [126.57, 43.87],\n 阳江: [111.95, 21.85],\n 泸州: [105.39, 28.91],\n 西宁: [101.74, 36.56],\n 宜宾: [104.56, 29.77],\n 呼和浩特: [111.65, 40.82],\n 成都: [104.06, 30.67],\n 大同: [113.3, 40.12],\n 镇江: [119.44, 32.2],\n 桂林: [110.28, 25.29],\n 张家界: [110.479191, 29.117096],\n 宜兴: [119.82, 31.36],\n 北海: [109.12, 21.49],\n 西安: [108.95, 34.27],\n 金坛: [119.56, 31.74],\n 东营: [118.49, 37.46],\n 牡丹江: [129.58, 44.6],\n 遵义: [106.9, 27.7],\n 绍兴: [120.58, 30.01],\n 扬州: [119.42, 32.39],\n 常州: [119.95, 31.79],\n 潍坊: [119.1, 36.62],\n 重庆: [106.54, 29.59],\n 台州: [121.420757, 28.656386],\n 南京: [118.78, 32.04],\n 滨州: [118.03, 37.36],\n 贵阳: [106.71, 26.57],\n 无锡: [120.29, 31.59],\n 本溪: [123.73, 41.3],\n 克拉玛依: [84.77, 45.59],\n 渭南: [109.5, 34.52],\n 马鞍山: [118.48, 31.56],\n 宝鸡: [107.15, 34.38],\n 焦作: [113.21, 35.24],\n 句容: [119.16, 31.95],\n 北京: [116.46, 39.92],\n 徐州: [117.2, 34.26],\n 衡水: [115.72, 37.72],\n 包头: [110, 40.58],\n 绵阳: [104.73, 31.48],\n 乌鲁木齐: [87.68, 43.77],\n 枣庄: [117.57, 34.86],\n 杭州: [120.19, 30.26],\n 淄博: [118.05, 36.78],\n 鞍山: [122.85, 41.12],\n 溧阳: [119.48, 31.43],\n 库尔勒: [86.06, 41.68],\n 安阳: [114.35, 36.1],\n 开封: [114.35, 34.79],\n 济南: [117, 36.65],\n 德阳: [104.37, 31.13],\n 温州: [120.65, 28.01],\n 九江: [115.97, 29.71],\n 邯郸: [114.47, 36.6],\n 临安: [119.72, 30.23],\n 兰州: [103.73, 36.03],\n 沧州: [116.83, 38.33],\n 临沂: [118.35, 35.05],\n 南充: [106.110698, 30.837793],\n 天津: [117.2, 39.13],\n 富阳: [119.95, 30.07],\n 泰安: [117.13, 36.18],\n 诸暨: [120.23, 29.71],\n 郑州: [113.65, 34.76],\n 哈尔滨: [126.63, 45.75],\n 聊城: [115.97, 36.45],\n 芜湖: [118.38, 31.33],\n 唐山: [118.02, 39.63],\n 平顶山: [113.29, 33.75],\n 邢台: [114.48, 37.05],\n 德州: [116.29, 37.45],\n 济宁: [116.59, 35.38],\n 荆州: [112.239741, 30.335165],\n 宜昌: [111.3, 30.7],\n 义乌: [120.06, 29.32],\n 丽水: [119.92, 28.45],\n 洛阳: [112.44, 34.7],\n 秦皇岛: [119.57, 39.95],\n 株洲: [113.16, 27.83],\n 石家庄: [114.48, 38.03],\n 莱芜: [117.67, 36.19],\n 常德: [111.69, 29.05],\n 保定: [115.48, 38.85],\n 湘潭: [112.91, 27.87],\n 金华: [119.64, 29.12],\n 岳阳: [113.09, 29.37],\n 长沙: [113, 28.21],\n 衢州: [118.88, 28.97],\n 廊坊: [116.7, 39.53],\n 菏泽: [115.480656, 35.23375],\n 合肥: [117.27, 31.86],\n 武汉: [114.31, 30.52],\n 大庆: [125.03, 46.58],\n };\n id: string;\n constructor(@Inject(forwardRef(() => ParentContainerComponent)) private parent: ParentContainerComponent) {}\n ngOnChanges(changes: SimpleChanges): void {\n const item = [\n {\n coordinateSystem: 'bmap',\n data: this.convertData(this.data),\n effect: {\n color: this.color,\n period: 1,\n show: true,\n symbolSize: [this.size, 20],\n trailLength: 0.05,\n },\n lineStyle: {\n normal: {\n color: '#a6c84c',\n curveness: 0.2,\n opacity: 1,\n width: 0,\n },\n },\n type: 'lines',\n zlevel: 1,\n },\n ];\n this.parent.childInit({\n id: this.id,\n item,\n });\n }\n ngOnInit() {}\n ngOnDestroy(): void {\n this.parent.deleteChild(this.id);\n }\n convertData(data) {\n const res = [];\n for (let i = 0; i < data.length; i++) {\n const item = {};\n if (typeof data[i].from === 'string') {\n data[i].from = data[i].from.split(',');\n }\n if (typeof data[i].to === 'string') {\n data[i].to = data[i].to.split(',');\n }\n if (data[i].from && data[i].to) {\n res.push({\n fromName: data[i].fromInfo,\n toName: data[i].toInfo,\n coords: [data[i].from, data[i].to],\n });\n }\n }\n return res;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FlyLineLayerComponent } from './fly-line-layer.component';\nimport { WidgetBaseModule, WidgetService } from 'bbj-widget-base';\n@NgModule({\n declarations: [FlyLineLayerComponent],\n imports: [CommonModule, WidgetBaseModule],\n})\nexport class FlyLineLayerModule {\n constructor(widgetService: WidgetService) {\n widgetService.register(FlyLineLayerComponent);\n }\n}\n","import { Component, forwardRef, Inject, OnChanges, OnDestroy, OnInit, SimpleChanges } from '@angular/core';\nimport { Data, Property, Widget } from 'bbj-widget-base';\nimport { ParentContainerComponent } from '../../parent-container/parent-container.component';\n\n@Component({\n selector: 'sc-map2d-polyline-layer',\n templateUrl: './map2d-polyline-layer.component.html',\n styleUrls: ['./map2d-polyline-layer.component.less'],\n})\n@Widget('折线层', {\n group: 'component',\n image: '',\n icon: '',\n hidden: true,\n})\nexport class Map2dPolylineLayerComponent implements OnInit, OnChanges, OnDestroy {\n @Property('线条粗细', {\n ui: { widget: 'myRange', min: 1, max: 100, step: 1 },\n })\n size = 1;\n @Property('线条颜色', {\n ui: {\n widget: 'myColor',\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', null],\n },\n })\n color = 'RGB(0, 252, 255)';\n @Data({\n properties: {\n group: { type: 'string', title: '分组' },\n lng: { type: 'number', title: '经度' },\n lat: { type: 'number', title: '纬度' },\n },\n })\n data: any[] = [\n {\n group: 'x',\n lng: '116.85',\n lat: '28.69',\n },\n {\n group: 'x',\n lng: '116.35',\n lat: '28.79',\n },\n {\n group: 'x',\n lng: '116.10',\n lat: '29',\n },\n ];\n id: string;\n datalist = [];\n constructor(@Inject(forwardRef(() => ParentContainerComponent)) private parent: ParentContainerComponent) {}\n ngOnDestroy(): void {\n this.parent.deleteChild(this.id);\n }\n ngOnChanges(changes: SimpleChanges): void {\n this.grouping();\n const item = [\n {\n coordinateSystem: 'bmap',\n data: this.datalist,\n polyline: true,\n\n lineStyle: {\n normal: {\n color: this.color,\n opacity: 0.6,\n width: this.size,\n },\n },\n type: 'lines',\n name: 'polyline',\n zlevel: 1,\n },\n ];\n this.parent.childInit({\n id: this.id,\n item,\n });\n }\n\n ngOnInit(): void {}\n\n grouping() {\n this.datalist = [];\n const grouppname = [];\n const groups = {};\n if (this.data == null) {\n return;\n }\n this.data.forEach((t) => {\n if (grouppname.indexOf(t.group) < 0) {\n grouppname.push(t.group);\n }\n groups[t.group] = groups[t.group] || { coords: [] };\n let point = [];\n point.push(t.lng);\n point.push(t.lat);\n groups[t.group].coords.push(point);\n });\n grouppname.forEach((a) => {\n this.datalist.push(groups[a]);\n });\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { Map2dPolylineLayerComponent } from './map2d-polyline-layer.component';\nimport {WidgetBaseModule, WidgetService} from 'bbj-widget-base';\n\n\n\n\n@NgModule({\n declarations: [Map2dPolylineLayerComponent],\n imports: [CommonModule, WidgetBaseModule],\n})\nexport class Map2dPolylineLayerModule {\n constructor(widgetService: WidgetService) {\n widgetService.register(Map2dPolylineLayerComponent);\n }\n}\n","import {\n Component,\n EventEmitter,\n forwardRef,\n Inject,\n OnChanges,\n OnDestroy,\n OnInit,\n SimpleChanges,\n} from '@angular/core';\nimport { SFArrayWidgetSchema } from '@delon/form';\nimport { Data, DataOutput, Property, Widget, Event } from 'bbj-widget-base';\nimport { ParentContainerComponent } from '../../parent-container/parent-container.component';\n\n@Component({\n selector: 'sc-map2d-mark-layer',\n templateUrl: './map2d-mark-layer.component.html',\n styleUrls: ['./map2d-mark-layer.component.less'],\n})\n@Widget('标记层', {\n group: 'component',\n image: '',\n icon: '',\n hidden: true,\n})\nexport class Map2dMarkLayerComponent implements OnInit, OnChanges, OnDestroy {\n @Property('标记分组', {\n type: 'array',\n title: '标记分组',\n maxItems: 10,\n items: {\n type: 'object',\n properties: {\n imageUrl: {\n type: 'string',\n title: '图片',\n ui: {\n widget: 'myUpload',\n },\n },\n width: {\n type: 'number',\n title: '大小',\n },\n group: {\n type: 'string',\n title: '分组',\n },\n },\n required: [],\n },\n ui: { grid: { arraySpan: 24 }, spanControl: 24 } as SFArrayWidgetSchema,\n })\n groups = [];\n @Property('字体大小', {\n ui: { widget: 'myRange', min: 1, max: 100, step: 1 },\n })\n size = 12;\n // @Property('浮框背景', {\n // ui: {\n // widget: 'myColor',\n // example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', null],\n // },\n // })\n // backgroundColor='#F5A623';\n @Property('字体颜色', {\n ui: {\n widget: 'myColor',\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', null],\n },\n })\n color = 'RGB(0, 252, 255)';\n @Data({\n properties: {\n id: { type: 'string', title: 'id' },\n address: { type: 'string', title: '地点' },\n information: { type: 'string', title: '信息' },\n group: { type: 'string', title: '标记分组' },\n lng: { type: 'number', title: '经度' },\n lat: { type: 'number', title: '纬度' },\n },\n })\n data: any[] = [\n {\n address: '机楼1号',\n information: '暂无信息',\n group: '',\n lng: '116.7',\n lat: '28',\n },\n ];\n id: string;\n @DataOutput(['id', 'address', 'lng', 'lat'])\n @Event('点击标记', {\n params: {\n properties: {\n id: { type: 'string', title: 'id' },\n address: { type: 'string', title: '地点' },\n lng: { type: 'number', title: '经度' },\n lat: { type: 'number', title: '纬度' },\n },\n },\n })\n makerClick = new EventEmitter();\n constructor(@Inject(forwardRef(() => ParentContainerComponent)) private parent: ParentContainerComponent) { }\n ngOnDestroy(): void {\n this.parent.deleteChild(this.id);\n }\n ngOnChanges(changes: SimpleChanges): void {\n const item = {\n id: this.id,\n type: 'scatter',\n coordinateSyste: 'bmap',\n data: [],\n tooltip: {\n formatter: '{b}',\n position: 'top',\n textStyle: {\n color: this.color,\n fontSize: this.size,\n },\n },\n emphasis: {\n label: {\n show: true,\n },\n },\n };\n this.data.forEach((t) => {\n let image = 'none';\n let size = 30;\n if (this.groups !== null && this.groups.length > 0) {\n this.groups.forEach((g) => {\n if (g.group === t.group) {\n image = 'image://' + g.imageUrl;\n size = g.width;\n }\n });\n }\n const data: any = {\n id: t.id, name: t.address, value: [t.lng, t.lat],symbolSize:0, label: {\n formatter: (a) => {\n return a.name;\n },\n rich: {\n title: {\n fontSize:this.size,\n color: this.color,\n align: 'left'\n },\n // icon: {\n // // height: 10,\n // // align: 'bottom',\n // // backgroundColor: {\n // // image: '/screen/file/ebfd7e18c4644c278d838f784e9b5a94.png',\n // // }\n // },\n value: {\n // width: 20,\n fontSize:this.size,\n padding: [3, 20, 0, 5],\n align: 'right'\n },\n },\n // position: 'right',\n color: this.color,\n fontSize: this.size,\n show: true,\n }\n };\n if (t.information) {\n data.tooltip = { formatter: t.information };\n }\n if(this.groups&&this.groups.length>0){\n this.groups.forEach(e=>{\n if(!e.imageUrl){\n return;\n }\n data.label.rich[e.group]={\n height:e.width,\n align: 'bottom',\n backgroundColor: {\n image: e.imageUrl,\n }\n }\n })\n }\n item.data.push(data);\n // item.push({\n // id: this.id,\n // name: t.address,\n // type: 'scatter',\n // coordinateSyste: 'bmap',\n // symbol: image,\n // symbolSize: size,\n // data: [{ name: t.address, value: [t.lng, t.lat] }],\n // label: {\n // formatter: '{b}',\n // position: 'bottom',\n // color: this.color,\n // fontSize: this.size,\n // show: true,\n // },\n // tooltip: {\n // formatter: '{b}',\n // position: 'top',\n // textStyle: {\n // color: this.color,\n // fontSize: this.size,\n // },\n // },\n // emphasis: {\n // label: {\n // show: true,\n // },\n // },\n // });\n });\n this.parent.childInit({\n id: this.id,\n item,\n onClick: (event) => {\n const obj = event.data;\n this.makerClick.emit({\n id: obj.id,\n address: obj.name,\n lng: obj.value[0],\n lat: obj.value[1],\n });\n },\n });\n }\n\n ngOnInit(): void { }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { Map2dMarkLayerComponent } from './map2d-mark-layer.component';\nimport {WidgetBaseModule, WidgetService} from 'bbj-widget-base';\n\n\n\n@NgModule({\n declarations: [Map2dMarkLayerComponent],\n imports: [CommonModule, WidgetBaseModule],\n})\nexport class Map2dMarkLayerModule {\n constructor(widgetService: WidgetService) {\n widgetService.register(Map2dMarkLayerComponent);\n }\n}\n","import {\n Component,\n EventEmitter,\n forwardRef,\n Inject,\n OnChanges,\n OnDestroy,\n OnInit,\n SimpleChanges,\n} from '@angular/core';\nimport { Data, DataOutput, Drill, Property, Widget } from 'bbj-widget-base';\nimport { ParentContainerComponent } from '../../parent-container/parent-container.component';\n\n@Component({\n selector: 'sc-map2d-visual-layer',\n templateUrl: './map2d-visual-layer.component.html',\n styleUrls: ['./map2d-visual-layer.component.less'],\n})\n@Widget('热力层', {\n group: 'component',\n image: '',\n icon: '',\n hidden: true,\n})\nexport class Map2dVisualLayerComponent implements OnInit, OnChanges, OnDestroy {\n @Property('字体', { ui: { widget: 'myFont' } })\n font: any = {\n family: '',\n color: '#FFFFFF',\n weight: 'normal',\n size: 12,\n space: 0,\n lineHeight: 12,\n };\n\n @Property('左侧边距', { type: 'number' })\n left = 26;\n @Property('底部边距', { type: 'number' })\n bottom = 40;\n @Property('分级', {\n type: 'array',\n title: '热力等级',\n maxItems: 10,\n items: {\n type: 'object',\n properties: {\n gte: {\n type: 'number',\n title: '大于',\n },\n lte: {\n type: 'number',\n title: '小于等于',\n },\n label: {\n type: 'string',\n title: '标签',\n },\n color: {\n type: 'string',\n title: '颜色',\n ui: {\n widget: 'myColor',\n },\n },\n colorEnd: {\n type: 'string',\n title: '渐变颜色',\n ui: {\n widget: 'myColor',\n },\n },\n unit: {\n type: 'string',\n title: '单位',\n },\n },\n required: ['label', 'color'],\n },\n ui: { grid: { arraySpan: 24 }, spanControl: 24 },\n })\n level = [\n { gte: 0, lte: 50, label: '等级1', color: '#AAAAAA', colorEnd: null, unit: '' },\n {\n gte: 50,\n label: '等级2',\n color: '#FF3333',\n colorEnd: null,\n unit: '',\n },\n ];\n // @Property('地图颜色', {\n // type: 'string',\n // ui: {\n // widget: 'myColor',\n // },\n // })\n // mapColor = '#FFFFFF';\n // @Property('选中区域颜色', {\n // type: 'string',\n // ui: {\n // widget: 'myColor',\n // },\n // })\n // selectAreaColor = '#f2d5ad';\n @Property('正极名称', {\n max: {\n type: 'string',\n title: 'max',\n ui: {},\n },\n required: ['max'],\n })\n max = '高';\n\n @Property('负极名称', {\n min: {\n type: 'string',\n title: 'min',\n ui: {},\n },\n required: ['min'],\n })\n min = '低';\n @Property('前缀', {\n min: {\n type: 'string',\n ui: {},\n },\n })\n prefix = '';\n @Property('后缀', {\n min: {\n type: 'string',\n ui: {},\n },\n })\n suffix = '';\n @Data({\n properties: {\n name: { type: 'string', title: '地名' },\n value: { type: 'number', title: '值' },\n tooltip: { type: 'string', title: '提示' },\n lng: { type: 'number', title: '中心经度' },\n lat: { type: 'number', title: '中心纬度' },\n },\n })\n _data: any[] = [\n { name: '南海诸岛', value: 0, tooltip: '告警统计' + '<br />' + '失联告警:0' },\n { name: '北京', value: 54, tooltip: '告警统计' + '<br />' + '失联告警:54' },\n { name: '天津', value: 13, tooltip: '告警统计' + '<br />' + '失联告警:13' },\n { name: '上海', value: 40, tooltip: '告警统计' + '<br />' + '失联告警:40' },\n { name: '重庆', value: 75, tooltip: '告警统计' + '<br />' + '失联告警:75' },\n { name: '河北', value: 13, tooltip: '告警统计' + '<br />' + '失联告警:13' },\n { name: '海口市', value: 70, tooltip: '告警统计' + '<br />' + '失联告警:70' },\n ];\n @Drill()\n @DataOutput(['name', 'value', 'tooltip', 'lng', 'lat'])\n dataClick = new EventEmitter<any>();\n xData = [];\n yData = [];\n series = [];\n image: string;\n style = {\n color: '',\n fontFamily: '',\n fontWeight: '',\n fontSize: '',\n lineHeight: '',\n };\n data: any;\n visualMap = {};\n id: string;\n constructor(@Inject(forwardRef(() => ParentContainerComponent)) private parent: ParentContainerComponent) {}\n ngOnDestroy(): void {\n this.parent.deleteChild(this.id);\n }\n\n ngOnInit(): void {}\n ngOnChanges(changes: SimpleChanges): void {\n this.style = {\n color: this.font.color,\n fontFamily: this.font.family,\n fontWeight: this.font.weight,\n fontSize: this.font.size,\n lineHeight: this.font.lineHeight,\n };\n if (changes._data) {\n let gradual = false;\n let lucency = false;\n const pieces = this.level.map((level) => {\n const piece = { ...level };\n if (!lucency && this.isLucency(level.color)) {\n lucency = true;\n }\n if (level.color && level.colorEnd) {\n gradual = true;\n piece.color = {\n type: 'radial',\n x: 0.5,\n y: 0.5,\n r: 0.8,\n colorStops: [\n {\n offset: 0,\n color: level.color, // 0% 处的颜色\n },\n {\n offset: 1,\n color: level.colorEnd, // 100% 处的颜色\n },\n ],\n globalCoord: false, // 缺省为 false\n } as any;\n }\n return piece;\n });\n this.visualMap = {\n min: 0,\n max: 500,\n left: this.left || 26,\n bottom: this.bottom || 40,\n showLabel: !0,\n text: [this.max, this.min],\n pieces,\n textStyle: this.style,\n show: !0,\n };\n // geo: {\n // map: this.mapStyle,\n // roam: !1,\n // scaleLimit: {\n // min: 1,\n // max: 2\n // },\n // // label: {\n // // normal: {\n // // show: !0,\n // // fontSize: '14',\n // // color: 'rgba(0,0,0,0.7)'\n // // }\n // // },\n // itemStyle: {\n // normal: {\n // borderColor: 'rgba(0, 0, 0, 0.2)',\n // areaColor: this.mapColor,\n // },\n // emphasis: {\n // areaColor: this.selectAreaColor,\n // shadowOffsetX: 0,\n // shadowOffsetY: 0,\n // borderWidth: 0\n // }\n // }\n // },\n let item = [];\n if (this._data.length) {\n item = [\n {\n name: '',\n type: 'map',\n geoIndex: 0,\n mapType: '',\n label: {\n normal: {\n show: true,\n formatter: (val) => {\n const value = val.value ? val.value : 0;\n const prefix = this.prefix ? this.prefix : '';\n const suffix = this.suffix ? this.suffix : '';\n return (val.name + '-' + prefix + value + suffix).split('-').join('\\n');\n },\n textStyle: this.style,\n },\n emphasis: {\n show: false,\n },\n },\n // itemStyle: {\n // normal: {\n // borderColor: 'rgba(0, 0, 0, 0.2)',\n // areaColor: this.mapColor,\n // },\n // emphasis: {\n // areaColor: this.selectAreaColor,\n // shadowOffsetX: 0,\n // shadowOffsetY: 0,\n // borderWidth: 0,\n // },\n // },\n data: this._data,\n },\n ];\n }\n const child: any = {\n id: this.id,\n item: item,\n visualMap: this.visualMap,\n type: 'visual',\n };\n // 如果有渐变或者半透明,添加一个不透明的图层作为图例(台风项目的需求)\n if (gradual || lucency) {\n child.visualMap2 = {\n ...this.visualMap,\n pieces: this.level.map((level) => {\n return { ...level, color: this.opacity(level.color) };\n }),\n };\n child.visualMap.show = false;\n }\n this.parent.childInit(child);\n }\n }\n\n isLucency(color: string) {\n if (color) {\n const match = /rgba\\(\\d+,\\d+,\\d+,([\\d.]+)\\)/.exec(color);\n if (match) {\n const opacity = Number(match[1]);\n if (opacity < 1) {\n return true;\n }\n }\n }\n return false;\n }\n\n opacity(color: string) {\n if (color) {\n color = color.replace(/rgba\\((\\d+),(\\d+),(\\d+),([\\d.]+)\\)/, (str, r, g, b, a) => {\n console.log(str, r, g, b, a);\n return `rgb(${r},${g},${b})`;\n });\n }\n return color;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { Map2dVisualLayerComponent } from './map2d-visual-layer.component';\nimport { WidgetBaseModule, WidgetService } from 'bbj-widget-base';\n\n\n\n@NgModule({\n declarations: [\n Map2dVisualLayerComponent\n ],\n imports: [CommonModule, WidgetBaseModule],\n})\nexport class Map2dVisualLayerModule { \n constructor(widgetService: WidgetService) {\n widgetService.register(Map2dVisualLayerComponent);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { NgxEchartsModule } from 'ngx-echarts';\nimport { PlanimetricMap2dComponent } from './planimetric-map2d.component';\nimport { WidgetBaseModule, WidgetService } from 'bbj-widget-base';\nimport { FlyLineLayerModule } from './fly-line-layer/fly-line-layer.module';\nimport { BreathingBubbleLayerModule } from '../breathing-bubble-layer/breathing-bubble-layer.module';\nimport { Map2dPolylineLayerModule } from './map2d-polyline-layer/map2d-polyline-layer.module';\nimport { Map2dMarkLayerModule } from './map2d-mark-layer/map2d-mark-layer.module';\nimport { Map2dVisualLayerModule } from './map2d-visual-layer/map2d-visual-layer.module';\n\n@NgModule({\n declarations: [PlanimetricMap2dComponent],\n imports: [\n CommonModule,\n NgxEchartsModule,\n WidgetBaseModule,\n FlyLineLayerModule,\n BreathingBubbleLayerModule,\n Map2dPolylineLayerModule,\n Map2dMarkLayerModule,\n Map2dVisualLayerModule\n ],\n})\nexport class PlanimetricMap2dModule {\n constructor(widgetService: WidgetService) {\n widgetService.register(PlanimetricMap2dComponent);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { ParentContainerComponent } from './parent-container.component';\nimport { WidgetBaseModule, WidgetService } from 'bbj-widget-base';\n\n@NgModule({\n declarations: [ParentContainerComponent],\n imports: [CommonModule, WidgetBaseModule],\n})\nexport class ParentContainerModule {\n constructor(widgetService: WidgetService) {\n // widgetService.register(ParentContainerComponent);\n }\n}\n","import {\n Component,\n OnInit,\n forwardRef,\n ViewChild,\n ElementRef,\n OnDestroy,\n OnChanges,\n SimpleChanges,\n EventEmitter,\n} from '@angular/core';\nimport { Widget, Property, Data, DataOutput, Event } from 'bbj-widget-base';\nimport { ParentContainerComponent } from '../parent-container/parent-container.component';\nimport { HttpClient } from '@angular/common/http';\nimport * as echarts from 'echarts';\nimport { NgxEchartsDirective } from 'ngx-echarts';\nimport { PlanimetricMap2dComponent } from '../planimetric-map2d/planimetric-map2d.component';\nimport { getEchartsTextStyle } from '../shared/util/echarts.util';\n\nconst buttonEnum = [\n { label: '鼠标左键', value: 'left' },\n { label: '鼠标中键', value: 'middle' },\n { label: '鼠标右键', value: 'right' },\n];\n\n@Component({\n selector: 'sc-planimetric-map3d',\n templateUrl: './planimetric-map3d.component.html',\n styleUrls: ['./planimetric-map3d.component.less'],\n providers: [{ provide: ParentContainerComponent, useExisting: forwardRef(() => PlanimetricMap3dComponent) }],\n})\n@Widget('3D平面地图', {\n group: 'component',\n image: 'assets/img/screen/3dmap.png',\n icon: 'iconmokuai',\n children: [\n {\n title: '散点图',\n type: 'sc-map3d-mark-layer',\n option: {},\n hidden: true,\n hideChild: true,\n },\n ],\n childTypes: ['sc-map3d-mark-layer', 'sc-map3d-line-layer'],\n description: 'hasChildItem',\n})\nexport class PlanimetricMap3dComponent extends PlanimetricMap2dComponent implements OnInit, OnDestroy, OnChanges {\n @Property('地图样式', {\n ui: {\n widget: 'myUrlSelect',\n url: '/assets/mapListItem.json',\n },\n })\n mapStyle = 'china';\n @Property('区域背景', {\n ui: {\n widget: 'myColor',\n },\n })\n areaColor = '#323c48';\n @Property('区域描边', {\n ui: {\n widget: 'myColor',\n },\n })\n borderColor = '#404a59';\n @Property('移动高亮', {\n ui: {\n widget: 'myColor',\n },\n })\n _areaColor = '#2a333d';\n @Property('地区字体', { ui: { widget: 'myFont' } })\n areaNamefont: any = {\n family: '',\n color: '#FFFFFF',\n weight: 'normal',\n size: 12,\n space: 0,\n lineHeight: 12,\n };\n @Property('显示地名', {\n type: 'boolean',\n })\n showAreaName = true;\n @Property('阴影颜色', {\n ui: {\n widget: 'myColor',\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],\n },\n })\n shadowColor = '#2a333d';\n @Property('边框粗细', {\n type: 'number',\n })\n boderWidth = 2;\n @Property('模型高度', { type: 'number' })\n regionHeight = 3;\n @Property('投影方式', {\n enum: [\n { label: '透视投影', value: 'perspective' },\n { label: '正交投影', value: 'orthographic' },\n ],\n })\n projection = 'perspective';\n @Property('视角距离', { type: 'number', ui: { visibleIf: { projection: ['perspective'] } } })\n distance = 100;\n @Property('正交大小', { type: 'number', ui: { visibleIf: { projection: ['orthographic'] } } })\n orthographicSize = 100;\n @Property('alpha角', { type: 'number' })\n alpha = 40;\n @Property('beta角', { type: 'number' })\n beta = 0;\n @Property('平移操作', { enum: buttonEnum })\n panMouseButton = 'middle';\n @Property('旋转操作', { enum: buttonEnum })\n rotateMouseButton = 'left';\n @Property('开启光晕', { type: 'boolean' })\n bloomEnable: boolean;\n @Property('光晕强度', { type: 'number', ui: { visibleIf: { bloomEnable: [true] } } })\n bloomIntensity = 0.1;\n\n chartOption: any;\n hasMap = false;\n @Data({\n properties: {\n name: { type: 'string', title: '地名' },\n lng: { type: 'number', title: '经度' },\n lat: { type: 'string', title: '纬度' },\n },\n })\n data: any[] = [];\n @DataOutput(['name', 'lng', 'lat'])\n @Event('选中', {\n params: {\n properties: {\n name: { type: 'string', title: '值' },\n lng: { type: 'number', title: '经度' },\n lat: { type: 'string', title: '纬度' },\n },\n },\n })\n areaClick = new EventEmitter();\n\n constructor(http: HttpClient) {\n super(http);\n }\n\n chartInit() {\n // this.loadMap(this.mapStyle).then((data) => {\n\n const textStyle = getEchartsTextStyle(this.areaNamefont);\n const geo3D = {\n type: 'map3D',\n boxHeight: 7,\n regionHeight: this.regionHeight,\n label: {\n //静态的时候展示样式\n show: this.showAreaName, //是否显示地图省份得名称\n distance: 0,\n ...textStyle,\n },\n selectedMode: this.selectedMode,\n itemStyle: {\n color: this.areaColor,\n borderColor: this.borderColor,\n borderWidth: this.boderWidth,\n },\n emphasis: {\n label: {\n show: this.showAreaName,\n ...textStyle,\n },\n itemStyle: {\n color: this._areaColor,\n },\n },\n map: this.mapStyle,\n roam: this.zoomSwitch,\n nameMap: this.nameMap,\n zoom: this.zoom,\n // silent: false,\n // regions,\n viewControl: {\n projection: this.projection,\n distance: this.distance,\n orthographicSize: this.orthographicSize,\n alpha: this.alpha,\n beta: this.beta,\n panMouseButton: this.panMouseButton,\n rotateMouseButton: this.rotateMouseButton,\n },\n postEffect: {\n enable: this.bloomEnable,\n bloom: {\n enable: this.bloomEnable,\n bloomIntensity: this.bloomIntensity,\n },\n },\n };\n let series = [];\n this._children.forEach((child) => {\n if (Array.isArray(child.item)) {\n series.push(...child.item);\n } else {\n series.push(child.item);\n }\n });\n // series.push(geo3D);\n this.chartOption = {\n geo3D,\n tooltip: {},\n series,\n };\n // });\n }\n\n // loadMap(name: string) {\n // let loadMapPromise = this.loadedMap[name];\n // if (!loadMapPromise) {\n // loadMapPromise = this.http.get('assets/echarts/map/json/' + name + '.json').toPromise();\n // this.loadedMap[name] = loadMapPromise;\n // }\n // return loadMapPromise;\n // }\n}\n","import { HttpClient } from '@angular/common/http';\nimport {\n Component,\n EventEmitter,\n forwardRef,\n Inject,\n OnChanges,\n OnDestroy,\n OnInit,\n SimpleChanges,\n} from '@angular/core';\nimport { SFArrayWidgetSchema } from '@delon/form';\nimport { Data, DataOutput, Property, Widget, Event } from 'bbj-widget-base';\nimport { ParentContainerComponent } from '../../parent-container/parent-container.component';\nimport { getEchartsTextStyle } from '../../shared/util/echarts.util';\n\n@Component({\n selector: 'sc-map3d-mark-layer',\n templateUrl: './map3d-mark-layer.component.html',\n styleUrls: ['./map3d-mark-layer.component.less'],\n})\n@Widget('散点图', {\n group: 'component',\n image: '',\n icon: '',\n hidden: true,\n})\nexport class Map3dMarkLayerComponent implements OnInit, OnChanges, OnDestroy {\n @Property('分组', {\n type: 'array',\n title: '分组',\n maxItems: 10,\n items: {\n type: 'object',\n properties: {\n group: {\n type: 'string',\n title: '分组',\n },\n symbol: {\n type: 'string',\n title: '形状',\n enum: [\n { label: '圆', value: 'circle' },\n { label: '矩形', value: 'rect' },\n { label: '圆角矩形', value: 'roundRect' },\n { label: '三角形', value: 'triangle' },\n { label: '菱形', value: 'diamond' },\n { label: '针形', value: 'pin' },\n { label: '箭头', value: 'arrow' },\n { label: '无', value: 'none' },\n { label: '图片', value: 'image' },\n ],\n },\n image: {\n title: '图片',\n type: 'string',\n ui: {\n widget: 'myPicture',\n visibleIf: { symbol: ['image'] },\n },\n },\n size: {\n type: 'number',\n title: '大小',\n },\n color: {\n type: 'string',\n title: '颜色',\n ui: {\n widget: 'myColor',\n },\n },\n font: {\n type: 'string',\n title: '字体',\n ui: { widget: 'myFont' },\n },\n },\n required: [],\n },\n ui: { grid: { arraySpan: 24 }, spanControl: 24 } as SFArrayWidgetSchema,\n })\n groups = [\n {\n group: '',\n symbol: 'circle',\n size: 30,\n },\n ];\n @Data({\n properties: {\n id: { type: 'string', title: 'id' },\n address: { type: 'string', title: '地点' },\n information: { type: 'string', title: '信息' },\n group: { type: 'string', title: '标记分组' },\n lng: { type: 'number', title: '经度' },\n lat: { type: 'number', title: '纬度' },\n },\n })\n data: any[] = [\n {\n address: '机楼1号',\n information: '暂无信息',\n group: '',\n lng: '120',\n lat: '28',\n },\n ];\n id: string;\n @DataOutput(['id', 'address', 'lng', 'lat'])\n @Event('点击标记', {\n params: {\n properties: {\n id: { type: 'string', title: 'id' },\n address: { type: 'string', title: '地点' },\n lng: { type: 'number', title: '经度' },\n lat: { type: 'number', title: '纬度' },\n },\n },\n })\n makerClick = new EventEmitter();\n constructor(\n @Inject(forwardRef(() => ParentContainerComponent)) private parent: ParentContainerComponent,\n private http: HttpClient,\n ) {}\n ngOnDestroy(): void {\n this.parent.deleteChild(this.id);\n }\n ngOnChanges(changes: SimpleChanges): void {\n this.reload();\n }\n\n async reload() {\n const groupMap = {};\n const seriesList = [];\n const seriesMap = {};\n for (const group of this.groups) {\n const groupName = group.group || '';\n groupMap[groupName] = group;\n const series = await this.getSeries(group);\n seriesList.push(series);\n seriesMap[groupName] = series;\n }\n\n this.data.forEach((record) => {\n let series = seriesMap[record.group];\n if (series == null) {\n series = seriesMap[''];\n }\n if (series) {\n series.data.push({\n id: record.id,\n name: record.address,\n value: [+record.lng, +record.lat, 1, record.information],\n });\n }\n });\n this.parent.childInit({\n id: this.id,\n item: seriesList,\n onClick: (event) => {\n const obj = event.data;\n this.makerClick.emit({\n id: obj.id,\n address: obj.name,\n lng: obj.value[0],\n lat: obj.value[1],\n });\n },\n });\n }\n\n async getSeries(group: any) {\n let symbol = group.symbol;\n if (symbol === 'image') {\n const url = group.image as string;\n if (url) {\n if (url.endsWith('svg')) {\n const svgStr: any = await this.http.get(url, { responseType: 'text' }).toPromise();\n const svg = new DOMParser().parseFromString(svgStr, 'text/xml');\n const paths = svg.getElementsByTagName('path');\n symbol = 'path://';\n for (let i = 0; i < paths.length; i++) {\n const path = paths[i];\n if (i > 0) {\n symbol += ' ';\n }\n symbol += path.getAttribute('d').replace(' ', ',');\n }\n } else {\n symbol = 'image://' + location.origin + url;\n }\n } else {\n symbol = 'none';\n }\n }\n const series = {\n id: this.id + group.group,\n type: 'scatter3D',\n coordinateSystem: 'geo3D',\n data: [],\n tooltip: {\n formatter: (params) => params.value[3],\n },\n label: {\n show: true,\n formatter: '{b}',\n position: 'bottom',\n textStyle: getEchartsTextStyle(group.font),\n },\n // emphasis: {\n // label: {\n // show: true,\n // },\n // },\n symbol,\n symbolSize: group.size,\n itemStyle: {\n color: group.color,\n opacity: 1,\n },\n // zlevel: 10,\n };\n return series;\n }\n\n ngOnInit(): void {}\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { Map3dMarkLayerComponent } from './map3d-mark-layer.component';\nimport { WidgetService } from 'bbj-widget-base';\n\n@NgModule({\n declarations: [Map3dMarkLayerComponent],\n imports: [CommonModule],\n})\nexport class Map3dMarkLayerModule {\n constructor(widgetService: WidgetService) {\n widgetService.register(Map3dMarkLayerComponent);\n }\n}\n","import { HttpClient } from '@angular/common/http';\nimport {\n Component,\n EventEmitter,\n forwardRef,\n Inject,\n OnChanges,\n OnDestroy,\n OnInit,\n SimpleChanges,\n} from '@angular/core';\nimport { SFArrayWidgetSchema } from '@delon/form';\nimport { Data, DataOutput, Property, Widget, Event } from 'bbj-widget-base';\nimport { ParentContainerComponent } from '../../parent-container/parent-container.component';\nimport { getEchartsTextStyle } from '../../shared/util/echarts.util';\n\n@Component({\n selector: 'sc-map3d-line-layer',\n templateUrl: './map3d-line-layer.component.html',\n styleUrls: ['./map3d-line-layer.component.less'],\n})\n@Widget('折线图', {\n group: 'component',\n image: '',\n icon: '',\n hidden: true,\n})\nexport class Map3dLineLayerComponent implements OnInit, OnChanges, OnDestroy {\n @Property('线条宽度', {\n ui: { widget: 'myRange', min: 1, max: 40, step: 1 },\n })\n width = 4;\n @Property('线条颜色', {\n type: 'string',\n ui: {\n widget: 'myColor',\n },\n })\n color = 'rgba(242,213,173,0.85)';\n\n @Data({\n properties: {\n group: { type: 'string', title: '分组' },\n lng: { type: 'number', title: '经度' },\n lat: { type: 'number', title: '纬度' },\n },\n })\n data: any[] = [\n {\n group: 'x',\n lng: '120.7',\n lat: '28',\n },\n {\n group: 'x',\n lng: '120.71',\n lat: '28.01',\n },\n {\n group: 'x',\n lng: '120.79',\n lat: '28.1',\n },\n {\n group: 'y',\n lng: '120.72',\n lat: '28.02',\n },\n {\n group: 'y',\n lng: '120.73',\n lat: '28.03',\n },\n {\n group: 'y',\n lng: '120.81',\n lat: '28.12',\n },\n ];\n id: string;\n constructor(@Inject(forwardRef(() => ParentContainerComponent)) private parent: ParentContainerComponent) {}\n\n ngOnInit(): void {}\n\n ngOnDestroy(): void {\n this.parent.deleteChild(this.id);\n }\n ngOnChanges(changes: SimpleChanges): void {\n this.reload();\n }\n\n async reload() {\n console.log(this.data);\n const data = [];\n const lineMap = {};\n this.data.forEach((r) => {\n let line = lineMap[r.group];\n if (!line) {\n line = [];\n lineMap[r.group] = line;\n data.push(line);\n }\n line.push([+r.lng, +r.lat, 1]);\n });\n\n const item = {\n type: 'lines3D',\n coordinateSystem: 'geo3D',\n polyline: true,\n lineStyle: {\n width: this.width,\n color: this.color,\n opacity: 1,\n },\n data,\n silent: true, //不响应和触发鼠标事件\n };\n this.parent.childInit({\n id: this.id,\n item,\n });\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { Map3dLineLayerComponent } from './map3d-line-layer.component';\nimport { WidgetService } from 'bbj-widget-base';\n\n@NgModule({\n declarations: [Map3dLineLayerComponent],\n imports: [CommonModule],\n})\nexport class Map3dLineLayerModule {\n constructor(widgetService: WidgetService) {\n widgetService.register(Map3dLineLayerComponent);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { PlanimetricMap3dComponent } from './planimetric-map3d.component';\nimport { WidgetBaseModule, WidgetService } from 'bbj-widget-base';\nimport { NgxEchartsModule } from 'ngx-echarts';\nimport { Map3dMarkLayerModule } from './map3d-mark-layer/map3d-mark-layer.module';\nimport { Map3dLineLayerModule } from './map3d-line-layer/map3d-line-layer.module';\n\n@NgModule({\n declarations: [PlanimetricMap3dComponent],\n imports: [CommonModule, WidgetBaseModule, NgxEchartsModule, Map3dMarkLayerModule,Map3dLineLayerModule],\n})\nexport class PlanimetricMap3dModule {\n constructor(widgetService: WidgetService) {\n widgetService.register(PlanimetricMap3dComponent);\n }\n}\n","import { Component, OnInit } from '@angular/core';\nimport { Widget, Property } from 'bbj-widget-base';\n\n@Component({\n selector: 'sc-mip-anim',\n templateUrl: './mip-anim.component.html',\n styleUrls: ['./mip-anim.component.less']\n})\n@Widget('动态图', { group: 'mipAnim', icon: 'icontupian' })\nexport class MipAnimComponent implements OnInit {\n @Property('图片', { ui: { widget: 'myPicture' } })\n image: string;\n constructor() { }\n\n ngOnInit(): void {\n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { WidgetBaseModule, WidgetService } from 'bbj-widget-base';\nimport { MipAnimComponent } from './mip-anim.component';\n\n@NgModule({\n declarations: [MipAnimComponent],\n imports: [CommonModule, WidgetBaseModule],\n})\nexport class MipAnimModule {\n constructor(widgetService: WidgetService) {\n widgetService.register(MipAnimComponent);\n }\n}\n","import { Component, OnInit, SimpleChanges, OnChanges, EventEmitter, ElementRef, ViewChild } from '@angular/core';\nimport { Data, Property, Widget, DataOutput, Event, EventParam, Method, Param, DataInput } from 'bbj-widget-base';\nimport { NzFormatEmitEvent, NzTreeComponent, NzTreeNode, NzTreeNodeOptions } from 'ng-zorro-antd/tree';\nimport { ArrayService } from '@delon/util';\nimport { getFontStyle } from '../shared/util/style.util';\n\n@Component({\n selector: 'sc-tree-control',\n templateUrl: './tree-control.component.html',\n styleUrls: ['./tree-control.component.less'],\n})\n@Widget('树控件', {\n group: 'component',\n image: 'assets/img/screen/Tree.png',\n icon: 'bianzu40',\n})\nexport class TreeControlComponent implements OnInit, OnChanges {\n @Property('字体', { ui: { widget: 'myFont' } })\n font: any = {\n family: '',\n color: '#595F7A',\n weight: 'normal',\n size: 16,\n space: 0,\n lineHeight: 0,\n };\n @Property('边距', { ui: { widget: 'myGrid' } })\n grid: any = {\n top: 0,\n right: 0,\n bottom: 0,\n left: 0,\n };\n @Property('复选框', { type: 'boolean' })\n checkable = false;\n @Property('输出格式', {\n type: 'string',\n enum: [\n { label: '数组', value: 'array' },\n { label: '字符串', value: 'string' },\n ],\n ui: {\n widget: 'select',\n visibleIf: { checkable: [true] },\n },\n })\n outputType = 'array';\n @Property('选择完全受控', {\n type: 'boolean',\n ui: { optionalHelp: '父子节点选中状态不再关联', visibleIf: { checkable: [true] } },\n })\n checkStrictly = false;\n @Property('连接线', { type: 'boolean' })\n showLine = false;\n @Property('展开所有', { type: 'boolean' })\n expandAll = false;\n @Property('展开层级', {\n type: 'integer',\n minimum: 0,\n ui: { precision: 0, visibleIf: { expandAll: [false] } },\n })\n expandLevel = 0;\n\n @Property('图标宽度', { type: 'integer' })\n iconWidth = 20;\n @Property('图标高度', { type: 'integer' })\n iconHeight = 20;\n @Property('图标位置', {\n enum: [\n { label: '左', value: 'left' },\n { label: '右', value: 'right' },\n ],\n })\n iconPosition = 'left';\n\n @Property('节点图标', {\n type: 'string',\n ui: {\n widget: 'myUpload',\n },\n })\n nodeDefaultIcon = null;\n @Property('节点背景', {\n type: 'string',\n ui: {\n widget: 'myUpload',\n },\n })\n nodeBackground = null;\n\n @Property('节点选中背景色', { ui: { widget: 'myColor' } })\n selectedBackground = '#bae7ff';\n\n @Property('节点选中字体色', { ui: { widget: 'myColor' } })\n nodeCheckedColor = '#333';\n\n @Property('节点选中背景', {\n type: 'string',\n ui: {\n widget: 'myUpload',\n },\n })\n nodeCheckedBackground = null;\n\n @Property('双击重命名')\n renamable: boolean;\n @Property('显示搜索框')\n showSearch: boolean;\n searchValue: string;\n\n @Property('搜索框颜色', {\n ui: {\n widget: 'myColor',\n visibleIf: { showSearch: [true] },\n },\n })\n searchBorderColor = '#8F9AB3';\n\n @Property('搜索框背景色', {\n ui: {\n widget: 'myColor',\n visibleIf: { showSearch: [true] },\n },\n })\n searchBackgroundColor = 'rgba(0,0,0,0)';\n\n @Property('搜索框提示语', {\n type: 'string',\n ui: {\n visibleIf: { showSearch: [true] },\n },\n })\n searchPlaceholder = '请输入搜索内容';\n\n @Property('滚动条颜色', {\n ui: {\n widget: 'myColor',\n },\n })\n treeScrollbarThumbBackground = '#ddd';\n\n @Data({\n properties: {\n title: { type: 'string', title: '标题' },\n key: { type: 'string', title: 'id' },\n parentKey: { type: 'string', title: '父级id' },\n icon: { type: 'string', title: '图标' },\n count: { type: 'string', title: '数量' },\n },\n })\n data = [\n { title: '江苏省', key: '300', parentKey: '' },\n { title: '浙江省', key: '100', parentKey: '' },\n { title: '杭州市', key: '1001', parentKey: '100' },\n { title: '顶顶区', key: '10010', parentKey: '1001' },\n { title: '的方区', key: '10011', parentKey: '1001' },\n { title: '温州市', key: '1002', parentKey: '100' },\n { title: '鹿城区', key: '10020', parentKey: '1002' },\n { title: '龙湾区', key: '10021', parentKey: '1002' },\n ];\n\n @DataInput('选中值')\n value: any;\n\n @DataOutput('选中id')\n @Event('选中值改变', { params: 'id' })\n keyChange = new EventEmitter<any>();\n\n nodes: NzTreeNodeOptions[] = [];\n\n expandedKeys: string[];\n\n edittingNode: NzTreeNode; // 正在重命名的节点\n\n @ViewChild('tree')\n tree: NzTreeComponent;\n\n @ViewChild('renameInput')\n renameInput: ElementRef;\n\n selectedKeys: string[] = [];\n // checkedKeys: string[] = [];\n style = {};\n waittingSelect: string | string[];\n\n paddNum: any;\n constructor(private arrayService: ArrayService, private elementRef: ElementRef) {}\n\n ngOnInit(): void {\n document.body.style.setProperty('--treeScrollbar-thumb-background', this.treeScrollbarThumbBackground || '#ddd');\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes.data) {\n this.nodes = this.toTree(this.data);\n if (this.waittingSelect) {\n this.select(this.waittingSelect);\n }\n }\n if (changes.font) {\n this.updateStyle();\n }\n\n if (changes.data || changes.expandLevel || changes.expandAll) {\n this.expand();\n }\n }\n\n toTree(data: any[]) {\n const nodeMap = {};\n const nodes = [];\n const root = [];\n if (data) {\n data.forEach(({ title, key, parentKey, parentKey_value, icon, count }) => {\n if (key) {\n const node: NzTreeNodeOptions = {\n key,\n title,\n parentKey: parentKey_value || parentKey,\n icon,\n isLeaf: true,\n count,\n };\n if (this.selectedKeys.includes(key)) {\n node.selected = true;\n }\n nodeMap[key] = node;\n nodes.push(node);\n }\n });\n nodes.forEach((node) => {\n if (node.parentKey) {\n const parent = nodeMap[node.parentKey];\n if (parent) {\n parent.children = parent.children || [];\n parent.children.push(node);\n parent.isLeaf = false;\n return;\n }\n }\n root.push(node);\n });\n }\n return root;\n }\n\n expand() {\n // TODO nz的bug,在数据改变之后nzExpandAll无效,等修复了可以切换成这里的代码\n // if (!this.expandAll) {\n // this.expandedKeys = [];\n // if (this.expandLevel) {\n // this.arrayService.visitTree(this.nodes, (item, parent, deep) => {\n // if (deep <= this.expandLevel) {\n // this.expandedKeys.push(item.key);\n // }\n // });\n // }\n // }\n this.expandedKeys = [];\n if (this.expandAll || this.expandLevel) {\n this.arrayService.visitTree(this.nodes, (item, parent, deep) => {\n if (this.expandAll || deep <= this.expandLevel) {\n this.expandedKeys.push(item.key);\n }\n });\n }\n }\n\n updateStyle() {\n this.style = getFontStyle(this.font);\n this.elementRef.nativeElement.style.setProperty('--selected-background', this.selectedBackground || '#bae7ff');\n }\n\n onClick(event: NzFormatEmitEvent) {\n this.onKeysChange(event.keys);\n this.nodeClick(event.node.key, event.node.title);\n }\n\n onKeysChange(keys: string[]) {\n this.waittingSelect = null;\n this.selectedKeys = keys;\n if (this.checkable) {\n if (this.outputType === 'string') {\n this.keyChange.emit(keys?.join(';'));\n } else {\n this.keyChange.emit(keys);\n }\n } else {\n this.keyChange.emit(keys[0]);\n }\n }\n\n onCheckBoxChange(event: NzFormatEmitEvent) {\n this.onKeysChange(event.keys);\n }\n\n onNodeDblclick(event: NzFormatEmitEvent) {\n if (this.renamable) {\n this.edittingNode = event.node;\n setTimeout(() => {\n if (this.renameInput) {\n this.renameInput.nativeElement.focus();\n }\n });\n }\n }\n\n renameEnd(node: NzTreeNode) {\n this.edittingNode = null;\n this.rename(node.key, node.title);\n }\n\n showNode(e) {\n console.log(e);\n }\n\n @Method('搜索')\n search(@Param('内容') value: string) {\n this.searchValue = value;\n }\n\n @Method('选中')\n select(@Param('id') id: string | string[]) {\n let find = false;\n const keys = [];\n if (id) {\n if (this.checkable) {\n if (typeof id === 'string') {\n id = id.split(';');\n }\n keys.push(...id);\n } else {\n keys.push(id);\n }\n }\n this.selectedKeys = keys;\n if (keys.length) {\n if (this.nodes) {\n const nodes = [];\n this.arrayService.visitTree(this.nodes, (n) => {\n if (keys.includes(n.key)) {\n nodes.push(n);\n }\n });\n if (nodes.length) {\n this.onKeysChange(keys);\n nodes.forEach((node) => this.nodeClick(node.key, node.title));\n find = true;\n }\n }\n // 数据有可能还没加载,等数据加载了再选中\n if (!find) {\n this.waittingSelect = id;\n }\n }\n }\n\n @Event('点击')\n nodeClick(@EventParam('id') id: string, @EventParam('标题') title: string) {}\n\n @Event('重命名')\n rename(@EventParam('id') id: string, @EventParam('名称') name: string) {}\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { TreeControlComponent } from './tree-control.component';\nimport { WidgetBaseModule, WidgetService } from 'bbj-widget-base';\nimport { NzTreeModule } from 'ng-zorro-antd/tree';\nimport { NzInputModule } from 'ng-zorro-antd/input';\nimport { FormsModule } from '@angular/forms';\nimport { NzHighlightModule } from 'ng-zorro-antd/core/highlight';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\n@NgModule({\n declarations: [TreeControlComponent],\n imports: [CommonModule, WidgetBaseModule, NzTreeModule, NzInputModule, FormsModule, NzHighlightModule, NzIconModule],\n})\nexport class TreeControlModule {\n constructor(widgetService: WidgetService) {\n widgetService.register(TreeControlComponent);\n }\n}\n","import { Component, OnChanges, OnInit, SimpleChanges, EventEmitter } from '@angular/core';\r\nimport { Data, DataOutput, Drill, Property, Widget, Event, EventParam } from 'bbj-widget-base';\r\nimport * as echarts from 'echarts';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { SFArrayWidgetSchema, SFRadioWidgetSchema, SFStringWidgetSchema } from '@delon/form';\r\n\r\n@Component({\r\n selector: 'sc-visual-map-chart',\r\n templateUrl: './visual-map-chart.component.html',\r\n styleUrls: ['./visual-map-chart.component.less'],\r\n})\r\n@Widget('2D热力图', {\r\n group: 'component',\r\n image: 'assets/img/screen/hotMap.png',\r\n icon: 'icontubiao',\r\n})\r\nexport class VisualMapChartComponent implements OnInit, OnChanges {\r\n @Property('字体', { ui: { widget: 'myFont' } })\r\n font: any = {\r\n family: '',\r\n color: '#FFFFFF',\r\n weight: 'normal',\r\n size: 12,\r\n space: 0,\r\n lineHeight: 12,\r\n };\r\n chartOption: any = null;\r\n @Property('地图样式', {\r\n ui: {\r\n widget: 'myUrlSelect',\r\n url: '/assets/mapListItem.json',\r\n },\r\n })\r\n mapStyle = 'china';\r\n @Property('触发提示', {\r\n type: 'string',\r\n enum: [\r\n { value: 'mousemove', label: '移动' },\r\n { value: 'click', label: '点击' },\r\n ],\r\n ui: {\r\n widget: 'radio',\r\n styleType: 'button',\r\n buttonStyle: 'solid',\r\n } as SFRadioWidgetSchema,\r\n default: 'mousemove',\r\n })\r\n trigger = 'mousemove';\r\n @Property('图例位置', { ui: { widget: 'myGrid' } })\r\n visualMapPosition: any = {\r\n left: '',\r\n right: '',\r\n top: '',\r\n bottom: 40,\r\n };\r\n @Property('分级', {\r\n type: 'array',\r\n title: '热力等级',\r\n maxItems: 10,\r\n items: {\r\n type: 'object',\r\n properties: {\r\n gte: {\r\n type: 'number',\r\n title: '大于',\r\n },\r\n lte: {\r\n type: 'number',\r\n title: '小于',\r\n minimum: 1,\r\n },\r\n label: {\r\n type: 'string',\r\n title: '标签',\r\n },\r\n color: {\r\n type: 'string',\r\n title: '颜色',\r\n ui: {\r\n widget: 'myColor',\r\n },\r\n },\r\n unit: {\r\n type: 'string',\r\n title: '单位',\r\n },\r\n },\r\n required: ['label', 'color'],\r\n },\r\n ui: { grid: { arraySpan: 24 }, spanControl: 24 } as SFArrayWidgetSchema,\r\n })\r\n level = [\r\n { gte: 0, lte: 50, label: '等级1', color: '#AAAAAA', unit: '' },\r\n {\r\n gte: 50,\r\n label: '等级2',\r\n color: '#FF3333',\r\n unit: '',\r\n },\r\n ];\r\n @Property('地图颜色', {\r\n type: 'string',\r\n ui: {\r\n widget: 'myColor',\r\n },\r\n })\r\n mapColor = '#FFFFFF';\r\n @Property('选中区域颜色', {\r\n type: 'string',\r\n ui: {\r\n widget: 'myColor',\r\n },\r\n })\r\n selectAreaColor = '#f2d5ad';\r\n @Property('正极名称', {\r\n max: {\r\n type: 'string',\r\n title: 'max',\r\n ui: {} as SFStringWidgetSchema,\r\n },\r\n required: ['max'],\r\n })\r\n max = '高';\r\n\r\n @Property('负极名称', {\r\n min: {\r\n type: 'string',\r\n title: 'min',\r\n ui: {} as SFStringWidgetSchema,\r\n },\r\n required: ['min'],\r\n })\r\n min = '低';\r\n @Property('前缀', {\r\n min: {\r\n type: 'string',\r\n ui: {} as SFStringWidgetSchema,\r\n },\r\n })\r\n prefix = '';\r\n @Property('后缀', {\r\n min: {\r\n type: 'string',\r\n ui: {} as SFStringWidgetSchema,\r\n },\r\n })\r\n suffix = '';\r\n @Data({\r\n properties: {\r\n name: { type: 'string', title: '地名' },\r\n value: { type: 'number', title: '值' },\r\n tooltip: { type: 'string', title: '提示' },\r\n lng: { type: 'number', title: '中心经度' },\r\n lat: { type: 'number', title: '中心纬度' },\r\n },\r\n })\r\n _data: any[] = [\r\n { name: '南海诸岛', value: 0, tooltip: '告警统计' + '<br />' + '失联告警:0' },\r\n { name: '北京', value: 54, tooltip: '告警统计' + '<br />' + '失联告警:54' },\r\n { name: '天津', value: 13, tooltip: '告警统计' + '<br />' + '失联告警:13' },\r\n { name: '上海', value: 40, tooltip: '告警统计' + '<br />' + '失联告警:40' },\r\n { name: '重庆', value: 75, tooltip: '告警统计' + '<br />' + '失联告警:75' },\r\n { name: '河北', value: 13, tooltip: '告警统计' + '<br />' + '失联告警:13' },\r\n { name: '海口市', value: 70, tooltip: '告警统计' + '<br />' + '失联告警:70' },\r\n ];\r\n @Drill()\r\n @DataOutput(['name', 'value', 'tooltip', 'lng', 'lat'])\r\n dataClick = new EventEmitter<any>();\r\n xData = [];\r\n yData = [];\r\n series = [];\r\n image: string;\r\n style = {\r\n color: '',\r\n fontFamily: '',\r\n fontWeight: '',\r\n fontSize: '',\r\n lineHeight: '',\r\n };\r\n data: any;\r\n\r\n constructor(private http: HttpClient) { }\r\n\r\n ngOnInit(): void { }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n this.style = {\r\n color: this.font.color,\r\n fontFamily: this.font.family,\r\n fontWeight: this.font.weight,\r\n fontSize: this.font.size,\r\n lineHeight: this.font.lineHeight,\r\n };\r\n\r\n const posi = { bottom: 40 }; // 保证以前添加的此组件在未修改图例位置前保持不变\r\n if (this.visualMapPosition) {\r\n Object.keys(this.visualMapPosition).forEach(key => {\r\n if (this.visualMapPosition[key] || this.visualMapPosition[key] === 0) {\r\n posi[key] = this.visualMapPosition[key];\r\n }\r\n });\r\n }\r\n if (changes._data) {\r\n this.http\r\n .get('assets/echarts/map/json/' + this.mapStyle + '.json')\r\n .toPromise()\r\n .then((data:any) => {\r\n echarts.registerMap(this.mapStyle, data);\r\n this.data = data;\r\n this.chartOption = {\r\n tooltip: {\r\n triggerOn: this.trigger,\r\n // formatter:(params)=>{\r\n // console.log(params);\r\n // }\r\n // formatter: function(e, t, n) {\r\n // return .5 === e.value ? e.name + ':有疑似病例' : e.seriesName + '<br />' + e.x + ':' + e.y\r\n // }\r\n },\r\n visualMap: {\r\n min: 0,\r\n max: 500,\r\n ...posi,\r\n showLabel: !0,\r\n text: [],\r\n pieces: this.level,\r\n textStyle: this.style,\r\n // [{\r\n // gt: 100,\r\n // label: '> 100 人',\r\n // color: '#7f1100'\r\n // }, {\r\n // gte: 10,\r\n // lte: 100,\r\n // label: '10 - 100 人',\r\n // color: '#ff5428'\r\n // }, {\r\n // gte: 1,\r\n // lt: 10,\r\n // label: '1 - 9 人',\r\n // color: '#ff8c71'\r\n // }, {\r\n // gt: 0,\r\n // lt: 1,\r\n // label: '疑似',\r\n // color: '#ffd768'\r\n // }, {\r\n // value: 0,\r\n // color: '#ffffff'\r\n // }],\r\n show: !0,\r\n },\r\n // geo: {\r\n // map: this.mapStyle,\r\n // roam: !1,\r\n // scaleLimit: {\r\n // min: 1,\r\n // max: 2\r\n // },\r\n // // label: {\r\n // // normal: {\r\n // // show: !0,\r\n // // fontSize: '14',\r\n // // color: 'rgba(0,0,0,0.7)'\r\n // // }\r\n // // },\r\n // itemStyle: {\r\n // normal: {\r\n // borderColor: 'rgba(0, 0, 0, 0.2)',\r\n // areaColor: this.mapColor,\r\n // },\r\n // emphasis: {\r\n // areaColor: this.selectAreaColor,\r\n // shadowOffsetX: 0,\r\n // shadowOffsetY: 0,\r\n // borderWidth: 0\r\n // }\r\n // }\r\n // },\r\n series: [\r\n {\r\n name: '',\r\n type: 'map',\r\n geoIndex: 0,\r\n mapType: this.mapStyle,\r\n label: {\r\n normal: {\r\n show: true,\r\n formatter: (val) => {\r\n const value = val.value ? val.value : 0;\r\n const prefix = this.prefix ? this.prefix : '';\r\n const suffix = this.suffix ? this.suffix : '';\r\n return (val.name + '-' + prefix + value + suffix).split('-').join('\\n');\r\n },\r\n textStyle: this.style,\r\n },\r\n emphasis: {\r\n show: false,\r\n },\r\n },\r\n itemStyle: {\r\n normal: {\r\n borderColor: 'rgba(0, 0, 0, 0.2)',\r\n areaColor: this.mapColor,\r\n },\r\n emphasis: {\r\n areaColor: this.selectAreaColor,\r\n shadowOffsetX: 0,\r\n shadowOffsetY: 0,\r\n borderWidth: 0,\r\n },\r\n },\r\n data: this._data,\r\n },\r\n ],\r\n };\r\n this.reloadData();\r\n });\r\n }\r\n }\r\n\r\n onChartClick(event) {\r\n let n = '';\r\n let v = '';\r\n let t = '';\r\n let centerLng = '';\r\n let centerLat = '';\r\n if (typeof event.data !== 'undefined') {\r\n n = event.data.name;\r\n v = event.data.value;\r\n t = event.data.tooltip;\r\n } else {\r\n n = event.name;\r\n v = '0';\r\n }\r\n this.data.features.forEach((a) => {\r\n if (a.properties.name === n) {\r\n centerLng = a.properties.cp[0];\r\n centerLat = a.properties.cp[1];\r\n }\r\n });\r\n this.dataClick.emit({ name: n, value: v, tooltip: t, lng: centerLng, lat: centerLat });\r\n\r\n this.onClick(n, v, t, Number(centerLng), Number(centerLat));\r\n }\r\n\r\n reloadData() {\r\n this.chartOption.visualMap.text.push(this.max);\r\n this.chartOption.visualMap.text.push(this.min);\r\n if (this.mapStyle === 'province/hainan') {\r\n this.chartOption.geo.center = [109.844902, 19.0392];\r\n this.chartOption.geo.layoutCenter = ['50%', '50%'];\r\n this.chartOption.geo.layoutSize = '600%';\r\n }\r\n }\r\n\r\n @Event('点击')\r\n onClick(\r\n @EventParam('名称') name: string,\r\n @EventParam('值') value: string,\r\n @EventParam('提示') tooltip: string,\r\n @EventParam('经度') lng: number,\r\n @EventParam('维度') lat: number,\r\n ) { }\r\n}\r\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { VisualMapChartComponent } from './visual-map-chart.component';\nimport {WidgetBaseModule, WidgetService} from 'bbj-widget-base';\nimport {NgxEchartsModule} from 'ngx-echarts';\n\n\n\n\n@NgModule({\n declarations: [VisualMapChartComponent],\n imports: [CommonModule, WidgetBaseModule, NgxEchartsModule],\n})\nexport class VisualMapChartModule {\n constructor(widgetService: WidgetService) {\n widgetService.register(VisualMapChartComponent);\n }\n}\n","import { Component, OnInit, OnChanges, SimpleChanges, EventEmitter } from '@angular/core';\nimport { DataOutput, Event, Method, Property, Widget, Param, Data, CustomExport, DataInput } from 'bbj-widget-base';\nimport {\n compareAsc,\n format,\n addDays,\n startOfMonth,\n addMonths,\n startOfYear,\n addYears,\n startOfWeek,\n addWeeks,\n startOfDay,\n parse,\n} from 'date-fns';\nimport { SFStringWidgetSchema } from '@delon/form';\nimport { NzI18nService } from 'ng-zorro-antd/i18n';\nimport { formatDate } from '@angular/common';\nimport { DisabledDateFn, SupportTimeOptions } from 'ng-zorro-antd/date-picker';\nimport { differenceInCalendarDays } from 'date-fns/fp';\n\nconst defaultDateEnum = [\n { label: '当前', value: 'now' },\n { label: '今天', value: 'today' },\n { label: '昨天', value: 'yesterday' },\n { label: '明天', value: 'tomorrow' },\n { label: '本月', value: 'thisMonth' },\n { label: '上个月', value: 'lastMonth' },\n { label: '下个月', value: 'nextMonth' },\n { label: '本周', value: 'thisWeek' },\n { label: '上周', value: 'lastWeek' },\n { label: '下周', value: 'nextWeek' },\n { label: '今年', value: 'thisYear' },\n { label: '去年', value: 'lastYear' },\n { label: '明年', value: 'nextYear' },\n];\n\n@Component({\n selector: 'sc-date-picker',\n templateUrl: './date-picker.component.html',\n styleUrls: ['./date-picker.component.less'],\n})\n@Widget('日期选择器', {\n group: 'component',\n image: 'assets/img/screen/date-picker.png',\n icon: 'riqi',\n platform: 'pc',\n})\nexport class DatePickerComponent implements OnInit, OnChanges, CustomExport {\n @Property('边框', {\n ui: {\n widget: 'myColor',\n example: ['#ffffff', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', null],\n },\n })\n borderColor: string;\n @Property('字体', { ui: { widget: 'myFont' } })\n font: any = { family: '', weight: 'normal', size: 14, space: 0, lineHeight: '' };\n @Property('填充', {\n ui: {\n widget: 'myColor',\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', null],\n },\n })\n background: string;\n @Property('背景图片', {\n type: 'string',\n ui: {\n widget: 'myUpload',\n },\n })\n backImage = null;\n @Property('高度')\n height: number = 30;\n @Property('日期格式', {\n dateFormat: {\n type: 'string',\n title: 'max',\n ui: {} as SFStringWidgetSchema,\n },\n required: ['dateFormat'],\n })\n dateFormat = '';\n @Property('开启区间模式')\n rangeMode: boolean;\n @Property('默认时间', {\n type: 'string',\n enum: defaultDateEnum,\n })\n defaultDate: string;\n @Property('默认结束时间', {\n type: 'string',\n enum: defaultDateEnum,\n ui: { widget: 'select', visibleIf: { rangeMode: [true] } },\n })\n defaultEndDate: string;\n @Property('选择模式', {\n type: 'string',\n enum: [\n { label: '默认', value: '' },\n { label: '周', value: 'week' },\n { label: '月份', value: 'month' },\n { label: '年份', value: 'year' },\n ],\n })\n selectMode: string = '';\n @Property('显示时间', {\n type: 'boolean',\n })\n showTime = false;\n @Property('时间格式', {\n enum: [\n { label: '时分秒', value: 'HH:mm:ss' },\n { label: '时分', value: 'HH:mm' },\n { label: '时', value: 'HH' },\n ],\n ui: { widget: 'select', visibleIf: { showTime: [true] } },\n })\n timeFormat: string = 'HH:mm:ss';\n @Property('小时间隔', { ui: { visibleIf: { showTime: [true] } } })\n hourStep: number;\n @Property('分钟间隔', { ui: { visibleIf: { timeFormat: ['HH:mm:ss', 'HH:mm'] } } })\n minuteStep: number;\n @Property('秒间隔', { ui: { visibleIf: { timeFormat: ['HH:mm:ss'] } } })\n secondStep: number;\n @Property('提示语')\n alert = '请选择日期';\n @Property('是否禁用')\n disabled: boolean;\n @Property('不可选日期', {\n enum: [\n { label: '今天之后', value: 'after' },\n { label: '今天之前', value: 'before' },\n ],\n })\n disabledDate: string;\n @Property('清除按钮', { type: 'boolean', default: true })\n allowClear = true;\n\n @Data({ properties: { date: { title: '日期', type: 'string' }, endDate: { title: '结束日期', type: 'string' } } })\n data = [];\n @DataOutput('值')\n @Event('值改变', { params: { title: '值' } })\n dateChange = new EventEmitter<any>();\n @DataOutput('结束')\n @Event('结束值', { params: { title: '结束值' } })\n endDateChange = new EventEmitter<any>();\n @Event('输入', { params: { title: '值' } })\n inputDate = new EventEmitter<any>();\n @Event('输入结束时间', { params: { title: '结束值' } })\n inputEndDate = new EventEmitter<any>();\n @DataInput('值')\n date: any;\n dateRange = [];\n datePickerStyle: any;\n nzShowTime: SupportTimeOptions;\n nzDisabledDate: DisabledDateFn;\n // isEnglish = false;\n\n constructor(private i18n: NzI18nService) {}\n\n ngOnInit(): void {\n // this.initDefaultDate();\n }\n\n /**\n * {label: '当前', value: 'now'},\n {label: '昨天', value: 'yesterday'},\n {label: '明天', value: 'tomorrow'},\n {label: '本月', value: 'thisMonth'},\n {label: '上个月', value: 'lastMonth'},\n {label: '下个月', value: 'nextMonth'},\n {label: '本周', value: 'thisWeek'},\n {label: '上个月', value: 'lastWeek'},\n {label: '下个月', value: 'nextWeek'},\n {label: '今年', value: 'thisYear'},\n {label: '去年', value: 'lastYear'},\n {label: '明年', value: 'nextYear'},\n */\n initDefaultDate() {\n if (this.rangeMode) {\n const start = this.getDefaultDate(this.defaultDate);\n const end = this.getDefaultDate(this.defaultEndDate);\n this.date = [start, end];\n if (start || end) {\n this.onChange(this.date);\n }\n } else {\n this.date = this.getDefaultDate(this.defaultDate);\n if (this.date) {\n this.onChange(this.date);\n }\n }\n }\n\n getDefaultDate(defaultDate: string) {\n if (defaultDate) {\n const today = new Date();\n switch (defaultDate) {\n case 'now':\n return today;\n case 'today':\n return startOfDay(today);\n case 'yesterday':\n return addDays(startOfDay(today), -1);\n case 'tomorrow':\n return addDays(startOfDay(today), 1);\n case 'thisMonth':\n return startOfMonth(today);\n case 'lastMonth':\n return addMonths(startOfMonth(today), -1);\n case 'nextMonth':\n return addMonths(startOfMonth(today), 1);\n case 'thisYear':\n return startOfYear(today);\n case 'lastYear':\n return addYears(startOfYear(today), -1);\n case 'nextYear':\n return addYears(startOfYear(today), 1);\n case 'thisWeek':\n return addDays(startOfWeek(addDays(today, -1)), 1);\n case 'lastWeek':\n return addWeeks(addDays(startOfWeek(addDays(today, -1)), 1), -1);\n case 'nextWeek':\n return addWeeks(addDays(startOfWeek(addDays(today, -1)), 1), 1);\n }\n }\n return null;\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes.dateFormat && !this.dateFormat) {\n this.setDefaultFormat();\n }\n this.datePickerStyle = {\n borderColor: this.borderColor,\n backgroundColor: this.background,\n fontSize: this.font.size + 'px',\n fontFamily: this.font.family,\n color: this.font.color,\n fontWeight: this.font.weight,\n letterSpacing: this.font.space + 'px',\n height: this.height + 'px',\n backgroundSize: '100% 100%',\n lineHeight: this.font.lineHeight + 'px',\n };\n if (this.showTime) {\n this.nzShowTime = {\n nzFormat: this.timeFormat || 'HH:mm:ss',\n nzHourStep: this.hourStep,\n nzMinuteStep: this.minuteStep,\n nzSecondStep: this.secondStep,\n };\n }\n if (this.backImage) {\n this.datePickerStyle.backgroundImage = 'url(' + this.backImage + ')';\n }\n if (changes.rangeMode || changes.defaultDate || changes.defaultEndDate) {\n this.initDefaultDate();\n }\n if (changes.data) {\n this.updateData();\n }\n if (changes.disabledDate) {\n this.updateDisabledDate();\n }\n if (changes.value) {\n if (!this.date) {\n this.date = null;\n } else if (typeof this.date === 'string') {\n this.date = parse(this.date, this.dateFormat, new Date());\n }\n }\n }\n\n updateDisabledDate() {\n switch (this.disabledDate) {\n case 'after':\n this.nzDisabledDate = (current) => differenceInCalendarDays(current, new Date()) < 0;\n break;\n case 'before':\n this.nzDisabledDate = (current) => differenceInCalendarDays(current, new Date()) > 0;\n break;\n default:\n this.nzDisabledDate = null;\n }\n }\n\n updateData() {\n if (this.data?.length) {\n const { date, endDate } = this.data[0];\n const start = this.getDate(date);\n if (this.rangeMode) {\n const end = this.getDate(endDate);\n if (start || end) {\n this.date = [start || this.date[0], end || this.date[1]];\n this.onChange(this.date);\n }\n } else {\n if (start) {\n this.date = start;\n this.onChange(this.date);\n }\n }\n }\n }\n\n getDate(value: any) {\n if (value) {\n return new Date(value);\n } else {\n return null;\n }\n }\n\n onChange(result: Date, input?: boolean): void {\n if (!this.rangeMode) {\n const date = this.format(this.date);\n this.dateChange.emit(date);\n if (input) {\n this.inputDate.emit(date);\n }\n } else {\n // date=format(this.date[0], this.dateFormat)+'-'+format(this.date[1], this.dateFormat);\n const start = this.format(this.date[0]);\n const end = this.format(this.date[1]);\n this.dateChange.emit(start);\n this.endDateChange.emit(end);\n if (input) {\n this.inputDate.emit(start);\n this.inputEndDate.emit(end);\n }\n }\n }\n\n format(date: Date) {\n if (date) {\n return formatDate(date, this.dateFormat, this.i18n.getLocaleId());\n } else {\n return null;\n }\n }\n\n setDefaultFormat() {\n switch (this.selectMode) {\n case 'week':\n this.dateFormat = 'yyyy-ww';\n break;\n case 'month':\n // console.log(today);\n this.dateFormat = 'yyyy-MM';\n break;\n case 'year':\n this.dateFormat = 'yyyy';\n break;\n default:\n if (this.showTime) {\n this.dateFormat = 'yyyy-MM-dd HH:mm:ss';\n if (this.timeFormat) {\n switch (this.timeFormat) {\n case 'HH':\n this.dateFormat = 'yyyy-MM-dd HH:00:00';\n break;\n case 'HH:mm':\n this.dateFormat = 'yyyy-MM-dd HH:mm:00';\n break;\n }\n }\n } else {\n this.dateFormat = 'yyyy-MM-dd';\n }\n break;\n }\n }\n @Method('设置值')\n setValue(@Param('值') value: Date) {\n this.date = value;\n this.onChange(value);\n }\n\n // changeLanguage(): void {\n // this.i18n.setLocale(this.isEnglish ? zh_CN : en_US);\n // this.isEnglish = !this.isEnglish;\n // }\n\n exportWord() {\n return null;\n }\n}\n","import {NgModule} from '@angular/core';\nimport {CommonModule} from '@angular/common';\nimport {DatePickerComponent} from './date-picker.component';\nimport {WidgetBaseModule, WidgetService} from 'bbj-widget-base';\nimport {NzDatePickerModule} from 'ng-zorro-antd/date-picker';\nimport {FormsModule} from '@angular/forms';\n\n\n@NgModule({\n declarations: [DatePickerComponent],\n imports: [CommonModule, WidgetBaseModule, NzDatePickerModule, FormsModule],\n exports: [DatePickerComponent]\n})\nexport class DatePickerModule {\n constructor(widgetService: WidgetService) {\n widgetService.register(DatePickerComponent);\n }\n}\n","import { Component, EventEmitter, OnInit } from '@angular/core';\nimport { DataOutput, Property, Widget } from 'bbj-widget-base';\nimport { SFStringWidgetSchema } from '@delon/form';\nimport { format } from 'date-fns';\nimport { backgroundImage } from 'html2canvas/dist/types/css/property-descriptors/background-image';\n\n@Component({\n selector: 'sc-time-picker',\n templateUrl: './time-picker.component.html',\n styleUrls: ['./time-picker.component.less'],\n})\n@Widget('时间选择器', {\n group: 'component',\n image: 'assets/img/screen/time-picker.png',\n icon: 'icontubiao',\n})\nexport class TimePickerComponent implements OnInit {\n @Property('边框', {\n ui: {\n widget: 'myColor',\n example: ['#ffffff', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', null],\n },\n })\n borderColor = '#3285ff';\n @Property('背景图片', {\n type: 'string',\n ui: {\n widget: 'myUpload',\n }\n })\n backImage = null;\n @Property('高度')\n height: number = 30;\n @Property('字体', { ui: { widget: 'myFont' } })\n font: any = { family: '', color: '#3285ff', weight: 'normal', size: 12, space: 0, lineHeight: '' };\n @Property('填充', {\n ui: {\n widget: 'myColor',\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', null],\n },\n })\n background = 'rgba(50,133,255,0.2)';\n @Property('时间格式', {\n timeFormat: {\n type: 'string',\n title: 'max',\n ui: {} as SFStringWidgetSchema,\n },\n required: ['timeFormat'],\n })\n timeFormat = 'HH:mm:ss';\n @Property('提示语')\n alert = '请选择时间';\n @DataOutput('值')\n timeChange = new EventEmitter<any>();\n time: Date | null = null;\n timePickerStyle: any;\n\n defaultOpenValue = new Date(0, 0, 0, 0, 0, 0);\n\n constructor() { }\n\n ngOnInit(): void {\n this.timePickerStyle = {\n borderColor: this.borderColor,\n backgroundColor: this.background,\n fontSize: this.font.size + 'px',\n fontFamily: this.font.family,\n color: this.font.color,\n fontWeight: this.font.weight,\n letterSpacing: this.font.space + 'px',\n lineHeight: this.font.lineHeight + 'px',\n height: this.height + 'px',\n backgroundImage: 'url('+this.backImage+')',\n backgroundSize:'100% 100%'\n };\n }\n\n onChange(result: Date) {\n let date = '';\n if (result !== null) {\n date = format(result, this.timeFormat);\n }\n this.timeChange.emit(date);\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { TimePickerComponent } from './time-picker.component';\nimport {WidgetBaseModule, WidgetService} from 'bbj-widget-base';\nimport { NzTimePickerModule } from 'ng-zorro-antd/time-picker';\nimport {FormsModule} from '@angular/forms';\n\n\n\n\n@NgModule({\n declarations: [TimePickerComponent],\n imports: [CommonModule, WidgetBaseModule, NzTimePickerModule,FormsModule],\n})\nexport class TimePickerModule {\n constructor(widgetService: WidgetService){\n widgetService.register(TimePickerComponent);\n }\n}\n","import { HttpClient } from '@angular/common/http';\r\nimport {\r\n ChangeDetectionStrategy,\r\n ChangeDetectorRef,\r\n Component,\r\n ElementRef,\r\n EventEmitter,\r\n forwardRef,\r\n HostBinding,\r\n HostListener,\r\n Inject,\r\n NgZone,\r\n OnChanges,\r\n OnDestroy,\r\n OnInit,\r\n Optional,\r\n SimpleChanges,\r\n ViewChild,\r\n} from '@angular/core';\r\nimport { Subject } from 'rxjs';\r\nimport { take, takeUntil } from 'rxjs/operators';\r\nimport { ScaleSubject, TemplateUtil, WidgetRef } from 'bbj-widget-base';\r\nimport { Data, DataOutput, Property, Widget, Event } from 'bbj-widget-base';\r\nimport { BaiduMapService } from 'bbj-screen-widget/core';\r\n\r\n// declare const BMap;\r\ndeclare const BMapGL: any;\r\n// declare const BMapGLLib;\r\n// declare const BMapLib;\r\n// declare const BMAP_ANCHOR_BOTTOM_LEFT: number;\r\ndeclare const BMAP_ANCHOR_TOP_LEFT: number;\r\ndeclare const mapvgl: any;\r\ndeclare const BMAP_SATELLITE_MAP: number;\r\ndeclare const BMAP_NORMAL_MAP: number;\r\nconst MapTypeEnum = [\r\n { label: '普通', value: 'normal' },\r\n { label: '深色', value: 'dark' },\r\n { label: '卫星', value: 'satellite' },\r\n { label: '自定义', value: 'custom' },\r\n];\r\n@Component({\r\n selector: 'sc-custom-baidu-map',\r\n templateUrl: './custom-baidu-map.component.html',\r\n styleUrls: ['./custom-baidu-map.component.less'],\r\n})\r\n@Widget('百度地图', {\r\n group: 'component',\r\n image: 'assets/img/screen/my-baidu-map.png',\r\n children: [\r\n {\r\n title: '标记层',\r\n type: 'sc-baidu-marker-layer',\r\n option: {},\r\n hidden: true,\r\n hideChild: true,\r\n },\r\n ],\r\n childTypes: ['sc-baidu-marker-layer', 'sc-baidu-polyline-layer', 'sc-wind-layer', 'sc-typhoon-area-layer'],\r\n description: 'hasChildItem',\r\n} as any)\r\nexport class CustomBaiduMapComponent implements OnInit, OnDestroy, OnChanges {\r\n // @Property('字体', { ui: { widget: 'myFont' } })\r\n // font: any = {\r\n // family: '',\r\n // color: '#000000',\r\n // weight: 'normal',\r\n // size: 16,\r\n // space: 0,\r\n // lineHeight: 0,\r\n // };\r\n @Property('地图类型', {\r\n enum: MapTypeEnum,\r\n })\r\n mapType = 'normal';\r\n mapTypeValue: string;\r\n @Property('上传样式', { type: 'string', ui: { widget: 'myUploadAudio', visibleIf: { mapType: ['custom'] } } })\r\n uploadStyle: string;\r\n @Property('切换按钮')\r\n showMapTypeRadio: boolean;\r\n @Property('全景地图', { type: 'boolean' })\r\n minMapShow = false;\r\n @Property('显示信息', {\r\n ui: { widget: 'select' },\r\n enum: [\r\n { label: '点击', value: 'click' },\r\n { label: '悬停', value: 'mouseover' },\r\n ],\r\n })\r\n showType = 'click';\r\n @Property('信息窗背景', { ui: { widget: 'myColor' } })\r\n infoWindowBackground: string;\r\n @Property('信息窗字体', { ui: { widget: 'myColor' } })\r\n infoWindowColor: string;\r\n @Property('信息窗宽度')\r\n infoWindowWidth: number;\r\n @Property('信息窗高度')\r\n infoWindowHeight: number;\r\n @Property('信息窗模板', { ui: { widget: 'textarea' } })\r\n infoWindowTemplate: string;\r\n @Property('信息窗边框', {\r\n ui: { widget: 'myColor' },\r\n example: ['#ffffff', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', null],\r\n })\r\n infoWindowBorderColor: string;\r\n @Property('隐藏尖角')\r\n @HostBinding('class.hideInfoWindowTail')\r\n hideInfoWindowTail: boolean;\r\n @Property('隐藏关闭按钮')\r\n @HostBinding('class.hideInfoWindowTop')\r\n hideInfoWindowTop: boolean;\r\n @Property('地图拖动', { type: 'boolean' })\r\n dragging = true;\r\n\r\n @Property('遮罩颜色', {\r\n ui: { widget: 'myColor' },\r\n example: ['#ffffff', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', null],\r\n })\r\n shadeColor = '#004395';\r\n @Property('背景颜色', {\r\n ui: { widget: 'myColor' },\r\n example: ['#ffffff', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', null],\r\n })\r\n mapBackColor: string;\r\n\r\n @Property('多边线色', {\r\n ui: { widget: 'myColor' },\r\n example: ['#ffffff', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', null],\r\n })\r\n mapCityColor = '#41b7ff';\r\n @Property('地图缩放', {\r\n ui: { widget: 'myRange', min: 1, max: 40, step: 1 },\r\n })\r\n zoom = 12;\r\n // @Property('放大比例', { type: 'number' })\r\n // scale = 1;\r\n @Property('遮罩透明', { type: 'number' })\r\n fillOpacity = 0;\r\n @Property('多边线粗', { type: 'number' })\r\n strokesize = 2;\r\n @Property('黑夜模式', { type: 'boolean', ui: { hidden: true } })\r\n nightMode = false;\r\n @Property('3D视角')\r\n enable3D: boolean;\r\n @Property('定位控件')\r\n showLocationControl: boolean;\r\n @Property('初始角度', { type: 'number', ui: { visibleIf: { enable3D: [true] } } })\r\n tilt = 73;\r\n // @Property('中心经度', {\r\n // ui: {widget: 'myRange', min: -180, max: 180, step: 1},\r\n // })\r\n centerLng = 120.7;\r\n // @Property('中心纬度', {\r\n // ui: {widget: 'myRange', min: -90, max: 90, step: 1},\r\n // })\r\n centerLat = 28;\r\n @Property('显示省市', {\r\n ui: {\r\n widget: 'myUrlSelect',\r\n allowClear: true,\r\n url: '/assets/mapListItem.json',\r\n },\r\n })\r\n cityName = null;\r\n point: any;\r\n\r\n // _data = [\r\n // {\r\n // options: {\r\n // icon: {\r\n // imageUrl: 'assets/img/screen/number-flop.png',\r\n // size: {\r\n // height: 260,\r\n // width: 250\r\n // }\r\n // }\r\n // },\r\n // point: {\r\n // lng: 120.7, // 经度\r\n // lat: 28, // 纬度\r\n // }\r\n // },\r\n // ];\r\n // 文字标注\r\n\r\n public text: string;\r\n // _children = [];\r\n type: string;\r\n map: any;\r\n edit: boolean;\r\n // markerTierClick: any;\r\n // pingyang = '';\r\n // ruian = '';\r\n @Data({\r\n properties: {\r\n lng: { type: 'number', title: '经度' },\r\n lat: { type: 'number', title: '纬度' },\r\n },\r\n })\r\n _data: any[] = [{ lng: 120.7, lat: 28 }];\r\n @DataOutput(['lng', 'lat'])\r\n @Event('中心点改变', {\r\n params: { properties: { lng: { title: '经度', type: 'number' }, lat: { title: '纬度', type: 'number' } } },\r\n })\r\n dataChange = new EventEmitter<any>();\r\n\r\n @DataOutput('缩放等级')\r\n @Event('缩放', {\r\n params: '缩放等级',\r\n })\r\n zoomChange = new EventEmitter<any>();\r\n @Event('地图点击', {\r\n params: { properties: { lng: { title: '经度', type: 'number' }, lat: { title: '纬度', type: 'number' } } },\r\n })\r\n mapClick = new EventEmitter<any>();\r\n\r\n @ViewChild('container', { static: true })\r\n container: ElementRef;\r\n children: any[];\r\n destroy$ = new Subject();\r\n destroyed: boolean;\r\n // containerStyle: any = {};\r\n // unloadedChildren = {};\r\n overlaysMap = {};\r\n\r\n // @HostBinding('class.hideInfoWindowTail')\r\n // hideInfoWindowTail: boolean;\r\n\r\n private inited: (map: any) => void;\r\n init$ = new Promise((resolve) => {\r\n this.inited = resolve;\r\n });\r\n view: any;\r\n pickerEvent: any;\r\n pickerItem: any;\r\n pickerTimeout: any;\r\n mapTypeEnum = MapTypeEnum.slice(0, 3);\r\n darkStyle: any;\r\n firstOpen: boolean;\r\n firstOpenPromise: Promise<void>;\r\n constructor(\r\n private baiduMapService: BaiduMapService,\r\n private http: HttpClient,\r\n private elementRef: ElementRef,\r\n private zone: NgZone,\r\n @Optional() private scale$: ScaleSubject,\r\n private cd: ChangeDetectorRef,\r\n private widgetRef: WidgetRef,\r\n ) {}\r\n\r\n get element(): HTMLElement {\r\n return this.elementRef.nativeElement;\r\n }\r\n\r\n addLayer(layer: any) {\r\n if (this.view) {\r\n this.view.addLayer(layer);\r\n }\r\n }\r\n\r\n removeLayer(layer: any) {\r\n if (this.view) {\r\n this.view.removeLayer(layer);\r\n }\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes._data && this._data[0]) {\r\n this.centerLng = +this._data[0].lng;\r\n this.centerLat = +this._data[0].lat;\r\n this.setCenter(this.centerLng, this.centerLat);\r\n }\r\n }\r\n\r\n async ngOnInit() {\r\n if (this.scale$) {\r\n // 这是为了解决地图缩放中心不在鼠标所在位置的问题\r\n this.scale$.pipe(takeUntil(this.destroy$)).subscribe((scale) => {\r\n const { x: sx, y: sy, scaleContent } = scale as any;\r\n const style = this.element.style;\r\n if (scaleContent === false) {\r\n this.zone.onStable.pipe(take(1)).subscribe(() => {\r\n const parent = this.element.parentNode as HTMLElement;\r\n if (parent) {\r\n const match = /translate\\(([-\\d.]+)px, ([-\\d.]+)px\\)/.exec(parent.style.transform);\r\n if (match) {\r\n const offsetX = parseFloat(match[1]);\r\n const offsetY = parseFloat(match[2]);\r\n style.transform = `translate(${-offsetX}px,${-offsetY}px)`;\r\n style.height = parent.clientHeight + offsetY + 'px';\r\n style.width = parent.clientWidth + offsetX + 'px';\r\n style.padding = `${offsetY}px 0 0 ${offsetX}px`;\r\n // this.containerStyle = {\r\n // transformOrigin: `0 0`,\r\n // transform: `translate(${-offsetX}px,${-offsetY}px)`,\r\n // height: parent.clientHeight + offsetY + 'px',\r\n // width: parent.clientWidth + offsetX + 'px',\r\n // padding: `${offsetY}px 0 0 ${offsetX}px`,\r\n // };\r\n }\r\n }\r\n\r\n // this.cd.markForCheck();\r\n });\r\n } else {\r\n const { position, size } = this.widgetRef.widget as any;\r\n const { x, y } = position;\r\n const { width, height } = size;\r\n style.transform = `translate(${-x}px,${-y}px) scale(${1 / sx},${1 / sy})`;\r\n style.height = (y + height) * sy + 'px';\r\n style.width = (x + width) * sx + 'px';\r\n style.padding = `${y * sy}px 0 0 ${x * sx}px`;\r\n }\r\n\r\n // this.cd.markForCheck();\r\n });\r\n }\r\n await this.initMap();\r\n }\r\n\r\n async initMap() {\r\n await this.baiduMapService.loadMapGL();\r\n await this.baiduMapService.loadMapVGL();\r\n this.mapTypeValue = this.mapType;\r\n // 兼容老的配置\r\n if (this.mapType == null) {\r\n if (this.uploadStyle) {\r\n this.mapTypeValue = 'custom';\r\n } else if (this.nightMode) {\r\n this.mapTypeValue = 'dark';\r\n }\r\n }\r\n if (!this.destroyed) {\r\n this.zone.runOutsideAngular(() => {\r\n this.map = new BMapGL.Map(this.container.nativeElement, { restrictCenter: false });\r\n this.map.centerAndZoom(new BMapGL.Point(this.centerLng, this.centerLat), this.zoom); // 设置中心点和缩放级别\r\n this.map.enableScrollWheelZoom(); // 启用滚轮进行缩放功能\r\n // var dist = new BMapGL.DistrictLayer({\r\n // name: '(温州市)',\r\n // kind: 1,\r\n // fillColor: '#fff',\r\n // fillOpacity: 0.1,\r\n // strokeColor: '#daeafa',\r\n // viewport: true,\r\n // });\r\n // this.map.addDistrictLayer(dist);\r\n this.mapTypeChange(this.mapTypeValue);\r\n if (this.edit || this.dragging === false) {\r\n this.map.disableDragging();\r\n }\r\n if (this.enable3D) {\r\n this.map.setTilt(this.tilt == null ? 73 : this.tilt, { noAnimation: true });\r\n this.map.setDisplayOptions({ skyColors: ['rgba(0, 0, 0, 0)'] }); // 隐藏天空\r\n // const navi3DCtrl = new BMapGL.NavigationControl3D(); // 添加3D控件\r\n // this.map.addControl(navi3DCtrl);\r\n } else {\r\n this.map.disableTilt();\r\n this.map.disableRotate();\r\n }\r\n if (this.showLocationControl) {\r\n const options = {\r\n // 控件的停靠位置(可选,默认左上角)\r\n anchor: BMAP_ANCHOR_TOP_LEFT,\r\n // 控件基于停靠位置的偏移量(可选)\r\n offset: new BMapGL.Size(20, 20),\r\n };\r\n let locationControl = new BMapGL.LocationControl(options);\r\n // 将控件添加到地图上\r\n this.map.addControl(locationControl);\r\n }\r\n if (this.minMapShow) {\r\n const stCtrl = new BMapGL.PanoramaControl();\r\n stCtrl.setOffset(new BMapGL.Size(20, 20));\r\n this.map.addControl(stCtrl);\r\n }\r\n if (this.infoWindowBackground) {\r\n this.element.style.setProperty('--info-window-background', this.infoWindowBackground);\r\n }\r\n if (this.infoWindowColor) {\r\n this.element.style.setProperty('--info-window-color', this.infoWindowColor);\r\n }\r\n if (this.infoWindowBorderColor) {\r\n this.element.style.setProperty('--info-window-border-color', this.infoWindowBorderColor);\r\n }\r\n this.map.addEventListener('moveend', (event) => {\r\n const center = this.map.getCenter();\r\n this.dataChange.emit(center);\r\n });\r\n this.map.addEventListener('click', (event) => {\r\n this.mapClick.emit(event.pointer);\r\n });\r\n this.map.addEventListener('zoomend', (event) => {\r\n this.zoomChange.emit(this.map.getZoom());\r\n this.dataChange.emit(this.map.getCenter());\r\n });\r\n this.view = new mapvgl.View({\r\n map: this.map,\r\n });\r\n this.mapLoaded(this.map);\r\n });\r\n this.inited(this.map);\r\n }\r\n }\r\n\r\n setCenter(lng: number, lat: number) {\r\n if (this.map && lng && lat) {\r\n const center = this.map.getCenter();\r\n if (center.lng != lng || center.lat != lat) {\r\n this.setCenterAndZoom(lng, lat, this.map.getZoom());\r\n }\r\n }\r\n }\r\n\r\n setCenterAndZoom(lng: number, lat: number, zoom: number) {\r\n const center = this.map.getCenter();\r\n const currentZoom = this.map.getZoom();\r\n // 误差范围内不移动,防止背景抖动\r\n if (zoom != currentZoom || Math.abs(lng - center.lng) > 1e-13 || Math.abs(lat - center.lat) > 1e-7) {\r\n const point = new BMapGL.Point(lng, lat);\r\n this.map.centerAndZoom(point, zoom, { tilt: this.map.getTilt() });\r\n }\r\n }\r\n\r\n /**\r\n * 根据经纬度范围设置中心和缩放等级\r\n * @param minLng\r\n * @param maxLng\r\n * @param minLat\r\n * @param maxLat\r\n */\r\n setRectCenterAndZoom(minLng: number, maxLng: number, minLat: number, maxLat: number) {\r\n this.setCenterAndZoom((maxLng + minLng) / 2, (maxLat + minLat) / 2, this.getZoom(maxLng, minLng, maxLat, minLat));\r\n }\r\n\r\n getZoom(maxLng: number, minLng: number, maxLat: number, minLat: number) {\r\n const zooms = [\r\n 50, 100, 200, 500, 1000, 2000, 5000, 10000, 20000, 25000, 50000, 100000, 200000, 500000, 1000000, 2000000,\r\n ]; //级别18到3。\r\n const pointA = new BMapGL.Point(maxLng, maxLat); // 创建点坐标A\r\n const pointB = new BMapGL.Point(minLng, minLat); // 创建点坐标B\r\n const distance = +this.map.getDistance(pointA, pointB).toFixed(1); //获取两点距离,保留小数点后两位\r\n const i = zooms.findIndex((zoom) => zoom - distance > 0);\r\n if (i === -1) {\r\n return 5;\r\n }\r\n //之所以会多3,是因为地图范围常常是比例尺距离的10倍以上。所以级别会增加3。\r\n return 18 - i + 3;\r\n }\r\n\r\n openInfoWindow(data: any, lng: number, lat: number) {\r\n if (data.information || this.infoWindowTemplate) {\r\n const point = new BMapGL.Point(+lng, +lat);\r\n // let offsetY = -25;\r\n // if (this.hideInfoWindowTail) {\r\n // offsetY = 0;\r\n // }\r\n let information = data.information;\r\n if (this.infoWindowTemplate) {\r\n information = TemplateUtil.parse(this.infoWindowTemplate, data);\r\n }\r\n const options = {\r\n offset: new BMapGL.Size(0, 0),\r\n width: this.infoWindowWidth || 0,\r\n height: this.infoWindowHeight || 0,\r\n };\r\n const infoWindow = new BMapGL.InfoWindow(information, options);\r\n // 第一次打开信息窗口后在短时间关闭或重新打开会导致click事件失效,临时解决方案是第一次打开后0.5秒内不关闭\r\n if (!this.firstOpen) {\r\n if (this.firstOpenPromise) {\r\n this.firstOpenPromise.then(() => {\r\n this.map.openInfoWindow(infoWindow, point);\r\n });\r\n } else {\r\n this.firstOpenPromise = new Promise<void>((resolve) => {\r\n setTimeout(() => {\r\n this.firstOpen = true;\r\n this.firstOpenPromise = null;\r\n resolve();\r\n }, 500);\r\n });\r\n this.map.openInfoWindow(infoWindow, point);\r\n }\r\n const rawClose = infoWindow.close;\r\n infoWindow.close = () => {\r\n if (this.firstOpenPromise) {\r\n this.firstOpenPromise.then(() => rawClose.call(infoWindow));\r\n } else {\r\n rawClose.call(infoWindow);\r\n }\r\n };\r\n } else {\r\n this.map.openInfoWindow(infoWindow, point);\r\n }\r\n return infoWindow;\r\n }\r\n }\r\n\r\n getCanvasOverlay(child: any) {\r\n let canvasOverlay;\r\n if (this.enable3D) {\r\n const item = child.item;\r\n if (item) {\r\n var pStart = new BMapGL.Point(item.start.lng, item.start.lat);\r\n var pEnd = new BMapGL.Point(item.end.lng, item.end.lat);\r\n var bounds = new BMapGL.Bounds(new BMapGL.Point(pStart.lng, pEnd.lat), new BMapGL.Point(pEnd.lng, pStart.lat));\r\n canvasOverlay = new BMapGL.GroundOverlay(bounds, {\r\n type: 'canvas',\r\n url: item.canvas,\r\n opacity: 1,\r\n });\r\n }\r\n } else {\r\n const pointToPixel = (data) => {\r\n const point = new BMapGL.Point(data.lng, data.lat);\r\n return this.map.pointToPixel(point);\r\n };\r\n canvasOverlay = new BMapGL.CanvasLayer({\r\n paneName: 'markerShadow',\r\n update: function () {\r\n var ctx = this.canvas.getContext('2d');\r\n if (!ctx) {\r\n return;\r\n }\r\n ctx.clearRect(0, 0, ctx.canvas.width, ctx.canvas.height);\r\n child.update(ctx, pointToPixel);\r\n },\r\n });\r\n }\r\n return canvasOverlay;\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.destroy$.next();\r\n this.destroy$.complete();\r\n this.destroyed = true;\r\n if (this.view) {\r\n try {\r\n this.view.destroy();\r\n } catch (e) {\r\n console.error(e);\r\n }\r\n }\r\n if (this.map) {\r\n try {\r\n this.map.destroy();\r\n } catch (e) {\r\n console.error(e);\r\n }\r\n }\r\n }\r\n\r\n async mapLoaded(map: any) {\r\n if (this.cityName) {\r\n if (this.cityName === '温州') {\r\n this.cityName = 'wenzhou';\r\n }\r\n const json: any = await this.http.get('assets/echarts/map/json/' + this.cityName + '.json').toPromise();\r\n const polygonData = [];\r\n let encodeScale = json.UTF8Scale || 1024;\r\n json.features.forEach(({ geometry }) => {\r\n geometry.coordinates = (geometry.coordinates as any[]).forEach((coordinate, i) => {\r\n if (geometry.type === 'MultiPolygon') {\r\n const coordinates = (coordinate as any[]).map((points, j) => {\r\n if (json.UTF8Encoding) {\r\n points = this.decodePolygon(points, geometry.encodeOffsets[i][j], encodeScale);\r\n }\r\n return points;\r\n });\r\n polygonData.push(coordinates);\r\n } else {\r\n if (json.UTF8Encoding) {\r\n coordinate = this.decodePolygon(coordinate, geometry.encodeOffsets[i], encodeScale);\r\n }\r\n polygonData.push([coordinate]);\r\n }\r\n });\r\n });\r\n const data = [\r\n {\r\n geometry: {\r\n type: 'MultiPolygon',\r\n coordinates: polygonData,\r\n },\r\n },\r\n ];\r\n var layer = new mapvgl.PolygonLayer({\r\n lineColor: this.mapCityColor,\r\n lineWidth: this.strokesize || 2,\r\n fillColor: this.shadeColor,\r\n data,\r\n renderOrder: -2,\r\n });\r\n this.view.addLayer(layer);\r\n if (this.mapBackColor && !this.mapBackColor.match(/rgba\\(\\d+,\\d+,\\d+,0\\)/)) {\r\n var maskLayer = new mapvgl.MaskLayer({\r\n color: this.mapBackColor,\r\n data,\r\n renderOrder: -3,\r\n });\r\n this.view.addLayer(maskLayer);\r\n }\r\n }\r\n }\r\n\r\n decodePolygon(coordinate: string, encodeOffsets: number[], encodeScale: number) {\r\n const result = [];\r\n let prevX = encodeOffsets[0];\r\n let prevY = encodeOffsets[1];\r\n\r\n for (let i = 0; i < coordinate.length; i += 2) {\r\n var x = coordinate.charCodeAt(i) - 64;\r\n var y = coordinate.charCodeAt(i + 1) - 64;\r\n // ZigZag decoding\r\n x = (x >> 1) ^ -(x & 1);\r\n y = (y >> 1) ^ -(y & 1);\r\n // Delta deocding\r\n x += prevX;\r\n y += prevY;\r\n\r\n prevX = x;\r\n prevY = y;\r\n // Dequantize\r\n result.push([x / encodeScale, y / encodeScale]);\r\n }\r\n\r\n return result;\r\n }\r\n\r\n async mapTypeChange(mapType: string) {\r\n switch (mapType) {\r\n case 'dark':\r\n if (!this.darkStyle) {\r\n this.darkStyle = await this.http.get('assets/echarts/map/json/custom_map.json').toPromise();\r\n }\r\n this.map.setMapType(BMAP_NORMAL_MAP);\r\n this.map.setMapStyleV2({ styleJson: this.darkStyle });\r\n break;\r\n case 'satellite':\r\n this.map.setMapType(BMAP_SATELLITE_MAP);\r\n break;\r\n case 'custom':\r\n if (this.uploadStyle) {\r\n const styleJson = await this.http.get(this.uploadStyle).toPromise();\r\n this.map.setMapType(BMAP_NORMAL_MAP);\r\n this.map.setMapStyleV2({ styleJson });\r\n }\r\n break;\r\n default:\r\n this.map.setMapType(BMAP_NORMAL_MAP);\r\n this.map.setMapStyleV2({ styleJson: null });\r\n }\r\n }\r\n}\r\n","import { Component, OnChanges, OnDestroy, OnInit } from '@angular/core';\nimport { SFArrayWidgetSchema } from '@delon/form';\nimport { Data, Property, Widget } from 'bbj-widget-base';\nimport { CustomBaiduMapComponent } from '../custom-baidu-map.component';\ndeclare const BMapGL;\n\n@Component({\n selector: 'sc-wind-layer',\n templateUrl: './wind-layer.component.html',\n styleUrls: ['./wind-layer.component.less'],\n})\n@Widget('台风层', {\n group: 'component',\n image: '',\n icon: '',\n hidden: true,\n})\nexport class WindLayerComponent implements OnInit, OnChanges, OnDestroy {\n @Property('清晰度', { type: 'number' })\n sharpness = 1000;\n @Property('标记分组', {\n type: 'array',\n title: '标记分组',\n maxItems: 10,\n items: {\n type: 'object',\n properties: {\n group: {\n type: 'string',\n title: '分组',\n },\n color: {\n type: 'string',\n title: '颜色',\n ui: { widget: 'myColor' },\n },\n borderColor: {\n type: 'string',\n title: '线条颜色',\n ui: { widget: 'myColor' },\n },\n borderWidth: {\n type: 'number',\n title: '线条粗细',\n },\n shadowColor: {\n type: 'string',\n title: '阴影颜色',\n ui: { widget: 'myColor' },\n },\n image: {\n type: 'string',\n title: '中心图片',\n ui: { widget: 'myUpload' },\n },\n },\n },\n ui: { grid: { arraySpan: 24 }, spanControl: 24 } as SFArrayWidgetSchema,\n })\n groups: any = [\n {\n group: '3',\n color: 'rgba(62,194,35,0.4)',\n borderColor: '#60db91',\n borderWidth: 1,\n shadowColor: 'rgba(96,219,145,0.2)',\n },\n {\n group: '2',\n color: 'rgba(255,101,41,0.4)',\n borderColor: '#ff7b48',\n borderWidth: 1,\n shadowColor: 'rgba(255,166,51,0.2)',\n },\n {\n group: '1',\n color: 'rgba(243,68,68,0.4)',\n borderColor: '#ff3355',\n borderWidth: 1,\n shadowColor: 'rgba(255,51,85,0.2)',\n image: '/assets/img/screen/typhoon.png',\n },\n ];\n @Data({\n properties: {\n lng: { type: 'number', title: '经度' },\n lat: { type: 'number', title: '纬度' },\n r: { type: 'number', title: '半径' },\n group: { type: 'string', title: '分组' },\n },\n })\n data: any[] = [\n {\n lng: 121.3,\n lat: 27.4,\n group: '3',\n r: 160,\n },\n {\n lng: 119.5,\n lat: 29.97,\n group: '3',\n r: 160,\n },\n {\n lng: 120.52,\n lat: 33.93,\n group: '3',\n r: 75,\n },\n {\n lng: 121.3,\n lat: 27.4,\n group: '2',\n r: 80,\n },\n {\n lng: 119.5,\n lat: 29.97,\n group: '2',\n r: 80,\n },\n {\n lng: 120.52,\n lat: 33.93,\n group: '2',\n r: 50,\n },\n {\n lng: 121.3,\n lat: 27.4,\n group: '1',\n r: 40,\n },\n {\n lng: 119.5,\n lat: 29.97,\n group: '1',\n r: 40,\n },\n {\n lng: 120.52,\n lat: 33.93,\n group: '1',\n r: 25,\n },\n ];\n id: string;\n canvasOverlay: any;\n constructor(private parent: CustomBaiduMapComponent) {}\n\n ngOnInit(): void {}\n\n async ngOnChanges() {\n this.updateOverlay();\n // if ((this.parent as any).enable3D) {\n\n // } else {\n // this.parent.childInit({\n // id: this.id,\n // type: 'canvas',\n // update: this.updateCanvas,\n // });\n // }\n }\n\n async updateOverlay() {\n await this.parent.init$;\n this.remove();\n const canvas = this.getCanvas();\n this.addCanvasOverlay(canvas);\n }\n\n addCanvasOverlay(item: any) {\n if (item) {\n var pStart = new BMapGL.Point(item.start.lng, item.start.lat);\n var pEnd = new BMapGL.Point(item.end.lng, item.end.lat);\n var bounds = new BMapGL.Bounds(\n new BMapGL.Point(pStart.lng, pEnd.lat),\n new BMapGL.Point(pEnd.lng, pStart.lat),\n );\n this.canvasOverlay = new BMapGL.GroundOverlay(bounds, {\n type: 'canvas',\n url: item.canvas,\n opacity: 1,\n });\n this.parent.map.addOverlay(this.canvasOverlay);\n }\n // return canvasOverlay;\n }\n\n ngOnDestroy(): void {\n this.remove();\n // this.parent.deleteChild(this.id);\n }\n\n remove() {\n if (this.canvasOverlay) {\n this.parent.map.removeOverlay(this.canvasOverlay);\n this.canvasOverlay = null;\n }\n }\n\n getCanvas() {\n // const images = {};\n // if (this.groups?.length) {\n // for (const group of this.groups) {\n // if (group.image) {\n // images[group.image] = await this.loadImage(group.image);\n // }\n // }\n // }\n // console.log(this.data);\n if (this.data && this.data.length >= 3) {\n let startLng = 180;\n let startLat = 90;\n let endLng = -180;\n let endLat = -90;\n const data = this.data.map((record) => {\n const r = (+record.r * 180) / Math.PI / 6371.393;\n startLng = Math.min(startLng, +record.lng - r);\n startLat = Math.min(startLat, +record.lat - r);\n endLng = Math.max(endLng, +record.lng + r);\n endLat = Math.max(endLat, +record.lat + r);\n return { ...record, r };\n });\n const sharpness = this.sharpness || 1000;\n const multiple = Math.min(sharpness / (endLng - startLng), sharpness / (endLat - startLat));\n const c = document.createElement('canvas');\n c.width = Math.round((endLng - startLng) * multiple);\n c.height = Math.round((endLat - startLat) * multiple);\n const groups = {};\n data.forEach((record) => {\n const group = record.group;\n if (group) {\n let points: any[] = groups[group];\n if (!points) {\n points = [];\n groups[group] = points;\n }\n points.push({\n x: (+record.lng - startLng) * multiple,\n y: (endLat - +record.lat) * multiple,\n r: record.r * multiple,\n });\n }\n });\n this.groups.forEach((group) => {\n const points = groups[group.group];\n if (points?.length >= 3) {\n const ctx = c.getContext('2d');\n const p1 = points[0];\n const p2 = points[Math.floor(points.length / 2)];\n const p3 = points[points.length - 1];\n var gnt = ctx.createRadialGradient(p1.x, p1.y, 0, p1.x, p1.y, p1.r);\n // gnt.addColorStop(1, 'green');\n // gnt.addColorStop(0, 'green');\n gnt.addColorStop(1, group.shadowColor || 'green');\n gnt.addColorStop(0, 'rgba(0,0,0,0)');\n ctx.fillStyle = gnt;\n ctx.beginPath();\n ctx.arc(p1.x, p1.y, p1.r, 0, Math.PI * 2, true);\n ctx.closePath();\n ctx.fill();\n const getTangency = (p1, p2) => {\n const l = Math.sqrt(Math.pow(p2.x - p1.x, 2) + Math.pow(p2.y - p1.y, 2));\n return { x: p2.x + (p2.r * (p1.y - p2.y)) / l, y: p2.y + (p2.r * (p2.x - p1.x)) / l };\n };\n ctx.beginPath();\n let start = Math.atan((p2.x - p1.x) / (p1.y - p2.y));\n ctx.arc(p1.x, p1.y, p1.r, start - Math.PI, start, false);\n let t = getTangency(p1, p2);\n // ctx.lineTo(t.x, t.y);\n let t2 = getTangency(p2, p3);\n ctx.quadraticCurveTo(t.x, t.y, t2.x, t2.y);\n // ctx.lineTo(t.x, t.y);\n start = Math.atan((p3.x - p2.x) / (p2.y - p3.y));\n ctx.arc(p3.x, p3.y, p3.r, start, start + Math.PI, true);\n t = getTangency(p3, p2);\n t2 = getTangency(p2, p1);\n ctx.quadraticCurveTo(t.x, t.y, t2.x, t2.y);\n // ctx.lineTo(t.x, t.y);\n ctx.closePath();\n ctx.fillStyle = group.color || 'green';\n ctx.fill();\n ctx.lineWidth = group.borderWidth || 1;\n ctx.beginPath();\n ctx.arc(p1.x, p1.y, p1.r, 0, Math.PI * 2, true);\n ctx.closePath();\n ctx.strokeStyle = group.borderColor || 'green';\n ctx.stroke();\n // if (group.image && images[group.image]) {\n // const imageSize = p1.r * 0.8;\n // ctx.drawImage(images[group.image], p1.x - imageSize, p1.y - imageSize, imageSize * 2, imageSize * 2);\n // }\n }\n });\n // const points = this.data.map((record) => {\n // return {\n // x: (+record.lng - startLng) * multiple,\n // y: (endLat - +record.lat) * multiple,\n // r: record.r * multiple,\n // };\n // });\n // c.toBlob((blob)=>{\n // FileSaver.saveAs(blob,'typhoon.png')\n // })\n\n return {\n start: {\n lng: startLng,\n lat: startLat,\n },\n end: {\n lng: endLng,\n lat: endLat,\n },\n canvas: c,\n };\n }\n }\n\n // updateCanvas = (ctx: CanvasRenderingContext2D, pointToPixel: Function) => {\n // if (this.data && this.data.length >= 3) {\n // const data = this.data.map((record) => {\n // const r = (+record.r * 180) / Math.PI / 6371.393;\n // return { lat: +record.lat, lng: +record.lng, r, group: record.group };\n // });\n\n // const groups = {};\n // data.forEach((record) => {\n // const group = record.group;\n // if (group) {\n // let points: any[] = groups[group];\n // if (!points) {\n // points = [];\n // groups[group] = points;\n // }\n // const pixel = pointToPixel(record);\n // const pixel2 = pointToPixel({ lat: record.lat, lng: record.lng + record.r });\n // points.push({\n // x: pixel.x,\n // y: pixel.y,\n // r: pixel2.x - pixel.x,\n // });\n // }\n // });\n // this.groups.forEach((group) => {\n // const points = groups[group.group];\n // if (points?.length >= 3) {\n // const p1 = points[0];\n // const p2 = points[Math.floor(points.length / 2)];\n // const p3 = points[points.length - 1];\n // var gnt = ctx.createRadialGradient(p1.x, p1.y, 0, p1.x, p1.y, p1.r);\n\n // gnt.addColorStop(1, group.shadowColor || 'green');\n // gnt.addColorStop(0, 'rgba(0,0,0,0)');\n // ctx.fillStyle = gnt;\n // ctx.beginPath();\n // ctx.arc(p1.x, p1.y, p1.r, 0, Math.PI * 2, true);\n // ctx.closePath();\n // ctx.fill();\n // const getTangency = (p1, p2) => {\n // const l = Math.sqrt(Math.pow(p2.x - p1.x, 2) + Math.pow(p2.y - p1.y, 2));\n // return { x: p2.x + (p2.r * (p1.y - p2.y)) / l, y: p2.y + (p2.r * (p2.x - p1.x)) / l };\n // };\n // ctx.beginPath();\n // let start = Math.atan((p2.x - p1.x) / (p1.y - p2.y));\n // ctx.arc(p1.x, p1.y, p1.r, start - Math.PI, start, false);\n // let t = getTangency(p1, p2);\n // let t2 = getTangency(p2, p3);\n // ctx.quadraticCurveTo(t.x, t.y, t2.x, t2.y);\n // start = Math.atan((p3.x - p2.x) / (p2.y - p3.y));\n // ctx.arc(p3.x, p3.y, p3.r, start, start + Math.PI, true);\n // t = getTangency(p3, p2);\n // t2 = getTangency(p2, p1);\n // ctx.quadraticCurveTo(t.x, t.y, t2.x, t2.y);\n // ctx.closePath();\n // ctx.fillStyle = group.color || 'green';\n // ctx.fill();\n // ctx.lineWidth = group.borderWidth || 1;\n // ctx.beginPath();\n // ctx.arc(p1.x, p1.y, p1.r, 0, Math.PI * 2, true);\n // ctx.closePath();\n // ctx.strokeStyle = group.borderColor || 'green';\n // ctx.stroke();\n // }\n // });\n // }\n // };\n\n // loadImage(url: string): Promise<HTMLElement> {\n // return new Promise((resolve, reject) => {\n // const image = new Image();\n // image.src = url;\n // image.onload = () => {\n // resolve(image);\n // };\n // image.onerror = (e) => {\n // resolve(null);\n // };\n // });\n // }\n}\n","import { Inject, forwardRef, NgZone, OnInit, OnChanges, OnDestroy, Directive, SimpleChanges } from '@angular/core';\r\nimport { CustomBaiduMapComponent } from './custom-baidu-map.component';\r\n\r\n@Directive()\r\nexport abstract class BaseLayer implements OnInit, OnDestroy, OnChanges {\r\n inited: boolean;\r\n layers = [];\r\n constructor(protected parent: CustomBaiduMapComponent, protected zone: NgZone) {}\r\n ngOnInit(): void {\r\n this.zone.runOutsideAngular(() => {\r\n this.updateLayers();\r\n });\r\n }\r\n\r\n ngOnChanges(changes:SimpleChanges) {\r\n if (this.inited) {\r\n this.zone.runOutsideAngular(() => {\r\n this.updateData();\r\n });\r\n }\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.removeLayers();\r\n }\r\n\r\n async updateLayers() {\r\n await this.parent.init$;\r\n this.removeLayers();\r\n this.layers = this.createLayers();\r\n this.layers.forEach((layer) => {\r\n this.parent.addLayer(layer);\r\n });\r\n this.inited = true;\r\n this.updateData();\r\n }\r\n\r\n removeLayers() {\r\n if (this.layers.length) {\r\n this.layers.forEach((layer) => {\r\n this.parent.removeLayer(layer);\r\n });\r\n this.layers = [];\r\n }\r\n }\r\n\r\n abstract updateData(): void;\r\n\r\n abstract createLayers(): any[];\r\n}\r\n","import { v1 as uuid } from 'uuid';\r\nexport const getUUID = () => {\r\n return uuid().replace(/-/g, '');\r\n};\r\n","import {\n Component,\n EventEmitter,\n forwardRef,\n Inject,\n NgZone,\n OnChanges,\n OnDestroy,\n OnInit,\n SimpleChanges,\n ViewChild,\n} from '@angular/core';\nimport { Data, DataOutput, Property, Widget, Event, DataInput } from 'bbj-widget-base';\nimport { ParentContainerComponent } from '../../parent-container/parent-container.component';\nimport { SFArrayWidgetSchema } from '@delon/form';\nimport { getFontStyle } from '../../shared/util/style.util';\nimport { CustomBaiduMapComponent } from '../custom-baidu-map.component';\nimport { BaseLayer } from '../base-layer';\nimport { FileUrlService } from '../../shared/service/file-url.service';\nimport { NzContextMenuService } from 'ng-zorro-antd/dropdown';\nimport { ScrollDispatcher } from '@angular/cdk/scrolling';\nimport { getUUID } from '../../shared/util/base.util';\nimport { Subject } from 'rxjs';\nimport { takeUntil } from 'rxjs/operators';\n\ndeclare const mapvgl;\n\n@Component({\n selector: 'sc-baidu-marker-layer',\n templateUrl: './baidu-marker-layer.component.html',\n styleUrls: ['./baidu-marker-layer.component.less'],\n providers: [ScrollDispatcher], // 防止虚拟滚到导致浮层关闭\n})\n@Widget('标记层', {\n group: 'component',\n image: '',\n icon: '',\n hidden: true,\n})\nexport class BaiduMarkerLayerComponent extends BaseLayer implements OnInit, OnDestroy, OnChanges {\n @Property('', { min: 1, ui: { widget: 'myPicture', spanLabel: 0, spanControl: 24 } })\n iconUrl = 'assets/img/screen/marker.png';\n @Property('图标宽', { type: 'number' })\n iconWidth = 25;\n @Property('图标高', { type: 'number' })\n iconHeight = 38.25;\n @Property('图标偏移x', { type: 'number' })\n iconOffsetX = 0;\n @Property('图标偏移y', { type: 'number' })\n iconOffsetY = -19.125;\n // @Property('分组', {type: 'string'})\n // group = '';\n\n @Property('移至中心')\n toCenter: boolean = false;\n @Property('点聚合')\n enableMarkerClusterer: boolean = false;\n @Property('聚合最小直径', { type: 'number', ui: { visibleIf: { enableMarkerClusterer: [true] } } })\n clusterMinSize = 25;\n @Property('聚合最大直径', { type: 'number', ui: { visibleIf: { enableMarkerClusterer: [true] } } })\n clusterMaxSize = 40;\n @Property('聚合字体', { ui: { widget: 'myFont' } })\n clusterFont: any = {\n color: '#ffffff',\n size: 16,\n };\n @Property('聚合颜色', {\n ui: {\n widget: 'seriesColor',\n visibleIf: { enableMarkerClusterer: [true] },\n },\n })\n clusterGradient: string[];\n @Property('聚合最大级别', { type: 'number', ui: { visibleIf: { enableMarkerClusterer: [true] } } })\n clusterMaxZoom = 4;\n @Property('显示标签', { ui: { visibleIf: { enableMarkerClusterer: [false] } } })\n showLabel: boolean;\n @Property('标签显示缩放等级', { ui: { visibleIf: { showLabel: [true] } } })\n showLabelMinZoom: number;\n // @Property('标签底色', { ui: { widget: 'myColor', visibleIf: { showLabel: [true] } } })\n // labelBackground: string;\n @Property('标签字体', { ui: { widget: 'myFont', visibleIf: { showLabel: [true] } } })\n labelFont: any = {\n family: '',\n color: '#000000',\n weight: 'normal',\n size: 16,\n space: 0,\n lineHeight: 0,\n };\n @Property('描边颜色', {\n ui: {\n widget: 'myColor',\n },\n })\n stroke: string;\n @Property('描边粗细', { type: 'integer' })\n strokeWidth: number;\n @Property('阴影', { ui: { widget: 'myShadow' } })\n shadow: any = { color: '', X: 0, Y: 0, Z: 0 };\n @Property('标签偏移x', { ui: { widget: 'number', visibleIf: { showLabel: [true] } } })\n labelOffsetX: number;\n @Property('标签偏移y', { ui: { widget: 'number', visibleIf: { showLabel: [true] } } })\n labelOffsetY: number;\n @Property('选中放大')\n enlargeOnSelect: boolean;\n @Property('选中时放大倍数', { type: 'number' })\n selectedSize = 1.5;\n @Property('选中时地图缩放', { type: 'number' })\n selectedMapZoom: number;\n @Property('点击空白取消选中', { type: 'boolean', default: true })\n unselectOnClickBlank = true;\n @Property('标记分组', {\n type: 'array',\n title: '标记分组',\n maxItems: 10,\n items: {\n type: 'object',\n properties: {\n group: {\n type: 'string',\n title: '分组',\n },\n type: {\n title: '类型',\n type: 'string',\n enum: [\n {\n label: '图标',\n value: 'icon',\n },\n {\n label: '圆点',\n value: 'circle',\n },\n {\n label: '正方形',\n value: 'square',\n },\n {\n label: '波纹',\n value: 'wave',\n },\n {\n label: '扩散',\n value: 'bubble',\n },\n ],\n default: 'icon',\n },\n color: {\n type: 'string',\n title: '颜色',\n ui: { widget: 'myColor', visibleIf: { type: ['circle', 'square'] } },\n },\n size: {\n type: 'number',\n title: '尺寸',\n ui: { visibleIf: { type: ['circle', 'square', 'wave', 'bubble'] } },\n },\n imageUrl: {\n type: 'string',\n title: '图片',\n ui: {\n widget: 'myPicture',\n visibleIf: { type: ['icon'] },\n },\n },\n width: {\n type: 'number',\n title: '宽度',\n default: 19,\n ui: { visibleIf: { type: ['icon'] } },\n },\n height: {\n type: 'number',\n title: '高度',\n default: 25,\n ui: { visibleIf: { type: ['icon'] } },\n },\n XOffset: {\n type: 'number',\n title: 'X轴偏移',\n ui: { visibleIf: { type: ['icon'] } },\n },\n YOffset: {\n type: 'number',\n title: 'Y轴偏移',\n ui: { visibleIf: { type: ['icon'] } },\n },\n enableMarkerClusterer: {\n type: 'boolean',\n title: '是否聚合',\n ui: { visibleIf: { type: ['icon'] } },\n },\n },\n required: [],\n },\n ui: { grid: { arraySpan: 24 }, spanControl: 24 } as SFArrayWidgetSchema,\n })\n groups = [];\n @Data({\n properties: {\n id: { type: 'string', title: 'id' },\n address: { type: 'string', title: '地点' },\n information: { type: 'string', title: '信息' },\n group: { type: 'string', title: '标记分组' },\n lng: { type: 'number', title: '经度' },\n lat: { type: 'number', title: '纬度' },\n icon: { type: 'string', title: '图标' },\n },\n })\n _data: any[] = [\n {\n id: '1',\n address: '',\n information: '暂无信息',\n group: '',\n lng: '120.7',\n lat: '28',\n },\n ];\n // id: string;\n @DataOutput(['id', 'address', 'lng', 'lat'])\n @Event('选中值改变', {\n params: {\n properties: {\n id: { type: 'string', title: 'id' },\n address: { type: 'string', title: '地点' },\n lng: { type: 'number', title: '经度' },\n lat: { type: 'number', title: '纬度' },\n },\n },\n })\n makerClick = new EventEmitter();\n @DataInput('选中id')\n selectedId: string;\n @Event('点击', {\n params: {\n properties: {\n id: { type: 'string', title: 'id' },\n address: { type: 'string', title: '地点' },\n lng: { type: 'number', title: '经度' },\n lat: { type: 'number', title: '纬度' },\n },\n },\n })\n onClick = new EventEmitter();\n\n layers = [];\n inited: boolean;\n // defaultLayer: any;\n layerMap = {};\n clickData: any;\n clickTimeout: any;\n @ViewChild('menu')\n menu: any;\n subMarkers: any[];\n dataMap = {};\n groupData: {};\n lastSelect: any;\n currentSelectedId: string;\n textLayer: any;\n destroy$ = new Subject();\n constructor(\n protected parent: CustomBaiduMapComponent,\n protected zone: NgZone,\n private fileUrlService: FileUrlService,\n private nzContextMenuService: NzContextMenuService,\n ) {\n super(parent, zone);\n }\n\n ngOnInit(): void {\n super.ngOnInit();\n if (this.showLabel && this.showLabelMinZoom != null) {\n this.parent.zoomChange.pipe(takeUntil(this.destroy$)).subscribe((zoom) => {\n this.updateTextVisible(zoom);\n });\n }\n }\n\n ngOnChanges(changes: SimpleChanges) {\n if (this.inited) {\n if (changes._data) {\n this.zone.runOutsideAngular(() => {\n this.updateData();\n });\n }\n if (changes.selectedId) {\n if (this.selectedId != this.currentSelectedId) {\n this.select(this.selectedId, { move: true });\n }\n }\n }\n }\n\n ngOnDestroy(): void {\n super.ngOnDestroy();\n this.destroy$.next();\n this.destroy$.complete();\n }\n\n createLayers(): any[] {\n const layers = [];\n this.layerMap = {};\n const defaultLayer = this.createLayer();\n this.layerMap[''] = defaultLayer;\n layers.push(defaultLayer);\n if (this.groups?.length) {\n this.groups.forEach((group) => {\n if (group.group) {\n const layer = this.createLayer(group);\n this.layerMap[group.group] = layer;\n layers.push(layer);\n }\n });\n }\n if (!this.enableMarkerClusterer && this.showLabel) {\n const textOptions = {\n ...this.getTextOptions(this.labelFont),\n // color: '#fff',\n // fontFamily: 'Microsoft Yahei',\n // fontSize: 14,\n flat: false,\n collides: true,\n offset: [this.labelOffsetX || 0, this.labelOffsetY || 0],\n stroke: {\n color: this.stroke,\n },\n padding: [2, 2],\n margin: [0, 0],\n };\n if (this.stroke && this.stroke !== 'rgba(0,0,0,0)') {\n textOptions.stroke = { color: this.stroke };\n }\n if (this.strokeWidth) {\n textOptions.lineWidth = this.strokeWidth;\n }\n if (this.shadow) {\n textOptions.shadow = {\n color: this.shadow.color,\n blur: this.shadow.Z,\n offsetX: this.shadow.X,\n offsetY: this.shadow.Y,\n };\n }\n this.textLayer = new mapvgl.TextLayer(textOptions);\n if (this.showLabelMinZoom != null) {\n this.parent.init$.then(() => {\n const zoom = this.parent.map.getZoom();\n this.updateTextVisible(zoom);\n });\n }\n layers.push(this.textLayer);\n }\n return layers;\n }\n\n createLayer(group?: any) {\n let layer: any;\n const type = group?.type;\n if (type === 'circle' || type === 'square') {\n const options = {\n shape: type,\n color: group?.color || 'rgba(50, 50, 200, 1)',\n size: group?.size || 10,\n };\n this.addPickEvent(options);\n layer = new mapvgl.PointLayer(options);\n } else if (type === 'bubble' || type === 'wave') {\n const options = {\n type,\n color: group?.color || 'rgba(255, 0, 0, 1)',\n size: group?.size || 10,\n duration: 1,\n trail: 1,\n };\n this.addPickEvent(options);\n layer = new mapvgl.CircleLayer(options);\n } else {\n const iconOptions = this.getIconOptions(group);\n if (this.enableMarkerClusterer || group?.enableMarkerClusterer) {\n const options: any = {\n iconOptions,\n textOptions: this.getTextOptions(this.clusterFont),\n minSize: this.clusterMinSize || 25,\n maxSize: this.clusterMaxSize || 40,\n };\n if (this.clusterGradient?.length) {\n const gradient: any = {};\n gradient[0] = this.clusterGradient[0];\n this.clusterGradient.slice(1).forEach((g, i) => {\n gradient[(i + 1) / this.clusterGradient.length] = g;\n });\n options.gradient = gradient;\n }\n if (this.clusterMaxZoom != null) {\n options.maxZoom = this.clusterMaxZoom;\n }\n this.addPickEvent(options);\n layer = new mapvgl.ClusterLayer(options);\n } else {\n this.addPickEvent(iconOptions);\n layer = new mapvgl.IconLayer(iconOptions);\n }\n }\n return layer;\n }\n\n updateTextVisible(zoom?: number) {\n if (this.textLayer) {\n if (zoom >= this.showLabelMinZoom) {\n this.textLayer.show();\n } else {\n this.textLayer.hide();\n }\n }\n }\n\n updateData() {\n this.dataMap = {};\n if (this.toCenter && this._data.length > 0) {\n let maxLng = -180;\n let minLng = 180;\n let maxLat = -90;\n let minLat = 90;\n this._data.forEach((res) => {\n maxLng = Math.max(maxLng, res.lng);\n minLng = Math.min(minLng, res.lng);\n maxLat = Math.max(maxLat, res.lat);\n minLat = Math.min(minLat, res.lat);\n });\n this.parent.setRectCenterAndZoom(minLng, maxLng, minLat, maxLat);\n }\n const groupData = {};\n this.groupData = groupData;\n const textData = [];\n const groups = Object.keys(this.layerMap);\n groups.forEach((group) => {\n groupData[group] = [];\n });\n // const defaultData = [];\n this._data.forEach((record) => {\n let groupName = record.group;\n if (groupName == null || this.layerMap[groupName] == null) {\n groupName = '';\n }\n let id = record.id_value || record.id;\n if (id == null || id == '') {\n id = getUUID();\n }\n const item: any = {\n geometry: {\n type: 'Point',\n coordinates: [record.lng, record.lat],\n },\n properties: {\n text: record.address,\n id,\n group: groupName,\n raw: record,\n },\n };\n // MapVGL的bug,ClusterLayer的iconOptions无效,只能通过properties设置\n\n const layer = this.layerMap[groupName];\n if (layer != null && layer instanceof mapvgl.ClusterLayer) {\n const options = layer.getOptions();\n if (options.iconOptions) {\n const { height, width, offset, icon } = options.iconOptions;\n item.properties = { height, width, offset, icon, ...item.properties };\n }\n }\n if (record.icon) {\n item.properties.icon = this.fileUrlService.getUrl(record.icon);\n }\n // if (this.selectedId && this.selectedId == id) {\n // this.updateSize(item, 1.5);\n // this.lastSelect = item;\n // }\n groupData[groupName].push(item);\n this.dataMap[item.properties.id] = item;\n if (this.textLayer) {\n textData.push(item);\n }\n });\n if (this.selectedId) {\n this.select(this.selectedId, { move: this.selectedId != this.currentSelectedId, resetLayer: false, force: true });\n }\n groups.forEach((group) => {\n const layer = this.layerMap[group];\n const data = groupData[group];\n layer.setData(data);\n });\n if (this.textLayer) {\n this.textLayer.setData(textData);\n }\n }\n\n getIconOptions(group: any) {\n let icon = this.iconUrl || 'assets/img/screen/marker.png';\n let height = this.iconHeight || 38.25;\n let width = this.iconWidth || 25;\n let offsetX = this.iconOffsetX == null ? 0 : this.iconOffsetX;\n let offsetY = this.iconOffsetY == null ? -height / 2 : this.iconOffsetY;\n if (group && group.imageUrl) {\n icon = this.fileUrlService.getUrl(group.imageUrl);\n width = group.width || width;\n height = group.height || height;\n offsetX = group.XOffset != null ? group.XOffset : 0;\n offsetY = group.YOffset != null ? group.YOffset : -height / 2;\n }\n const iconOptions: any = {\n icon,\n width,\n height,\n offset: [offsetX, offsetY],\n };\n return iconOptions;\n }\n\n getTextOptions(font: any) {\n const textOptions: any = {};\n if (font) {\n if (font.size) textOptions.fontSize = font.size;\n if (font.family) textOptions.fontFamily = font.family;\n if (font.color) textOptions.color = font.color;\n // switch (font.weight) {\n // case 'lighter':\n // textOptions.lineWidth = 1;\n // break;\n // case 'normal':\n // textOptions.lineWidth = 2;\n // break;\n // case 'bold':\n // textOptions.lineWidth = 3;\n // break;\n // case 'bolder':\n // textOptions.lineWidth = 4;\n // break;\n // }\n }\n return textOptions;\n }\n\n addPickEvent(options: any) {\n options.enablePicked = true;\n options.onClick = ({ dataItem }) => {\n // 每个图层都会触发一次click事件,如果每个图层都没有点中标记点,传出null\n if (dataItem) {\n this.clickData = dataItem;\n }\n if (this.unselectOnClickBlank !== false && this.clickTimeout == null) {\n this.clickTimeout = setTimeout(() => {\n if (this.clickData == null) {\n this.selectedId = null;\n this.select(null);\n }\n this.clickTimeout = null;\n this.clickData = null;\n this.subMarkers = null;\n });\n }\n if (dataItem) {\n if (dataItem.type === 'Feature') {\n const coordinates = dataItem.geometry.coordinates;\n this.parent.setCenterAndZoom(coordinates[0], coordinates[1], this.parent.map.getZoom() + 2);\n } else {\n const data = dataItem.properties.raw;\n if (data) {\n this.selectedId = dataItem.properties.id;\n this.select(dataItem.properties.id);\n this.zone.run(() => {\n this.onClick.emit({ ...data, id: data.id_value || data.id });\n });\n }\n }\n }\n };\n if (this.parent.showType === 'mouseover') {\n let infoWindow = null;\n let infoWindowData = null;\n options.onMousemove = ({ dataItem }) => {\n const data = dataItem != null ? dataItem.properties.raw : null;\n if (infoWindow != null && infoWindowData != data) {\n infoWindow.close();\n infoWindow = null;\n }\n if (data && data.information && infoWindow == null) {\n infoWindowData = data;\n infoWindow = this.parent.openInfoWindow(data, data.lng, data.lat);\n }\n };\n }\n }\n\n select(id: any, options: { move?: boolean; resetLayer?: boolean; force?: boolean } = {}) {\n if (id != this.currentSelectedId || options.force) {\n let item: any;\n if (id != null && id !== '') {\n item = this.dataMap[id];\n // 如果找不到数据,可能是数据还没加载,等数据加载了再执行\n if (item == null) {\n return;\n }\n }\n this.currentSelectedId = id;\n let lastSelectGroup: string;\n let currentSelectGroup: string;\n let selectedData: any;\n if (this.lastSelect) {\n lastSelectGroup = this.lastSelect.properties.group;\n this.updateSize(this.lastSelect, 1);\n this.lastSelect = null;\n }\n if (item) {\n currentSelectGroup = item.properties.group;\n this.updateSize(item, this.selectedSize ?? 1.5);\n this.lastSelect = item;\n selectedData = item.properties.raw;\n if (options.move) {\n const layer = this.layerMap[currentSelectGroup];\n let zoom = this.parent.map.getZoom();\n if (this.selectedMapZoom) {\n zoom = this.selectedMapZoom;\n } else if (\n layer instanceof mapvgl.ClusterLayer &&\n this.clusterMaxZoom != null &&\n Math.floor(zoom) <= this.clusterMaxZoom\n ) {\n zoom = this.clusterMaxZoom + 2;\n }\n this.parent.setCenterAndZoom(selectedData.lng, selectedData.lat, zoom);\n }\n\n if (selectedData.information && this.parent.showType !== 'mouseover') {\n // 防止其他图层将信息窗口关闭\n setTimeout(() => {\n this.parent.openInfoWindow(selectedData, selectedData.lng, selectedData.lat);\n });\n }\n } else {\n selectedData = {};\n }\n if (options.resetLayer !== false) {\n if (currentSelectGroup != null) {\n this.resetLayerData(currentSelectGroup);\n }\n if (lastSelectGroup != null && lastSelectGroup !== currentSelectGroup) {\n this.resetLayerData(lastSelectGroup);\n }\n }\n // 如果选中的id找不到对应数据,可能是数据还没加载,\n if (id == null || item != null) {\n this.zone.run(() => {\n this.makerClick.emit({ ...selectedData, id: selectedData.id_value || selectedData.id });\n });\n }\n }\n }\n\n resetLayerData(group: string) {\n const layer = this.layerMap[group];\n const data = this.groupData[group];\n if (layer && data) {\n layer.setData(data);\n }\n }\n\n updateSize(item: any, scale: number) {\n if (item && this.enlargeOnSelect) {\n const layer = this.layerMap[item.properties.group];\n let options: any;\n\n if (layer instanceof mapvgl.ClusterLayer) {\n options = layer.getOptions().iconOptions;\n } else {\n options = layer.getOptions();\n }\n const { height, width, offset } = options;\n item.properties.height = height * scale;\n item.properties.width = width * scale;\n if (item.properties.offset) {\n item.properties.offset = [offset[0] * scale, offset[1] * scale];\n }\n }\n }\n}\n","import { Component, forwardRef, Inject, NgZone, OnChanges, OnDestroy, OnInit } from '@angular/core';\r\nimport { SFArrayWidgetSchema } from '@delon/form';\r\nimport { Data, Property, Widget } from 'bbj-widget-base';\r\nimport { BaseLayer } from '../base-layer';\r\nimport { CustomBaiduMapComponent } from '../custom-baidu-map.component';\r\n\r\ndeclare const mapvgl;\r\n\r\n@Component({\r\n selector: 'sc-baidu-polyline-layer',\r\n templateUrl: './baidu-polyline-layer.component.html',\r\n styleUrls: ['./baidu-polyline-layer.component.less'],\r\n})\r\n@Widget('折线层', {\r\n group: 'component',\r\n image: '',\r\n icon: '',\r\n hidden: true,\r\n})\r\nexport class BaiduPolylineLayerComponent extends BaseLayer implements OnInit, OnDestroy, OnChanges {\r\n @Property('线条宽度', {\r\n ui: { widget: 'myRange', min: 1, max: 40, step: 1 },\r\n })\r\n strokeWeight = 4;\r\n @Property('线条颜色', {\r\n type: 'string',\r\n ui: {\r\n widget: 'myColor',\r\n },\r\n })\r\n strokeColor = 'rgba(242,213,173,1)';\r\n @Property('线条类型', {\r\n ui: { widget: 'select' },\r\n enum: [\r\n { label: '实线', value: 'solid' },\r\n { label: '虚线', value: 'dashed' },\r\n ],\r\n })\r\n strokeStyle = 'solid';\r\n @Property('虚线间隔', { type: 'number', ui: { visibleIf: { strokeStyle: ['solid'] } } })\r\n dashInterval = 10;\r\n @Property('动画')\r\n animation: boolean;\r\n @Property('动画线段长度', {\r\n type: 'number',\r\n ui: { widget: 'number', visibleIf: { animation: [true] } },\r\n })\r\n interval = 0.1;\r\n @Property('动画循环时间', { type: 'number', ui: { widget: 'number', visibleIf: { animation: [true] } } })\r\n duration = 2;\r\n @Property('拖尾长度', { type: 'number', ui: { widget: 'number', visibleIf: { animation: [true] } } })\r\n trailLength = 0.5;\r\n @Property('图层', {\r\n type: 'array',\r\n maxItems: 10,\r\n items: {\r\n type: 'object',\r\n properties: {\r\n layer: {\r\n type: 'string',\r\n title: '图层',\r\n },\r\n color: {\r\n type: 'string',\r\n title: '颜色',\r\n ui: { widget: 'myColor' },\r\n },\r\n },\r\n required: [],\r\n },\r\n ui: { grid: { arraySpan: 24 }, spanControl: 24 } as SFArrayWidgetSchema,\r\n })\r\n layerOptions = [];\r\n @Data({\r\n properties: {\r\n layer: { type: 'string', title: '图层' },\r\n lng: { type: 'number', title: '经度' },\r\n lat: { type: 'number', title: '纬度' },\r\n group: { type: 'string', title: '线编号' },\r\n },\r\n })\r\n _data: any[] = [\r\n {\r\n group: 'x',\r\n lng: '120.7',\r\n lat: '28',\r\n },\r\n {\r\n group: 'x',\r\n lng: '120.71',\r\n lat: '28.01',\r\n },\r\n {\r\n group: 'x',\r\n lng: '120.79',\r\n lat: '28.1',\r\n },\r\n {\r\n group: 'y',\r\n lng: '120.72',\r\n lat: '28.02',\r\n },\r\n {\r\n group: 'y',\r\n lng: '120.73',\r\n lat: '28.03',\r\n },\r\n {\r\n group: 'y',\r\n lng: '120.81',\r\n lat: '28.12',\r\n },\r\n ];\r\n id: string;\r\n // layer: any;\r\n layerMap: any = {};\r\n\r\n constructor(protected parent: CustomBaiduMapComponent, protected zone: NgZone) {\r\n super(parent, zone);\r\n }\r\n\r\n // ngOnChanges() {\r\n // this.parent.childInit({\r\n // id: this.id,\r\n // strokeWeight: this.strokeWeight,\r\n // strokeColor: this.strokeColor,\r\n // strokeStyle: this.strokeStyle,\r\n // type: 'polyline',\r\n // item: this._data,\r\n // });\r\n // }\r\n\r\n // ngOnInit(): void {}\r\n\r\n // ngOnDestroy(): void {\r\n // this.parent.deleteChild(this.id);\r\n // }\r\n\r\n updateData(): void {\r\n const dataMap = {};\r\n\r\n const layerLineMap = {};\r\n this._data.forEach((record) => {\r\n let layer = record.layer;\r\n if (!this.layerMap[layer]) {\r\n layer = '';\r\n }\r\n let data = dataMap[layer];\r\n let lineMap = layerLineMap[layer];\r\n if (!data) {\r\n data = [];\r\n lineMap = {};\r\n dataMap[layer] = data;\r\n layerLineMap[layer] = lineMap;\r\n }\r\n let group = record.group;\r\n if (group == null) {\r\n group = '';\r\n }\r\n let line = lineMap[group];\r\n if (line == null) {\r\n line = {\r\n geometry: {\r\n type: 'LineString',\r\n coordinates: [],\r\n },\r\n };\r\n lineMap[group] = line;\r\n data.push(line);\r\n }\r\n\r\n line.geometry.coordinates.push([record.lng, record.lat]);\r\n });\r\n Object.keys(this.layerMap).forEach((key) => {\r\n const layer = this.layerMap[key];\r\n const data = dataMap[key] || [];\r\n layer.setData(data);\r\n });\r\n }\r\n\r\n createLayers(): any[] {\r\n const layers = [];\r\n this.layerMap = {};\r\n const defaultLayer = this.createLayer();\r\n this.layerMap[''] = defaultLayer;\r\n layers.push(defaultLayer);\r\n if (this.layerOptions?.length) {\r\n this.layerOptions.forEach((options) => {\r\n if (options.layer) {\r\n const layer = this.createLayer(options);\r\n this.layerMap[options.layer] = layer;\r\n layers.push(layer);\r\n }\r\n });\r\n }\r\n return layers;\r\n // const options: any = {\r\n // color: this.strokeColor,\r\n // width: this.strokeWeight,\r\n // lineCap: 'round',\r\n // animation: this.animation,\r\n // interval: this.interval,\r\n // duration: this.duration,\r\n // trailLength: this.trailLength,\r\n // style: 'arrow',\r\n // styleOptions: {\r\n // color: '#fff',\r\n // width: 10,\r\n // },\r\n // // blend: 'lighter'\r\n // };\r\n // if (this.strokeStyle === 'dashed') {\r\n // const dashInterval = this.dashInterval || 10;\r\n // options.dashArray = [dashInterval, dashInterval];\r\n // }\r\n // this.layer = new mapvgl.LineLayer(options);\r\n // return [this.layer];\r\n }\r\n\r\n createLayer(layerOptions?: any) {\r\n const options: any = {\r\n color: this.strokeColor,\r\n width: this.strokeWeight,\r\n lineCap: 'round',\r\n animation: this.animation,\r\n interval: this.interval,\r\n duration: this.duration,\r\n trailLength: this.trailLength,\r\n // style: 'arrow',\r\n // styleOptions: {\r\n // color: '#fff',\r\n // width: 10,\r\n // },\r\n blend: 'lighter'\r\n };\r\n if (layerOptions) {\r\n if (layerOptions.color) {\r\n options.color = layerOptions.color;\r\n }\r\n }\r\n if (this.strokeStyle === 'dashed') {\r\n const dashInterval = this.dashInterval || 10;\r\n options.dashArray = [dashInterval, dashInterval];\r\n }\r\n const layer = new mapvgl.LineLayer(options);\r\n return layer;\r\n }\r\n}\r\n","import { Component, NgZone, OnInit } from '@angular/core';\nimport { Data, Property, Widget } from 'bbj-widget-base';\nimport { BaseLayer } from '../base-layer';\nimport { CustomBaiduMapComponent } from '../custom-baidu-map.component';\n\ndeclare const mapvgl;\nconst EARTH_RADIUS = 6371.393;\n\n@Component({\n selector: 'sc-typhoon-area-layer',\n templateUrl: './typhoon-area-layer.component.html',\n styleUrls: ['./typhoon-area-layer.component.less'],\n})\n@Widget('风圈', {\n group: 'component',\n hidden: true,\n})\nexport class TyphoonAreaLayerComponent extends BaseLayer implements OnInit {\n @Property('描边颜色', { ui: { widget: 'myColor' } })\n lineColor = 'rgba(238,160,29,0.8)';\n @Property('描边宽度', { type: 'number' })\n lineWidth = 2;\n @Property('填充颜色', { ui: { widget: 'myColor' } })\n fillColor = 'rgba(238,160,29,0.3)';\n @Data({\n properties: {\n lng: { type: 'number', title: '中心经度' },\n lat: { type: 'number', title: '中心纬度' },\n nw: { type: 'number', title: '西北半径' },\n ne: { type: 'number', title: '东北半径' },\n sw: { type: 'number', title: '西南半径' },\n se: { type: 'number', title: '东南半径' },\n },\n })\n data: any[] = [\n {\n lng: 144.7,\n lat: 38.9,\n nw: 50,\n ne: 100,\n sw: 150,\n se: 200,\n },\n ];\n layer: any;\n constructor(protected parent: CustomBaiduMapComponent, protected zone: NgZone) {\n super(parent, zone);\n }\n\n createLayers(): any[] {\n this.layer = new mapvgl.PolygonLayer({\n lineColor: this.lineColor,\n lineWidth: this.lineWidth,\n fillColor: this.fillColor,\n renderOrder: -1,\n });\n return [this.layer];\n }\n\n updateData(): void {\n const data = [];\n this.data.forEach((r) => {\n var kk = this.getTF([+r.lng, +r.lat], +r.ne, +r.se, +r.sw, +r.nw);\n data.push({\n geometry: {\n type: 'Polygon',\n coordinates: [kk],\n },\n });\n });\n this.layer.setData(data);\n }\n\n getTF(lat, ne, se, sw, nw) {\n // 求出方位半径方向上弧形经纬度\n const getPoints = (center, cradius, startAngle) => {\n // l=EARTH_RADIUS*dy/180*Math.PI\n const radius = (cradius * 180) / EARTH_RADIUS / Math.PI;\n // let radius = cradius / 90;\n let pointNum = 90;\n let endAngle = startAngle + Math.PI / 2;\n let points = [];\n for (var i = 0; i <= pointNum; i++) {\n const angle = startAngle + ((endAngle - startAngle) * i) / pointNum;\n const x = center[0] + (radius * Math.cos(angle)) / Math.abs(Math.cos((center[1] * Math.PI) / 180));\n const y = center[1] + radius * Math.sin(angle);\n points.push([x, y]);\n }\n return points;\n };\n\n let r7Ne = getPoints(lat, ne, 0);\n let r7Nw = getPoints(lat, nw, Math.PI / 2);\n let r7Sw = getPoints(lat, sw, Math.PI);\n let r7Se = getPoints(lat, se, (Math.PI * 3) / 2);\n\n return [...r7Ne, ...r7Nw, ...r7Sw, ...r7Se];\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { CustomBaiduMapComponent } from './custom-baidu-map.component';\nimport { WidgetBaseModule, WidgetService } from 'bbj-widget-base';\nimport { WindLayerComponent } from './wind-layer/wind-layer.component';\nimport { BaiduMarkerLayerComponent } from './baidu-marker-layer/baidu-marker-layer.component';\nimport { BaiduPolylineLayerComponent } from './baidu-polyline-layer/baidu-polyline-layer.component';\nimport { NzDropDownModule } from 'ng-zorro-antd/dropdown';\nimport { NzNoAnimationModule } from 'ng-zorro-antd/core/no-animation';\nimport { ScrollingModule } from '@angular/cdk/scrolling';\nimport { NzRadioModule } from 'ng-zorro-antd/radio';\nimport { FormsModule } from '@angular/forms';\nimport { TyphoonAreaLayerComponent } from './typhoon-area-layer/typhoon-area-layer.component';\n\n@NgModule({\n declarations: [\n CustomBaiduMapComponent,\n BaiduMarkerLayerComponent,\n BaiduPolylineLayerComponent,\n WindLayerComponent,\n TyphoonAreaLayerComponent,\n ],\n imports: [\n CommonModule,\n WidgetBaseModule,\n NzDropDownModule,\n NzNoAnimationModule,\n ScrollingModule,\n NzRadioModule,\n FormsModule,\n ],\n})\nexport class CustomBaiduMapModule {\n constructor(widgetService: WidgetService) {\n widgetService.register(CustomBaiduMapComponent, { scaleContent: false });\n widgetService.register(BaiduMarkerLayerComponent);\n widgetService.register(BaiduPolylineLayerComponent);\n widgetService.register(WindLayerComponent);\n widgetService.register(TyphoonAreaLayerComponent);\n }\n}\n","export const icons = [\r\n 'icondingwei1',\r\n 'iconxialakuang',\r\n 'icontianjiazu',\r\n 'iconguanlianshuxing',\r\n 'iconbianzu401',\r\n 'iconanzhuang',\r\n 'iconbaojing',\r\n 'iconbuguifan',\r\n 'iconbianzu621',\r\n 'iconbumen',\r\n 'iconbianzu6',\r\n 'iconbianzu3311',\r\n 'icondaohang',\r\n 'iconbianzu111',\r\n 'iconditu2',\r\n 'iconfuzeren',\r\n 'iconfuzhi1',\r\n 'icongengduo1',\r\n 'iconbuguifanjiashi',\r\n 'iconfadianji',\r\n 'iconbianzu33xiawu42347',\r\n 'iconche',\r\n 'iconguanli',\r\n 'icondukaqi',\r\n 'iconhulian1',\r\n 'iconhoutai',\r\n 'icondianhua2',\r\n 'iconliangqizuozhanjianting',\r\n 'iconguanggao',\r\n 'iconkongqijinghua',\r\n 'iconjuleledaohang',\r\n 'iconluxiang1',\r\n 'iconchouti1',\r\n 'icongerenxinxilan',\r\n 'iconqiqiu',\r\n 'iconpihuating',\r\n 'iconkulian',\r\n 'iconhulianxiawu35716',\r\n 'iconguiji',\r\n 'iconrenyuan1',\r\n 'iconnongye',\r\n 'iconremen',\r\n 'iconshajunshebei',\r\n 'iconnengyuan1',\r\n 'iconshezhixiawu20722',\r\n 'iconshujuyuan',\r\n 'iconxiangpiting',\r\n 'iconlajitong1',\r\n 'iconjiaocheng',\r\n 'icontuichu2',\r\n 'iconweifanggaizao',\r\n 'iconxiaodudu',\r\n 'iconxiaodu1',\r\n 'iconriqi',\r\n 'iconxiaofang',\r\n 'iconwurenji',\r\n 'icontanzhaodengshijian',\r\n 'iconquanxian',\r\n 'iconxiaodu2',\r\n 'iconbumenxiawu14836',\r\n 'iconqiche',\r\n 'iconwulianwang',\r\n 'iconxiaoqu',\r\n 'iconxingzhuangjiehe1',\r\n 'iconxunjian1',\r\n 'iconyangan',\r\n 'iconxinxixiugai',\r\n 'iconyangan1',\r\n 'iconxinshuai',\r\n 'iconzhihang1',\r\n 'iconxiaolian',\r\n 'iconxieya',\r\n 'iconLEDTrackLight-02',\r\n 'iconzhaomingdeng',\r\n 'iconzhangpeng',\r\n 'iconyouhuiquanquanmian',\r\n 'iconicon_gouwu1',\r\n 'iconLedCleanEnergy',\r\n 'iconicon_diannao1',\r\n 'iconled2',\r\n 'iconzhihang2',\r\n 'iconzhineng',\r\n 'iconzhihang',\r\n 'iconjindu',\r\n 'iconhoutui',\r\n 'iconguanbi1',\r\n 'iconhulian',\r\n 'iconkefu',\r\n 'iconkuaidi',\r\n 'iconlianjie',\r\n 'iconkefurexian',\r\n 'iconliuchengjiedian',\r\n 'iconmengjiangnan',\r\n 'iconmoxing',\r\n 'iconqunyou',\r\n 'iconrenyuanguanli',\r\n 'iconqingchuhuancun3x1',\r\n 'iconrenyuanjiegou',\r\n 'iconrongyu',\r\n 'iconshangpin',\r\n 'iconsaomiaohongbao',\r\n 'iconsaoyisao',\r\n 'iconshebei',\r\n 'iconshenghuo',\r\n 'iconshexiang',\r\n 'icontianjia',\r\n 'icontuichubeifen2',\r\n 'icontishi',\r\n 'iconshexiangtou',\r\n 'iconshijiandefuben',\r\n 'iconsoucha',\r\n 'iconxiuxi1',\r\n 'iconxuanze',\r\n 'iconyoutui',\r\n 'iconyonghu',\r\n 'iconzhuanyi',\r\n 'iconicon_diannao',\r\n 'iconwenduji',\r\n 'iconicon_dengdaicaiji',\r\n 'iconzhihuinongye',\r\n 'iconsousuo1',\r\n 'iconicon_neirongjilu',\r\n 'iconicon_ppt',\r\n 'iconshuidi',\r\n 'iconicon_word',\r\n 'iconicon_txt',\r\n 'iconwenjiansoucha',\r\n 'iconwodedianzan1',\r\n 'iconyanganjiankong',\r\n 'iconzhinenglajitong',\r\n 'iconwuliu',\r\n 'iconGroup2',\r\n 'iconicon_gouwu',\r\n 'iconxunjian',\r\n 'iconyouhuiquan',\r\n 'iconyinhangka',\r\n 'iconwodepinglun1',\r\n 'iconGroup2beifen2',\r\n 'iconicon_zhuye',\r\n 'iconwangluo',\r\n 'iconbanbenhao1',\r\n 'iconbianzu11',\r\n 'iconbianzu22',\r\n 'iconbianzu12',\r\n 'iconbianzu13',\r\n 'iconchukou',\r\n 'iconbianzu361',\r\n 'icondaima',\r\n 'iconbianzu39',\r\n 'icondajian',\r\n 'icondiannao',\r\n 'icondenglu',\r\n 'iconbianzu381',\r\n 'iconfangan',\r\n 'icongengxin',\r\n 'icongenghuantouxiang1',\r\n 'icongouwuche',\r\n 'iconguangbo',\r\n 'iconcaijian',\r\n 'iconbaocun',\r\n 'iconbianji',\r\n 'iconbeijing',\r\n 'icondian',\r\n 'iconbukejian',\r\n 'iconfuzhi',\r\n 'iconkejian',\r\n 'iconfangwen',\r\n 'iconguanbi',\r\n 'iconjia',\r\n 'iconlajitong2',\r\n 'iconshangyibu',\r\n 'iconren',\r\n 'iconshangchuan',\r\n 'iconsshanchu',\r\n 'iconshijian',\r\n 'iconsousuo',\r\n 'iconsuo',\r\n 'iconsuoding',\r\n 'iconmokuai',\r\n 'icontexiao',\r\n 'icontubiao',\r\n 'iconwenzi',\r\n 'iconwenjianjia',\r\n 'icontianjiaxuanxiang',\r\n 'iconxiala',\r\n 'iconkaisuo',\r\n 'iconxiayibu',\r\n 'icontupian',\r\n 'iconsxingzhuang',\r\n 'iconxiuxi',\r\n 'iconzhinanzhen',\r\n 'iconyulan',\r\n 'iconstuichu',\r\n 'iconyinle',\r\n 'iconyun',\r\n 'iconzhinanzhen',\r\n];\r\n","import { Component, EventEmitter, OnChanges, OnInit, SimpleChanges } from '@angular/core';\nimport { DataOutput, Property, Widget } from 'bbj-widget-base';\nimport { NzMessageService } from 'ng-zorro-antd/message';\nimport { Observable, Observer } from 'rxjs';\nimport { NzUploadChangeParam, NzUploadFile } from 'ng-zorro-antd/upload';\n\n@Component({\n selector: 'sc-upload',\n templateUrl: './upload.component.html',\n styleUrls: ['./upload.component.less'],\n})\n@Widget('文件上传', {\n group: 'component',\n image: 'assets/img/screen/file-upload.png',\n icon: 'icontubiao',\n})\nexport class UploadComponent implements OnInit, OnChanges {\n @Property('上传样式', {\n type: 'string',\n ui: {\n widget: 'select',\n },\n enum: [\n { label: '经典', value: 'classics' },\n { label: '头像', value: 'portrait' },\n { label: '拖拽', value: 'drag' },\n ],\n })\n style = 'classics';\n listType = '';\n class: any = {};\n showUploadList = true;\n loading = false;\n avatarUrl?: string;\n type = '';\n @DataOutput('值')\n valueChange = new EventEmitter<any>();\n constructor(private msg: NzMessageService) {}\n handleChange(info: NzUploadChangeParam) {\n const status = info.file.status;\n if (status === 'done') {\n this.msg.success(`${info.file.name} 上传成功`);\n this.valueChange.emit(info.file.response);\n if (this.style === 'portrait') {\n this.getBase64(info.file.originFileObj, (img: string) => {\n this.loading = false;\n this.avatarUrl = img;\n });\n }\n } else if (status === 'error') {\n this.msg.error(`${info.file.name} 上传失败`);\n this.loading = false;\n } else if (status === 'uploading') {\n this.loading = true;\n }\n }\n private getBase64(img: File, callback: (img: string) => void): void {\n const reader = new FileReader();\n reader.addEventListener('load', () => callback(reader.result.toString()));\n reader.readAsDataURL(img);\n }\n ngOnInit(): void {}\n ngOnChanges(changes: SimpleChanges): void {\n switch (this.style) {\n case 'portrait':\n this.listType = 'picture-card';\n this.showUploadList = false;\n this.class.width = '128px';\n this.class.height = '128px';\n this.type = '';\n break;\n case 'drag':\n this.type = 'drag';\n this.listType = '';\n this.showUploadList = true;\n this.class.width = '';\n this.class.height = '';\n break;\n default:\n this.type = '';\n this.listType = 'text';\n this.showUploadList = true;\n this.class.width = '';\n this.class.height = '';\n break;\n }\n }\n beforeUpload = (file: NzUploadFile, _fileList: NzUploadFile[]) => {\n if (this.style !== 'portrait') {\n return null;\n }\n return new Observable((observer: Observer<boolean>) => {\n const isJpgOrPng = file.type === 'image/jpeg' || file.type === 'image/png';\n if (!isJpgOrPng) {\n this.msg.error('只能上传图片');\n observer.complete();\n return;\n }\n const isLt2M = file.size / 1024 / 1024 < 2;\n if (!isLt2M) {\n this.msg.error('图片要小于2M');\n observer.complete();\n return;\n }\n observer.next(isJpgOrPng && isLt2M);\n observer.complete();\n });\n };\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { UploadComponent } from './upload.component';\nimport {WidgetBaseModule, WidgetService} from 'bbj-widget-base';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\nimport { NzUploadModule } from 'ng-zorro-antd/upload';\nimport { NzButtonModule } from 'ng-zorro-antd/button';\n\n\n\n@NgModule({\n declarations: [UploadComponent],\n imports: [CommonModule, WidgetBaseModule,NzIconModule,NzUploadModule,NzButtonModule],\n})\nexport class UploadModule {\n constructor(widgetService: WidgetService) {\n widgetService.register(UploadComponent);\n }\n}\n","import { Component, OnChanges, OnInit, SimpleChanges } from '@angular/core';\nimport { CustomExport, Data, DataSchema, Property, Widget } from 'bbj-widget-base';\nimport { SFArrayWidgetSchema, SFSchema, SFStringWidgetSchema, SFUISchema } from '@delon/form';\n\n@Component({\n selector: 'sc-cross-table',\n templateUrl: './cross-table.component.html',\n styleUrls: ['./cross-table.component.less'],\n})\n@Widget('交叉表格', { group: 'table', icon: 'icontubiao', image: '/assets/img/screen/cross-table.png' })\nexport class CrossTableComponent implements OnInit, OnChanges, CustomExport {\n @Property('条数/页', { ui: { widget: 'myRange', min: 1, max: 100, step: 1 } })\n pageSize = 10;\n @Property('表头背景', {\n ui: {\n widget: 'myColor',\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],\n },\n })\n theadBackground = '#fafafa';\n @Property('表头字体', { ui: { widget: 'myFont' } })\n headFont: any = { family: '', color: '#222222', weight: 'normal', size: 12, space: 0, lineHeight: 2 };\n @Property('内容对齐', {\n type: 'string',\n ui: {\n widget: 'select',\n },\n enum: [\n { label: '左对齐', value: 'left' },\n { label: '右对齐', value: 'right' },\n { label: '居中', value: 'center' },\n ],\n })\n contentAlign = 'center';\n @Property('表格背景', {\n ui: {\n widget: 'myColor',\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],\n },\n })\n tbodyBackground = '#fafafa';\n @Property('显示边框', {\n type: 'boolean',\n ui: {\n checkedChildren: '开',\n unCheckedChildren: '关',\n },\n })\n showBorder = false;\n @Property('字体', { ui: { widget: 'myFont' } })\n font: any = { family: '', color: '#222222', weight: 'normal', size: 12, space: 0, lineHeight: 2 };\n // @Property('字段交叉', {\n // type: 'array',\n // maxItems: 1,\n // items: {\n // type: 'object',\n // properties: {\n // key: {\n // type: 'string',\n // title: '绑定字段',\n // },\n // value: {\n // type: 'string',\n // title: '绑定值',\n // }\n // },\n // required: ['key', 'value'],\n // },\n // ui: {grid: {arraySpan: 24}, spanControl: 24} as SFArrayWidgetSchema,\n // })\n // cross = [{key: 'x', value: 'y', mergeField: 's'}];\n @Property('交叉字段', {\n cross: {\n type: 'string',\n ui: {} as SFStringWidgetSchema,\n },\n required: [''],\n })\n cross = 'x';\n @Property('显示分页', {\n type: 'boolean',\n ui: {\n checkedChildren: '开',\n unCheckedChildren: '关',\n },\n })\n needPage = false;\n @Property('绑定值', {\n crossVal: {\n type: 'string',\n ui: {} as SFStringWidgetSchema,\n },\n required: [''],\n })\n crossVal = 'y';\n @Data({})\n _data: any[] = [\n { x: '一月', y: 10, s: '收入' },\n { x: '二月', y: 20, s: '收入' },\n { x: '三月', y: 25, s: '收入' },\n { x: '四月', y: 35, s: '收入' },\n { x: '五月', y: 27, s: '收入' },\n { x: '六月', y: 28, s: '收入' },\n { x: '一月', y: 18, s: '支出' },\n { x: '二月', y: 28, s: '支出' },\n { x: '三月', y: 32, s: '支出' },\n { x: '四月', y: 48, s: '支出' },\n { x: '五月', y: 20, s: '支出' },\n { x: '六月', y: 17, s: '支出' },\n ];\n @DataSchema('_data')\n schema: SFSchema;\n widthConfig = [];\n rows: any = [];\n heads: any = [];\n ths: any[] = [];\n headStyle: any;\n bodyStyle: any;\n\n groups: any = {};\n data: any[][] = [];\n\n constructor() {}\n\n ngOnInit(): void {\n this.headStyle = {\n family: this.headFont.family,\n color: this.headFont.color,\n weight: this.headFont.weight,\n fontSize: this.headFont.size + 'px',\n space: this.headFont.space,\n lineHeight: this.headFont.lineHeight,\n background: this.theadBackground,\n };\n this.bodyStyle = {\n family: this.font.family,\n color: this.font.color,\n weight: this.font.weight,\n fontSize: this.font.size + 'px',\n space: this.font.space,\n lineHeight: this.font.lineHeight,\n background: this.tbodyBackground,\n };\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes._data || changes.schema) {\n this.data = [];\n this.groups = {};\n this.heads = [];\n this.ths = [];\n this.widthConfig = [];\n if (this.schema?.properties) {\n Object.keys(this.schema.properties).forEach((key) => {\n const property = this.schema.properties[key];\n if (this.cross !== key && this.crossVal !== key && !(property.ui as SFUISchema)?.hidden) {\n this.heads.push(key);\n this.ths.push(property.title);\n this.widthConfig.push(100 + 'px');\n }\n });\n } else {\n /**\n * 取数据源的key 不包含交叉字段\n */\n if (this._data[0] == null) {\n return;\n }\n Object.keys(this._data[0]).forEach((key) => {\n if (this.cross !== key && this.crossVal !== key && !this.heads.includes(key)) {\n this.heads.push(key);\n this.ths.push(key);\n this.widthConfig.push(100 + 'px');\n }\n });\n }\n\n /**\n * 循环数据源 根据字段名 取出表格前半段值 并进行分组 groups 为 map\n */\n this._data.forEach((data) => {\n const group: any = [];\n this.heads.forEach((head) => {\n group.push(data[head]);\n });\n if (this.groups[group] == null) {\n this.groups[group] = [];\n }\n if (!this.ths.includes(data[this.cross])) {\n this.ths.push(data[this.cross]);\n this.widthConfig.push(100 + 'px');\n }\n this.groups[group].push({ title: data[this.cross], value: data[this.crossVal] });\n });\n this.assemble();\n }\n }\n\n assemble() {\n if (this.groups === null || this.groups === 'undefined') {\n return;\n }\n this.rows = [];\n Object.keys(this.groups).forEach((group) => {\n let row = [];\n const arr = group.split(',');\n for (let i = 0; i < arr.length; i++) {\n row.push({ title: this.ths[i], value: arr[i] });\n }\n let totalval = 0;\n this.groups[group].forEach((t: any) => {\n row.push(t);\n totalval = totalval + t.value;\n });\n if (row.length > 0 && row.length < this.ths.length) {\n const nrow = [];\n for (const head of this.ths) {\n let val = '';\n row.forEach((td) => {\n if (td.title === head) {\n val = td.value;\n }\n });\n nrow.push({ title: head, value: val });\n }\n row = nrow;\n }\n row.push({ title: '合计', value: Number(totalval).toFixed(2) });\n this.rows.push(row);\n });\n this.data = this.rows;\n\n this.ths.push('合计');\n this.widthConfig.push(100 + 'px');\n }\n exportWord() {\n let html = `<table>\n <thead>\n <tr>\n ${this.ths.map((head) => `<th>${head}</th>`).join('')}\n </tr>\n </thead>\n <tbody>\n ${this.data\n .map(\n (row) =>\n `<tr>\n ${row.map((td) => `<td>${td.value}</td>`).join('')}\n </tr>`,\n )\n .join('')}\n </tbody>\n</table><br/>`;\n console.log(html);\n return html;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { CrossTableComponent } from './cross-table.component';\nimport {WidgetBaseModule, WidgetService} from 'bbj-widget-base';\nimport {NzTableModule} from 'ng-zorro-antd/table';\n\n\n\n\n@NgModule({\n declarations: [CrossTableComponent],\n imports: [CommonModule, WidgetBaseModule, NzTableModule],\n})\nexport class CrossTableModule {\n constructor(widgetService: WidgetService) {\n widgetService.register(CrossTableComponent);\n }\n}\n","import { Component, OnInit, ElementRef, OnChanges, SimpleChanges, EventEmitter } from '@angular/core';\nimport { Widget, Property, Data, DataSchema, DataOutput, CustomExport, Sheet, Event } from 'bbj-widget-base';\nimport { SFArrayWidgetSchema, SFSchema } from '@delon/form';\nimport { isNum } from '@delon/util';\n\n@Component({\n selector: 'sc-table',\n templateUrl: './table.component.html',\n styleUrls: ['./table.component.less'],\n})\n@Widget('表格', { group: 'table', icon: 'icontubiao', image: '/assets/img/screen/custom-table.png' })\nexport class TableComponent implements OnInit, OnChanges, CustomExport {\n @Property('条数/页', { ui: { widget: 'myRange', min: 1, max: 100, step: 1 } })\n pageSize = 10;\n @Property('表头背景', {\n ui: {\n widget: 'myColor',\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],\n },\n })\n theadBackground = '#fafafa';\n @Property('表头字体', { ui: { widget: 'myFont' } })\n headFont: any = { family: '', color: '#222222', weight: 'normal', size: 12, space: 0, lineHeight: 2 };\n @Property('内容对齐', {\n type: 'string',\n ui: {\n widget: 'select',\n },\n enum: [\n { label: '左对齐', value: 'left' },\n { label: '右对齐', value: 'right' },\n { label: '居中', value: 'center' },\n ],\n })\n contentAlign = 'center';\n @Property('表格背景', {\n ui: {\n widget: 'myColor',\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],\n },\n })\n tbodyBackground = '#FFFFFF';\n\n @Property('字体', { ui: { widget: 'myFont' } })\n font: any = { family: '', color: '#222222', weight: 'normal', size: 12, space: 0, lineHeight: 2 };\n @Property('是否自定义', {\n type: 'boolean',\n ui: {\n checkedChildren: '开',\n unCheckedChildren: '关',\n },\n })\n isCustom = false;\n @Property('显示边框', {\n type: 'boolean',\n ui: {\n checkedChildren: '开',\n unCheckedChildren: '关',\n },\n })\n showBorder = false;\n @Property('显示分页', {\n type: 'boolean',\n ui: {\n checkedChildren: '开',\n unCheckedChildren: '关',\n },\n })\n needPage = false;\n @Property('统计个数', {\n type: 'boolean',\n ui: {\n checkedChildren: '开',\n unCheckedChildren: '关',\n },\n })\n isCount = false;\n @Property('合计', { type: 'string', ui: { optionalHelp: '填写列名,逗号分隔' } })\n sumColumns: string;\n @Property('颜色分层', {\n type: 'array',\n maxItems: 99,\n items: {\n type: 'object',\n properties: {\n gte: {\n type: 'number',\n title: '大于',\n },\n lte: {\n type: 'number',\n title: '小于',\n minimum: 1,\n },\n color: {\n type: 'string',\n title: '颜色',\n ui: {\n widget: 'myColor',\n },\n },\n },\n required: ['gte', 'lte'],\n },\n ui: { grid: { arraySpan: 24 }, spanControl: 24 } as SFArrayWidgetSchema,\n })\n level = [];\n // @Property('字段交叉', {\n // type: 'array',\n // maxItems: 1,\n // items: {\n // type: 'object',\n // properties: {\n // key: {\n // type: 'string',\n // title: '绑定字段',\n // },\n // value: {\n // type: 'string',\n // title: '绑定值',\n // },\n // mergeField: {\n // type: 'string',\n // title: '合并字段',\n // }\n // },\n // required: [],\n // },\n // ui: {grid: {arraySpan: 24}, spanControl: 24} as SFArrayWidgetSchema,\n // })\n // cross = [];\n @Property('自定义列', {\n type: 'array',\n maxItems: 99,\n items: {\n type: 'object',\n properties: {\n group: {\n type: 'string',\n title: '分组名',\n },\n title: {\n type: 'string',\n title: '列名',\n },\n field: {\n type: 'string',\n title: 'bind',\n },\n width: {\n type: 'number',\n title: '宽度',\n },\n ismerge: {\n type: 'boolean',\n title: '是否合并',\n },\n needlevel: {\n type: 'boolean',\n title: '颜色分层',\n },\n showFilter: {\n type: 'boolean',\n title: '显示筛选',\n },\n },\n required: ['title', 'field'],\n },\n ui: { visibleIf: { isCustom: [true] }, grid: { arraySpan: 24 }, spanLabel: 24, spanControl: 24 },\n })\n customCol: any = [];\n // hasGroup = false;\n isCross = false;\n image: string;\n @Data({})\n _data: any[] = [\n { x: '一月', y: '10%', s: '收入' },\n { x: '二月', y: 20, s: '收入' },\n { x: '三月', y: 25, s: '收入' },\n { x: '四月', y: 35, s: '收入' },\n { x: '五月', y: 27, s: '收入' },\n { x: '六月', y: 28, s: '收入' },\n { x: '一月', y: 18, s: '支出' },\n { x: '二月', y: 28, s: '支出' },\n { x: '三月', y: 32, s: '支出' },\n { x: '四月', y: 48, s: '支出' },\n { x: '五月', y: 20, s: '支出' },\n { x: '六月', y: 17, s: '支出' },\n ];\n @DataSchema('_data')\n schema: SFSchema;\n\n @DataOutput('单元格内容')\n tdChange = new EventEmitter<any>();\n @DataOutput('行数据')\n trChange = new EventEmitter<any>();\n @DataOutput('列名')\n rowChange = new EventEmitter<any>();\n @Event('点击单元格', {\n params: {\n properties: {\n index: { type: 'string', title: '列名' },\n value: { type: 'string', title: '值' },\n data: { type: 'object', title: '行数据' },\n },\n },\n })\n tdClick = new EventEmitter<any>();\n // y: string;\n headStyle: any = {};\n bodyStyle: any = {};\n columns: any;\n groups: any;\n // rowSize = 1;\n widthConfig = [];\n rows = [];\n totalCount = [];\n needCount = false;\n\n dataSize: number;\n titleSize: number;\n searchValue = {};\n headers = [];\n filterValues: { [key: string]: any[] } = {};\n sumData = {};\n constructor(private ele: ElementRef) {}\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes.schema || changes.customCol) {\n this.updateHeader();\n this.updateData();\n } else if (changes._data) {\n if (!this.schema) {\n this.updateHeader();\n }\n this.updateData();\n }\n }\n\n ngOnInit() {\n // if (this.ele) {\n // const height = this.ele.nativeElement.offsetHeight - 110;\n // this.y = height > 0 ? height + 'px' : '0px';\n // }\n // console.log(this.groupBy(this._data,'x'));\n // console.log(this.countGroupRow);\n this.headStyle = {\n family: this.headFont.family,\n color: this.headFont.color,\n weight: this.headFont.weight,\n fontSize: this.headFont.size + 'px',\n space: this.headFont.space,\n lineHeight: this.headFont.lineHeight,\n background: this.theadBackground,\n };\n this.bodyStyle = {\n family: this.font.family,\n color: this.font.color,\n weight: this.font.weight,\n fontSize: this.font.size + 'px',\n space: this.font.space,\n lineHeight: this.font.lineHeight,\n };\n }\n\n updateHeader() {\n this.columns = [];\n this.widthConfig = [];\n if (this.isCustom && this.customCol[0]) {\n const hasGroup = this.customCol.some((data) => data.group != null && data.group !== '');\n this.groups = [];\n const subHeader = [];\n const groupMap = {};\n this.customCol.forEach((data) => {\n const grouped = !!data.group;\n const groupName = data.group || data.title;\n this.widthConfig.push((data.width || 100) + 'px');\n const column: any = {\n title: data.title,\n index: data.field,\n ismerge: data.ismerge,\n iscount: data.iscount,\n needlevel: data.needlevel,\n showFilter: data.showFilter,\n };\n\n let group = groupMap[groupName];\n if (group == null) {\n group = { title: groupName, row: 1, col: 0, columns: [] };\n groupMap[groupName] = group;\n this.groups.push(group);\n }\n group.columns.push(column);\n group.col++;\n if (grouped) {\n subHeader.push(column);\n } else {\n group.index = data.field;\n if (hasGroup) {\n group.row = 2;\n }\n }\n });\n this.headers = [this.groups, subHeader];\n } else {\n if (this.schema) {\n Object.keys(this.schema.properties).forEach((key) => {\n const property = this.schema.properties[key];\n if (property) {\n const column = { title: property.title || key, index: key, schema: property };\n this.columns.push(column);\n }\n });\n } else if (this._data && this._data[0]) {\n const data = this._data[0];\n Object.keys(data).forEach((key) => {\n const column = { title: key, index: key };\n this.widthConfig.push(100 + 'px');\n this.columns.push(column);\n });\n }\n this.headers = [this.columns];\n console.log('header', this.headers);\n }\n }\n\n updateData() {\n this.dataSize = this._data.length;\n if (this._data[0]) {\n this.titleSize = Object.keys(this._data[0]).length;\n }\n if (this.isCustom && this.customCol[0]) {\n this.updateFilterOptions();\n this.groupBy(this._data);\n this.count();\n }\n if (this.sumColumns) {\n this.sumData = {};\n this.sumColumns.split(',').forEach((column) => {\n let sum: number = this._data.reduce((p, c) => {\n const value = c[column];\n if (value && isNum(value)) {\n p += +value;\n }\n return p;\n }, 0);\n this.sumData[column] = +sum.toFixed(2);\n });\n }\n }\n\n /**\n * 更新筛选下拉框里的数据\n */\n updateFilterOptions() {\n if (this.groups) {\n this.groups.forEach((group) => {\n group.columns.forEach((column) => {\n if (column.showFilter) {\n const valueSet = new Set<any>();\n const target = group.columns.length == 1 ? group : column;\n target.filter = [];\n if (this._data) {\n this._data.forEach((row) => {\n const key = column.index;\n const value = row[key];\n const filterValue = this.filterValues[key];\n const checked = filterValue && filterValue.includes(value);\n if (checked || this.filterMatch(row, key)) {\n if (value != null && value != '' && !valueSet.has(value)) {\n valueSet.add(value);\n const item = { value, checked };\n target.filter.push(item);\n }\n }\n });\n }\n }\n });\n });\n }\n }\n\n filterMatch(record: any, exclude?: string): boolean {\n const keys = Object.keys(this.filterValues);\n for (const key of keys) {\n if (key !== exclude) {\n const filterValue = this.filterValues[key];\n const value = record[key];\n if (filterValue?.length && !filterValue.includes(value)) {\n return false;\n }\n }\n }\n return true;\n }\n\n groupBy(array) {\n this.rows = [];\n array.forEach((record) => {\n if (this.filterMatch(record)) {\n const row = [];\n for (const group of this.groups) {\n for (const column of group.columns) {\n const value = record[column.index];\n // if (column.showFilter) {\n // const filterValue = column.filterValue || group.filterValue;\n // if (filterValue?.length && !filterValue.includes(value)) {\n // return;\n // }\n // }\n let myColor = '';\n if (column.needlevel) {\n myColor = this.getColor(record[column.index]);\n }\n if (myColor == '') {\n myColor = this.tbodyBackground;\n }\n row.push({ rowspan: 1, value, index: column.index, color: myColor, data: record });\n }\n }\n this.rows.push(row);\n }\n });\n this.customCol.forEach((column, i) => {\n if (column.ismerge) {\n this.needPage = false;\n let lastTd = null;\n this.rows.forEach((row) => {\n const td = row[i];\n if (lastTd != null && lastTd.value === td.value) {\n lastTd.rowspan++;\n td.rowspan = 0;\n } else {\n lastTd = td;\n }\n });\n }\n });\n }\n\n getColor(value): string {\n // value=value.toString().replace('%','');\n const regExp: RegExp = /-?\\d+\\.?\\d*/;\n const result = regExp.exec(value);\n if (this.level.length > 0) {\n for (const t of this.level) {\n if (t.gte <= Number(result[0]) && Number(result[0]) < t.lte) {\n return t.color;\n }\n }\n }\n return '';\n }\n\n count() {\n const name = 'value';\n this._data.forEach((data) => {\n this.groups.forEach((group, i) => {\n group.columns.forEach((column, j) => {\n let item = {};\n let check = false;\n this.totalCount.forEach((ite) => {\n if (ite.filed === column.index) {\n item = ite;\n check = true;\n return;\n }\n });\n if (i === 0 && j === 0 && !check) {\n item = { filed: column.index, value: '合计' };\n }\n if (i !== 0 || j !== 0) {\n if (!check) {\n item = { filed: column.index };\n }\n if (column.iscount) {\n this.needCount = true;\n if (!item[name]) {\n item[name] = 0;\n }\n item[name] = Number(item[name]) + this.getDataValue(data, column.index);\n } else {\n item[name] = '';\n }\n }\n if (!check) {\n this.totalCount.push(item);\n }\n });\n });\n });\n }\n\n getDataValue(array, index) {\n let result = 0;\n array.forEach((data) => {\n if (data.index === index) {\n result = Number(data.value);\n return;\n }\n });\n return result;\n }\n\n onTdClick(td: any, i: number) {\n const { index, value, data } = td;\n this.tdChange.emit(value);\n this.rowChange.emit(this.customCol[i].title);\n this.tdClick.emit({ index, value, data });\n }\n\n onTdClickByGroup(data: any, column: any) {\n const index = column.index;\n const value = data[index];\n this.tdChange.emit(value);\n this.rowChange.emit(column.title);\n this.tdClick.emit({ index, value, data });\n }\n\n onTrClick(data: any) {\n // if (this.isCustom) {\n // data.forEach((a) => {\n // console.log('tr:td' + a.value);\n // });\n // }\n this.trChange.emit(data);\n }\n\n onCheck(column: any, values: any[]) {\n column.filterChecked = values;\n }\n\n filter(column: any) {\n this.filterValues[column.index] = column.filterChecked;\n // column.filterValue = column.filterChecked;\n this.updateData();\n column.filterVisible = false;\n }\n\n reset(column: any) {\n column.filterChecked = [];\n column.filter = column.filter.map((item) => ({\n value: item.value,\n }));\n this.filter(column);\n }\n\n export(): Sheet {\n const data = [];\n const merges = [];\n if (this.groups) {\n const row1 = [];\n const row2 = [];\n this.groups.forEach((group) => {\n const colIndex = row1.length;\n group.columns.forEach((column) => {\n row1.push(group.title);\n row2.push(column.title);\n });\n if (group.row > 1 || group.col > 1) {\n merges.push({ s: { r: 0, c: colIndex }, e: { r: group.row - 1, c: colIndex + group.col - 1 } });\n }\n });\n data.push(row1, row2);\n this._data.forEach((rowData) => {\n const rowIndex = data.length;\n const row = [];\n rowData.forEach((td, i) => {\n row.push(td.value);\n if (td.rowspan > 1) {\n merges.push({ s: { r: rowIndex, c: i }, e: { r: rowIndex + td.rowspan - 1, c: i } });\n }\n });\n data.push(row);\n });\n } else {\n const row1 = this.columns.map((column) => column.title);\n data.push(row1);\n this._data.forEach((rowData) => {\n const row = this.columns.map((column) => rowData[column.index]);\n data.push(row);\n });\n }\n return { data, merges };\n }\n\n exportWord() {\n const element = this.ele.nativeElement as HTMLElement;\n let html = '';\n const tables = element.querySelectorAll('table');\n if (tables.length === 1) {\n html += tables.item(0).outerHTML;\n } else if (tables.length > 1) {\n html += '<table>';\n tables.forEach((table) => {\n table = table.cloneNode(true) as HTMLTableElement;\n const measureRow = table.querySelector('.ant-table-measure-now');\n if (measureRow) {\n measureRow.parentElement.removeChild(measureRow);\n }\n html += table.innerHTML;\n });\n html += '</table><br/>';\n }\n return html;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { TableComponent } from './table.component';\nimport { NzTableModule } from 'ng-zorro-antd/table';\nimport { WidgetBaseModule, WidgetService } from 'bbj-widget-base';\nimport { NzPipesModule } from 'ng-zorro-antd/pipes';\nimport { NzSelectModule } from 'ng-zorro-antd/select';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\nimport { NzDropDownModule } from 'ng-zorro-antd/dropdown';\nimport { FormsModule } from '@angular/forms';\nimport { NzCheckboxModule } from 'ng-zorro-antd/checkbox';\nimport { NzButtonModule } from 'ng-zorro-antd/button';\n\n@NgModule({\n declarations: [TableComponent],\n imports: [\n CommonModule,\n FormsModule,\n WidgetBaseModule,\n NzTableModule,\n NzPipesModule,\n NzSelectModule,\n NzIconModule,\n NzDropDownModule,\n NzCheckboxModule,\n NzButtonModule\n ],\n})\nexport class TableModule {\n constructor(widgetService: WidgetService) {\n widgetService.register(TableComponent);\n }\n}\n","import { Injectable } from '@angular/core';\r\nimport { LazyService } from '@delon/util';\r\n\r\ndeclare const Highcharts;\r\n\r\n@Injectable({ providedIn: 'root' })\r\nexport class HighChartsService {\r\n private loadHighChartsPromise: Promise<any>;\r\n private loadHighCharts3DPromise: Promise<any>;\r\n constructor(private lazy: LazyService) {}\r\n\r\n load() {\r\n if (typeof Highcharts !== 'undefined') {\r\n return Promise.resolve();\r\n }\r\n if (this.loadHighChartsPromise == null) {\r\n this.loadHighChartsPromise = this.lazy.loadScript('assets/js/highcharts/highcharts.js');\r\n }\r\n return this.loadHighChartsPromise;\r\n }\r\n\r\n async load3D() {\r\n await this.load();\r\n if (this.loadHighCharts3DPromise == null) {\r\n this.loadHighCharts3DPromise = this.lazy.loadScript('assets/js/highcharts/highcharts-3d.js');\r\n }\r\n return this.loadHighCharts3DPromise;\r\n }\r\n}\r\n","import { Component, ElementRef, OnChanges, OnInit, SimpleChanges, ViewChild } from '@angular/core';\nimport { LazyService } from '@delon/util';\nimport { FindValueSubscriber } from 'rxjs/internal/operators/find';\nimport { Data, Property, Widget } from 'bbj-widget-base';\nimport { HighChartsService } from '../shared/service/highcharts.service';\nimport { getFontStyle } from '../shared/util/style.util';\ndeclare var Highcharts: any;\n@Component({\n selector: 'sc-pie3d-chart',\n templateUrl: './pie3d-chart.component.html',\n styleUrls: ['./pie3d-chart.component.less'],\n})\n@Widget('3D饼图', {\n group: 'pieChart',\n image: 'assets/img/screen/pie3d.png',\n icon: 'icontubiao',\n})\nexport class Pie3dChartComponent implements OnInit, OnChanges {\n static initPluginPromise = null;\n\n @ViewChild('container', { static: true })\n container: ElementRef;\n @Property('标题', { type: 'string' })\n title = '';\n @Property('字体', { ui: { widget: 'myFont' } })\n font: any = {\n family: '',\n color: '#FFFFFF',\n weight: 'normal',\n size: 12,\n space: 0,\n lineHeight: '',\n };\n @Property('浮标', {\n ui: { widget: 'boolean', checkedChildren: '开', unCheckedChildren: '关' },\n })\n buoy = false;\n @Property('填充', {\n ui: {\n widget: 'seriesColor',\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],\n },\n })\n colors = ['#058DC7', '#50B432', '#ED561B', '#DDDF00', '#24CBE5', '#64E572', '#FF9655', '#FFF263', '#6AF9C4'];\n @Property('饼图厚度', { type: 'number' })\n thickness = 45;\n @Property('倾斜角度', { type: 'number' })\n angle = 60;\n @Property('图例开关', {\n ui: { widget: 'boolean', checkedChildren: '开', unCheckedChildren: '关' },\n })\n showLegend = true;\n @Property('图例间距', { type: 'number' })\n itemDistance = 80;\n @Property('高度系数', { type: 'number' })\n coefficient = 1;\n @Property('开始角度', { type: 'number' })\n startAngle = 90;\n @Property('图例水平', {\n ui: { widget: 'select' },\n enum: [\n { label: '居中', value: 'center' },\n { label: '居左', value: 'left' },\n { label: '居右', value: 'right' },\n ],\n })\n alignType = 'center';\n @Property('图例垂直', {\n ui: { widget: 'select' },\n enum: [\n { label: '居上', value: 'top' },\n { label: '居下', value: 'bottom' },\n { label: '居中', value: 'middle' },\n ],\n })\n verticalAlign = 'bottom';\n @Property('提示框字体', { ui: { widget: 'myFont' } })\n tooltipFont: any;\n @Data({\n properties: {\n x: { type: 'string', title: '类目' },\n y: { type: 'number', title: '值' },\n },\n })\n _data = [\n { x: '一月', y: 33 },\n { x: '二月', y: 31 },\n { x: '三月', y: 11 },\n { x: '四月', y: 11 },\n { x: '五月', y: 7 },\n { x: '六月', y: 20 },\n ];\n data: any[] = [];\n\n constructor(private highChartsService: HighChartsService) {}\n\n ngOnInit(): void {}\n\n async ngOnChanges(changes: SimpleChanges) {\n await this.initPlugin();\n this.reloadData();\n let each = Highcharts.each,\n round = Math.round,\n cos = Math.cos,\n sin = Math.sin,\n deg2rad = Math.PI / 180;\n Highcharts.wrap(Highcharts.seriesTypes.pie.prototype, 'translate', function (proceed) {\n proceed.apply(this, [].slice.call(arguments, 1));\n // Do not do this if the chart is not 3D\n if (!this.chart.is3d()) {\n return;\n }\n var series = this,\n chart = series.chart,\n options = chart.options,\n seriesOptions = series.options,\n depth = seriesOptions.depth || 0,\n options3d = options.chart.options3d,\n alpha = options3d.alpha,\n beta = options3d.beta,\n z = seriesOptions.stacking ? (seriesOptions.stack || 0) * depth : series._i * depth;\n z += depth / 2;\n if (seriesOptions.grouping !== false) {\n z = 0;\n }\n each(series.data, function (point) {\n var shapeArgs = point.shapeArgs,\n angle;\n point.shapeType = 'arc3d';\n var ran = point.options.h;\n shapeArgs.z = z;\n shapeArgs.depth = depth * 0.75 + ran;\n shapeArgs.alpha = alpha;\n shapeArgs.beta = beta;\n shapeArgs.center = series.center;\n shapeArgs.ran = ran;\n angle = (shapeArgs.end + shapeArgs.start) / 2;\n point.slicedTranslation = {\n translateX: round(cos(angle) * seriesOptions.slicedOffset * cos(alpha * deg2rad)),\n translateY: round(sin(angle) * seriesOptions.slicedOffset * cos(alpha * deg2rad)),\n };\n });\n });\n (function (H) {\n H.wrap(Highcharts.SVGRenderer.prototype, 'arc3dPath', function (proceed) {\n // Run original proceed method\n var ret = proceed.apply(this, [].slice.call(arguments, 1));\n ret.zTop = (ret.zOut + 0.5) / 100;\n return ret;\n });\n })(Highcharts);\n\n let sum = this._data.reduce((sum, data) => sum + Number(data.y), 0);\n this._data.sort((a, b) => {\n return b.y - a.y;\n });\n const data = [];\n this._data.forEach((record) => {\n // const x=record.x;\n // const s=record.s;\n // const y=record.y;\n const { x, y } = record;\n let obj: any;\n if (sum === 0) {\n obj = { name: x, y: 1, h: (100 / this._data.length) * (this.coefficient || 1) };\n } else {\n obj = { name: x, y: Number(y), h: (Number(y) / sum) * 100 * (this.coefficient || 1) };\n }\n\n data.push(obj);\n });\n let pointFormat = '{series.name}: <b>{point.percentage:.1f}%</b>';\n let labelFormat = '<span style=\"{color}\">{name} :{y}</span>';\n let format = '<span style=\"color:{point.color}\">{point.y}<br/>{point.name}';\n if (sum === 0) {\n pointFormat = '{series.name}: <b>0%</b>';\n labelFormat = '<span style=\"{color}\">{name} :0</span>';\n format = '<span style=\"color:{point.color}\">0<br/>{point.name}';\n }\n const options = {\n legend: {\n itemStyle: {\n color: this.font.color,\n fontSize: this.font.size + 'px',\n fontWeight: this.font.weight,\n fontFamily: this.font.family,\n },\n verticalAlign: this.verticalAlign,\n align: this.alignType,\n itemDistance: this.itemDistance,\n labelFormat,\n },\n chart: {\n type: 'pie',\n animation: false,\n events: {\n load: function () {\n var each = Highcharts.each,\n points = this.series[0].points;\n each(points, function (p, i) {\n p.graphic.attr({\n translateY: -p.shapeArgs.ran,\n });\n p.graphic.side1.attr({\n translateY: -p.shapeArgs.ran,\n });\n p.graphic.side2.attr({\n translateY: -p.shapeArgs.ran,\n });\n });\n },\n },\n options3d: {\n enabled: true,\n alpha: this.angle,\n beta: 0,\n },\n },\n title: {\n text: this.title,\n style: {\n color: this.font.color,\n fontSize: this.font.size + 'px',\n fontWeight: this.font.weight,\n fontFamily: this.font.family,\n },\n },\n tooltip: {\n pointFormat,\n style: getFontStyle(this.tooltipFont),\n },\n plotOptions: {\n pie: {\n showInLegend: this.showLegend,\n allowPointSelect: false,\n cursor: 'pointer',\n depth: this.thickness,\n point: {\n events: {\n legendItemClick: function () {\n return false;\n },\n },\n },\n dataLabels: {\n style: getFontStyle(this.font),\n enabled: this.buoy,\n format,\n // formatter,\n },\n },\n },\n colors: this.colors,\n series: [\n {\n type: 'pie',\n name: this.title,\n startAngle: this.startAngle,\n data,\n },\n ],\n };\n let chart = Highcharts.chart(this.container.nativeElement, options);\n }\n reloadData() {}\n\n initPlugin() {\n return this.highChartsService.load3D();\n }\n\n // async _initPlugin() {\n // await this.lazy.loadScript('assets/js/highcharts/highcharts.js');\n // await this.lazy.loadScript('assets/js/highcharts/highcharts-3d.js');\n // // await this.lazy.loadScript('https://code.highcharts.com.cn/highcharts/modules/exporting.js');\n // // await this.lazy.loadScript('https://img.hcharts.cn/highcharts-plugins/highcharts-zh_CN.js');\n // // await this.lazy.loadScript('https://code.highcharts.com.cn/highcharts/themes/dark-unica.js');\n // }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { Pie3dChartComponent } from './pie3d-chart.component';\nimport { WidgetBaseModule, WidgetService } from 'bbj-widget-base';\n\n\n\n@NgModule({\n declarations: [Pie3dChartComponent],\n imports: [CommonModule, WidgetBaseModule],\n})\nexport class Pie3dChartModule { \n constructor(widgetService: WidgetService) {\n widgetService.register(Pie3dChartComponent);\n }\n}\n","import { Component, OnChanges, OnInit, SimpleChanges } from '@angular/core';\nimport { Data, Property, Widget } from 'bbj-widget-base';\n\n@Component({\n selector: 'sc-multi-title-gauge',\n templateUrl: './multi-title-gauge.component.html',\n styleUrls: ['./multi-title-gauge.component.less']\n})\n@Widget('多标题仪表盘', {\n group: 'otherChart',\n image: 'assets/img/screen/multiTitleGauge.png', \n icon: 'icontubiao',\n})\nexport class MultiTitleGaugeComponent implements OnInit, OnChanges {\n @Property('字体', { ui: { widget: 'myFont' } })\n font: any = {\n family: '',\n color: '#FFFFFF',\n weight: 'normal',\n size: 12,\n space: 0,\n lineHeight: 12,\n };\n\n @Property('字体', { ui: { widget: 'myFont' } })\n detailFont: any = {\n family: '',\n color: '#FFFFFF',\n weight: 'normal',\n size: 14,\n space: 0,\n lineHeight: 12,\n };\n @Property('百分号', {\n ui: { widget: 'boolean', checkedChildren: '开', unCheckedChildren: '关' },\n })\n percent = false;\n @Property('类别颜色', {\n ui: {\n widget: 'seriesColor',\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],\n visibleIf: { colorSwitch: [true] }\n },\n })\n colors = ['#058DC7', '#50B432', '#ED561B', '#DDDF00',\n '#24CBE5', '#64E572', '#FF9655', '#FFF263', '#6AF9C4'];\n @Property('起始角度', {\n ui: { widget: 'myRange', min: 90, max: 360, step: 1 },\n })\n startAngle = 225;\n @Property('结束角度', {\n ui: { widget: 'myRange', min: -90, max: 90, step: 1 },\n })\n endAngle = -45;\n @Property('标签', {\n ui: { widget: 'boolean', checkedChildren: '开', unCheckedChildren: '关' },\n })\n label = false;\n @Property('最大值', {\n ui: { widget: 'number' },\n })\n max = 100;\n @Property('最小值', {\n ui: { widget: 'number' },\n })\n min = 0;\n @Property('指针长度', {\n ui: { widget: 'number' },\n })\n pointerLength = 80;\n @Property('环宽', {\n ui: { widget: 'number' },\n })\n width = 12;\n @Property('显示指针', {\n ui: { widget: 'boolean', checkedChildren: '开', unCheckedChildren: '关' },\n })\n showPointer = true;\n @Property('显示刻度', {\n ui: { widget: 'boolean', checkedChildren: '开', unCheckedChildren: '关' },\n })\n showScale = true;\n image: string;\n chartOption: any = {};\n @Data({\n properties: {\n name: { type: 'string', title: '文字' },\n value: { type: 'number', title: '值' },\n },\n })\n _data = [\n { name: '速度', value: 48 },\n { name: '温度', value: 20 }\n ];\n\n constructor() { }\n ngOnChanges(changes: SimpleChanges): void {\n if (changes._data) {\n const style = {\n color: this.font.color,\n fontFamily: this.font.family,\n fontWeight: this.font.weight,\n fontSize: this.font.size,\n lineHeight: this.font.lineHeight,\n };\n\n // const color = [];\n // const color1 = [];\n // let seriesColor;\n // if (this.seriesColor && this.seriesColor.value) {\n // seriesColor = this.seriesColor.value;\n // } else {\n // seriesColor = this.seriesColor;\n // }\n // for (let i = 0; i < seriesColor.length; i++) {\n // color.push({\n // type: 'linear',\n // x: 0,\n // y: 0,\n // x2: 1,\n // y2: 0,\n // global: false,\n // colorStops: [\n // { offset: 0, color: seriesColor[i][0] },\n // { offset: 1, color: seriesColor[i][1] },\n // ],\n // });\n // }\n // let count = 1;\n // if (seriesColor.length > 1) {\n // count = 1 / seriesColor.length;\n // for (let i = 0; i < seriesColor.length; i++) {\n // color1.push([count * (i + 1), color[i]]);\n // }\n // }\n if(!this.showPointer){\n this.pointerLength=0;\n }\n this.chartOption = {\n series: [{\n type: 'gauge',\n anchor: {\n show: this.showPointer,\n showAbove: true,\n size: 18,\n itemStyle: {\n color: '#FAC858'\n }\n },\n pointer: {\n icon: 'path://M2.9,0.7L2.9,0.7c1.4,0,2.6,1.2,2.6,2.6v115c0,1.4-1.2,2.6-2.6,2.6l0,0c-1.4,0-2.6-1.2-2.6-2.6V3.3C0.3,1.9,1.4,0.7,2.9,0.7z',\n width: 8,\n length: this.pointerLength + '%',\n offsetCenter: [0, '8%']\n },\n progress: {\n show: true,\n overlap: true,\n roundCap: true,\n width:this.width,\n },\n axisLine: {\n roundCap: true,\n lineStyle: {\n width: this.width,\n }\n },\n startAngle: this.startAngle,\n endAngle: this.endAngle,\n splitLine: {\n show: this.showScale,\n },\n axisTick: {\n show: this.showScale,\n },\n axisLabel: {\n show: this.showScale,\n color: '#fff'\n // distance: 50\n },\n data: [],\n color: this.colors,\n title: {\n show: this.label,\n fontSize: this.font.size,\n color: this.font.color,\n },\n detail: {\n formatter: this.percent ? '' + '{value}' + '%' : '{value}',\n width: 40,\n height: this.detailFont.size,\n fontSize: this.detailFont.size,\n color: this.detailFont.color,\n backgroundColor: 'auto',\n borderRadius: 3,\n show:this.label\n },\n max: this.max,\n min: this.min,\n }]\n };\n // console.log(JSON.stringify(this.chartOption));\n }\n this.reloadData();\n }\n\n ngOnInit(): void {\n }\n reloadData() {\n let datas = [];\n if (this._data) {\n let count = this._data.length + 1;\n let numa = 200 / count;\n let numb = numa - 100;\n this._data.forEach((a, index) => {\n let obj = {\n value: a.value,\n name: a.name,\n title: {\n offsetCenter: [(numb + (index * numa)) + '%', '30%']\n },\n detail: {\n offsetCenter: [(numb + (index * numa)) + '%', '50%']\n }\n }\n datas.push(obj);\n })\n }\n this.chartOption.series[0].data = datas;\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { MultiTitleGaugeComponent } from './multi-title-gauge.component';\nimport { WidgetBaseModule, WidgetService } from 'bbj-widget-base';\nimport { NgxEchartsModule } from 'ngx-echarts';\n\n\n\n@NgModule({\n declarations: [MultiTitleGaugeComponent],\n imports: [\n CommonModule, WidgetBaseModule, NgxEchartsModule\n ]\n})\nexport class MultiTitleGaugeModule { \n constructor(widgetService: WidgetService) {\n widgetService.register(MultiTitleGaugeComponent);\n }\n}\n","import { Component, OnChanges, OnInit, SimpleChanges } from '@angular/core';\nimport { Property, Widget, Data } from 'bbj-widget-base';\n\n@Component({\n selector: 'sc-gauge-progress',\n templateUrl: './gauge-progress.component.html',\n styleUrls: ['./gauge-progress.component.less'],\n})\n@Widget('进度条仪表盘', {\n group: 'otherChart',\n image: 'assets/img/screen/gauge-progress.png',\n icon: 'icontubiao',\n})\nexport class GaugeProgressComponent implements OnInit, OnChanges {\n @Property('数值字体', { ui: { widget: 'myFont' } })\n numfont: any = {\n family: 'Microsoft YaHei',\n color: '#ffffff',\n weight: 'normal',\n size: 21,\n space: 0,\n lineHeight: '20',\n };\n\n @Property('可视个数', { type: 'number' })\n slidesPerView = 1;\n\n @Property('间距', { type: 'number' })\n spaceBetween = 0;\n\n @Property('左右按钮', {\n ui: { widget: 'boolean', checkedChildren: '开', unCheckedChildren: '关' },\n })\n navigation = true;\n\n @Property('按钮偏移', { type: 'number' })\n navigationMoveVal = -60;\n\n @Property('左图标', {\n type: 'string',\n ui: {\n widget: 'myUpload',\n },\n })\n navigationLeftIcon = null;\n\n @Property('右图标', {\n type: 'string',\n ui: {\n widget: 'myUpload',\n },\n })\n navigationRightIcon = null;\n\n @Property('显示模式', {\n ui: { widget: 'select' },\n enum: [{ label: '图标卡片', value: 'card' }],\n })\n showType = 'card';\n\n @Property('卡片背景', {\n type: 'string',\n ui: {\n widget: 'myUpload',\n },\n })\n cardBgImg = null;\n navigationBtnConfig = {\n prevEl: '.swiper-navigation-prev',\n nextEl: '.swiper-navigation-next',\n };\n //========================================\n @Property('表盘颜色', {\n ui: {\n widget: 'seriesColor',\n type: 'gradual',\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],\n },\n })\n seriesColor: any = { gradient: false, value: [['#6D7597', '#6D7597']] };\n\n @Property('表盘宽度', {\n ui: { widget: 'myRange', min: 0, max: 100, step: 1 },\n })\n width = 10;\n @Property('起始角度', {\n ui: { widget: 'myRange', min: 90, max: 360, step: 1 },\n })\n startAngle = 210;\n @Property('结束角度', {\n ui: { widget: 'myRange', min: -90, max: 90, step: 1 },\n })\n endAngle = -30;\n\n @Property('显示标题', {\n ui: { widget: 'boolean', checkedChildren: '开', unCheckedChildren: '关' },\n })\n label = true;\n\n @Property('标题字体', { ui: { widget: 'myFont' } })\n font: any = {\n family: '',\n color: '#FFFFFF',\n weight: 'normal',\n size: 18,\n space: 0,\n lineHeight: 18,\n };\n @Property('标题位移', {\n ui: { widget: 'number' },\n })\n labelOffset = 50;\n @Property('标题宽度', {\n ui: { widget: 'number' },\n })\n labelWidth = null;\n\n @Property('显示数值', {\n ui: { widget: 'boolean', checkedChildren: '开', unCheckedChildren: '关' },\n })\n labelVal = true;\n\n @Property('数值字体', { ui: { widget: 'myFont' } })\n numFont: any = {\n family: '',\n color: '#FFFFFF',\n weight: 'normal',\n size: 38,\n space: 0,\n lineHeight: 38,\n };\n\n @Property('百分号', {\n ui: { widget: 'boolean', checkedChildren: '开', unCheckedChildren: '关' },\n })\n percent = false;\n\n @Property('数值位移', {\n ui: { widget: 'number' },\n })\n labelValOffset = -10;\n\n @Property('最大值', {\n ui: { widget: 'number' },\n })\n max = 100;\n @Property('最小值', {\n ui: { widget: 'number' },\n })\n min = 0;\n\n @Property('进度颜色', {\n ui: {\n widget: 'seriesColor',\n type: 'gradual',\n },\n })\n progressColor = { gradient: true, value: [['#2505F0', '#f00']] };\n\n @Property('进度阴影', {\n ui: {\n widget: 'myColor',\n example: ['#ffffff', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', null],\n },\n })\n progressShadow = null;\n\n image: string;\n constructor() {}\n chartOption: any = {};\n @Data({\n properties: {\n name: { type: 'string', title: '文字' },\n value: { type: 'number', title: '值' },\n },\n })\n _data = [{ name: '标题', value: 50 }];\n\n data = [];\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes._data) {\n this.data = [];\n if (this._data) {\n if (this._data.length <= this.slidesPerView) {\n this.navigation = false;\n }\n this._data.forEach((e: any) => {\n let sourceData = [];\n sourceData.push(e);\n let chartOption = {\n series: [\n {\n // name: this.title,\n type: 'gauge',\n startAngle: this.startAngle,\n endAngle: this.endAngle,\n progress: {\n show: e.value && Number(e.value) > 0 ? true : false,\n overlap: false,\n roundCap: true,\n clip: false,\n itemStyle: {\n borderWidth: 1,\n color: this.getColor(this.progressColor, 'progress'),\n shadowColor: this.progressShadow,\n shadowBlur: 5,\n },\n },\n detail: {\n show: this.labelVal,\n formatter: this.percent ? '' + ((e.value / this.max) * 100).toFixed(2) + '%' : '{value}',\n color: this.numFont.color,\n fontFamily: this.numFont.family,\n fontWeight: this.numFont.weight,\n fontSize: this.numFont.size,\n lineHeight: this.numFont.lineHeight,\n offsetCenter: [0, `${this.labelValOffset}%`],\n },\n data: sourceData,\n title: {\n show: this.label,\n color: this.font.color,\n fontFamily: this.font.family,\n fontWeight: this.font.weight,\n fontSize: this.font.size,\n lineHeight: this.font.lineHeight,\n offsetCenter: [0, `${this.labelOffset}%`],\n overflow: 'breakAll',\n width: this.labelWidth,\n },\n axisLine: {\n roundCap: true,\n lineStyle: {\n width: this.width,\n color: this.getColor(this.seriesColor),\n },\n },\n max: this.max,\n min: this.min,\n axisLabel: {\n show: false,\n },\n splitLine: {\n show: false,\n },\n axisTick: {\n show: false,\n },\n pointer: {\n show: false,\n },\n },\n ],\n };\n this.data.push(chartOption);\n });\n }\n\n // console.log(this._data[0].value,this._data[0].value && Number(this._data[0].value) !== 0 ? true : false)\n\n // console.log(JSON.stringify(this.chartOption));\n }\n }\n ngOnInit() {}\n getColor(colorBox, type?: string) {\n const color = [];\n const color1 = [];\n const colorInfo = colorBox && colorBox.value ? colorBox.value : colorBox;\n colorInfo.forEach((item) => {\n color.push({\n type: 'linear',\n x: 0,\n y: 0,\n x2: 1,\n y2: 0,\n global: false,\n colorStops: [\n { offset: 0, color: item[0] },\n { offset: 1, color: item[1] },\n ],\n });\n });\n let count = 1;\n if (colorInfo.length > 1) {\n count = 1 / colorInfo.length;\n for (let i = 0; i < colorInfo.length; i++) {\n color1.push([count * (i + 1), color[i]]);\n }\n }\n return type === 'progress' ? color[0] : count < 1 ? color1 : [[1, color[0]]];\n }\n}\n","import { CUSTOM_ELEMENTS_SCHEMA, NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { GaugeProgressComponent } from './gauge-progress.component';\r\nimport { NgxEchartsModule } from 'ngx-echarts';\r\nimport { WidgetBaseModule, WidgetService } from 'bbj-widget-base';\r\nimport 'swiper/swiper-element-bundle.js';\r\n\r\n@NgModule({\r\n declarations: [GaugeProgressComponent],\r\n imports: [CommonModule, WidgetBaseModule, NgxEchartsModule],\r\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\r\n})\r\nexport class GaugeProgressModule {\r\n constructor(widgetService: WidgetService) {\r\n widgetService.register(GaugeProgressComponent);\r\n }\r\n}\r\n","import { Component, OnChanges, OnInit, SimpleChanges } from '@angular/core';\nimport { Data, Property, Widget } from 'bbj-widget-base';\n\n@Component({\n selector: 'sc-bulletin-board',\n templateUrl: './bulletin-board.component.html',\n styleUrls: ['./bulletin-board.component.less']\n})\n@Widget('布告栏', {group: 'component', icon: 'icontubiao', image: '/assets/img/screen/bulletin-board.png'})\nexport class BulletinBoardComponent implements OnInit,OnChanges {\n @Property('标题', {type:'string'})\n title='';\n @Property('标题字体', { ui: { widget: 'myFont' } })\n titleFont: any = { family: '', color: '#ffffff', weight: 'normal', size: 20, space: 0, lineHeight: 40 };\n @Property('小标题字', { ui: { widget: 'myFont' } })\n subtitleFont: any = { family: '', color: '#ffffff', weight: 'normal', size: 20, space: 0, lineHeight: 40 };\n @Property('字体', { ui: { widget: 'myFont' } })\n font: any = {\n family: '',\n color: '#FFFFFF',\n weight: 'normal',\n size: 12,\n space: 0,\n lineHeight: 12,\n };\n @Property('边框颜色', {\n ui: {\n widget: 'myColor',\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#ffffff'],\n },\n })\n borderColor = '';\n @Property('渐变开始', {\n ui: {\n widget: 'myColor',\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#ffffff'],\n },\n })\n startColor = '#D0021B';\n @Property('渐变结束', {\n ui: {\n widget: 'myColor',\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#ffffff'],\n },\n })\n endColor = '#F5A623';\n @Property('边框粗细',{\n type:'number'\n })\n borderWidth=5;\n @Property('分隔符',{\n type:'string'\n })\n separate=';';\n @Property('内容边距',{\n type:'number'\n })\n marginSize=';';\n @Data({\n properties: {\n title: { type: 'string', title: '小标题' },\n content: { type: 'string', title: '内容' },\n },\n })\n _data = [\n { title: '单位单位单位', content: '【带班领导】 张三 1300000000;【值班联系】 李四 1300000000 ' },\n { title: '单位单位单位', content: '【带班领导】 张三 1300000000;【值班联系】 李四 1300000000 ' },\n { title: '单位单位单位', content: '【带班领导】 张三 1300000000;【值班联系】 李四 1300000000 ' },\n { title: '单位单位单位', content: '【带班领导】 张三 1300000000;【值班联系】 李四 1300000000 ' },\n ];\n contentArr: any = [];\n titleStyle: any;\n textStyle: any;\n subtitleStyle: any;\n boxStyle: any;\n constructor() { }\n\n ngOnChanges(changes: SimpleChanges): void {\n if(this._data&&this._data.length>0){\n this._data.forEach(a=>{\n let obj={title:'',content:[]};\n let sp=this.separate;\n if(!sp||sp===''){\n sp=';';\n }\n obj.title=a.title;\n obj.content=a.content.split(sp);\n this.contentArr.push(obj);\n })\n }\n }\n\n ngOnInit(): void {\n this.titleStyle = {\n fontSize: this.titleFont.size + 'px',\n fontFamily: this.titleFont.family,\n color: this.titleFont.color,\n fontWeight: this.titleFont.weight,\n letterSpacing: this.titleFont.space + 'px',\n lineHeight: this.titleFont.lineHeight + 'px',\n // backgroundColor: this.headBackground,\n };\n this.subtitleStyle = {\n fontSize: this.subtitleFont.size + 'px',\n fontFamily: this.subtitleFont.family,\n color: this.subtitleFont.color,\n fontWeight: this.subtitleFont.weight,\n letterSpacing: this.subtitleFont.space + 'px',\n lineHeight: this.subtitleFont.lineHeight + 'px',\n borderLeft: this.borderWidth+'px'+' solid '+this.borderColor,\n background:'-webkit-linear-gradient(left,'+this.startColor+','+this.endColor+')',\n };\n this.textStyle = {\n fontSize: this.font.size + 'px',\n fontFamily: this.font.family,\n color: this.font.color,\n fontWeight: this.font.weight,\n letterSpacing: this.font.space + 'px',\n lineHeight: this.font.lineHeight + 'px',\n };\n this.boxStyle={\n margin: this.marginSize+'px 0px',\n }\n \n }\n\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { BulletinBoardComponent } from './bulletin-board.component';\nimport { WidgetService } from 'bbj-widget-base';\n\n\n\n@NgModule({\n declarations: [\n BulletinBoardComponent\n ],\n imports: [\n CommonModule\n ]\n})\nexport class BulletinBoardModule {\n constructor(widgetService: WidgetService) {\n widgetService.register(BulletinBoardComponent);\n }\n }\n","import { Component, ElementRef, OnInit, EventEmitter, OnChanges, SimpleChanges, ViewChild } from '@angular/core';\nimport { Property, Widget, DataOutput, Data } from 'bbj-widget-base';\n\n// install Swiper components\n// SwiperCore.use([\n// Navigation,\n// Pagination,\n// Scrollbar,\n// A11y,\n// Virtual,\n// Zoom,\n// Autoplay,\n// Thumbs,\n// Controller\n// ]);\n@Component({\n selector: 'sc-item-swiper',\n templateUrl: './item-swiper.component.html',\n styleUrls: ['./item-swiper.component.less'],\n})\n@Widget('轮播', { group: 'component', image: 'assets/img/screen/item-swiper.png', icon: 'iconmokuai' })\nexport class ItemSwiperComponent implements OnInit, OnChanges {\n @Property('标题字体', { ui: { widget: 'myFont' } })\n font: any = { family: 'Microsoft YaHei', color: '#ffffff', weight: 'normal', size: 20, space: 0, lineHeight: '66' };\n\n @Property('数值字体', { ui: { widget: 'myFont' } })\n numfont: any = {\n family: 'Microsoft YaHei',\n color: '#ffffff',\n weight: 'normal',\n size: 21,\n space: 0,\n lineHeight: '25',\n };\n @Property('分组字体', { ui: { widget: 'myFont' } })\n titlefont: any = {\n family: 'Microsoft YaHei',\n color: '#ffffff',\n weight: 'normal',\n size: 21,\n space: 0,\n lineHeight: '25',\n };\n @Property('可视个数', { type: 'number' })\n slidesPerView = 3;\n @Property('选项高度')\n selectHeight: number = 180;\n @Property('分组高度', { type: 'number' })\n gourpHeight = 0;\n @Property('值高度', { type: 'number' })\n valueBottom = 0;\n @Property('间距', { type: 'number' })\n spaceBetween = 10;\n\n @Property('左右按钮', {\n ui: { widget: 'boolean', checkedChildren: '开', unCheckedChildren: '关' },\n })\n navigation = true;\n\n @Property('按钮偏移', { type: 'number' })\n navigationMoveVal = -60;\n\n @Property('左图标', {\n type: 'string',\n ui: {\n widget: 'myUpload',\n },\n })\n navigationLeftIcon = null;\n\n @Property('右图标', {\n type: 'string',\n ui: {\n widget: 'myUpload',\n },\n })\n navigationRightIcon = null;\n\n @Property('显示模式', {\n ui: { widget: 'select' },\n enum: [{ label: '图标卡片', value: 'card' }],\n })\n showType = 'card';\n\n @Property('卡片背景', {\n type: 'string',\n ui: {\n widget: 'myUpload',\n },\n })\n cardBgImg = null;\n @Property('图片高度')\n height: number = 180;\n @Property('图片宽度')\n width: number = 180;\n @Property('是否分组')\n isgroup: boolean = false;\n @Property('图片分类', {\n type: 'array',\n title: '图片分类',\n maxItems: 10,\n items: {\n type: 'object',\n properties: {\n imageUrl: {\n type: 'string',\n title: '图片',\n ui: {\n widget: 'myPicture',\n },\n },\n },\n required: [],\n },\n ui: { visibleIf: { isgroup: [false] }, grid: { arraySpan: 24 }, spanControl: 24 },\n })\n images: any = [\n { imageUrl: 'assets/img/screen/picture9.png' },\n { imageUrl: 'assets/img/screen/picture9.png' },\n { imageUrl: 'assets/img/screen/picture9.png' },\n { imageUrl: 'assets/img/screen/picture9.png' },\n { imageUrl: 'assets/img/screen/picture9.png' },\n { imageUrl: 'assets/img/screen/picture9.png' },\n ];\n @Property('新增分组', {\n type: 'array',\n title: '新增分组',\n maxItems: 10,\n items: {\n type: 'object',\n properties: {\n groupName: {\n type: 'string',\n title: '组名',\n },\n imageUrl: {\n type: 'string',\n title: '图片',\n ui: {\n widget: 'myPicture',\n },\n },\n },\n required: [],\n },\n ui: { visibleIf: { isgroup: [true] }, grid: { arraySpan: 24 }, spanControl: 24 },\n })\n groups = [\n { groupName: '1', imageUrl: 'assets/img/screen/picture9.png' },\n { groupName: '2', imageUrl: 'assets/img/screen/picture9.png' },\n { groupName: '3', imageUrl: 'assets/img/screen/picture9.png' },\n { groupName: '4', imageUrl: 'assets/img/screen/picture9.png' },\n { groupName: '5', imageUrl: 'assets/img/screen/picture9.png' },\n { groupName: '6', imageUrl: 'assets/img/screen/picture9.png' },\n ];\n groupfont: any = {};\n @Data({\n properties: {\n label: { title: '标题', type: 'string' },\n value: { title: '值', type: 'string' },\n group: { title: '分组', type: 'string' },\n },\n })\n _data: any[] = [\n { label: '测试1', value: '1000', group: '1' },\n { label: '测试2', value: '1000', group: '2' },\n { label: '测试3', value: '1000', group: '3' },\n { label: '测试4', value: '1000', group: '4' },\n { label: '测试5', value: '1000', group: '5' },\n { label: '测试6', value: '1000', group: '6' },\n ];\n @DataOutput('值')\n valueChange = new EventEmitter<any>();\n\n navigationBtnConfig = {\n prevEl: '.swiper-navigation-prev',\n nextEl: '.swiper-navigation-next',\n };\n\n data: any = [];\n items: any = {};\n showNavigation = true;\n constructor(private ele: ElementRef) {}\n\n ngOnInit(): void {\n if (this.isgroup) {\n this.groupfont = {\n fontSize: this.titlefont.size + 'px',\n fontFamily: this.titlefont.family,\n color: this.titlefont.color,\n fontWeight: this.titlefont.weight,\n letterSpacing: this.titlefont.space + 'px',\n lineHeight: this.titlefont.lineHeight + 'px',\n top: this.gourpHeight + 'px',\n };\n }\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n this.items = {};\n this.data = [];\n if (changes.numfont) {\n this.numfont = {\n fontSize: this.numfont.size + 'px',\n fontFamily: this.numfont.family,\n color: this.numfont.color,\n fontWeight: this.numfont.weight,\n letterSpacing: this.numfont.space + 'px',\n lineHeight: this.numfont.lineHeight + 'px',\n };\n }\n if (changes.font) {\n this.font = {\n fontSize: this.font.size + 'px',\n fontFamily: this.font.family,\n color: this.font.color,\n fontWeight: this.font.weight,\n letterSpacing: this.font.space + 'px',\n lineHeight: this.font.lineHeight + 'px',\n };\n }\n if (this._data && this._data[0] && !this.isgroup) {\n this._data.forEach((t, i) => {\n let img = '';\n if (this.images) {\n img = this.images[i]?.imageUrl || this.images[this.images.length - 1].imageUrl;\n t.imgstyle = {\n height: (this.height || 30) + 'px',\n width: (this.width || 30) + 'px',\n };\n }\n t.img = img;\n this.data.push(t);\n });\n }\n if (this._data && this._data[0] && this.isgroup) {\n this._data.forEach((t: any) => {\n let groupName = t.group || ' ';\n if (!this.items[groupName]) {\n this.items[groupName] = {};\n }\n let a = this.items[groupName];\n if (!a.field) {\n a.field = [];\n }\n let arr = a.field;\n arr.push({ label: t.label, value: t.value });\n });\n if (this.groups && this.groups.length > 0) {\n this.groups.forEach((e) => {\n let a = this.items[e.groupName];\n if (!a) {\n return;\n }\n a.img = e.imageUrl || '';\n a.imgstyle = {\n height: (this.height || 30) + 'px',\n width: (this.width || 30) + 'px',\n };\n });\n }\n Object.keys(this.items).forEach((key) => {\n let map = this.items[key];\n map['group'] = key;\n this.data.push(map);\n });\n }\n if (!this.data || !this.data[0]) {\n this.showNavigation = false;\n } else {\n this.showNavigation = this.navigation;\n }\n console.log(this.data);\n }\n onSwiper(swiper) {}\n onSlideChange() {}\n}\n","import { CUSTOM_ELEMENTS_SCHEMA, NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { ItemSwiperComponent } from './item-swiper.component';\nimport { WidgetBaseModule, WidgetService } from 'bbj-widget-base';\nimport { NzSpaceModule } from 'ng-zorro-antd/space';\nimport 'swiper/swiper-element-bundle.js';\n\n@NgModule({\n declarations: [ItemSwiperComponent],\n imports: [CommonModule, WidgetBaseModule, NzSpaceModule],\n schemas: [CUSTOM_ELEMENTS_SCHEMA],\n})\nexport class ItemSwiperModule {\n constructor(widgetService: WidgetService) {\n widgetService.register(ItemSwiperComponent);\n }\n}\n","import {\r\n Component,\r\n ElementRef,\r\n EventEmitter,\r\n Inject,\r\n OnChanges,\r\n OnInit,\r\n Optional,\r\n Renderer2,\r\n SimpleChanges,\r\n} from '@angular/core';\r\nimport { CustomExport, Data, DataOutput, Widget, WIDGET_CONFIG } from 'bbj-widget-base';\r\n\r\n@Component({\r\n selector: 'sc-temporary-data',\r\n templateUrl: './temporary-data.component.html',\r\n styleUrls: ['./temporary-data.component.less'],\r\n})\r\n@Widget('临时数据', { group: 'component', image: 'assets/img/screen/temporary-data.png', icon: 'iconmokuai' })\r\nexport class TemporaryDataComponent implements OnInit, OnChanges, CustomExport {\r\n @Data({})\r\n data: any[] = [];\r\n\r\n @DataOutput('数据')\r\n dataChange = new EventEmitter<any>();\r\n\r\n edit: boolean;\r\n\r\n constructor(private renderer: Renderer2, private elementRef: ElementRef) {}\r\n\r\n ngOnInit(): void {\r\n if (!this.edit) {\r\n this.renderer.setStyle(this.elementRef.nativeElement, 'display', 'none');\r\n }\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes.data) {\r\n this.dataChange.emit(this.data);\r\n }\r\n }\r\n\r\n exportWord() {\r\n return null;\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { TemporaryDataComponent } from './temporary-data.component';\nimport { WidgetService } from 'bbj-widget-base';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\n\n@NgModule({\n declarations: [TemporaryDataComponent],\n imports: [CommonModule, NzIconModule],\n})\nexport class TemporaryDataModule {\n constructor(widgetService: WidgetService) {\n widgetService.register(TemporaryDataComponent);\n }\n}\n","import { AfterViewInit, Component, ElementRef, HostListener, OnInit, ViewChild } from '@angular/core';\nimport { Property, Widget } from 'bbj-widget-base';\n\n@Component({\n selector: 'sc-line-light-flow',\n templateUrl: './line-light-flow.component.html',\n styleUrls: ['./line-light-flow.component.css'],\n})\n@Widget('光线特效', {\n group: 'mipAnim',\n})\nexport class LineLightFlowComponent implements OnInit, AfterViewInit {\n @Property('线条颜色', {\n ui: {\n widget: 'myColor',\n },\n })\n lineColor = '#004CB3';\n @Property('线条阴影', {\n ui: {\n widget: 'myColor',\n },\n })\n lineshadowColor = 'rgba(0, 193, 220, 1)';\n\n @Property('高亮颜色', {\n ui: {\n widget: 'myColor',\n },\n })\n lineHightLightColor = '#8ED6FF';\n\n @Property('中间间距', {\n type: 'number'\n })\n distance = 10;\n @Property('上边距', {\n type: 'number'\n })\n topDistance = 0;\n\n @ViewChild('lineCanvas') lineCanvas: ElementRef;\n opt: any;\n\n @ViewChild('canvasBox') canvasBox: ElementRef;\n resizeTimeout: any;\n constructor() {\n\n }\n\n @HostListener('window:resize')\n resize() {\n if (this.resizeTimeout) {\n clearTimeout(this.resizeTimeout);\n }\n this.resizeTimeout = setTimeout(() => {\n this.reload();\n this.resizeTimeout = null;\n }, 100);\n }\n ngAfterViewInit(): void {\n this.reload();\n }\n\n reload() {\n this.opt = {};\n this.opt.currentIndex = 1;\n this.opt.canvas = this.lineCanvas.nativeElement;\n this.initOpt();\n this._initCanvas(this.opt.canvas, this.opt.width, this.opt.height);\n this._createPattern(this.opt.canvas);\n this.draw(0);\n\n }\n\n ngOnInit(): void {\n // this.opt = {};\n // this.opt.currentIndex = 1;\n // this.opt.canvas = this.lineCanvas.nativeElement;\n\n // this.initOpt();\n // this._initCanvas(this.opt.canvas, this.opt.width, this.opt.height);\n // this._createPattern(this.opt.canvas);\n // this.draw(0);\n }\n\n initOpt() {\n const d = this.distance || 100;\n const innerW = this.canvasBox.nativeElement.offsetWidth;\n // const d = Math.round(innerW * (Number(this.distance) || 10) / 100); // 间距\n console.log(innerW, innerW * (Number(this.distance)) / 100, '间距', d)\n this.opt = {\n ...this.opt,\n animating: true,\n distance: d,\n width: innerW,\n tabHeight: 40,\n height: 60,\n curDisX: 0,\n currentIndex: 0,\n avgSpeed: this.calcAVGSpeed(d * 2),\n tabWidthList: [\n Math.round(innerW / 2) - d / 2,\n Math.round(innerW / 2) + d / 2,\n ]\n };\n }\n // 计算速度\n calcAVGSpeed(a) {\n const [j, k, l] = [0.85, 10, 4];\n let b = (l * j * a + k * (1 - j) * a) / (k * l * 20);\n return (b = Math.max(Math.abs(b), 2.5) * Math.sign(b)), b;\n }\n // 获取当前速度\n getCurSpeed(a, b) {\n const [j, k, l] = [0.85, 10, 4];\n const c = Math.abs(a) > Math.abs(j * b) ? l * this.opt.avgSpeed : k * this.opt.avgSpeed;\n return c;\n }\n // 生成曲线\n _calCurve(a, b, c, d, e, f) {\n // console.log(a + f,b,c-f,d,c,d);\n e.bezierCurveTo(a + f, b, c - f, d, c, d);\n }\n\n // 初始化画布\n _initCanvas(canvas, width, height) {\n const devicePixelRatio = window.devicePixelRatio;\n const canvasObj = canvas.getContext('2d');\n canvas.width = width * devicePixelRatio;\n canvas.height = height * devicePixelRatio;\n canvas.style.width = width + 'px';\n canvas.style.height = height + 'px';\n canvasObj.scale(devicePixelRatio, devicePixelRatio);\n }\n\n // 创建遮盖蒙版\n _createPattern(a) {\n const [b, c, d] = [140, 23, 1];\n let e = document.createElement('canvas');\n (e.width = b), (e.height = c), (e.style.width = b / d + 'px'), (e.style.height = c / d + 'px');\n const f = e.getContext('2d');\n // 缩放 宽高 100%\n f.scale(d, d);\n f.lineWidth = 0.4;\n for (let g = 3, h = 0.8, j = 1; 2 > j; j++) {\n // 设置或返回用于笔触的颜色、渐变或模式\n f.strokeStyle = 'RGBA(0, 0, 0,0)';\n // 开始一条路径\n f.beginPath();\n // 把路径移动到画布中的指定点,不创建线条\n f.moveTo(0, j * g);\n // 添加一个新点,然后在画布中创建从该点到最后指定点的线条\n f.lineTo(b, j * g);\n // 绘制已定义的路径\n f.stroke();\n // 创建从当前点回到起始点的路径\n f.closePath();\n if (10 < j) { h -= 0.1; }\n }\n const i = a.getContext('2d').createPattern(e, 'repeat-x');\n (this.opt.pattern = i), (e = null);\n }\n\n\n // 高亮\n _drawHightlight(a) {\n // a = 0\n const opt = this.opt;\n const b = opt.canvas.getContext('2d');\n const d = 0.3;\n // clearRect 在给定的矩形内清除指定的像素,这里清完了\n b.clearRect(0, 0, 2 * opt.width, 2 * opt.height);\n b.shadowColor = this.lineshadowColor;\n b.shadowBlur = 5;\n b.strokeStyle = this.lineColor;\n b.lineWidth = 0.8;\n b.fillStyle = 'none';\n this._draw(b, false);\n // 这里绘制了外围边框线条\n // return false;\n const e = b.createLinearGradient(0, 0, opt.width, opt.height);\n const f = a - d;\n e.addColorStop(Math.min(1, Math.max(0, 0 + f)), 'rgba(0,0,0,0)');\n e.addColorStop(Math.min(1, Math.max(0, 0 + f + 0.1)), this.lineHightLightColor);\n e.addColorStop(Math.min(1, 0 + f + d), this.lineHightLightColor);\n e.addColorStop(Math.min(1, 0 + f + d + 0.1), 'rgba(0,0,0,0)');\n e.addColorStop(1, 'rgba(0,0,0,0)');\n b.lineWidth = 1.5;\n b.strokeStyle = e;\n b.fillStyle = opt.pattern;\n this._draw(b, true);\n }\n\n draw(a) {\n // console.log(a);\n this._drawHightlight(a);\n // return false;\n\n this.opt.timer = requestAnimationFrame(() => {\n // console.log(a);\n this.draw((a + 0.005) % 1.6);\n });\n }\n\n _draw(canvasObj, trueorfalse) {\n const opt = this.opt;\n const tableHeight = opt.tabHeight;\n const [f, g, i, j, k] = [0, 110, 40, 0.5, 2.5];\n let l = 0;\n if (\n (canvasObj.beginPath(),\n canvasObj.moveTo(-50, -15),\n canvasObj.lineTo(-50, j),\n opt.animating)\n ) {\n const m = this.getCurSpeed(opt.curDisX, opt.distance);\n l = Math.min(Math.abs(opt.distance), Math.abs(opt.curDisX + m)) * Math.sign(m);\n }\n if (\n (canvasObj.lineTo(\n f + opt.tabWidthList[0] + l - g / 2,\n k + j\n ),\n this._calCurve(\n f + opt.tabWidthList[0] + l - g / 2,\n k + j,\n f + opt.tabWidthList[0] + l + g / 2,\n tableHeight + j,\n canvasObj,\n i\n ),\n opt.animating)\n ) {\n const o =\n opt.tabWidthList[opt.nextIndex + 1] -\n opt.tabWidthList[opt.nextIndex];\n canvasObj.lineTo(\n f + opt.tabWidthList[0] + o + l - g / 2,\n tableHeight + j\n ),\n this._calCurve(\n f + opt.tabWidthList[0] + o + l - g / 2,\n tableHeight + j,\n f + opt.tabWidthList[0] + o + l + g / 2,\n k + j,\n canvasObj,\n i\n );\n } else {\n // lineTO添加一个新点 宽度长度\n canvasObj.lineTo(\n f + opt.tabWidthList[1] + l - g / 2,\n tableHeight + j\n );\n this._calCurve(\n f + opt.tabWidthList[1] + l - g / 2,\n tableHeight + j,\n f + opt.tabWidthList[1] + l + g / 2,\n k + j,\n canvasObj,\n i\n );\n }\n\n canvasObj.lineTo(opt.width + 10, j);\n canvasObj.lineTo(opt.width + 10, -15);\n canvasObj.closePath();\n canvasObj.stroke();\n if (trueorfalse) { canvasObj.fill(); }\n if (opt.animating && trueorfalse) { opt.curDisX = l; }\n if (Math.abs(l) >= Math.abs(opt.distance)) { opt.animating = false; }\n }\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { WidgetBaseModule, WidgetService } from 'bbj-widget-base';\nimport { LineLightFlowComponent } from './line-light-flow.component';\n\n\n\n@NgModule({\n declarations: [\n LineLightFlowComponent\n ],\n imports: [\n CommonModule,\n WidgetBaseModule\n ]\n})\nexport class LineLightFlowModule {\n constructor(widgetService: WidgetService) {\n widgetService.register(LineLightFlowComponent);\n }\n }\n","import { Component, OnChanges, OnInit, SimpleChanges } from '@angular/core';\r\nimport { Data, Method, Param, Property, Widget } from 'bbj-widget-base';\r\n\r\n@Component({\r\n selector: 'sc-iframe',\r\n templateUrl: './iframe.component.html',\r\n styleUrls: ['./iframe.component.less'],\r\n})\r\n@Widget('iframe', { group: 'component', image: 'assets/img/screen/iframe.png', icon: 'iconmokuai' })\r\nexport class IframeComponent implements OnInit, OnChanges {\r\n @Property('url')\r\n url: string;\r\n\r\n @Data({ properties: { url: { type: 'string', title: 'url' } } })\r\n data: any[];\r\n edit: boolean;\r\n\r\n constructor() {}\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes.data) {\r\n if (this.data.length && this.data[0].url) {\r\n this.url = this.data[0].url;\r\n }\r\n }\r\n }\r\n\r\n ngOnInit(): void {}\r\n\r\n @Method('设置url')\r\n setUrl(@Param('url') url: string) {\r\n this.url = url;\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { IframeComponent } from './iframe.component';\nimport { NzPipesModule } from 'ng-zorro-antd/pipes';\nimport { WidgetService } from 'bbj-widget-base';\n\n@NgModule({\n declarations: [IframeComponent],\n imports: [CommonModule, NzPipesModule],\n})\nexport class IframeModule {\n constructor(widgetService: WidgetService) {\n widgetService.register(IframeComponent);\n }\n}\n","import { Component, HostBinding, OnChanges, OnInit, SimpleChanges } from '@angular/core';\r\nimport { DataInput, Property, Widget, Data, Method, Param } from 'bbj-widget-base';\r\n\r\n@Component({\r\n selector: 'sc-video-grid',\r\n templateUrl: './video-grid.component.html',\r\n styleUrls: ['./video-grid.component.less'],\r\n})\r\n@Widget('视频宫格', { group: 'component', image: 'assets/img/screen/video-grid.png', icon: 'iconmokuai' })\r\nexport class VideoGridComponent implements OnInit, OnChanges {\r\n @Property('宫格数', {\r\n enum: [\r\n { label: '四宫格', value: 4 },\r\n { label: '九宫格', value: 9 },\r\n ],\r\n })\r\n size = 4;\r\n @Property('间隔', { type: 'number' })\r\n gutter = 4;\r\n @Property('切换按钮')\r\n showToggle: boolean;\r\n @Property('视频类型', { enum: ['flv', 'hls', 'iframe'] })\r\n type = 'flv';\r\n @Property('是否有声音')\r\n hasAudio: boolean;\r\n @DataInput('视频地址')\r\n src: string;\r\n @Data({\r\n properties: {\r\n src: { title: '视频地址', type: 'string' },\r\n },\r\n })\r\n data: any = [];\r\n height: string;\r\n cellSize: string;\r\n videos = [];\r\n margin: number;\r\n selectedIndex = 0;\r\n\r\n constructor() {}\r\n\r\n ngOnInit(): void {\r\n this.updateSize();\r\n }\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes.size) {\r\n this.updateSize();\r\n }\r\n if (changes.gutter) {\r\n this.updateGutter();\r\n }\r\n if (changes.src) {\r\n this.addSrc(this.src);\r\n }\r\n if (changes.data) {\r\n if (this.data?.length) {\r\n this.data.forEach((r, i) => {\r\n const video = this.videos[i];\r\n if (video) {\r\n video.src = r.src;\r\n }\r\n });\r\n }\r\n }\r\n }\r\n\r\n updateSize() {\r\n if (this.size !== this.videos.length) {\r\n if (this.size > this.videos.length) {\r\n for (let i = this.videos.length; i < this.size; i++) {\r\n this.videos.push({});\r\n }\r\n } else {\r\n this.videos = this.videos.slice(0, this.size);\r\n }\r\n if (this.size === 9) {\r\n this.cellSize = '33.33%';\r\n } else {\r\n this.cellSize = '50%';\r\n }\r\n this.validIndex();\r\n }\r\n }\r\n\r\n updateGutter() {\r\n if (this.gutter) {\r\n this.margin = -this.gutter;\r\n this.height = `calc(100% + ${this.gutter * 2}px)`;\r\n }\r\n }\r\n\r\n validIndex() {\r\n if (this.selectedIndex >= this.videos.length) {\r\n this.selectedIndex = 0;\r\n }\r\n }\r\n\r\n @Method('设置视频地址')\r\n addSrc(@Param('视频地址') src: string) {\r\n if (src) {\r\n const video = this.videos[this.selectedIndex];\r\n if (video) {\r\n video.src = src;\r\n }\r\n this.selectedIndex++;\r\n this.validIndex();\r\n }\r\n }\r\n\r\n toggle() {\r\n this.size = this.size === 4 ? 9 : 4;\r\n this.updateSize();\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { VideoGridComponent } from './video-grid.component';\nimport { WidgetService } from 'bbj-widget-base';\nimport { NzGridModule } from 'ng-zorro-antd/grid';\nimport { VideoPlayerModule } from '../shared/component/video-player/video-player.module';\nimport { NzIconModule } from 'ng-zorro-antd/icon';\n\n@NgModule({\n declarations: [VideoGridComponent],\n imports: [CommonModule, VideoPlayerModule, NzGridModule,NzIconModule],\n})\nexport class VideoGridModule {\n constructor(widgetService: WidgetService) {\n widgetService.register(VideoGridComponent);\n }\n}\n","import { Component, OnChanges, OnInit, SimpleChanges } from '@angular/core';\nimport { Widget, Data, Property } from 'bbj-widget-base';\n\n@Component({\n selector: 'sc-scatter3d',\n templateUrl: './scatter3d.component.html',\n styleUrls: ['./scatter3d.component.less'],\n})\n@Widget('3D散点图', {\n group: 'otherChart',\n image: 'assets/img/screen/bubble.png',\n icon: 'icontubiao',\n})\nexport class Scatter3dComponent implements OnInit, OnChanges {\n @Property('最小值', { type: 'number' })\n min = 0;\n @Property('最大值', { type: 'number' })\n max = 10;\n @Property('最小尺寸', { type: 'number' })\n symbolSizeMin = 10;\n @Property('最大尺寸', { type: 'number' })\n symbolSizeMax = 20;\n @Property('颜色', {\n ui: {\n widget: 'seriesColor',\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],\n },\n })\n visualMapColor = [\n '#313695',\n '#4575b4',\n '#74add1',\n '#abd9e9',\n '#e0f3f8',\n '#ffffbf',\n '#fee090',\n '#fdae61',\n '#f46d43',\n '#d73027',\n '#a50026',\n ];\n @Property('最小不透明度', { type: 'number', minimum: 0, maximum: 1 })\n colorAlphaMin = 0.5;\n @Property('最大不透明度', { type: 'number', minimum: 0, maximum: 1 })\n colorAlphaMax = 1;\n @Property('高度', { type: 'number' })\n boxHeight = 100;\n @Property('宽度', { type: 'number' })\n boxWidth = 100;\n @Property('深度', { type: 'number' })\n boxDepth = 100;\n\n @Data({\n properties: {\n x: { type: 'number', title: 'x' },\n y: { type: 'number', title: 'y' },\n z: { type: 'number', title: 'z' },\n value: { type: 'number', title: '值' },\n },\n })\n data = [\n { x: 0, y: 0, z: 0, value: 1 },\n { x: 0, y: 0, z: 1, value: 2 },\n { x: 0, y: 1, z: 0, value: 3 },\n { x: 0, y: 1, z: 1, value: 4 },\n { x: 1, y: 0, z: 0, value: 5 },\n { x: 1, y: 0, z: 1, value: 6 },\n { x: 1, y: 1, z: 0, value: 7 },\n { x: 1, y: 1, z: 1, value: 8 },\n ];\n options: any;\n constructor() {}\n\n ngOnInit(): void {\n this.reset();\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n this.reset();\n }\n\n reset() {\n const data = this.data ? this.data.map((item) => [item.x, item.y, item.z, item.value]) : [];\n this.options = {\n visualMap: {\n show: false,\n min: this.min,\n max: this.max,\n inRange: {\n symbolSize: [this.symbolSizeMin, this.symbolSizeMax],\n color: this.visualMapColor,\n colorAlpha: [this.colorAlphaMin, this.colorAlphaMax],\n },\n },\n xAxis3D: {\n type: 'value',\n },\n yAxis3D: {\n type: 'value',\n },\n zAxis3D: {\n type: 'value',\n },\n grid3D: {\n axisLine: {\n lineStyle: { color: '#fff' },\n },\n axisPointer: {\n lineStyle: { color: '#fff' },\n },\n viewControl: {\n // autoRotate: true\n },\n boxHeight: this.boxHeight ?? 100,\n boxWidth: this.boxWidth ?? 100,\n boxDepth: this.boxDepth ?? 100,\n },\n series: [\n {\n type: 'scatter3D',\n data,\n },\n ],\n };\n console.log(this.options);\n }\n\n onChartClick(event) {}\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { Scatter3dComponent } from './scatter3d.component';\nimport { NgxEchartsModule } from 'ngx-echarts';\nimport { WidgetBaseModule, WidgetService } from 'bbj-widget-base';\n\n@NgModule({\n declarations: [Scatter3dComponent],\n imports: [CommonModule, WidgetBaseModule, NgxEchartsModule],\n})\nexport class Scatter3dModule {\n constructor(widgetService: WidgetService) {\n widgetService.register(Scatter3dComponent);\n }\n}\n","import { NgModule } from '@angular/core';\r\nimport { ImageModule } from './image/image.module';\r\nimport { BasicLineChartModule } from './basic-line-chart/basic-line-chart.module';\r\nimport { ButtonModule } from './button/button.module';\r\nimport { TimerModule } from './timer/timer.module';\r\nimport { NumberFlopModule } from './number-flop/number-flop.module';\r\nimport { VoteModule } from './vote/vote.module';\r\nimport { SelectModule } from './select/select.module';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { SearchModule } from './search/search.module';\r\nimport { WeatherModule } from './weather/weather.module';\r\nimport { RadioModule } from './radio/radio.module';\r\nimport { CheckboxModule } from './checkbox/checkbox.module';\r\nimport { RateModule } from './rate/rate.module';\r\nimport { GeneralTextModule } from './general-text/general-text.module';\r\nimport { MarqueeModule } from './marquee/marquee.module';\r\nimport { WordartModule } from './wordart/wordart.module';\r\nimport { IconfontModule } from './iconfont/iconfont.module';\r\nimport { AudioModule } from './audio/audio.module';\r\nimport { BasicBarChartModule } from './basic-bar-chart/basic-bar-chart.module';\r\nimport { BasicPieChartModule } from './basic-pie-chart/basic-pie-chart.module';\r\nimport { BarChartThreeDModule } from './bar-chart-three-d/bar-chart-three-d.module';\r\nimport { ShapeModule } from './shape/shape.module';\r\nimport { LineBarChartModule } from './line-bar-chart/line-bar-chart.module';\r\nimport { BubbleChartModule } from './bubble-chart/bubble-chart.module';\r\nimport { RadarChartModule } from './radar-chart/radar-chart.module';\r\nimport { FunnelChartModule } from './funnel-chart/funnel-chart.module';\r\nimport { BackgroundModule } from './background/background.module';\r\nimport { GaugeModule } from './gauge/gauge.module';\r\nimport { PercentPieChartModule } from './percent-pie-chart/percent-pie-chart.module';\r\nimport { TreeRingChartModule } from './tree-ring-chart/tree-ring-chart.module';\r\nimport { LiquidFillModule } from './liquid-fill/liquid-fill.module';\r\nimport { ShufflingListModule } from './shuffling-list/shuffling-list.module';\r\n// import {DropDownDetailListModule} from './drop-down-detail-list/drop-down-detail-list.module';\r\n// import {DynamicListModule} from './dynamic-list/dynamic-list.module';\r\nimport { BasicPlanimetricMapModule } from './basic-planimetric-map/basic-planimetric-map.module';\r\nimport { BreathingBubbleLayerModule } from './breathing-bubble-layer/breathing-bubble-layer.module';\r\nimport { PlanimetricMap2dModule } from './planimetric-map2d/planimetric-map2d.module';\r\nimport { ParentContainerModule } from './parent-container/parent-container.module';\r\nimport { PlanimetricMap3dModule } from './planimetric-map3d/planimetric-map3d.module';\r\nimport { MipAnimComponent } from './mip-anim/mip-anim.component';\r\nimport { MipAnimModule } from './mip-anim/mip-anim.module';\r\nimport { TreeControlModule } from './tree-control/tree-control.module';\r\nimport { VisualMapChartModule } from './visual-map-chart/visual-map-chart.module';\r\nimport { DatePickerModule } from './date-picker/date-picker.module';\r\nimport { TimePickerModule } from './time-picker/time-picker.module';\r\nimport { CustomBaiduMapModule } from './custom-baidu-map/custom-baidu-map.module';\r\nimport { WidgetService } from 'bbj-widget-base';\r\nimport { ImageComponent } from './image/image.component';\r\nimport { icons } from './iconfont/icon';\r\nimport { IconfontComponent } from './iconfont/iconfont.component';\r\nimport { GeneralTextComponent } from './general-text/general-text.component';\r\nimport { WordartComponent } from './wordart/wordart.component';\r\nimport { AudioComponent } from './audio/audio.component';\r\nimport { BasicLineChartComponent } from './basic-line-chart/basic-line-chart.component';\r\nimport { BarChartThreeDComponent } from './bar-chart-three-d/bar-chart-three-d.component';\r\nimport { ShapeComponent } from './shape/shape.component';\r\nimport { LineBarChartComponent } from './line-bar-chart/line-bar-chart.component';\r\nimport { BackgroundComponent } from './background/background.component';\r\nimport { BasicPieChartComponent } from './basic-pie-chart/basic-pie-chart.component';\r\nimport { BasicBarChartComponent } from './basic-bar-chart/basic-bar-chart.component';\r\nimport { ButtonComponent } from './button/button.component';\r\nimport { SelectComponent } from './select/select.component';\r\nimport { UploadModule } from './upload/upload.module';\r\nimport { TreeControlComponent } from './tree-control/tree-control.component';\r\nimport { CrossTableModule } from './cross-table/cross-table.module';\r\nimport { DatePickerComponent } from './date-picker/date-picker.component';\r\nimport { TableModule } from './table/table.module';\r\nimport { Pie3dChartModule } from './pie3d-chart/pie3d-chart.module';\r\nimport { MultiTitleGaugeModule } from './multi-title-gauge/multi-title-gauge.module';\r\nimport { GaugeProgressModule } from './gauge-progress/gauge.module';\r\nimport { CheckboxComponent } from './checkbox/checkbox.component';\r\nimport { BulletinBoardModule } from './bulletin-board/bulletin-board.module';\r\n// import {MyBaiduMapModule} from './my-baidu-map/my-baidu-map.module';\r\n// import {DataMapModule} from './data-map/data-map.module';\r\nimport { ItemSwiperModule } from './item-swiper/item-swiper.module';\r\nimport { TemporaryDataModule } from './temporary-data/temporary-data.module';\r\nimport { LineLightFlowModule } from './line-light-flow/line-light-flow.module';\r\nimport { IframeModule } from './iframe/iframe.module';\r\nimport { VideoGridModule } from './video-grid/video-grid.module';\r\nimport { Scatter3dModule } from './scatter3d/scatter3d.module';\r\n@NgModule({\r\n imports: [\r\n FormsModule,\r\n ImageModule,\r\n BasicLineChartModule,\r\n BasicPieChartModule,\r\n BasicBarChartModule,\r\n LineBarChartModule,\r\n BarChartThreeDModule,\r\n BubbleChartModule,\r\n RadarChartModule,\r\n FunnelChartModule,\r\n PercentPieChartModule,\r\n TreeRingChartModule,\r\n GaugeModule,\r\n LiquidFillModule,\r\n ButtonModule,\r\n TimerModule,\r\n NumberFlopModule,\r\n VoteModule,\r\n SelectModule,\r\n SearchModule,\r\n WeatherModule,\r\n RadioModule,\r\n CheckboxModule,\r\n RateModule,\r\n GeneralTextModule,\r\n MarqueeModule,\r\n WordartModule,\r\n IconfontModule,\r\n TableModule,\r\n AudioModule,\r\n ShapeModule,\r\n BackgroundModule,\r\n ShufflingListModule,\r\n BasicPlanimetricMapModule,\r\n BreathingBubbleLayerModule,\r\n PlanimetricMap2dModule,\r\n ParentContainerModule,\r\n PlanimetricMap3dModule,\r\n MipAnimModule,\r\n TreeControlModule,\r\n VisualMapChartModule,\r\n DatePickerModule,\r\n TimePickerModule,\r\n CustomBaiduMapModule,\r\n UploadModule,\r\n CrossTableModule,\r\n Pie3dChartModule,\r\n MultiTitleGaugeModule,\r\n GaugeProgressModule,\r\n ItemSwiperModule,\r\n BulletinBoardModule,\r\n TemporaryDataModule,\r\n LineLightFlowModule,\r\n IframeModule,\r\n VideoGridModule,\r\n Scatter3dModule,\r\n // DropDownDetailListModule,\r\n // DynamicListModule,\r\n // MyBaiduMapModule,\r\n // DataMapModule\r\n ],\r\n exports: [],\r\n declarations: [],\r\n})\r\nexport class ScreenWidgetModule {\r\n constructor(widgetService: WidgetService) {\r\n widgetService.register(ButtonComponent, { size: { width: 60, height: 30 } });\r\n widgetService.register(SelectComponent, {\r\n size: { width: 200, height: 36 },\r\n option: {\r\n borderColor: '#3285ff',\r\n background: 'rgba(50,133,255,0.2)',\r\n dropdownBackgroundColor: '#3285ff',\r\n selectDropDownColor: '#fff',\r\n selectHoverColor: '#fff',\r\n selectHoverBackgroundColor: '#3285ff',\r\n font: { color: '#ffffff' },\r\n dropdownBg: 'rgba(50,133,255,0.2)',\r\n dropdownBorderColor: '#3285ff',\r\n },\r\n });\r\n for (let i = 1; i <= 82; i++) {\r\n widgetService.register(ImageComponent, {\r\n option: { image: `assets/img/screen/picture${i}.png` },\r\n });\r\n }\r\n icons.forEach((icon) => {\r\n widgetService.register(IconfontComponent, {\r\n option: { icon },\r\n });\r\n });\r\n widgetService.register(\r\n GeneralTextComponent,\r\n {\r\n className: 'big-title title',\r\n title: '大标题',\r\n option: {\r\n title: '大标题',\r\n font: { family: '', color: '#ffffff', weight: 'normal', size: 36, space: 0, lineHeight: 50 },\r\n },\r\n },\r\n {\r\n className: 'normal-title title',\r\n title: '标题',\r\n option: {\r\n title: '标题',\r\n font: { family: '', color: '#ffffff', weight: 'normal', size: 32, space: 0, lineHeight: 45 },\r\n },\r\n },\r\n {\r\n className: 'subtitle title',\r\n title: '副标题',\r\n option: {\r\n title: '副标题',\r\n font: { family: '', color: '#ffffff', weight: 'normal', size: 24, space: 0, lineHeight: 33 },\r\n },\r\n },\r\n {\r\n className: 'small-title title',\r\n title: '小标题',\r\n option: {\r\n title: '小标题',\r\n font: { family: '', color: '#ffffff', weight: 'normal', size: 16, space: 0, lineHeight: 22 },\r\n },\r\n },\r\n {\r\n className: 'content title',\r\n title: '正文内容',\r\n option: {\r\n title: '正文内容',\r\n font: { family: '', color: '#ffffff', weight: 'normal', size: 13, space: 0, lineHeight: 18 },\r\n },\r\n },\r\n );\r\n widgetService.register(\r\n WordartComponent,\r\n {\r\n className: 'wordart1 wordart',\r\n title: '可视化数字大屏',\r\n option: {\r\n title: '可视化数字大屏',\r\n font: { family: 'cursive', color: '#3285FF', weight: 'normal', size: 24, space: 0, lineHeight: '' },\r\n },\r\n },\r\n {\r\n className: 'wordart2 wordart',\r\n title: '可视化数字大屏',\r\n option: {\r\n title: '可视化数字大屏',\r\n font: { family: 'sans-serif', color: '#7ee5ce', weight: 'bold', size: 24, space: 0, lineHeight: '' },\r\n },\r\n },\r\n {\r\n className: 'wordart3 wordart',\r\n title: '可视化数字大屏',\r\n option: {\r\n title: '可视化数字大屏',\r\n backgroundImage: '-webkit-linear-gradient(-90deg, #09FFDD 14%, #0055FF 100%)',\r\n font: { family: 'sans-serif', color: '#7ee5ce', weight: 'bold', size: 24, space: 0, lineHeight: '' },\r\n },\r\n },\r\n {\r\n className: 'wordart4 wordart',\r\n title: '可视化数字大屏',\r\n option: {\r\n title: '可视化数字大屏',\r\n backgroundImage: '-webkit-linear-gradient(-90deg, #F76B1C 14%, #FAD961 100%)',\r\n font: { family: 'sans-serif', color: '#7ee5ce', weight: 'bold', size: 24, space: 0, lineHeight: '' },\r\n },\r\n },\r\n {\r\n className: 'wordart5 wordart',\r\n title: '可视化数字大屏',\r\n option: {\r\n title: '可视化数字大屏',\r\n backgroundImage: '-webkit-linear-gradient(-90deg, #B4EC51 14%, #429321 100%)',\r\n font: { family: 'sans-serif', color: '#7ee5ce', weight: 'bold', size: 24, space: 0, lineHeight: '' },\r\n },\r\n },\r\n {\r\n className: 'wordart6 wordart',\r\n title: '可视化数字大屏',\r\n option: {\r\n title: '可视化数字大屏',\r\n backgroundImage: '-webkit-linear-gradient(-90deg, #3023AE 14%, #FE55FF 100%)',\r\n font: { family: 'sans-serif', color: '#7ee5ce', weight: 'bold', size: 24, space: 0, lineHeight: '' },\r\n },\r\n },\r\n );\r\n widgetService.register(\r\n AudioComponent,\r\n {\r\n title: '视频demo',\r\n option: {\r\n type: 'video',\r\n src: 'https://xiche.oss-cn-beijing.aliyuncs.com/video/20180417154421.mp4',\r\n },\r\n },\r\n {\r\n title: '音频demo',\r\n option: {\r\n type: 'audio',\r\n src: 'https://xiche.oss-cn-beijing.aliyuncs.com/video/20180417154421.mp4',\r\n },\r\n },\r\n );\r\n widgetService.register(\r\n BasicLineChartComponent,\r\n {\r\n option: {\r\n type: 'basic',\r\n font: { color: '#FFFFFF' },\r\n },\r\n image: 'assets/img/screen/basic-line-chart.png',\r\n },\r\n {\r\n title: '区域折线图',\r\n image: 'assets/img/screen/area-line-chart.png',\r\n option: {\r\n type: 'area',\r\n font: { color: '#FFFFFF' },\r\n },\r\n },\r\n {\r\n title: '基本曲线图',\r\n image: 'assets/img/screen/smooth-line-chart.png',\r\n group: 'smoothLineChart',\r\n option: {\r\n type: 'smooth',\r\n font: { color: '#FFFFFF' },\r\n },\r\n },\r\n {\r\n title: '区域曲线图',\r\n image: 'assets/img/screen/smooth-area-line-chart.png',\r\n group: 'smoothLineChart',\r\n option: {\r\n type: 'smooth-area',\r\n font: { color: '#FFFFFF' },\r\n },\r\n },\r\n {\r\n title: '阶梯线图',\r\n group: 'stepLineChart',\r\n option: {\r\n type: 'step',\r\n step: 'end',\r\n font: { color: '#FFFFFF' },\r\n },\r\n image: 'assets/img/screen/basic-line-chart.png',\r\n },\r\n );\r\n widgetService.register(\r\n BasicPieChartComponent,\r\n {\r\n option: {\r\n type: 'basic',\r\n },\r\n },\r\n {\r\n title: '环形饼图',\r\n image: 'assets/img/screen/pie-o.png',\r\n option: {\r\n type: 'ring',\r\n },\r\n },\r\n {\r\n title: '玫瑰饼图',\r\n image: 'assets/img/screen/rosePie.png',\r\n option: {\r\n type: 'rose',\r\n },\r\n },\r\n {\r\n title: '玫瑰环形饼图',\r\n image: 'assets/img/screen/roseRingPie.png',\r\n option: {\r\n type: 'roseRing',\r\n },\r\n },\r\n );\r\n widgetService.register(\r\n BasicBarChartComponent,\r\n {\r\n option: {\r\n font: { color: '#FFFFFF' },\r\n },\r\n },\r\n {\r\n title: '堆叠柱图',\r\n image: 'assets/img/screen/doubleBar.png',\r\n option: {\r\n type: 'double',\r\n font: { color: '#FFFFFF' },\r\n },\r\n },\r\n {\r\n title: '横向柱图',\r\n image: 'assets/img/screen/horiBar.png',\r\n option: {\r\n type: 'hori',\r\n font: { color: '#FFFFFF' },\r\n },\r\n },\r\n {\r\n title: '横向堆叠柱图',\r\n image: 'assets/img/screen/doubleHoriBar.png',\r\n option: {\r\n type: 'horiD',\r\n font: { color: '#FFFFFF' },\r\n },\r\n },\r\n {\r\n title: '双向柱图',\r\n image: 'assets/img/screen/doubleColorBar.png',\r\n option: {\r\n type: 'dcolor',\r\n font: { color: '#FFFFFF' },\r\n },\r\n },\r\n );\r\n widgetService.register(\r\n BarChartThreeDComponent,\r\n {\r\n title: '3D柱图',\r\n image: 'assets/img/screen/3Dbar.png',\r\n option: {\r\n type: '3D',\r\n },\r\n },\r\n {\r\n title: '3D堆叠柱图',\r\n image: 'assets/img/screen/3DdoubleBar.png',\r\n option: {\r\n type: '3Ddouble',\r\n },\r\n },\r\n {\r\n title: '3D横向柱图',\r\n image: 'assets/img/screen/3DhoriBar.png',\r\n option: {\r\n type: 'hori',\r\n },\r\n },\r\n {\r\n title: '3D堆叠横向柱图',\r\n image: 'assets/img/screen/3DdoubleHoriBar.png',\r\n option: {\r\n type: 'horiD',\r\n },\r\n },\r\n );\r\n widgetService.register(TreeControlComponent, {\r\n option: {\r\n font: {\r\n color: '#ffffff',\r\n },\r\n },\r\n });\r\n widgetService.register(\r\n ShapeComponent,\r\n {\r\n title: '线条',\r\n image: 'assets/img/screen/shape01.png',\r\n option: {\r\n type: 'line',\r\n },\r\n },\r\n {\r\n title: '三角形',\r\n image: 'assets/img/screen/shape06.png',\r\n option: {\r\n type: 'triangle',\r\n },\r\n },\r\n {\r\n title: '矩形',\r\n image: 'assets/img/screen/shape03.png',\r\n option: {\r\n type: 'rect',\r\n },\r\n },\r\n {\r\n title: '圆角矩形',\r\n image: 'assets/img/screen/shape04.png',\r\n option: {\r\n type: 'rect',\r\n fillet: 16,\r\n },\r\n },\r\n {\r\n title: '平行四边形',\r\n image: 'assets/img/screen/shape09.png',\r\n option: {\r\n type: 'parallelogram',\r\n deviation: 30,\r\n },\r\n },\r\n {\r\n title: '梯形',\r\n image: 'assets/img/screen/shape10.png',\r\n option: {\r\n type: 'trapezoid',\r\n upper: 50,\r\n bottom: 100,\r\n },\r\n },\r\n {\r\n title: '五边形',\r\n image: 'assets/img/screen/shape08.png',\r\n option: {\r\n type: 'polygonplus',\r\n side: 5,\r\n },\r\n },\r\n {\r\n title: '五角星',\r\n image: 'assets/img/screen/shape07.png',\r\n option: {\r\n type: 'polyhedrosis',\r\n side: 5,\r\n },\r\n },\r\n {\r\n title: '圆形',\r\n image: 'assets/img/screen/shape05.png',\r\n option: {\r\n type: 'circle',\r\n },\r\n },\r\n {\r\n title: '箭头',\r\n image: 'assets/img/screen/shape11.png',\r\n option: {\r\n type: 'polygon',\r\n data: [\r\n {\r\n x: 20,\r\n y: 80,\r\n },\r\n {\r\n x: 100,\r\n y: 80,\r\n },\r\n {\r\n x: 100,\r\n y: 40,\r\n },\r\n {\r\n x: 180,\r\n y: 100,\r\n },\r\n {\r\n x: 100,\r\n y: 160,\r\n },\r\n {\r\n x: 100,\r\n y: 120,\r\n },\r\n {\r\n x: 20,\r\n y: 120,\r\n },\r\n ],\r\n },\r\n },\r\n );\r\n for (let i = 1; i <= 75; i++) {\r\n widgetService.register(BackgroundComponent, {\r\n option: {\r\n image: `assets/img/screen/moduleBg${i}.png`,\r\n type: 'background',\r\n },\r\n });\r\n }\r\n for (let i = 1; i <= 8; i++) {\r\n widgetService.register(BackgroundComponent, {\r\n option: {\r\n image: `assets/img/screen/border${i}.png`,\r\n type: 'background',\r\n },\r\n });\r\n }\r\n for (let i = 1; i <= 8; i++) {\r\n widgetService.register(BackgroundComponent, {\r\n option: {\r\n image: `assets/img/screen/bg${i}.png`,\r\n type: 'border',\r\n },\r\n });\r\n }\r\n ['assets/img/screen/mipAnim1.gif', 'assets/img/screen/mipAnim2.gif'].forEach((image) => {\r\n widgetService.register(MipAnimComponent, {\r\n option: { image },\r\n });\r\n });\r\n widgetService.register(DatePickerComponent, {\r\n option: {\r\n borderColor: '#3285ff',\r\n font: { color: '#3285ff' },\r\n background: 'rgba(50,133,255,0.2)',\r\n },\r\n });\r\n widgetService.register(CheckboxComponent, {\r\n option: { font: { color: '#ffffff' } },\r\n });\r\n }\r\n}\r\n","import { Component, OnInit, ElementRef } from '@angular/core';\nimport { Widget, Property, Data } from 'bbj-widget-base';\n\n@Component({\n selector: 'sc-announcement',\n templateUrl: './announcement.component.html',\n styleUrls: ['./announcement.component.less'],\n})\n@Widget('公告', { group: 'component', image: 'assets/img/screen/announcement.png', icon: 'iconmokuai' })\nexport class AnnouncementComponent implements OnInit {\n @Property('显示图标', { type: 'boolean' })\n headIconDisplay = true;\n @Property('内边距', { ui: { widget: 'myGrid' } })\n padding: any = {\n top: 30,\n right: 24,\n bottom: 30,\n left: 24,\n };\n @Property('字体', { ui: { widget: 'myFont' } })\n font: any = {\n family: '',\n color: '#333333',\n weight: 'normal',\n size: 13,\n space: 0,\n lineHeight: '',\n };\n @Property('图标', { ui: { hidden: true } })\n icon = 'sound';\n @Data({\n properties: {\n content: { type: 'string', title: '公告内容' },\n },\n })\n data = [\n {\n content:\n '陆十三,男,共产党员,村小组长。多年来,他始终怀着对党、对人民无比热爱的赤诚之心,热衷于社会公益慈善事业,尽心竭力地为人民群众做好事实事,通过自身捐款、社会筹款等多种途径融资,为贫困山区、失学儿童送去…',\n },\n ];\n constructor(private element: ElementRef) {}\n\n ngOnInit() {\n if (this.padding) {\n this.element.nativeElement.style.padding = `${this.padding.top}px ${this.padding.right}px ${this.padding.bottom}px ${this.padding.left}px`;\n this.element.nativeElement.style.fontSize = this.font.size + 'px';\n this.element.nativeElement.style.fontFamily = this.font.family;\n this.element.nativeElement.style.color = this.font.color;\n this.element.nativeElement.style.fontWeight = this.font.weight;\n this.element.nativeElement.style.letterSpacing = this.font.space + 'px';\n this.element.nativeElement.style.lineHeight = this.font.lineHeight + 'px';\n }\n }\n}\n","import {NgModule} from '@angular/core';\nimport {CommonModule} from '@angular/common';\nimport { AnnouncementComponent } from './announcement.component';\nimport { WidgetBaseModule, WidgetService } from 'bbj-widget-base';\n\n@NgModule({\n declarations: [\n AnnouncementComponent\n ],\n imports: [\n CommonModule,\n WidgetBaseModule\n ]\n})\nexport class AnnouncementModule {\n constructor(private widgetService:WidgetService){\n widgetService.register(AnnouncementComponent);\n }\n}\n","import { EventInput } from '@fullcalendar/angular';\r\nimport { addDays, format, isMatch, parse } from 'date-fns';\r\n\r\nconst dayFormat = 'yyyy-MM-dd';\r\n\r\n/**\r\n * 如果结束时间是仅日期的格式,加上一天\r\n * @param event\r\n */\r\nexport function updateEndTime(event: EventInput) {\r\n if (typeof event.end === 'string' && isMatch(event.end, dayFormat)) {\r\n event.end = format(addDays(parse(event.end, dayFormat, new Date()), 1), dayFormat);\r\n }\r\n}\r\n","import { Component, OnInit, ViewChild, OnChanges, SimpleChanges, EventEmitter, ChangeDetectorRef } from '@angular/core';\nimport { Widget, Property, Data, DataOutput } from 'bbj-widget-base';\nimport { CalendarOptions, FullCalendarComponent } from '@fullcalendar/angular';\nimport { deepCopy } from '@delon/util';\nimport { Router } from '@angular/router';\nimport { addDays, format, isMatch, parse } from 'date-fns';\nimport { updateEndTime } from './calendar.util';\nimport { properties } from 'ng-zorro-antd/core/util';\n\n@Component({\n selector: 'sc-calendar',\n templateUrl: './calendar.component.html',\n styleUrls: ['./calendar.component.less'],\n})\n@Widget('日历', {\n group: 'component',\n image: 'assets/img/screen/rili.png',\n icon: 'iconmokuai',\n childTypes: ['sc-calendar-events', 'sc-calendar-background-events'],\n})\nexport class CalendarComponent implements OnInit, OnChanges {\n @Property('是否自定义初始日期', { ui: { format: 'date', widget: 'checkbox', spanLabel: 0, spanControl: 24 } })\n isInitialDate = true;\n @Property('', { ui: { type: 'date', format: 'date', spanLabel: 0, spanControl: 24 } })\n initialDate = '2020-07-18';\n @Data({\n properties: {\n id: { type: 'string', title: 'id' },\n start: { type: 'string', title: '开始日期' },\n end: { type: 'string', title: '结束日期' },\n title: { type: 'string', title: '内容' },\n },\n })\n data: any[] = [\n { end: '2020-07-21 00:00:00', start: '2020-07-19 00:00:00', title: 'event 3' },\n { end: '2020-07-19 00:00:00', start: '2020-07-18 00:00:00', title: 'event 4' },\n { end: '2020-07-22', start: '2020-07-20', title: 'event 5' },\n ];\n @DataOutput(['id', 'title'])\n dataClick = new EventEmitter<any>();\n @DataOutput(\n {\n properties: {\n type: { type: 'string', title: '视图类型' },\n start: { type: 'string', title: '开始时间' },\n end: { type: 'string', title: '结束时间' },\n },\n },\n { triggerLink: false },\n )\n datesSetChange = new EventEmitter<{ type: string; start: string; end: string }>();\n children: any[];\n id: string;\n eventMap = new Map<any, any[]>();\n constructor(private router: Router, private cd: ChangeDetectorRef) {}\n calendarOptions: CalendarOptions;\n\n ngOnChanges(changes: SimpleChanges): void {\n if (changes.data) {\n if (this.data?.length) {\n const events = this.data.map((item) => {\n const event = {\n ...item,\n extendedProps: {\n eventClick: this.eventClick,\n },\n };\n updateEndTime(event);\n return event;\n });\n this.setEvents(this.id, events);\n } else {\n this.removeEvents(this.id);\n }\n if (!this.calendarOptions) {\n this.update();\n }\n // const events = this.data.map((item) => ({\n // id: item.id,\n // start: item.start.indexOf(' 00:00:00') > -1 ? item.start.split(' ')[0] : item.start,\n // end: item.end.indexOf(' 00:00:00') > -1 ? item.end.split(' ')[0] : item.end,\n // title: item.title,\n // }));\n }\n }\n ngOnInit(): void {}\n\n setEvents(key: any, events: any[]) {\n this.eventMap.set(key, events);\n this.update();\n }\n\n removeEvents(key: any) {\n if (this.eventMap.has(key)) {\n this.eventMap.delete(key);\n this.update();\n }\n }\n\n update() {\n const events = [];\n for (const event of this.eventMap.values()) {\n if (event) {\n events.push(...event);\n }\n }\n this.calendarOptions = {\n headerToolbar: {\n left: 'prev,next today',\n center: 'title',\n right: 'timeGridDay,timeGridWeek,dayGridMonth',\n },\n buttonText: {\n dayGridMonth: '月',\n timeGridWeek: '周',\n timeGridDay: '日',\n today: '今日',\n },\n timeZone: 'local',\n initialDate: this.isInitialDate ? this.initialDate : null,\n events: events,\n locale: 'zh',\n eventTimeFormat: {\n hour: 'numeric',\n minute: '2-digit',\n hour12: false,\n },\n slotLabelFormat: { hour: 'numeric', minute: '2-digit', hour12: false },\n eventClick: (info) => {\n info.jsEvent.preventDefault();\n if (info.event.extendedProps?.eventClick) {\n info.event.extendedProps.eventClick(info.event);\n }\n // this.dataClick.emit({ id: info.event.id, title: info.event.title });\n },\n datesSet: (arg) => {\n console.log(arg);\n let type = arg.view.type;\n type = type.substring(type.indexOf('Grid') + 4).toLowerCase();\n const start = format(arg.start, 'yyyy-MM-dd');\n const end = format(arg.end, 'yyyy-MM-dd');\n\n this.datesSetChange.emit({ type, start, end });\n },\n };\n this.cd.markForCheck();\n }\n eventClick = (event) => {\n this.dataClick.emit({ id: event.id, title: event.title });\n };\n}\n","import { Directive, OnChanges, OnDestroy, SimpleChanges } from '@angular/core';\r\nimport { CalendarComponent } from './calendar.component';\r\nimport { EventApi, EventSourceInput } from '@fullcalendar/angular';\r\n\r\n@Directive()\r\nexport abstract class CalendarEventsChild implements OnChanges, OnDestroy {\r\n data: any[];\r\n id: string;\r\n constructor(public parent: CalendarComponent) {}\r\n\r\n ngOnChanges(changes: SimpleChanges): void {\r\n if (changes.data) {\r\n if (this.data) {\r\n let events = this.getEvents(this.data);\r\n this.parent.setEvents(this.id, events);\r\n } else {\r\n this.parent.removeEvents(this.id);\r\n }\r\n }\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.parent.removeEvents(this.id);\r\n }\r\n\r\n abstract getEvents(data: any[]): EventSourceInput[];\r\n}\r\n","import { Component, OnChanges, OnDestroy, OnInit, SimpleChanges } from '@angular/core';\nimport { Data, Property, Widget } from 'bbj-widget-base';\nimport { CalendarComponent } from '../calendar.component';\nimport { CalendarEventsChild } from '../calendar-events-child';\nimport { EventSourceInput } from '@fullcalendar/common';\nimport { addDays, format, isMatch, parse } from 'date-fns';\nimport { updateEndTime } from '../calendar.util';\n\n@Component({\n selector: 'sc-calendar-background-events',\n templateUrl: './background-events.component.html',\n styleUrls: ['./background-events.component.less'],\n})\n@Widget('背景颜色', { hidden: true })\nexport class BackgroundEventsComponent extends CalendarEventsChild {\n @Property('颜色', {\n ui: {\n widget: 'myColor',\n },\n })\n color: string;\n @Data({\n properties: {\n id: { type: 'string', title: 'id' },\n start: { type: 'string', title: '开始日期' },\n end: { type: 'string', title: '结束日期' },\n title: { type: 'string', title: '标题' },\n color: { type: 'string', title: '背景颜色' },\n },\n })\n data: any[] = [\n { end: '2020-07-21 00:00:00', start: '2020-07-19 00:00:00', title: 'event 3' },\n { end: '2020-07-19 00:00:00', start: '2020-07-18 00:00:00', title: 'event 4' },\n { end: '2020-07-22', start: '2020-07-20', title: 'event 5' },\n ];\n\n constructor(public parent: CalendarComponent) {\n super(parent);\n }\n\n getEvents(data: any[]): EventSourceInput[] {\n return data.map((item) => {\n const event = { ...item, display: 'background' };\n if (!event.color && this.color) {\n event.color = this.color;\n }\n updateEndTime(event);\n return event;\n });\n }\n}\n","import { Component, EventEmitter, OnInit } from '@angular/core';\nimport { Data, DataOutput, Property, Widget } from 'bbj-widget-base';\nimport { CalendarEventsChild } from '../calendar-events-child';\nimport { CalendarComponent } from '../calendar.component';\nimport { EventApi, EventSourceInput } from '@fullcalendar/common';\nimport { addDays, format, isMatch, parse } from 'date-fns';\nimport { updateEndTime } from '../calendar.util';\n\n@Component({\n selector: 'sc-calendar-events',\n templateUrl: './events.component.html',\n styleUrls: ['./events.component.less'],\n})\n@Widget('事件', { hidden: true })\nexport class EventsComponent extends CalendarEventsChild {\n @Property('颜色', {\n ui: {\n widget: 'myColor',\n },\n })\n color: string;\n @Data({\n properties: {\n id: { type: 'string', title: 'id' },\n start: { type: 'string', title: '开始日期' },\n end: { type: 'string', title: '结束日期' },\n title: { type: 'string', title: '标题' },\n color: { type: 'string', title: '颜色' },\n },\n })\n data: any[] = [\n { end: '2020-07-21 00:00:00', start: '2020-07-19 00:00:00', title: 'event 3' },\n { end: '2020-07-19 00:00:00', start: '2020-07-18 00:00:00', title: 'event 4' },\n { end: '2020-07-22', start: '2020-07-20', title: 'event 5' },\n ];\n @DataOutput(['id', 'title'])\n dataClick = new EventEmitter<any>();\n constructor(public parent: CalendarComponent) {\n super(parent);\n }\n\n getEvents(data: any[]): EventSourceInput[] {\n return data.map((item) => {\n const event = {\n ...item,\n extendedProps: {\n eventClick: this.eventClick,\n },\n };\n if (!event.color && this.color) {\n event.color = this.color;\n }\n updateEndTime(event);\n return event;\n });\n }\n\n eventClick = (event: EventApi) => {\n this.dataClick.emit(event);\n };\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { WidgetBaseModule, WidgetService } from 'bbj-widget-base';\nimport { CalendarComponent } from './calendar.component';\nimport { FullCalendarModule } from '@fullcalendar/angular';\nimport dayGridPlugin from '@fullcalendar/daygrid'; // a plugin\nimport timeGridPlugin from '@fullcalendar/timegrid'; // a plugin\nimport interactionPlugin from '@fullcalendar/interaction';\nimport { BackgroundEventsComponent } from './background-events/background-events.component';\nimport { EventsComponent } from './events/events.component'; // a plugin\n\n@NgModule({\n declarations: [CalendarComponent, BackgroundEventsComponent, EventsComponent],\n imports: [CommonModule, WidgetBaseModule, FullCalendarModule],\n})\nexport class CalendarModule {\n constructor(widgetService: WidgetService) {\n FullCalendarModule.registerPlugins([\n dayGridPlugin,\n timeGridPlugin,\n interactionPlugin,\n ]);\n widgetService.register(CalendarComponent);\n widgetService.register(EventsComponent);\n widgetService.register(BackgroundEventsComponent);\n }\n}\n","import { Component, OnInit } from '@angular/core';\r\nimport { Property, Widget } from 'bbj-widget-base';\r\n\r\n@Component({\r\n selector: 'sc-tabs',\r\n templateUrl: './tabs.component.html',\r\n styleUrls: ['./tabs.component.less'],\r\n})\r\n@Widget('标签页', {\r\n group: 'component', image: 'assets/img/screen/tabs.png', icon: 'iconmokuai',\r\n children: [\r\n {\r\n title: '选项卡1',\r\n type: 'sc-tab',\r\n option: { title: 'Tab 1' },\r\n hidden: true,\r\n hideChild: true,\r\n },\r\n ],\r\n childTypes: ['sc-tab'],\r\n})\r\nexport class TabsComponent implements OnInit {\r\n @Property('页签样式', {\r\n enum: [\r\n { label: '线条', value: 'line' },\r\n { label: '卡片', value: 'card' },\r\n ],\r\n })\r\n type = 'line';\r\n @Property('尺寸', {\r\n enum: [\r\n { label: '大', value: 'large' },\r\n { label: '中', value: 'default' },\r\n { label: '小', value: 'small' },\r\n ],\r\n })\r\n size = 'default';\r\n @Property('页签位置', {\r\n enum: [\r\n { label: '上', value: 'top' },\r\n { label: '右', value: 'right' },\r\n { label: '下', value: 'bottom' },\r\n { label: '左', value: 'left' },\r\n ],\r\n })\r\n tabPosition = 'top';\r\n @Property('切换动画', { type: 'boolean', ui: { visibleIf: { tabPosition: ['top', 'bottom'] } } })\r\n animated = true;\r\n @Property('间隙')\r\n tabBarGutter: number;\r\n\r\n selectedIndex = 0;\r\n\r\n children: any[];\r\n\r\n constructor() {}\r\n\r\n ngOnInit(): void {}\r\n\r\n getContainer() {\r\n if (this.children) {\r\n const selectedChild = this.children[this.selectedIndex];\r\n if (selectedChild) {\r\n return selectedChild.id;\r\n }\r\n }\r\n }\r\n}\r\n","import { Component, OnInit } from '@angular/core';\nimport { Property, Widget } from 'bbj-widget-base';\n\n@Component({\n selector: 'sc-tab',\n templateUrl: './tab.component.html',\n styleUrls: ['./tab.component.less'],\n})\n@Widget('选项卡', { hidden: true })\nexport class TabComponent implements OnInit {\n @Property('标题')\n title = 'New Tab';\n children: any[];\n\n constructor() {}\n\n ngOnInit(): void {}\n}\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { TabsComponent } from './tabs.component';\nimport { WidgetBaseModule, WidgetService } from 'bbj-widget-base';\nimport { NzTabsModule } from 'ng-zorro-antd/tabs';\nimport { TabComponent } from './tab/tab.component';\n\n@NgModule({\n declarations: [TabsComponent, TabComponent],\n imports: [CommonModule, WidgetBaseModule, NzTabsModule],\n})\nexport class TabsModule {\n constructor(widgetService: WidgetService) {\n widgetService.register(TabsComponent);\n widgetService.register(TabComponent);\n }\n}\n","import {\n Component,\n ElementRef,\n EmbeddedViewRef,\n Input,\n OnChanges,\n OnInit,\n SimpleChanges,\n TemplateRef,\n ViewChild,\n} from '@angular/core';\nimport { Data, Property, Widget } from 'bbj-widget-base';\n\nimport { isDate, format, min, parseISO } from 'date-fns';\nimport { getUUID } from '../shared/util/base.util';\n\n@Component({\n selector: 'sc-gantt',\n templateUrl: './gantt.component.html',\n styleUrls: ['./gantt.component.less'],\n})\n@Widget('甘特图', { group: 'component', image: 'assets/img/screen/gantt.png', icon: 'iconmokuai' })\nexport class GanttComponent implements OnInit, OnChanges {\n @ViewChild('fcEventContent', { static: true }) eventContent: TemplateRef<any>;\n private readonly contentRenderers = new Map<string, EmbeddedViewRef<any>>();\n @Property('头部名称', { type: 'string' })\n headerContent = '项目';\n @Property('项目字体', { ui: { widget: 'myFont' } })\n contentFont: any = { family: '', color: '', weight: 'normal', size: 12, space: 0, lineHeight: 40 };\n @Property('系列颜色', {\n ui: {\n widget: 'seriesColor',\n example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],\n },\n })\n lineColor = ['rgba(50,133,255,1)', 'rgba(123,113,192,1' + ')'];\n @Property('进度透明', { type: 'number', max: 1 })\n progressTransparency = 0.8;\n @Property('区域占比', { type: 'number' })\n areaRate = 20;\n @Property('进度条高度', { type: 'number' })\n progressHeight = 32;\n @Data({\n properties: {\n start: { type: 'string', title: '开始日期' },\n end: { type: 'string', title: '结束日期' },\n title: { type: 'string', title: '待办事项' },\n project: { type: 'string', title: '所属项目' },\n progress: { type: 'string', title: '进度' },\n },\n })\n data: any[] = [\n { start: '2020-11-10', end: '2020-11-15', title: '代办事件1', project: 'benbenjun', progress: '0.4' },\n { start: '2020-10-10', end: '2020-11-11', title: '代办事件2', project: 'benbenjun2', progress: '0.6' },\n { start: '2020-10-11', end: '2020-11-19', title: '代办事件3', project: 'benbenjun3', progress: '0.9' },\n ];\n calendarOptions: any;\n resources: any = [];\n events: any = [];\n\n initDate: any;\n\n constructor(private ele: ElementRef) {}\n\n ngOnInit(): void {}\n\n ngOnChanges(changes: SimpleChanges): void {\n this.init();\n }\n\n init() {\n if (this.contentFont) {\n this.ele.nativeElement.style.setProperty('--fontSize', this.contentFont.size + 'px');\n this.ele.nativeElement.style.setProperty('--color', this.contentFont.color);\n this.ele.nativeElement.style.setProperty('--weight', this.contentFont.weight);\n this.ele.nativeElement.style.setProperty('--family', this.contentFont.weight);\n this.ele.nativeElement.style.setProperty('--lineHeight', this.contentFont.lineHeight + 'px');\n this.ele.nativeElement.style.setProperty('--height', this.progressHeight + 'px');\n }\n\n // if (changes.data) {\n if (this.data == null || this.data.length < 1) {\n return;\n }\n const dateArr = [];\n let arrIndex = 0;\n this.data.forEach((d) => {\n let color = '';\n if (this.lineColor !== null && this.lineColor.length > 0) {\n if (arrIndex >= this.lineColor.length) {\n arrIndex = 0;\n }\n color = this.lineColor[arrIndex];\n }\n dateArr.push(parseISO(d.start));\n this.resources.push({ id: d.project, title: d.project, eventColor: 'rgb(0,210,253,0)' });\n this.events.push({\n id: getUUID(),\n resourceId: d.project,\n start: d.start,\n end: d.end,\n title: d.title,\n backColor: color,\n progress: d.progress,\n });\n arrIndex++;\n });\n this.calendarOptions = {\n timeZone: 'UTC',\n headerToolbar: {\n left: 'today prev,next',\n center: 'title',\n right: 'resourceTimelineDay,resourceTimelineTenDay,resourceTimelineMonth,resourceTimelineYear',\n },\n initialView: 'resourceTimelineMonth',\n scrollTime: '08:00',\n aspectRatio: 1.5,\n initialDate: this.initDate ? format(this.initDate, 'yyyy-MM-dd') : format(min(dateArr), 'yyyy-MM-dd'),\n views: {\n resourceTimelineDay: {\n buttonText: '小时',\n slotDuration: '00:15',\n },\n resourceTimelineTenDay: {\n type: 'resourceTimeline',\n duration: { days: 10 },\n buttonText: '未来10天',\n },\n resourceTimelineMonth: {\n buttonText: '月',\n // dayHeaders:false,\n // // columnFormat: 'dddd',\n // dayNames: ['1', '2', '3', '4', '5', '6', '7'],\n // dayNamesShort: ['1', '2', '3', '4', '5', '6', '7'],\n // dayHeaderFormat:{weekday:'long'},\n // dayHeaderContent: (data) => {\n // console.log(data);\n // },\n slotLabelFormat: [{ day: 'numeric' }, { weekday: 'long' }],\n },\n resourceTimelineYear: {\n buttonText: '年',\n slotLabelFormat: [{ month: 'long' }],\n // slotDuration: '48:00:00',\n slotLabelInterval: { month: 1 },\n },\n },\n buttonText: {\n today: '今日',\n },\n editable: false,\n resourceAreaHeaderContent: this.headerContent,\n locale: 'zh-cn',\n // dayHeaderFormat: {weekday: 'long'},\n resourceAreaWidth: this.areaRate + '%',\n resources: [],\n // visibleRange: {\n // start: '2020-03-22',\n // end: '2020-03-25'\n // },\n events: [],\n columnFormat: 'dddd',\n eventContent: (arg) => this.renderEventContent(arg),\n eventWillUnmount: (arg) => this.unrenderEvent(arg),\n };\n this.calendarOptions.resources = this.resources;\n this.calendarOptions.events = this.events;\n // }\n }\n\n renderEventContent(args) {\n let renderer = this.contentRenderers.get(args.event.id);\n const proColor =\n args.event.extendedProps.backColor.substr(0, args.event.extendedProps.backColor.lastIndexOf(',') + 1) +\n this.progressTransparency +\n ')';\n const data = {\n barStyle: {\n width: args.event.extendedProps.progress * 100 + '%',\n backgroundColor: args.event.extendedProps.backColor,\n },\n progressStyle: {\n backgroundColor: proColor,\n },\n title: args.event.title,\n progress: Number(args.event.extendedProps.progress) * 100 + '%',\n start: format(args.event.start, 'yyyy-MM-dd'),\n end: format(args.event.end, 'yyyy-MM-dd'),\n };\n // if (!renderer) {\n // Make a new renderer and save it so that we can destroy when the event is unmounted.\n renderer = this.eventContent.createEmbeddedView({ data });\n this.contentRenderers.set(args.event.id, renderer);\n // } else {\n // // Just update the existing renderer.\n // renderer.context.data = data;\n // renderer.markForCheck();\n // }\n renderer.detectChanges();\n return { domNodes: renderer.rootNodes };\n }\n\n unrenderEvent(arg) {\n const renderer = this.contentRenderers.get(arg.event.id);\n if (renderer) {\n renderer.destroy();\n }\n }\n\n // onChange(events) {\n //\n // }\n}\n","import {NgModule} from '@angular/core';\nimport {CommonModule} from '@angular/common';\nimport {GanttComponent} from './gantt.component';\nimport {WidgetBaseModule, WidgetService} from 'bbj-widget-base';\nimport {FullCalendarModule} from '@fullcalendar/angular';\nimport dayGridPlugin from '@fullcalendar/daygrid';\nimport timeGridPlugin from '@fullcalendar/timegrid';\nimport interactionPlugin from '@fullcalendar/interaction';\nimport resourceTimelinePlugin from '@fullcalendar/resource-timeline';\nimport {NzToolTipModule} from 'ng-zorro-antd/tooltip';\n// import {FormsModule} from '@angular/forms';\n// import {NzDatePickerModule} from 'ng-zorro-antd/date-picker';\n\n\n@NgModule({\n declarations: [GanttComponent],\n imports: [\n CommonModule,\n WidgetBaseModule,\n FullCalendarModule,\n NzToolTipModule,\n // FormsModule,\n // NzDatePickerModule,\n ],\n})\nexport class GanttModule {\n constructor(widgetService: WidgetService) {\n FullCalendarModule.registerPlugins([\n // register FullCalendar plugins\n dayGridPlugin,\n timeGridPlugin,\n interactionPlugin,\n resourceTimelinePlugin,\n ]);\n widgetService.register(GanttComponent);\n }\n}\n","import { NgModule } from '@angular/core';\r\nimport { ImageModule } from './image/image.module';\r\nimport { BasicLineChartModule } from './basic-line-chart/basic-line-chart.module';\r\nimport { ButtonModule } from './button/button.module';\r\nimport { TimerModule } from './timer/timer.module';\r\nimport { NumberFlopModule } from './number-flop/number-flop.module';\r\nimport { VoteModule } from './vote/vote.module';\r\nimport { SelectModule } from './select/select.module';\r\nimport { SearchModule } from './search/search.module';\r\nimport { WeatherModule } from './weather/weather.module';\r\nimport { RadioModule } from './radio/radio.module';\r\nimport { CheckboxModule } from './checkbox/checkbox.module';\r\nimport { RateModule } from './rate/rate.module';\r\nimport { GeneralTextModule } from './general-text/general-text.module';\r\nimport { MarqueeModule } from './marquee/marquee.module';\r\nimport { WordartModule } from './wordart/wordart.module';\r\nimport { IconfontModule } from './iconfont/iconfont.module';\r\nimport { AudioModule } from './audio/audio.module';\r\nimport { BasicBarChartModule } from './basic-bar-chart/basic-bar-chart.module';\r\nimport { BasicPieChartModule } from './basic-pie-chart/basic-pie-chart.module';\r\nimport { BarChartThreeDModule } from './bar-chart-three-d/bar-chart-three-d.module';\r\nimport { ShapeModule } from './shape/shape.module';\r\nimport { LineBarChartModule } from './line-bar-chart/line-bar-chart.module';\r\nimport { BubbleChartModule } from './bubble-chart/bubble-chart.module';\r\nimport { RadarChartModule } from './radar-chart/radar-chart.module';\r\nimport { FunnelChartModule } from './funnel-chart/funnel-chart.module';\r\nimport { BackgroundModule } from './background/background.module';\r\nimport { GaugeModule } from './gauge/gauge.module';\r\nimport { PercentPieChartModule } from './percent-pie-chart/percent-pie-chart.module';\r\nimport { TreeRingChartModule } from './tree-ring-chart/tree-ring-chart.module';\r\nimport { LiquidFillModule } from './liquid-fill/liquid-fill.module';\r\nimport { WidgetService } from 'bbj-widget-base';\r\nimport { BasicBarChartComponent } from './basic-bar-chart/basic-bar-chart.component';\r\nimport { ButtonComponent } from './button/button.component';\r\nimport { ImageComponent } from './image/image.component';\r\nimport { BasicLineChartComponent } from './basic-line-chart/basic-line-chart.component';\r\nimport { BasicPieChartComponent } from './basic-pie-chart/basic-pie-chart.component';\r\nimport { TreeRingChartComponent } from './tree-ring-chart/tree-ring-chart.component';\r\nimport { LineBarChartComponent } from './line-bar-chart/line-bar-chart.component';\r\nimport { BarChartThreeDComponent } from './bar-chart-three-d/bar-chart-three-d.component';\r\nimport { BubbleChartComponent } from './bubble-chart/bubble-chart.component';\r\nimport { RadarChartComponent } from './radar-chart/radar-chart.component';\r\nimport { FunnelChartComponent } from './funnel-chart/funnel-chart.component';\r\nimport { GaugeComponent } from './gauge/gauge.component';\r\nimport { TimerComponent } from './timer/timer.component';\r\nimport { NumberFlopComponent } from './number-flop/number-flop.component';\r\nimport { VoteComponent } from './vote/vote.component';\r\nimport { SelectComponent } from './select/select.component';\r\nimport { SearchComponent } from './search/search.component';\r\nimport { WeatherComponent } from './weather/weather.component';\r\nimport { RadioComponent } from './radio/radio.component';\r\nimport { CheckboxComponent } from './checkbox/checkbox.component';\r\nimport { RateComponent } from './rate/rate.component';\r\nimport { GeneralTextComponent } from './general-text/general-text.component';\r\nimport { IconfontComponent } from './iconfont/iconfont.component';\r\nimport { WordartComponent } from './wordart/wordart.component';\r\nimport { MarqueeComponent } from './marquee/marquee.component';\r\nimport { AudioComponent } from './audio/audio.component';\r\nimport { PercentPieChartComponent } from './percent-pie-chart/percent-pie-chart.component';\r\nimport { LiquidFillComponent } from './liquid-fill/liquid-fill.component';\r\nimport { ShapeComponent } from './shape/shape.component';\r\nimport { BackgroundComponent } from './background/background.component';\r\nimport { AnnouncementComponent } from './announcement/announcement.component';\r\nimport { AnnouncementModule } from './announcement/announcement.module';\r\nimport { TableModule } from './table/table.module';\r\nimport { TableComponent } from './table/table.component';\r\nimport { BasicPlanimetricMapModule } from './basic-planimetric-map/basic-planimetric-map.module';\r\nimport { BreathingBubbleLayerModule } from './breathing-bubble-layer/breathing-bubble-layer.module';\r\nimport { PlanimetricMap2dModule } from './planimetric-map2d/planimetric-map2d.module';\r\nimport { ParentContainerModule } from './parent-container/parent-container.module';\r\nimport { BasicPlanimetricMapComponent } from './basic-planimetric-map/basic-planimetric-map.component';\r\nimport { PlanimetricMap3dModule } from './planimetric-map3d/planimetric-map3d.module';\r\nimport { PlanimetricMap3dComponent } from './planimetric-map3d/planimetric-map3d.component';\r\nimport { CalendarModule } from './calendar/calendar.module';\r\nimport { CalendarComponent } from './calendar/calendar.component';\r\nimport { VisualMapChartModule } from './visual-map-chart/visual-map-chart.module';\r\nimport { TimePickerModule } from './time-picker/time-picker.module';\r\nimport { DatePickerModule } from './date-picker/date-picker.module';\r\nimport { TreeControlModule } from './tree-control/tree-control.module';\r\nimport { CustomBaiduMapModule } from './custom-baidu-map/custom-baidu-map.module';\r\nimport { icons } from './iconfont/icon';\r\nimport { TreeControlComponent } from './tree-control/tree-control.component';\r\nimport { TabsModule } from './tabs/tabs.module';\r\nimport { MipAnimComponent } from './mip-anim/mip-anim.component';\r\nimport { MipAnimModule } from './mip-anim/mip-anim.module';\r\nimport { UploadModule } from './upload/upload.module';\r\nimport { CrossTableModule } from './cross-table/cross-table.module';\r\nimport { GanttModule } from './gantt/gantt.module';\r\nimport { Pie3dChartModule } from './pie3d-chart/pie3d-chart.module';\r\n\r\nimport { LineLightFlowModule } from './line-light-flow/line-light-flow.module';\r\nimport { TemporaryDataModule } from './temporary-data/temporary-data.module';\r\n\r\n@NgModule({\r\n imports: [\r\n ImageModule,\r\n BasicLineChartModule,\r\n BasicPieChartModule,\r\n BasicBarChartModule,\r\n LineBarChartModule,\r\n BarChartThreeDModule,\r\n BubbleChartModule,\r\n RadarChartModule,\r\n FunnelChartModule,\r\n PercentPieChartModule,\r\n TreeRingChartModule,\r\n GaugeModule,\r\n LiquidFillModule,\r\n ButtonModule,\r\n TimerModule,\r\n NumberFlopModule,\r\n VoteModule,\r\n SelectModule,\r\n SearchModule,\r\n WeatherModule,\r\n RadioModule,\r\n CheckboxModule,\r\n RateModule,\r\n GeneralTextModule,\r\n MarqueeModule,\r\n WordartModule,\r\n IconfontModule,\r\n AudioModule,\r\n ShapeModule,\r\n BackgroundModule,\r\n // BasicSmoothLineChartModule,\r\n AnnouncementModule,\r\n TableModule,\r\n BasicPlanimetricMapModule,\r\n BreathingBubbleLayerModule,\r\n PlanimetricMap2dModule,\r\n ParentContainerModule,\r\n PlanimetricMap3dModule,\r\n TreeControlModule,\r\n VisualMapChartModule,\r\n TimePickerModule,\r\n DatePickerModule,\r\n CustomBaiduMapModule,\r\n TabsModule,\r\n MipAnimModule,\r\n CalendarModule,\r\n UploadModule,\r\n CrossTableModule,\r\n GanttModule,\r\n Pie3dChartModule,\r\n LineLightFlowModule,\r\n TemporaryDataModule,\r\n ],\r\n exports: [],\r\n declarations: [],\r\n})\r\nexport class WorkbenchWidgetModule {\r\n constructor(widgetService: WidgetService) {\r\n widgetService.register(ButtonComponent, { option: {}, size: { width: 3, height: 3 } });\r\n widgetService.register(CalendarComponent, { option: {}, size: { width: 16, height: 12 } });\r\n for (let i = 1; i <= 82; i++) {\r\n widgetService.register(ImageComponent, {\r\n option: { image: `assets/img/screen/picture${i}.png`, hideHead: true },\r\n size: { width: 6, height: 6 },\r\n });\r\n }\r\n icons.forEach((icon) => {\r\n widgetService.register(IconfontComponent, {\r\n option: { type: 'iconfont', icon, hideHead: true },\r\n size: { width: 4, height: 4 },\r\n });\r\n });\r\n widgetService.register(TimerComponent, {\r\n option: { font: { color: '#595F7A' } },\r\n size: { width: 10, height: 4 },\r\n });\r\n widgetService.register(NumberFlopComponent, { size: { width: 12, height: 6 } });\r\n widgetService.register(VoteComponent, { size: { width: 6, height: 6 } });\r\n widgetService.register(SelectComponent, { size: { width: 6, height: 4 } });\r\n widgetService.register(SearchComponent, { size: { width: 6, height: 3 } });\r\n widgetService.register(WeatherComponent, {\r\n option: { tempFont: { color: '#595F7A' } },\r\n size: { width: 10, height: 6 },\r\n });\r\n widgetService.register(RadioComponent, {\r\n option: { font: { color: '#595F7A' } },\r\n size: { width: 6, height: 4 },\r\n });\r\n widgetService.register(RateComponent, {\r\n option: { font: { color: '#595F7A' } },\r\n size: { width: 6, height: 6 },\r\n });\r\n widgetService.register(\r\n GeneralTextComponent,\r\n {\r\n className: 'big-title title',\r\n title: '大标题',\r\n option: {\r\n title: '大标题',\r\n font: { family: '', color: '#333333', weight: 'normal', size: 36, space: 0, lineHeight: 50 },\r\n },\r\n size: { width: 5, height: 3 },\r\n },\r\n {\r\n className: 'normal-title title',\r\n title: '标题',\r\n option: {\r\n title: '标题',\r\n font: { family: '', color: '#333333', weight: 'normal', size: 32, space: 0, lineHeight: 45 },\r\n },\r\n size: { width: 5, height: 3 },\r\n },\r\n {\r\n className: 'subtitle title',\r\n title: '副标题',\r\n option: {\r\n title: '副标题',\r\n font: { family: '', color: '#333333', weight: 'normal', size: 24, space: 0, lineHeight: 33 },\r\n },\r\n size: { width: 5, height: 3 },\r\n },\r\n {\r\n className: 'small-title title',\r\n title: '小标题',\r\n option: {\r\n title: '小标题',\r\n font: { family: '', color: '#333333', weight: 'normal', size: 16, space: 0, lineHeight: 22 },\r\n },\r\n size: { width: 5, height: 3 },\r\n },\r\n {\r\n className: 'content title',\r\n title: '正文内容',\r\n option: {\r\n title: '正文内容',\r\n font: { family: '', color: '#333333', weight: 'normal', size: 13, space: 0, lineHeight: 18 },\r\n },\r\n size: { width: 5, height: 3 },\r\n },\r\n );\r\n widgetService.register(\r\n WordartComponent,\r\n {\r\n className: 'wordart1 wordart',\r\n title: '可视化数字大屏',\r\n option: {\r\n title: '可视化数字大屏',\r\n font: { family: 'cursive', color: '#3285FF', weight: 'normal', size: 24, space: 0, lineHeight: '' },\r\n },\r\n size: { width: 7, height: 3 },\r\n },\r\n {\r\n className: 'wordart2 wordart',\r\n title: '可视化数字大屏',\r\n option: {\r\n title: '可视化数字大屏',\r\n font: { family: 'sans-serif', color: '#7ee5ce', weight: 'bold', size: 24, space: 0, lineHeight: '' },\r\n },\r\n size: { width: 7, height: 3 },\r\n },\r\n {\r\n className: 'wordart3 wordart',\r\n title: '可视化数字大屏',\r\n option: {\r\n title: '可视化数字大屏',\r\n backgroundImage: '-webkit-linear-gradient(-90deg, #09FFDD 14%, #0055FF 100%)',\r\n font: { family: 'sans-serif', color: '#7ee5ce', weight: 'bold', size: 24, space: 0, lineHeight: '' },\r\n },\r\n size: { width: 7, height: 3 },\r\n },\r\n {\r\n className: 'wordart4 wordart',\r\n title: '可视化数字大屏',\r\n option: {\r\n title: '可视化数字大屏',\r\n backgroundImage: '-webkit-linear-gradient(-90deg, #F76B1C 14%, #FAD961 100%)',\r\n font: { family: 'sans-serif', color: '#7ee5ce', weight: 'bold', size: 24, space: 0, lineHeight: '' },\r\n },\r\n size: { width: 7, height: 3 },\r\n },\r\n {\r\n className: 'wordart5 wordart',\r\n title: '可视化数字大屏',\r\n option: {\r\n title: '可视化数字大屏',\r\n backgroundImage: '-webkit-linear-gradient(-90deg, #B4EC51 14%, #429321 100%)',\r\n font: { family: 'sans-serif', color: '#7ee5ce', weight: 'bold', size: 24, space: 0, lineHeight: '' },\r\n },\r\n size: { width: 7, height: 3 },\r\n },\r\n {\r\n className: 'wordart6 wordart',\r\n title: '可视化数字大屏',\r\n option: {\r\n title: '可视化数字大屏',\r\n backgroundImage: '-webkit-linear-gradient(-90deg, #3023AE 14%, #FE55FF 100%)',\r\n font: { family: 'sans-serif', color: '#7ee5ce', weight: 'bold', size: 24, space: 0, lineHeight: '' },\r\n },\r\n size: { width: 7, height: 3 },\r\n },\r\n );\r\n widgetService.register(MarqueeComponent, {\r\n option: {\r\n font: { color: '#595F7A' },\r\n },\r\n size: { width: 7, height: 3 },\r\n });\r\n widgetService.register(\r\n AudioComponent,\r\n {\r\n title: '视频demo',\r\n option: {\r\n type: 'video',\r\n src: 'https://xiche.oss-cn-beijing.aliyuncs.com/video/20180417154421.mp4',\r\n },\r\n },\r\n {\r\n title: '音频demo',\r\n option: {\r\n type: 'audio',\r\n src: 'https://xiche.oss-cn-beijing.aliyuncs.com/video/20180417154421.mp4',\r\n },\r\n },\r\n );\r\n widgetService.register(\r\n BasicLineChartComponent,\r\n {\r\n option: {\r\n type: 'basic',\r\n },\r\n image: 'assets/img/screen/basic-line-chart.png',\r\n },\r\n {\r\n title: '区域折线图',\r\n image: 'assets/img/screen/area-line-chart.png',\r\n option: {\r\n type: 'area',\r\n },\r\n },\r\n {\r\n title: '基本曲线图',\r\n image: 'assets/img/screen/smooth-line-chart.png',\r\n group: 'smoothLineChart',\r\n option: {\r\n type: 'smooth',\r\n },\r\n },\r\n {\r\n title: '区域曲线图',\r\n image: 'assets/img/screen/smooth-area-line-chart.png',\r\n group: 'smoothLineChart',\r\n option: {\r\n type: 'smooth-area',\r\n },\r\n },\r\n {\r\n title: '阶梯线图',\r\n group: 'stepLineChart',\r\n option: {\r\n type: 'step',\r\n step: 'end',\r\n },\r\n image: 'assets/img/screen/basic-line-chart.png',\r\n },\r\n );\r\n widgetService.register(\r\n BasicPieChartComponent,\r\n {\r\n option: {\r\n type: 'basic',\r\n font: { color: '#595F7A' },\r\n },\r\n },\r\n {\r\n title: '环形饼图',\r\n image: 'assets/img/screen/pie-o.png',\r\n option: {\r\n type: 'ring',\r\n font: { color: '#595F7A' },\r\n },\r\n },\r\n {\r\n title: '玫瑰饼图',\r\n image: 'assets/img/screen/rosePie.png',\r\n option: {\r\n type: 'rose',\r\n font: { color: '#595F7A' },\r\n },\r\n },\r\n {\r\n title: '玫瑰环形饼图',\r\n image: 'assets/img/screen/roseRingPie.png',\r\n option: {\r\n type: 'roseRing',\r\n font: { color: '#595F7A' },\r\n },\r\n },\r\n );\r\n widgetService.register(PercentPieChartComponent, {\r\n option: {\r\n font: { color: '#595F7A' },\r\n },\r\n });\r\n widgetService.register(TreeRingChartComponent, {\r\n option: {\r\n font: { color: '#595F7A' },\r\n },\r\n });\r\n widgetService.register(\r\n BasicBarChartComponent,\r\n {},\r\n {\r\n title: '堆叠柱图',\r\n image: 'assets/img/screen/doubleBar.png',\r\n option: {\r\n type: 'double',\r\n },\r\n },\r\n {\r\n title: '横向柱图',\r\n image: 'assets/img/screen/horiBar.png',\r\n option: {\r\n type: 'hori',\r\n },\r\n },\r\n {\r\n title: '横向堆叠柱图',\r\n image: 'assets/img/screen/doubleHoriBar.png',\r\n option: {\r\n type: 'horiD',\r\n },\r\n },\r\n {\r\n title: '双向柱图',\r\n image: 'assets/img/screen/doubleColorBar.png',\r\n option: {\r\n type: 'dcolor',\r\n },\r\n },\r\n );\r\n widgetService.register(LineBarChartComponent, {\r\n title: '折线柱图',\r\n image: 'assets/img/screen/lineBar.png',\r\n option: {\r\n type: 'line',\r\n font: { color: '#595F7A' },\r\n },\r\n });\r\n widgetService.register(\r\n BarChartThreeDComponent,\r\n {\r\n title: '3D柱图',\r\n image: 'assets/img/screen/3Dbar.png',\r\n option: {\r\n type: '3D',\r\n font: { color: '#595F7A' },\r\n },\r\n },\r\n {\r\n title: '3D堆叠柱图',\r\n image: 'assets/img/screen/3DdoubleBar.png',\r\n option: {\r\n type: '3Ddouble',\r\n font: { color: '#595F7A' },\r\n },\r\n },\r\n {\r\n title: '3D横向柱图',\r\n image: 'assets/img/screen/3DhoriBar.png',\r\n option: {\r\n type: 'hori',\r\n font: { color: '#595F7A' },\r\n },\r\n },\r\n {\r\n title: '3D堆叠横向柱图',\r\n image: 'assets/img/screen/3DdoubleHoriBar.png',\r\n option: {\r\n type: 'horiD',\r\n font: { color: '#595F7A' },\r\n },\r\n },\r\n );\r\n widgetService.register(BubbleChartComponent, {\r\n title: '散点图',\r\n image: 'assets/img/screen/bubble.png',\r\n option: {\r\n type: 'bubble',\r\n font: { color: '#595F7A' },\r\n },\r\n });\r\n widgetService.register(RadarChartComponent, {\r\n title: '雷达图',\r\n image: 'assets/img/screen/radar.png',\r\n option: {\r\n type: 'radar',\r\n font: { color: '#595F7A' },\r\n },\r\n });\r\n widgetService.register(FunnelChartComponent, {\r\n title: '三角图',\r\n image: 'assets/img/screen/funnel.png',\r\n option: {\r\n type: 'funnel',\r\n font: { color: '#595F7A' },\r\n },\r\n });\r\n widgetService.register(GaugeComponent, {\r\n option: {\r\n font: { color: '#595F7A' },\r\n },\r\n });\r\n widgetService.register(LiquidFillComponent, {\r\n option: {\r\n font: { color: '#595F7A' },\r\n },\r\n });\r\n widgetService.register(\r\n ShapeComponent,\r\n {\r\n title: '线条',\r\n image: 'assets/img/screen/shape01.png',\r\n option: {\r\n type: 'line',\r\n },\r\n size: { width: 6, height: 7 },\r\n },\r\n {\r\n title: '三角形',\r\n image: 'assets/img/screen/shape06.png',\r\n option: {\r\n type: 'triangle',\r\n },\r\n size: { width: 6, height: 7 },\r\n },\r\n {\r\n title: '矩形',\r\n image: 'assets/img/screen/shape03.png',\r\n option: {\r\n type: 'rect',\r\n },\r\n size: { width: 6, height: 7 },\r\n },\r\n {\r\n title: '圆角矩形',\r\n image: 'assets/img/screen/shape04.png',\r\n option: {\r\n type: 'rect',\r\n fillet: 16,\r\n },\r\n size: { width: 6, height: 7 },\r\n },\r\n {\r\n title: '平行四边形',\r\n image: 'assets/img/screen/shape09.png',\r\n option: {\r\n type: 'parallelogram',\r\n bottom: 110,\r\n deviation: 30,\r\n },\r\n size: { width: 6, height: 7 },\r\n },\r\n {\r\n title: '梯形',\r\n image: 'assets/img/screen/shape10.png',\r\n option: {\r\n type: 'trapezoid',\r\n upper: 70,\r\n bottom: 100,\r\n deviation: 0,\r\n },\r\n size: { width: 6, height: 7 },\r\n },\r\n {\r\n title: '五边形',\r\n image: 'assets/img/screen/shape08.png',\r\n option: {\r\n type: 'polygonplus',\r\n side: 5,\r\n },\r\n size: { width: 6, height: 7 },\r\n },\r\n {\r\n title: '五角星',\r\n image: 'assets/img/screen/shape07.png',\r\n option: {\r\n type: 'polyhedrosis',\r\n side: 5,\r\n },\r\n size: { width: 6, height: 7 },\r\n },\r\n {\r\n title: '圆形',\r\n image: 'assets/img/screen/shape05.png',\r\n option: {\r\n type: 'circle',\r\n },\r\n size: { width: 6, height: 7 },\r\n },\r\n {\r\n title: '箭头',\r\n image: 'assets/img/screen/shape11.png',\r\n option: {\r\n type: 'polygon',\r\n data: [\r\n {\r\n x: 20,\r\n y: 80,\r\n },\r\n {\r\n x: 100,\r\n y: 80,\r\n },\r\n {\r\n x: 100,\r\n y: 40,\r\n },\r\n {\r\n x: 180,\r\n y: 100,\r\n },\r\n {\r\n x: 100,\r\n y: 160,\r\n },\r\n {\r\n x: 100,\r\n y: 120,\r\n },\r\n {\r\n x: 20,\r\n y: 120,\r\n },\r\n ],\r\n },\r\n },\r\n );\r\n for (let i = 1; i <= 75; i++) {\r\n widgetService.register(BackgroundComponent, {\r\n option: {\r\n image: `assets/img/screen/moduleBg${i}.png`,\r\n type: 'background',\r\n },\r\n size: { width: 10, height: 3 },\r\n });\r\n }\r\n for (let i = 1; i <= 8; i++) {\r\n widgetService.register(BackgroundComponent, {\r\n option: {\r\n image: `assets/img/screen/border${i}.png`,\r\n type: 'background',\r\n },\r\n size: { width: 10, height: 10 },\r\n });\r\n }\r\n for (let i = 1; i <= 8; i++) {\r\n widgetService.register(BackgroundComponent, {\r\n option: {\r\n image: `assets/img/screen/bg${i}.png`,\r\n type: 'border',\r\n },\r\n size: { width: 10, height: 10 },\r\n });\r\n }\r\n widgetService.register(AnnouncementComponent, { size: { width: 14, height: 6 } });\r\n widgetService.register(TableComponent, {\r\n option: {\r\n image: 'assets/img/screen/table.png',\r\n },\r\n });\r\n widgetService.register(BasicPlanimetricMapComponent, { size: { width: 12, height: 12 } });\r\n widgetService.register(PlanimetricMap3dComponent, { size: { width: 12, height: 12 } });\r\n ['assets/img/screen/mipAnim1.gif', 'assets/img/screen/mipAnim2.gif'].forEach((image) => {\r\n widgetService.register(MipAnimComponent, {\r\n option: { image },\r\n size: { height: 6, width: 6 },\r\n });\r\n });\r\n }\r\n}\r\n","/*\n * Public API Surface of screen-widget\n */\nexport * from './lib/shared/service/common.service';\nexport * from 'bbj-screen-widget/core';\nexport * from './lib/shared/service/gaode-map.service';\nexport * from './lib/screen-widget.module';\nexport * from './lib/workbench-widget.module';\nexport * from './lib/bar-chart-three-d/bar-chart-three-d.module';\nexport * from './lib/basic-bar-chart/basic-bar-chart.component';\nexport * from './lib/basic-bar-chart/basic-bar-chart.module';\nexport * from './lib/basic-line-chart/basic-line-chart.module';\nexport * from './lib/basic-pie-chart/basic-pie-chart.module';\nexport * from './lib/bubble-chart/bubble-chart.module';\nexport * from './lib/funnel-chart/funnel-chart.module';\nexport * from './lib/gauge/gauge.module';\nexport * from './lib/liquid-fill/liquid-fill.module';\nexport * from './lib/percent-pie-chart/percent-pie-chart.module';\nexport * from './lib/radar-chart/radar-chart.module';\nexport * from './lib/tree-ring-chart/tree-ring-chart.module';\nexport * from './lib/tree-control/tree-control.module';\nexport * from './lib/scatter3d/scatter3d.module';\n\n// 地图\nexport * from './lib/visual-map-chart/visual-map-chart.module'; // 2D热力地图\nexport * from './lib/basic-planimetric-map/basic-planimetric-map.module'; // 基础平面地图\nexport * from './lib/planimetric-map2d/planimetric-map2d.module'; // 2D平面地图\nexport * from './lib/planimetric-map3d/planimetric-map3d.module'; // 3D平面地图\nexport * from './lib/marquee/marquee.module'; // 跑马灯\nexport * from './lib/table/table.module'; // 表格\nexport * from './lib/date-picker/date-picker.module'; // 日期选择器\n\nexport * from './lib/audio/audio.module'; //视频、音频组件\n\nexport * from './lib/custom-baidu-map/custom-baidu-map.module'; // 百度地图\n\nexport * from './lib/checkbox/checkbox.module'; // 复选框\nexport * from './lib/select/select.module'; // 下拉框\n\nexport * from './lib/shared/service/file-url.service';\n\nexport * from './lib/iframe/iframe.module'; // iframe\n\nexport * from './lib/shared/component/video-player/video-player.module';\nexport * from './lib/cross-table/cross-table.module';\nexport * from './lib/video-grid/video-grid.module'; //视频宫格\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n\nexport {AnnouncementComponent as ɵea} from './lib/announcement/announcement.component';\nexport {AnnouncementModule as ɵdz} from './lib/announcement/announcement.module';\nexport {AudioComponent as ɵbp} from './lib/audio/audio.component';\nexport {BackgroundComponent as ɵbu} from './lib/background/background.component';\nexport {BackgroundModule as ɵbt} from './lib/background/background.module';\nexport {BarChartThreeDComponent as ɵg} from './lib/bar-chart-three-d/bar-chart-three-d.component';\nexport {BasicLineChartComponent as ɵc} from './lib/basic-line-chart/basic-line-chart.component';\nexport {BasicPieChartComponent as ɵd} from './lib/basic-pie-chart/basic-pie-chart.component';\nexport {BasicPlanimetricMapComponent as ɵby} from './lib/basic-planimetric-map/basic-planimetric-map.component';\nexport {BreathingBubbleLayerComponent as ɵcb} from './lib/breathing-bubble-layer/breathing-bubble-layer.component';\nexport {BreathingBubbleLayerModule as ɵca} from './lib/breathing-bubble-layer/breathing-bubble-layer.module';\nexport {BubbleChartComponent as ɵh} from './lib/bubble-chart/bubble-chart.component';\nexport {BulletinBoardComponent as ɵdr} from './lib/bulletin-board/bulletin-board.component';\nexport {BulletinBoardModule as ɵdq} from './lib/bulletin-board/bulletin-board.module';\nexport {ButtonComponent as ɵp} from './lib/button/button.component';\nexport {ButtonModule as ɵo} from './lib/button/button.module';\nexport {BackgroundEventsComponent as ɵeg} from './lib/calendar/background-events/background-events.component';\nexport {CalendarEventsChild as ɵeh} from './lib/calendar/calendar-events-child';\nexport {CalendarComponent as ɵef} from './lib/calendar/calendar.component';\nexport {CalendarModule as ɵee} from './lib/calendar/calendar.module';\nexport {EventsComponent as ɵei} from './lib/calendar/events/events.component';\nexport {CheckboxComponent as ɵbe} from './lib/checkbox/checkbox.component';\nexport {CrossTableComponent as ɵdg} from './lib/cross-table/cross-table.component';\nexport {BaiduMarkerLayerComponent as ɵcz} from './lib/custom-baidu-map/baidu-marker-layer/baidu-marker-layer.component';\nexport {BaiduPolylineLayerComponent as ɵdb} from './lib/custom-baidu-map/baidu-polyline-layer/baidu-polyline-layer.component';\nexport {BaseLayer as ɵda} from './lib/custom-baidu-map/base-layer';\nexport {CustomBaiduMapComponent as ɵcy} from './lib/custom-baidu-map/custom-baidu-map.component';\nexport {TyphoonAreaLayerComponent as ɵdd} from './lib/custom-baidu-map/typhoon-area-layer/typhoon-area-layer.component';\nexport {WindLayerComponent as ɵdc} from './lib/custom-baidu-map/wind-layer/wind-layer.component';\nexport {DatePickerComponent as ɵcv} from './lib/date-picker/date-picker.component';\nexport {FunnelChartComponent as ɵj} from './lib/funnel-chart/funnel-chart.component';\nexport {GanttComponent as ɵek} from './lib/gantt/gantt.component';\nexport {GanttModule as ɵej} from './lib/gantt/gantt.module';\nexport {GaugeProgressComponent as ɵdn} from './lib/gauge-progress/gauge-progress.component';\nexport {GaugeProgressModule as ɵdm} from './lib/gauge-progress/gauge.module';\nexport {GaugeComponent as ɵm} from './lib/gauge/gauge.component';\nexport {GeneralTextComponent as ɵbi} from './lib/general-text/general-text.component';\nexport {GeneralTextModule as ɵbh} from './lib/general-text/general-text.module';\nexport {IconfontComponent as ɵbn} from './lib/iconfont/iconfont.component';\nexport {IconfontModule as ɵbm} from './lib/iconfont/iconfont.module';\nexport {IframeComponent as ɵdw} from './lib/iframe/iframe.component';\nexport {ImageComponent as ɵb} from './lib/image/image.component';\nexport {ImageModule as ɵa} from './lib/image/image.module';\nexport {ItemSwiperComponent as ɵdp} from './lib/item-swiper/item-swiper.component';\nexport {ItemSwiperModule as ɵdo} from './lib/item-swiper/item-swiper.module';\nexport {LineBarChartComponent as ɵf} from './lib/line-bar-chart/line-bar-chart.component';\nexport {LineBarChartModule as ɵe} from './lib/line-bar-chart/line-bar-chart.module';\nexport {LineLightFlowComponent as ɵdv} from './lib/line-light-flow/line-light-flow.component';\nexport {LineLightFlowModule as ɵdu} from './lib/line-light-flow/line-light-flow.module';\nexport {LiquidFillComponent as ɵn} from './lib/liquid-fill/liquid-fill.component';\nexport {MarqueeComponent as ɵbj} from './lib/marquee/marquee.component';\nexport {MipAnimComponent as ɵcs} from './lib/mip-anim/mip-anim.component';\nexport {MipAnimModule as ɵcr} from './lib/mip-anim/mip-anim.module';\nexport {MultiTitleGaugeComponent as ɵdl} from './lib/multi-title-gauge/multi-title-gauge.component';\nexport {MultiTitleGaugeModule as ɵdk} from './lib/multi-title-gauge/multi-title-gauge.module';\nexport {NumberFlopComponent as ɵu} from './lib/number-flop/number-flop.component';\nexport {NumberFlopModule as ɵt} from './lib/number-flop/number-flop.module';\nexport {ParentContainerComponent as ɵbz} from './lib/parent-container/parent-container.component';\nexport {ParentContainerModule as ɵcl} from './lib/parent-container/parent-container.module';\nexport {PercentPieChartComponent as ɵk} from './lib/percent-pie-chart/percent-pie-chart.component';\nexport {Pie3dChartComponent as ɵdi} from './lib/pie3d-chart/pie3d-chart.component';\nexport {Pie3dChartModule as ɵdh} from './lib/pie3d-chart/pie3d-chart.module';\nexport {FlyLineLayerComponent as ɵce} from './lib/planimetric-map2d/fly-line-layer/fly-line-layer.component';\nexport {FlyLineLayerModule as ɵcd} from './lib/planimetric-map2d/fly-line-layer/fly-line-layer.module';\nexport {Map2dMarkLayerComponent as ɵci} from './lib/planimetric-map2d/map2d-mark-layer/map2d-mark-layer.component';\nexport {Map2dMarkLayerModule as ɵch} from './lib/planimetric-map2d/map2d-mark-layer/map2d-mark-layer.module';\nexport {Map2dPolylineLayerComponent as ɵcg} from './lib/planimetric-map2d/map2d-polyline-layer/map2d-polyline-layer.component';\nexport {Map2dPolylineLayerModule as ɵcf} from './lib/planimetric-map2d/map2d-polyline-layer/map2d-polyline-layer.module';\nexport {Map2dVisualLayerComponent as ɵck} from './lib/planimetric-map2d/map2d-visual-layer/map2d-visual-layer.component';\nexport {Map2dVisualLayerModule as ɵcj} from './lib/planimetric-map2d/map2d-visual-layer/map2d-visual-layer.module';\nexport {PlanimetricMap2dComponent as ɵcc} from './lib/planimetric-map2d/planimetric-map2d.component';\nexport {Map3dLineLayerComponent as ɵcq} from './lib/planimetric-map3d/map3d-line-layer/map3d-line-layer.component';\nexport {Map3dLineLayerModule as ɵcp} from './lib/planimetric-map3d/map3d-line-layer/map3d-line-layer.module';\nexport {Map3dMarkLayerComponent as ɵco} from './lib/planimetric-map3d/map3d-mark-layer/map3d-mark-layer.component';\nexport {Map3dMarkLayerModule as ɵcn} from './lib/planimetric-map3d/map3d-mark-layer/map3d-mark-layer.module';\nexport {PlanimetricMap3dComponent as ɵcm} from './lib/planimetric-map3d/planimetric-map3d.component';\nexport {RadarChartComponent as ɵi} from './lib/radar-chart/radar-chart.component';\nexport {RadioComponent as ɵbd} from './lib/radio/radio.component';\nexport {RadioModule as ɵbc} from './lib/radio/radio.module';\nexport {RateComponent as ɵbg} from './lib/rate/rate.component';\nexport {RateModule as ɵbf} from './lib/rate/rate.module';\nexport {Scatter3dComponent as ɵdy} from './lib/scatter3d/scatter3d.component';\nexport {SearchComponent as ɵz} from './lib/search/search.component';\nexport {SearchModule as ɵy} from './lib/search/search.module';\nexport {SelectComponent as ɵx} from './lib/select/select.component';\nexport {ShapeComponent as ɵbs} from './lib/shape/shape.component';\nexport {ShapeModule as ɵbr} from './lib/shape/shape.module';\nexport {VideoPlayerComponent as ɵbq} from './lib/shared/component/video-player/video-player.component';\nexport {HighChartsService as ɵdj} from './lib/shared/service/highcharts.service';\nexport {HttpService as ɵq} from './lib/shared/service/http.service';\nexport {ColorPipe as ɵbx} from './lib/shuffling-list/color.pipe';\nexport {ShufflingListComponent as ɵbw} from './lib/shuffling-list/shuffling-list.component';\nexport {ShufflingListModule as ɵbv} from './lib/shuffling-list/shuffling-list.module';\nexport {TableComponent as ɵbo} from './lib/table/table.component';\nexport {TabComponent as ɵed} from './lib/tabs/tab/tab.component';\nexport {TabsComponent as ɵec} from './lib/tabs/tabs.component';\nexport {TabsModule as ɵeb} from './lib/tabs/tabs.module';\nexport {TemporaryDataComponent as ɵdt} from './lib/temporary-data/temporary-data.component';\nexport {TemporaryDataModule as ɵds} from './lib/temporary-data/temporary-data.module';\nexport {TimePickerComponent as ɵcx} from './lib/time-picker/time-picker.component';\nexport {TimePickerModule as ɵcw} from './lib/time-picker/time-picker.module';\nexport {TimerComponent as ɵs} from './lib/timer/timer.component';\nexport {TimerModule as ɵr} from './lib/timer/timer.module';\nexport {TreeControlComponent as ɵct} from './lib/tree-control/tree-control.component';\nexport {TreeRingChartComponent as ɵl} from './lib/tree-ring-chart/tree-ring-chart.component';\nexport {UploadComponent as ɵdf} from './lib/upload/upload.component';\nexport {UploadModule as ɵde} from './lib/upload/upload.module';\nexport {VideoGridComponent as ɵdx} from './lib/video-grid/video-grid.component';\nexport {VisualMapChartComponent as ɵcu} from './lib/visual-map-chart/visual-map-chart.component';\nexport {VoteComponent as ɵw} from './lib/vote/vote.component';\nexport {VoteModule as ɵv} from './lib/vote/vote.module';\nexport {WeatherComponent as ɵbb} from './lib/weather/weather.component';\nexport {WeatherModule as ɵba} from './lib/weather/weather.module';\nexport {WordartComponent as ɵbl} from './lib/wordart/wordart.component';\nexport {WordartModule as ɵbk} from './lib/wordart/wordart.module';"],"names":["Injectable","LazyService","HttpClient","BaiduMapService","ImageComponent","Component","ChangeDetectionStrategy","ChangeDetectorRef","Renderer2","ElementRef","WidgetRef","Property","Data","Widget","NgModule","CommonModule","WidgetBaseModule","WidgetService","BasicLineChartComponent","EventEmitter","Drill","DataOutput","NgxEchartsModule","ButtonComponent","GlobalVarService","TimerComponent","NzIconModule","NumberFlopComponent","VoteComponent","NzCheckboxModule","FormsModule","SelectComponent","DataInput","Event","Method","Param","NzSelectModule","NzButtonModule","SearchComponent","NzInputModule","NzPipesModule","NzIconService","WeatherComponent","NgZone","HttpClientJsonpModule","RadioComponent","NzRadioModule","CheckboxComponent","RateComponent","NzRateModule","NzSliderModule","GeneralTextComponent","MarqueeComponent","WordartComponent","IconfontComponent","AudioComponent","ViewChild","Input","BasicBarChartComponent","BasicPieChartComponent","BarChartThreeDComponent","ShapeComponent","Subject","takeUntil","NzResizeObserver","LineBarChartComponent","BubbleChartComponent","RadarChartComponent","FunnelChartComponent","BackgroundComponent","GaugeComponent","PercentPieChartComponent","TreeRingChartComponent","LiquidFillComponent","ShufflingListComponent","DataSchema","Pipe","NzToolTipModule","BasicPlanimetricMapComponent","forwardRef","BreathingBubbleLayerComponent","Inject","PlanimetricMap2dComponent","echarts.getMap","echarts.registerMap","NgxEchartsDirective","FlyLineLayerComponent","Map2dPolylineLayerComponent","Map2dMarkLayerComponent","Map2dVisualLayerComponent","PlanimetricMap3dComponent","Map3dMarkLayerComponent","Map3dLineLayerComponent","MipAnimComponent","TreeControlComponent","ArrayService","EventParam","NzTreeModule","NzHighlightModule","VisualMapChartComponent","DatePickerComponent","startOfDay","addDays","startOfMonth","addMonths","startOfYear","addYears","startOfWeek","addWeeks","parse","differenceInCalendarDays","formatDate","NzI18nService","NzDatePickerModule","TimePickerComponent","format","NzTimePickerModule","CustomBaiduMapComponent","take","TemplateUtil","ScaleSubject","Optional","HostBinding","WindLayerComponent","Directive","uuid","BaiduMarkerLayerComponent","ScrollDispatcher","NzContextMenuService","BaiduPolylineLayerComponent","TyphoonAreaLayerComponent","NzDropDownModule","NzNoAnimationModule","ScrollingModule","UploadComponent","Observable","NzMessageService","NzUploadModule","CrossTableComponent","NzTableModule","TableComponent","isNum","Pie3dChartComponent","MultiTitleGaugeComponent","GaugeProgressComponent","CUSTOM_ELEMENTS_SCHEMA","BulletinBoardComponent","ItemSwiperComponent","NzSpaceModule","TemporaryDataComponent","LineLightFlowComponent","HostListener","IframeComponent","VideoGridComponent","NzGridModule","Scatter3dComponent","AnnouncementComponent","isMatch","CalendarComponent","Router","BackgroundEventsComponent","EventsComponent","FullCalendarModule","dayGridPlugin","timeGridPlugin","interactionPlugin","TabsComponent","TabComponent","NzTabsModule","GanttComponent","parseISO","min","resourceTimelinePlugin"],"mappings":"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AAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACrC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACrC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACrC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACrC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACrC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACrC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACrC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACrC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACrC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACtC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACrC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACrC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACtC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACrC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACtC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACrC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE;gBACpC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE;gBACrC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE;gBACrC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE;gBACrC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE;gBACrC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE;gBACrC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE;gBACrC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE;gBACrC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE;gBACrC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE;gBACtC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE;gBACrC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE;gBACrC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE;gBACrC,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE;gBACtC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE;gBACrC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE;gBACrC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE;gBACrC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE;gBACrC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE;gBACrC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE;gBACrC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE;gBACrC,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EA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"}
|