bbj-screen-widget 2.4.46 → 2.4.48
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/bbj-screen-widget.d.ts +117 -0
- package/bbj-screen-widget.metadata.json +1 -0
- package/bundles/bbj-screen-widget-core.umd.js +606 -0
- package/bundles/bbj-screen-widget-core.umd.js.map +1 -0
- package/bundles/bbj-screen-widget-core.umd.min.js +2 -0
- package/bundles/bbj-screen-widget-core.umd.min.js.map +1 -0
- package/bundles/bbj-screen-widget.umd.js +21311 -0
- package/bundles/bbj-screen-widget.umd.js.map +1 -0
- package/bundles/bbj-screen-widget.umd.min.js +2 -0
- package/bundles/bbj-screen-widget.umd.min.js.map +1 -0
- package/core/bbj-screen-widget-core.d.ts +4 -0
- package/core/bbj-screen-widget-core.metadata.json +1 -0
- package/core/package.json +10 -2
- package/core/service/baidu-map.service.d.ts +16 -0
- package/esm2015/bbj-screen-widget.js +118 -0
- package/esm2015/core/bbj-screen-widget-core.js +5 -0
- package/esm2015/core/public_api.js +2 -0
- package/esm2015/core/service/baidu-map.service.js +101 -0
- package/esm2015/lib/announcement/announcement.component.js +80 -0
- package/esm2015/lib/announcement/announcement.module.js +25 -0
- package/esm2015/lib/audio/audio.component.js +167 -0
- package/esm2015/lib/audio/audio.module.js +20 -0
- package/esm2015/lib/background/background.component.js +52 -0
- package/esm2015/lib/background/background.module.js +19 -0
- package/esm2015/lib/bar-chart-three-d/bar-chart-three-d.component.js +323 -0
- package/esm2015/lib/bar-chart-three-d/bar-chart-three-d.module.js +20 -0
- package/esm2015/lib/basic-bar-chart/basic-bar-chart.component.js +604 -0
- package/esm2015/lib/basic-bar-chart/basic-bar-chart.module.js +27 -0
- package/esm2015/lib/basic-line-chart/basic-line-chart.component.js +782 -0
- package/esm2015/lib/basic-line-chart/basic-line-chart.module.js +20 -0
- package/esm2015/lib/basic-pie-chart/basic-pie-chart.component.js +471 -0
- package/esm2015/lib/basic-pie-chart/basic-pie-chart.module.js +20 -0
- package/esm2015/lib/basic-planimetric-map/basic-planimetric-map.component.js +233 -0
- package/esm2015/lib/basic-planimetric-map/basic-planimetric-map.module.js +21 -0
- package/esm2015/lib/breathing-bubble-layer/breathing-bubble-layer.component.js +503 -0
- package/esm2015/lib/breathing-bubble-layer/breathing-bubble-layer.module.js +19 -0
- package/esm2015/lib/bubble-chart/bubble-chart.component.js +348 -0
- package/esm2015/lib/bubble-chart/bubble-chart.module.js +20 -0
- package/esm2015/lib/bulletin-board/bulletin-board.component.js +160 -0
- package/esm2015/lib/bulletin-board/bulletin-board.module.js +23 -0
- package/esm2015/lib/button/button.component.js +186 -0
- package/esm2015/lib/button/button.module.js +21 -0
- package/esm2015/lib/calendar/calendar.component.js +96 -0
- package/esm2015/lib/calendar/calendar.module.js +28 -0
- package/esm2015/lib/checkbox/checkbox.component.js +333 -0
- package/esm2015/lib/checkbox/checkbox.module.js +21 -0
- package/esm2015/lib/cross-table/cross-table.component.js +291 -0
- package/esm2015/lib/cross-table/cross-table.module.js +20 -0
- package/esm2015/lib/custom-baidu-map/baidu-marker-layer/baidu-marker-layer.component.js +685 -0
- package/esm2015/lib/custom-baidu-map/baidu-polyline-layer/baidu-polyline-layer.component.js +278 -0
- package/esm2015/lib/custom-baidu-map/base-layer.js +53 -0
- package/esm2015/lib/custom-baidu-map/custom-baidu-map.component.js +665 -0
- package/esm2015/lib/custom-baidu-map/custom-baidu-map.module.js +46 -0
- package/esm2015/lib/custom-baidu-map/typhoon-area-layer/typhoon-area-layer.component.js +116 -0
- package/esm2015/lib/custom-baidu-map/wind-layer/wind-layer.component.js +331 -0
- package/esm2015/lib/date-picker/date-picker.component.js +447 -0
- package/esm2015/lib/date-picker/date-picker.module.js +22 -0
- package/esm2015/lib/funnel-chart/funnel-chart.component.js +241 -0
- package/esm2015/lib/funnel-chart/funnel-chart.module.js +20 -0
- package/esm2015/lib/gantt/gantt.component.js +222 -0
- package/esm2015/lib/gantt/gantt.module.js +39 -0
- package/esm2015/lib/gauge/gauge.component.js +324 -0
- package/esm2015/lib/gauge/gauge.module.js +20 -0
- package/esm2015/lib/gauge-progress/gauge-progress.component.js +348 -0
- package/esm2015/lib/gauge-progress/gauge.module.js +21 -0
- package/esm2015/lib/general-text/general-text.component.js +144 -0
- package/esm2015/lib/general-text/general-text.module.js +20 -0
- package/esm2015/lib/iconfont/icon.js +199 -0
- package/esm2015/lib/iconfont/iconfont.component.js +56 -0
- package/esm2015/lib/iconfont/iconfont.module.js +20 -0
- package/esm2015/lib/iframe/iframe.component.js +46 -0
- package/esm2015/lib/iframe/iframe.module.js +20 -0
- package/esm2015/lib/image/image.component.js +98 -0
- package/esm2015/lib/image/image.module.js +19 -0
- package/esm2015/lib/item-swiper/item-swiper.component.js +334 -0
- package/esm2015/lib/item-swiper/item-swiper.module.js +28 -0
- package/esm2015/lib/line-bar-chart/line-bar-chart.component.js +398 -0
- package/esm2015/lib/line-bar-chart/line-bar-chart.module.js +20 -0
- package/esm2015/lib/line-light-flow/line-light-flow.component.js +241 -0
- package/esm2015/lib/line-light-flow/line-light-flow.module.js +24 -0
- package/esm2015/lib/liquid-fill/liquid-fill.component.js +158 -0
- package/esm2015/lib/liquid-fill/liquid-fill.module.js +20 -0
- package/esm2015/lib/marquee/marquee.component.js +110 -0
- package/esm2015/lib/marquee/marquee.module.js +19 -0
- package/esm2015/lib/mip-anim/mip-anim.component.js +26 -0
- package/esm2015/lib/mip-anim/mip-anim.module.js +19 -0
- package/esm2015/lib/multi-title-gauge/multi-title-gauge.component.js +277 -0
- package/esm2015/lib/multi-title-gauge/multi-title-gauge.module.js +22 -0
- package/esm2015/lib/number-flop/number-flop.component.js +124 -0
- package/esm2015/lib/number-flop/number-flop.module.js +19 -0
- package/esm2015/lib/parent-container/parent-container.component.js +21 -0
- package/esm2015/lib/parent-container/parent-container.module.js +19 -0
- package/esm2015/lib/percent-pie-chart/percent-pie-chart.component.js +248 -0
- package/esm2015/lib/percent-pie-chart/percent-pie-chart.module.js +20 -0
- package/esm2015/lib/pie3d-chart/pie3d-chart.component.js +303 -0
- package/esm2015/lib/pie3d-chart/pie3d-chart.module.js +19 -0
- package/esm2015/lib/planimetric-map2d/fly-line-layer/fly-line-layer.component.js +431 -0
- package/esm2015/lib/planimetric-map2d/fly-line-layer/fly-line-layer.module.js +19 -0
- package/esm2015/lib/planimetric-map2d/map2d-mark-layer/map2d-mark-layer.component.js +252 -0
- package/esm2015/lib/planimetric-map2d/map2d-mark-layer/map2d-mark-layer.module.js +19 -0
- package/esm2015/lib/planimetric-map2d/map2d-polyline-layer/map2d-polyline-layer.component.js +124 -0
- package/esm2015/lib/planimetric-map2d/map2d-polyline-layer/map2d-polyline-layer.module.js +19 -0
- package/esm2015/lib/planimetric-map2d/map2d-visual-layer/map2d-visual-layer.component.js +359 -0
- package/esm2015/lib/planimetric-map2d/map2d-visual-layer/map2d-visual-layer.module.js +21 -0
- package/esm2015/lib/planimetric-map2d/planimetric-map2d.component.js +712 -0
- package/esm2015/lib/planimetric-map2d/planimetric-map2d.module.js +34 -0
- package/esm2015/lib/planimetric-map3d/map3d-line-layer/map3d-line-layer.component.js +128 -0
- package/esm2015/lib/planimetric-map3d/map3d-line-layer/map3d-line-layer.module.js +19 -0
- package/esm2015/lib/planimetric-map3d/map3d-mark-layer/map3d-mark-layer.component.js +242 -0
- package/esm2015/lib/planimetric-map3d/map3d-mark-layer/map3d-mark-layer.module.js +19 -0
- package/esm2015/lib/planimetric-map3d/planimetric-map3d.component.js +265 -0
- package/esm2015/lib/planimetric-map3d/planimetric-map3d.module.js +22 -0
- package/esm2015/lib/radar-chart/radar-chart.component.js +236 -0
- package/esm2015/lib/radar-chart/radar-chart.module.js +20 -0
- package/esm2015/lib/radio/radio.component.js +148 -0
- package/esm2015/lib/radio/radio.module.js +21 -0
- package/esm2015/lib/rate/rate.component.js +57 -0
- package/esm2015/lib/rate/rate.module.js +23 -0
- package/esm2015/lib/scatter3d/scatter3d.component.js +166 -0
- package/esm2015/lib/scatter3d/scatter3d.module.js +20 -0
- package/esm2015/lib/screen-widget.module.js +536 -0
- package/esm2015/lib/search/search.component.js +130 -0
- package/esm2015/lib/search/search.module.js +29 -0
- package/esm2015/lib/select/select.component.js +343 -0
- package/esm2015/lib/select/select.module.js +21 -0
- package/esm2015/lib/shape/shape.component.js +248 -0
- package/esm2015/lib/shape/shape.module.js +19 -0
- package/esm2015/lib/shared/component/video-player/video-player.component.js +114 -0
- package/esm2015/lib/shared/component/video-player/video-player.module.js +14 -0
- package/esm2015/lib/shared/service/common.service.js +39 -0
- package/esm2015/lib/shared/service/file-url.service.js +12 -0
- package/esm2015/lib/shared/service/gaode-map.service.js +36 -0
- package/esm2015/lib/shared/service/highcharts.service.js +36 -0
- package/esm2015/lib/shared/service/http.service.js +20 -0
- package/esm2015/lib/shared/util/base.util.js +5 -0
- package/esm2015/lib/shared/util/echarts.util.js +12 -0
- package/esm2015/lib/shared/util/style.util.js +19 -0
- package/esm2015/lib/shuffling-list/color.pipe.js +23 -0
- package/esm2015/lib/shuffling-list/shuffling-list.component.js +600 -0
- package/esm2015/lib/shuffling-list/shuffling-list.module.js +22 -0
- package/esm2015/lib/table/table.component.js +657 -0
- package/esm2015/lib/table/table.module.js +38 -0
- package/esm2015/lib/tabs/tab/tab.component.js +27 -0
- package/esm2015/lib/tabs/tabs.component.js +85 -0
- package/esm2015/lib/tabs/tabs.module.js +22 -0
- package/esm2015/lib/temporary-data/temporary-data.component.js +49 -0
- package/esm2015/lib/temporary-data/temporary-data.module.js +20 -0
- package/esm2015/lib/time-picker/time-picker.component.js +112 -0
- package/esm2015/lib/time-picker/time-picker.module.js +21 -0
- package/esm2015/lib/timer/timer.component.js +108 -0
- package/esm2015/lib/timer/timer.module.js +20 -0
- package/esm2015/lib/tree-control/tree-control.component.js +435 -0
- package/esm2015/lib/tree-control/tree-control.module.js +24 -0
- package/esm2015/lib/tree-ring-chart/tree-ring-chart.component.js +215 -0
- package/esm2015/lib/tree-ring-chart/tree-ring-chart.module.js +20 -0
- package/esm2015/lib/upload/upload.component.js +127 -0
- package/esm2015/lib/upload/upload.module.js +22 -0
- package/esm2015/lib/video-grid/video-grid.component.js +133 -0
- package/esm2015/lib/video-grid/video-grid.module.js +22 -0
- package/esm2015/lib/visual-map-chart/visual-map-chart.component.js +395 -0
- package/esm2015/lib/visual-map-chart/visual-map-chart.module.js +20 -0
- package/esm2015/lib/vote/vote.component.js +100 -0
- package/esm2015/lib/vote/vote.module.js +21 -0
- package/esm2015/lib/weather/weather.component.js +92 -0
- package/esm2015/lib/weather/weather.module.js +21 -0
- package/esm2015/lib/wordart/wordart.component.js +84 -0
- package/esm2015/lib/wordart/wordart.module.js +19 -0
- package/esm2015/lib/workbench-widget.module.js +620 -0
- package/esm2015/public-api.js +39 -0
- package/fesm2015/bbj-screen-widget-core.js +107 -0
- package/fesm2015/bbj-screen-widget-core.js.map +1 -0
- package/fesm2015/bbj-screen-widget.js +20232 -0
- package/fesm2015/bbj-screen-widget.js.map +1 -0
- package/lib/announcement/announcement.component.d.ts +13 -0
- package/lib/announcement/announcement.module.d.ts +5 -0
- package/lib/audio/audio.component.d.ts +22 -0
- package/lib/audio/audio.module.d.ts +4 -0
- package/lib/background/background.component.d.ts +12 -0
- package/lib/background/background.module.d.ts +4 -0
- package/lib/bar-chart-three-d/bar-chart-three-d.component.d.ts +30 -0
- package/lib/bar-chart-three-d/bar-chart-three-d.module.d.ts +4 -0
- package/lib/basic-bar-chart/basic-bar-chart.component.d.ts +105 -0
- package/lib/basic-bar-chart/basic-bar-chart.module.d.ts +5 -0
- package/lib/basic-line-chart/basic-line-chart.component.d.ts +102 -0
- package/lib/basic-line-chart/basic-line-chart.module.d.ts +4 -0
- package/lib/basic-pie-chart/basic-pie-chart.component.d.ts +56 -0
- package/lib/basic-pie-chart/basic-pie-chart.module.d.ts +4 -0
- package/lib/basic-planimetric-map/basic-planimetric-map.component.d.ts +18 -0
- package/lib/basic-planimetric-map/basic-planimetric-map.module.d.ts +4 -0
- package/lib/breathing-bubble-layer/breathing-bubble-layer.component.d.ts +210 -0
- package/lib/breathing-bubble-layer/breathing-bubble-layer.module.d.ts +4 -0
- package/lib/bubble-chart/bubble-chart.component.d.ts +75 -0
- package/lib/bubble-chart/bubble-chart.module.d.ts +4 -0
- package/lib/bulletin-board/bulletin-board.component.d.ts +25 -0
- package/lib/bulletin-board/bulletin-board.module.d.ts +4 -0
- package/lib/button/button.component.d.ts +25 -0
- package/lib/button/button.module.d.ts +4 -0
- package/lib/calendar/calendar.component.d.ts +14 -0
- package/lib/calendar/calendar.module.d.ts +4 -0
- package/lib/checkbox/checkbox.component.d.ts +45 -0
- package/lib/checkbox/checkbox.module.d.ts +4 -0
- package/lib/cross-table/cross-table.component.d.ts +30 -0
- package/lib/cross-table/cross-table.module.d.ts +4 -0
- package/lib/custom-baidu-map/baidu-marker-layer/baidu-marker-layer.component.d.ts +67 -0
- package/lib/custom-baidu-map/baidu-polyline-layer/baidu-polyline-layer.component.d.ts +23 -0
- package/lib/custom-baidu-map/base-layer.d.ts +16 -0
- package/lib/custom-baidu-map/custom-baidu-map.component.d.ts +92 -0
- package/lib/custom-baidu-map/custom-baidu-map.module.d.ts +4 -0
- package/lib/custom-baidu-map/typhoon-area-layer/typhoon-area-layer.component.d.ts +16 -0
- package/lib/custom-baidu-map/wind-layer/wind-layer.component.d.ts +28 -0
- package/lib/date-picker/date-picker.component.d.ts +63 -0
- package/lib/date-picker/date-picker.module.d.ts +4 -0
- package/lib/funnel-chart/funnel-chart.component.d.ts +24 -0
- package/lib/funnel-chart/funnel-chart.module.d.ts +4 -0
- package/lib/gantt/gantt.component.d.ts +25 -0
- package/lib/gantt/gantt.module.d.ts +4 -0
- package/lib/gauge/gauge.component.d.ts +37 -0
- package/lib/gauge/gauge.module.d.ts +4 -0
- package/lib/gauge-progress/gauge-progress.component.d.ts +46 -0
- package/lib/gauge-progress/gauge.module.d.ts +4 -0
- package/lib/general-text/general-text.component.d.ts +21 -0
- package/lib/general-text/general-text.module.d.ts +4 -0
- package/lib/iconfont/icon.d.ts +1 -0
- package/lib/iconfont/iconfont.component.d.ts +11 -0
- package/lib/iconfont/iconfont.module.d.ts +4 -0
- package/lib/iframe/iframe.component.d.ts +10 -0
- package/lib/iframe/iframe.module.d.ts +4 -0
- package/lib/image/image.component.d.ts +21 -0
- package/lib/image/image.module.d.ts +4 -0
- package/lib/item-swiper/item-swiper.component.d.ts +41 -0
- package/lib/item-swiper/item-swiper.module.d.ts +4 -0
- package/lib/line-bar-chart/line-bar-chart.component.d.ts +63 -0
- package/lib/line-bar-chart/line-bar-chart.module.d.ts +4 -0
- package/lib/line-light-flow/line-light-flow.component.d.ts +26 -0
- package/lib/line-light-flow/line-light-flow.module.d.ts +4 -0
- package/lib/liquid-fill/liquid-fill.component.d.ts +18 -0
- package/lib/liquid-fill/liquid-fill.module.d.ts +4 -0
- package/lib/marquee/marquee.component.d.ts +20 -0
- package/lib/marquee/marquee.module.d.ts +4 -0
- package/lib/mip-anim/mip-anim.component.d.ts +6 -0
- package/lib/mip-anim/mip-anim.module.d.ts +4 -0
- package/lib/multi-title-gauge/multi-title-gauge.component.d.ts +26 -0
- package/lib/multi-title-gauge/multi-title-gauge.module.d.ts +4 -0
- package/lib/number-flop/number-flop.component.d.ts +22 -0
- package/lib/number-flop/number-flop.module.d.ts +4 -0
- package/lib/parent-container/parent-container.component.d.ts +9 -0
- package/lib/parent-container/parent-container.module.d.ts +4 -0
- package/lib/percent-pie-chart/percent-pie-chart.component.d.ts +24 -0
- package/lib/percent-pie-chart/percent-pie-chart.module.d.ts +4 -0
- package/lib/pie3d-chart/pie3d-chart.component.d.ts +30 -0
- package/lib/pie3d-chart/pie3d-chart.module.d.ts +4 -0
- package/lib/planimetric-map2d/fly-line-layer/fly-line-layer.component.d.ts +206 -0
- package/lib/planimetric-map2d/fly-line-layer/fly-line-layer.module.d.ts +4 -0
- package/lib/planimetric-map2d/map2d-mark-layer/map2d-mark-layer.component.d.ts +15 -0
- package/lib/planimetric-map2d/map2d-mark-layer/map2d-mark-layer.module.d.ts +4 -0
- package/lib/planimetric-map2d/map2d-polyline-layer/map2d-polyline-layer.component.d.ts +15 -0
- package/lib/planimetric-map2d/map2d-polyline-layer/map2d-polyline-layer.module.d.ts +4 -0
- package/lib/planimetric-map2d/map2d-visual-layer/map2d-visual-layer.component.d.ts +49 -0
- package/lib/planimetric-map2d/map2d-visual-layer/map2d-visual-layer.module.d.ts +4 -0
- package/lib/planimetric-map2d/planimetric-map2d.component.d.ts +48 -0
- package/lib/planimetric-map2d/planimetric-map2d.module.d.ts +4 -0
- package/lib/planimetric-map3d/map3d-line-layer/map3d-line-layer.component.d.ts +14 -0
- package/lib/planimetric-map3d/map3d-line-layer/map3d-line-layer.module.d.ts +4 -0
- package/lib/planimetric-map3d/map3d-mark-layer/map3d-mark-layer.component.d.ts +41 -0
- package/lib/planimetric-map3d/map3d-mark-layer/map3d-mark-layer.module.d.ts +4 -0
- package/lib/planimetric-map3d/planimetric-map3d.component.d.ts +29 -0
- package/lib/planimetric-map3d/planimetric-map3d.module.d.ts +4 -0
- package/lib/radar-chart/radar-chart.component.d.ts +23 -0
- package/lib/radar-chart/radar-chart.module.d.ts +4 -0
- package/lib/radio/radio.component.d.ts +21 -0
- package/lib/radio/radio.module.d.ts +4 -0
- package/lib/rate/rate.component.d.ts +13 -0
- package/lib/rate/rate.module.d.ts +4 -0
- package/lib/scatter3d/scatter3d.component.d.ts +25 -0
- package/lib/scatter3d/scatter3d.module.d.ts +4 -0
- package/lib/screen-widget.module.d.ts +4 -0
- package/lib/search/search.component.d.ts +21 -0
- package/lib/search/search.module.d.ts +6 -0
- package/lib/select/select.component.d.ts +34 -0
- package/lib/select/select.module.d.ts +4 -0
- package/lib/shape/shape.component.d.ts +50 -0
- package/lib/shape/shape.module.d.ts +4 -0
- package/lib/shared/component/video-player/video-player.component.d.ts +28 -0
- package/lib/shared/component/video-player/video-player.module.d.ts +2 -0
- package/lib/shared/service/common.service.d.ts +21 -0
- package/lib/shared/service/file-url.service.d.ts +3 -0
- package/lib/shared/service/gaode-map.service.d.ts +10 -0
- package/lib/shared/service/highcharts.service.d.ts +9 -0
- package/lib/shared/service/http.service.d.ts +7 -0
- package/lib/shared/util/base.util.d.ts +1 -0
- package/lib/shared/util/echarts.util.d.ts +1 -0
- package/lib/shared/util/style.util.d.ts +1 -0
- package/lib/shuffling-list/color.pipe.d.ts +4 -0
- package/lib/shuffling-list/shuffling-list.component.d.ts +76 -0
- package/lib/shuffling-list/shuffling-list.module.d.ts +4 -0
- package/lib/table/table.component.d.ts +65 -0
- package/lib/table/table.module.d.ts +4 -0
- package/lib/tabs/tab/tab.component.d.ts +7 -0
- package/lib/tabs/tabs.component.d.ts +13 -0
- package/lib/tabs/tabs.module.d.ts +4 -0
- package/lib/temporary-data/temporary-data.component.d.ts +13 -0
- package/lib/temporary-data/temporary-data.module.d.ts +4 -0
- package/lib/time-picker/time-picker.component.d.ts +17 -0
- package/lib/time-picker/time-picker.module.d.ts +4 -0
- package/lib/timer/timer.component.d.ts +21 -0
- package/lib/timer/timer.module.d.ts +4 -0
- package/lib/tree-control/tree-control.component.d.ts +62 -0
- package/lib/tree-control/tree-control.module.d.ts +4 -0
- package/lib/tree-ring-chart/tree-ring-chart.component.d.ts +24 -0
- package/lib/tree-ring-chart/tree-ring-chart.module.d.ts +4 -0
- package/lib/upload/upload.component.d.ts +21 -0
- package/lib/upload/upload.module.d.ts +4 -0
- package/lib/video-grid/video-grid.component.d.ts +23 -0
- package/lib/video-grid/video-grid.module.d.ts +4 -0
- package/lib/visual-map-chart/visual-map-chart.component.d.ts +49 -0
- package/lib/visual-map-chart/visual-map-chart.module.d.ts +4 -0
- package/lib/vote/vote.component.d.ts +15 -0
- package/lib/vote/vote.module.d.ts +4 -0
- package/lib/weather/weather.component.d.ts +26 -0
- package/lib/weather/weather.module.d.ts +4 -0
- package/lib/wordart/wordart.component.d.ts +14 -0
- package/lib/wordart/wordart.module.d.ts +4 -0
- package/lib/workbench-widget.module.d.ts +4 -0
- package/package.json +13 -4
- package/{src/public-api.ts → public-api.d.ts} +34 -46
- package/core/src/service/baidu-map.service.ts +0 -107
- package/karma.conf.js +0 -32
- package/ng-package.json +0 -59
- package/src/lib/announcement/announcement.component.html +0 -3
- package/src/lib/announcement/announcement.component.less +0 -5
- package/src/lib/announcement/announcement.component.spec.ts +0 -25
- package/src/lib/announcement/announcement.component.ts +0 -55
- package/src/lib/announcement/announcement.module.ts +0 -19
- package/src/lib/audio/audio.component.html +0 -6
- package/src/lib/audio/audio.component.less +0 -12
- package/src/lib/audio/audio.component.spec.ts +0 -25
- package/src/lib/audio/audio.component.ts +0 -167
- package/src/lib/audio/audio.module.ts +0 -15
- package/src/lib/background/background.component.html +0 -1
- package/src/lib/background/background.component.less +0 -6
- package/src/lib/background/background.component.spec.ts +0 -25
- package/src/lib/background/background.component.ts +0 -33
- package/src/lib/background/background.module.ts +0 -14
- package/src/lib/bar-chart-three-d/bar-chart-three-d.component.html +0 -1
- package/src/lib/bar-chart-three-d/bar-chart-three-d.component.less +0 -8
- package/src/lib/bar-chart-three-d/bar-chart-three-d.component.spec.ts +0 -25
- package/src/lib/bar-chart-three-d/bar-chart-three-d.component.ts +0 -271
- package/src/lib/bar-chart-three-d/bar-chart-three-d.module.ts +0 -15
- package/src/lib/basic-bar-chart/basic-bar-chart.component.html +0 -7
- package/src/lib/basic-bar-chart/basic-bar-chart.component.less +0 -5
- package/src/lib/basic-bar-chart/basic-bar-chart.component.spec.ts +0 -25
- package/src/lib/basic-bar-chart/basic-bar-chart.component.ts +0 -493
- package/src/lib/basic-bar-chart/basic-bar-chart.module.ts +0 -21
- package/src/lib/basic-line-chart/basic-line-chart.component.html +0 -7
- package/src/lib/basic-line-chart/basic-line-chart.component.less +0 -8
- package/src/lib/basic-line-chart/basic-line-chart.component.spec.ts +0 -25
- package/src/lib/basic-line-chart/basic-line-chart.component.ts +0 -654
- package/src/lib/basic-line-chart/basic-line-chart.module.ts +0 -15
- package/src/lib/basic-pie-chart/basic-pie-chart.component.html +0 -7
- package/src/lib/basic-pie-chart/basic-pie-chart.component.less +0 -8
- package/src/lib/basic-pie-chart/basic-pie-chart.component.spec.ts +0 -25
- package/src/lib/basic-pie-chart/basic-pie-chart.component.ts +0 -439
- package/src/lib/basic-pie-chart/basic-pie-chart.module.ts +0 -15
- package/src/lib/basic-planimetric-map/basic-planimetric-map.component.html +0 -2
- package/src/lib/basic-planimetric-map/basic-planimetric-map.component.less +0 -9
- package/src/lib/basic-planimetric-map/basic-planimetric-map.component.spec.ts +0 -25
- package/src/lib/basic-planimetric-map/basic-planimetric-map.component.ts +0 -211
- package/src/lib/basic-planimetric-map/basic-planimetric-map.module.ts +0 -16
- package/src/lib/breathing-bubble-layer/breathing-bubble-layer.component.css +0 -0
- package/src/lib/breathing-bubble-layer/breathing-bubble-layer.component.html +0 -1
- package/src/lib/breathing-bubble-layer/breathing-bubble-layer.component.spec.ts +0 -25
- package/src/lib/breathing-bubble-layer/breathing-bubble-layer.component.ts +0 -487
- package/src/lib/breathing-bubble-layer/breathing-bubble-layer.module.ts +0 -14
- package/src/lib/bubble-chart/bubble-chart.component.html +0 -7
- package/src/lib/bubble-chart/bubble-chart.component.less +0 -8
- package/src/lib/bubble-chart/bubble-chart.component.spec.ts +0 -25
- package/src/lib/bubble-chart/bubble-chart.component.ts +0 -307
- package/src/lib/bubble-chart/bubble-chart.module.ts +0 -15
- package/src/lib/bulletin-board/bulletin-board.component.html +0 -15
- package/src/lib/bulletin-board/bulletin-board.component.less +0 -27
- package/src/lib/bulletin-board/bulletin-board.component.spec.ts +0 -25
- package/src/lib/bulletin-board/bulletin-board.component.ts +0 -127
- package/src/lib/bulletin-board/bulletin-board.module.ts +0 -20
- package/src/lib/button/button.component.html +0 -1
- package/src/lib/button/button.component.less +0 -17
- package/src/lib/button/button.component.spec.ts +0 -25
- package/src/lib/button/button.component.ts +0 -137
- package/src/lib/button/button.module.ts +0 -16
- package/src/lib/calendar/calendar.component.html +0 -1
- package/src/lib/calendar/calendar.component.less +0 -14
- package/src/lib/calendar/calendar.component.spec.ts +0 -25
- package/src/lib/calendar/calendar.component.ts +0 -75
- package/src/lib/calendar/calendar.module.ts +0 -23
- package/src/lib/checkbox/checkbox.component.html +0 -61
- package/src/lib/checkbox/checkbox.component.less +0 -104
- package/src/lib/checkbox/checkbox.component.spec.ts +0 -25
- package/src/lib/checkbox/checkbox.component.ts +0 -292
- package/src/lib/checkbox/checkbox.module.ts +0 -16
- package/src/lib/cross-table/cross-table.component.html +0 -16
- package/src/lib/cross-table/cross-table.component.less +0 -75
- package/src/lib/cross-table/cross-table.component.spec.ts +0 -25
- package/src/lib/cross-table/cross-table.component.ts +0 -257
- package/src/lib/cross-table/cross-table.module.ts +0 -18
- package/src/lib/custom-baidu-map/baidu-marker-layer/baidu-marker-layer.component.html +0 -32
- package/src/lib/custom-baidu-map/baidu-marker-layer/baidu-marker-layer.component.less +0 -11
- package/src/lib/custom-baidu-map/baidu-marker-layer/baidu-marker-layer.component.spec.ts +0 -25
- package/src/lib/custom-baidu-map/baidu-marker-layer/baidu-marker-layer.component.ts +0 -638
- 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 +0 -25
- package/src/lib/custom-baidu-map/baidu-polyline-layer/baidu-polyline-layer.component.ts +0 -248
- package/src/lib/custom-baidu-map/base-layer.ts +0 -50
- package/src/lib/custom-baidu-map/custom-baidu-map.component.html +0 -15
- package/src/lib/custom-baidu-map/custom-baidu-map.component.less +0 -68
- package/src/lib/custom-baidu-map/custom-baidu-map.component.spec.ts +0 -25
- package/src/lib/custom-baidu-map/custom-baidu-map.component.ts +0 -636
- package/src/lib/custom-baidu-map/custom-baidu-map.module.ts +0 -41
- 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 +0 -25
- package/src/lib/custom-baidu-map/typhoon-area-layer/typhoon-area-layer.component.ts +0 -99
- 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 +0 -25
- package/src/lib/custom-baidu-map/wind-layer/wind-layer.component.ts +0 -404
- package/src/lib/data-map/data-map.component.html +0 -9
- package/src/lib/data-map/data-map.component.less +0 -0
- package/src/lib/data-map/data-map.component.spec.ts +0 -25
- package/src/lib/data-map/data-map.component.ts +0 -105
- package/src/lib/data-map/data-map.module.ts +0 -15
- package/src/lib/date-picker/date-picker.component.html +0 -32
- package/src/lib/date-picker/date-picker.component.less +0 -20
- package/src/lib/date-picker/date-picker.component.spec.ts +0 -25
- package/src/lib/date-picker/date-picker.component.ts +0 -389
- package/src/lib/date-picker/date-picker.module.ts +0 -18
- package/src/lib/drop-down-detail-list/drop-down-detail-list.component.html +0 -25
- package/src/lib/drop-down-detail-list/drop-down-detail-list.component.less +0 -35
- package/src/lib/drop-down-detail-list/drop-down-detail-list.component.spec.ts +0 -25
- package/src/lib/drop-down-detail-list/drop-down-detail-list.component.ts +0 -117
- package/src/lib/drop-down-detail-list/drop-down-detail-list.module.ts +0 -15
- package/src/lib/dynamic-list/dynamic-list.component.html +0 -15
- package/src/lib/dynamic-list/dynamic-list.component.less +0 -31
- package/src/lib/dynamic-list/dynamic-list.component.spec.ts +0 -25
- package/src/lib/dynamic-list/dynamic-list.component.ts +0 -57
- package/src/lib/dynamic-list/dynamic-list.module.ts +0 -15
- package/src/lib/funnel-chart/funnel-chart.component.html +0 -7
- package/src/lib/funnel-chart/funnel-chart.component.less +0 -8
- package/src/lib/funnel-chart/funnel-chart.component.spec.ts +0 -25
- package/src/lib/funnel-chart/funnel-chart.component.ts +0 -198
- package/src/lib/funnel-chart/funnel-chart.module.ts +0 -15
- package/src/lib/gantt/gantt.component.html +0 -10
- package/src/lib/gantt/gantt.component.less +0 -76
- package/src/lib/gantt/gantt.component.spec.ts +0 -25
- package/src/lib/gantt/gantt.component.ts +0 -213
- package/src/lib/gantt/gantt.module.ts +0 -37
- package/src/lib/gauge/gauge.component.html +0 -1
- package/src/lib/gauge/gauge.component.less +0 -8
- package/src/lib/gauge/gauge.component.spec.ts +0 -25
- package/src/lib/gauge/gauge.component.ts +0 -268
- package/src/lib/gauge/gauge.module.ts +0 -15
- package/src/lib/gauge-progress/gauge-progress.component.html +0 -29
- package/src/lib/gauge-progress/gauge-progress.component.less +0 -51
- package/src/lib/gauge-progress/gauge-progress.component.ts +0 -288
- package/src/lib/gauge-progress/gauge.module.ts +0 -16
- package/src/lib/general-text/general-text.component.html +0 -7
- package/src/lib/general-text/general-text.component.less +0 -8
- package/src/lib/general-text/general-text.component.spec.ts +0 -25
- package/src/lib/general-text/general-text.component.ts +0 -114
- package/src/lib/general-text/general-text.module.ts +0 -15
- package/src/lib/iconfont/icon.ts +0 -198
- package/src/lib/iconfont/iconfont.component.html +0 -4
- package/src/lib/iconfont/iconfont.component.less +0 -5
- package/src/lib/iconfont/iconfont.component.spec.ts +0 -25
- package/src/lib/iconfont/iconfont.component.ts +0 -42
- package/src/lib/iconfont/iconfont.module.ts +0 -15
- package/src/lib/iframe/iframe.component.html +0 -1
- package/src/lib/iframe/iframe.component.less +0 -13
- package/src/lib/iframe/iframe.component.spec.ts +0 -25
- package/src/lib/iframe/iframe.component.ts +0 -34
- package/src/lib/iframe/iframe.module.ts +0 -15
- package/src/lib/image/image.component.html +0 -2
- package/src/lib/image/image.component.less +0 -13
- package/src/lib/image/image.component.spec.ts +0 -25
- package/src/lib/image/image.component.ts +0 -79
- package/src/lib/image/image.module.ts +0 -14
- package/src/lib/item-swiper/item-swiper.component.html +0 -48
- package/src/lib/item-swiper/item-swiper.component.less +0 -75
- package/src/lib/item-swiper/item-swiper.component.spec.ts +0 -25
- package/src/lib/item-swiper/item-swiper.component.ts +0 -284
- package/src/lib/item-swiper/item-swiper.module.ts +0 -24
- package/src/lib/line-bar-chart/line-bar-chart.component.html +0 -7
- package/src/lib/line-bar-chart/line-bar-chart.component.less +0 -3
- package/src/lib/line-bar-chart/line-bar-chart.component.spec.ts +0 -25
- package/src/lib/line-bar-chart/line-bar-chart.component.ts +0 -346
- package/src/lib/line-bar-chart/line-bar-chart.module.ts +0 -15
- package/src/lib/line-light-flow/line-light-flow.component.css +0 -0
- package/src/lib/line-light-flow/line-light-flow.component.html +0 -3
- package/src/lib/line-light-flow/line-light-flow.component.spec.ts +0 -25
- package/src/lib/line-light-flow/line-light-flow.component.ts +0 -274
- package/src/lib/line-light-flow/line-light-flow.module.ts +0 -21
- package/src/lib/liquid-fill/liquid-fill.component.html +0 -1
- package/src/lib/liquid-fill/liquid-fill.component.less +0 -8
- package/src/lib/liquid-fill/liquid-fill.component.spec.ts +0 -25
- package/src/lib/liquid-fill/liquid-fill.component.ts +0 -127
- package/src/lib/liquid-fill/liquid-fill.module.ts +0 -15
- package/src/lib/marquee/marquee.component.html +0 -5
- package/src/lib/marquee/marquee.component.less +0 -9
- package/src/lib/marquee/marquee.component.spec.ts +0 -25
- package/src/lib/marquee/marquee.component.ts +0 -84
- package/src/lib/marquee/marquee.module.ts +0 -14
- package/src/lib/mip-anim/mip-anim.component.html +0 -1
- package/src/lib/mip-anim/mip-anim.component.less +0 -7
- package/src/lib/mip-anim/mip-anim.component.spec.ts +0 -25
- package/src/lib/mip-anim/mip-anim.component.ts +0 -18
- package/src/lib/mip-anim/mip-anim.module.ts +0 -14
- package/src/lib/multi-title-gauge/multi-title-gauge.component.html +0 -1
- package/src/lib/multi-title-gauge/multi-title-gauge.component.less +0 -9
- package/src/lib/multi-title-gauge/multi-title-gauge.component.spec.ts +0 -25
- package/src/lib/multi-title-gauge/multi-title-gauge.component.ts +0 -231
- package/src/lib/multi-title-gauge/multi-title-gauge.module.ts +0 -19
- package/src/lib/number-flop/number-flop.component.html +0 -31
- package/src/lib/number-flop/number-flop.component.less +0 -155
- package/src/lib/number-flop/number-flop.component.spec.ts +0 -25
- package/src/lib/number-flop/number-flop.component.ts +0 -96
- package/src/lib/number-flop/number-flop.module.ts +0 -14
- 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 +0 -25
- package/src/lib/parent-container/parent-container.component.ts +0 -21
- package/src/lib/parent-container/parent-container.module.ts +0 -14
- package/src/lib/percent-pie-chart/percent-pie-chart.component.html +0 -8
- package/src/lib/percent-pie-chart/percent-pie-chart.component.less +0 -8
- package/src/lib/percent-pie-chart/percent-pie-chart.component.spec.ts +0 -25
- package/src/lib/percent-pie-chart/percent-pie-chart.component.ts +0 -213
- package/src/lib/percent-pie-chart/percent-pie-chart.module.ts +0 -15
- package/src/lib/pie3d-chart/pie3d-chart.component.html +0 -1
- package/src/lib/pie3d-chart/pie3d-chart.component.less +0 -9
- package/src/lib/pie3d-chart/pie3d-chart.component.spec.ts +0 -25
- package/src/lib/pie3d-chart/pie3d-chart.component.ts +0 -278
- package/src/lib/pie3d-chart/pie3d-chart.module.ts +0 -16
- 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 +0 -25
- package/src/lib/planimetric-map2d/fly-line-layer/fly-line-layer.component.ts +0 -411
- package/src/lib/planimetric-map2d/fly-line-layer/fly-line-layer.module.ts +0 -13
- package/src/lib/planimetric-map2d/map2d-mark-layer/map2d-mark-layer.component.html +0 -1
- 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 +0 -25
- package/src/lib/planimetric-map2d/map2d-mark-layer/map2d-mark-layer.component.ts +0 -235
- package/src/lib/planimetric-map2d/map2d-mark-layer/map2d-mark-layer.module.ts +0 -16
- 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 +0 -25
- package/src/lib/planimetric-map2d/map2d-polyline-layer/map2d-polyline-layer.component.ts +0 -107
- package/src/lib/planimetric-map2d/map2d-polyline-layer/map2d-polyline-layer.module.ts +0 -17
- 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 +0 -25
- package/src/lib/planimetric-map2d/map2d-visual-layer/map2d-visual-layer.component.ts +0 -337
- package/src/lib/planimetric-map2d/map2d-visual-layer/map2d-visual-layer.module.ts +0 -18
- package/src/lib/planimetric-map2d/planimetric-map2d.component.html +0 -3
- package/src/lib/planimetric-map2d/planimetric-map2d.component.less +0 -9
- package/src/lib/planimetric-map2d/planimetric-map2d.component.spec.ts +0 -25
- package/src/lib/planimetric-map2d/planimetric-map2d.component.ts +0 -649
- package/src/lib/planimetric-map2d/planimetric-map2d.module.ts +0 -29
- 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 +0 -25
- package/src/lib/planimetric-map3d/map3d-line-layer/map3d-line-layer.component.ts +0 -123
- package/src/lib/planimetric-map3d/map3d-line-layer/map3d-line-layer.module.ts +0 -14
- 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 +0 -25
- package/src/lib/planimetric-map3d/map3d-mark-layer/map3d-mark-layer.component.ts +0 -229
- package/src/lib/planimetric-map3d/map3d-mark-layer/map3d-mark-layer.module.ts +0 -14
- package/src/lib/planimetric-map3d/planimetric-map3d.component.html +0 -2
- package/src/lib/planimetric-map3d/planimetric-map3d.component.less +0 -10
- package/src/lib/planimetric-map3d/planimetric-map3d.component.spec.ts +0 -25
- package/src/lib/planimetric-map3d/planimetric-map3d.component.ts +0 -227
- package/src/lib/planimetric-map3d/planimetric-map3d.module.ts +0 -17
- package/src/lib/radar-chart/radar-chart.component.html +0 -7
- package/src/lib/radar-chart/radar-chart.component.less +0 -8
- package/src/lib/radar-chart/radar-chart.component.spec.ts +0 -25
- package/src/lib/radar-chart/radar-chart.component.ts +0 -203
- package/src/lib/radar-chart/radar-chart.module.ts +0 -15
- package/src/lib/radio/radio.component.html +0 -18
- package/src/lib/radio/radio.component.less +0 -61
- package/src/lib/radio/radio.component.spec.ts +0 -25
- package/src/lib/radio/radio.component.ts +0 -116
- package/src/lib/radio/radio.module.ts +0 -16
- package/src/lib/rate/rate.component.html +0 -16
- package/src/lib/rate/rate.component.less +0 -39
- package/src/lib/rate/rate.component.spec.ts +0 -25
- package/src/lib/rate/rate.component.ts +0 -40
- package/src/lib/rate/rate.module.ts +0 -18
- package/src/lib/scatter3d/scatter3d.component.html +0 -1
- package/src/lib/scatter3d/scatter3d.component.less +0 -8
- package/src/lib/scatter3d/scatter3d.component.spec.ts +0 -25
- package/src/lib/scatter3d/scatter3d.component.ts +0 -129
- package/src/lib/scatter3d/scatter3d.module.ts +0 -15
- package/src/lib/screen-widget.module.ts +0 -592
- package/src/lib/search/search.component.html +0 -30
- package/src/lib/search/search.component.less +0 -30
- package/src/lib/search/search.component.spec.ts +0 -25
- package/src/lib/search/search.component.ts +0 -103
- package/src/lib/search/search.module.ts +0 -22
- package/src/lib/select/select.component.html +0 -27
- package/src/lib/select/select.component.less +0 -112
- package/src/lib/select/select.component.spec.ts +0 -25
- package/src/lib/select/select.component.ts +0 -287
- package/src/lib/select/select.module.ts +0 -16
- package/src/lib/shape/shape.component.html +0 -39
- package/src/lib/shape/shape.component.less +0 -8
- package/src/lib/shape/shape.component.spec.ts +0 -25
- package/src/lib/shape/shape.component.ts +0 -207
- package/src/lib/shape/shape.module.ts +0 -14
- package/src/lib/shared/component/video-player/video-player.component.html +0 -2
- package/src/lib/shared/component/video-player/video-player.component.less +0 -15
- package/src/lib/shared/component/video-player/video-player.component.spec.ts +0 -25
- package/src/lib/shared/component/video-player/video-player.component.ts +0 -132
- package/src/lib/shared/component/video-player/video-player.module.ts +0 -11
- package/src/lib/shared/model/scale.token.ts +0 -8
- package/src/lib/shared/service/common.service.ts +0 -28
- package/src/lib/shared/service/file-url.service.ts +0 -8
- package/src/lib/shared/service/gaode-map.service.ts +0 -37
- package/src/lib/shared/service/highcharts.service.ts +0 -29
- package/src/lib/shared/service/http.service.ts +0 -15
- package/src/lib/shared/util/base.util.ts +0 -4
- package/src/lib/shared/util/echarts.util.ts +0 -11
- package/src/lib/shared/util/style.util.ts +0 -12
- package/src/lib/shuffling-list/color.pipe.ts +0 -21
- package/src/lib/shuffling-list/shuffling-list.component.html +0 -37
- package/src/lib/shuffling-list/shuffling-list.component.less +0 -55
- package/src/lib/shuffling-list/shuffling-list.component.spec.ts +0 -25
- package/src/lib/shuffling-list/shuffling-list.component.ts +0 -534
- package/src/lib/shuffling-list/shuffling-list.module.ts +0 -17
- package/src/lib/table/table.component.html +0 -123
- package/src/lib/table/table.component.less +0 -76
- package/src/lib/table/table.component.spec.ts +0 -25
- package/src/lib/table/table.component.ts +0 -608
- package/src/lib/table/table.module.ts +0 -33
- package/src/lib/tabs/tab/tab.component.html +0 -1
- package/src/lib/tabs/tab/tab.component.less +0 -5
- package/src/lib/tabs/tab/tab.component.spec.ts +0 -25
- package/src/lib/tabs/tab/tab.component.ts +0 -18
- package/src/lib/tabs/tabs.component.html +0 -13
- package/src/lib/tabs/tabs.component.less +0 -40
- package/src/lib/tabs/tabs.component.spec.ts +0 -25
- package/src/lib/tabs/tabs.component.ts +0 -68
- package/src/lib/tabs/tabs.module.ts +0 -17
- package/src/lib/temporary-data/temporary-data.component.html +0 -1
- package/src/lib/temporary-data/temporary-data.component.less +0 -4
- package/src/lib/temporary-data/temporary-data.component.spec.ts +0 -25
- package/src/lib/temporary-data/temporary-data.component.ts +0 -46
- package/src/lib/temporary-data/temporary-data.module.ts +0 -15
- package/src/lib/text/text.component.css +0 -0
- package/src/lib/text/text.component.html +0 -3
- package/src/lib/text/text.component.spec.ts +0 -25
- package/src/lib/text/text.component.ts +0 -22
- package/src/lib/text/text.module.ts +0 -14
- package/src/lib/time-picker/time-picker.component.html +0 -1
- package/src/lib/time-picker/time-picker.component.less +0 -14
- package/src/lib/time-picker/time-picker.component.spec.ts +0 -25
- package/src/lib/time-picker/time-picker.component.ts +0 -86
- package/src/lib/time-picker/time-picker.module.ts +0 -19
- package/src/lib/timer/timer.component.html +0 -7
- package/src/lib/timer/timer.component.less +0 -24
- package/src/lib/timer/timer.component.spec.ts +0 -25
- package/src/lib/timer/timer.component.ts +0 -74
- package/src/lib/timer/timer.module.ts +0 -15
- package/src/lib/tree-control/tree-control.component.html +0 -97
- package/src/lib/tree-control/tree-control.component.less +0 -111
- package/src/lib/tree-control/tree-control.component.spec.ts +0 -25
- package/src/lib/tree-control/tree-control.component.ts +0 -363
- package/src/lib/tree-control/tree-control.module.ts +0 -18
- package/src/lib/tree-ring-chart/tree-ring-chart.component.html +0 -7
- package/src/lib/tree-ring-chart/tree-ring-chart.component.less +0 -8
- package/src/lib/tree-ring-chart/tree-ring-chart.component.spec.ts +0 -25
- package/src/lib/tree-ring-chart/tree-ring-chart.component.ts +0 -192
- package/src/lib/tree-ring-chart/tree-ring-chart.module.ts +0 -15
- package/src/lib/upload/upload.component.html +0 -32
- package/src/lib/upload/upload.component.less +0 -14
- package/src/lib/upload/upload.component.spec.ts +0 -25
- package/src/lib/upload/upload.component.ts +0 -109
- package/src/lib/upload/upload.module.ts +0 -19
- package/src/lib/video-grid/video-grid.component.html +0 -33
- package/src/lib/video-grid/video-grid.component.less +0 -68
- package/src/lib/video-grid/video-grid.component.spec.ts +0 -25
- package/src/lib/video-grid/video-grid.component.ts +0 -114
- package/src/lib/video-grid/video-grid.module.ts +0 -17
- package/src/lib/visual-map-chart/visual-map-chart.component.html +0 -8
- package/src/lib/visual-map-chart/visual-map-chart.component.less +0 -21
- package/src/lib/visual-map-chart/visual-map-chart.component.spec.ts +0 -25
- package/src/lib/visual-map-chart/visual-map-chart.component.ts +0 -365
- package/src/lib/visual-map-chart/visual-map-chart.module.ts +0 -18
- package/src/lib/vote/vote.component.html +0 -6
- package/src/lib/vote/vote.component.less +0 -41
- package/src/lib/vote/vote.component.spec.ts +0 -25
- package/src/lib/vote/vote.component.ts +0 -71
- package/src/lib/vote/vote.module.ts +0 -16
- package/src/lib/weather/weather.component.html +0 -27
- package/src/lib/weather/weather.component.less +0 -67
- package/src/lib/weather/weather.component.spec.ts +0 -25
- package/src/lib/weather/weather.component.ts +0 -78
- package/src/lib/weather/weather.module.ts +0 -16
- package/src/lib/wordart/wordart.component.html +0 -2
- package/src/lib/wordart/wordart.component.less +0 -12
- package/src/lib/wordart/wordart.component.spec.ts +0 -25
- package/src/lib/wordart/wordart.component.ts +0 -56
- package/src/lib/wordart/wordart.module.ts +0 -14
- package/src/lib/workbench-widget.module.ts +0 -675
- package/src/test.ts +0 -22
- package/tsconfig.lib.json +0 -37
- package/tsconfig.lib.prod.json +0 -9
- package/tsconfig.spec.json +0 -17
- package/tslint.json +0 -17
- /package/core/{src/public_api.ts → public_api.d.ts} +0 -0
|
@@ -0,0 +1,712 @@
|
|
|
1
|
+
var PlanimetricMap2dComponent_1;
|
|
2
|
+
import { __awaiter, __decorate, __metadata } from "tslib";
|
|
3
|
+
import { Component, forwardRef, ViewChild, EventEmitter, } from '@angular/core';
|
|
4
|
+
import { Widget, Property, Data, DataOutput, Event } from 'bbj-widget-base';
|
|
5
|
+
import { ParentContainerComponent } from '../parent-container/parent-container.component';
|
|
6
|
+
import { HttpClient } from '@angular/common/http';
|
|
7
|
+
import * as echarts from 'echarts';
|
|
8
|
+
import { NgxEchartsDirective } from 'ngx-echarts';
|
|
9
|
+
import { getEchartsTextStyle } from '../shared/util/echarts.util';
|
|
10
|
+
let PlanimetricMap2dComponent = PlanimetricMap2dComponent_1 = class PlanimetricMap2dComponent extends ParentContainerComponent {
|
|
11
|
+
constructor(http) {
|
|
12
|
+
super();
|
|
13
|
+
this.http = http;
|
|
14
|
+
this.mapStyle = 'china';
|
|
15
|
+
this.zoom = 1;
|
|
16
|
+
this.areaColor = '#323c48';
|
|
17
|
+
this.borderColor = '#404a59';
|
|
18
|
+
this._areaColor = '#2a333d';
|
|
19
|
+
this.areaNamefont = {
|
|
20
|
+
family: '',
|
|
21
|
+
color: '#FFFFFF',
|
|
22
|
+
weight: 'normal',
|
|
23
|
+
size: 12,
|
|
24
|
+
space: 0,
|
|
25
|
+
lineHeight: 12,
|
|
26
|
+
};
|
|
27
|
+
this.showAreaName = true;
|
|
28
|
+
this.triggerType = 'mousemove';
|
|
29
|
+
this.selectedMode = '';
|
|
30
|
+
this.zoomSwitch = 'false';
|
|
31
|
+
this._borderColor = '';
|
|
32
|
+
this.shadowColor = '#2a333d';
|
|
33
|
+
this.shadowWidth = 20;
|
|
34
|
+
this.mapColorStart = '#2a333d';
|
|
35
|
+
this.mapColorEnd = '#2a333d';
|
|
36
|
+
this.selectColorStart = '#2a333d';
|
|
37
|
+
this.selectColorEnd = '#2a333d';
|
|
38
|
+
this.hasMap = false;
|
|
39
|
+
this.data = [];
|
|
40
|
+
this.areaClick = new EventEmitter();
|
|
41
|
+
this.nameMap = {
|
|
42
|
+
Afghanistan: '阿富汗',
|
|
43
|
+
Albania: '阿尔巴尼亚',
|
|
44
|
+
Algeria: '阿尔及利亚',
|
|
45
|
+
Angola: '安哥拉',
|
|
46
|
+
Argentina: '阿根廷',
|
|
47
|
+
Armenia: '亚美尼亚',
|
|
48
|
+
Australia: '澳大利亚',
|
|
49
|
+
Austria: '奥地利',
|
|
50
|
+
Azerbaijan: '阿塞拜疆',
|
|
51
|
+
Bangladesh: '孟加拉国',
|
|
52
|
+
Belarus: '白俄罗斯',
|
|
53
|
+
Belgium: '比利时',
|
|
54
|
+
Belize: '伯利兹',
|
|
55
|
+
Benin: '贝宁',
|
|
56
|
+
Bermuda: '百慕大',
|
|
57
|
+
Bhutan: '不丹',
|
|
58
|
+
Bolivia: '玻利维亚',
|
|
59
|
+
'Bosnia and Herzegovina': '波斯尼亚和黑塞哥维那',
|
|
60
|
+
Botswana: '博茨瓦纳',
|
|
61
|
+
Brazil: '巴西',
|
|
62
|
+
Brunei: '文莱',
|
|
63
|
+
Bulgaria: '保加利亚',
|
|
64
|
+
'Burkina Faso': '布基纳法索',
|
|
65
|
+
Burundi: '布隆迪',
|
|
66
|
+
Cambodia: '柬埔寨',
|
|
67
|
+
Cameroon: '喀麦隆',
|
|
68
|
+
Canada: '加拿大',
|
|
69
|
+
'Central African Republic': '中非共和国',
|
|
70
|
+
Chad: '乍得',
|
|
71
|
+
Chile: '智利',
|
|
72
|
+
China: '中国',
|
|
73
|
+
Colombia: '哥伦比亚',
|
|
74
|
+
'Costa Rica': '哥斯达黎加',
|
|
75
|
+
Croatia: '克罗地亚',
|
|
76
|
+
Cuba: '古巴',
|
|
77
|
+
Cyprus: '塞浦路斯',
|
|
78
|
+
'Czech Republic': '捷克共和国',
|
|
79
|
+
'Democratic Republic of the Congo': '刚果民主共和国',
|
|
80
|
+
Denmark: '丹麦',
|
|
81
|
+
Djibouti: '吉布提',
|
|
82
|
+
'Dominican Republic': '多明尼加共和国',
|
|
83
|
+
'East Timor': '东帝汶',
|
|
84
|
+
Ecuador: '厄瓜多尔',
|
|
85
|
+
Egypt: '埃及',
|
|
86
|
+
'El Salvador': '萨尔瓦多',
|
|
87
|
+
'Equatorial Guinea': '赤道几内亚',
|
|
88
|
+
Eritrea: '厄立特里亚',
|
|
89
|
+
Estonia: '爱沙尼亚',
|
|
90
|
+
Ethiopia: '埃塞俄比亚',
|
|
91
|
+
'Falkland Islands': '福克兰群岛',
|
|
92
|
+
Fiji: '斐',
|
|
93
|
+
Finland: '芬兰',
|
|
94
|
+
France: '法国',
|
|
95
|
+
'French Guiana': '法属圭亚那',
|
|
96
|
+
'French Southern and Antarctic Lands': '法属南半球和南极领地',
|
|
97
|
+
Gabon: '加蓬',
|
|
98
|
+
Gambia: '冈比亚',
|
|
99
|
+
Georgia: '格鲁吉亚',
|
|
100
|
+
Germany: '德国',
|
|
101
|
+
Ghana: '加纳',
|
|
102
|
+
Greece: '希腊',
|
|
103
|
+
Greenland: '格陵兰',
|
|
104
|
+
Guatemala: '危地马拉',
|
|
105
|
+
Guinea: '几内亚',
|
|
106
|
+
'Guinea Bissau': '几内亚比绍',
|
|
107
|
+
Guyana: '圭亚那',
|
|
108
|
+
Haiti: '海地',
|
|
109
|
+
Honduras: '洪都拉斯',
|
|
110
|
+
Hungary: '匈牙利',
|
|
111
|
+
Iceland: '冰岛',
|
|
112
|
+
India: '印度',
|
|
113
|
+
Indonesia: '印尼',
|
|
114
|
+
Iran: '伊朗',
|
|
115
|
+
Iraq: '伊拉克',
|
|
116
|
+
Ireland: '爱尔兰',
|
|
117
|
+
Israel: '以色列',
|
|
118
|
+
Italy: '意大利',
|
|
119
|
+
'Ivory Coast': '象牙海岸',
|
|
120
|
+
Jamaica: '牙买加',
|
|
121
|
+
Japan: '日本',
|
|
122
|
+
Jordan: '约旦',
|
|
123
|
+
Kazakhstan: '哈萨克斯坦',
|
|
124
|
+
Kenya: '肯尼亚',
|
|
125
|
+
Kosovo: '科索沃',
|
|
126
|
+
Kuwait: '科威特',
|
|
127
|
+
Kyrgyzstan: '吉尔吉斯斯坦',
|
|
128
|
+
Laos: '老挝',
|
|
129
|
+
Latvia: '拉脱维亚',
|
|
130
|
+
Lebanon: '黎巴嫩',
|
|
131
|
+
Lesotho: '莱索托',
|
|
132
|
+
Liberia: '利比里亚',
|
|
133
|
+
Libya: '利比亚',
|
|
134
|
+
Lithuania: '立陶宛',
|
|
135
|
+
Luxembourg: '卢森堡',
|
|
136
|
+
Macedonia: '马其顿',
|
|
137
|
+
Madagascar: '马达加斯加',
|
|
138
|
+
Malawi: '马拉维',
|
|
139
|
+
Malaysia: '马来西亚',
|
|
140
|
+
Mali: '马里',
|
|
141
|
+
Mauritania: '毛里塔尼亚',
|
|
142
|
+
Mexico: '墨西哥',
|
|
143
|
+
Moldova: '摩尔多瓦',
|
|
144
|
+
Mongolia: '蒙古',
|
|
145
|
+
Montenegro: '黑山',
|
|
146
|
+
Morocco: '摩洛哥',
|
|
147
|
+
Mozambique: '莫桑比克',
|
|
148
|
+
Myanmar: '缅甸',
|
|
149
|
+
Namibia: '纳米比亚',
|
|
150
|
+
Nepal: '尼泊尔',
|
|
151
|
+
Netherlands: '荷兰',
|
|
152
|
+
'New Caledonia': '新喀里多尼亚',
|
|
153
|
+
'New Zealand': '新西兰',
|
|
154
|
+
Nicaragua: '尼加拉瓜',
|
|
155
|
+
Niger: '尼日尔',
|
|
156
|
+
Nigeria: '尼日利亚',
|
|
157
|
+
'North Korea': '北朝鲜',
|
|
158
|
+
'Northern Cyprus': '北塞浦路斯',
|
|
159
|
+
Norway: '挪威',
|
|
160
|
+
Oman: '阿曼',
|
|
161
|
+
Pakistan: '巴基斯坦',
|
|
162
|
+
Panama: '巴拿马',
|
|
163
|
+
'Papua New Guinea': '巴布亚新几内亚',
|
|
164
|
+
Paraguay: '巴拉圭',
|
|
165
|
+
Peru: '秘鲁',
|
|
166
|
+
Philippines: '菲律宾',
|
|
167
|
+
Poland: '波兰',
|
|
168
|
+
Portugal: '葡萄牙',
|
|
169
|
+
'Puerto Rico': '波多黎各',
|
|
170
|
+
Qatar: '卡塔尔',
|
|
171
|
+
'Republic of Serbia': '塞尔维亚',
|
|
172
|
+
'Republic of the Congo': '刚果共和国',
|
|
173
|
+
Romania: '罗马尼亚',
|
|
174
|
+
Russia: '俄罗斯',
|
|
175
|
+
Rwanda: '卢旺达',
|
|
176
|
+
'Saudi Arabia': '沙特阿拉伯',
|
|
177
|
+
Senegal: '塞内加尔',
|
|
178
|
+
'Sierra Leone': '塞拉利昂',
|
|
179
|
+
Singapore: '新加坡',
|
|
180
|
+
Slovakia: '斯洛伐克',
|
|
181
|
+
Slovenia: '斯洛文尼亚',
|
|
182
|
+
'Solomon Islands': '所罗门群岛',
|
|
183
|
+
Somalia: '索马里',
|
|
184
|
+
Somaliland: '索马里兰',
|
|
185
|
+
'South Africa': '南非',
|
|
186
|
+
'South Korea': '韩国',
|
|
187
|
+
'South Sudan': '南苏丹',
|
|
188
|
+
Spain: '西班牙',
|
|
189
|
+
'Sri Lanka': '斯里兰卡',
|
|
190
|
+
Sudan: '苏丹',
|
|
191
|
+
Suriname: '苏里南',
|
|
192
|
+
Swaziland: '斯威士兰',
|
|
193
|
+
Sweden: '瑞典',
|
|
194
|
+
Switzerland: '瑞士',
|
|
195
|
+
Syria: '叙利亚',
|
|
196
|
+
Tajikistan: '塔吉克斯坦',
|
|
197
|
+
Thailand: '泰国',
|
|
198
|
+
'The Bahamas': '巴哈马',
|
|
199
|
+
Togo: '多哥',
|
|
200
|
+
'Trinidad and Tobago': '特里尼达和多巴哥',
|
|
201
|
+
Tunisia: '突尼斯',
|
|
202
|
+
Turkey: '土耳其',
|
|
203
|
+
Turkmenistan: '土库曼斯坦',
|
|
204
|
+
Uganda: '乌干达',
|
|
205
|
+
Ukraine: '乌克兰',
|
|
206
|
+
'United Arab Emirates': '阿联酋',
|
|
207
|
+
'United Kingdom': '英国',
|
|
208
|
+
'United Republic of Tanzania': '坦桑尼亚',
|
|
209
|
+
'United States': '美国',
|
|
210
|
+
Uruguay: '乌拉圭',
|
|
211
|
+
Uzbekistan: '乌兹别克斯坦',
|
|
212
|
+
Vanuatu: '瓦努阿图',
|
|
213
|
+
Venezuela: '委内瑞拉',
|
|
214
|
+
Vietnam: '越南',
|
|
215
|
+
'West Bank': '西岸',
|
|
216
|
+
'Western Sahara': '西撒哈拉',
|
|
217
|
+
Yemen: '也门',
|
|
218
|
+
Zambia: '赞比亚',
|
|
219
|
+
Zimbabwe: '津巴布韦',
|
|
220
|
+
};
|
|
221
|
+
this._children = [];
|
|
222
|
+
this.loadedMap = {};
|
|
223
|
+
this.stack = [];
|
|
224
|
+
}
|
|
225
|
+
ngOnChanges(changes) {
|
|
226
|
+
if (changes.data) {
|
|
227
|
+
if (this.data && this.data[0]) {
|
|
228
|
+
this.mapStyle = this.data[0].name;
|
|
229
|
+
this.stack.push(this.mapStyle);
|
|
230
|
+
}
|
|
231
|
+
this.reloadMap();
|
|
232
|
+
}
|
|
233
|
+
}
|
|
234
|
+
ngOnInit() {
|
|
235
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
236
|
+
// await this.commonService.getMap();
|
|
237
|
+
// await import('echarts/dist/extension/bmap.js');
|
|
238
|
+
this.provinces = (yield this.http.get('/assets/mapListItem.json').toPromise());
|
|
239
|
+
// const map = echarts.getMap(this.mapStyle);
|
|
240
|
+
// if (map == null) {
|
|
241
|
+
// const data = await this.http.get('assets/echarts/map/json/' + this.mapStyle + '.json').toPromise();
|
|
242
|
+
// echarts.registerMap(this.mapStyle, data);
|
|
243
|
+
// }
|
|
244
|
+
// this.hasMap = true;
|
|
245
|
+
// this.chartInit();
|
|
246
|
+
});
|
|
247
|
+
}
|
|
248
|
+
ngOnDestroy() {
|
|
249
|
+
if (this.ngxEcharts) {
|
|
250
|
+
this.ngxEcharts.initChart = () => { };
|
|
251
|
+
}
|
|
252
|
+
}
|
|
253
|
+
chartInit() {
|
|
254
|
+
var _a, _b, _c, _d, _e;
|
|
255
|
+
// this.loadMap(this.mapStyle).then((data) => {
|
|
256
|
+
let series = [];
|
|
257
|
+
this.visualMap = [];
|
|
258
|
+
this._children.forEach((child) => {
|
|
259
|
+
if (child.type === 'visual') {
|
|
260
|
+
// series = child.series;
|
|
261
|
+
// series[0].mapType = this.mapStyle;
|
|
262
|
+
if (child.visualMap && child.item.length) {
|
|
263
|
+
if (child.visualMap2) {
|
|
264
|
+
this.visualMap.push(child.visualMap2);
|
|
265
|
+
}
|
|
266
|
+
this.visualMap.push(child.visualMap);
|
|
267
|
+
child.visualMap.seriesIndex = series.length;
|
|
268
|
+
}
|
|
269
|
+
}
|
|
270
|
+
if (Array.isArray(child.item)) {
|
|
271
|
+
series = [...series, ...child.item];
|
|
272
|
+
}
|
|
273
|
+
else {
|
|
274
|
+
series = [...series, child.item];
|
|
275
|
+
}
|
|
276
|
+
});
|
|
277
|
+
series.forEach((layer, index) => {
|
|
278
|
+
if (layer.type === 'lines') {
|
|
279
|
+
delete layer.coordinateSystem;
|
|
280
|
+
}
|
|
281
|
+
if (layer.type === 'scatter') {
|
|
282
|
+
layer.coordinateSystem = 'geo';
|
|
283
|
+
// layer.symbolSize = '10';
|
|
284
|
+
}
|
|
285
|
+
// if (layer.type === 'map') {
|
|
286
|
+
// this.visualMap.forEach((visualMap) => {
|
|
287
|
+
// visualMap['seriesIndex'] = index;
|
|
288
|
+
// });
|
|
289
|
+
// }
|
|
290
|
+
});
|
|
291
|
+
const textStyle = getEchartsTextStyle(this.areaNamefont);
|
|
292
|
+
this.chartOption = {
|
|
293
|
+
tooltip: {
|
|
294
|
+
trigger: 'item',
|
|
295
|
+
triggerOn: this.triggerType ? this.triggerType : 'mousemove',
|
|
296
|
+
},
|
|
297
|
+
geo: {
|
|
298
|
+
label: {
|
|
299
|
+
normal: {
|
|
300
|
+
//静态的时候展示样式
|
|
301
|
+
show: this.showAreaName,
|
|
302
|
+
textStyle,
|
|
303
|
+
},
|
|
304
|
+
emphasis: {
|
|
305
|
+
show: this.showAreaName,
|
|
306
|
+
textStyle,
|
|
307
|
+
},
|
|
308
|
+
},
|
|
309
|
+
selectedMode: this.selectedMode,
|
|
310
|
+
select: {
|
|
311
|
+
label: {
|
|
312
|
+
show: this.showAreaName,
|
|
313
|
+
textStyle: {
|
|
314
|
+
color: ((_a = this.areaNamefont) === null || _a === void 0 ? void 0 : _a.color) || '#fff',
|
|
315
|
+
fontSize: ((_b = this.areaNamefont) === null || _b === void 0 ? void 0 : _b.size) || 12,
|
|
316
|
+
fontFamily: ((_c = this.areaNamefont) === null || _c === void 0 ? void 0 : _c.family) || '',
|
|
317
|
+
lineHeight: ((_d = this.areaNamefont) === null || _d === void 0 ? void 0 : _d.lineHeight) || 12,
|
|
318
|
+
},
|
|
319
|
+
},
|
|
320
|
+
itemStyle: {
|
|
321
|
+
areaColor: {
|
|
322
|
+
type: 'radial',
|
|
323
|
+
x: 0.5,
|
|
324
|
+
y: 0.5,
|
|
325
|
+
r: 0.8,
|
|
326
|
+
colorStops: [
|
|
327
|
+
{
|
|
328
|
+
offset: 0,
|
|
329
|
+
color: this.selectColorStart ? this.selectColorStart : this._areaColor,
|
|
330
|
+
},
|
|
331
|
+
{
|
|
332
|
+
offset: 1,
|
|
333
|
+
color: this.selectColorEnd ? this.selectColorEnd : this._areaColor,
|
|
334
|
+
},
|
|
335
|
+
],
|
|
336
|
+
globalCoord: false,
|
|
337
|
+
},
|
|
338
|
+
borderColor: this._borderColor,
|
|
339
|
+
},
|
|
340
|
+
},
|
|
341
|
+
itemStyle: {
|
|
342
|
+
normal: {
|
|
343
|
+
// areaColor: this.areaColor,
|
|
344
|
+
borderColor: this.borderColor,
|
|
345
|
+
opacity: 1,
|
|
346
|
+
areaColor: {
|
|
347
|
+
type: 'radial',
|
|
348
|
+
x: 0.5,
|
|
349
|
+
y: 0.5,
|
|
350
|
+
r: 0.8,
|
|
351
|
+
colorStops: [
|
|
352
|
+
{
|
|
353
|
+
offset: 0,
|
|
354
|
+
color: this.mapColorStart ? this.mapColorStart : this.areaColor,
|
|
355
|
+
},
|
|
356
|
+
{
|
|
357
|
+
offset: 1,
|
|
358
|
+
color: this.mapColorEnd ? this.mapColorEnd : this.areaColor,
|
|
359
|
+
},
|
|
360
|
+
],
|
|
361
|
+
globalCoord: false,
|
|
362
|
+
},
|
|
363
|
+
shadowColor: this.shadowColor,
|
|
364
|
+
shadowBlur: this.shadowWidth,
|
|
365
|
+
shadowOffsetX: -2,
|
|
366
|
+
shadowOffsetY: 2,
|
|
367
|
+
},
|
|
368
|
+
emphasis: {
|
|
369
|
+
areaColor: {
|
|
370
|
+
type: 'radial',
|
|
371
|
+
x: 0.5,
|
|
372
|
+
y: 0.5,
|
|
373
|
+
r: 0.8,
|
|
374
|
+
colorStops: [
|
|
375
|
+
{
|
|
376
|
+
offset: 0,
|
|
377
|
+
color: this.selectColorStart ? this.selectColorStart : this._areaColor,
|
|
378
|
+
},
|
|
379
|
+
{
|
|
380
|
+
offset: 1,
|
|
381
|
+
color: this.selectColorEnd ? this.selectColorEnd : this._areaColor,
|
|
382
|
+
},
|
|
383
|
+
],
|
|
384
|
+
globalCoord: false,
|
|
385
|
+
},
|
|
386
|
+
borderColor: this._borderColor,
|
|
387
|
+
},
|
|
388
|
+
},
|
|
389
|
+
map: this.mapStyle,
|
|
390
|
+
roam: this.zoomSwitch,
|
|
391
|
+
nameMap: this.nameMap,
|
|
392
|
+
zoom: this.zoom,
|
|
393
|
+
},
|
|
394
|
+
series,
|
|
395
|
+
};
|
|
396
|
+
if ((_e = this.visualMap) === null || _e === void 0 ? void 0 : _e.length) {
|
|
397
|
+
this.chartOption.visualMap = this.visualMap;
|
|
398
|
+
}
|
|
399
|
+
// });
|
|
400
|
+
}
|
|
401
|
+
childInit(child) {
|
|
402
|
+
if (child.id) {
|
|
403
|
+
const childIndex = this._children.findIndex((s) => s.id === child.id);
|
|
404
|
+
if (childIndex > -1) {
|
|
405
|
+
this._children[childIndex] = child;
|
|
406
|
+
}
|
|
407
|
+
else {
|
|
408
|
+
this._children.push(child);
|
|
409
|
+
}
|
|
410
|
+
this.chartInit();
|
|
411
|
+
}
|
|
412
|
+
}
|
|
413
|
+
deleteChild(childId) {
|
|
414
|
+
if (childId) {
|
|
415
|
+
const childIndex = this._children.findIndex((s) => s.id === childId);
|
|
416
|
+
// this._children.forEach((element) => {
|
|
417
|
+
// if (childId === element.id) {
|
|
418
|
+
// this.visualMap = null;
|
|
419
|
+
// }
|
|
420
|
+
// });
|
|
421
|
+
if (childIndex > -1) {
|
|
422
|
+
this._children.splice(childIndex, 1);
|
|
423
|
+
this.chartInit();
|
|
424
|
+
}
|
|
425
|
+
}
|
|
426
|
+
}
|
|
427
|
+
// loadMap(name: string) {
|
|
428
|
+
// let loadMapPromise = this.loadedMap[name];
|
|
429
|
+
// if (!loadMapPromise) {
|
|
430
|
+
// loadMapPromise = this.http.get('assets/echarts/map/json/' + name + '.json').toPromise();
|
|
431
|
+
// this.loadedMap[name] = loadMapPromise;
|
|
432
|
+
// }
|
|
433
|
+
// return loadMapPromise;
|
|
434
|
+
// }
|
|
435
|
+
reloadMap() {
|
|
436
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
437
|
+
const mapStyle = this.mapStyle;
|
|
438
|
+
const map = echarts.getMap(mapStyle);
|
|
439
|
+
if (map == null) {
|
|
440
|
+
const data = yield this.http.get('assets/echarts/map/json/' + mapStyle + '.json').toPromise();
|
|
441
|
+
echarts.registerMap(mapStyle, data);
|
|
442
|
+
}
|
|
443
|
+
this.hasMap = true;
|
|
444
|
+
this.chartInit();
|
|
445
|
+
});
|
|
446
|
+
}
|
|
447
|
+
markClick(event) {
|
|
448
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
449
|
+
let lng;
|
|
450
|
+
let lat;
|
|
451
|
+
if (event.seriesId) {
|
|
452
|
+
lng = event.value[0];
|
|
453
|
+
lat = event.value[1];
|
|
454
|
+
const child = this._children.find((s) => event.seriesId.startsWith(s.id));
|
|
455
|
+
if (child && child.onClick) {
|
|
456
|
+
child.onClick(event);
|
|
457
|
+
}
|
|
458
|
+
}
|
|
459
|
+
else {
|
|
460
|
+
const map = echarts.getMap(this.mapStyle);
|
|
461
|
+
if (map) {
|
|
462
|
+
for (const feature of map.geoJson.features) {
|
|
463
|
+
const properties = feature.properties;
|
|
464
|
+
if (properties.name === event.name) {
|
|
465
|
+
if (properties.cp) {
|
|
466
|
+
lng = properties.cp[0];
|
|
467
|
+
lat = properties.cp[1];
|
|
468
|
+
}
|
|
469
|
+
else if (properties.center) {
|
|
470
|
+
lng = properties.center[0];
|
|
471
|
+
lat = properties.center[1];
|
|
472
|
+
}
|
|
473
|
+
else {
|
|
474
|
+
console.log(properties);
|
|
475
|
+
}
|
|
476
|
+
break;
|
|
477
|
+
}
|
|
478
|
+
}
|
|
479
|
+
}
|
|
480
|
+
const province = this.provinces.find((element) => element.label === event.name);
|
|
481
|
+
if (province) {
|
|
482
|
+
this.stack.push(this.mapStyle);
|
|
483
|
+
this.mapStyle = province.value;
|
|
484
|
+
this.reloadMap();
|
|
485
|
+
}
|
|
486
|
+
}
|
|
487
|
+
this.areaClick.emit({ name: event.name, lng, lat });
|
|
488
|
+
// if(event.componentSubType!=null && event.componentSubType==='scatter'){
|
|
489
|
+
// const obj=event.data;
|
|
490
|
+
// console.log(event);
|
|
491
|
+
// this.markerTierClick.emit({
|
|
492
|
+
// address: obj.name,
|
|
493
|
+
// information: '',
|
|
494
|
+
// group: '',
|
|
495
|
+
// lng: obj.value[0],
|
|
496
|
+
// lat: obj.value[1],
|
|
497
|
+
// });
|
|
498
|
+
// }
|
|
499
|
+
});
|
|
500
|
+
}
|
|
501
|
+
rollback(event) {
|
|
502
|
+
event.preventDefault();
|
|
503
|
+
if (this.stack != null && this.stack.length != 0) {
|
|
504
|
+
this.mapStyle = this.stack.pop();
|
|
505
|
+
this.reloadMap();
|
|
506
|
+
}
|
|
507
|
+
}
|
|
508
|
+
getTextStyle() { }
|
|
509
|
+
};
|
|
510
|
+
PlanimetricMap2dComponent.decorators = [
|
|
511
|
+
{ type: Component, args: [{
|
|
512
|
+
selector: 'sc-planimetric-map2d',
|
|
513
|
+
template: "<ng-template *ngFor=\"let child of children\" widget-host [widget]=\"child\"></ng-template>\n<div echarts *ngIf=\"hasMap\" [options]=\"chartOption\" class=\"demo-chart\" (chartClick)='markClick($event)' (contextmenu)='rollback($event)'></div> \n<!-- -->",
|
|
514
|
+
providers: [{ provide: ParentContainerComponent, useExisting: forwardRef(() => PlanimetricMap2dComponent_1) }],
|
|
515
|
+
styles: [".demo-chart,:host{height:100%}:host{display:block;width:100%}"]
|
|
516
|
+
},] }
|
|
517
|
+
];
|
|
518
|
+
PlanimetricMap2dComponent.ctorParameters = () => [
|
|
519
|
+
{ type: HttpClient }
|
|
520
|
+
];
|
|
521
|
+
PlanimetricMap2dComponent.propDecorators = {
|
|
522
|
+
ngxEcharts: [{ type: ViewChild, args: [NgxEchartsDirective,] }]
|
|
523
|
+
};
|
|
524
|
+
__decorate([
|
|
525
|
+
Property('地图样式', {
|
|
526
|
+
ui: {
|
|
527
|
+
widget: 'myUrlSelect',
|
|
528
|
+
url: '/assets/mapListItem.json',
|
|
529
|
+
},
|
|
530
|
+
}),
|
|
531
|
+
__metadata("design:type", Object)
|
|
532
|
+
], PlanimetricMap2dComponent.prototype, "mapStyle", void 0);
|
|
533
|
+
__decorate([
|
|
534
|
+
Property('地图缩放', {
|
|
535
|
+
ui: { widget: 'myRange', min: 1, max: 40, step: 1 },
|
|
536
|
+
}),
|
|
537
|
+
__metadata("design:type", Object)
|
|
538
|
+
], PlanimetricMap2dComponent.prototype, "zoom", void 0);
|
|
539
|
+
__decorate([
|
|
540
|
+
Property('区域背景', {
|
|
541
|
+
ui: {
|
|
542
|
+
widget: 'myColor',
|
|
543
|
+
example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],
|
|
544
|
+
},
|
|
545
|
+
}),
|
|
546
|
+
__metadata("design:type", Object)
|
|
547
|
+
], PlanimetricMap2dComponent.prototype, "areaColor", void 0);
|
|
548
|
+
__decorate([
|
|
549
|
+
Property('区域描边', {
|
|
550
|
+
ui: {
|
|
551
|
+
widget: 'myColor',
|
|
552
|
+
example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],
|
|
553
|
+
},
|
|
554
|
+
}),
|
|
555
|
+
__metadata("design:type", Object)
|
|
556
|
+
], PlanimetricMap2dComponent.prototype, "borderColor", void 0);
|
|
557
|
+
__decorate([
|
|
558
|
+
Property('移动高亮', {
|
|
559
|
+
ui: {
|
|
560
|
+
widget: 'myColor',
|
|
561
|
+
example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],
|
|
562
|
+
},
|
|
563
|
+
}),
|
|
564
|
+
__metadata("design:type", Object)
|
|
565
|
+
], PlanimetricMap2dComponent.prototype, "_areaColor", void 0);
|
|
566
|
+
__decorate([
|
|
567
|
+
Property('地区字体', { ui: { widget: 'myFont' } }),
|
|
568
|
+
__metadata("design:type", Object)
|
|
569
|
+
], PlanimetricMap2dComponent.prototype, "areaNamefont", void 0);
|
|
570
|
+
__decorate([
|
|
571
|
+
Property('显示地名', {
|
|
572
|
+
type: 'boolean',
|
|
573
|
+
}),
|
|
574
|
+
__metadata("design:type", Object)
|
|
575
|
+
], PlanimetricMap2dComponent.prototype, "showAreaName", void 0);
|
|
576
|
+
__decorate([
|
|
577
|
+
Property('触发方式', {
|
|
578
|
+
ui: { widget: 'select' },
|
|
579
|
+
enum: [
|
|
580
|
+
{ label: '点击', value: 'click' },
|
|
581
|
+
{ label: '鼠标移动', value: 'mousemove' },
|
|
582
|
+
],
|
|
583
|
+
}),
|
|
584
|
+
__metadata("design:type", Object)
|
|
585
|
+
], PlanimetricMap2dComponent.prototype, "triggerType", void 0);
|
|
586
|
+
__decorate([
|
|
587
|
+
Property('选中方式', {
|
|
588
|
+
ui: { widget: 'select' },
|
|
589
|
+
enum: [
|
|
590
|
+
{ label: '默认', value: '' },
|
|
591
|
+
{ label: '单选', value: 'single' },
|
|
592
|
+
{ label: '多选', value: 'multiple' },
|
|
593
|
+
],
|
|
594
|
+
}),
|
|
595
|
+
__metadata("design:type", Object)
|
|
596
|
+
], PlanimetricMap2dComponent.prototype, "selectedMode", void 0);
|
|
597
|
+
__decorate([
|
|
598
|
+
Property('缩放开关', {
|
|
599
|
+
type: 'boolean',
|
|
600
|
+
}),
|
|
601
|
+
__metadata("design:type", Object)
|
|
602
|
+
], PlanimetricMap2dComponent.prototype, "zoomSwitch", void 0);
|
|
603
|
+
__decorate([
|
|
604
|
+
Property('高亮描边', {
|
|
605
|
+
ui: {
|
|
606
|
+
widget: 'myColor',
|
|
607
|
+
example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],
|
|
608
|
+
},
|
|
609
|
+
}),
|
|
610
|
+
__metadata("design:type", Object)
|
|
611
|
+
], PlanimetricMap2dComponent.prototype, "_borderColor", void 0);
|
|
612
|
+
__decorate([
|
|
613
|
+
Property('阴影颜色', {
|
|
614
|
+
ui: {
|
|
615
|
+
widget: 'myColor',
|
|
616
|
+
example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],
|
|
617
|
+
},
|
|
618
|
+
}),
|
|
619
|
+
__metadata("design:type", Object)
|
|
620
|
+
], PlanimetricMap2dComponent.prototype, "shadowColor", void 0);
|
|
621
|
+
__decorate([
|
|
622
|
+
Property('边框粗细', {
|
|
623
|
+
type: 'number',
|
|
624
|
+
}),
|
|
625
|
+
__metadata("design:type", Object)
|
|
626
|
+
], PlanimetricMap2dComponent.prototype, "shadowWidth", void 0);
|
|
627
|
+
__decorate([
|
|
628
|
+
Property('地图渐变开始', {
|
|
629
|
+
ui: {
|
|
630
|
+
widget: 'myColor',
|
|
631
|
+
example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],
|
|
632
|
+
},
|
|
633
|
+
}),
|
|
634
|
+
__metadata("design:type", Object)
|
|
635
|
+
], PlanimetricMap2dComponent.prototype, "mapColorStart", void 0);
|
|
636
|
+
__decorate([
|
|
637
|
+
Property('地图渐变结束', {
|
|
638
|
+
ui: {
|
|
639
|
+
widget: 'myColor',
|
|
640
|
+
example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],
|
|
641
|
+
},
|
|
642
|
+
}),
|
|
643
|
+
__metadata("design:type", Object)
|
|
644
|
+
], PlanimetricMap2dComponent.prototype, "mapColorEnd", void 0);
|
|
645
|
+
__decorate([
|
|
646
|
+
Property('选中渐变开始', {
|
|
647
|
+
ui: {
|
|
648
|
+
widget: 'myColor',
|
|
649
|
+
example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],
|
|
650
|
+
},
|
|
651
|
+
}),
|
|
652
|
+
__metadata("design:type", Object)
|
|
653
|
+
], PlanimetricMap2dComponent.prototype, "selectColorStart", void 0);
|
|
654
|
+
__decorate([
|
|
655
|
+
Property('选中渐变结束', {
|
|
656
|
+
ui: {
|
|
657
|
+
widget: 'myColor',
|
|
658
|
+
example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],
|
|
659
|
+
},
|
|
660
|
+
}),
|
|
661
|
+
__metadata("design:type", Object)
|
|
662
|
+
], PlanimetricMap2dComponent.prototype, "selectColorEnd", void 0);
|
|
663
|
+
__decorate([
|
|
664
|
+
Data({
|
|
665
|
+
properties: {
|
|
666
|
+
name: { type: 'string', title: '地名' },
|
|
667
|
+
lng: { type: 'number', title: '经度' },
|
|
668
|
+
lat: { type: 'string', title: '纬度' },
|
|
669
|
+
},
|
|
670
|
+
}),
|
|
671
|
+
__metadata("design:type", Array)
|
|
672
|
+
], PlanimetricMap2dComponent.prototype, "data", void 0);
|
|
673
|
+
__decorate([
|
|
674
|
+
DataOutput(['name', 'lng', 'lat']),
|
|
675
|
+
Event('选中', {
|
|
676
|
+
params: {
|
|
677
|
+
properties: {
|
|
678
|
+
name: { type: 'string', title: '值' },
|
|
679
|
+
lng: { type: 'number', title: '经度' },
|
|
680
|
+
lat: { type: 'string', title: '纬度' },
|
|
681
|
+
},
|
|
682
|
+
},
|
|
683
|
+
}),
|
|
684
|
+
__metadata("design:type", Object)
|
|
685
|
+
], PlanimetricMap2dComponent.prototype, "areaClick", void 0);
|
|
686
|
+
PlanimetricMap2dComponent = PlanimetricMap2dComponent_1 = __decorate([
|
|
687
|
+
Widget('2D平面地图', {
|
|
688
|
+
group: 'component',
|
|
689
|
+
image: 'assets/img/screen/2dmap.png',
|
|
690
|
+
icon: 'iconmokuai',
|
|
691
|
+
children: [
|
|
692
|
+
{
|
|
693
|
+
title: '呼吸气泡层',
|
|
694
|
+
type: 'sc-breathing-bubble-layer',
|
|
695
|
+
option: {},
|
|
696
|
+
hidden: true,
|
|
697
|
+
hideChild: true,
|
|
698
|
+
},
|
|
699
|
+
],
|
|
700
|
+
childTypes: [
|
|
701
|
+
'sc-fly-line-layer',
|
|
702
|
+
'sc-breathing-bubble-layer',
|
|
703
|
+
'sc-map2d-polyline-layer',
|
|
704
|
+
'sc-map2d-mark-layer',
|
|
705
|
+
'sc-map2d-visual-layer',
|
|
706
|
+
],
|
|
707
|
+
description: 'hasChildItem',
|
|
708
|
+
}),
|
|
709
|
+
__metadata("design:paramtypes", [HttpClient])
|
|
710
|
+
], PlanimetricMap2dComponent);
|
|
711
|
+
export { PlanimetricMap2dComponent };
|
|
712
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGxhbmltZXRyaWMtbWFwMmQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2NyZWVuLXdpZGdldC9zcmMvbGliL3BsYW5pbWV0cmljLW1hcDJkL3BsYW5pbWV0cmljLW1hcDJkLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLE9BQU8sRUFDTCxTQUFTLEVBRVQsVUFBVSxFQUNWLFNBQVMsRUFLVCxZQUFZLEdBQ2IsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM1RSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUMxRixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxLQUFLLE9BQU8sTUFBTSxTQUFTLENBQUM7QUFDbkMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ2xELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0lBOEJyRCx5QkFBeUIsdUNBQXpCLHlCQUEwQixTQUFRLHdCQUF3QjtJQW9VckUsWUFBc0IsSUFBZ0I7UUFDcEMsS0FBSyxFQUFFLENBQUM7UUFEWSxTQUFJLEdBQUosSUFBSSxDQUFZO1FBN1R0QyxhQUFRLEdBQUcsT0FBTyxDQUFDO1FBSW5CLFNBQUksR0FBRyxDQUFDLENBQUM7UUFPVCxjQUFTLEdBQUcsU0FBUyxDQUFDO1FBT3RCLGdCQUFXLEdBQUcsU0FBUyxDQUFDO1FBT3hCLGVBQVUsR0FBRyxTQUFTLENBQUM7UUFFdkIsaUJBQVksR0FBUTtZQUNsQixNQUFNLEVBQUUsRUFBRTtZQUNWLEtBQUssRUFBRSxTQUFTO1lBQ2hCLE1BQU0sRUFBRSxRQUFRO1lBQ2hCLElBQUksRUFBRSxF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Q2pDLE1BQU0sRUFBRSxFQUFFO2dCQUNWLE1BQU0sRUFBRSxJQUFJO2dCQUNaLFNBQVMsRUFBRSxJQUFJO2FBQ2hCO1NBQ0Y7UUFDRCxVQUFVLEVBQUU7WUFDVixtQkFBbUI7WUFDbkIsMkJBQTJCO1lBQzNCLHlCQUF5QjtZQUN6QixxQkFBcUI7WUFDckIsdUJBQXVCO1NBQ3hCO1FBQ0QsV0FBVyxFQUFFLGNBQWM7S0FDNUIsQ0FBQztxQ0FxVTRCLFVBQVU7R0FwVTNCLHlCQUF5QixDQTBsQnJDO1NBMWxCWSx5QkFBeUIiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xyXG4gIENvbXBvbmVudCxcclxuICBPbkluaXQsXHJcbiAgZm9yd2FyZFJlZixcclxuICBWaWV3Q2hpbGQsXHJcbiAgRWxlbWVudFJlZixcclxuICBPbkRlc3Ryb3ksXHJcbiAgT25DaGFuZ2VzLFxyXG4gIFNpbXBsZUNoYW5nZXMsXHJcbiAgRXZlbnRFbWl0dGVyLFxyXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xyXG5pbXBvcnQgeyBXaWRnZXQsIFByb3BlcnR5LCBEYXRhLCBEYXRhT3V0cHV0LCBFdmVudCB9IGZyb20gJ2Jiai13aWRnZXQtYmFzZSc7XHJcbmltcG9ydCB7IFBhcmVudENvbnRhaW5lckNvbXBvbmVudCB9IGZyb20gJy4uL3BhcmVudC1jb250YWluZXIvcGFyZW50LWNvbnRhaW5lci5jb21wb25lbnQnO1xyXG5pbXBvcnQgeyBIdHRwQ2xpZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uL2h0dHAnO1xyXG5pbXBvcnQgKiBhcyBlY2hhcnRzIGZyb20gJ2VjaGFydHMnO1xyXG5pbXBvcnQgeyBOZ3hFY2hhcnRzRGlyZWN0aXZlIH0gZnJvbSAnbmd4LWVjaGFydHMnO1xyXG5pbXBvcnQgeyBnZXRFY2hhcnRzVGV4dFN0eWxlIH0gZnJvbSAnLi4vc2hhcmVkL3V0aWwvZWNoYXJ0cy51dGlsJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnc2MtcGxhbmltZXRyaWMtbWFwMmQnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9wbGFuaW1ldHJpYy1tYXAyZC5jb21wb25lbnQuaHRtbCcsXHJcbiAgc3R5bGVVcmxzOiBbJy4vcGxhbmltZXRyaWMtbWFwMmQuY29tcG9uZW50Lmxlc3MnXSxcclxuICBwcm92aWRlcnM6IFt7IHByb3ZpZGU6IFBhcmVudENvbnRhaW5lckNvbXBvbmVudCwgdXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gUGxhbmltZXRyaWNNYXAyZENvbXBvbmVudCkgfV0sXHJcbn0pXHJcbkBXaWRnZXQoJzJE5bmz6Z2i5Zyw5Zu+Jywge1xyXG4gIGdyb3VwOiAnY29tcG9uZW50JyxcclxuICBpbWFnZTogJ2Fzc2V0cy9pbWcvc2NyZWVuLzJkbWFwLnBuZycsXHJcbiAgaWNvbjogJ2ljb25tb2t1YWknLFxyXG4gIGNoaWxkcmVuOiBbXHJcbiAgICB7XHJcbiAgICAgIHRpdGxlOiAn5ZG85ZC45rCU5rOh5bGCJyxcclxuICAgICAgdHlwZTogJ3NjLWJyZWF0aGluZy1idWJibGUtbGF5ZXInLFxyXG4gICAgICBvcHRpb246IHt9LFxyXG4gICAgICBoaWRkZW46IHRydWUsXHJcbiAgICAgIGhpZGVDaGlsZDogdHJ1ZSxcclxuICAgIH0sXHJcbiAgXSxcclxuICBjaGlsZFR5cGVzOiBbXHJcbiAgICAnc2MtZmx5LWxpbmUtbGF5ZXInLFxyXG4gICAgJ3NjLWJyZWF0aGluZy1idWJibGUtbGF5ZXInLFxyXG4gICAgJ3NjLW1hcDJkLXBvbHlsaW5lLWxheWVyJyxcclxuICAgICdzYy1tYXAyZC1tYXJrLWxheWVyJyxcclxuICAgICdzYy1tYXAyZC12aXN1YWwtbGF5ZXInLFxyXG4gIF0sXHJcbiAgZGVzY3JpcHRpb246ICdoYXNDaGlsZEl0ZW0nLFxyXG59KVxyXG5leHBvcnQgY2xhc3MgUGxhbmltZXRyaWNNYXAyZENvbXBvbmVudCBleHRlbmRzIFBhcmVudENvbnRhaW5lckNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCwgT25EZXN0cm95LCBPbkNoYW5nZXMge1xyXG4gIEBQcm9wZXJ0eSgn5Zyw5Zu+5qC35byPJywge1xyXG4gICAgdWk6IHtcclxuICAgICAgd2lkZ2V0OiAnbXlVcmxTZWxlY3QnLFxyXG4gICAgICB1cmw6ICcvYXNzZXRzL21hcExpc3RJdGVtLmpzb24nLFxyXG4gICAgfSxcclxuICB9KVxyXG4gIG1hcFN0eWxlID0gJ2NoaW5hJztcclxuICBAUHJvcGVydHkoJ+WcsOWbvue8qeaUvicsIHtcclxuICAgIHVpOiB7IHdpZGdldDogJ215UmFuZ2UnLCBtaW46IDEsIG1heDogNDAsIHN0ZXA6IDEgfSxcclxuICB9KVxyXG4gIHpvb20gPSAxO1xyXG4gIEBQcm9wZXJ0eSgn5Yy65Z+f6IOM5pmvJywge1xyXG4gICAgdWk6IHtcclxuICAgICAgd2lkZ2V0OiAnbXlDb2xvcicsXHJcbiAgICAgIGV4YW1wbGU6IFsnI0QwMDIxQicsICcjRjVBNjIzJywgJyNGOEU3MUMnLCAnIzUwRTNDMicsICcjMzI4NUZGJywgJyNCNDVGRkYnLCAnIzlCOUI5QicsICcjMzMzMzMzJ10sXHJcbiAgICB9LFxyXG4gIH0pXHJcbiAgYXJlYUNvbG9yID0gJyMzMjNjNDgnO1xyXG4gIEBQcm9wZXJ0eSgn5Yy65Z+f5o+P6L65Jywge1xyXG4gICAgdWk6IHtcclxuICAgICAgd2lkZ2V0OiAnbXlDb2xvcicsXHJcbiAgICAgIGV4YW1wbGU6IFsnI0QwMDIxQicsICcjRjVBNjIzJywgJyNGOEU3MUMnLCAnIzUwRTNDMicsICcjMzI4NUZGJywgJyNCNDVGRkYnLCAnIzlCOUI5QicsICcjMzMzMzMzJ10sXHJcbiAgICB9LFxyXG4gIH0pXHJcbiAgYm9yZGVyQ29sb3IgPSAnIzQwNGE1OSc7XHJcbiAgQFByb3BlcnR5KCfnp7vliqjpq5jkuq4nLCB7XHJcbiAgICB1aToge1xyXG4gICAgICB3aWRnZXQ6ICdteUNvbG9yJyxcclxuICAgICAgZXhhbXBsZTogWycjRDAwMjFCJywgJyNGNUE2MjMnLCAnI0Y4RTcxQycsICcjNTBFM0MyJywgJyMzMjg1RkYnLCAnI0I0NUZGRicsICcjOUI5QjlCJywgJyMzMzMzMzMnXSxcclxuICAgIH0sXHJcbiAgfSlcclxuICBfYXJlYUNvbG9yID0gJyMyYTMzM2QnO1xyXG4gIEBQcm9wZXJ0eSgn5Zyw5Yy65a2X5L2TJywgeyB1aTogeyB3aWRnZXQ6ICdteUZvbnQnIH0gfSlcclxuICBhcmVhTmFtZWZvbnQ6IGFueSA9IHtcclxuICAgIGZhbWlseTogJycsXHJcbiAgICBjb2xvcjogJyNGRkZGRkYnLFxyXG4gICAgd2VpZ2h0OiAnbm9ybWFsJyxcclxuICAgIHNpemU6IDEyLFxyXG4gICAgc3BhY2U6IDAsXHJcbiAgICBsaW5lSGVpZ2h0OiAxMixcclxuICB9O1xyXG4gIEBQcm9wZXJ0eSgn5pi+56S65Zyw5ZCNJywge1xyXG4gICAgdHlwZTogJ2Jvb2xlYW4nLFxyXG4gIH0pXHJcbiAgc2hvd0FyZWFOYW1lID0gdHJ1ZTtcclxuICBAUHJvcGVydHkoJ+inpuWPkeaWueW8jycsIHtcclxuICAgIHVpOiB7IHdpZGdldDogJ3NlbGVjdCcgfSxcclxuICAgIGVudW06IFtcclxuICAgICAgeyBsYWJlbDogJ+eCueWHuycsIHZhbHVlOiAnY2xpY2snIH0sXHJcbiAgICAgIHsgbGFiZWw6ICfpvKDmoIfnp7vliqgnLCB2YWx1ZTogJ21vdXNlbW92ZScgfSxcclxuICAgIF0sXHJcbiAgfSlcclxuICB0cmlnZ2VyVHlwZSA9ICdtb3VzZW1vdmUnO1xyXG4gIEBQcm9wZXJ0eSgn6YCJ5Lit5pa55byPJywge1xyXG4gICAgdWk6IHsgd2lkZ2V0OiAnc2VsZWN0JyB9LFxyXG4gICAgZW51bTogW1xyXG4gICAgICB7IGxhYmVsOiAn6buY6K6kJywgdmFsdWU6ICcnIH0sXHJcbiAgICAgIHsgbGFiZWw6ICfljZXpgIknLCB2YWx1ZTogJ3NpbmdsZScgfSxcclxuICAgICAgeyBsYWJlbDogJ+WkmumAiScsIHZhbHVlOiAnbXVsdGlwbGUnIH0sXHJcbiAgICBdLFxyXG4gIH0pXHJcbiAgc2VsZWN0ZWRNb2RlID0gJyc7XHJcblxyXG4gIEBQcm9wZXJ0eSgn57yp5pS+5byA5YWzJywge1xyXG4gICAgdHlwZTogJ2Jvb2xlYW4nLFxyXG4gIH0pXHJcbiAgem9vbVN3aXRjaCA9ICdmYWxzZSc7XHJcbiAgQFByb3BlcnR5KCfpq5jkuq7mj4/ovrknLCB7XHJcbiAgICB1aToge1xyXG4gICAgICB3aWRnZXQ6ICdteUNvbG9yJyxcclxuICAgICAgZXhhbXBsZTogWycjRDAwMjFCJywgJyNGNUE2MjMnLCAnI0Y4RTcxQycsICcjNTBFM0MyJywgJyMzMjg1RkYnLCAnI0I0NUZGRicsICcjOUI5QjlCJywgJyMzMzMzMzMnXSxcclxuICAgIH0sXHJcbiAgfSlcclxuICBfYm9yZGVyQ29sb3IgPSAnJztcclxuICBAUHJvcGVydHkoJ+mYtOW9seminOiJsicsIHtcclxuICAgIHVpOiB7XHJcbiAgICAgIHdpZGdldDogJ215Q29sb3InLFxyXG4gICAgICBleGFtcGxlOiBbJyNEMDAyMUInLCAnI0Y1QTYyMycsICcjRjhFNzFDJywgJyM1MEUzQzInLCAnIzMyODVGRicsICcjQjQ1RkZGJywgJyM5QjlCOUInLCAnIzMzMzMzMyddLFxyXG4gICAgfSxcclxuICB9KVxyXG4gIHNoYWRvd0NvbG9yID0gJyMyYTMzM2QnO1xyXG4gIEBQcm9wZXJ0eSgn6L655qGG57KX57uGJywge1xyXG4gICAgdHlwZTogJ251bWJlcicsXHJcbiAgfSlcclxuICBzaGFkb3dXaWR0aCA9IDIwO1xyXG4gIEBQcm9wZXJ0eSgn5Zyw5Zu+5riQ5Y+Y5byA5aeLJywge1xyXG4gICAgdWk6IHtcclxuICAgICAgd2lkZ2V0OiAnbXlDb2xvcicsXHJcbiAgICAgIGV4YW1wbGU6IFsnI0QwMDIxQicsICcjRjVBNjIzJywgJyNGOEU3MUMnLCAnIzUwRTNDMicsICcjMzI4NUZGJywgJyNCNDVGRkYnLCAnIzlCOUI5QicsICcjMzMzMzMzJ10sXHJcbiAgICB9LFxyXG4gIH0pXHJcbiAgbWFwQ29sb3JTdGFydCA9ICcjMmEzMzNkJztcclxuICBAUHJvcGVydHkoJ+WcsOWbvua4kOWPmOe7k+adnycsIHtcclxuICAgIHVpOiB7XHJcbiAgICAgIHdpZGdldDogJ215Q29sb3InLFxyXG4gICAgICBleGFtcGxlOiBbJyNEMDAyMUInLCAnI0Y1QTYyMycsICcjRjhFNzFDJywgJyM1MEUzQzInLCAnIzMyODVGRicsICcjQjQ1RkZGJywgJyM5QjlCOUInLCAnIzMzMzMzMyddLFxyXG4gICAgfSxcclxuICB9KVxyXG4gIG1hcENvbG9yRW5kID0gJyMyYTMzM2QnO1xyXG4gIEBQcm9wZXJ0eSgn6YCJ5Lit5riQ5Y+Y5byA5aeLJywge1xyXG4gICAgdWk6IHtcclxuICAgICAgd2lkZ2V0OiAnbXlDb2xvcicsXHJcbiAgICAgIGV4YW1wbGU6IFsnI0QwMDIxQicsICcjRjVBNjIzJywgJyNGOEU3MUMnLCAnIzUwRTNDMicsICcjMzI4NUZGJywgJyNCNDVGRkYnLCAnIzlCOUI5QicsICcjMzMzMzMzJ10sXHJcbiAgICB9LFxyXG4gIH0pXHJcbiAgc2VsZWN0Q29sb3JTdGFydCA9ICcjMmEzMzNkJztcclxuICBAUHJvcGVydHkoJ+mAieS4rea4kOWPmOe7k+adnycsIHtcclxuICAgIHVpOiB7XHJcbiAgICAgIHdpZGdldDogJ215Q29sb3InLFxyXG4gICAgICBleGFtcGxlOiBbJyNEMDAyMUInLCAnI0Y1QTYyMycsICcjRjhFNzFDJywgJyM1MEUzQzInLCAnIzMyODVGRicsICcjQjQ1RkZGJywgJyM5QjlCOUInLCAnIzMzMzMzMyddLFxyXG4gICAgfSxcclxuICB9KVxyXG4gIHNlbGVjdENvbG9yRW5kID0gJyMyYTMzM2QnO1xyXG5cclxuICBjaGFydE9wdGlvbjogYW55O1xyXG4gIGhhc01hcCA9IGZhbHNlO1xyXG4gIEBEYXRhKHtcclxuICAgIHByb3BlcnRpZXM6IHtcclxuICAgICAgbmFtZTogeyB0eXBlOiAnc3RyaW5nJywgdGl0bGU6ICflnLDlkI0nIH0sXHJcbiAgICAgIGxuZzogeyB0eXBlOiAnbnVtYmVyJywgdGl0bGU6ICfnu4/luqYnIH0sXHJcbiAgICAgIGxhdDogeyB0eXBlOiAnc3RyaW5nJywgdGl0bGU6ICfnuqzluqYnIH0sXHJcbiAgICB9LFxyXG4gIH0pXHJcbiAgZGF0YTogYW55W10gPSBbXTtcclxuICBARGF0YU91dHB1dChbJ25hbWUnLCAnbG5nJywgJ2xhdCddKVxyXG4gIEBFdmVudCgn6YCJ5LitJywge1xyXG4gICAgcGFyYW1zOiB7XHJcbiAgICAgIHByb3BlcnRpZXM6IHtcclxuICAgICAgICBuYW1lOiB7IHR5cGU6ICdzdHJpbmcnLCB0aXRsZTogJ+WAvCcgfSxcclxuICAgICAgICBsbmc6IHsgdHlwZTogJ251bWJlcicsIHRpdGxlOiAn57uP5bqmJyB9LFxyXG4gICAgICAgIGxhdDogeyB0eXBlOiAnc3RyaW5nJywgdGl0bGU6ICfnuqzluqYnIH0sXHJcbiAgICAgIH0sXHJcbiAgICB9LFxyXG4gIH0pXHJcbiAgYXJlYUNsaWNrID0gbmV3IEV2ZW50RW1pdHRlcigpO1xyXG5cclxuICBuYW1lTWFwOiBhbnkgPSB7XHJcbiAgICBBZmdoYW5pc3RhbjogJ+mYv+WvjOaxlycsXHJcbiAgICBBbGJhbmlhOiAn6Zi/5bCU5be05bC85LqaJyxcclxuICAgIEFsZ2VyaWE6ICfpmL/lsJTlj4rliKnkuponLFxyXG4gICAgQW5nb2xhOiAn5a6J5ZOl5ouJJyxcclxuICAgIEFyZ2VudGluYTogJ+mYv+agueW7tycsXHJcbiAgICBBcm1lbmlhOiAn5Lqa576O5bC85LqaJyxcclxuICAgIEF1c3RyYWxpYTogJ+a+s+Wkp+WIqeS6micsXHJcbiAgICBBdXN0cmlhOiAn5aWl5Zyw5YipJyxcclxuICAgIEF6ZXJiYWlqYW46ICfpmL/loZ7mi5znloYnLFxyXG4gICAgQmFuZ2xhZGVzaDogJ+Wtn+WKoOaLieWbvScsXHJcbiAgICBCZWxhcnVzOiAn55m95L+E572X5pavJyxcclxuICAgIEJlbGdpdW06ICfmr5TliKnml7YnLFxyXG4gICAgQmVsaXplOiAn5Lyv5Yip5YW5JyxcclxuICAgIEJlbmluOiAn6LSd5a6BJyxcclxuICAgIEJlcm11ZGE6ICfnmb7mhZXlpKcnLFxyXG4gICAgQmh1dGFuOiAn5LiN5Li5JyxcclxuICAgIEJvbGl2aWE6ICfnjrvliKnnu7TkuponLFxyXG4gICAgJ0Jvc25pYSBhbmQgSGVyemVnb3ZpbmEnOiAn5rOi5pav5bC85Lqa5ZKM6buR5aGe5ZOl57u06YKjJyxcclxuICAgIEJvdHN3YW5hOiAn5Y2a6Iyo55Om57qzJyxcclxuICAgIEJyYXppbDogJ+W3tOilvycsXHJcbiAgICBCcnVuZWk6ICfmlofojrEnLFxyXG4gICAgQnVsZ2FyaWE6ICfkv53liqDliKnkuponLFxyXG4gICAgJ0J1cmtpbmEgRmFzbyc6ICfluIPln7rnurPms5XntKInLFxyXG4gICAgQnVydW5kaTogJ+W4g+mahui/qicsXHJcbiAgICBDYW1ib2RpYTogJ+afrOWflOWvqCcsXHJcbiAgICBDYW1lcm9vbjogJ+WWgOm6pumahicsXHJcbiAgICBDYW5hZGE6ICfliqDmi7/lpKcnLFxyXG4gICAgJ0NlbnRyYWwgQWZyaWNhbiBSZXB1YmxpYyc6ICfkuK3pnZ7lhbHlkozlm70nLFxyXG4gICAgQ2hhZDogJ+S5jeW+lycsXHJcbiAgICBDaGlsZTogJ+aZuuWIqScsXHJcbiAgICBDaGluYTogJ+S4reWbvScsXHJcbiAgICBDb2xvbWJpYTogJ+WTpeS8puavlOS6micsXHJcbiAgICAnQ29zdGEgUmljYSc6ICflk6Xmlq/ovr7pu47liqAnLFxyXG4gICAgQ3JvYXRpYTogJ+WFi+e9l+WcsOS6micsXHJcbiAgICBDdWJhOiAn5Y+k5be0JyxcclxuICAgIEN5cHJ1czogJ+Whnua1pui3r+aWrycsXHJcbiAgICAnQ3plY2ggUmVwdWJsaWMnOiAn5o235YWL5YWx5ZKM5Zu9JyxcclxuICAgICdEZW1vY3JhdGljIFJlcHVibGljIG9mIHRoZSBDb25nbyc6ICfliJrmnpzmsJHkuLvlhbHlkozlm70nLFxyXG4gICAgRGVubWFyazogJ+S4uem6picsXHJcbiAgICBEamlib3V0aTogJ+WQieW4g+aPkCcsXHJcbiAgICAnRG9taW5pY2FuIFJlcHVibGljJzogJ+WkmuaYjuWwvOWKoOWFseWSjOWbvScsXHJcbiAgICAnRWFzdCBUaW1vcic6ICfkuJzluJ3msbYnLFxyXG4gICAgRWN1YWRvcjogJ+WOhOeTnOWkmuWwlCcsXHJcbiAgICBFZ3lwdDogJ+Wfg+WPiicsXHJcbiAgICAnRWwgU2FsdmFkb3InOiAn6JCo5bCU55Om5aSaJyxcclxuICAgICdFcXVhdG9yaWFsIEd1aW5lYSc6ICfotaTpgZPlh6DlhoXkuponLFxyXG4gICAgRXJpdHJlYTogJ+WOhOeri+eJuemHjOS6micsXHJcbiAgICBFc3RvbmlhOiAn54ix5rKZ5bC85LqaJyxcclxuICAgIEV0aGlvcGlhOiAn5Z+D5aGe5L+E5q+U5LqaJyxcclxuICAgICdGYWxrbGFuZCBJc2xhbmRzJzogJ+emj+WFi+WFsOe+pOWymycsXHJcbiAgICBGaWppOiAn5paQJyxcclxuICAgIEZpbmxhbmQ6ICfoiqzlhbAnLFxyXG4gICAgRnJhbmNlOiAn5rOV5Zu9JyxcclxuICAgICdGcmVuY2ggR3VpYW5hJzogJ+azleWxnuWcreS6mumCoycsXHJcbiAgICAnRnJlbmNoIFNvdXRoZXJuIGFuZCBBbnRhcmN0aWMgTGFuZHMnOiAn5rOV5bGe5Y2X5Y2K55CD5ZKM5Y2X5p6B6aKG5ZywJyxcclxuICAgIEdhYm9uOiAn5Yqg6JOsJyxcclxuICAgIEdhbWJpYTogJ+WGiOavlOS6micsXHJcbiAgICBHZW9yZ2lhOiAn5qC86bKB5ZCJ5LqaJyxcclxuICAgIEdlcm1hbnk6ICflvrflm70nLFxyXG4gICAgR2hhbmE6ICfliqDnurMnLFxyXG4gICAgR3JlZWNlOiAn5biM6IWKJyxcclxuICAgIEdyZWVubGFuZDogJ+agvOmZteWFsCcsXHJcbiAgICBHdWF0ZW1hbGE6ICfljbHlnLDpqazmi4knLFxyXG4gICAgR3VpbmVhOiAn5Yeg5YaF5LqaJyxcclxuICAgICdHdWluZWEgQmlzc2F1JzogJ+WHoOWGheS6muavlOe7jScsXHJcbiAgICBHdXlhbmE6ICflnK3kuprpgqMnLFxyXG4gICAgSGFpdGk6ICfmtbflnLAnLFxyXG4gICAgSG9uZHVyYXM6ICfmtKrpg73mi4nmlq8nLFxyXG4gICAgSHVuZ2FyeTogJ+WMiOeJmeWIqScsXHJcbiAgICBJY2VsYW5kOiAn5Yaw5bKbJyxcclxuICAgIEluZGlhOiAn5Y2w5bqmJyxcclxuICAgIEluZG9uZXNpYTogJ+WNsOWwvCcsXHJcbiAgICBJcmFuOiAn5LyK5pyXJyxcclxuICAgIElyYXE6ICfkvIrmi4nlhYsnLFxyXG4gICAgSXJlbGFuZDogJ+eIseWwlOWFsCcsXHJcbiAgICBJc3JhZWw6ICfku6XoibLliJcnLFxyXG4gICAgSXRhbHk6ICfmhI/lpKfliKknLFxyXG4gICAgJ0l2b3J5IENvYXN0JzogJ+ixoeeJmea1t+WyuCcsXHJcbiAgICBKYW1haWNhOiAn54mZ5Lmw5YqgJyxcclxuICAgIEphcGFuOiAn5pel5pysJyxcclxuICAgIEpvcmRhbjogJ+e6puaXpicsXHJcbiAgICBLYXpha2hzdGFuOiAn5ZOI6JCo5YWL5pav5Z2mJyxcclxuICAgIEtlbnlhOiAn6IKv5bC85LqaJyxcclxuICAgIEtvc292bzogJ+enkee0ouaygycsXHJcbiAgICBLdXdhaXQ6ICfnp5HlqIHnibknLFxyXG4gICAgS3lyZ3l6c3RhbjogJ+WQieWwlOWQieaWr+aWr+WdpicsXHJcbiAgICBMYW9zOiAn6ICB5oydJyxcclxuICAgIExhdHZpYTogJ+aLieiEsee7tOS6micsXHJcbiAgICBMZWJhbm9uOiAn6buO5be05aupJyxcclxuICAgIExlc290aG86ICfojrHntKLmiZgnLFxyXG4gICAgTGliZXJpYTogJ+WIqeavlOmHjOS6micsXHJcbiAgICBMaWJ5YTogJ+WIqeavlOS6micsXHJcbiAgICBMaXRodWFuaWE6ICfnq4vpmbblrpsnLFxyXG4gICAgTHV4ZW1ib3VyZzogJ+WNouajruWgoScsXHJcbiAgICBNYWNlZG9uaWE6ICfpqazlhbbpob8nLFxyXG4gICAgTWFkYWdhc2NhcjogJ+mprOi+vuWKoOaWr+WKoCcsXHJcbiAgICBNYWxhd2k6ICfpqazmi4nnu7QnLFxyXG4gICAgTWFsYXlzaWE6ICfpqazmnaXopb/kuponLFxyXG4gICAgTWFsaTogJ+mprOmHjCcsXHJcbiAgICBNYXVyaXRhbmlhOiAn5q+b6YeM5aGU5bC85LqaJyxcclxuICAgIE1leGljbzogJ+WiqOilv+WTpScsXHJcbiAgICBNb2xkb3ZhOiAn5pGp5bCU5aSa55OmJyxcclxuICAgIE1vbmdvbGlhOiAn6JKZ5Y+kJyxcclxuICAgIE1vbnRlbmVncm86ICfpu5HlsbEnLFxyXG4gICAgTW9yb2NjbzogJ+aRqea0m+WTpScsXHJcbiAgICBNb3phbWJpcXVlOiAn6I6r5qGR5q+U5YWLJyxcclxuICAgIE15YW5tYXI6ICfnvIXnlLgnLFxyXG4gICAgTmFtaWJpYTogJ+e6s+exs+avlOS6micsXHJcbiAgICBOZXBhbDogJ+WwvOaziuWwlCcsXHJcbiAgICBOZXRoZXJsYW5kczogJ+iNt+WFsCcsXHJcbiAgICAnTmV3IENhbGVkb25pYSc6ICfmlrDlloDph4zlpJrlsLzkuponLFxyXG4gICAgJ05ldyBaZWFsYW5kJzogJ+aWsOilv+WFsCcsXHJcbiAgICBOaWNhcmFndWE6ICflsLzliqDmi4nnk5wnLFxyXG4gICAgTmlnZXI6ICflsLzml6XlsJQnLFxyXG4gICAgTmlnZXJpYTogJ+WwvOaXpeWIqeS6micsXHJcbiAgICAnTm9ydGggS29yZWEnOiAn5YyX5pyd6bKcJyxcclxuICAgICdOb3J0aGVybiBDeXBydXMnOiAn5YyX5aGe5rWm6Lev5pavJyxcclxuICAgIE5vcndheTogJ+aMquWogScsXHJcbiAgICBPbWFuOiAn6Zi/5pu8JyxcclxuICAgIFBha2lzdGFuOiAn5be05Z+65pav5Z2mJyxcclxuICAgIFBhbmFtYTogJ+W3tOaLv+mprCcsXHJcbiAgICAnUGFwdWEgTmV3IEd1aW5lYSc6ICflt7TluIPkuprmlrDlh6DlhoXkuponLFxyXG4gICAgUGFyYWd1YXk6ICflt7Tmi4nlnK0nLFxyXG4gICAgUGVydTogJ+enmOmygScsXHJcbiAgICBQaGlsaXBwaW5lczogJ+iPsuW+i+WuvicsXHJcbiAgICBQb2xhbmQ6ICfms6LlhbAnLFxyXG4gICAgUG9ydHVnYWw6ICfokaHokITniZknLFxyXG4gICAgJ1B1ZXJ0byBSaWNvJzogJ+azouWkmum7juWQhCcsXHJcbiAgICBRYXRhcjogJ+WNoeWhlOWwlCcsXHJcbiAgICAnUmVwdWJsaWMgb2YgU2VyYmlhJzogJ+WhnuWwlOe7tOS6micsXHJcbiAgICAnUmVwdWJsaWMgb2YgdGhlIENvbmdvJzogJ+WImuaenOWFseWSjOWbvScsXHJcbiAgICBSb21hbmlhOiAn572X6ams5bC85LqaJyxcclxuICAgIFJ1c3NpYTogJ+S/hOe9l+aWrycsXHJcbiAgICBSd2FuZGE6ICfljaLml7rovr4nLFxyXG4gICAgJ1NhdWRpIEFyYWJpYSc6ICfmspnnibnpmL/mi4nkvK8nLFxyXG4gICAgU2VuZWdhbDogJ+WhnuWGheWKoOWwlCcsXHJcbiAgICAnU2llcnJhIExlb25lJzogJ+WhnuaLieWIqeaYgicsXHJcbiAgICBTaW5nYXBvcmU6ICfmlrDliqDlnaEnLFxyXG4gICAgU2xvdmFraWE6ICfmlq/mtJvkvJDlhYsnLFxyXG4gICAgU2xvdmVuaWE6ICfmlq/mtJvmloflsLzkuponLFxyXG4gICAgJ1NvbG9tb24gSXNsYW5kcyc6ICfmiYDnvZfpl6jnvqTlspsnLFxyXG4gICAgU29tYWxpYTogJ+e0oumprOmHjCcsXHJcbiAgICBTb21hbGlsYW5kOiAn57Si6ams6YeM5YWwJyxcclxuICAgICdTb3V0aCBBZnJpY2EnOiAn5Y2X6Z2eJyxcclxuICAgICdTb3V0aCBLb3JlYSc6ICfpn6nlm70nLFxyXG4gICAgJ1NvdXRoIFN1ZGFuJzogJ+WNl+iLj+S4uScsXHJcbiAgICBTcGFpbjogJ+ilv+ePreeJmScsXHJcbiAgICAnU3JpIExhbmthJzogJ+aWr+mHjOWFsOWNoScsXHJcbiAgICBTdWRhbjogJ+iLj+S4uScsXHJcbiAgICBTdXJpbmFtZTogJ+iLj+mHjOWNlycsXHJcbiAgICBTd2F6aWxhbmQ6ICfmlq/lqIHlo6vlhbAnLFxyXG4gICAgU3dlZGVuOiAn55Ge5YW4JyxcclxuICAgIFN3aXR6ZXJsYW5kOiAn55Ge5aOrJyxcclxuICAgIFN5cmlhOiAn5Y+Z5Yip5LqaJyxcclxuICAgIFRhamlraXN0YW46ICfloZTlkInlhYvmlq/lnaYnLFxyXG4gICAgVGhhaWxhbmQ6ICfms7Dlm70nLFxyXG4gICAgJ1RoZSBCYWhhbWFzJzogJ+W3tOWTiOmprCcsXHJcbiAgICBUb2dvOiAn5aSa5ZOlJyxcclxuICAgICdUcmluaWRhZCBhbmQgVG9iYWdvJzogJ+eJuemHjOWwvOi+vuWSjOWkmuW3tOWTpScsXHJcbiAgICBUdW5pc2lhOiAn56qB5bC85pavJyxcclxuICAgIFR1cmtleTogJ+Wcn+iAs+WFticsXHJcbiAgICBUdXJrbWVuaXN0YW46ICflnJ/lupPmm7zmlq/lnaYnLFxyXG4gICAgVWdhbmRhOiAn5LmM5bmy6L6+JyxcclxuICAgIFVrcmFpbmU6ICfkuYzlhYvlhbAnLFxyXG4gICAgJ1VuaXRlZCBBcmFiIEVtaXJhdGVzJzogJ+mYv+iBlOmFiycsXHJcbiAgICAnVW5pdGVkIEtpbmdkb20nOiAn6Iux5Zu9JyxcclxuICAgICdVbml0ZWQgUmVwdWJsaWMgb2YgVGFuemFuaWEnOiAn5Z2m5qGR5bC85LqaJyxcclxuICAgICdVbml0ZWQgU3RhdGVzJzogJ+e+juWbvScsXHJcbiAgICBVcnVndWF5OiAn5LmM5ouJ5ZytJyxcclxuICAgIFV6YmVraXN0YW46ICfkuYzlhbnliKvlhYvmlq/lnaYnLFxyXG4gICAgVmFudWF0dTogJ+eTpuWKqumYv+WbvicsXHJcbiAgICBWZW5lenVlbGE6ICflp5TlhoXnkZ7mi4knLFxyXG4gICAgVmlldG5hbTogJ+i2iuWNlycsXHJcbiAgICAnV2VzdCBCYW5rJzogJ+ilv+WyuCcsXHJcbiAgICAnV2VzdGVybiBTYWhhcmEnOiAn6KW/5pKS5ZOI5ouJJyxcclxuICAgIFllbWVuOiAn5Lmf6ZeoJyxcclxuICAgIFphbWJpYTogJ+i1nuavlOS6micsXHJcbiAgICBaaW1iYWJ3ZTogJ+a0peW3tOW4g+mfpicsXHJcbiAgfTtcclxuICBfY2hpbGRyZW46IGFueSA9IFtdO1xyXG4gIGxvYWRlZE1hcDogeyBbbmFtZTogc3RyaW5nXTogUHJvbWlzZTxhbnk+IH0gPSB7fTtcclxuICBwcm92aW5jZXM6IGFueTtcclxuICBzdGFjayA9IFtdO1xyXG4gIHZpc3VhbE1hcDogYW55W107XHJcbiAgQFZpZXdDaGlsZChOZ3hFY2hhcnRzRGlyZWN0aXZlKVxyXG4gIG5neEVjaGFydHM6IE5neEVjaGFydHNEaXJlY3RpdmU7XHJcbiAgY29uc3RydWN0b3IocHJvdGVjdGVkIGh0dHA6IEh0dHBDbGllbnQpIHtcclxuICAgIHN1cGVyKCk7XHJcbiAgfVxyXG4gIG5nT25DaGFuZ2VzKGNoYW5nZXM6IFNpbXBsZUNoYW5nZXMpOiB2b2lkIHtcclxuICAgIGlmIChjaGFuZ2VzLmRhdGEpIHtcclxuICAgICAgaWYgKHRoaXMuZGF0YSAmJiB0aGlzLmRhdGFbMF0pIHtcclxuICAgICAgICB0aGlzLm1hcFN0eWxlID0gdGhpcy5kYXRhWzBdLm5hbWU7XHJcbiAgICAgICAgdGhpcy5zdGFjay5wdXNoKHRoaXMubWFwU3R5bGUpO1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMucmVsb2FkTWFwKCk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIGFzeW5jIG5nT25Jbml0KCkge1xyXG4gICAgLy8gYXdhaXQgdGhpcy5jb21tb25TZXJ2aWNlLmdldE1hcCgpO1xyXG4gICAgLy8gYXdhaXQgaW1wb3J0KCdlY2hhcnRzL2Rpc3QvZXh0ZW5zaW9uL2JtYXAuanMnKTtcclxuICAgIHRoaXMucHJvdmluY2VzID0gKGF3YWl0IHRoaXMuaHR0cC5nZXQoJy9hc3NldHMvbWFwTGlzdEl0ZW0uanNvbicpLnRvUHJvbWlzZSgpKSBhcyBhbnk7XHJcbiAgICAvLyBjb25zdCBtYXAgPSBlY2hhcnRzLmdldE1hcCh0aGlzLm1hcFN0eWxlKTtcclxuICAgIC8vIGlmIChtYXAgPT0gbnVsbCkge1xyXG4gICAgLy8gICBjb25zdCBkYXRhID0gYXdhaXQgdGhpcy5odHRwLmdldCgnYXNzZXRzL2VjaGFydHMvbWFwL2pzb24vJyArIHRoaXMubWFwU3R5bGUgKyAnLmpzb24nKS50b1Byb21pc2UoKTtcclxuICAgIC8vICAgZWNoYXJ0cy5yZWdpc3Rlck1hcCh0aGlzLm1hcFN0eWxlLCBkYXRhKTtcclxuICAgIC8vIH1cclxuICAgIC8vIHRoaXMuaGFzTWFwID0gdHJ1ZTtcclxuICAgIC8vIHRoaXMuY2hhcnRJbml0KCk7XHJcbiAgfVxyXG4gIG5nT25EZXN0cm95KCk6IHZvaWQge1xyXG4gICAgaWYgKHRoaXMubmd4RWNoYXJ0cykge1xyXG4gICAgICAodGhpcy5uZ3hFY2hhcnRzIGFzIGFueSkuaW5pdENoYXJ0ID0gKCkgPT4ge307XHJcbiAgICB9XHJcbiAgfVxyXG4gIGNoYXJ0SW5pdCgpIHtcclxuICAgIC8vIHRoaXMubG9hZE1hcCh0aGlzLm1hcFN0eWxlKS50aGVuKChkYXRhKSA9PiB7XHJcbiAgICBsZXQgc2VyaWVzID0gW107XHJcbiAgICB0aGlzLnZpc3VhbE1hcCA9IFtdO1xyXG4gICAgdGhpcy5fY2hpbGRyZW4uZm9yRWFjaCgoY2hpbGQpID0+IHtcclxuICAgICAgaWYgKGNoaWxkLnR5cGUgPT09ICd2aXN1YWwnKSB7XHJcbiAgICAgICAgLy8gc2VyaWVzID0gY2hpbGQuc2VyaWVzO1xyXG4gICAgICAgIC8vIHNlcmllc1swXS5tYXBUeXBlID0gdGhpcy5tYXBTdHlsZTtcclxuICAgICAgICBpZiAoY2hpbGQudmlzdWFsTWFwICYmIGNoaWxkLml0ZW0ubGVuZ3RoKSB7XHJcbiAgICAgICAgICBpZiAoY2hpbGQudmlzdWFsTWFwMikge1xyXG4gICAgICAgICAgICB0aGlzLnZpc3VhbE1hcC5wdXNoKGNoaWxkLnZpc3VhbE1hcDIpO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgICAgdGhpcy52aXN1YWxNYXAucHVzaChjaGlsZC52aXN1YWxNYXApO1xyXG4gICAgICAgICAgY2hpbGQudmlzdWFsTWFwLnNlcmllc0luZGV4ID0gc2VyaWVzLmxlbmd0aDtcclxuICAgICAgICB9XHJcbiAgICAgIH1cclxuICAgICAgaWYgKEFycmF5LmlzQXJyYXkoY2hpbGQuaXRlbSkpIHtcclxuICAgICAgICBzZXJpZXMgPSBbLi4uc2VyaWVzLCAuLi5jaGlsZC5pdGVtXTtcclxuICAgICAgfSBlbHNlIHtcclxuICAgICAgICBzZXJpZXMgPSBbLi4uc2VyaWVzLCBjaGlsZC5pdGVtXTtcclxuICAgICAgfVxyXG4gICAgfSk7XHJcbiAgICBzZXJpZXMuZm9yRWFjaCgobGF5ZXIsIGluZGV4KSA9PiB7XHJcbiAgICAgIGlmIChsYXllci50eXBlID09PSAnbGluZXMnKSB7XHJcbiAgICAgICAgZGVsZXRlIGxheWVyLmNvb3JkaW5hdGVTeXN0ZW07XHJcbiAgICAgIH1cclxuICAgICAgaWYgKGxheWVyLnR5cGUgPT09ICdzY2F0dGVyJykge1xyXG4gICAgICAgIGxheWVyLmNvb3JkaW5hdGVTeXN0ZW0gPSAnZ2VvJztcclxuICAgICAgICAvLyBsYXllci5zeW1ib2xTaXplID0gJzEwJztcclxuICAgICAgfVxyXG4gICAgICAvLyBpZiAobGF5ZXIudHlwZSA9PT0gJ21hcCcpIHtcclxuICAgICAgLy8gICB0aGlzLnZpc3VhbE1hcC5mb3JFYWNoKCh2aXN1YWxNYXApID0+IHtcclxuICAgICAgLy8gICAgIHZpc3VhbE1hcFsnc2VyaWVzSW5kZXgnXSA9IGluZGV4O1xyXG4gICAgICAvLyAgIH0pO1xyXG4gICAgICAvLyB9XHJcbiAgICB9KTtcclxuICAgIGNvbnN0IHRleHRTdHlsZSA9IGdldEVjaGFydHNUZXh0U3R5bGUodGhpcy5hcmVhTmFtZWZvbnQpO1xyXG4gICAgdGhpcy5jaGFydE9wdGlvbiA9IHtcclxuICAgICAgdG9vbHRpcDoge1xyXG4gICAgICAgIHRyaWdnZXI6ICdpdGVtJyxcclxuICAgICAgICB0cmlnZ2VyT246IHRoaXMudHJpZ2dlclR5cGUgPyB0aGlzLnRyaWdnZXJUeXBlIDogJ21vdXNlbW92ZScsXHJcbiAgICAgIH0sXHJcbiAgICAgIGdlbzoge1xyXG4gICAgICAgIGxhYmVsOiB7XHJcbiAgICAgICAgICBub3JtYWw6IHtcclxuICAgICAgICAgICAgLy/pnZnmgIHnmoTml7blgJnlsZXnpLrmoLflvI9cclxuICAgICAgICAgICAgc2hvdzogdGhpcy5zaG93QXJlYU5hbWUsIC8v5piv5ZCm5pi+56S65Zyw5Zu+55yB5Lu95b6X5ZCN56ewXHJcbiAgICAgICAgICAgIHRleHRTdHlsZSxcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICBlbXBoYXNpczoge1xyXG4gICAgICAgICAgICBzaG93OiB0aGlzLnNob3dBcmVhTmFtZSxcclxuICAgICAgICAgICAgdGV4dFN0eWxlLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICB9LFxyXG4gICAgICAgIHNlbGVjdGVkTW9kZTogdGhpcy5zZWxlY3RlZE1vZGUsXHJcbiAgICAgICAgc2VsZWN0OiB7XHJcbiAgICAgICAgICBsYWJlbDoge1xyXG4gICAgICAgICAgICBzaG93OiB0aGlzLnNob3dBcmVhTmFtZSwgLy/mmK/lkKbmmL7npLrlnLDlm77nnIHku73lvpflkI3np7BcclxuICAgICAgICAgICAgdGV4dFN0eWxlOiB7XHJcbiAgICAgICAgICAgICAgY29sb3I6IHRoaXMuYXJlYU5hbWVmb250Py5jb2xvciB8fCAnI2ZmZicsXHJcbiAgICAgICAgICAgICAgZm9udFNpemU6IHRoaXMuYXJlYU5hbWVmb250Py5zaXplIHx8IDEyLFxyXG4gICAgICAgICAgICAgIGZvbnRGYW1pbHk6IHRoaXMuYXJlYU5hbWVmb250Py5mYW1pbHkgfHwgJycsXHJcbiAgICAgICAgICAgICAgbGluZUhlaWdodDogdGhpcy5hcmVhTmFtZWZvbnQ/LmxpbmVIZWlnaHQgfHwgMTIsXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgaXRlbVN0eWxlOiB7XHJcbiAgICAgICAgICAgIGFyZWFDb2xvcjoge1xyXG4gICAgICAgICAgICAgIHR5cGU6ICdyYWRpYWwnLFxyXG4gICAgICAgICAgICAgIHg6IDAuNSxcclxuICAgICAgICAgICAgICB5OiAwLjUsXHJcbiAgICAgICAgICAgICAgcjogMC44LFxyXG4gICAgICAgICAgICAgIGNvbG9yU3RvcHM6IFtcclxuICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgb2Zmc2V0OiAwLFxyXG4gICAgICAgICAgICAgICAgICBjb2xvcjogdGhpcy5zZWxlY3RDb2xvclN0YXJ0ID8gdGhpcy5zZWxlY3RDb2xvclN0YXJ0IDogdGhpcy5fYXJlYUNvbG9yLCAvLyAwJSDlpITnmoTpopzoibJcclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgIG9mZnNldDogMSxcclxuICAgICAgICAgICAgICAgICAgY29sb3I6IHRoaXMuc2VsZWN0Q29sb3JFbmQgPyB0aGlzLnNlbGVjdENvbG9yRW5kIDogdGhpcy5fYXJlYUNvbG9yLCAvLyAxMDAlIOWkhOeahOminOiJslxyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICBdLFxyXG4gICAgICAgICAgICAgIGdsb2JhbENvb3JkOiBmYWxzZSwgLy8g57y655yB5Li6IGZhbHNlXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIGJvcmRlckNvbG9yOiB0aGlzLl9ib3JkZXJDb2xvcixcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgfSxcclxuICAgICAgICBpdGVtU3R5bGU6IHtcclxuICAgICAgICAgIG5vcm1hbDoge1xyXG4gICAgICAgICAgICAvLyBhcmVhQ29sb3I6IHRoaXMuYXJlYUNvbG9yLFxyXG4gICAgICAgICAgICBib3JkZXJDb2xvcjogdGhpcy5ib3JkZXJDb2xvcixcclxuICAgICAgICAgICAgb3BhY2l0eTogMSxcclxuICAgICAgICAgICAgYXJlYUNvbG9yOiB7XHJcbiAgICAgICAgICAgICAgdHlwZTogJ3JhZGlhbCcsXHJcbiAgICAgICAgICAgICAgeDogMC41LFxyXG4gICAgICAgICAgICAgIHk6IDAuNSxcclxuICAgICAgICAgICAgICByOiAwLjgsXHJcbiAgICAgICAgICAgICAgY29sb3JTdG9wczogW1xyXG4gICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICBvZmZzZXQ6IDAsXHJcbiAgICAgICAgICAgICAgICAgIGNvbG9yOiB0aGlzLm1hcENvbG9yU3RhcnQgPyB0aGlzLm1hcENvbG9yU3RhcnQgOiB0aGlzLmFyZWFDb2xvciwgLy8gMCUg5aSE55qE6aKc6ImyXHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICBvZmZzZXQ6IDEsXHJcbiAgICAgICAgICAgICAgICAgIGNvbG9yOiB0aGlzLm1hcENvbG9yRW5kID8gdGhpcy5tYXBDb2xvckVuZCA6IHRoaXMuYXJlYUNvbG9yLCAvLyAxMDAlIOWkhOeahOminOiJslxyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICBdLFxyXG4gICAgICAgICAgICAgIGdsb2JhbENvb3JkOiBmYWxzZSwgLy8g57y655yB5Li6IGZhbHNlXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHNoYWRvd0NvbG9yOiB0aGlzLnNoYWRvd0NvbG9yLFxyXG4gICAgICAgICAgICBzaGFkb3dCbHVyOiB0aGlzLnNoYWRvd1dpZHRoLFxyXG4gICAgICAgICAgICBzaGFkb3dPZmZzZXRYOiAtMixcclxuICAgICAgICAgICAgc2hhZG93T2Zmc2V0WTogMixcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICBlbXBoYXNpczoge1xyXG4gICAgICAgICAgICBhcmVhQ29sb3I6IHtcclxuICAgICAgICAgICAgICB0eXBlOiAncmFkaWFsJyxcclxuICAgICAgICAgICAgICB4OiAwLjUsXHJcbiAgICAgICAgICAgICAgeTogMC41LFxyXG4gICAgICAgICAgICAgIHI6IDAuOCxcclxuICAgICAgICAgICAgICBjb2xvclN0b3BzOiBbXHJcbiAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgIG9mZnNldDogMCxcclxuICAgICAgICAgICAgICAgICAgY29sb3I6IHRoaXMuc2VsZWN0Q29sb3JTdGFydCA/IHRoaXMuc2VsZWN0Q29sb3JTdGFydCA6IHRoaXMuX2FyZWFDb2xvciwgLy8gMCUg5aSE55qE6aKc6ImyXHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICBvZmZzZXQ6IDEsXHJcbiAgICAgICAgICAgICAgICAgIGNvbG9yOiB0aGlzLnNlbGVjdENvbG9yRW5kID8gdGhpcy5zZWxlY3RDb2xvckVuZCA6IHRoaXMuX2FyZWFDb2xvciwgLy8gMTAwJSDlpITnmoTpopzoibJcclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgXSxcclxuICAgICAgICAgICAgICBnbG9iYWxDb29yZDogZmFsc2UsIC8vIOe8uuecgeS4uiBmYWxzZVxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICBib3JkZXJDb2xvcjogdGhpcy5fYm9yZGVyQ29sb3IsXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgIH0sXHJcblxyXG4gICAgICAgIG1hcDogdGhpcy5tYXBTdHlsZSxcclxuICAgICAgICByb2FtOiB0aGlzLnpvb21Td2l0Y2gsXHJcbiAgICAgICAgbmFtZU1hcDogdGhpcy5uYW1lTWFwLFxyXG4gICAgICAgIHpvb206IHRoaXMuem9vbSxcclxuICAgICAgfSxcclxuICAgICAgc2VyaWVzLFxyXG4gICAgfTtcclxuICAgIGlmICh0aGlzLnZpc3VhbE1hcD8ubGVuZ3RoKSB7XHJcbiAgICAgIHRoaXMuY2hhcnRPcHRpb24udmlzdWFsTWFwID0gdGhpcy52aXN1YWxNYXA7XHJcbiAgICB9XHJcbiAgICAvLyB9KTtcclxuICB9XHJcbiAgY2hpbGRJbml0KGNoaWxkOiBhbnkpIHtcclxuICAgIGlmIChjaGlsZC5pZCkge1xyXG4gICAgICBjb25zdCBjaGlsZEluZGV4ID0gdGhpcy5fY2hpbGRyZW4uZmluZEluZGV4KChzKSA9PiBzLmlkID09PSBjaGlsZC5pZCk7XHJcbiAgICAgIGlmIChjaGlsZEluZGV4ID4gLTEpIHtcclxuICAgICAgICB0aGlzLl9jaGlsZHJlbltjaGlsZEluZGV4XSA9IGNoaWxkO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMuX2NoaWxkcmVuLnB1c2goY2hpbGQpO1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMuY2hhcnRJbml0KCk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIGRlbGV0ZUNoaWxkKGNoaWxkSWQ6IHN0cmluZykge1xyXG4gICAgaWYgKGNoaWxkSWQpIHtcclxuICAgICAgY29uc3QgY2hpbGRJbmRleCA9IHRoaXMuX2NoaWxkcmVuLmZpbmRJbmRleCgocykgPT4gcy5pZCA9PT0gY2hpbGRJZCk7XHJcbiAgICAgIC8vIHRoaXMuX2NoaWxkcmVuLmZvckVhY2goKGVsZW1lbnQpID0+IHtcclxuICAgICAgLy8gICBpZiAoY2hpbGRJZCA9PT0gZWxlbWVudC5pZCkge1xyXG4gICAgICAvLyAgICAgdGhpcy52aXN1YWxNYXAgPSBudWxsO1xyXG4gICAgICAvLyAgIH1cclxuICAgICAgLy8gfSk7XHJcbiAgICAgIGlmIChjaGlsZEluZGV4ID4gLTEpIHtcclxuICAgICAgICB0aGlzLl9jaGlsZHJlbi5zcGxpY2UoY2hpbGRJbmRleCwgMSk7XHJcbiAgICAgICAgdGhpcy5jaGFydEluaXQoKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8gbG9hZE1hcChuYW1lOiBzdHJpbmcpIHtcclxuICAvLyAgIGxldCBsb2FkTWFwUHJvbWlzZSA9IHRoaXMubG9hZGVkTWFwW25hbWVdO1xyXG4gIC8vICAgaWYgKCFsb2FkTWFwUHJvbWlzZSkge1xyXG4gIC8vICAgICBsb2FkTWFwUHJvbWlzZSA9IHRoaXMuaHR0cC5nZXQoJ2Fzc2V0cy9lY2hhcnRzL21hcC9qc29uLycgKyBuYW1lICsgJy5qc29uJykudG9Qcm9taXNlKCk7XHJcbiAgLy8gICAgIHRoaXMubG9hZGVkTWFwW25hbWVdID0gbG9hZE1hcFByb21pc2U7XHJcbiAgLy8gICB9XHJcbiAgLy8gICByZXR1cm4gbG9hZE1hcFByb21pc2U7XHJcbiAgLy8gfVxyXG4gIGFzeW5jIHJlbG9hZE1hcCgpIHtcclxuICAgIGNvbnN0IG1hcFN0eWxlID0gdGhpcy5tYXBTdHlsZTtcclxuICAgIGNvbnN0IG1hcCA9IGVjaGFydHMuZ2V0TWFwKG1hcFN0eWxlKTtcclxuICAgIGlmIChtYXAgPT0gbnVsbCkge1xyXG4gICAgICBjb25zdCBkYXRhOmFueSA9IGF3YWl0IHRoaXMuaHR0cC5nZXQoJ2Fzc2V0cy9lY2hhcnRzL21hcC9qc29uLycgKyBtYXBTdHlsZSArICcuanNvbicpLnRvUHJvbWlzZSgpO1xyXG4gICAgICBlY2hhcnRzLnJlZ2lzdGVyTWFwKG1hcFN0eWxlLCBkYXRhKTtcclxuICAgIH1cclxuICAgIHRoaXMuaGFzTWFwID0gdHJ1ZTtcclxuICAgIHRoaXMuY2hhcnRJbml0KCk7XHJcbiAgfVxyXG4gIGFzeW5jIG1hcmtDbGljayhldmVudCkge1xyXG4gICAgbGV0IGxuZzogbnVtYmVyO1xyXG4gICAgbGV0IGxhdDogbnVtYmVyO1xyXG4gICAgaWYgKGV2ZW50LnNlcmllc0lkKSB7XHJcbiAgICAgIGxuZyA9IGV2ZW50LnZhbHVlWzBdO1xyXG4gICAgICBsYXQgPSBldmVudC52YWx1ZVsxXTtcclxuICAgICAgY29uc3QgY2hpbGQgPSB0aGlzLl9jaGlsZHJlbi5maW5kKChzKSA9PiBldmVudC5zZXJpZXNJZC5zdGFydHNXaXRoKHMuaWQpKTtcclxuICAgICAgaWYgKGNoaWxkICYmIGNoaWxkLm9uQ2xpY2spIHtcclxuICAgICAgICBjaGlsZC5vbkNsaWNrKGV2ZW50KTtcclxuICAgICAgfVxyXG4gICAgfSBlbHNlIHtcclxuICAgICAgY29uc3QgbWFwID0gZWNoYXJ0cy5nZXRNYXAodGhpcy5tYXBTdHlsZSk7XHJcbiAgICAgIGlmIChtYXApIHtcclxuICAgICAgICBmb3IgKGNvbnN0IGZlYXR1cmUgb2YgbWFwLmdlb0pzb24uZmVhdHVyZXMpIHtcclxuICAgICAgICAgIGNvbnN0IHByb3BlcnRpZXMgPSBmZWF0dXJlLnByb3BlcnRpZXM7XHJcbiAgICAgICAgICBpZiAocHJvcGVydGllcy5uYW1lID09PSBldmVudC5uYW1lKSB7XHJcbiAgICAgICAgICAgIGlmIChwcm9wZXJ0aWVzLmNwKSB7XHJcbiAgICAgICAgICAgICAgbG5nID0gcHJvcGVydGllcy5jcFswXTtcclxuICAgICAgICAgICAgICBsYXQgPSBwcm9wZXJ0aWVzLmNwWzFdO1xyXG4gICAgICAgICAgICB9IGVsc2UgaWYgKHByb3BlcnRpZXMuY2VudGVyKSB7XHJcbiAgICAgICAgICAgICAgbG5nID0gcHJvcGVydGllcy5jZW50ZXJbMF07XHJcbiAgICAgICAgICAgICAgbGF0ID0gcHJvcGVydGllcy5jZW50ZXJbMV07XHJcbiAgICAgICAgICAgIH0gZWxzZSB7XHJcbiAgICAgICAgICAgICAgY29uc29sZS5sb2cocHJvcGVydGllcyk7XHJcbiAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgYnJlYWs7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgfVxyXG4gICAgICB9XHJcbiAgICAgIGNvbnN0IHByb3ZpbmNlID0gdGhpcy5wcm92aW5jZXMuZmluZCgoZWxlbWVudCkgPT4gZWxlbWVudC5sYWJlbCA9PT0gZXZlbnQubmFtZSk7XHJcbiAgICAgIGlmIChwcm92aW5jZSkge1xyXG4gICAgICAgIHRoaXMuc3RhY2sucHVzaCh0aGlzLm1hcFN0eWxlKTtcclxuICAgICAgICB0aGlzLm1hcFN0eWxlID0gcHJvdmluY2UudmFsdWU7XHJcbiAgICAgICAgdGhpcy5yZWxvYWRNYXAoKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gICAgdGhpcy5hcmVhQ2xpY2suZW1pdCh7IG5hbWU6IGV2ZW50Lm5hbWUsIGxuZywgbGF0IH0pO1xyXG4gICAgLy8gaWYoZXZlbnQuY29tcG9uZW50U3ViVHlwZSE9bnVsbCAmJiBldmVudC5jb21wb25lbnRTdWJUeXBlPT09J3NjYXR0ZXInKXtcclxuICAgIC8vICAgY29uc3Qgb2JqPWV2ZW50LmRhdGE7XHJcbiAgICAvLyAgIGNvbnNvbGUubG9nKGV2ZW50KTtcclxuICAgIC8vICAgdGhpcy5tYXJrZXJUaWVyQ2xpY2suZW1pdCh7XHJcbiAgICAvLyAgICAgYWRkcmVzczogb2JqLm5hbWUsXHJcbiAgICAvLyAgICAgaW5mb3JtYXRpb246ICcnLFxyXG4gICAgLy8gICAgIGdyb3VwOiAnJyxcclxuICAgIC8vICAgICBsbmc6IG9iai52YWx1ZVswXSxcclxuICAgIC8vICAgICBsYXQ6IG9iai52YWx1ZVsxXSxcclxuICAgIC8vICAgfSk7XHJcbiAgICAvLyB9XHJcbiAgfVxyXG4gIHJvbGxiYWNrKGV2ZW50OiBNb3VzZUV2ZW50KSB7XHJcbiAgICBldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xyXG4gICAgaWYgKHRoaXMuc3RhY2sgIT0gbnVsbCAmJiB0aGlzLnN0YWNrLmxlbmd0aCAhPSAwKSB7XHJcbiAgICAgIHRoaXMubWFwU3R5bGUgPSB0aGlzLnN0YWNrLnBvcCgpO1xyXG4gICAgICB0aGlzLnJlbG9hZE1hcCgpO1xyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgZ2V0VGV4dFN0eWxlKCkge31cclxufVxyXG4iXX0=
|