bbj-screen-widget 2.4.62 → 2.4.63
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 +119 -0
- package/bbj-screen-widget.metadata.json +1 -0
- package/bundles/bbj-screen-widget-core.umd.js +614 -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 +21735 -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/model/screen-widget.config.d.ts +7 -0
- package/core/package.json +10 -2
- package/core/public_api.d.ts +2 -0
- package/core/service/baidu-map.service.d.ts +18 -0
- package/esm2015/bbj-screen-widget.js +120 -0
- package/esm2015/core/bbj-screen-widget-core.js +5 -0
- package/esm2015/core/model/screen-widget.config.js +3 -0
- package/esm2015/core/public_api.js +3 -0
- package/esm2015/core/service/baidu-map.service.js +108 -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/background-events/background-events.component.js +65 -0
- package/esm2015/lib/calendar/calendar-events-child.js +28 -0
- package/esm2015/lib/calendar/calendar.component.js +168 -0
- package/esm2015/lib/calendar/calendar.module.js +32 -0
- package/esm2015/lib/calendar/calendar.util.js +12 -0
- package/esm2015/lib/calendar/events/events.component.js +75 -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 +747 -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 +675 -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 +356 -0
- package/esm2015/lib/gauge-progress/gauge.module.js +22 -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 +343 -0
- package/esm2015/lib/item-swiper/item-swiper.module.js +22 -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 +753 -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 +255 -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 +359 -0
- package/esm2015/lib/select/select.module.js +22 -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 +601 -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 +140 -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 +40 -0
- package/fesm2015/bbj-screen-widget-core.js +114 -0
- package/fesm2015/bbj-screen-widget-core.js.map +1 -0
- package/fesm2015/bbj-screen-widget.js +20633 -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/background-events/background-events.component.d.ts +10 -0
- package/lib/calendar/calendar-events-child.d.ts +12 -0
- package/lib/calendar/calendar.component.d.ts +27 -0
- package/lib/calendar/calendar.module.d.ts +4 -0
- package/lib/calendar/calendar.util.d.ts +6 -0
- package/lib/calendar/events/events.component.d.ts +13 -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 +72 -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 +93 -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 +5 -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 +5 -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 +49 -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 +24 -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 +37 -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} +35 -46
- package/core/src/public_api.ts +0 -1
- 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/background-events/background-events.component.html +0 -0
- package/src/lib/calendar/background-events/background-events.component.less +0 -0
- package/src/lib/calendar/background-events/background-events.component.spec.ts +0 -25
- package/src/lib/calendar/background-events/background-events.component.ts +0 -51
- package/src/lib/calendar/calendar-events-child.ts +0 -27
- package/src/lib/calendar/calendar.component.html +0 -2
- 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 -151
- package/src/lib/calendar/calendar.module.ts +0 -27
- package/src/lib/calendar/calendar.util.ts +0 -14
- package/src/lib/calendar/events/events.component.html +0 -0
- package/src/lib/calendar/events/events.component.less +0 -0
- package/src/lib/calendar/events/events.component.spec.ts +0 -25
- package/src/lib/calendar/events/events.component.ts +0 -61
- 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 -689
- 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 -69
- 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 -652
- 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 -293
- package/src/lib/gauge-progress/gauge.module.ts +0 -17
- 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 -277
- package/src/lib/item-swiper/item-swiper.module.ts +0 -17
- 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 -11
- 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 -690
- 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 -219
- 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 -30
- package/src/lib/select/select.component.less +0 -117
- package/src/lib/select/select.component.spec.ts +0 -25
- package/src/lib/select/select.component.ts +0 -297
- package/src/lib/select/select.module.ts +0 -18
- 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 -115
- 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
|
@@ -0,0 +1,753 @@
|
|
|
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
|
+
Somalia: '索马里',
|
|
43
|
+
Liechtenstein: '列支敦士登',
|
|
44
|
+
Morocco: '摩洛哥',
|
|
45
|
+
'W. Sahara': '西撒哈拉',
|
|
46
|
+
Serbia: '塞尔维亚',
|
|
47
|
+
Afghanistan: '阿富汗',
|
|
48
|
+
Angola: '安哥拉',
|
|
49
|
+
Albania: '阿尔巴尼亚',
|
|
50
|
+
Aland: '奥兰群岛',
|
|
51
|
+
Andorra: '安道尔',
|
|
52
|
+
'United Arab Emirates': '阿拉伯联合酋长国',
|
|
53
|
+
Argentina: '阿根廷',
|
|
54
|
+
Armenia: '亚美尼亚',
|
|
55
|
+
'American Samoa': '美属萨摩亚',
|
|
56
|
+
'Fr. S. Antarctic Lands': '法属南部领地',
|
|
57
|
+
'Antigua and Barb.': '安提瓜和巴布达',
|
|
58
|
+
Australia: '澳大利亚',
|
|
59
|
+
Austria: '奥地利',
|
|
60
|
+
Azerbaijan: '阿塞拜疆',
|
|
61
|
+
Burundi: '布隆迪',
|
|
62
|
+
Belgium: '比利时',
|
|
63
|
+
Benin: '贝宁',
|
|
64
|
+
'Burkina Faso': '布基纳法索',
|
|
65
|
+
Bangladesh: '孟加拉国',
|
|
66
|
+
Bulgaria: '保加利亚',
|
|
67
|
+
Bahrain: '巴林',
|
|
68
|
+
Bahamas: '巴哈马',
|
|
69
|
+
'Bosnia and Herz.': '波斯尼亚和黑塞哥维那',
|
|
70
|
+
Belarus: '白俄罗斯',
|
|
71
|
+
Belize: '伯利兹',
|
|
72
|
+
Bermuda: '百慕大',
|
|
73
|
+
Bolivia: '玻利维亚',
|
|
74
|
+
Brazil: '巴西',
|
|
75
|
+
Barbados: '巴巴多斯',
|
|
76
|
+
Brunei: '文莱',
|
|
77
|
+
Bhutan: '不丹',
|
|
78
|
+
Botswana: '博茨瓦纳',
|
|
79
|
+
'Central African Rep.': '中非共和国',
|
|
80
|
+
Canada: '加拿大',
|
|
81
|
+
Switzerland: '瑞士',
|
|
82
|
+
Chile: '智利',
|
|
83
|
+
China: '中国',
|
|
84
|
+
"Côte d'Ivoire": '科特迪瓦',
|
|
85
|
+
Cameroon: '喀麦隆',
|
|
86
|
+
'Dem. Rep. Congo': '刚果(金)',
|
|
87
|
+
Congo: '刚果(布)',
|
|
88
|
+
Colombia: '哥伦比亚',
|
|
89
|
+
Comoros: '科摩罗',
|
|
90
|
+
'Cape Verde': '佛得角',
|
|
91
|
+
'Costa Rica': '哥斯达黎加',
|
|
92
|
+
Cuba: '古巴',
|
|
93
|
+
Curaçao: '库拉索',
|
|
94
|
+
'Cayman Is.': '开曼群岛',
|
|
95
|
+
'N. Cyprus': '北塞浦路斯',
|
|
96
|
+
Cyprus: '塞浦路斯',
|
|
97
|
+
'Czech Rep.': '捷克',
|
|
98
|
+
Germany: '德国',
|
|
99
|
+
Djibouti: '吉布提',
|
|
100
|
+
Dominica: '多米尼克',
|
|
101
|
+
Denmark: '丹麦',
|
|
102
|
+
'Dominican Rep.': '多米尼加',
|
|
103
|
+
Algeria: '阿尔及利亚',
|
|
104
|
+
Ecuador: '厄瓜多尔',
|
|
105
|
+
Egypt: '埃及',
|
|
106
|
+
Eritrea: '厄立特里亚',
|
|
107
|
+
Spain: '西班牙',
|
|
108
|
+
Estonia: '爱沙尼亚',
|
|
109
|
+
Ethiopia: '埃塞俄比亚',
|
|
110
|
+
Finland: '芬兰',
|
|
111
|
+
Fiji: '斐济',
|
|
112
|
+
'Falkland Is.': '福克兰群岛',
|
|
113
|
+
France: '法国',
|
|
114
|
+
'Faeroe Is.': '法罗群岛',
|
|
115
|
+
Micronesia: '密克罗尼西亚',
|
|
116
|
+
Gabon: '加蓬',
|
|
117
|
+
'United Kingdom': '英国',
|
|
118
|
+
Georgia: '格鲁吉亚',
|
|
119
|
+
Ghana: '加纳',
|
|
120
|
+
Guinea: '几内亚',
|
|
121
|
+
Gambia: '冈比亚',
|
|
122
|
+
'Guinea-Bissau': '几内亚比绍',
|
|
123
|
+
'Eq. Guinea': '赤道几内亚',
|
|
124
|
+
Greece: '希腊',
|
|
125
|
+
Grenada: '格林纳达',
|
|
126
|
+
Greenland: '格陵兰',
|
|
127
|
+
Guatemala: '危地马拉',
|
|
128
|
+
Guam: '关岛',
|
|
129
|
+
Guyana: '圭亚那',
|
|
130
|
+
'Heard I. and McDonald Is.': '赫德岛和麦克唐纳群岛',
|
|
131
|
+
Honduras: '洪都拉斯',
|
|
132
|
+
Croatia: '克罗地亚',
|
|
133
|
+
Haiti: '海地',
|
|
134
|
+
Hungary: '匈牙利',
|
|
135
|
+
Indonesia: '印度尼西亚',
|
|
136
|
+
'Isle of Man': '马恩岛',
|
|
137
|
+
India: '印度',
|
|
138
|
+
'Br. Indian Ocean Ter.': '英属印度洋领地',
|
|
139
|
+
Ireland: '爱尔兰',
|
|
140
|
+
Iran: '伊朗',
|
|
141
|
+
Iraq: '伊拉克',
|
|
142
|
+
Iceland: '冰岛',
|
|
143
|
+
Israel: '以色列',
|
|
144
|
+
Italy: '意大利',
|
|
145
|
+
Jamaica: '牙买加',
|
|
146
|
+
Jersey: '泽西岛',
|
|
147
|
+
Jordan: '约旦',
|
|
148
|
+
Japan: '日本',
|
|
149
|
+
'Siachen Glacier': '锡亚琴冰川',
|
|
150
|
+
Kazakhstan: '哈萨克斯坦',
|
|
151
|
+
Kenya: '肯尼亚',
|
|
152
|
+
Kyrgyzstan: '吉尔吉斯斯坦',
|
|
153
|
+
Cambodia: '柬埔寨',
|
|
154
|
+
Kiribati: '基里巴斯',
|
|
155
|
+
Korea: '韩国',
|
|
156
|
+
Kuwait: '科威特',
|
|
157
|
+
'Lao PDR': '老挝',
|
|
158
|
+
Lebanon: '黎巴嫩',
|
|
159
|
+
Liberia: '利比里亚',
|
|
160
|
+
Libya: '利比亚',
|
|
161
|
+
'Saint Lucia': '圣卢西亚',
|
|
162
|
+
'Sri Lanka': '斯里兰卡',
|
|
163
|
+
Lesotho: '莱索托',
|
|
164
|
+
Lithuania: '立陶宛',
|
|
165
|
+
Luxembourg: '卢森堡',
|
|
166
|
+
Latvia: '拉脱维亚',
|
|
167
|
+
Moldova: '摩尔多瓦',
|
|
168
|
+
Madagascar: '马达加斯加',
|
|
169
|
+
Mexico: '墨西哥',
|
|
170
|
+
Macedonia: '北马其顿',
|
|
171
|
+
Mali: '马里',
|
|
172
|
+
Malta: '马耳他',
|
|
173
|
+
Myanmar: '缅甸',
|
|
174
|
+
Montenegro: '黑山',
|
|
175
|
+
Mongolia: '蒙古',
|
|
176
|
+
'N. Mariana Is.': '北马里亚纳群岛',
|
|
177
|
+
Mozambique: '莫桑比克',
|
|
178
|
+
Mauritania: '毛里塔尼亚',
|
|
179
|
+
Montserrat: '蒙特塞拉特',
|
|
180
|
+
Mauritius: '毛里求斯',
|
|
181
|
+
Malawi: '马拉维',
|
|
182
|
+
Malaysia: '马来西亚',
|
|
183
|
+
Namibia: '纳米比亚',
|
|
184
|
+
'New Caledonia': '新喀里多尼亚',
|
|
185
|
+
Niger: '尼日尔',
|
|
186
|
+
Nigeria: '尼日利亚',
|
|
187
|
+
Nicaragua: '尼加拉瓜',
|
|
188
|
+
Niue: '纽埃',
|
|
189
|
+
Netherlands: '荷兰',
|
|
190
|
+
Norway: '挪威',
|
|
191
|
+
Nepal: '尼泊尔',
|
|
192
|
+
'New Zealand': '新西兰',
|
|
193
|
+
Oman: '阿曼',
|
|
194
|
+
Pakistan: '巴基斯坦',
|
|
195
|
+
Panama: '巴拿马',
|
|
196
|
+
Peru: '秘鲁',
|
|
197
|
+
Philippines: '菲律宾',
|
|
198
|
+
Palau: '帕劳',
|
|
199
|
+
'Papua New Guinea': '巴布亚新几内亚',
|
|
200
|
+
Poland: '波兰',
|
|
201
|
+
'Puerto Rico': '波多黎各',
|
|
202
|
+
'Dem. Rep. Korea': '朝鲜',
|
|
203
|
+
Portugal: '葡萄牙',
|
|
204
|
+
Paraguay: '巴拉圭',
|
|
205
|
+
Palestine: '巴勒斯坦',
|
|
206
|
+
'Fr. Polynesia': '法属波利尼西亚',
|
|
207
|
+
Qatar: '卡塔尔',
|
|
208
|
+
Romania: '罗马尼亚',
|
|
209
|
+
Russia: '俄罗斯',
|
|
210
|
+
Rwanda: '卢旺达',
|
|
211
|
+
'Saudi Arabia': '沙特阿拉伯',
|
|
212
|
+
Sudan: '苏丹',
|
|
213
|
+
'S. Sudan': '南苏丹',
|
|
214
|
+
Senegal: '塞内加尔',
|
|
215
|
+
Singapore: '新加坡',
|
|
216
|
+
'S. Geo. and S. Sandw. Is.': '南乔治亚岛和南桑威奇群岛',
|
|
217
|
+
'Saint Helena': '圣赫勒拿',
|
|
218
|
+
'Solomon Is.': '所罗门群岛',
|
|
219
|
+
'Sierra Leone': '塞拉利昂',
|
|
220
|
+
'El Salvador': '萨尔瓦多',
|
|
221
|
+
'St. Pierre and Miquelon': '圣皮埃尔和密克隆',
|
|
222
|
+
'São Tomé and Principe': '圣多美和普林西比',
|
|
223
|
+
Suriname: '苏里南',
|
|
224
|
+
Slovakia: '斯洛伐克',
|
|
225
|
+
Slovenia: '斯洛文尼亚',
|
|
226
|
+
Sweden: '瑞典',
|
|
227
|
+
Swaziland: '斯威士兰',
|
|
228
|
+
Seychelles: '塞舌尔',
|
|
229
|
+
Syria: '叙利亚',
|
|
230
|
+
'Turks and Caicos Is.': '特克斯和凯科斯群岛',
|
|
231
|
+
Chad: '乍得',
|
|
232
|
+
Togo: '多哥',
|
|
233
|
+
Thailand: '泰国',
|
|
234
|
+
Tajikistan: '塔吉克斯坦',
|
|
235
|
+
Turkmenistan: '土库曼斯坦',
|
|
236
|
+
'Timor-Leste': '东帝汶',
|
|
237
|
+
Tonga: '汤加',
|
|
238
|
+
'Trinidad and Tobago': '特立尼达和多巴哥',
|
|
239
|
+
Tunisia: '突尼斯',
|
|
240
|
+
Turkey: '土耳其',
|
|
241
|
+
Tanzania: '坦桑尼亚',
|
|
242
|
+
Uganda: '乌干达',
|
|
243
|
+
Ukraine: '乌克兰',
|
|
244
|
+
Uruguay: '乌拉圭',
|
|
245
|
+
'United States': '美国',
|
|
246
|
+
Uzbekistan: '乌兹别克斯坦',
|
|
247
|
+
'St. Vin. and Gren.': '圣文森特和格林纳丁斯',
|
|
248
|
+
Venezuela: '委内瑞拉',
|
|
249
|
+
'U.S. Virgin Is.': '美属维尔京群岛',
|
|
250
|
+
Vietnam: '越南',
|
|
251
|
+
Vanuatu: '瓦努阿图',
|
|
252
|
+
Samoa: '萨摩亚',
|
|
253
|
+
Yemen: '也门',
|
|
254
|
+
'South Africa': '南非',
|
|
255
|
+
Zambia: '赞比亚',
|
|
256
|
+
Zimbabwe: '津巴布韦',
|
|
257
|
+
};
|
|
258
|
+
this._children = [];
|
|
259
|
+
this.loadedMap = {};
|
|
260
|
+
this.stack = [];
|
|
261
|
+
this.renderer = 'svg';
|
|
262
|
+
}
|
|
263
|
+
ngOnChanges(changes) {
|
|
264
|
+
if (changes.data) {
|
|
265
|
+
if (this.data && this.data[0]) {
|
|
266
|
+
this.mapStyle = this.data[0].name;
|
|
267
|
+
this.stack.push(this.mapStyle);
|
|
268
|
+
}
|
|
269
|
+
this.reloadMap();
|
|
270
|
+
}
|
|
271
|
+
}
|
|
272
|
+
ngOnInit() {
|
|
273
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
274
|
+
// await this.commonService.getMap();
|
|
275
|
+
// await import('echarts/dist/extension/bmap.js');
|
|
276
|
+
this.provinces = (yield this.http.get('/assets/mapListItem.json').toPromise());
|
|
277
|
+
// const map = echarts.getMap(this.mapStyle);
|
|
278
|
+
// if (map == null) {
|
|
279
|
+
// const data = await this.http.get('assets/echarts/map/json/' + this.mapStyle + '.json').toPromise();
|
|
280
|
+
// echarts.registerMap(this.mapStyle, data);
|
|
281
|
+
// }
|
|
282
|
+
// this.hasMap = true;
|
|
283
|
+
// this.chartInit();
|
|
284
|
+
});
|
|
285
|
+
}
|
|
286
|
+
ngOnDestroy() {
|
|
287
|
+
if (this.ngxEcharts) {
|
|
288
|
+
this.ngxEcharts.initChart = () => { };
|
|
289
|
+
}
|
|
290
|
+
}
|
|
291
|
+
chartInit() {
|
|
292
|
+
var _a, _b, _c, _d, _e;
|
|
293
|
+
// this.loadMap(this.mapStyle).then((data) => {
|
|
294
|
+
let series = [];
|
|
295
|
+
this.visualMap = [];
|
|
296
|
+
this.renderer = 'svg';
|
|
297
|
+
this._children.forEach((child) => {
|
|
298
|
+
if (child.type === 'visual') {
|
|
299
|
+
// series = child.series;
|
|
300
|
+
// series[0].mapType = this.mapStyle;
|
|
301
|
+
if (child.visualMap && child.item.length) {
|
|
302
|
+
if (child.visualMap2) {
|
|
303
|
+
this.visualMap.push(child.visualMap2);
|
|
304
|
+
}
|
|
305
|
+
this.visualMap.push(child.visualMap);
|
|
306
|
+
child.visualMap.seriesIndex = series.length;
|
|
307
|
+
}
|
|
308
|
+
}
|
|
309
|
+
if (Array.isArray(child.item)) {
|
|
310
|
+
series = [...series, ...child.item];
|
|
311
|
+
}
|
|
312
|
+
else {
|
|
313
|
+
series = [...series, child.item];
|
|
314
|
+
}
|
|
315
|
+
});
|
|
316
|
+
series.forEach((layer, index) => {
|
|
317
|
+
if (layer.type === 'lines') {
|
|
318
|
+
delete layer.coordinateSystem;
|
|
319
|
+
// 飞线层不支持svg渲染
|
|
320
|
+
this.renderer = 'canvas';
|
|
321
|
+
}
|
|
322
|
+
if (layer.type === 'scatter') {
|
|
323
|
+
layer.coordinateSystem = 'geo';
|
|
324
|
+
// layer.symbolSize = '10';
|
|
325
|
+
}
|
|
326
|
+
// if (layer.type === 'map') {
|
|
327
|
+
// this.visualMap.forEach((visualMap) => {
|
|
328
|
+
// visualMap['seriesIndex'] = index;
|
|
329
|
+
// });
|
|
330
|
+
// }
|
|
331
|
+
});
|
|
332
|
+
const textStyle = getEchartsTextStyle(this.areaNamefont);
|
|
333
|
+
this.chartOption = {
|
|
334
|
+
tooltip: {
|
|
335
|
+
trigger: 'item',
|
|
336
|
+
triggerOn: this.triggerType ? this.triggerType : 'mousemove',
|
|
337
|
+
},
|
|
338
|
+
geo: {
|
|
339
|
+
label: {
|
|
340
|
+
normal: {
|
|
341
|
+
//静态的时候展示样式
|
|
342
|
+
show: this.showAreaName,
|
|
343
|
+
textStyle,
|
|
344
|
+
},
|
|
345
|
+
emphasis: {
|
|
346
|
+
show: this.showAreaName,
|
|
347
|
+
textStyle,
|
|
348
|
+
},
|
|
349
|
+
},
|
|
350
|
+
selectedMode: this.selectedMode,
|
|
351
|
+
select: {
|
|
352
|
+
label: {
|
|
353
|
+
show: this.showAreaName,
|
|
354
|
+
textStyle: {
|
|
355
|
+
color: ((_a = this.areaNamefont) === null || _a === void 0 ? void 0 : _a.color) || '#fff',
|
|
356
|
+
fontSize: ((_b = this.areaNamefont) === null || _b === void 0 ? void 0 : _b.size) || 12,
|
|
357
|
+
fontFamily: ((_c = this.areaNamefont) === null || _c === void 0 ? void 0 : _c.family) || '',
|
|
358
|
+
lineHeight: ((_d = this.areaNamefont) === null || _d === void 0 ? void 0 : _d.lineHeight) || 12,
|
|
359
|
+
},
|
|
360
|
+
},
|
|
361
|
+
itemStyle: {
|
|
362
|
+
areaColor: {
|
|
363
|
+
type: 'radial',
|
|
364
|
+
x: 0.5,
|
|
365
|
+
y: 0.5,
|
|
366
|
+
r: 0.8,
|
|
367
|
+
colorStops: [
|
|
368
|
+
{
|
|
369
|
+
offset: 0,
|
|
370
|
+
color: this.selectColorStart ? this.selectColorStart : this._areaColor,
|
|
371
|
+
},
|
|
372
|
+
{
|
|
373
|
+
offset: 1,
|
|
374
|
+
color: this.selectColorEnd ? this.selectColorEnd : this._areaColor,
|
|
375
|
+
},
|
|
376
|
+
],
|
|
377
|
+
globalCoord: false,
|
|
378
|
+
},
|
|
379
|
+
borderColor: this._borderColor,
|
|
380
|
+
},
|
|
381
|
+
},
|
|
382
|
+
itemStyle: {
|
|
383
|
+
normal: {
|
|
384
|
+
// areaColor: this.areaColor,
|
|
385
|
+
borderColor: this.borderColor,
|
|
386
|
+
opacity: 1,
|
|
387
|
+
areaColor: {
|
|
388
|
+
type: 'radial',
|
|
389
|
+
x: 0.5,
|
|
390
|
+
y: 0.5,
|
|
391
|
+
r: 0.8,
|
|
392
|
+
colorStops: [
|
|
393
|
+
{
|
|
394
|
+
offset: 0,
|
|
395
|
+
color: this.mapColorStart ? this.mapColorStart : this.areaColor,
|
|
396
|
+
},
|
|
397
|
+
{
|
|
398
|
+
offset: 1,
|
|
399
|
+
color: this.mapColorEnd ? this.mapColorEnd : this.areaColor,
|
|
400
|
+
},
|
|
401
|
+
],
|
|
402
|
+
globalCoord: false,
|
|
403
|
+
},
|
|
404
|
+
shadowColor: this.shadowColor,
|
|
405
|
+
shadowBlur: this.shadowWidth,
|
|
406
|
+
shadowOffsetX: -2,
|
|
407
|
+
shadowOffsetY: 2,
|
|
408
|
+
},
|
|
409
|
+
emphasis: {
|
|
410
|
+
areaColor: {
|
|
411
|
+
type: 'radial',
|
|
412
|
+
x: 0.5,
|
|
413
|
+
y: 0.5,
|
|
414
|
+
r: 0.8,
|
|
415
|
+
colorStops: [
|
|
416
|
+
{
|
|
417
|
+
offset: 0,
|
|
418
|
+
color: this.selectColorStart ? this.selectColorStart : this._areaColor,
|
|
419
|
+
},
|
|
420
|
+
{
|
|
421
|
+
offset: 1,
|
|
422
|
+
color: this.selectColorEnd ? this.selectColorEnd : this._areaColor,
|
|
423
|
+
},
|
|
424
|
+
],
|
|
425
|
+
globalCoord: false,
|
|
426
|
+
},
|
|
427
|
+
borderColor: this._borderColor,
|
|
428
|
+
},
|
|
429
|
+
},
|
|
430
|
+
map: this.mapStyle,
|
|
431
|
+
roam: this.zoomSwitch,
|
|
432
|
+
nameMap: this.nameMap,
|
|
433
|
+
zoom: this.zoom,
|
|
434
|
+
},
|
|
435
|
+
series,
|
|
436
|
+
};
|
|
437
|
+
if ((_e = this.visualMap) === null || _e === void 0 ? void 0 : _e.length) {
|
|
438
|
+
this.chartOption.visualMap = this.visualMap;
|
|
439
|
+
}
|
|
440
|
+
// });
|
|
441
|
+
}
|
|
442
|
+
childInit(child) {
|
|
443
|
+
if (child.id) {
|
|
444
|
+
const childIndex = this._children.findIndex((s) => s.id === child.id);
|
|
445
|
+
if (childIndex > -1) {
|
|
446
|
+
this._children[childIndex] = child;
|
|
447
|
+
}
|
|
448
|
+
else {
|
|
449
|
+
this._children.push(child);
|
|
450
|
+
}
|
|
451
|
+
this.chartInit();
|
|
452
|
+
}
|
|
453
|
+
}
|
|
454
|
+
deleteChild(childId) {
|
|
455
|
+
if (childId) {
|
|
456
|
+
const childIndex = this._children.findIndex((s) => s.id === childId);
|
|
457
|
+
// this._children.forEach((element) => {
|
|
458
|
+
// if (childId === element.id) {
|
|
459
|
+
// this.visualMap = null;
|
|
460
|
+
// }
|
|
461
|
+
// });
|
|
462
|
+
if (childIndex > -1) {
|
|
463
|
+
this._children.splice(childIndex, 1);
|
|
464
|
+
this.chartInit();
|
|
465
|
+
}
|
|
466
|
+
}
|
|
467
|
+
}
|
|
468
|
+
// loadMap(name: string) {
|
|
469
|
+
// let loadMapPromise = this.loadedMap[name];
|
|
470
|
+
// if (!loadMapPromise) {
|
|
471
|
+
// loadMapPromise = this.http.get('assets/echarts/map/json/' + name + '.json').toPromise();
|
|
472
|
+
// this.loadedMap[name] = loadMapPromise;
|
|
473
|
+
// }
|
|
474
|
+
// return loadMapPromise;
|
|
475
|
+
// }
|
|
476
|
+
reloadMap() {
|
|
477
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
478
|
+
const mapStyle = this.mapStyle;
|
|
479
|
+
const map = echarts.getMap(mapStyle);
|
|
480
|
+
if (map == null) {
|
|
481
|
+
const data = yield this.http.get('assets/echarts/map/json/' + mapStyle + '.json').toPromise();
|
|
482
|
+
echarts.registerMap(mapStyle, data);
|
|
483
|
+
}
|
|
484
|
+
this.hasMap = true;
|
|
485
|
+
this.chartInit();
|
|
486
|
+
});
|
|
487
|
+
}
|
|
488
|
+
markClick(event) {
|
|
489
|
+
return __awaiter(this, void 0, void 0, function* () {
|
|
490
|
+
let lng;
|
|
491
|
+
let lat;
|
|
492
|
+
if (event.seriesId) {
|
|
493
|
+
lng = event.value[0];
|
|
494
|
+
lat = event.value[1];
|
|
495
|
+
const child = this._children.find((s) => event.seriesId.startsWith(s.id));
|
|
496
|
+
if (child && child.onClick) {
|
|
497
|
+
child.onClick(event);
|
|
498
|
+
}
|
|
499
|
+
}
|
|
500
|
+
else {
|
|
501
|
+
const map = echarts.getMap(this.mapStyle);
|
|
502
|
+
if (map) {
|
|
503
|
+
for (const feature of map.geoJson.features) {
|
|
504
|
+
const properties = feature.properties;
|
|
505
|
+
if (properties.name === event.name) {
|
|
506
|
+
if (properties.cp) {
|
|
507
|
+
lng = properties.cp[0];
|
|
508
|
+
lat = properties.cp[1];
|
|
509
|
+
}
|
|
510
|
+
else if (properties.center) {
|
|
511
|
+
lng = properties.center[0];
|
|
512
|
+
lat = properties.center[1];
|
|
513
|
+
}
|
|
514
|
+
else {
|
|
515
|
+
console.log(properties);
|
|
516
|
+
}
|
|
517
|
+
break;
|
|
518
|
+
}
|
|
519
|
+
}
|
|
520
|
+
}
|
|
521
|
+
const province = this.provinces.find((element) => element.label === event.name);
|
|
522
|
+
if (province) {
|
|
523
|
+
this.stack.push(this.mapStyle);
|
|
524
|
+
this.mapStyle = province.value;
|
|
525
|
+
this.reloadMap();
|
|
526
|
+
}
|
|
527
|
+
}
|
|
528
|
+
this.areaClick.emit({ name: event.name, lng, lat });
|
|
529
|
+
// if(event.componentSubType!=null && event.componentSubType==='scatter'){
|
|
530
|
+
// const obj=event.data;
|
|
531
|
+
// console.log(event);
|
|
532
|
+
// this.markerTierClick.emit({
|
|
533
|
+
// address: obj.name,
|
|
534
|
+
// information: '',
|
|
535
|
+
// group: '',
|
|
536
|
+
// lng: obj.value[0],
|
|
537
|
+
// lat: obj.value[1],
|
|
538
|
+
// });
|
|
539
|
+
// }
|
|
540
|
+
});
|
|
541
|
+
}
|
|
542
|
+
rollback(event) {
|
|
543
|
+
event.preventDefault();
|
|
544
|
+
if (this.stack != null && this.stack.length != 0) {
|
|
545
|
+
this.mapStyle = this.stack.pop();
|
|
546
|
+
this.reloadMap();
|
|
547
|
+
}
|
|
548
|
+
}
|
|
549
|
+
getTextStyle() { }
|
|
550
|
+
};
|
|
551
|
+
PlanimetricMap2dComponent.decorators = [
|
|
552
|
+
{ type: Component, args: [{
|
|
553
|
+
selector: 'sc-planimetric-map2d',
|
|
554
|
+
template: "<ng-template *ngFor=\"let child of children\" widget-host [widget]=\"child\"></ng-template>\n<div\n echarts\n *ngIf=\"hasMap\"\n [options]=\"chartOption\"\n class=\"demo-chart\"\n (chartClick)=\"markClick($event)\"\n (contextmenu)=\"rollback($event)\"\n [initOpts]=\"{ renderer: renderer}\"\n></div>\n<!-- -->\n",
|
|
555
|
+
providers: [{ provide: ParentContainerComponent, useExisting: forwardRef(() => PlanimetricMap2dComponent_1) }],
|
|
556
|
+
styles: [".demo-chart,:host{height:100%}:host{display:block;width:100%}"]
|
|
557
|
+
},] }
|
|
558
|
+
];
|
|
559
|
+
PlanimetricMap2dComponent.ctorParameters = () => [
|
|
560
|
+
{ type: HttpClient }
|
|
561
|
+
];
|
|
562
|
+
PlanimetricMap2dComponent.propDecorators = {
|
|
563
|
+
ngxEcharts: [{ type: ViewChild, args: [NgxEchartsDirective,] }]
|
|
564
|
+
};
|
|
565
|
+
__decorate([
|
|
566
|
+
Property('地图样式', {
|
|
567
|
+
ui: {
|
|
568
|
+
widget: 'myUrlSelect',
|
|
569
|
+
url: '/assets/mapListItem.json',
|
|
570
|
+
},
|
|
571
|
+
}),
|
|
572
|
+
__metadata("design:type", Object)
|
|
573
|
+
], PlanimetricMap2dComponent.prototype, "mapStyle", void 0);
|
|
574
|
+
__decorate([
|
|
575
|
+
Property('地图缩放', {
|
|
576
|
+
ui: { widget: 'myRange', min: 1, max: 40, step: 1 },
|
|
577
|
+
}),
|
|
578
|
+
__metadata("design:type", Object)
|
|
579
|
+
], PlanimetricMap2dComponent.prototype, "zoom", void 0);
|
|
580
|
+
__decorate([
|
|
581
|
+
Property('区域背景', {
|
|
582
|
+
ui: {
|
|
583
|
+
widget: 'myColor',
|
|
584
|
+
example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],
|
|
585
|
+
},
|
|
586
|
+
}),
|
|
587
|
+
__metadata("design:type", Object)
|
|
588
|
+
], PlanimetricMap2dComponent.prototype, "areaColor", void 0);
|
|
589
|
+
__decorate([
|
|
590
|
+
Property('区域描边', {
|
|
591
|
+
ui: {
|
|
592
|
+
widget: 'myColor',
|
|
593
|
+
example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],
|
|
594
|
+
},
|
|
595
|
+
}),
|
|
596
|
+
__metadata("design:type", Object)
|
|
597
|
+
], PlanimetricMap2dComponent.prototype, "borderColor", void 0);
|
|
598
|
+
__decorate([
|
|
599
|
+
Property('移动高亮', {
|
|
600
|
+
ui: {
|
|
601
|
+
widget: 'myColor',
|
|
602
|
+
example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],
|
|
603
|
+
},
|
|
604
|
+
}),
|
|
605
|
+
__metadata("design:type", Object)
|
|
606
|
+
], PlanimetricMap2dComponent.prototype, "_areaColor", void 0);
|
|
607
|
+
__decorate([
|
|
608
|
+
Property('地区字体', { ui: { widget: 'myFont' } }),
|
|
609
|
+
__metadata("design:type", Object)
|
|
610
|
+
], PlanimetricMap2dComponent.prototype, "areaNamefont", void 0);
|
|
611
|
+
__decorate([
|
|
612
|
+
Property('显示地名', {
|
|
613
|
+
type: 'boolean',
|
|
614
|
+
}),
|
|
615
|
+
__metadata("design:type", Object)
|
|
616
|
+
], PlanimetricMap2dComponent.prototype, "showAreaName", void 0);
|
|
617
|
+
__decorate([
|
|
618
|
+
Property('触发方式', {
|
|
619
|
+
ui: { widget: 'select' },
|
|
620
|
+
enum: [
|
|
621
|
+
{ label: '点击', value: 'click' },
|
|
622
|
+
{ label: '鼠标移动', value: 'mousemove' },
|
|
623
|
+
],
|
|
624
|
+
}),
|
|
625
|
+
__metadata("design:type", Object)
|
|
626
|
+
], PlanimetricMap2dComponent.prototype, "triggerType", void 0);
|
|
627
|
+
__decorate([
|
|
628
|
+
Property('选中方式', {
|
|
629
|
+
ui: { widget: 'select' },
|
|
630
|
+
enum: [
|
|
631
|
+
{ label: '默认', value: '' },
|
|
632
|
+
{ label: '单选', value: 'single' },
|
|
633
|
+
{ label: '多选', value: 'multiple' },
|
|
634
|
+
],
|
|
635
|
+
}),
|
|
636
|
+
__metadata("design:type", Object)
|
|
637
|
+
], PlanimetricMap2dComponent.prototype, "selectedMode", void 0);
|
|
638
|
+
__decorate([
|
|
639
|
+
Property('缩放开关', {
|
|
640
|
+
type: 'boolean',
|
|
641
|
+
}),
|
|
642
|
+
__metadata("design:type", Object)
|
|
643
|
+
], PlanimetricMap2dComponent.prototype, "zoomSwitch", void 0);
|
|
644
|
+
__decorate([
|
|
645
|
+
Property('高亮描边', {
|
|
646
|
+
ui: {
|
|
647
|
+
widget: 'myColor',
|
|
648
|
+
example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],
|
|
649
|
+
},
|
|
650
|
+
}),
|
|
651
|
+
__metadata("design:type", Object)
|
|
652
|
+
], PlanimetricMap2dComponent.prototype, "_borderColor", void 0);
|
|
653
|
+
__decorate([
|
|
654
|
+
Property('阴影颜色', {
|
|
655
|
+
ui: {
|
|
656
|
+
widget: 'myColor',
|
|
657
|
+
example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],
|
|
658
|
+
},
|
|
659
|
+
}),
|
|
660
|
+
__metadata("design:type", Object)
|
|
661
|
+
], PlanimetricMap2dComponent.prototype, "shadowColor", void 0);
|
|
662
|
+
__decorate([
|
|
663
|
+
Property('边框粗细', {
|
|
664
|
+
type: 'number',
|
|
665
|
+
}),
|
|
666
|
+
__metadata("design:type", Object)
|
|
667
|
+
], PlanimetricMap2dComponent.prototype, "shadowWidth", void 0);
|
|
668
|
+
__decorate([
|
|
669
|
+
Property('地图渐变开始', {
|
|
670
|
+
ui: {
|
|
671
|
+
widget: 'myColor',
|
|
672
|
+
example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],
|
|
673
|
+
},
|
|
674
|
+
}),
|
|
675
|
+
__metadata("design:type", Object)
|
|
676
|
+
], PlanimetricMap2dComponent.prototype, "mapColorStart", void 0);
|
|
677
|
+
__decorate([
|
|
678
|
+
Property('地图渐变结束', {
|
|
679
|
+
ui: {
|
|
680
|
+
widget: 'myColor',
|
|
681
|
+
example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],
|
|
682
|
+
},
|
|
683
|
+
}),
|
|
684
|
+
__metadata("design:type", Object)
|
|
685
|
+
], PlanimetricMap2dComponent.prototype, "mapColorEnd", void 0);
|
|
686
|
+
__decorate([
|
|
687
|
+
Property('选中渐变开始', {
|
|
688
|
+
ui: {
|
|
689
|
+
widget: 'myColor',
|
|
690
|
+
example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],
|
|
691
|
+
},
|
|
692
|
+
}),
|
|
693
|
+
__metadata("design:type", Object)
|
|
694
|
+
], PlanimetricMap2dComponent.prototype, "selectColorStart", void 0);
|
|
695
|
+
__decorate([
|
|
696
|
+
Property('选中渐变结束', {
|
|
697
|
+
ui: {
|
|
698
|
+
widget: 'myColor',
|
|
699
|
+
example: ['#D0021B', '#F5A623', '#F8E71C', '#50E3C2', '#3285FF', '#B45FFF', '#9B9B9B', '#333333'],
|
|
700
|
+
},
|
|
701
|
+
}),
|
|
702
|
+
__metadata("design:type", Object)
|
|
703
|
+
], PlanimetricMap2dComponent.prototype, "selectColorEnd", void 0);
|
|
704
|
+
__decorate([
|
|
705
|
+
Data({
|
|
706
|
+
properties: {
|
|
707
|
+
name: { type: 'string', title: '地名' },
|
|
708
|
+
lng: { type: 'number', title: '经度' },
|
|
709
|
+
lat: { type: 'string', title: '纬度' },
|
|
710
|
+
},
|
|
711
|
+
}),
|
|
712
|
+
__metadata("design:type", Array)
|
|
713
|
+
], PlanimetricMap2dComponent.prototype, "data", void 0);
|
|
714
|
+
__decorate([
|
|
715
|
+
DataOutput(['name', 'lng', 'lat']),
|
|
716
|
+
Event('选中', {
|
|
717
|
+
params: {
|
|
718
|
+
properties: {
|
|
719
|
+
name: { type: 'string', title: '值' },
|
|
720
|
+
lng: { type: 'number', title: '经度' },
|
|
721
|
+
lat: { type: 'string', title: '纬度' },
|
|
722
|
+
},
|
|
723
|
+
},
|
|
724
|
+
}),
|
|
725
|
+
__metadata("design:type", Object)
|
|
726
|
+
], PlanimetricMap2dComponent.prototype, "areaClick", void 0);
|
|
727
|
+
PlanimetricMap2dComponent = PlanimetricMap2dComponent_1 = __decorate([
|
|
728
|
+
Widget('2D平面地图', {
|
|
729
|
+
group: 'component',
|
|
730
|
+
image: 'assets/img/screen/2dmap.png',
|
|
731
|
+
icon: 'iconmokuai',
|
|
732
|
+
children: [
|
|
733
|
+
{
|
|
734
|
+
title: '呼吸气泡层',
|
|
735
|
+
type: 'sc-breathing-bubble-layer',
|
|
736
|
+
option: {},
|
|
737
|
+
hidden: true,
|
|
738
|
+
hideChild: true,
|
|
739
|
+
},
|
|
740
|
+
],
|
|
741
|
+
childTypes: [
|
|
742
|
+
'sc-fly-line-layer',
|
|
743
|
+
'sc-breathing-bubble-layer',
|
|
744
|
+
'sc-map2d-polyline-layer',
|
|
745
|
+
'sc-map2d-mark-layer',
|
|
746
|
+
'sc-map2d-visual-layer',
|
|
747
|
+
],
|
|
748
|
+
description: 'hasChildItem',
|
|
749
|
+
}),
|
|
750
|
+
__metadata("design:paramtypes", [HttpClient])
|
|
751
|
+
], PlanimetricMap2dComponent);
|
|
752
|
+
export { PlanimetricMap2dComponent };
|
|
753
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGxhbmltZXRyaWMtbWFwMmQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvc2NyZWVuLXdpZGdldC9zcmMvbGliL3BsYW5pbWV0cmljLW1hcDJkL3BsYW5pbWV0cmljLW1hcDJkLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUFBLE9BQU8sRUFDTCxTQUFTLEVBRVQsVUFBVSxFQUNWLFNBQVMsRUFLVCxZQUFZLEdBQ2IsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLE1BQU0sRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxLQUFLLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM1RSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxnREFBZ0QsQ0FBQztBQUMxRixPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDbEQsT0FBTyxLQUFLLE9BQU8sTUFBTSxTQUFTLENBQUM7QUFDbkMsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBQ2xELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0lBOEJyRCx5QkFBeUIsdUNBQXpCLHlCQUEwQixTQUFRLHdCQUF3QjtJQTBXckUsWUFBc0IsSUFBZ0I7UUFDcEMsS0FBSyxFQUFFLENBQUM7UUFEWSxTQUFJLEdBQUosSUFBSSxDQUFZO1FBbld0QyxhQUFRLEdBQUcsT0FBTyxDQUFDO1FBSW5CLFNBQUksR0FBRyxDQUFDLENBQUM7UUFPVCxjQUFTLEdBQUcsU0FBUyxDQUFDO1FBT3RCLGdCQUFXLEdBQUcsU0FBUyxDQUFDO1FBT3hCLGVBQVUsR0FBRyxTQUFTLENBQUM7UUFFdkIsaUJBQVksR0FBUTtZQUNsQixNQUFNLEVBQUUsRUFBRTtZQUNWLEtBQUssRUFBRSxTQUFTO1lBQ2hCLE1BQU0sRUFBRSxRQUFRO1lBQ2hCLElBQUksRUFBRSxF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QkFDVixNQUFNLEVBQUUsSUFBSTtnQkFDWixTQUFTLEVBQUUsSUFBSTthQUNoQjtTQUNGO1FBQ0QsVUFBVSxFQUFFO1lBQ1YsbUJBQW1CO1lBQ25CLDJCQUEyQjtZQUMzQix5QkFBeUI7WUFDekIscUJBQXFCO1lBQ3JCLHVCQUF1QjtTQUN4QjtRQUNELFdBQVcsRUFBRSxjQUFjO0tBQzVCLENBQUM7cUNBMlc0QixVQUFVO0dBMVczQix5QkFBeUIsQ0Ftb0JyQztTQW5vQlkseUJBQXlCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcclxuICBDb21wb25lbnQsXHJcbiAgT25Jbml0LFxyXG4gIGZvcndhcmRSZWYsXHJcbiAgVmlld0NoaWxkLFxyXG4gIEVsZW1lbnRSZWYsXHJcbiAgT25EZXN0cm95LFxyXG4gIE9uQ2hhbmdlcyxcclxuICBTaW1wbGVDaGFuZ2VzLFxyXG4gIEV2ZW50RW1pdHRlcixcclxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgV2lkZ2V0LCBQcm9wZXJ0eSwgRGF0YSwgRGF0YU91dHB1dCwgRXZlbnQgfSBmcm9tICdiYmotd2lkZ2V0LWJhc2UnO1xyXG5pbXBvcnQgeyBQYXJlbnRDb250YWluZXJDb21wb25lbnQgfSBmcm9tICcuLi9wYXJlbnQtY29udGFpbmVyL3BhcmVudC1jb250YWluZXIuY29tcG9uZW50JztcclxuaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJztcclxuaW1wb3J0ICogYXMgZWNoYXJ0cyBmcm9tICdlY2hhcnRzJztcclxuaW1wb3J0IHsgTmd4RWNoYXJ0c0RpcmVjdGl2ZSB9IGZyb20gJ25neC1lY2hhcnRzJztcclxuaW1wb3J0IHsgZ2V0RWNoYXJ0c1RleHRTdHlsZSB9IGZyb20gJy4uL3NoYXJlZC91dGlsL2VjaGFydHMudXRpbCc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ3NjLXBsYW5pbWV0cmljLW1hcDJkJyxcclxuICB0ZW1wbGF0ZVVybDogJy4vcGxhbmltZXRyaWMtbWFwMmQuY29tcG9uZW50Lmh0bWwnLFxyXG4gIHN0eWxlVXJsczogWycuL3BsYW5pbWV0cmljLW1hcDJkLmNvbXBvbmVudC5sZXNzJ10sXHJcbiAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBQYXJlbnRDb250YWluZXJDb21wb25lbnQsIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IFBsYW5pbWV0cmljTWFwMmRDb21wb25lbnQpIH1dLFxyXG59KVxyXG5AV2lkZ2V0KCcyROW5s+mdouWcsOWbvicsIHtcclxuICBncm91cDogJ2NvbXBvbmVudCcsXHJcbiAgaW1hZ2U6ICdhc3NldHMvaW1nL3NjcmVlbi8yZG1hcC5wbmcnLFxyXG4gIGljb246ICdpY29ubW9rdWFpJyxcclxuICBjaGlsZHJlbjogW1xyXG4gICAge1xyXG4gICAgICB0aXRsZTogJ+WRvOWQuOawlOazoeWxgicsXHJcbiAgICAgIHR5cGU6ICdzYy1icmVhdGhpbmctYnViYmxlLWxheWVyJyxcclxuICAgICAgb3B0aW9uOiB7fSxcclxuICAgICAgaGlkZGVuOiB0cnVlLFxyXG4gICAgICBoaWRlQ2hpbGQ6IHRydWUsXHJcbiAgICB9LFxyXG4gIF0sXHJcbiAgY2hpbGRUeXBlczogW1xyXG4gICAgJ3NjLWZseS1saW5lLWxheWVyJyxcclxuICAgICdzYy1icmVhdGhpbmctYnViYmxlLWxheWVyJyxcclxuICAgICdzYy1tYXAyZC1wb2x5bGluZS1sYXllcicsXHJcbiAgICAnc2MtbWFwMmQtbWFyay1sYXllcicsXHJcbiAgICAnc2MtbWFwMmQtdmlzdWFsLWxheWVyJyxcclxuICBdLFxyXG4gIGRlc2NyaXB0aW9uOiAnaGFzQ2hpbGRJdGVtJyxcclxufSlcclxuZXhwb3J0IGNsYXNzIFBsYW5pbWV0cmljTWFwMmRDb21wb25lbnQgZXh0ZW5kcyBQYXJlbnRDb250YWluZXJDb21wb25lbnQgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSwgT25DaGFuZ2VzIHtcclxuICBAUHJvcGVydHkoJ+WcsOWbvuagt+W8jycsIHtcclxuICAgIHVpOiB7XHJcbiAgICAgIHdpZGdldDogJ215VXJsU2VsZWN0JyxcclxuICAgICAgdXJsOiAnL2Fzc2V0cy9tYXBMaXN0SXRlbS5qc29uJyxcclxuICAgIH0sXHJcbiAgfSlcclxuICBtYXBTdHlsZSA9ICdjaGluYSc7XHJcbiAgQFByb3BlcnR5KCflnLDlm77nvKnmlL4nLCB7XHJcbiAgICB1aTogeyB3aWRnZXQ6ICdteVJhbmdlJywgbWluOiAxLCBtYXg6IDQwLCBzdGVwOiAxIH0sXHJcbiAgfSlcclxuICB6b29tID0gMTtcclxuICBAUHJvcGVydHkoJ+WMuuWfn+iDjOaZrycsIHtcclxuICAgIHVpOiB7XHJcbiAgICAgIHdpZGdldDogJ215Q29sb3InLFxyXG4gICAgICBleGFtcGxlOiBbJyNEMDAyMUInLCAnI0Y1QTYyMycsICcjRjhFNzFDJywgJyM1MEUzQzInLCAnIzMyODVGRicsICcjQjQ1RkZGJywgJyM5QjlCOUInLCAnIzMzMzMzMyddLFxyXG4gICAgfSxcclxuICB9KVxyXG4gIGFyZWFDb2xvciA9ICcjMzIzYzQ4JztcclxuICBAUHJvcGVydHkoJ+WMuuWfn+aPj+i+uScsIHtcclxuICAgIHVpOiB7XHJcbiAgICAgIHdpZGdldDogJ215Q29sb3InLFxyXG4gICAgICBleGFtcGxlOiBbJyNEMDAyMUInLCAnI0Y1QTYyMycsICcjRjhFNzFDJywgJyM1MEUzQzInLCAnIzMyODVGRicsICcjQjQ1RkZGJywgJyM5QjlCOUInLCAnIzMzMzMzMyddLFxyXG4gICAgfSxcclxuICB9KVxyXG4gIGJvcmRlckNvbG9yID0gJyM0MDRhNTknO1xyXG4gIEBQcm9wZXJ0eSgn56e75Yqo6auY5LquJywge1xyXG4gICAgdWk6IHtcclxuICAgICAgd2lkZ2V0OiAnbXlDb2xvcicsXHJcbiAgICAgIGV4YW1wbGU6IFsnI0QwMDIxQicsICcjRjVBNjIzJywgJyNGOEU3MUMnLCAnIzUwRTNDMicsICcjMzI4NUZGJywgJyNCNDVGRkYnLCAnIzlCOUI5QicsICcjMzMzMzMzJ10sXHJcbiAgICB9LFxyXG4gIH0pXHJcbiAgX2FyZWFDb2xvciA9ICcjMmEzMzNkJztcclxuICBAUHJvcGVydHkoJ+WcsOWMuuWtl+S9kycsIHsgdWk6IHsgd2lkZ2V0OiAnbXlGb250JyB9IH0pXHJcbiAgYXJlYU5hbWVmb250OiBhbnkgPSB7XHJcbiAgICBmYW1pbHk6ICcnLFxyXG4gICAgY29sb3I6ICcjRkZGRkZGJyxcclxuICAgIHdlaWdodDogJ25vcm1hbCcsXHJcbiAgICBzaXplOiAxMixcclxuICAgIHNwYWNlOiAwLFxyXG4gICAgbGluZUhlaWdodDogMTIsXHJcbiAgfTtcclxuICBAUHJvcGVydHkoJ+aYvuekuuWcsOWQjScsIHtcclxuICAgIHR5cGU6ICdib29sZWFuJyxcclxuICB9KVxyXG4gIHNob3dBcmVhTmFtZSA9IHRydWU7XHJcbiAgQFByb3BlcnR5KCfop6blj5HmlrnlvI8nLCB7XHJcbiAgICB1aTogeyB3aWRnZXQ6ICdzZWxlY3QnIH0sXHJcbiAgICBlbnVtOiBbXHJcbiAgICAgIHsgbGFiZWw6ICfngrnlh7snLCB2YWx1ZTogJ2NsaWNrJyB9LFxyXG4gICAgICB7IGxhYmVsOiAn6byg5qCH56e75YqoJywgdmFsdWU6ICdtb3VzZW1vdmUnIH0sXHJcbiAgICBdLFxyXG4gIH0pXHJcbiAgdHJpZ2dlclR5cGUgPSAnbW91c2Vtb3ZlJztcclxuICBAUHJvcGVydHkoJ+mAieS4reaWueW8jycsIHtcclxuICAgIHVpOiB7IHdpZGdldDogJ3NlbGVjdCcgfSxcclxuICAgIGVudW06IFtcclxuICAgICAgeyBsYWJlbDogJ+m7mOiupCcsIHZhbHVlOiAnJyB9LFxyXG4gICAgICB7IGxhYmVsOiAn5Y2V6YCJJywgdmFsdWU6ICdzaW5nbGUnIH0sXHJcbiAgICAgIHsgbGFiZWw6ICflpJrpgIknLCB2YWx1ZTogJ211bHRpcGxlJyB9LFxyXG4gICAgXSxcclxuICB9KVxyXG4gIHNlbGVjdGVkTW9kZSA9ICcnO1xyXG5cclxuICBAUHJvcGVydHkoJ+e8qeaUvuW8gOWFsycsIHtcclxuICAgIHR5cGU6ICdib29sZWFuJyxcclxuICB9KVxyXG4gIHpvb21Td2l0Y2ggPSAnZmFsc2UnO1xyXG4gIEBQcm9wZXJ0eSgn6auY5Lqu5o+P6L65Jywge1xyXG4gICAgdWk6IHtcclxuICAgICAgd2lkZ2V0OiAnbXlDb2xvcicsXHJcbiAgICAgIGV4YW1wbGU6IFsnI0QwMDIxQicsICcjRjVBNjIzJywgJyNGOEU3MUMnLCAnIzUwRTNDMicsICcjMzI4NUZGJywgJyNCNDVGRkYnLCAnIzlCOUI5QicsICcjMzMzMzMzJ10sXHJcbiAgICB9LFxyXG4gIH0pXHJcbiAgX2JvcmRlckNvbG9yID0gJyc7XHJcbiAgQFByb3BlcnR5KCfpmLTlvbHpopzoibInLCB7XHJcbiAgICB1aToge1xyXG4gICAgICB3aWRnZXQ6ICdteUNvbG9yJyxcclxuICAgICAgZXhhbXBsZTogWycjRDAwMjFCJywgJyNGNUE2MjMnLCAnI0Y4RTcxQycsICcjNTBFM0MyJywgJyMzMjg1RkYnLCAnI0I0NUZGRicsICcjOUI5QjlCJywgJyMzMzMzMzMnXSxcclxuICAgIH0sXHJcbiAgfSlcclxuICBzaGFkb3dDb2xvciA9ICcjMmEzMzNkJztcclxuICBAUHJvcGVydHkoJ+i+ueahhueyl+e7hicsIHtcclxuICAgIHR5cGU6ICdudW1iZXInLFxyXG4gIH0pXHJcbiAgc2hhZG93V2lkdGggPSAyMDtcclxuICBAUHJvcGVydHkoJ+WcsOWbvua4kOWPmOW8gOWniycsIHtcclxuICAgIHVpOiB7XHJcbiAgICAgIHdpZGdldDogJ215Q29sb3InLFxyXG4gICAgICBleGFtcGxlOiBbJyNEMDAyMUInLCAnI0Y1QTYyMycsICcjRjhFNzFDJywgJyM1MEUzQzInLCAnIzMyODVGRicsICcjQjQ1RkZGJywgJyM5QjlCOUInLCAnIzMzMzMzMyddLFxyXG4gICAgfSxcclxuICB9KVxyXG4gIG1hcENvbG9yU3RhcnQgPSAnIzJhMzMzZCc7XHJcbiAgQFByb3BlcnR5KCflnLDlm77muJDlj5jnu5PmnZ8nLCB7XHJcbiAgICB1aToge1xyXG4gICAgICB3aWRnZXQ6ICdteUNvbG9yJyxcclxuICAgICAgZXhhbXBsZTogWycjRDAwMjFCJywgJyNGNUE2MjMnLCAnI0Y4RTcxQycsICcjNTBFM0MyJywgJyMzMjg1RkYnLCAnI0I0NUZGRicsICcjOUI5QjlCJywgJyMzMzMzMzMnXSxcclxuICAgIH0sXHJcbiAgfSlcclxuICBtYXBDb2xvckVuZCA9ICcjMmEzMzNkJztcclxuICBAUHJvcGVydHkoJ+mAieS4rea4kOWPmOW8gOWniycsIHtcclxuICAgIHVpOiB7XHJcbiAgICAgIHdpZGdldDogJ215Q29sb3InLFxyXG4gICAgICBleGFtcGxlOiBbJyNEMDAyMUInLCAnI0Y1QTYyMycsICcjRjhFNzFDJywgJyM1MEUzQzInLCAnIzMyODVGRicsICcjQjQ1RkZGJywgJyM5QjlCOUInLCAnIzMzMzMzMyddLFxyXG4gICAgfSxcclxuICB9KVxyXG4gIHNlbGVjdENvbG9yU3RhcnQgPSAnIzJhMzMzZCc7XHJcbiAgQFByb3BlcnR5KCfpgInkuK3muJDlj5jnu5PmnZ8nLCB7XHJcbiAgICB1aToge1xyXG4gICAgICB3aWRnZXQ6ICdteUNvbG9yJyxcclxuICAgICAgZXhhbXBsZTogWycjRDAwMjFCJywgJyNGNUE2MjMnLCAnI0Y4RTcxQycsICcjNTBFM0MyJywgJyMzMjg1RkYnLCAnI0I0NUZGRicsICcjOUI5QjlCJywgJyMzMzMzMzMnXSxcclxuICAgIH0sXHJcbiAgfSlcclxuICBzZWxlY3RDb2xvckVuZCA9ICcjMmEzMzNkJztcclxuXHJcbiAgY2hhcnRPcHRpb246IGFueTtcclxuICBoYXNNYXAgPSBmYWxzZTtcclxuICBARGF0YSh7XHJcbiAgICBwcm9wZXJ0aWVzOiB7XHJcbiAgICAgIG5hbWU6IHsgdHlwZTogJ3N0cmluZycsIHRpdGxlOiAn5Zyw5ZCNJyB9LFxyXG4gICAgICBsbmc6IHsgdHlwZTogJ251bWJlcicsIHRpdGxlOiAn57uP5bqmJyB9LFxyXG4gICAgICBsYXQ6IHsgdHlwZTogJ3N0cmluZycsIHRpdGxlOiAn57qs5bqmJyB9LFxyXG4gICAgfSxcclxuICB9KVxyXG4gIGRhdGE6IGFueVtdID0gW107XHJcbiAgQERhdGFPdXRwdXQoWyduYW1lJywgJ2xuZycsICdsYXQnXSlcclxuICBARXZlbnQoJ+mAieS4rScsIHtcclxuICAgIHBhcmFtczoge1xyXG4gICAgICBwcm9wZXJ0aWVzOiB7XHJcbiAgICAgICAgbmFtZTogeyB0eXBlOiAnc3RyaW5nJywgdGl0bGU6ICflgLwnIH0sXHJcbiAgICAgICAgbG5nOiB7IHR5cGU6ICdudW1iZXInLCB0aXRsZTogJ+e7j+W6picgfSxcclxuICAgICAgICBsYXQ6IHsgdHlwZTogJ3N0cmluZycsIHRpdGxlOiAn57qs5bqmJyB9LFxyXG4gICAgICB9LFxyXG4gICAgfSxcclxuICB9KVxyXG4gIGFyZWFDbGljayA9IG5ldyBFdmVudEVtaXR0ZXIoKTtcclxuXHJcbiAgbmFtZU1hcDogYW55ID0ge1xyXG4gICAgU29tYWxpYTogJ+e0oumprOmHjCcsXHJcbiAgICBMaWVjaHRlbnN0ZWluOiAn5YiX5pSv5pWm5aOr55m7JyxcclxuICAgIE1vcm9jY286ICfmkanmtJvlk6UnLFxyXG4gICAgJ1cuIFNhaGFyYSc6ICfopb/mkpLlk4jmi4knLFxyXG4gICAgU2VyYmlhOiAn5aGe5bCU57u05LqaJyxcclxuICAgIEFmZ2hhbmlzdGFuOiAn6Zi/5a+M5rGXJyxcclxuICAgIEFuZ29sYTogJ+WuieWTpeaLiScsXHJcbiAgICBBbGJhbmlhOiAn6Zi/5bCU5be05bC85LqaJyxcclxuICAgIEFsYW5kOiAn5aWl5YWw576k5bKbJyxcclxuICAgIEFuZG9ycmE6ICflronpgZPlsJQnLFxyXG4gICAgJ1VuaXRlZCBBcmFiIEVtaXJhdGVzJzogJ+mYv+aLieS8r+iBlOWQiOmFi+mVv+WbvScsXHJcbiAgICBBcmdlbnRpbmE6ICfpmL/moLnlu7cnLFxyXG4gICAgQXJtZW5pYTogJ+S6mue+juWwvOS6micsXHJcbiAgICAnQW1lcmljYW4gU2Ftb2EnOiAn576O5bGe6JCo5pGp5LqaJyxcclxuICAgICdGci4gUy4gQW50YXJjdGljIExhbmRzJzogJ+azleWxnuWNl+mDqOmihuWcsCcsXHJcbiAgICAnQW50aWd1YSBhbmQgQmFyYi4nOiAn5a6J5o+Q55Oc5ZKM5be05biD6L6+JyxcclxuICAgIEF1c3RyYWxpYTogJ+a+s+Wkp+WIqeS6micsXHJcbiAgICBBdXN0cmlhOiAn5aWl5Zyw5YipJyxcclxuICAgIEF6ZXJiYWlqYW46ICfpmL/loZ7mi5znloYnLFxyXG4gICAgQnVydW5kaTogJ+W4g+mahui/qicsXHJcbiAgICBCZWxnaXVtOiAn5q+U5Yip5pe2JyxcclxuICAgIEJlbmluOiAn6LSd5a6BJyxcclxuICAgICdCdXJraW5hIEZhc28nOiAn5biD5Z+657qz5rOV57SiJyxcclxuICAgIEJhbmdsYWRlc2g6ICflrZ/liqDmi4nlm70nLFxyXG4gICAgQnVsZ2FyaWE6ICfkv53liqDliKnkuponLFxyXG4gICAgQmFocmFpbjogJ+W3tOaelycsXHJcbiAgICBCYWhhbWFzOiAn5be05ZOI6amsJyxcclxuICAgICdCb3NuaWEgYW5kIEhlcnouJzogJ+azouaWr+WwvOS6muWSjOm7keWhnuWTpee7tOmCoycsXHJcbiAgICBCZWxhcnVzOiAn55m95L+E572X5pavJyxcclxuICAgIEJlbGl6ZTogJ+S8r+WIqeWFuScsXHJcbiAgICBCZXJtdWRhOiAn55m+5oWV5aSnJyxcclxuICAgIEJvbGl2aWE6ICfnjrvliKnnu7TkuponLFxyXG4gICAgQnJhemlsOiAn5be06KW/JyxcclxuICAgIEJhcmJhZG9zOiAn5be05be05aSa5pavJyxcclxuICAgIEJydW5laTogJ+aWh+iOsScsXHJcbiAgICBCaHV0YW46ICfkuI3kuLknLFxyXG4gICAgQm90c3dhbmE6ICfljZrojKjnk6bnurMnLFxyXG4gICAgJ0NlbnRyYWwgQWZyaWNhbiBSZXAuJzogJ+S4remdnuWFseWSjOWbvScsXHJcbiAgICBDYW5hZGE6ICfliqDmi7/lpKcnLFxyXG4gICAgU3dpdHplcmxhbmQ6ICfnkZ7lo6snLFxyXG4gICAgQ2hpbGU6ICfmmbrliKknLFxyXG4gICAgQ2hpbmE6ICfkuK3lm70nLFxyXG4gICAgXCJDw7R0ZSBkJ0l2b2lyZVwiOiAn56eR54m56L+q55OmJyxcclxuICAgIENhbWVyb29uOiAn5ZaA6bqm6ZqGJyxcclxuICAgICdEZW0uIFJlcC4gQ29uZ28nOiAn5Yia5p6c77yI6YeR77yJJyxcclxuICAgIENvbmdvOiAn5Yia5p6c77yI5biD77yJJyxcclxuICAgIENvbG9tYmlhOiAn5ZOl5Lym5q+U5LqaJyxcclxuICAgIENvbW9yb3M6ICfnp5HmkannvZcnLFxyXG4gICAgJ0NhcGUgVmVyZGUnOiAn5L2b5b6X6KeSJyxcclxuICAgICdDb3N0YSBSaWNhJzogJ+WTpeaWr+i+vum7juWKoCcsXHJcbiAgICBDdWJhOiAn5Y+k5be0JyxcclxuICAgIEN1cmHDp2FvOiAn5bqT5ouJ57SiJyxcclxuICAgICdDYXltYW4gSXMuJzogJ+W8gOabvOe+pOWymycsXHJcbiAgICAnTi4gQ3lwcnVzJzogJ+WMl+Whnua1pui3r+aWrycsXHJcbiAgICBDeXBydXM6ICfloZ7mtabot6/mlq8nLFxyXG4gICAgJ0N6ZWNoIFJlcC4nOiAn5o235YWLJyxcclxuICAgIEdlcm1hbnk6ICflvrflm70nLFxyXG4gICAgRGppYm91dGk6ICflkInluIPmj5AnLFxyXG4gICAgRG9taW5pY2E6ICflpJrnsbPlsLzlhYsnLFxyXG4gICAgRGVubWFyazogJ+S4uem6picsXHJcbiAgICAnRG9taW5pY2FuIFJlcC4nOiAn5aSa57Gz5bC85YqgJyxcclxuICAgIEFsZ2VyaWE6ICfpmL/lsJTlj4rliKnkuponLFxyXG4gICAgRWN1YWRvcjogJ+WOhOeTnOWkmuWwlCcsXHJcbiAgICBFZ3lwdDogJ+Wfg+WPiicsXHJcbiAgICBFcml0cmVhOiAn5Y6E56uL54m56YeM5LqaJyxcclxuICAgIFNwYWluOiAn6KW/54+t54mZJyxcclxuICAgIEVzdG9uaWE6ICfniLHmspnlsLzkuponLFxyXG4gICAgRXRoaW9waWE6ICfln4PloZ7kv4Tmr5TkuponLFxyXG4gICAgRmlubGFuZDogJ+iKrOWFsCcsXHJcbiAgICBGaWppOiAn5paQ5rWOJyxcclxuICAgICdGYWxrbGFuZCBJcy4nOiAn56aP5YWL5YWw576k5bKbJyxcclxuICAgIEZyYW5jZTogJ+azleWbvScsXHJcbiAgICAnRmFlcm9lIElzLic6ICfms5XnvZfnvqTlspsnLFxyXG4gICAgTWljcm9uZXNpYTogJ+WvhuWFi+e9l+WwvOilv+S6micsXHJcbiAgICBHYWJvbjogJ+WKoOiTrCcsXHJcbiAgICAnVW5pdGVkIEtpbmdkb20nOiAn6Iux5Zu9JyxcclxuICAgIEdlb3JnaWE6ICfmoLzpsoHlkInkuponLFxyXG4gICAgR2hhbmE6ICfliqDnurMnLFxyXG4gICAgR3VpbmVhOiAn5Yeg5YaF5LqaJyxcclxuICAgIEdhbWJpYTogJ+WGiOavlOS6micsXHJcbiAgICAnR3VpbmVhLUJpc3NhdSc6ICflh6DlhoXkuprmr5Tnu40nLFxyXG4gICAgJ0VxLiBHdWluZWEnOiAn6LWk6YGT5Yeg5YaF5LqaJyxcclxuICAgIEdyZWVjZTogJ+W4jOiFiicsXHJcbiAgICBHcmVuYWRhOiAn5qC85p6X57qz6L6+JyxcclxuICAgIEdyZWVubGFuZDogJ+agvOmZteWFsCcsXHJcbiAgICBHdWF0ZW1hbGE6ICfljbHlnLDpqazmi4knLFxyXG4gICAgR3VhbTogJ+WFs+WymycsXHJcbiAgICBHdXlhbmE6ICflnK3kuprpgqMnLFxyXG4gICAgJ0hlYXJkIEkuIGFuZCBNY0RvbmFsZCBJcy4nOiAn6LWr5b635bKb5ZKM6bqm5YWL5ZSQ57qz576k5bKbJyxcclxuICAgIEhvbmR1cmFzOiAn5rSq6YO95ouJ5pavJyxcclxuICAgIENyb2F0aWE6ICflhYvnvZflnLDkuponLFxyXG4gICAgSGFpdGk6ICfmtbflnLAnLFxyXG4gICAgSHVuZ2FyeTogJ+WMiOeJmeWIqScsXHJcbiAgICBJbmRvbmVzaWE6ICfljbDluqblsLzopb/kuponLFxyXG4gICAgJ0lzbGUgb2YgTWFuJzogJ+mprOaBqeWymycsXHJcbiAgICBJbmRpYTogJ+WNsOW6picsXHJcbiAgICAnQnIuIEluZGlhbiBPY2VhbiBUZXIuJzogJ+iLseWxnuWNsOW6pua0i+mihuWcsCcsXHJcbiAgICBJcmVsYW5kOiAn54ix5bCU5YWwJyxcclxuICAgIElyYW46ICfkvIrmnJcnLFxyXG4gICAgSXJhcTogJ+S8iuaLieWFiycsXHJcbiAgICBJY2VsYW5kOiAn5Yaw5bKbJyxcclxuICAgIElzcmFlbDogJ+S7peiJsuWIlycsXHJcbiAgICBJdGFseTogJ+aEj+Wkp+WIqScsXHJcbiAgICBKYW1haWNhOiAn54mZ5Lmw5YqgJyxcclxuICAgIEplcnNleTogJ+azveilv+WymycsXHJcbiAgICBKb3JkYW46ICfnuqbml6YnLFxyXG4gICAgSmFwYW46ICfml6XmnKwnLFxyXG4gICAgJ1NpYWNoZW4gR2xhY2llcic6ICfplKHkuprnkLTlhrDlt50nLFxyXG4gICAgS2F6YWtoc3RhbjogJ+WTiOiQqOWFi+aWr+WdpicsXHJcbiAgICBLZW55YTogJ+iCr+WwvOS6micsXHJcbiAgICBLeXJneXpzdGFuOiAn5ZCJ5bCU5ZCJ5pav5pav5Z2mJyxcclxuICAgIENhbWJvZGlhOiAn5p+s5Z+U5a+oJyxcclxuICAgIEtpcmliYXRpOiAn5Z+66YeM5be05pavJyxcclxuICAgIEtvcmVhOiAn6Z+p5Zu9JyxcclxuICAgIEt1d2FpdDogJ+enkeWogeeJuScsXHJcbiAgICAnTGFvIFBEUic6ICfogIHmjJ0nLFxyXG4gICAgTGViYW5vbjogJ+m7juW3tOWrqScsXHJcbiAgICBMaWJlcmlhOiAn5Yip5q+U6YeM5LqaJyxcclxuICAgIExpYnlhOiAn5Yip5q+U5LqaJyxcclxuICAgICdTYWludCBMdWNpYSc6ICflnKPljaLopb/kuponLFxyXG4gICAgJ1NyaSBMYW5rYSc6ICfmlq/ph4zlhbDljaEnLFxyXG4gICAgTGVzb3RobzogJ+iOsee0ouaJmCcsXHJcbiAgICBMaXRodWFuaWE6ICfnq4vpmbblrpsnLFxyXG4gICAgTHV4ZW1ib3VyZzogJ+WNouajruWgoScsXHJcbiAgICBMYXR2aWE6ICfmi4nohLHnu7TkuponLFxyXG4gICAgTW9sZG92YTogJ+aRqeWwlOWkmueTpicsXHJcbiAgICBNYWRhZ2FzY2FyOiAn6ams6L6+5Yqg5pav5YqgJyxcclxuICAgIE1leGljbzogJ+WiqOilv+WTpScsXHJcbiAgICBNYWNlZG9uaWE6ICfljJfpqazlhbbpob8nLFxyXG4gICAgTWFsaTogJ+mprOmHjCcsXHJcbiAgICBNYWx0YTogJ+mprOiAs+S7licsXHJcbiAgICBNeWFubWFyOiAn57yF55S4JyxcclxuICAgIE1vbnRlbmVncm86ICfpu5HlsbEnLFxyXG4gICAgTW9uZ29saWE6ICfokpnlj6QnLFxyXG4gICAgJ04uIE1hcmlhbmEgSXMuJzogJ+WMl+mprOmHjOS6mue6s+e+pOWymycsXHJcbiAgICBNb3phbWJpcXVlOiAn6I6r5qGR5q+U5YWLJyxcclxuICAgIE1hdXJpdGFuaWE6ICfmr5vph4zloZTlsLzkuponLFxyXG4gICAgTW9udHNlcnJhdDogJ+iSmeeJueWhnuaLieeJuScsXHJcbiAgICBNYXVyaXRpdXM6ICfmr5vph4zmsYLmlq8nLFxyXG4gICAgTWFsYXdpOiAn6ams5ouJ57u0JyxcclxuICAgIE1hbGF5c2lhOiAn6ams5p2l6KW/5LqaJyxcclxuICAgIE5hbWliaWE6ICfnurPnsbPmr5TkuponLFxyXG4gICAgJ05ldyBDYWxlZG9uaWEnOiAn5paw5ZaA6YeM5aSa5bC85LqaJyxcclxuICAgIE5pZ2VyOiAn5bC85pel5bCUJyxcclxuICAgIE5pZ2VyaWE6ICflsLzml6XliKnkuponLFxyXG4gICAgTmljYXJhZ3VhOiAn5bC85Yqg5ouJ55OcJyxcclxuICAgIE5pdWU6ICfnur3ln4MnLFxyXG4gICAgTmV0aGVybGFuZHM6ICfojbflhbAnLFxyXG4gICAgTm9yd2F5OiAn5oyq5aiBJyxcclxuICAgIE5lcGFsOiAn5bC85rOK5bCUJyxcclxuICAgICdOZXcgWmVhbGFuZCc6ICfmlrDopb/lhbAnLFxyXG4gICAgT21hbjogJ+mYv+abvCcsXHJcbiAgICBQYWtpc3RhbjogJ+W3tOWfuuaWr+WdpicsXHJcbiAgICBQYW5hbWE6ICflt7Tmi7/pqawnLFxyXG4gICAgUGVydTogJ+enmOmygScsXHJcbiAgICBQaGlsaXBwaW5lczogJ+iPsuW+i+WuvicsXHJcbiAgICBQYWxhdTogJ+W4leWKsycsXHJcbiAgICAnUGFwdWEgTmV3IEd1aW5lYSc6ICflt7TluIPkuprmlrDlh6DlhoXkuponLFxyXG4gICAgUG9sYW5kOiAn5rOi5YWwJyxcclxuICAgICdQdWVydG8gUmljbyc6ICfms6LlpJrpu47lkIQnLFxyXG4gICAgJ0RlbS4gUmVwLiBLb3JlYSc6ICfmnJ3pspwnLFxyXG4gICAgUG9ydHVnYWw6ICfokaHokITniZknLFxyXG4gICAgUGFyYWd1YXk6ICflt7Tmi4nlnK0nLFxyXG4gICAgUGFsZXN0aW5lOiAn5be05YuS5pav5Z2mJyxcclxuICAgICdGci4gUG9seW5lc2lhJzogJ+azleWxnuazouWIqeWwvOilv+S6micsXHJcbiAgICBRYXRhcjogJ+WNoeWhlOWwlCcsXHJcbiAgICBSb21hbmlhOiAn572X6ams5bC85LqaJyxcclxuICAgIFJ1c3NpYTogJ+S/hOe9l+aWrycsXHJcbiAgICBSd2FuZGE6ICfljaLml7rovr4nLFxyXG4gICAgJ1NhdWRpIEFyYWJpYSc6ICfmspnnibnpmL/mi4nkvK8nLFxyXG4gICAgU3VkYW46ICfoi4/kuLknLFxyXG4gICAgJ1MuIFN1ZGFuJzogJ+WNl+iLj+S4uScsXHJcbiAgICBTZW5lZ2FsOiAn5aGe5YaF5Yqg5bCUJyxcclxuICAgIFNpbmdhcG9yZTogJ+aWsOWKoOWdoScsXHJcbiAgICAnUy4gR2VvLiBhbmQgUy4gU2FuZHcuIElzLic6ICfljZfkuZTmsrvkuprlspvlkozljZfmoZHlqIHlpYfnvqTlspsnLFxyXG4gICAgJ1NhaW50IEhlbGVuYSc6ICflnKPotavli5Lmi78nLFxyXG4gICAgJ1NvbG9tb24gSXMuJzogJ+aJgOe9l+mXqOe+pOWymycsXHJcbiAgICAnU2llcnJhIExlb25lJzogJ+WhnuaLieWIqeaYgicsXHJcbiAgICAnRWwgU2FsdmFkb3InOiAn6JCo5bCU55Om5aSaJyxcclxuICAgICdTdC4gUGllcnJlIGFuZCBNaXF1ZWxvbic6ICflnKPnmq7ln4PlsJTlkozlr4blhYvpmoYnLFxyXG4gICAgJ1PDo28gVG9tw6kgYW5kIFByaW5jaXBlJzogJ+Wco+Wkmue+juWSjOaZruael+ilv+avlCcsXHJcbiAgICBTdXJpbmFtZTogJ+iLj+mHjOWNlycsXHJcbiAgICBTbG92YWtpYTogJ+aWr+a0m+S8kOWFiycsXHJcbiAgICBTbG92ZW5pYTogJ+aWr+a0m+aWh+WwvOS6micsXHJcbiAgICBTd2VkZW46ICfnkZ7lhbgnLFxyXG4gICAgU3dhemlsYW5kOiAn5pav5aiB5aOr5YWwJyxcclxuICAgIFNleWNoZWxsZXM6ICfloZ7oiIzlsJQnLFxyXG4gICAgU3lyaWE6ICflj5nliKnkuponLFxyXG4gICAgJ1R1cmtzIGFuZCBDYWljb3MgSXMuJzogJ+eJueWFi+aWr+WSjOWHr+enkeaWr+e+pOWymycsXHJcbiAgICBDaGFkOiAn5LmN5b6XJyxcclxuICAgIFRvZ286ICflpJrlk6UnLFxyXG4gICAgVGhhaWxhbmQ6ICfms7Dlm70nLFxyXG4gICAgVGFqaWtpc3RhbjogJ+WhlOWQieWFi+aWr+WdpicsXHJcbiAgICBUdXJrbWVuaXN0YW46ICflnJ/lupPmm7zmlq/lnaYnLFxyXG4gICAgJ1RpbW9yLUxlc3RlJzogJ+S4nOW4neaxticsXHJcbiAgICBUb25nYTogJ+axpOWKoCcsXHJcbiAgICAnVHJpbmlkYWQgYW5kIFRvYmFnbyc6ICfnibnnq4vlsLzovr7lkozlpJrlt7Tlk6UnLFxyXG4gICAgVHVuaXNpYTogJ+eqgeWwvOaWrycsXHJcbiAgICBUdXJrZXk6ICflnJ/ogLPlhbYnLFxyXG4gICAgVGFuemFuaWE6ICflnabmoZHlsLzkuponLFxyXG4gICAgVWdhbmRhOiAn5LmM5bmy6L6+JyxcclxuICAgIFVrcmFpbmU6ICfkuYzlhYvlhbAnLFxyXG4gICAgVXJ1Z3VheTogJ+S5jOaLieWcrScsXHJcbiAgICAnVW5pdGVkIFN0YXRlcyc6ICfnvo7lm70nLFxyXG4gICAgVXpiZWtpc3RhbjogJ+S5jOWFueWIq+WFi+aWr+WdpicsXHJcbiAgICAnU3QuIFZpbi4gYW5kIEdyZW4uJzogJ+Wco+aWh+ajrueJueWSjOagvOael+e6s+S4geaWrycsXHJcbiAgICBWZW5lenVlbGE6ICflp5TlhoXnkZ7mi4knLFxyXG4gICAgJ1UuUy4gVmlyZ2luIElzLic6ICfnvo7lsZ7nu7TlsJTkuqznvqTlspsnLFxyXG4gICAgVmlldG5hbTogJ+i2iuWNlycsXHJcbiAgICBWYW51YXR1OiAn55Om5Yqq6Zi/5Zu+JyxcclxuICAgIFNhbW9hOiAn6JCo5pGp5LqaJyxcclxuICAgIFllbWVuOiAn5Lmf6ZeoJyxcclxuICAgICdTb3V0aCBBZnJpY2EnOiAn5Y2X6Z2eJyxcclxuICAgIFphbWJpYTogJ+i1nuavlOS6micsXHJcbiAgICBaaW1iYWJ3ZTogJ+a0peW3tOW4g+mfpicsXHJcbiAgfTtcclxuICBfY2hpbGRyZW46IGFueSA9IFtdO1xyXG4gIGxvYWRlZE1hcDogeyBbbmFtZTogc3RyaW5nXTogUHJvbWlzZTxhbnk+IH0gPSB7fTtcclxuICBwcm92aW5jZXM6IGFueTtcclxuICBzdGFjayA9IFtdO1xyXG4gIHZpc3VhbE1hcDogYW55W107XHJcbiAgQFZpZXdDaGlsZChOZ3hFY2hhcnRzRGlyZWN0aXZlKVxyXG4gIG5neEVjaGFydHM6IE5neEVjaGFydHNEaXJlY3RpdmU7XHJcbiAgcmVuZGVyZXIgPSAnc3ZnJztcclxuICBjb25zdHJ1Y3Rvcihwcm90ZWN0ZWQgaHR0cDogSHR0cENsaWVudCkge1xyXG4gICAgc3VwZXIoKTtcclxuICB9XHJcbiAgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcyk6IHZvaWQge1xyXG4gICAgaWYgKGNoYW5nZXMuZGF0YSkge1xyXG4gICAgICBpZiAodGhpcy5kYXRhICYmIHRoaXMuZGF0YVswXSkge1xyXG4gICAgICAgIHRoaXMubWFwU3R5bGUgPSB0aGlzLmRhdGFbMF0ubmFtZTtcclxuICAgICAgICB0aGlzLnN0YWNrLnB1c2godGhpcy5tYXBTdHlsZSk7XHJcbiAgICAgIH1cclxuICAgICAgdGhpcy5yZWxvYWRNYXAoKTtcclxuICAgIH1cclxuICB9XHJcbiAgYXN5bmMgbmdPbkluaXQoKSB7XHJcbiAgICAvLyBhd2FpdCB0aGlzLmNvbW1vblNlcnZpY2UuZ2V0TWFwKCk7XHJcbiAgICAvLyBhd2FpdCBpbXBvcnQoJ2VjaGFydHMvZGlzdC9leHRlbnNpb24vYm1hcC5qcycpO1xyXG4gICAgdGhpcy5wcm92aW5jZXMgPSAoYXdhaXQgdGhpcy5odHRwLmdldCgnL2Fzc2V0cy9tYXBMaXN0SXRlbS5qc29uJykudG9Qcm9taXNlKCkpIGFzIGFueTtcclxuICAgIC8vIGNvbnN0IG1hcCA9IGVjaGFydHMuZ2V0TWFwKHRoaXMubWFwU3R5bGUpO1xyXG4gICAgLy8gaWYgKG1hcCA9PSBudWxsKSB7XHJcbiAgICAvLyAgIGNvbnN0IGRhdGEgPSBhd2FpdCB0aGlzLmh0dHAuZ2V0KCdhc3NldHMvZWNoYXJ0cy9tYXAvanNvbi8nICsgdGhpcy5tYXBTdHlsZSArICcuanNvbicpLnRvUHJvbWlzZSgpO1xyXG4gICAgLy8gICBlY2hhcnRzLnJlZ2lzdGVyTWFwKHRoaXMubWFwU3R5bGUsIGRhdGEpO1xyXG4gICAgLy8gfVxyXG4gICAgLy8gdGhpcy5oYXNNYXAgPSB0cnVlO1xyXG4gICAgLy8gdGhpcy5jaGFydEluaXQoKTtcclxuICB9XHJcbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XHJcbiAgICBpZiAodGhpcy5uZ3hFY2hhcnRzKSB7XHJcbiAgICAgICh0aGlzLm5neEVjaGFydHMgYXMgYW55KS5pbml0Q2hhcnQgPSAoKSA9PiB7fTtcclxuICAgIH1cclxuICB9XHJcbiAgY2hhcnRJbml0KCkge1xyXG4gICAgLy8gdGhpcy5sb2FkTWFwKHRoaXMubWFwU3R5bGUpLnRoZW4oKGRhdGEpID0+IHtcclxuICAgIGxldCBzZXJpZXMgPSBbXTtcclxuICAgIHRoaXMudmlzdWFsTWFwID0gW107XHJcbiAgICB0aGlzLnJlbmRlcmVyID0gJ3N2Zyc7XHJcbiAgICB0aGlzLl9jaGlsZHJlbi5mb3JFYWNoKChjaGlsZCkgPT4ge1xyXG4gICAgICBpZiAoY2hpbGQudHlwZSA9PT0gJ3Zpc3VhbCcpIHtcclxuICAgICAgICAvLyBzZXJpZXMgPSBjaGlsZC5zZXJpZXM7XHJcbiAgICAgICAgLy8gc2VyaWVzWzBdLm1hcFR5cGUgPSB0aGlzLm1hcFN0eWxlO1xyXG4gICAgICAgIGlmIChjaGlsZC52aXN1YWxNYXAgJiYgY2hpbGQuaXRlbS5sZW5ndGgpIHtcclxuICAgICAgICAgIGlmIChjaGlsZC52aXN1YWxNYXAyKSB7XHJcbiAgICAgICAgICAgIHRoaXMudmlzdWFsTWFwLnB1c2goY2hpbGQudmlzdWFsTWFwMik7XHJcbiAgICAgICAgICB9XHJcbiAgICAgICAgICB0aGlzLnZpc3VhbE1hcC5wdXNoKGNoaWxkLnZpc3VhbE1hcCk7XHJcbiAgICAgICAgICBjaGlsZC52aXN1YWxNYXAuc2VyaWVzSW5kZXggPSBzZXJpZXMubGVuZ3RoO1xyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBpZiAoQXJyYXkuaXNBcnJheShjaGlsZC5pdGVtKSkge1xyXG4gICAgICAgIHNlcmllcyA9IFsuLi5zZXJpZXMsIC4uLmNoaWxkLml0ZW1dO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHNlcmllcyA9IFsuLi5zZXJpZXMsIGNoaWxkLml0ZW1dO1xyXG4gICAgICB9XHJcbiAgICB9KTtcclxuICAgIHNlcmllcy5mb3JFYWNoKChsYXllciwgaW5kZXgpID0+IHtcclxuICAgICAgaWYgKGxheWVyLnR5cGUgPT09ICdsaW5lcycpIHtcclxuICAgICAgICBkZWxldGUgbGF5ZXIuY29vcmRpbmF0ZVN5c3RlbTtcclxuICAgICAgICAvLyDpo57nur/lsYLkuI3mlK/mjIFzdmfmuLLmn5NcclxuICAgICAgICB0aGlzLnJlbmRlcmVyID0gJ2NhbnZhcyc7XHJcbiAgICAgIH1cclxuICAgICAgaWYgKGxheWVyLnR5cGUgPT09ICdzY2F0dGVyJykge1xyXG4gICAgICAgIGxheWVyLmNvb3JkaW5hdGVTeXN0ZW0gPSAnZ2VvJztcclxuICAgICAgICAvLyBsYXllci5zeW1ib2xTaXplID0gJzEwJztcclxuICAgICAgfVxyXG4gICAgICAvLyBpZiAobGF5ZXIudHlwZSA9PT0gJ21hcCcpIHtcclxuICAgICAgLy8gICB0aGlzLnZpc3VhbE1hcC5mb3JFYWNoKCh2aXN1YWxNYXApID0+IHtcclxuICAgICAgLy8gICAgIHZpc3VhbE1hcFsnc2VyaWVzSW5kZXgnXSA9IGluZGV4O1xyXG4gICAgICAvLyAgIH0pO1xyXG4gICAgICAvLyB9XHJcbiAgICB9KTtcclxuICAgIGNvbnN0IHRleHRTdHlsZSA9IGdldEVjaGFydHNUZXh0U3R5bGUodGhpcy5hcmVhTmFtZWZvbnQpO1xyXG4gICAgdGhpcy5jaGFydE9wdGlvbiA9IHtcclxuICAgICAgdG9vbHRpcDoge1xyXG4gICAgICAgIHRyaWdnZXI6ICdpdGVtJyxcclxuICAgICAgICB0cmlnZ2VyT246IHRoaXMudHJpZ2dlclR5cGUgPyB0aGlzLnRyaWdnZXJUeXBlIDogJ21vdXNlbW92ZScsXHJcbiAgICAgIH0sXHJcbiAgICAgIGdlbzoge1xyXG4gICAgICAgIGxhYmVsOiB7XHJcbiAgICAgICAgICBub3JtYWw6IHtcclxuICAgICAgICAgICAgLy/pnZnmgIHnmoTml7blgJnlsZXnpLrmoLflvI9cclxuICAgICAgICAgICAgc2hvdzogdGhpcy5zaG93QXJlYU5hbWUsIC8v5piv5ZCm5pi+56S65Zyw5Zu+55yB5Lu95b6X5ZCN56ewXHJcbiAgICAgICAgICAgIHRleHRTdHlsZSxcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICBlbXBoYXNpczoge1xyXG4gICAgICAgICAgICBzaG93OiB0aGlzLnNob3dBcmVhTmFtZSxcclxuICAgICAgICAgICAgdGV4dFN0eWxlLFxyXG4gICAgICAgICAgfSxcclxuICAgICAgICB9LFxyXG4gICAgICAgIHNlbGVjdGVkTW9kZTogdGhpcy5zZWxlY3RlZE1vZGUsXHJcbiAgICAgICAgc2VsZWN0OiB7XHJcbiAgICAgICAgICBsYWJlbDoge1xyXG4gICAgICAgICAgICBzaG93OiB0aGlzLnNob3dBcmVhTmFtZSwgLy/mmK/lkKbmmL7npLrlnLDlm77nnIHku73lvpflkI3np7BcclxuICAgICAgICAgICAgdGV4dFN0eWxlOiB7XHJcbiAgICAgICAgICAgICAgY29sb3I6IHRoaXMuYXJlYU5hbWVmb250Py5jb2xvciB8fCAnI2ZmZicsXHJcbiAgICAgICAgICAgICAgZm9udFNpemU6IHRoaXMuYXJlYU5hbWVmb250Py5zaXplIHx8IDEyLFxyXG4gICAgICAgICAgICAgIGZvbnRGYW1pbHk6IHRoaXMuYXJlYU5hbWVmb250Py5mYW1pbHkgfHwgJycsXHJcbiAgICAgICAgICAgICAgbGluZUhlaWdodDogdGhpcy5hcmVhTmFtZWZvbnQ/LmxpbmVIZWlnaHQgfHwgMTIsXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgICAgaXRlbVN0eWxlOiB7XHJcbiAgICAgICAgICAgIGFyZWFDb2xvcjoge1xyXG4gICAgICAgICAgICAgIHR5cGU6ICdyYWRpYWwnLFxyXG4gICAgICAgICAgICAgIHg6IDAuNSxcclxuICAgICAgICAgICAgICB5OiAwLjUsXHJcbiAgICAgICAgICAgICAgcjogMC44LFxyXG4gICAgICAgICAgICAgIGNvbG9yU3RvcHM6IFtcclxuICAgICAgICAgICAgICAgIHtcclxuICAgICAgICAgICAgICAgICAgb2Zmc2V0OiAwLFxyXG4gICAgICAgICAgICAgICAgICBjb2xvcjogdGhpcy5zZWxlY3RDb2xvclN0YXJ0ID8gdGhpcy5zZWxlY3RDb2xvclN0YXJ0IDogdGhpcy5fYXJlYUNvbG9yLCAvLyAwJSDlpITnmoTpopzoibJcclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgIG9mZnNldDogMSxcclxuICAgICAgICAgICAgICAgICAgY29sb3I6IHRoaXMuc2VsZWN0Q29sb3JFbmQgPyB0aGlzLnNlbGVjdENvbG9yRW5kIDogdGhpcy5fYXJlYUNvbG9yLCAvLyAxMDAlIOWkhOeahOminOiJslxyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICBdLFxyXG4gICAgICAgICAgICAgIGdsb2JhbENvb3JkOiBmYWxzZSwgLy8g57y655yB5Li6IGZhbHNlXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIGJvcmRlckNvbG9yOiB0aGlzLl9ib3JkZXJDb2xvcixcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgfSxcclxuICAgICAgICBpdGVtU3R5bGU6IHtcclxuICAgICAgICAgIG5vcm1hbDoge1xyXG4gICAgICAgICAgICAvLyBhcmVhQ29sb3I6IHRoaXMuYXJlYUNvbG9yLFxyXG4gICAgICAgICAgICBib3JkZXJDb2xvcjogdGhpcy5ib3JkZXJDb2xvcixcclxuICAgICAgICAgICAgb3BhY2l0eTogMSxcclxuICAgICAgICAgICAgYXJlYUNvbG9yOiB7XHJcbiAgICAgICAgICAgICAgdHlwZTogJ3JhZGlhbCcsXHJcbiAgICAgICAgICAgICAgeDogMC41LFxyXG4gICAgICAgICAgICAgIHk6IDAuNSxcclxuICAgICAgICAgICAgICByOiAwLjgsXHJcbiAgICAgICAgICAgICAgY29sb3JTdG9wczogW1xyXG4gICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICBvZmZzZXQ6IDAsXHJcbiAgICAgICAgICAgICAgICAgIGNvbG9yOiB0aGlzLm1hcENvbG9yU3RhcnQgPyB0aGlzLm1hcENvbG9yU3RhcnQgOiB0aGlzLmFyZWFDb2xvciwgLy8gMCUg5aSE55qE6aKc6ImyXHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICBvZmZzZXQ6IDEsXHJcbiAgICAgICAgICAgICAgICAgIGNvbG9yOiB0aGlzLm1hcENvbG9yRW5kID8gdGhpcy5tYXBDb2xvckVuZCA6IHRoaXMuYXJlYUNvbG9yLCAvLyAxMDAlIOWkhOeahOminOiJslxyXG4gICAgICAgICAgICAgICAgfSxcclxuICAgICAgICAgICAgICBdLFxyXG4gICAgICAgICAgICAgIGdsb2JhbENvb3JkOiBmYWxzZSwgLy8g57y655yB5Li6IGZhbHNlXHJcbiAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgIHNoYWRvd0NvbG9yOiB0aGlzLnNoYWRvd0NvbG9yLFxyXG4gICAgICAgICAgICBzaGFkb3dCbHVyOiB0aGlzLnNoYWRvd1dpZHRoLFxyXG4gICAgICAgICAgICBzaGFkb3dPZmZzZXRYOiAtMixcclxuICAgICAgICAgICAgc2hhZG93T2Zmc2V0WTogMixcclxuICAgICAgICAgIH0sXHJcbiAgICAgICAgICBlbXBoYXNpczoge1xyXG4gICAgICAgICAgICBhcmVhQ29sb3I6IHtcclxuICAgICAgICAgICAgICB0eXBlOiAncmFkaWFsJyxcclxuICAgICAgICAgICAgICB4OiAwLjUsXHJcbiAgICAgICAgICAgICAgeTogMC41LFxyXG4gICAgICAgICAgICAgIHI6IDAuOCxcclxuICAgICAgICAgICAgICBjb2xvclN0b3BzOiBbXHJcbiAgICAgICAgICAgICAgICB7XHJcbiAgICAgICAgICAgICAgICAgIG9mZnNldDogMCxcclxuICAgICAgICAgICAgICAgICAgY29sb3I6IHRoaXMuc2VsZWN0Q29sb3JTdGFydCA/IHRoaXMuc2VsZWN0Q29sb3JTdGFydCA6IHRoaXMuX2FyZWFDb2xvciwgLy8gMCUg5aSE55qE6aKc6ImyXHJcbiAgICAgICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICAgICAge1xyXG4gICAgICAgICAgICAgICAgICBvZmZzZXQ6IDEsXHJcbiAgICAgICAgICAgICAgICAgIGNvbG9yOiB0aGlzLnNlbGVjdENvbG9yRW5kID8gdGhpcy5zZWxlY3RDb2xvckVuZCA6IHRoaXMuX2FyZWFDb2xvciwgLy8gMTAwJSDlpITnmoTpopzoibJcclxuICAgICAgICAgICAgICAgIH0sXHJcbiAgICAgICAgICAgICAgXSxcclxuICAgICAgICAgICAgICBnbG9iYWxDb29yZDogZmFsc2UsIC8vIOe8uuecgeS4uiBmYWxzZVxyXG4gICAgICAgICAgICB9LFxyXG4gICAgICAgICAgICBib3JkZXJDb2xvcjogdGhpcy5fYm9yZGVyQ29sb3IsXHJcbiAgICAgICAgICB9LFxyXG4gICAgICAgIH0sXHJcblxyXG4gICAgICAgIG1hcDogdGhpcy5tYXBTdHlsZSxcclxuICAgICAgICByb2FtOiB0aGlzLnpvb21Td2l0Y2gsXHJcbiAgICAgICAgbmFtZU1hcDogdGhpcy5uYW1lTWFwLFxyXG4gICAgICAgIHpvb206IHRoaXMuem9vbSxcclxuICAgICAgfSxcclxuICAgICAgc2VyaWVzLFxyXG4gICAgfTtcclxuICAgIGlmICh0aGlzLnZpc3VhbE1hcD8ubGVuZ3RoKSB7XHJcbiAgICAgIHRoaXMuY2hhcnRPcHRpb24udmlzdWFsTWFwID0gdGhpcy52aXN1YWxNYXA7XHJcbiAgICB9XHJcbiAgICAvLyB9KTtcclxuICB9XHJcbiAgY2hpbGRJbml0KGNoaWxkOiBhbnkpIHtcclxuICAgIGlmIChjaGlsZC5pZCkge1xyXG4gICAgICBjb25zdCBjaGlsZEluZGV4ID0gdGhpcy5fY2hpbGRyZW4uZmluZEluZGV4KChzKSA9PiBzLmlkID09PSBjaGlsZC5pZCk7XHJcbiAgICAgIGlmIChjaGlsZEluZGV4ID4gLTEpIHtcclxuICAgICAgICB0aGlzLl9jaGlsZHJlbltjaGlsZEluZGV4XSA9IGNoaWxkO1xyXG4gICAgICB9IGVsc2Uge1xyXG4gICAgICAgIHRoaXMuX2NoaWxkcmVuLnB1c2goY2hpbGQpO1xyXG4gICAgICB9XHJcbiAgICAgIHRoaXMuY2hhcnRJbml0KCk7XHJcbiAgICB9XHJcbiAgfVxyXG4gIGRlbGV0ZUNoaWxkKGNoaWxkSWQ6IHN0cmluZykge1xyXG4gICAgaWYgKGNoaWxkSWQpIHtcclxuICAgICAgY29uc3QgY2hpbGRJbmRleCA9IHRoaXMuX2NoaWxkcmVuLmZpbmRJbmRleCgocykgPT4gcy5pZCA9PT0gY2hpbGRJZCk7XHJcbiAgICAgIC8vIHRoaXMuX2NoaWxkcmVuLmZvckVhY2goKGVsZW1lbnQpID0+IHtcclxuICAgICAgLy8gICBpZiAoY2hpbGRJZCA9PT0gZWxlbWVudC5pZCkge1xyXG4gICAgICAvLyAgICAgdGhpcy52aXN1YWxNYXAgPSBudWxsO1xyXG4gICAgICAvLyAgIH1cclxuICAgICAgLy8gfSk7XHJcbiAgICAgIGlmIChjaGlsZEluZGV4ID4gLTEpIHtcclxuICAgICAgICB0aGlzLl9jaGlsZHJlbi5zcGxpY2UoY2hpbGRJbmRleCwgMSk7XHJcbiAgICAgICAgdGhpcy5jaGFydEluaXQoKTtcclxuICAgICAgfVxyXG4gICAgfVxyXG4gIH1cclxuXHJcbiAgLy8gbG9hZE1hcChuYW1lOiBzdHJpbmcpIHtcclxuICAvLyAgIGxldCBsb2FkTWFwUHJvbWlzZSA9IHRoaXMubG9hZGVkTWFwW25hbWVdO1xyXG4gIC8vICAgaWYgKCFsb2FkTWFwUHJvbWlzZSkge1xyXG4gIC8vICAgICBsb2FkTWFwUHJvbWlzZSA9IHRoaXMuaHR0cC5nZXQoJ2Fzc2V0cy9lY2hhcnRzL21hcC9qc29uLycgKyBuYW1lICsgJy5qc29uJykudG9Qcm9taXNlKCk7XHJcbiAgLy8gICAgIHRoaXMubG9hZGVkTWFwW25hbWVdID0gbG9hZE1hcFByb21pc2U7XHJcbiAgLy8gICB9XHJcbiAgLy8gICByZXR1cm4gbG9hZE1hcFByb21pc2U7XHJcbiAgLy8gfVxyXG4gIGFzeW5jIHJlbG9hZE1hcCgpIHtcclxuICAgIGNvbnN0IG1hcFN0eWxlID0gdGhpcy5tYXBTdHlsZTtcclxuICAgIGNvbnN0IG1hcCA9IGVjaGFydHMuZ2V0TWFwKG1hcFN0eWxlKTtcclxuICAgIGlmIChtYXAgPT0gbnVsbCkge1xyXG4gICAgICBjb25zdCBkYXRhOiBhbnkgPSBhd2FpdCB0aGlzLmh0dHAuZ2V0KCdhc3NldHMvZWNoYXJ0cy9tYXAvanNvbi8nICsgbWFwU3R5bGUgKyAnLmpzb24nKS50b1Byb21pc2UoKTtcclxuICAgICAgZWNoYXJ0cy5yZWdpc3Rlck1hcChtYXBTdHlsZSwgZGF0YSk7XHJcbiAgICB9XHJcbiAgICB0aGlzLmhhc01hcCA9IHRydWU7XHJcbiAgICB0aGlzLmNoYXJ0SW5pdCgpO1xyXG4gIH1cclxuICBhc3luYyBtYXJrQ2xpY2soZXZlbnQpIHtcclxuICAgIGxldCBsbmc6IG51bWJlcjtcclxuICAgIGxldCBsYXQ6IG51bWJlcjtcclxuICAgIGlmIChldmVudC5zZXJpZXNJZCkge1xyXG4gICAgICBsbmcgPSBldmVudC52YWx1ZVswXTtcclxuICAgICAgbGF0ID0gZXZlbnQudmFsdWVbMV07XHJcbiAgICAgIGNvbnN0IGNoaWxkID0gdGhpcy5fY2hpbGRyZW4uZmluZCgocykgPT4gZXZlbnQuc2VyaWVzSWQuc3RhcnRzV2l0aChzLmlkKSk7XHJcbiAgICAgIGlmIChjaGlsZCAmJiBjaGlsZC5vbkNsaWNrKSB7XHJcbiAgICAgICAgY2hpbGQub25DbGljayhldmVudCk7XHJcbiAgICAgIH1cclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIGNvbnN0IG1hcCA9IGVjaGFydHMuZ2V0TWFwKHRoaXMubWFwU3R5bGUpO1xyXG4gICAgICBpZiAobWFwKSB7XHJcbiAgICAgICAgZm9yIChjb25zdCBmZWF0dXJlIG9mIG1hcC5nZW9Kc29uLmZlYXR1cmVzKSB7XHJcbiAgICAgICAgICBjb25zdCBwcm9wZXJ0aWVzID0gZmVhdHVyZS5wcm9wZXJ0aWVzO1xyXG4gICAgICAgICAgaWYgKHByb3BlcnRpZXMubmFtZSA9PT0gZXZlbnQubmFtZSkge1xyXG4gICAgICAgICAgICBpZiAocHJvcGVydGllcy5jcCkge1xyXG4gICAgICAgICAgICAgIGxuZyA9IHByb3BlcnRpZXMuY3BbMF07XHJcbiAgICAgICAgICAgICAgbGF0ID0gcHJvcGVydGllcy5jcFsxXTtcclxuICAgICAgICAgICAgfSBlbHNlIGlmIChwcm9wZXJ0aWVzLmNlbnRlcikge1xyXG4gICAgICAgICAgICAgIGxuZyA9IHByb3BlcnRpZXMuY2VudGVyWzBdO1xyXG4gICAgICAgICAgICAgIGxhdCA9IHByb3BlcnRpZXMuY2VudGVyWzFdO1xyXG4gICAgICAgICAgICB9IGVsc2Uge1xyXG4gICAgICAgICAgICAgIGNvbnNvbGUubG9nKHByb3BlcnRpZXMpO1xyXG4gICAgICAgICAgICB9XHJcbiAgICAgICAgICAgIGJyZWFrO1xyXG4gICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgICAgfVxyXG4gICAgICBjb25zdCBwcm92aW5jZSA9IHRoaXMucHJvdmluY2VzLmZpbmQoKGVsZW1lbnQpID0+IGVsZW1lbnQubGFiZWwgPT09IGV2ZW50Lm5hbWUpO1xyXG4gICAgICBpZiAocHJvdmluY2UpIHtcclxuICAgICAgICB0aGlzLnN0YWNrLnB1c2godGhpcy5tYXBTdHlsZSk7XHJcbiAgICAgICAgdGhpcy5tYXBTdHlsZSA9IHByb3ZpbmNlLnZhbHVlO1xyXG4gICAgICAgIHRoaXMucmVsb2FkTWFwKCk7XHJcbiAgICAgIH1cclxuICAgIH1cclxuICAgIHRoaXMuYXJlYUNsaWNrLmVtaXQoeyBuYW1lOiBldmVudC5uYW1lLCBsbmcsIGxhdCB9KTtcclxuICAgIC8vIGlmKGV2ZW50LmNvbXBvbmVudFN1YlR5cGUhPW51bGwgJiYgZXZlbnQuY29tcG9uZW50U3ViVHlwZT09PSdzY2F0dGVyJyl7XHJcbiAgICAvLyAgIGNvbnN0IG9iaj1ldmVudC5kYXRhO1xyXG4gICAgLy8gICBjb25zb2xlLmxvZyhldmVudCk7XHJcbiAgICAvLyAgIHRoaXMubWFya2VyVGllckNsaWNrLmVtaXQoe1xyXG4gICAgLy8gICAgIGFkZHJlc3M6IG9iai5uYW1lLFxyXG4gICAgLy8gICAgIGluZm9ybWF0aW9uOiAnJyxcclxuICAgIC8vICAgICBncm91cDogJycsXHJcbiAgICAvLyAgICAgbG5nOiBvYmoudmFsdWVbMF0sXHJcbiAgICAvLyAgICAgbGF0OiBvYmoudmFsdWVbMV0sXHJcbiAgICAvLyAgIH0pO1xyXG4gICAgLy8gfVxyXG4gIH1cclxuICByb2xsYmFjayhldmVudDogTW91c2VFdmVudCkge1xyXG4gICAgZXZlbnQucHJldmVudERlZmF1bHQoKTtcclxuICAgIGlmICh0aGlzLnN0YWNrICE9IG51bGwgJiYgdGhpcy5zdGFjay5sZW5ndGggIT0gMCkge1xyXG4gICAgICB0aGlzLm1hcFN0eWxlID0gdGhpcy5zdGFjay5wb3AoKTtcclxuICAgICAgdGhpcy5yZWxvYWRNYXAoKTtcclxuICAgIH1cclxuICB9XHJcblxyXG4gIGdldFRleHRTdHlsZSgpIHt9XHJcbn1cclxuIl19
|