From 9c949e8ac08b765342f79678b957d015c16cf5c9 Mon Sep 17 00:00:00 2001 From: novlan1 <1576271227@qq.com> Date: Tue, 18 Nov 2025 23:59:47 +0800 Subject: [PATCH 01/26] feat: add uniapp --- .gitignore | 8 + .vscode/settings.json | 7 +- package.json | 2 + packages/tdesign-uniapp-chat/.eslintignore | 17 + packages/tdesign-uniapp-chat/.eslintrc.js | 24 + .../tdesign-uniapp-chat/components/.npmrc | 1 + .../components/CHANGELOG.md | 11 + .../tdesign-uniapp-chat/components/LICENSE | 9 + .../tdesign-uniapp-chat/components/README.md | 108 + .../components/attachments/README.en-US.md | 21 + .../components/attachments/README.md | 55 + .../attachments/_example/attachments.less | 0 .../attachments/_example/attachments.vue | 57 + .../attachments/_example/base/index.vue | 85 + .../_example/file-loading/index.vue | 85 + .../attachments/_example/file/index.vue | 136 ++ .../_example/image-loading/index.vue | 85 + .../components/attachments/attachments.less | 250 ++ .../components/attachments/attachments.vue | 349 +++ .../components/attachments/computed.js | 49 + .../components/attachments/props.ts | 45 + .../components/attachments/type.ts | 57 + .../components/chat-actionbar/README.en-US.md | 22 + .../components/chat-actionbar/README.md | 49 + .../chat-actionbar/_example/base/index.vue | 88 + .../_example/chat-actionbar.less | 8 + .../_example/chat-actionbar.vue | 48 + .../chat-actionbar/_example/comment/index.vue | 89 + .../chat-actionbar/chat-actionbar.less | 84 + .../chat-actionbar/chat-actionbar.vue | 225 ++ .../components/chat-actionbar/props.ts | 54 + .../components/chat-actionbar/type.ts | 47 + .../components/chat-content/README.en-US.md | 18 + .../components/chat-content/README.md | 41 + .../chat-content/_example/base/index.vue | 105 + .../chat-content/_example/chat-content.less | 0 .../chat-content/_example/chat-content.vue | 35 + .../components/chat-content/chat-content.less | 49 + .../components/chat-content/chat-content.vue | 119 + .../components/chat-content/props.ts | 39 + .../components/chat-content/type.ts | 35 + .../components/chat-list/README.en-US.md | 25 + .../components/chat-list/README.md | 68 + .../chat-list/_example/agent/index.vue | 601 +++++ .../chat-list/_example/base/index.vue | 330 +++ .../_example/chart-component/index.vue | 82 + .../chat-list/_example/chat-list.less | 7 + .../chat-list/_example/chat-list.vue | 101 + .../chat-list/_example/code/index.vue | 389 +++ .../chat-list/_example/custom/index.vue | 399 +++ .../chat-list/_example/docs/index.vue | 373 +++ .../_example/ec-canvas/ec-canvas.vue | 319 +++ .../chat-list/_example/ec-canvas/echarts.js | 45 + .../chat-list/_example/ec-canvas/wx-canvas.js | 111 + .../_example/hook-component/index.vue | 337 +++ .../chat-list/_example/image/index.vue | 460 ++++ .../components/chat-list/_example/utils.ts | 28 + .../components/chat-list/chat-list.less | 35 + .../components/chat-list/chat-list.vue | 177 ++ .../components/chat-list/props.ts | 41 + .../components/chat-list/type.ts | 40 + .../components/chat-loading/README.en-US.md | 11 + .../components/chat-loading/README.md | 34 + .../chat-loading/_example/base/index.vue | 43 + .../chat-loading/_example/chat-loading.less | 0 .../chat-loading/_example/chat-loading.vue | 61 + .../chat-loading/_example/text/index.vue | 30 + .../components/chat-loading/chat-loading.less | 171 ++ .../components/chat-loading/chat-loading.vue | 91 + .../components/chat-loading/props.ts | 23 + .../components/chat-loading/type.ts | 18 + .../chat-markdown-code.less | 96 + .../chat-markdown-code/chat-markdown-code.vue | 58 + .../chat-markdown-node.less | 0 .../chat-markdown-node/chat-markdown-node.vue | 292 +++ .../chat-markdown-table.less | 68 + .../chat-markdown-table.vue | 80 + .../components/chat-markdown/README.en-US.md | 17 + .../components/chat-markdown/README.md | 60 + .../chat-markdown/_example/base/index.vue | 60 + .../chat-markdown/_example/base/mock2.js | 104 + .../chat-markdown/_example/chat-markdown.less | 17 + .../chat-markdown/_example/chat-markdown.vue | 68 + .../chat-markdown/_example/code/index.vue | 47 + .../chat-markdown/_example/list/index.vue | 50 + .../chat-markdown/_example/refer/index.vue | 46 + .../chat-markdown/_example/sheet/index.vue | 46 + .../chat-markdown/_example/url/index.vue | 50 + .../chat-markdown/chat-markdown.less | 192 ++ .../chat-markdown/chat-markdown.vue | 80 + .../components/chat-markdown/props.ts | 24 + .../components/chat-markdown/type.ts | 29 + .../components/chat-message/README.en-US.md | 31 + .../components/chat-message/README.md | 79 + .../chat-message/_example/base/index.vue | 52 + .../chat-message/_example/chat-message.less | 7 + .../chat-message/_example/chat-message.vue | 70 + .../chat-message/_example/configure/index.vue | 70 + .../chat-message/_example/content/index.vue | 244 ++ .../chat-message/_example/error/index.vue | 51 + .../chat-message/_example/status/index.vue | 62 + .../chat-message/_example/style/index.vue | 69 + .../components/chat-message/chat-message.less | 252 ++ .../components/chat-message/chat-message.vue | 176 ++ .../components/chat-message/props.ts | 82 + .../components/chat-message/type.ts | 87 + .../components/chat-sender/README.en-US.md | 39 + .../components/chat-sender/README.md | 76 + .../_example/attachments/index.vue | 425 ++++ .../chat-sender/_example/base/index.vue | 366 +++ .../chat-sender/_example/chat-sender.less | 17 + .../chat-sender/_example/chat-sender.vue | 55 + .../_example/content-citation/index.vue | 430 ++++ .../_example/file-citation/index.vue | 445 ++++ .../chat-sender/_example/theme/index.vue | 112 + .../components/chat-sender/chat-sender.less | 284 +++ .../components/chat-sender/chat-sender.vue | 464 ++++ .../components/chat-sender/computed.js | 22 + .../components/chat-sender/props.ts | 118 + .../components/chat-sender/type.ts | 137 ++ .../components/chat-thinking/README.en-US.md | 21 + .../components/chat-thinking/README.md | 71 + .../chat-thinking/_example/base/index.vue | 134 ++ .../chat-thinking/_example/chat-thinking.less | 0 .../chat-thinking/_example/chat-thinking.vue | 62 + .../chat-thinking/_example/complete/index.vue | 42 + .../chat-thinking/_example/layout/index.vue | 69 + .../chat-thinking/_example/pending/index.vue | 41 + .../chat-thinking/chat-thinking.less | 101 + .../chat-thinking/chat-thinking.vue | 122 + .../components/chat-thinking/props.ts | 52 + .../components/chat-thinking/type.ts | 40 + .../components/global.d.ts | 15 + .../components/npm/marked/index.js | 72 + .../components/package.json | 157 ++ .../components/script/postinstall.js | 46 + .../tdesign-uniapp-chat/tdesign-uniapp.vue | 11 + .../components/types/attachments.d.ts | 7 + .../components/types/chat-actionbar.d.ts | 7 + .../components/types/chat-content.d.ts | 7 + .../components/types/chat-list.d.ts | 7 + .../components/types/chat-loading.d.ts | 7 + .../components/types/chat-markdown.d.ts | 7 + .../components/types/chat-message.d.ts | 7 + .../components/types/chat-sender.d.ts | 7 + .../components/types/chat-thinking.d.ts | 7 + .../components/types/index.d.ts | 9 + packages/tdesign-uniapp-chat/package.json | 98 + packages/tdesign-uniapp-chat/shims-uni.d.ts | 12 + .../tdesign-uniapp-chat/site/.env.intranet | 1 + .../tdesign-uniapp-chat/site/.env.preview | 1 + .../tdesign-uniapp-chat/site/.env.production | 1 + .../tdesign-uniapp-chat/site/docs.config.js | 166 ++ .../site/docs/custom-style.md | 117 + .../site/docs/custom-theme.md | 63 + .../site/docs/dark-mode.md | 95 + packages/tdesign-uniapp-chat/site/docs/faq.md | 28 + .../site/docs/getting-started.en-US.md | 94 + .../site/docs/getting-started.md | 73 + packages/tdesign-uniapp-chat/site/docs/sse.md | 199 ++ packages/tdesign-uniapp-chat/site/index.html | 38 + packages/tdesign-uniapp-chat/site/mobile.html | 37 + .../tdesign-uniapp-chat/site/package.json | 136 ++ .../site/styles/mixins/index.less | 16 + .../site/styles/mixins/text.less | 55 + .../site/styles/mobile/components.less | 112 + .../site/styles/mobile/demo.less | 61 + .../site/styles/mobile/index.less | 152 ++ .../tdesign-uniapp-chat/site/styles/vars.less | 125 + .../tdesign-uniapp-chat/site/vite.config.ts | 94 + packages/tdesign-uniapp-chat/site/web/app.vue | 149 ++ packages/tdesign-uniapp-chat/site/web/main.ts | 24 + .../changelog-to-json-core/components.ts | 166 ++ .../plugins/changelog-to-json-core/index.ts | 194 ++ .../plugins/changelog-to-json-core/libs.ts | 23 + .../plugins/changelog-to-json-core/types.ts | 29 + .../web/plugins/changelog-to-json/index.js | 32 + .../site/web/plugins/plugin-tdoc/demo.js | 42 + .../site/web/plugins/plugin-tdoc/index.js | 38 + .../site/web/plugins/plugin-tdoc/md-to-vue.js | 212 ++ .../web/plugins/plugin-tdoc/transforms.js | 77 + .../tdesign-uniapp-chat/site/web/router.ts | 68 + .../site/web/stackblitz/content.ts | 237 ++ .../site/web/stackblitz/index.vue | 130 + .../site/web/test-coverage.js | 69 + .../tdesign-uniapp-chat/site/web/utils.ts | 63 + .../tdesign-uniapp-chat/tsconfig.eslint.json | 13 + packages/tdesign-uniapp-chat/tsconfig.json | 40 + packages/tdesign-uniapp/.eslintignore | 17 + packages/tdesign-uniapp/.eslintrc.js | 24 + packages/tdesign-uniapp/components/.npmrc | 1 + .../tdesign-uniapp/components/CHANGELOG.md | 41 + packages/tdesign-uniapp/components/LICENSE | 9 + packages/tdesign-uniapp/components/README.md | 144 ++ .../components/action-sheet/README.en-US.md | 59 + .../components/action-sheet/README.md | 130 + .../action-sheet/_example/action-sheet.less | 7 + .../action-sheet/_example/action-sheet.vue | 74 + .../action-sheet/_example/align/index.vue | 75 + .../action-sheet/_example/grid/index.vue | 106 + .../action-sheet/_example/list/index.vue | 126 + .../action-sheet/_example/status/index.vue | 69 + .../components/action-sheet/action-sheet.less | 156 ++ .../components/action-sheet/action-sheet.vue | 334 +++ .../components/action-sheet/computed.js | 15 + .../components/action-sheet/index.ts | 13 + .../components/action-sheet/props.ts | 86 + .../components/action-sheet/show.ts | 52 + .../components/action-sheet/type.ts | 92 + .../components/avatar-group/avatar-group.less | 66 + .../components/avatar-group/avatar-group.vue | 121 + .../components/avatar-group/props.ts | 44 + .../components/avatar-group/type.ts | 38 + .../components/avatar/README.en-US.md | 102 + .../components/avatar/README.md | 152 ++ .../avatar/_example/action/index.vue | 54 + .../components/avatar/_example/avatar.less | 13 + .../components/avatar/_example/avatar.vue | 100 + .../avatar/_example/badge-avatar/index.vue | 51 + .../_example/character-avatar/index.vue | 48 + .../avatar/_example/exhibition/index.vue | 42 + .../avatar/_example/icon-avatar/index.vue | 34 + .../avatar/_example/image-avatar/index.vue | 37 + .../components/avatar/_example/size/index.vue | 105 + .../avatar/_example/skyline/avatar.less | 0 .../avatar/_example/skyline/avatar.vue | 22 + .../components/avatar/avatar.less | 116 + .../components/avatar/avatar.vue | 200 ++ .../components/avatar/computed.js | 32 + .../tdesign-uniapp/components/avatar/props.ts | 54 + .../tdesign-uniapp/components/avatar/type.ts | 58 + .../components/back-top/README.en-US.md | 49 + .../components/back-top/README.md | 67 + .../back-top/_example/back-top.less | 14 + .../components/back-top/_example/back-top.vue | 150 ++ .../back-top/_example/base/index.vue | 42 + .../back-top/_example/half-round/index.vue | 42 + .../back-top/_example/skyline/back-top.less | 14 + .../back-top/_example/skyline/back-top.vue | 167 ++ .../components/back-top/back-top.less | 97 + .../components/back-top/back-top.vue | 122 + .../components/back-top/props.ts | 48 + .../components/back-top/type.ts | 42 + .../components/badge/README.en-US.md | 53 + .../tdesign-uniapp/components/badge/README.md | 84 + .../components/badge/_example/api.md | 14 + .../components/badge/_example/badge.less | 0 .../components/badge/_example/badge.vue | 43 + .../components/badge/_example/base/index.vue | 114 + .../components/badge/_example/size/index.vue | 47 + .../badge/_example/skyline/badge.less | 0 .../badge/_example/skyline/badge.vue | 55 + .../components/badge/_example/theme/index.vue | 122 + .../components/badge/badge.less | 123 + .../tdesign-uniapp/components/badge/badge.vue | 119 + .../components/badge/computed.js | 66 + .../tdesign-uniapp/components/badge/props.ts | 55 + .../tdesign-uniapp/components/badge/type.ts | 52 + .../components/button/README.en-US.md | 238 ++ .../components/button/README.md | 229 ++ .../components/button/_example/base/index.vue | 77 + .../button/_example/block-btn/index.vue | 32 + .../components/button/_example/button.less | 3 + .../components/button/_example/button.vue | 99 + .../button/_example/disabled/index.vue | 84 + .../button/_example/ghost-btn/index.vue | 48 + .../button/_example/group-btn/index.vue | 55 + .../button/_example/icon-btn/index.vue | 76 + .../button/_example/shape/index.vue | 70 + .../components/button/_example/size/index.vue | 52 + .../button/_example/skyline/button.less | 18 + .../button/_example/skyline/button.vue | 107 + .../button/_example/theme/index.vue | 121 + .../components/button/button.less | 645 +++++ .../components/button/button.vue | 237 ++ .../tdesign-uniapp/components/button/props.ts | 207 ++ .../tdesign-uniapp/components/button/type.ts | 192 ++ .../components/calendar/README.en-US.md | 62 + .../components/calendar/README.md | 112 + .../calendar/_example/base/index.vue | 52 + .../components/calendar/_example/calendar.css | 3 + .../components/calendar/_example/calendar.vue | 84 + .../components/calendar/_example/computed.js | 24 + .../calendar/_example/custom-range/index.vue | 55 + .../calendar/_example/custom-text/index.vue | 109 + .../calendar/_example/local-text/index.vue | 63 + .../calendar/_example/multiple/index.vue | 64 + .../calendar/_example/range/index.vue | 89 + .../calendar/_example/switch-mode/index.vue | 56 + .../calendar/_example/without-popup/index.vue | 31 + .../calendar/calendar-header.props.js | 42 + .../components/calendar/calendar-header.vue | 98 + .../components/calendar/calendar.less | 251 ++ .../components/calendar/calendar.vue | 445 ++++ .../components/calendar/computed.js | 42 + .../components/calendar/props.ts | 111 + .../components/calendar/template.props.js | 57 + .../components/calendar/template.vue | 257 ++ .../components/calendar/type.ts | 136 ++ .../components/calendar/utils.ts | 18 + .../components/cascader/README.en-US.md | 57 + .../components/cascader/README.md | 97 + .../cascader/_example/base/index.vue | 212 ++ .../components/cascader/_example/cascader.vue | 70 + .../_example/check-strictly/index.vue | 228 ++ .../cascader/_example/keys/index.vue | 215 ++ .../cascader/_example/theme-tab/index.vue | 205 ++ .../cascader/_example/with-title/index.vue | 205 ++ .../cascader/_example/with-value/index.vue | 205 ++ .../components/cascader/cascader.less | 123 + .../components/cascader/cascader.vue | 516 ++++ .../components/cascader/props.ts | 73 + .../components/cascader/type.ts | 75 + .../components/cell-group/_example/api.md | 7 + .../cell-group/_example/cell-group.less | 7 + .../cell-group/_example/cell-group.vue | 55 + .../components/cell-group/cell-group.less | 43 + .../components/cell-group/cell-group.vue | 69 + .../components/cell-group/props.ts | 25 + .../components/cell-group/type.ts | 23 + .../components/cell/README.en-US.md | 118 + .../tdesign-uniapp/components/cell/README.md | 149 ++ .../components/cell/_example/base/index.vue | 75 + .../components/cell/_example/cell.less | 0 .../components/cell/_example/cell.vue | 51 + .../cell/_example/multiple/index.vue | 130 + .../cell/_example/skyline/cell.less | 0 .../components/cell/_example/skyline/cell.vue | 60 + .../components/cell/_example/theme/index.vue | 42 + .../tdesign-uniapp/components/cell/cell.less | 138 ++ .../tdesign-uniapp/components/cell/cell.vue | 260 ++ .../tdesign-uniapp/components/cell/props.ts | 87 + .../tdesign-uniapp/components/cell/type.ts | 82 + .../components/check-tag/check-tag.less | 193 ++ .../components/check-tag/check-tag.vue | 149 ++ .../components/check-tag/props.ts | 67 + .../components/check-tag/type.ts | 63 + .../checkbox-group/checkbox-group.vue | 245 ++ .../components/checkbox-group/props.ts | 58 + .../components/checkbox-group/type.ts | 72 + .../components/checkbox/README.en-US.md | 103 + .../components/checkbox/README.md | 158 ++ .../checkbox/_example/all/index.vue | 53 + .../checkbox/_example/base/index.vue | 57 + .../checkbox/_example/card/index.vue | 62 + .../checkbox/_example/checkbox.less | 0 .../components/checkbox/_example/checkbox.vue | 97 + .../checkbox/_example/horizontal/index.vue | 74 + .../checkbox/_example/right/index.vue | 38 + .../checkbox/_example/skyline/checkbox.less | 0 .../checkbox/_example/skyline/checkbox.vue | 22 + .../checkbox/_example/special/index.vue | 195 ++ .../checkbox/_example/status/index.vue | 35 + .../checkbox/_example/type/index.vue | 59 + .../components/checkbox/checkbox.less | 229 ++ .../components/checkbox/checkbox.vue | 239 ++ .../components/checkbox/props.ts | 90 + .../components/checkbox/type.ts | 96 + .../components/col/README.en-US.md | 31 + .../tdesign-uniapp/components/col/README.md | 60 + .../components/col/_example/base/index.vue | 83 + .../components/col/_example/col.less | 17 + .../components/col/_example/col.vue | 49 + .../components/col/_example/offset/index.vue | 55 + .../components/col/_example/skyline/col.less | 0 .../components/col/_example/skyline/col.vue | 53 + .../tdesign-uniapp/components/col/col.less | 21 + .../tdesign-uniapp/components/col/col.vue | 51 + .../tdesign-uniapp/components/col/computed.js | 14 + .../tdesign-uniapp/components/col/props.ts | 16 + .../tdesign-uniapp/components/col/type.ts | 16 + .../collapse-panel/collapse-panel.less | 133 + .../collapse-panel/collapse-panel.vue | 237 ++ .../components/collapse-panel/props.ts | 48 + .../components/collapse-panel/type.ts | 41 + .../components/collapse/README.en-US.md | 81 + .../components/collapse/README.md | 118 + .../collapse/_example/accordion/index.vue | 53 + .../collapse/_example/action/index.vue | 40 + .../collapse/_example/base/index.vue | 41 + .../collapse/_example/collapse.less | 45 + .../components/collapse/_example/collapse.vue | 71 + .../collapse/_example/placement/index.vue | 41 + .../collapse/_example/theme/index.vue | 53 + .../components/collapse/collapse.less | 9 + .../components/collapse/collapse.vue | 119 + .../components/collapse/props.ts | 42 + .../components/collapse/type.ts | 46 + .../components/color-picker/README.en-US.md | 66 + .../components/color-picker/README.md | 114 + .../color-picker/_example/base/index.vue | 25 + .../color-picker/_example/color-picker.less | 0 .../color-picker/_example/color-picker.vue | 66 + .../color-picker/_example/format/index.vue | 114 + .../color-picker/_example/multiple/index.vue | 33 + .../color-picker/_example/use-popup/index.vue | 54 + .../components/color-picker/color-picker.less | 366 +++ .../components/color-picker/color-picker.vue | 498 ++++ .../components/color-picker/constants.ts | 26 + .../components/color-picker/props.ts | 75 + .../components/color-picker/template.props.js | 58 + .../components/color-picker/template.vue | 198 ++ .../components/color-picker/type.ts | 96 + .../components/color-picker/utils.js | 1 + .../tdesign-uniapp/components/common/bus.js | 84 + .../components/common/canvas/index.js | 53 + .../components/common/common.ts | 173 ++ .../components/common/config.js | 9 + .../components/common/dom/index.js | 1 + .../components/common/dom/select-component.js | 26 + .../components/common/event/dynamic.js | 10 + .../components/common/functional/mixin.js | 51 + .../components/common/relation/index.js | 6 + .../components/common/relation/parent-map.js | 24 + .../components/common/relation/relation.js | 213 ++ .../components/common/runtime/index.js | 5 + .../components/common/runtime/relation.js | 0 .../components/common/runtime/wxs-polyfill.js | 16 + .../common/shared/calendar/index.ts | 145 ++ .../components/common/shared/calendar/type.ts | 14 + .../common/shared/color-picker/cmyk.ts | 89 + .../common/shared/color-picker/color.ts | 478 ++++ .../common/shared/color-picker/gradient.ts | 234 ++ .../common/shared/color-picker/index.ts | 3 + .../components/common/shared/date.ts | 47 + .../common/shared/qrcode/qrcodegen.ts | 1051 ++++++++ .../components/common/shared/qrcode/types.ts | 55 + .../components/common/shared/qrcode/utils.ts | 157 ++ .../components/common/src/control.js | 66 + .../components/common/src/flatTool.js | 99 + .../components/common/src/index.js | 4 + .../common/src/instantiationDecorator.js | 251 ++ .../components/common/src/superComponent.js | 5 + .../components/common/style/_variables.less | 198 ++ .../components/common/style/base.less | 4 + .../components/common/style/icons.less | 2132 +++++++++++++++++ .../components/common/style/index.less | 3 + .../common/style/mixins/_border.less | 34 + .../common/style/mixins/_clearfix.less | 7 + .../common/style/mixins/_cursor.less | 6 + .../common/style/mixins/_ellipsis.less | 15 + .../common/style/mixins/_hairline.less | 55 + .../common/style/mixins/_index.less | 6 + .../common/style/mixins/_other.less | 14 + .../components/common/style/theme/index.css | 354 +++ .../components/common/style/theme/index.less | 11 + .../common/style/theme/raw/_components.less | 28 + .../common/style/theme/raw/_dark.less | 176 ++ .../common/style/theme/raw/_font.less | 37 + .../common/style/theme/raw/_light.less | 182 ++ .../common/style/theme/raw/_radius.less | 10 + .../common/style/theme/raw/_spacer.less | 11 + .../common/style/utilities/_index.less | 16 + .../tdesign-uniapp/components/common/utils.js | 335 +++ .../components/common/utils.wxs.js | 140 ++ .../components/common/validator.js | 30 + .../components/common/version.js | 66 + .../components/common/wechat.js | 20 + .../components/count-down/README.en-US.md | 50 + .../components/count-down/README.md | 76 + .../count-down/_example/base/index.vue | 118 + .../count-down/_example/count-down.less | 52 + .../count-down/_example/count-down.vue | 55 + .../count-down/_example/size/index.vue | 173 ++ .../_example/skyline/count-down.less | 3 + .../_example/skyline/count-down.vue | 59 + .../components/count-down/computed.js | 3 + .../components/count-down/count-down.less | 150 ++ .../components/count-down/count-down.vue | 166 ++ .../components/count-down/props.ts | 62 + .../components/count-down/type.ts | 64 + .../components/count-down/utils.ts | 80 + .../date-time-picker/README.en-US.md | 61 + .../components/date-time-picker/README.md | 105 + .../_example/date-all/index.vue | 75 + .../_example/date-time-picker.less | 0 .../_example/date-time-picker.vue | 74 + .../_example/skyline/date-time-picker.less | 0 .../_example/skyline/date-time-picker.vue | 74 + .../date-time-picker/_example/steps/index.vue | 66 + .../date-time-picker/_example/time/index.vue | 104 + .../_example/without-popup/index.vue | 59 + .../_example/year-month-date/index.vue | 136 ++ .../_example/year-month/index.vue | 78 + .../date-time-picker/date-time-picker.less | 12 + .../date-time-picker/date-time-picker.vue | 569 +++++ .../date-time-picker/locale/dayjs.ts | 81 + .../components/date-time-picker/locale/en.ts | 12 + .../components/date-time-picker/locale/ja.ts | 12 + .../components/date-time-picker/locale/ko.ts | 12 + .../components/date-time-picker/locale/ru.ts | 12 + .../components/date-time-picker/locale/tc.ts | 12 + .../components/date-time-picker/locale/zh.ts | 12 + .../components/date-time-picker/props.ts | 114 + .../components/date-time-picker/type.ts | 134 ++ .../components/demo-header/demo-header.vue | 60 + .../components/demo-header/index.less | 25 + .../tdesign-uniapp/components/demo/demo.vue | 97 + .../tdesign-uniapp/components/demo/index.less | 58 + .../components/dialog/README.en-US.md | 71 + .../components/dialog/README.md | 122 + .../components/dialog/_example/base/index.vue | 158 ++ .../dialog/_example/button/index.vue | 65 + .../dialog/_example/command/index.vue | 50 + .../dialog/_example/confirm/index.vue | 103 + .../components/dialog/_example/dialog.less | 3 + .../components/dialog/_example/dialog.vue | 97 + .../dialog/_example/skyline/dialog.less | 3 + .../dialog/_example/skyline/dialog.vue | 106 + .../dialog/_example/status/index.vue | 189 ++ .../dialog/_example/with-image/index.vue | 231 ++ .../dialog/_example/with-input/index.vue | 130 + .../components/dialog/computed.js | 15 + .../components/dialog/dialog.less | 144 ++ .../components/dialog/dialog.vue | 425 ++++ .../tdesign-uniapp/components/dialog/index.ts | 127 + .../tdesign-uniapp/components/dialog/props.ts | 94 + .../tdesign-uniapp/components/dialog/type.ts | 97 + .../components/divider/README.en-US.md | 41 + .../components/divider/README.md | 65 + .../divider/_example/base/index.vue | 70 + .../components/divider/_example/divider.less | 3 + .../components/divider/_example/divider.vue | 50 + .../divider/_example/skyline/divider.less | 3 + .../divider/_example/skyline/divider.vue | 58 + .../divider/_example/theme/index.vue | 63 + .../components/divider/divider.less | 79 + .../components/divider/divider.vue | 79 + .../components/divider/props.ts | 33 + .../tdesign-uniapp/components/divider/type.ts | 27 + .../components/draggable/draggable.less | 5 + .../components/draggable/draggable.vue | 92 + .../components/draggable/props.js | 19 + .../components/drawer/README.en-US.md | 55 + .../components/drawer/README.md | 81 + .../components/drawer/_example/base/index.vue | 90 + .../components/drawer/_example/drawer.less | 3 + .../components/drawer/_example/drawer.vue | 67 + .../drawer/_example/footer/index.vue | 115 + .../drawer/_example/icon-drawer/index.vue | 95 + .../drawer/_example/skyline/drawer.less | 2 + .../drawer/_example/skyline/drawer.vue | 76 + .../drawer/_example/title/index.vue | 85 + .../components/drawer/drawer.less | 72 + .../components/drawer/drawer.vue | 138 ++ .../tdesign-uniapp/components/drawer/props.ts | 72 + .../tdesign-uniapp/components/drawer/type.ts | 81 + .../components/dropdown-item/computed.js | 6 + .../dropdown-item/dropdown-item.less | 131 + .../dropdown-item/dropdown-item.vue | 391 +++ .../components/dropdown-item/props.ts | 71 + .../components/dropdown-item/type.ts | 76 + .../components/dropdown-menu/README.en-US.md | 101 + .../components/dropdown-menu/README.md | 131 + .../dropdown-menu/_example/dropdown-menu.less | 9 + .../dropdown-menu/_example/dropdown-menu.vue | 78 + .../dropdown-menu/_example/multi/index.vue | 95 + .../dropdown-menu/_example/single/index.vue | 80 + .../dropdown-menu/_example/tree/index.vue | 63 + .../dropdown-menu/dropdown-menu.less | 65 + .../dropdown-menu/dropdown-menu.vue | 174 ++ .../components/dropdown-menu/props.ts | 44 + .../components/dropdown-menu/type.ts | 41 + .../components/empty/README.en-US.md | 40 + .../tdesign-uniapp/components/empty/README.md | 70 + .../components/empty/_example/base/index.vue | 24 + .../empty/_example/buttonEmpty/index.vue | 39 + .../components/empty/_example/empty.less | 3 + .../components/empty/_example/empty.vue | 52 + .../empty/_example/imageEmpty/index.vue | 36 + .../empty/_example/skyline/empty.less | 3 + .../empty/_example/skyline/empty.vue | 66 + .../components/empty/empty.less | 37 + .../tdesign-uniapp/components/empty/empty.vue | 140 ++ .../tdesign-uniapp/components/empty/props.ts | 20 + .../tdesign-uniapp/components/empty/type.ts | 20 + .../components/fab/README.en-US.md | 37 + .../tdesign-uniapp/components/fab/README.md | 81 + .../components/fab/_example/advance/index.vue | 36 + .../components/fab/_example/base/index.vue | 27 + .../fab/_example/collapsible/index.vue | 142 ++ .../fab/_example/draggable/index.vue | 41 + .../components/fab/_example/fab.less | 14 + .../components/fab/_example/fab.vue | 153 ++ .../components/fab/_example/skyline/fab.less | 7 + .../components/fab/_example/skyline/fab.vue | 106 + .../tdesign-uniapp/components/fab/fab.less | 15 + .../tdesign-uniapp/components/fab/fab.vue | 239 ++ .../tdesign-uniapp/components/fab/props.ts | 54 + .../tdesign-uniapp/components/fab/type.ts | 57 + .../components/footer/README.en-US.md | 36 + .../components/footer/README.md | 64 + .../components/footer/_example/base/index.vue | 24 + .../components/footer/_example/footer.less | 3 + .../components/footer/_example/footer.vue | 49 + .../components/footer/_example/link/index.vue | 57 + .../components/footer/_example/logo/index.vue | 40 + .../footer/_example/skyline/footer.less | 3 + .../footer/_example/skyline/footer.vue | 58 + .../components/footer/footer.less | 79 + .../components/footer/footer.vue | 117 + .../tdesign-uniapp/components/footer/props.ts | 23 + .../tdesign-uniapp/components/footer/type.ts | 34 + .../components/form-item/README.en-US.md | 30 + .../components/form-item/README.md | 30 + .../components/form-item/form-item.less | 158 ++ .../components/form-item/form-item.vue | 371 +++ .../components/form-item/form-model.ts | 198 ++ .../components/form-item/props.ts | 56 + .../components/form-item/type.ts | 7 + .../components/form/README.en-US.md | 135 ++ .../tdesign-uniapp/components/form/README.md | 144 ++ .../components/form/_example/form.less | 28 + .../components/form/_example/form.vue | 91 + .../form/_example/horizontal/index.vue | 623 +++++ .../form/_example/vertical/index.vue | 606 +++++ .../components/form/form-item-props.ts | 56 + .../tdesign-uniapp/components/form/form.less | 261 ++ .../tdesign-uniapp/components/form/form.vue | 272 +++ .../tdesign-uniapp/components/form/props.ts | 100 + .../tdesign-uniapp/components/form/type.ts | 376 +++ .../tdesign-uniapp/components/global.d.ts | 84 + .../components/grid-item/README.en-US.md | 43 + .../components/grid-item/README.md | 43 + .../components/grid-item/grid-item.less | 157 ++ .../components/grid-item/grid-item.vue | 287 +++ .../components/grid-item/props.ts | 63 + .../components/grid-item/type.ts | 56 + .../components/grid/README.en-US.md | 94 + .../tdesign-uniapp/components/grid/README.md | 145 ++ .../components/grid/_example/badge/index.vue | 115 + .../components/grid/_example/base/index.vue | 124 + .../components/grid/_example/border/index.vue | 98 + .../components/grid/_example/card/index.vue | 121 + .../grid/_example/description/index.vue | 94 + .../components/grid/_example/grid.less | 10 + .../components/grid/_example/grid.vue | 82 + .../grid/_example/icon-grid/index.vue | 82 + .../grid/_example/multiple/index.vue | 94 + .../components/grid/_example/scroll/index.vue | 86 + .../tdesign-uniapp/components/grid/grid.less | 20 + .../tdesign-uniapp/components/grid/grid.vue | 94 + .../tdesign-uniapp/components/grid/props.ts | 43 + .../tdesign-uniapp/components/grid/type.ts | 43 + .../components/guide/README.en-US.md | 109 + .../tdesign-uniapp/components/guide/README.md | 146 ++ .../components/guide/_example/base/index.vue | 156 ++ .../guide/_example/content/index.vue | 354 +++ .../guide/_example/dialog/index.vue | 192 ++ .../components/guide/_example/guide.less | 3 + .../components/guide/_example/guide.vue | 265 ++ .../guide/_example/multiple/index.vue | 169 ++ .../guide/_example/no-mask/index.vue | 139 ++ .../components/guide/content.vue | 319 +++ .../components/guide/guide.less | 134 ++ .../tdesign-uniapp/components/guide/guide.vue | 536 +++++ .../tdesign-uniapp/components/guide/props.ts | 98 + .../tdesign-uniapp/components/guide/type.ts | 174 ++ .../components/icon/README.en-US.md | 32 + .../tdesign-uniapp/components/icon/README.md | 109 + .../components/icon/_example/base/index.vue | 69 + .../components/icon/_example/custom/index.vue | 97 + .../components/icon/_example/data.js | 2 + .../components/icon/_example/icon.less | 5 + .../components/icon/_example/icon.vue | 47 + .../icon/_example/iconImage/index.vue | 58 + .../components/icon/_example/iconfont.css | 29 + .../icon/_example/skyline/icon.less | 5 + .../components/icon/_example/skyline/icon.vue | 57 + .../tdesign-uniapp/components/icon/icon.less | 50 + .../tdesign-uniapp/components/icon/icon.vue | 121 + .../tdesign-uniapp/components/icon/props.ts | 35 + .../tdesign-uniapp/components/icon/type.ts | 32 + .../components/image-viewer/README.en-US.md | 48 + .../components/image-viewer/README.md | 77 + .../image-viewer/_example/base/index.vue | 79 + .../image-viewer/_example/delete/index.vue | 90 + .../image-viewer/_example/image-viewer.less | 3 + .../image-viewer/_example/image-viewer.vue | 50 + .../_example/skyline/image-viewer.vue | 3 + .../components/image-viewer/computed.js | 4 + .../components/image-viewer/image-viewer.less | 101 + .../components/image-viewer/image-viewer.vue | 312 +++ .../components/image-viewer/props.ts | 65 + .../components/image-viewer/type.ts | 70 + .../components/image/README.en-US.md | 51 + .../tdesign-uniapp/components/image/README.md | 86 + .../components/image/_example/base/index.vue | 117 + .../components/image/_example/image.less | 57 + .../components/image/_example/image.vue | 42 + .../image/_example/skyline/image.less | 3 + .../image/_example/skyline/image.vue | 53 + .../image/_example/status/index.vue | 136 ++ .../components/image/image.less | 61 + .../tdesign-uniapp/components/image/image.vue | 200 ++ .../tdesign-uniapp/components/image/props.ts | 71 + .../tdesign-uniapp/components/image/type.ts | 85 + .../components/indexes-anchor/README.en-US.md | 25 + .../components/indexes-anchor/README.md | 29 + .../indexes-anchor/indexes-anchor.less | 55 + .../indexes-anchor/indexes-anchor.vue | 73 + .../components/indexes-anchor/props.ts | 12 + .../components/indexes-anchor/type.ts | 12 + .../components/indexes/README.en-US.md | 78 + .../components/indexes/README.md | 107 + .../indexes/_example/base/index.vue | 158 ++ .../indexes/_example/custom/index.vue | 171 ++ .../components/indexes/_example/indexes.less | 7 + .../components/indexes/_example/indexes.vue | 77 + .../components/indexes/computed.js | 4 + .../indexes/indexes-anchor-props.ts | 12 + .../components/indexes/indexes.less | 72 + .../components/indexes/indexes.vue | 377 +++ .../components/indexes/props.ts | 40 + .../tdesign-uniapp/components/indexes/type.ts | 38 + .../components/input/README.en-US.md | 120 + .../tdesign-uniapp/components/input/README.md | 189 ++ .../components/input/_example/align/index.vue | 34 + .../input/_example/banner/index.vue | 31 + .../components/input/_example/base/index.vue | 48 + .../input/_example/bordered/index.vue | 44 + .../input/_example/custom/index.vue | 35 + .../components/input/_example/input.less | 8 + .../components/input/_example/input.vue | 111 + .../components/input/_example/label/index.vue | 24 + .../input/_example/layout/index.vue | 26 + .../input/_example/maxlength/index.vue | 37 + .../input/_example/prefix/index.vue | 30 + .../input/_example/skyline/input.less | 8 + .../input/_example/skyline/input.vue | 121 + .../input/_example/special/index.vue | 148 ++ .../input/_example/status/index.vue | 50 + .../input/_example/suffix/index.vue | 60 + .../components/input/computed.js | 13 + .../components/input/input.less | 206 ++ .../tdesign-uniapp/components/input/input.vue | 388 +++ .../tdesign-uniapp/components/input/props.ts | 247 ++ .../tdesign-uniapp/components/input/type.ts | 237 ++ .../tdesign-uniapp/components/input/utils.js | 38 + .../components/link/README.en-US.md | 67 + .../tdesign-uniapp/components/link/README.md | 115 + .../link/_example/content/index.vue | 38 + .../link/_example/disabled/index.vue | 75 + .../components/link/_example/link.less | 0 .../components/link/_example/link.vue | 83 + .../components/link/_example/prefix/index.vue | 40 + .../components/link/_example/size/index.vue | 47 + .../link/_example/skyline/link.less | 0 .../components/link/_example/skyline/link.vue | 22 + .../components/link/_example/suffix/index.vue | 40 + .../components/link/_example/theme/index.vue | 69 + .../link/_example/underline/index.vue | 40 + .../tdesign-uniapp/components/link/link.less | 123 + .../tdesign-uniapp/components/link/link.vue | 175 ++ .../tdesign-uniapp/components/link/props.ts | 65 + .../tdesign-uniapp/components/link/type.ts | 62 + .../components/loading/README.en-US.md | 50 + .../components/loading/README.md | 97 + .../loading/_example/base/index.vue | 65 + .../loading/_example/duration/index.vue | 62 + .../loading/_example/horizontal/index.vue | 50 + .../components/loading/_example/loading.less | 3 + .../components/loading/_example/loading.vue | 100 + .../loading/_example/size/index.vue | 61 + .../loading/_example/skyline/loading.less | 3 + .../loading/_example/skyline/loading.vue | 22 + .../loading/_example/text/index.vue | 24 + .../loading/_example/vertical/index.vue | 49 + .../components/loading/loading.less | 215 ++ .../components/loading/loading.vue | 157 ++ .../components/loading/props.ts | 68 + .../tdesign-uniapp/components/loading/type.ts | 70 + .../components/message-item/computed.js | 23 + .../components/message-item/index.ts | 46 + .../components/message-item/message-item.less | 98 + .../components/message-item/message-item.vue | 349 +++ .../components/message/README.en-US.md | 69 + .../components/message/README.md | 105 + .../message/_example/base/index.vue | 186 ++ .../components/message/_example/message.less | 5 + .../components/message/_example/message.vue | 48 + .../message/_example/theme/index.vue | 109 + .../components/message/config.ts | 10 + .../components/message/index.ts | 45 + .../components/message/message.interface.ts | 28 + .../components/message/message.vue | 275 +++ .../components/message/props.ts | 101 + .../tdesign-uniapp/components/message/type.ts | 101 + .../components/mixins/page-scroll.js | 115 + .../components/mixins/skyline.js | 12 + .../components/mixins/theme-change.js | 37 + .../tdesign-uniapp/components/mixins/touch.js | 29 + .../components/mixins/transition.js | 133 + .../components/mixins/using-custom-navbar.js | 38 + .../components/navbar/README.en-US.md | 73 + .../components/navbar/README.md | 118 + .../navbar/_example/back-home/index.vue | 101 + .../components/navbar/_example/base/index.vue | 43 + .../navbar/_example/custom-color/index.vue | 31 + .../components/navbar/_example/img/index.vue | 47 + .../navbar/_example/left-title/index.vue | 102 + .../components/navbar/_example/navbar.less | 22 + .../components/navbar/_example/navbar.vue | 66 + .../navbar/_example/search/index.vue | 48 + .../navbar/_example/skyline/navbar.less | 21 + .../navbar/_example/skyline/navbar.vue | 79 + .../components/navbar/navbar.less | 156 ++ .../components/navbar/navbar.vue | 277 +++ .../tdesign-uniapp/components/navbar/props.ts | 63 + .../tdesign-uniapp/components/navbar/type.ts | 62 + .../components/notice-bar/README.en-US.md | 62 + .../components/notice-bar/README.md | 116 + .../notice-bar/_example/base/index.vue | 28 + .../notice-bar/_example/custom/index.vue | 39 + .../_example/customization/index.vue | 61 + .../notice-bar/_example/event/index.vue | 67 + .../notice-bar/_example/iconDemo/index.vue | 37 + .../notice-bar/_example/notice-bar.less | 7 + .../notice-bar/_example/notice-bar.vue | 86 + .../notice-bar/_example/scrolling/index.vue | 58 + .../notice-bar/_example/suffixIcon/index.vue | 33 + .../notice-bar/_example/theme/index.vue | 39 + .../components/notice-bar/notice-bar.less | 115 + .../components/notice-bar/notice-bar.vue | 326 +++ .../components/notice-bar/props.ts | 71 + .../components/notice-bar/type.ts | 71 + .../components/npm/dayjs/esm/constant.js | 25 + .../components/npm/dayjs/esm/index.js | 541 +++++ .../components/npm/dayjs/esm/locale/en.js | 12 + .../components/npm/dayjs/esm/locale/ja.js | 45 + .../components/npm/dayjs/esm/locale/ko.js | 45 + .../components/npm/dayjs/esm/locale/ru.js | 99 + .../components/npm/dayjs/esm/locale/zh-cn.js | 67 + .../components/npm/dayjs/esm/locale/zh-tw.js | 65 + .../npm/dayjs/esm/plugin/localeData/index.js | 114 + .../dayjs/esm/plugin/localizedFormat/index.js | 20 + .../dayjs/esm/plugin/localizedFormat/utils.js | 20 + .../components/npm/dayjs/esm/utils.js | 58 + .../npm/tinycolor2/esm/tinycolor.js | 1180 +++++++++ .../components/overlay/README.en-US.md | 34 + .../components/overlay/README.md | 54 + .../overlay/_example/base/index.vue | 47 + .../components/overlay/_example/overlay.less | 3 + .../components/overlay/_example/overlay.vue | 42 + .../overlay/_example/skyline/overlay.less | 3 + .../overlay/_example/skyline/overlay.vue | 51 + .../components/overlay/overlay.less | 25 + .../components/overlay/overlay.vue | 105 + .../components/overlay/props.ts | 37 + .../tdesign-uniapp/components/overlay/type.ts | 42 + .../tdesign-uniapp/components/package.json | 499 ++++ .../components/picker-item/README.en-US.md | 16 + .../components/picker-item/README.md | 16 + .../components/picker-item/picker-item.less | 50 + .../components/picker-item/picker-item.vue | 232 ++ .../components/picker-item/props.ts | 18 + .../components/picker-item/type.ts | 23 + .../components/picker/README.en-US.md | 81 + .../components/picker/README.md | 116 + .../components/picker/_example/area/index.vue | 212 ++ .../components/picker/_example/base/index.vue | 216 ++ .../components/picker/_example/picker.less | 0 .../components/picker/_example/picker.vue | 56 + .../picker/_example/skyline/picker.less | 0 .../picker/_example/skyline/picker.vue | 65 + .../picker/_example/with-title/index.vue | 133 + .../picker/_example/without-popup/index.vue | 84 + .../components/picker/picker.less | 108 + .../components/picker/picker.vue | 274 +++ .../tdesign-uniapp/components/picker/props.ts | 90 + .../tdesign-uniapp/components/picker/type.ts | 109 + .../components/popup/README.en-US.md | 53 + .../tdesign-uniapp/components/popup/README.md | 82 + .../components/popup/_example/base/index.vue | 113 + .../popup/_example/custom-close/index.vue | 106 + .../components/popup/_example/popup.less | 4 + .../components/popup/_example/popup.vue | 72 + .../popup/_example/skyline/popup.less | 2 + .../popup/_example/skyline/popup.vue | 63 + .../popup/_example/with-title/index.vue | 124 + .../components/popup/computed.js | 11 + .../components/popup/popup.less | 104 + .../tdesign-uniapp/components/popup/popup.vue | 138 ++ .../tdesign-uniapp/components/popup/props.ts | 67 + .../tdesign-uniapp/components/popup/type.ts | 72 + .../components/progress/README.en-US.md | 53 + .../components/progress/README.md | 88 + .../progress/_example/base/index.vue | 70 + .../progress/_example/circle/index.vue | 49 + .../progress/_example/custom/index.vue | 40 + .../progress/_example/line/index.vue | 38 + .../progress/_example/plump/index.vue | 45 + .../progress/_example/progress.less | 7 + .../components/progress/_example/progress.vue | 80 + .../progress/_example/skyline/progress.less | 7 + .../progress/_example/skyline/progress.vue | 22 + .../progress/_example/transition/index.vue | 61 + .../components/progress/computed.js | 81 + .../components/progress/progress.less | 218 ++ .../components/progress/progress.vue | 259 ++ .../components/progress/props.ts | 55 + .../components/progress/type.ts | 50 + .../components/progress/utils.ts | 22 + .../pull-down-refresh/README.en-US.md | 60 + .../components/pull-down-refresh/README.md | 83 + .../pull-down-refresh/_example/base/index.vue | 202 ++ .../_example/pull-down-refresh.less | 3 + .../_example/pull-down-refresh.vue | 29 + .../_example/skyline/pull-down-refresh.vue | 30 + .../components/pull-down-refresh/props.ts | 112 + .../pull-down-refresh/pull-down-refresh.less | 38 + .../pull-down-refresh/pull-down-refresh.vue | 366 +++ .../components/pull-down-refresh/type.ts | 118 + .../components/qrcode/README.en-US.md | 40 + .../components/qrcode/README.md | 97 + .../qrcode/_example/base/index.less | 1 + .../components/qrcode/_example/base/index.vue | 22 + .../qrcode/_example/borderless/index.less | 1 + .../qrcode/_example/borderless/index.vue | 21 + .../qrcode/_example/color/index.less | 9 + .../qrcode/_example/color/index.vue | 37 + .../qrcode/_example/icon/index.less | 1 + .../components/qrcode/_example/icon/index.vue | 21 + .../qrcode/_example/level/index.less | 3 + .../qrcode/_example/level/index.vue | 56 + .../components/qrcode/_example/qrcode.less | 3 + .../components/qrcode/_example/qrcode.vue | 101 + .../qrcode/_example/size/index.less | 35 + .../components/qrcode/_example/size/index.vue | 62 + .../qrcode/_example/status/index.less | 9 + .../qrcode/_example/status/index.vue | 56 + .../qrcode/components/qrcode-canvas/props.ts | 48 + .../qrcode-canvas/qrcode-canvas.less | 12 + .../qrcode-canvas/qrcode-canvas.vue | 413 ++++ .../qrcode/components/qrcode-canvas/type.ts | 22 + .../qrcode/components/qrcode-status/props.ts | 22 + .../qrcode-status/qrcode-status.less | 41 + .../qrcode-status/qrcode-status.vue | 94 + .../qrcode/components/qrcode-status/type.ts | 25 + .../components/qrcode/hooks/useQRCode.ts | 51 + .../tdesign-uniapp/components/qrcode/props.ts | 66 + .../components/qrcode/qrcode.less | 42 + .../components/qrcode/qrcode.vue | 135 ++ .../tdesign-uniapp/components/qrcode/type.ts | 66 + .../components/radio-group/props.ts | 68 + .../components/radio-group/radio-group.vue | 191 ++ .../components/radio-group/type.ts | 79 + .../components/radio/README.en-US.md | 105 + .../tdesign-uniapp/components/radio/README.md | 149 ++ .../components/radio/_example/align/index.vue | 52 + .../components/radio/_example/base/index.vue | 57 + .../components/radio/_example/card/index.vue | 66 + .../radio/_example/horizontal/index.vue | 73 + .../components/radio/_example/radio.less | 10 + .../components/radio/_example/radio.vue | 98 + .../radio/_example/skyline/radio.less | 0 .../radio/_example/skyline/radio.vue | 22 + .../radio/_example/special/index.vue | 181 ++ .../radio/_example/status/index.vue | 42 + .../components/radio/_example/theme/index.vue | 48 + .../tdesign-uniapp/components/radio/props.ts | 86 + .../components/radio/radio.less | 235 ++ .../tdesign-uniapp/components/radio/radio.vue | 227 ++ .../tdesign-uniapp/components/radio/type.ts | 89 + .../components/rate/README.en-US.md | 50 + .../tdesign-uniapp/components/rate/README.md | 107 + .../components/rate/_example/action/index.vue | 75 + .../components/rate/_example/base/index.vue | 57 + .../components/rate/_example/color/index.vue | 66 + .../components/rate/_example/count/index.vue | 57 + .../rate/_example/custom-prefix/index.vue | 58 + .../components/rate/_example/custom/index.vue | 57 + .../components/rate/_example/iconfont.css | 29 + .../components/rate/_example/rate.less | 1 + .../components/rate/_example/rate.vue | 98 + .../rate/_example/show-text/index.vue | 87 + .../components/rate/_example/size/index.vue | 70 + .../rate/_example/special/index.vue | 61 + .../components/rate/computed.js | 66 + .../tdesign-uniapp/components/rate/props.ts | 85 + .../tdesign-uniapp/components/rate/rate.less | 101 + .../tdesign-uniapp/components/rate/rate.vue | 276 +++ .../tdesign-uniapp/components/rate/type.ts | 79 + .../components/result/README.en-US.md | 49 + .../components/result/README.md | 90 + .../result/_example/custom/index.vue | 42 + .../result/_example/description/index.vue | 58 + .../result/_example/result-page.less | 7 + .../result/_example/result-page.vue | 56 + .../components/result/_example/result.less | 7 + .../components/result/_example/result.vue | 72 + .../result/_example/skyline/result.less | 7 + .../result/_example/skyline/result.vue | 81 + .../result/_example/theme/index.vue | 53 + .../tdesign-uniapp/components/result/props.ts | 36 + .../components/result/result.less | 70 + .../components/result/result.vue | 128 + .../tdesign-uniapp/components/result/type.ts | 31 + .../tdesign-uniapp/components/row/computed.js | 13 + .../tdesign-uniapp/components/row/props.ts | 12 + .../tdesign-uniapp/components/row/row.less | 8 + .../tdesign-uniapp/components/row/row.vue | 63 + .../tdesign-uniapp/components/row/type.ts | 12 + .../components/script/postinstall.js | 46 + .../components/scroll-view/scroll-view.vue | 52 + .../components/search/README.en-US.md | 87 + .../components/search/README.md | 125 + .../search/_example/action/index.vue | 52 + .../components/search/_example/base/index.vue | 48 + .../search/_example/maxlength/index.vue | 36 + .../search/_example/other/index.vue | 36 + .../components/search/_example/search.less | 0 .../components/search/_example/search.vue | 66 + .../search/_example/shape/index.vue | 44 + .../search/_example/skyline/search.less | 0 .../search/_example/skyline/search.vue | 71 + .../components/search/computed.js | 3 + .../tdesign-uniapp/components/search/props.ts | 166 ++ .../components/search/search.less | 114 + .../components/search/search.vue | 284 +++ .../tdesign-uniapp/components/search/type.ts | 160 ++ .../components/side-bar-item/props.ts | 27 + .../side-bar-item/side-bar-item.less | 88 + .../side-bar-item/side-bar-item.vue | 157 ++ .../components/side-bar-item/type.ts | 32 + .../components/side-bar/README.en-US.md | 60 + .../components/side-bar/README.md | 91 + .../side-bar/_example/base/index.vue | 256 ++ .../side-bar/_example/custom/index.vue | 257 ++ .../side-bar/_example/side-bar.less | 7 + .../components/side-bar/_example/side-bar.vue | 100 + .../side-bar/_example/switch/index.vue | 238 ++ .../side-bar/_example/with-icon/index.vue | 258 ++ .../components/side-bar/props.ts | 26 + .../side-bar/side-bar-item-props.ts | 27 + .../components/side-bar/side-bar.less | 22 + .../components/side-bar/side-bar.vue | 81 + .../components/side-bar/type.ts | 24 + .../components/skeleton/README.en-US.md | 45 + .../components/skeleton/README.md | 83 + .../skeleton/_example/animation/index.vue | 66 + .../skeleton/_example/cell-group/index.vue | 79 + .../skeleton/_example/grid/index.vue | 85 + .../skeleton/_example/image-group/index.vue | 44 + .../skeleton/_example/skeleton.less | 3 + .../components/skeleton/_example/skeleton.vue | 78 + .../skeleton/_example/skyline/skeleton.less | 3 + .../skeleton/_example/skyline/skeleton.vue | 86 + .../skeleton/_example/theme/index.vue | 67 + .../components/skeleton/props.ts | 41 + .../components/skeleton/skeleton.less | 117 + .../components/skeleton/skeleton.vue | 210 ++ .../components/skeleton/type.ts | 44 + .../components/slider/README.en-US.md | 64 + .../components/slider/README.md | 128 + .../components/slider/_example/base/index.vue | 33 + .../slider/_example/capsule/index.vue | 76 + .../slider/_example/disabled/index.vue | 58 + .../slider/_example/label/index.vue | 55 + .../components/slider/_example/max/index.vue | 44 + .../slider/_example/range/index.vue | 37 + .../slider/_example/skyline/slider.less | 18 + .../slider/_example/skyline/slider.vue | 97 + .../components/slider/_example/slider.less | 18 + .../components/slider/_example/slider.vue | 88 + .../components/slider/_example/step/index.vue | 63 + .../slider/_example/vertical/index.vue | 95 + .../components/slider/computed.js | 9 + .../tdesign-uniapp/components/slider/props.ts | 79 + .../components/slider/slider.less | 312 +++ .../components/slider/slider.vue | 716 ++++++ .../tdesign-uniapp/components/slider/tool.ts | 43 + .../tdesign-uniapp/components/slider/type.ts | 81 + .../components/step-item/computed.js | 4 + .../components/step-item/props.ts | 36 + .../components/step-item/step-item.less | 224 ++ .../components/step-item/step-item.vue | 175 ++ .../components/step-item/type.ts | 33 + .../components/stepper/README.en-US.md | 49 + .../components/stepper/README.md | 90 + .../stepper/_example/base/index.vue | 28 + .../stepper/_example/min-max/index.vue | 41 + .../stepper/_example/size/index.vue | 50 + .../stepper/_example/skyline/stepper.less | 0 .../stepper/_example/skyline/stepper.vue | 76 + .../stepper/_example/status/index.vue | 28 + .../components/stepper/_example/stepper.less | 0 .../components/stepper/_example/stepper.vue | 66 + .../stepper/_example/theme/index.vue | 35 + .../components/stepper/props.ts | 88 + .../components/stepper/stepper.less | 159 ++ .../components/stepper/stepper.vue | 223 ++ .../tdesign-uniapp/components/stepper/type.ts | 79 + .../components/steps/README.en-US.md | 99 + .../tdesign-uniapp/components/steps/README.md | 157 ++ .../steps/_example/horizontal/index.vue | 103 + .../steps/_example/skyline/steps.less | 0 .../steps/_example/skyline/steps.vue | 22 + .../steps/_example/special/index.vue | 103 + .../steps/_example/status/index.vue | 94 + .../components/steps/_example/steps.less | 12 + .../components/steps/_example/steps.vue | 63 + .../steps/_example/vertical/index.vue | 140 ++ .../tdesign-uniapp/components/steps/props.ts | 63 + .../components/steps/steps.less | 32 + .../tdesign-uniapp/components/steps/steps.vue | 122 + .../tdesign-uniapp/components/steps/type.ts | 44 + .../components/sticky/README.en-US.md | 32 + .../components/sticky/README.md | 66 + .../components/sticky/_example/base/index.vue | 44 + .../sticky/_example/container/index.vue | 77 + .../sticky/_example/offset/index.vue | 45 + .../components/sticky/_example/sticky.less | 3 + .../components/sticky/_example/sticky.vue | 81 + .../tdesign-uniapp/components/sticky/props.ts | 30 + .../components/sticky/sticky.less | 5 + .../components/sticky/sticky.vue | 144 ++ .../tdesign-uniapp/components/sticky/type.ts | 31 + .../components/swipe-cell/README.en-US.md | 29 + .../components/swipe-cell/README.md | 66 + .../swipe-cell/_example/double/index.vue | 69 + .../swipe-cell/_example/icon/index.vue | 177 ++ .../swipe-cell/_example/left/index.vue | 164 ++ .../swipe-cell/_example/right/index.vue | 58 + .../swipe-cell/_example/swipe-cell.less | 20 + .../swipe-cell/_example/swipe-cell.vue | 55 + .../components/swipe-cell/computed.js | 186 ++ .../components/swipe-cell/props.ts | 39 + .../components/swipe-cell/swipe-cell.less | 40 + .../components/swipe-cell/swipe-cell.vue | 235 ++ .../components/swipe-cell/type.ts | 48 + .../components/swiper-nav/props.ts | 49 + .../components/swiper-nav/swiper-nav.less | 173 ++ .../components/swiper-nav/swiper-nav.vue | 93 + .../components/swiper-nav/type.ts | 45 + .../components/swiper/README.en-US.md | 89 + .../components/swiper/README.md | 139 ++ .../components/swiper/_example/base/index.vue | 51 + .../swiper/_example/cards/index.vue | 86 + .../swiper/_example/custom/index.vue | 57 + .../swiper/_example/fraction/index.vue | 45 + .../swiper/_example/nav-btn/index.vue | 68 + .../swiper/_example/skyline/swiper.vue | 3 + .../components/swiper/_example/swiper.less | 3 + .../components/swiper/_example/swiper.vue | 86 + .../swiper/_example/vertical/index.vue | 184 ++ .../components/swiper/computed.js | 29 + .../tdesign-uniapp/components/swiper/props.ts | 117 + .../components/swiper/swiper.less | 30 + .../components/swiper/swiper.vue | 197 ++ .../tdesign-uniapp/components/swiper/type.ts | 112 + .../components/switch/README.en-US.md | 70 + .../components/switch/README.md | 104 + .../components/switch/_example/base/index.vue | 37 + .../switch/_example/color/index.vue | 49 + .../switch/_example/label/index.vue | 53 + .../components/switch/_example/size/index.vue | 58 + .../switch/_example/skyline/switch.less | 3 + .../switch/_example/skyline/switch.vue | 73 + .../switch/_example/status/index.vue | 87 + .../components/switch/_example/switch.less | 3 + .../components/switch/_example/switch.vue | 67 + .../tdesign-uniapp/components/switch/props.ts | 53 + .../components/switch/switch.less | 200 ++ .../components/switch/switch.vue | 122 + .../tdesign-uniapp/components/switch/type.ts | 51 + .../components/tab-bar-item/props.ts | 25 + .../components/tab-bar-item/tab-bar-item.less | 152 ++ .../components/tab-bar-item/tab-bar-item.vue | 222 ++ .../components/tab-bar-item/type.ts | 32 + .../components/tab-bar/README.en-US.md | 64 + .../components/tab-bar/README.md | 110 + .../tab-bar/_example/badge/index.vue | 160 ++ .../tab-bar/_example/base/index.vue | 66 + .../tab-bar/_example/custom/index.vue | 70 + .../tab-bar/_example/icon-only/index.vue | 65 + .../tab-bar/_example/round/index.vue | 66 + .../tab-bar/_example/skyline/tab-bar.less | 16 + .../tab-bar/_example/skyline/tab-bar.vue | 105 + .../components/tab-bar/_example/sub/index.vue | 71 + .../components/tab-bar/_example/tab-bar.less | 16 + .../components/tab-bar/_example/tab-bar.vue | 87 + .../tab-bar/_example/text-only/index.vue | 61 + .../components/tab-bar/props.ts | 60 + .../components/tab-bar/tab-bar.less | 47 + .../components/tab-bar/tab-bar.vue | 113 + .../tdesign-uniapp/components/tab-bar/type.ts | 50 + .../components/tab-panel/props.ts | 34 + .../components/tab-panel/tab-panel.less | 19 + .../components/tab-panel/tab-panel.vue | 100 + .../components/tab-panel/type.ts | 42 + .../components/tabs/README.en-US.md | 89 + .../tdesign-uniapp/components/tabs/README.md | 198 ++ .../components/tabs/_example/base/index.vue | 145 ++ .../components/tabs/_example/scroll/index.vue | 42 + .../components/tabs/_example/size/index.vue | 74 + .../components/tabs/_example/status/index.vue | 51 + .../components/tabs/_example/tabs.less | 7 + .../components/tabs/_example/tabs.vue | 105 + .../components/tabs/_example/theme/index.vue | 47 + .../tabs/_example/with-badge/index.vue | 38 + .../tabs/_example/with-content/index.vue | 87 + .../tabs/_example/with-icon/index.vue | 31 + .../components/tabs/computed.js | 26 + .../tdesign-uniapp/components/tabs/props.ts | 80 + .../tdesign-uniapp/components/tabs/tabs.less | 237 ++ .../tdesign-uniapp/components/tabs/tabs.vue | 494 ++++ .../tdesign-uniapp/components/tabs/type.ts | 77 + .../components/tag/README.en-US.md | 163 ++ .../tdesign-uniapp/components/tag/README.md | 201 ++ .../tag/_example/checkable/index.vue | 72 + .../tag/_example/closable/index.vue | 54 + .../components/tag/_example/size/index.vue | 98 + .../components/tag/_example/skyline/tag.less | 3 + .../components/tag/_example/skyline/tag.vue | 70 + .../components/tag/_example/tag.less | 3 + .../components/tag/_example/tag.vue | 61 + .../components/tag/_example/theme/index.vue | 172 ++ .../components/tag/_example/type/index.vue | 123 + .../tdesign-uniapp/components/tag/props.ts | 70 + .../tdesign-uniapp/components/tag/tag.less | 210 ++ .../tdesign-uniapp/components/tag/tag.vue | 161 ++ .../tdesign-uniapp/components/tag/type.ts | 54 + .../tdesign-uniapp/tdesign-uniapp.vue | 11 + .../components/textarea/README.en-US.md | 78 + .../components/textarea/README.md | 132 + .../textarea/_example/autosize/index.vue | 36 + .../textarea/_example/base/index.vue | 31 + .../textarea/_example/card/index.vue | 42 + .../textarea/_example/custom/index.vue | 54 + .../textarea/_example/disabled/index.vue | 34 + .../textarea/_example/label/index.vue | 32 + .../textarea/_example/maxcharacter/index.vue | 34 + .../textarea/_example/maxlength/index.vue | 34 + .../textarea/_example/skyline/textarea.less | 0 .../textarea/_example/skyline/textarea.vue | 22 + .../textarea/_example/textarea.less | 0 .../components/textarea/_example/textarea.vue | 96 + .../components/textarea/computed.js | 14 + .../components/textarea/props.ts | 152 ++ .../components/textarea/textarea.less | 110 + .../components/textarea/textarea.vue | 200 ++ .../components/textarea/type.ts | 167 ++ .../components/toast/README.en-US.md | 51 + .../tdesign-uniapp/components/toast/README.md | 78 + .../components/toast/_example/base/index.vue | 119 + .../components/toast/_example/close/index.vue | 77 + .../components/toast/_example/cover/index.vue | 53 + .../toast/_example/skyline/toast.less | 15 + .../toast/_example/skyline/toast.vue | 74 + .../components/toast/_example/theme/index.vue | 85 + .../components/toast/_example/toast.less | 9 + .../components/toast/_example/toast.vue | 72 + .../tdesign-uniapp/components/toast/index.ts | 45 + .../tdesign-uniapp/components/toast/props.ts | 68 + .../components/toast/toast.less | 95 + .../tdesign-uniapp/components/toast/toast.vue | 212 ++ .../tdesign-uniapp/components/toast/type.ts | 64 + .../components/transition/README.en-US.md | 13 + .../components/transition/README.md | 45 + .../components/transition/_example/api.md | 10 + .../transition/_example/appear/index.vue | 50 + .../transition/_example/base/index.vue | 51 + .../transition/_example/custom/index.less | 21 + .../transition/_example/custom/index.vue | 49 + .../transition/_example/destroy/index.vue | 48 + .../transition/_example/transition.less | 28 + .../transition/_example/transition.vue | 72 + .../components/transition/props.js | 22 + .../components/transition/transition.less | 18 + .../components/transition/transition.vue | 51 + .../components/tree-select/README.en-US.md | 48 + .../components/tree-select/README.md | 78 + .../tree-select/_example/base/index.vue | 49 + .../tree-select/_example/multiple/index.vue | 50 + .../tree-select/_example/normal/index.vue | 145 ++ .../tree-select/_example/tree-select.vue | 53 + .../components/tree-select/computed.js | 6 + .../components/tree-select/props.ts | 42 + .../components/tree-select/tree-select.less | 63 + .../components/tree-select/tree-select.vue | 318 +++ .../components/tree-select/type.ts | 49 + .../components/types/action-sheet.d.ts | 7 + .../components/types/avatar-group.d.ts | 7 + .../components/types/avatar.d.ts | 7 + .../components/types/back-top.d.ts | 7 + .../components/types/badge.d.ts | 7 + .../components/types/button.d.ts | 7 + .../components/types/calendar.d.ts | 7 + .../components/types/cascader.d.ts | 7 + .../components/types/cell-group.d.ts | 7 + .../tdesign-uniapp/components/types/cell.d.ts | 7 + .../components/types/check-tag.d.ts | 7 + .../components/types/checkbox-group.d.ts | 7 + .../components/types/checkbox.d.ts | 7 + .../tdesign-uniapp/components/types/col.d.ts | 7 + .../components/types/collapse-panel.d.ts | 7 + .../components/types/collapse.d.ts | 7 + .../components/types/color-picker.d.ts | 7 + .../components/types/count-down.d.ts | 7 + .../components/types/date-time-picker.d.ts | 7 + .../components/types/dialog.d.ts | 7 + .../components/types/divider.d.ts | 7 + .../components/types/drawer.d.ts | 7 + .../components/types/dropdown-item.d.ts | 7 + .../components/types/dropdown-menu.d.ts | 7 + .../components/types/empty.d.ts | 7 + .../tdesign-uniapp/components/types/fab.d.ts | 7 + .../components/types/footer.d.ts | 7 + .../components/types/form-item.d.ts | 7 + .../tdesign-uniapp/components/types/form.d.ts | 7 + .../components/types/grid-item.d.ts | 7 + .../tdesign-uniapp/components/types/grid.d.ts | 7 + .../components/types/guide.d.ts | 7 + .../tdesign-uniapp/components/types/icon.d.ts | 7 + .../components/types/image-viewer.d.ts | 7 + .../components/types/image.d.ts | 7 + .../components/types/index.d.ts | 77 + .../components/types/indexes-anchor.d.ts | 7 + .../components/types/indexes.d.ts | 7 + .../components/types/input.d.ts | 7 + .../tdesign-uniapp/components/types/link.d.ts | 7 + .../components/types/loading.d.ts | 7 + .../components/types/message.d.ts | 7 + .../components/types/navbar.d.ts | 7 + .../components/types/notice-bar.d.ts | 7 + .../components/types/overlay.d.ts | 7 + .../components/types/picker-item.d.ts | 7 + .../components/types/picker.d.ts | 7 + .../components/types/popup.d.ts | 7 + .../components/types/progress.d.ts | 7 + .../components/types/pull-down-refresh.d.ts | 7 + .../components/types/qrcode.d.ts | 7 + .../components/types/radio-group.d.ts | 7 + .../components/types/radio.d.ts | 7 + .../tdesign-uniapp/components/types/rate.d.ts | 7 + .../components/types/result.d.ts | 7 + .../tdesign-uniapp/components/types/row.d.ts | 7 + .../components/types/search.d.ts | 7 + .../components/types/side-bar-item.d.ts | 7 + .../components/types/side-bar.d.ts | 7 + .../components/types/skeleton.d.ts | 7 + .../components/types/slider.d.ts | 7 + .../components/types/step-item.d.ts | 7 + .../components/types/stepper.d.ts | 7 + .../components/types/steps.d.ts | 7 + .../components/types/sticky.d.ts | 7 + .../components/types/swipe-cell.d.ts | 7 + .../components/types/swiper-nav.d.ts | 7 + .../components/types/swiper.d.ts | 7 + .../components/types/switch.d.ts | 7 + .../components/types/tab-bar-item.d.ts | 7 + .../components/types/tab-bar.d.ts | 7 + .../components/types/tab-panel.d.ts | 7 + .../tdesign-uniapp/components/types/tabs.d.ts | 7 + .../tdesign-uniapp/components/types/tag.d.ts | 7 + .../components/types/textarea.d.ts | 7 + .../components/types/toast.d.ts | 7 + .../components/types/tree-select.d.ts | 7 + .../components/types/upload.d.ts | 7 + .../components/types/watermark.d.ts | 7 + .../components/upload/README.en-US.md | 63 + .../components/upload/README.md | 116 + .../components/upload/_example/drag/index.vue | 74 + .../upload/_example/messageFile/index.vue | 56 + .../upload/_example/multiple/index.vue | 79 + .../upload/_example/single/index.vue | 76 + .../upload/_example/status/index.vue | 78 + .../components/upload/_example/upload.less | 11 + .../components/upload/_example/upload.vue | 110 + .../components/upload/drag.computed.js | 225 ++ .../tdesign-uniapp/components/upload/props.ts | 136 ++ .../tdesign-uniapp/components/upload/type.ts | 197 ++ .../components/upload/upload.computed.js | 13 + .../components/upload/upload.less | 146 ++ .../components/upload/upload.vue | 880 +++++++ .../components/watermark/README.en-US.md | 49 + .../components/watermark/README.md | 101 + .../watermark/_example/base/index.vue | 29 + .../watermark/_example/gray/index.vue | 33 + .../watermark/_example/image/index.vue | 31 + .../watermark/_example/layout/index.vue | 46 + .../watermark/_example/move-image/index.vue | 30 + .../watermark/_example/move-text/index.vue | 30 + .../_example/multi-line-gray/index.vue | 37 + .../watermark/_example/multi-line/index.vue | 34 + .../watermark/_example/watermark.less | 0 .../watermark/_example/watermark.vue | 72 + .../components/watermark/props.ts | 82 + .../components/watermark/type.ts | 121 + .../watermark/utils/generateBase64Url.js | 360 +++ .../watermark/utils/randomMovingStyle.js | 27 + .../components/watermark/watermark.less | 35 + .../components/watermark/watermark.vue | 195 ++ .../tdesign-uniapp/example/.env.production | 1 + .../example/docs/img/github-pages.png | Bin 0 -> 23979 bytes .../example/docs/img/tdesign-uniapp-mp.png | Bin 0 -> 89667 bytes packages/tdesign-uniapp/example/index.html | 28 + packages/tdesign-uniapp/example/package.json | 87 + .../example/script/deploy/cdn.js | 73 + .../example/script/deploy/local.env.js | 8 + .../example/script/deploy/mine-doc.js | 35 + .../example/script/deploy/publish.sh | 32 + .../example/script/pages/config.js | 36 + .../example/script/pages/index.js | 107 + .../example/script/release/config.js | 18 + .../example/script/release/core.js | 31 + .../example/script/release/less.js | 84 + .../example/script/release/prepare.js | 64 + .../example/script/release/publish-core.js | 27 + .../release/publish-tdesign-uniapp-chat.js | 12 + .../script/release/publish-tdesign-uniapp.js | 12 + .../example/script/sync/demo-vue-css.js | 39 + .../example/script/sync/doc-common-design.js | 26 + .../example/script/sync/doc-component.js | 31 + .../example/script/sync/doc-format.js | 32 + .../example/script/sync/less.js | 34 + .../example/script/utils/components.js | 24 + .../example/script/utils/utils.js | 9 + .../example/script/watch/config.js | 31 + .../example/script/watch/core.js | 56 + .../example/script/watch/init.js | 72 + .../example/script/watch/types.js | 136 ++ .../example/script/watch/watch.js | 69 + packages/tdesign-uniapp/example/src/App.vue | 9 + .../src/components/pull-down-list/index.less | 60 + .../src/components/pull-down-list/index.vue | 87 + .../src/components/trd-privacy/index.less | 137 ++ .../src/components/trd-privacy/index.vue | 135 ++ packages/tdesign-uniapp/example/src/env.d.ts | 8 + packages/tdesign-uniapp/example/src/main.ts | 22 + .../tdesign-uniapp/example/src/manifest.json | 126 + .../example/src/mixins/demo-base.js | 45 + .../example/src/mixins/skyline.js | 1 + .../tdesign-uniapp/example/src/pages.json | 580 +++++ .../example/src/pages/home/data/base.json | 64 + .../example/src/pages/home/data/chat.json | 45 + .../example/src/pages/home/data/display.json | 139 ++ .../example/src/pages/home/data/form.json | 110 + .../example/src/pages/home/data/index.ts | 12 + .../example/src/pages/home/data/nav.json | 66 + .../example/src/pages/home/data/ux.json | 78 + .../example/src/pages/home/home.less | 56 + .../example/src/pages/home/home.vue | 184 ++ .../src/pages/home/navigate-fail/index.less | 25 + .../src/pages/home/navigate-fail/index.vue | 32 + .../tdesign-uniapp/example/src/shime-uni.d.ts | 6 + .../tdesign-uniapp/example/src/style/app.less | 61 + packages/tdesign-uniapp/example/src/uni.scss | 76 + .../tdesign-uniapp/example/vite.config.ts | 68 + packages/tdesign-uniapp/package.json | 98 + packages/tdesign-uniapp/shims-uni.d.ts | 12 + packages/tdesign-uniapp/site/.env.intranet | 1 + packages/tdesign-uniapp/site/.env.preview | 1 + packages/tdesign-uniapp/site/.env.production | 1 + packages/tdesign-uniapp/site/docs.config.js | 626 +++++ .../tdesign-uniapp/site/docs/custom-style.md | 117 + .../tdesign-uniapp/site/docs/custom-theme.md | 63 + .../tdesign-uniapp/site/docs/dark-mode.md | 95 + .../site/docs/design/action-sheet.md | 73 + .../tdesign-uniapp/site/docs/design/avatar.md | 61 + .../site/docs/design/back-top.md | 33 + .../tdesign-uniapp/site/docs/design/badge.md | 68 + .../tdesign-uniapp/site/docs/design/button.md | 81 + .../site/docs/design/calendar.md | 51 + .../site/docs/design/cascader.md | 59 + .../tdesign-uniapp/site/docs/design/cell.md | 55 + .../site/docs/design/checkbox.md | 50 + .../site/docs/design/collapse.md | 63 + .../site/docs/design/count-down.md | 50 + .../site/docs/design/date-time-picker.md | 42 + .../tdesign-uniapp/site/docs/design/dialog.md | 72 + .../site/docs/design/divider.md | 53 + .../tdesign-uniapp/site/docs/design/drawer.md | 55 + .../site/docs/design/dropdown-menu.md | 48 + .../tdesign-uniapp/site/docs/design/empty.md | 44 + .../tdesign-uniapp/site/docs/design/fab.md | 80 + .../tdesign-uniapp/site/docs/design/footer.md | 59 + .../tdesign-uniapp/site/docs/design/grid.md | 88 + .../site/docs/design/image-viewer.md | 36 + .../tdesign-uniapp/site/docs/design/image.md | 51 + .../site/docs/design/indexes.md | 53 + .../tdesign-uniapp/site/docs/design/input.md | 72 + .../tdesign-uniapp/site/docs/design/link.md | 44 + .../site/docs/design/loading.md | 58 + .../site/docs/design/message.md | 50 + .../tdesign-uniapp/site/docs/design/navbar.md | 51 + .../site/docs/design/notice-bar.md | 81 + .../tdesign-uniapp/site/docs/design/picker.md | 40 + .../tdesign-uniapp/site/docs/design/popup.md | 53 + .../site/docs/design/progress.md | 62 + .../site/docs/design/pull-down-refresh.md | 60 + .../tdesign-uniapp/site/docs/design/radio.md | 57 + .../tdesign-uniapp/site/docs/design/rate.md | 51 + .../tdesign-uniapp/site/docs/design/result.md | 54 + .../tdesign-uniapp/site/docs/design/search.md | 51 + .../site/docs/design/side-bar.md | 50 + .../site/docs/design/skeleton.md | 27 + .../tdesign-uniapp/site/docs/design/slider.md | 59 + .../site/docs/design/stepper.md | 50 + .../tdesign-uniapp/site/docs/design/steps.md | 74 + .../site/docs/design/swipe-cell.md | 75 + .../tdesign-uniapp/site/docs/design/swiper.md | 40 + .../tdesign-uniapp/site/docs/design/switch.md | 31 + .../site/docs/design/tab-bar.md | 77 + .../tdesign-uniapp/site/docs/design/tabs.md | 106 + .../tdesign-uniapp/site/docs/design/tag.md | 86 + .../site/docs/design/textarea.md | 59 + .../tdesign-uniapp/site/docs/design/toast.md | 51 + .../site/docs/design/tree-select.md | 27 + .../tdesign-uniapp/site/docs/design/upload.md | 43 + .../site/docs/design/watermark.md | 1 + packages/tdesign-uniapp/site/docs/faq.md | 83 + .../site/docs/getting-started.en-US.md | 95 + .../site/docs/getting-started.md | 137 ++ .../site/docs/overview.en-US.md | 487 ++++ packages/tdesign-uniapp/site/docs/overview.md | 486 ++++ packages/tdesign-uniapp/site/index.html | 38 + packages/tdesign-uniapp/site/mobile.html | 37 + packages/tdesign-uniapp/site/package.json | 136 ++ .../site/styles/mixins/index.less | 16 + .../site/styles/mixins/text.less | 55 + .../site/styles/mobile/components.less | 112 + .../site/styles/mobile/demo.less | 61 + .../site/styles/mobile/index.less | 152 ++ packages/tdesign-uniapp/site/styles/vars.less | 125 + packages/tdesign-uniapp/site/vite.config.ts | 94 + packages/tdesign-uniapp/site/web/app.vue | 149 ++ packages/tdesign-uniapp/site/web/main.ts | 24 + .../changelog-to-json-core/components.ts | 166 ++ .../plugins/changelog-to-json-core/index.ts | 194 ++ .../plugins/changelog-to-json-core/libs.ts | 23 + .../plugins/changelog-to-json-core/types.ts | 29 + .../web/plugins/changelog-to-json/index.js | 32 + .../site/web/plugins/plugin-tdoc/demo.js | 42 + .../site/web/plugins/plugin-tdoc/index.js | 38 + .../site/web/plugins/plugin-tdoc/md-to-vue.js | 212 ++ .../web/plugins/plugin-tdoc/transforms.js | 77 + packages/tdesign-uniapp/site/web/router.ts | 68 + .../site/web/stackblitz/content.ts | 237 ++ .../site/web/stackblitz/index.vue | 129 + .../tdesign-uniapp/site/web/test-coverage.js | 69 + packages/tdesign-uniapp/site/web/utils.ts | 63 + packages/tdesign-uniapp/tsconfig.eslint.json | 13 + tsconfig.json | 1 + 1545 files changed, 127964 insertions(+), 1 deletion(-) create mode 100644 packages/tdesign-uniapp-chat/.eslintignore create mode 100644 packages/tdesign-uniapp-chat/.eslintrc.js create mode 100644 packages/tdesign-uniapp-chat/components/.npmrc create mode 100644 packages/tdesign-uniapp-chat/components/CHANGELOG.md create mode 100644 packages/tdesign-uniapp-chat/components/LICENSE create mode 100644 packages/tdesign-uniapp-chat/components/README.md create mode 100644 packages/tdesign-uniapp-chat/components/attachments/README.en-US.md create mode 100644 packages/tdesign-uniapp-chat/components/attachments/README.md create mode 100644 packages/tdesign-uniapp-chat/components/attachments/_example/attachments.less create mode 100644 packages/tdesign-uniapp-chat/components/attachments/_example/attachments.vue create mode 100644 packages/tdesign-uniapp-chat/components/attachments/_example/base/index.vue create mode 100644 packages/tdesign-uniapp-chat/components/attachments/_example/file-loading/index.vue create mode 100644 packages/tdesign-uniapp-chat/components/attachments/_example/file/index.vue create mode 100644 packages/tdesign-uniapp-chat/components/attachments/_example/image-loading/index.vue create mode 100644 packages/tdesign-uniapp-chat/components/attachments/attachments.less create mode 100644 packages/tdesign-uniapp-chat/components/attachments/attachments.vue create mode 100644 packages/tdesign-uniapp-chat/components/attachments/computed.js create mode 100644 packages/tdesign-uniapp-chat/components/attachments/props.ts create mode 100644 packages/tdesign-uniapp-chat/components/attachments/type.ts create mode 100644 packages/tdesign-uniapp-chat/components/chat-actionbar/README.en-US.md create mode 100644 packages/tdesign-uniapp-chat/components/chat-actionbar/README.md create mode 100644 packages/tdesign-uniapp-chat/components/chat-actionbar/_example/base/index.vue create mode 100644 packages/tdesign-uniapp-chat/components/chat-actionbar/_example/chat-actionbar.less create mode 100644 packages/tdesign-uniapp-chat/components/chat-actionbar/_example/chat-actionbar.vue create mode 100644 packages/tdesign-uniapp-chat/components/chat-actionbar/_example/comment/index.vue create mode 100644 packages/tdesign-uniapp-chat/components/chat-actionbar/chat-actionbar.less create mode 100644 packages/tdesign-uniapp-chat/components/chat-actionbar/chat-actionbar.vue create mode 100644 packages/tdesign-uniapp-chat/components/chat-actionbar/props.ts create mode 100644 packages/tdesign-uniapp-chat/components/chat-actionbar/type.ts create mode 100644 packages/tdesign-uniapp-chat/components/chat-content/README.en-US.md create mode 100644 packages/tdesign-uniapp-chat/components/chat-content/README.md create mode 100644 packages/tdesign-uniapp-chat/components/chat-content/_example/base/index.vue create mode 100644 packages/tdesign-uniapp-chat/components/chat-content/_example/chat-content.less create mode 100644 packages/tdesign-uniapp-chat/components/chat-content/_example/chat-content.vue create mode 100644 packages/tdesign-uniapp-chat/components/chat-content/chat-content.less create mode 100644 packages/tdesign-uniapp-chat/components/chat-content/chat-content.vue create mode 100644 packages/tdesign-uniapp-chat/components/chat-content/props.ts create mode 100644 packages/tdesign-uniapp-chat/components/chat-content/type.ts create mode 100644 packages/tdesign-uniapp-chat/components/chat-list/README.en-US.md create mode 100644 packages/tdesign-uniapp-chat/components/chat-list/README.md create mode 100644 packages/tdesign-uniapp-chat/components/chat-list/_example/agent/index.vue create mode 100644 packages/tdesign-uniapp-chat/components/chat-list/_example/base/index.vue create mode 100644 packages/tdesign-uniapp-chat/components/chat-list/_example/chart-component/index.vue create mode 100644 packages/tdesign-uniapp-chat/components/chat-list/_example/chat-list.less create mode 100644 packages/tdesign-uniapp-chat/components/chat-list/_example/chat-list.vue create mode 100644 packages/tdesign-uniapp-chat/components/chat-list/_example/code/index.vue create mode 100644 packages/tdesign-uniapp-chat/components/chat-list/_example/custom/index.vue create mode 100644 packages/tdesign-uniapp-chat/components/chat-list/_example/docs/index.vue create mode 100644 packages/tdesign-uniapp-chat/components/chat-list/_example/ec-canvas/ec-canvas.vue create mode 100644 packages/tdesign-uniapp-chat/components/chat-list/_example/ec-canvas/echarts.js create mode 100644 packages/tdesign-uniapp-chat/components/chat-list/_example/ec-canvas/wx-canvas.js create mode 100644 packages/tdesign-uniapp-chat/components/chat-list/_example/hook-component/index.vue create mode 100644 packages/tdesign-uniapp-chat/components/chat-list/_example/image/index.vue create mode 100644 packages/tdesign-uniapp-chat/components/chat-list/_example/utils.ts create mode 100644 packages/tdesign-uniapp-chat/components/chat-list/chat-list.less create mode 100644 packages/tdesign-uniapp-chat/components/chat-list/chat-list.vue create mode 100644 packages/tdesign-uniapp-chat/components/chat-list/props.ts create mode 100644 packages/tdesign-uniapp-chat/components/chat-list/type.ts create mode 100644 packages/tdesign-uniapp-chat/components/chat-loading/README.en-US.md create mode 100644 packages/tdesign-uniapp-chat/components/chat-loading/README.md create mode 100644 packages/tdesign-uniapp-chat/components/chat-loading/_example/base/index.vue create mode 100644 packages/tdesign-uniapp-chat/components/chat-loading/_example/chat-loading.less create mode 100644 packages/tdesign-uniapp-chat/components/chat-loading/_example/chat-loading.vue create mode 100644 packages/tdesign-uniapp-chat/components/chat-loading/_example/text/index.vue create mode 100644 packages/tdesign-uniapp-chat/components/chat-loading/chat-loading.less create mode 100644 packages/tdesign-uniapp-chat/components/chat-loading/chat-loading.vue create mode 100644 packages/tdesign-uniapp-chat/components/chat-loading/props.ts create mode 100644 packages/tdesign-uniapp-chat/components/chat-loading/type.ts create mode 100644 packages/tdesign-uniapp-chat/components/chat-markdown-code/chat-markdown-code.less create mode 100644 packages/tdesign-uniapp-chat/components/chat-markdown-code/chat-markdown-code.vue create mode 100644 packages/tdesign-uniapp-chat/components/chat-markdown-node/chat-markdown-node.less create mode 100644 packages/tdesign-uniapp-chat/components/chat-markdown-node/chat-markdown-node.vue create mode 100644 packages/tdesign-uniapp-chat/components/chat-markdown-table/chat-markdown-table.less create mode 100644 packages/tdesign-uniapp-chat/components/chat-markdown-table/chat-markdown-table.vue create mode 100644 packages/tdesign-uniapp-chat/components/chat-markdown/README.en-US.md create mode 100644 packages/tdesign-uniapp-chat/components/chat-markdown/README.md create mode 100644 packages/tdesign-uniapp-chat/components/chat-markdown/_example/base/index.vue create mode 100644 packages/tdesign-uniapp-chat/components/chat-markdown/_example/base/mock2.js create mode 100644 packages/tdesign-uniapp-chat/components/chat-markdown/_example/chat-markdown.less create mode 100644 packages/tdesign-uniapp-chat/components/chat-markdown/_example/chat-markdown.vue create mode 100644 packages/tdesign-uniapp-chat/components/chat-markdown/_example/code/index.vue create mode 100644 packages/tdesign-uniapp-chat/components/chat-markdown/_example/list/index.vue create mode 100644 packages/tdesign-uniapp-chat/components/chat-markdown/_example/refer/index.vue create mode 100644 packages/tdesign-uniapp-chat/components/chat-markdown/_example/sheet/index.vue create mode 100644 packages/tdesign-uniapp-chat/components/chat-markdown/_example/url/index.vue create mode 100644 packages/tdesign-uniapp-chat/components/chat-markdown/chat-markdown.less create mode 100644 packages/tdesign-uniapp-chat/components/chat-markdown/chat-markdown.vue create mode 100644 packages/tdesign-uniapp-chat/components/chat-markdown/props.ts create mode 100644 packages/tdesign-uniapp-chat/components/chat-markdown/type.ts create mode 100644 packages/tdesign-uniapp-chat/components/chat-message/README.en-US.md create mode 100644 packages/tdesign-uniapp-chat/components/chat-message/README.md create mode 100644 packages/tdesign-uniapp-chat/components/chat-message/_example/base/index.vue create mode 100644 packages/tdesign-uniapp-chat/components/chat-message/_example/chat-message.less create mode 100644 packages/tdesign-uniapp-chat/components/chat-message/_example/chat-message.vue create mode 100644 packages/tdesign-uniapp-chat/components/chat-message/_example/configure/index.vue create mode 100644 packages/tdesign-uniapp-chat/components/chat-message/_example/content/index.vue create mode 100644 packages/tdesign-uniapp-chat/components/chat-message/_example/error/index.vue create mode 100644 packages/tdesign-uniapp-chat/components/chat-message/_example/status/index.vue create mode 100644 packages/tdesign-uniapp-chat/components/chat-message/_example/style/index.vue create mode 100644 packages/tdesign-uniapp-chat/components/chat-message/chat-message.less create mode 100644 packages/tdesign-uniapp-chat/components/chat-message/chat-message.vue create mode 100644 packages/tdesign-uniapp-chat/components/chat-message/props.ts create mode 100644 packages/tdesign-uniapp-chat/components/chat-message/type.ts create mode 100644 packages/tdesign-uniapp-chat/components/chat-sender/README.en-US.md create mode 100644 packages/tdesign-uniapp-chat/components/chat-sender/README.md create mode 100644 packages/tdesign-uniapp-chat/components/chat-sender/_example/attachments/index.vue create mode 100644 packages/tdesign-uniapp-chat/components/chat-sender/_example/base/index.vue create mode 100644 packages/tdesign-uniapp-chat/components/chat-sender/_example/chat-sender.less create mode 100644 packages/tdesign-uniapp-chat/components/chat-sender/_example/chat-sender.vue create mode 100644 packages/tdesign-uniapp-chat/components/chat-sender/_example/content-citation/index.vue create mode 100644 packages/tdesign-uniapp-chat/components/chat-sender/_example/file-citation/index.vue create mode 100644 packages/tdesign-uniapp-chat/components/chat-sender/_example/theme/index.vue create mode 100644 packages/tdesign-uniapp-chat/components/chat-sender/chat-sender.less create mode 100644 packages/tdesign-uniapp-chat/components/chat-sender/chat-sender.vue create mode 100644 packages/tdesign-uniapp-chat/components/chat-sender/computed.js create mode 100644 packages/tdesign-uniapp-chat/components/chat-sender/props.ts create mode 100644 packages/tdesign-uniapp-chat/components/chat-sender/type.ts create mode 100644 packages/tdesign-uniapp-chat/components/chat-thinking/README.en-US.md create mode 100644 packages/tdesign-uniapp-chat/components/chat-thinking/README.md create mode 100644 packages/tdesign-uniapp-chat/components/chat-thinking/_example/base/index.vue create mode 100644 packages/tdesign-uniapp-chat/components/chat-thinking/_example/chat-thinking.less create mode 100644 packages/tdesign-uniapp-chat/components/chat-thinking/_example/chat-thinking.vue create mode 100644 packages/tdesign-uniapp-chat/components/chat-thinking/_example/complete/index.vue create mode 100644 packages/tdesign-uniapp-chat/components/chat-thinking/_example/layout/index.vue create mode 100644 packages/tdesign-uniapp-chat/components/chat-thinking/_example/pending/index.vue create mode 100644 packages/tdesign-uniapp-chat/components/chat-thinking/chat-thinking.less create mode 100644 packages/tdesign-uniapp-chat/components/chat-thinking/chat-thinking.vue create mode 100644 packages/tdesign-uniapp-chat/components/chat-thinking/props.ts create mode 100644 packages/tdesign-uniapp-chat/components/chat-thinking/type.ts create mode 100644 packages/tdesign-uniapp-chat/components/global.d.ts create mode 100644 packages/tdesign-uniapp-chat/components/npm/marked/index.js create mode 100644 packages/tdesign-uniapp-chat/components/package.json create mode 100644 packages/tdesign-uniapp-chat/components/script/postinstall.js create mode 100644 packages/tdesign-uniapp-chat/components/tdesign-uniapp-chat/tdesign-uniapp.vue create mode 100644 packages/tdesign-uniapp-chat/components/types/attachments.d.ts create mode 100644 packages/tdesign-uniapp-chat/components/types/chat-actionbar.d.ts create mode 100644 packages/tdesign-uniapp-chat/components/types/chat-content.d.ts create mode 100644 packages/tdesign-uniapp-chat/components/types/chat-list.d.ts create mode 100644 packages/tdesign-uniapp-chat/components/types/chat-loading.d.ts create mode 100644 packages/tdesign-uniapp-chat/components/types/chat-markdown.d.ts create mode 100644 packages/tdesign-uniapp-chat/components/types/chat-message.d.ts create mode 100644 packages/tdesign-uniapp-chat/components/types/chat-sender.d.ts create mode 100644 packages/tdesign-uniapp-chat/components/types/chat-thinking.d.ts create mode 100644 packages/tdesign-uniapp-chat/components/types/index.d.ts create mode 100644 packages/tdesign-uniapp-chat/package.json create mode 100644 packages/tdesign-uniapp-chat/shims-uni.d.ts create mode 100644 packages/tdesign-uniapp-chat/site/.env.intranet create mode 100644 packages/tdesign-uniapp-chat/site/.env.preview create mode 100644 packages/tdesign-uniapp-chat/site/.env.production create mode 100644 packages/tdesign-uniapp-chat/site/docs.config.js create mode 100644 packages/tdesign-uniapp-chat/site/docs/custom-style.md create mode 100644 packages/tdesign-uniapp-chat/site/docs/custom-theme.md create mode 100644 packages/tdesign-uniapp-chat/site/docs/dark-mode.md create mode 100644 packages/tdesign-uniapp-chat/site/docs/faq.md create mode 100644 packages/tdesign-uniapp-chat/site/docs/getting-started.en-US.md create mode 100644 packages/tdesign-uniapp-chat/site/docs/getting-started.md create mode 100644 packages/tdesign-uniapp-chat/site/docs/sse.md create mode 100644 packages/tdesign-uniapp-chat/site/index.html create mode 100644 packages/tdesign-uniapp-chat/site/mobile.html create mode 100644 packages/tdesign-uniapp-chat/site/package.json create mode 100644 packages/tdesign-uniapp-chat/site/styles/mixins/index.less create mode 100644 packages/tdesign-uniapp-chat/site/styles/mixins/text.less create mode 100644 packages/tdesign-uniapp-chat/site/styles/mobile/components.less create mode 100644 packages/tdesign-uniapp-chat/site/styles/mobile/demo.less create mode 100644 packages/tdesign-uniapp-chat/site/styles/mobile/index.less create mode 100644 packages/tdesign-uniapp-chat/site/styles/vars.less create mode 100644 packages/tdesign-uniapp-chat/site/vite.config.ts create mode 100644 packages/tdesign-uniapp-chat/site/web/app.vue create mode 100644 packages/tdesign-uniapp-chat/site/web/main.ts create mode 100644 packages/tdesign-uniapp-chat/site/web/plugins/changelog-to-json-core/components.ts create mode 100644 packages/tdesign-uniapp-chat/site/web/plugins/changelog-to-json-core/index.ts create mode 100644 packages/tdesign-uniapp-chat/site/web/plugins/changelog-to-json-core/libs.ts create mode 100644 packages/tdesign-uniapp-chat/site/web/plugins/changelog-to-json-core/types.ts create mode 100644 packages/tdesign-uniapp-chat/site/web/plugins/changelog-to-json/index.js create mode 100644 packages/tdesign-uniapp-chat/site/web/plugins/plugin-tdoc/demo.js create mode 100644 packages/tdesign-uniapp-chat/site/web/plugins/plugin-tdoc/index.js create mode 100644 packages/tdesign-uniapp-chat/site/web/plugins/plugin-tdoc/md-to-vue.js create mode 100644 packages/tdesign-uniapp-chat/site/web/plugins/plugin-tdoc/transforms.js create mode 100644 packages/tdesign-uniapp-chat/site/web/router.ts create mode 100644 packages/tdesign-uniapp-chat/site/web/stackblitz/content.ts create mode 100644 packages/tdesign-uniapp-chat/site/web/stackblitz/index.vue create mode 100644 packages/tdesign-uniapp-chat/site/web/test-coverage.js create mode 100644 packages/tdesign-uniapp-chat/site/web/utils.ts create mode 100644 packages/tdesign-uniapp-chat/tsconfig.eslint.json create mode 100644 packages/tdesign-uniapp-chat/tsconfig.json create mode 100644 packages/tdesign-uniapp/.eslintignore create mode 100644 packages/tdesign-uniapp/.eslintrc.js create mode 100644 packages/tdesign-uniapp/components/.npmrc create mode 100644 packages/tdesign-uniapp/components/CHANGELOG.md create mode 100644 packages/tdesign-uniapp/components/LICENSE create mode 100644 packages/tdesign-uniapp/components/README.md create mode 100644 packages/tdesign-uniapp/components/action-sheet/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/action-sheet/README.md create mode 100644 packages/tdesign-uniapp/components/action-sheet/_example/action-sheet.less create mode 100644 packages/tdesign-uniapp/components/action-sheet/_example/action-sheet.vue create mode 100644 packages/tdesign-uniapp/components/action-sheet/_example/align/index.vue create mode 100644 packages/tdesign-uniapp/components/action-sheet/_example/grid/index.vue create mode 100644 packages/tdesign-uniapp/components/action-sheet/_example/list/index.vue create mode 100644 packages/tdesign-uniapp/components/action-sheet/_example/status/index.vue create mode 100644 packages/tdesign-uniapp/components/action-sheet/action-sheet.less create mode 100644 packages/tdesign-uniapp/components/action-sheet/action-sheet.vue create mode 100644 packages/tdesign-uniapp/components/action-sheet/computed.js create mode 100644 packages/tdesign-uniapp/components/action-sheet/index.ts create mode 100644 packages/tdesign-uniapp/components/action-sheet/props.ts create mode 100644 packages/tdesign-uniapp/components/action-sheet/show.ts create mode 100644 packages/tdesign-uniapp/components/action-sheet/type.ts create mode 100644 packages/tdesign-uniapp/components/avatar-group/avatar-group.less create mode 100644 packages/tdesign-uniapp/components/avatar-group/avatar-group.vue create mode 100644 packages/tdesign-uniapp/components/avatar-group/props.ts create mode 100644 packages/tdesign-uniapp/components/avatar-group/type.ts create mode 100644 packages/tdesign-uniapp/components/avatar/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/avatar/README.md create mode 100644 packages/tdesign-uniapp/components/avatar/_example/action/index.vue create mode 100644 packages/tdesign-uniapp/components/avatar/_example/avatar.less create mode 100644 packages/tdesign-uniapp/components/avatar/_example/avatar.vue create mode 100644 packages/tdesign-uniapp/components/avatar/_example/badge-avatar/index.vue create mode 100644 packages/tdesign-uniapp/components/avatar/_example/character-avatar/index.vue create mode 100644 packages/tdesign-uniapp/components/avatar/_example/exhibition/index.vue create mode 100644 packages/tdesign-uniapp/components/avatar/_example/icon-avatar/index.vue create mode 100644 packages/tdesign-uniapp/components/avatar/_example/image-avatar/index.vue create mode 100644 packages/tdesign-uniapp/components/avatar/_example/size/index.vue create mode 100644 packages/tdesign-uniapp/components/avatar/_example/skyline/avatar.less create mode 100644 packages/tdesign-uniapp/components/avatar/_example/skyline/avatar.vue create mode 100644 packages/tdesign-uniapp/components/avatar/avatar.less create mode 100644 packages/tdesign-uniapp/components/avatar/avatar.vue create mode 100644 packages/tdesign-uniapp/components/avatar/computed.js create mode 100644 packages/tdesign-uniapp/components/avatar/props.ts create mode 100644 packages/tdesign-uniapp/components/avatar/type.ts create mode 100644 packages/tdesign-uniapp/components/back-top/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/back-top/README.md create mode 100644 packages/tdesign-uniapp/components/back-top/_example/back-top.less create mode 100644 packages/tdesign-uniapp/components/back-top/_example/back-top.vue create mode 100644 packages/tdesign-uniapp/components/back-top/_example/base/index.vue create mode 100644 packages/tdesign-uniapp/components/back-top/_example/half-round/index.vue create mode 100644 packages/tdesign-uniapp/components/back-top/_example/skyline/back-top.less create mode 100644 packages/tdesign-uniapp/components/back-top/_example/skyline/back-top.vue create mode 100644 packages/tdesign-uniapp/components/back-top/back-top.less create mode 100644 packages/tdesign-uniapp/components/back-top/back-top.vue create mode 100644 packages/tdesign-uniapp/components/back-top/props.ts create mode 100644 packages/tdesign-uniapp/components/back-top/type.ts create mode 100644 packages/tdesign-uniapp/components/badge/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/badge/README.md create mode 100644 packages/tdesign-uniapp/components/badge/_example/api.md create mode 100644 packages/tdesign-uniapp/components/badge/_example/badge.less create mode 100644 packages/tdesign-uniapp/components/badge/_example/badge.vue create mode 100644 packages/tdesign-uniapp/components/badge/_example/base/index.vue create mode 100644 packages/tdesign-uniapp/components/badge/_example/size/index.vue create mode 100644 packages/tdesign-uniapp/components/badge/_example/skyline/badge.less create mode 100644 packages/tdesign-uniapp/components/badge/_example/skyline/badge.vue create mode 100644 packages/tdesign-uniapp/components/badge/_example/theme/index.vue create mode 100644 packages/tdesign-uniapp/components/badge/badge.less create mode 100644 packages/tdesign-uniapp/components/badge/badge.vue create mode 100644 packages/tdesign-uniapp/components/badge/computed.js create mode 100644 packages/tdesign-uniapp/components/badge/props.ts create mode 100644 packages/tdesign-uniapp/components/badge/type.ts create mode 100644 packages/tdesign-uniapp/components/button/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/button/README.md create mode 100644 packages/tdesign-uniapp/components/button/_example/base/index.vue create mode 100644 packages/tdesign-uniapp/components/button/_example/block-btn/index.vue create mode 100644 packages/tdesign-uniapp/components/button/_example/button.less create mode 100644 packages/tdesign-uniapp/components/button/_example/button.vue create mode 100644 packages/tdesign-uniapp/components/button/_example/disabled/index.vue create mode 100644 packages/tdesign-uniapp/components/button/_example/ghost-btn/index.vue create mode 100644 packages/tdesign-uniapp/components/button/_example/group-btn/index.vue create mode 100644 packages/tdesign-uniapp/components/button/_example/icon-btn/index.vue create mode 100644 packages/tdesign-uniapp/components/button/_example/shape/index.vue create mode 100644 packages/tdesign-uniapp/components/button/_example/size/index.vue create mode 100644 packages/tdesign-uniapp/components/button/_example/skyline/button.less create mode 100644 packages/tdesign-uniapp/components/button/_example/skyline/button.vue create mode 100644 packages/tdesign-uniapp/components/button/_example/theme/index.vue create mode 100644 packages/tdesign-uniapp/components/button/button.less create mode 100644 packages/tdesign-uniapp/components/button/button.vue create mode 100644 packages/tdesign-uniapp/components/button/props.ts create mode 100644 packages/tdesign-uniapp/components/button/type.ts create mode 100644 packages/tdesign-uniapp/components/calendar/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/calendar/README.md create mode 100644 packages/tdesign-uniapp/components/calendar/_example/base/index.vue create mode 100644 packages/tdesign-uniapp/components/calendar/_example/calendar.css create mode 100644 packages/tdesign-uniapp/components/calendar/_example/calendar.vue create mode 100644 packages/tdesign-uniapp/components/calendar/_example/computed.js create mode 100644 packages/tdesign-uniapp/components/calendar/_example/custom-range/index.vue create mode 100644 packages/tdesign-uniapp/components/calendar/_example/custom-text/index.vue create mode 100644 packages/tdesign-uniapp/components/calendar/_example/local-text/index.vue create mode 100644 packages/tdesign-uniapp/components/calendar/_example/multiple/index.vue create mode 100644 packages/tdesign-uniapp/components/calendar/_example/range/index.vue create mode 100644 packages/tdesign-uniapp/components/calendar/_example/switch-mode/index.vue create mode 100644 packages/tdesign-uniapp/components/calendar/_example/without-popup/index.vue create mode 100644 packages/tdesign-uniapp/components/calendar/calendar-header.props.js create mode 100644 packages/tdesign-uniapp/components/calendar/calendar-header.vue create mode 100644 packages/tdesign-uniapp/components/calendar/calendar.less create mode 100644 packages/tdesign-uniapp/components/calendar/calendar.vue create mode 100644 packages/tdesign-uniapp/components/calendar/computed.js create mode 100644 packages/tdesign-uniapp/components/calendar/props.ts create mode 100644 packages/tdesign-uniapp/components/calendar/template.props.js create mode 100644 packages/tdesign-uniapp/components/calendar/template.vue create mode 100644 packages/tdesign-uniapp/components/calendar/type.ts create mode 100644 packages/tdesign-uniapp/components/calendar/utils.ts create mode 100644 packages/tdesign-uniapp/components/cascader/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/cascader/README.md create mode 100644 packages/tdesign-uniapp/components/cascader/_example/base/index.vue create mode 100644 packages/tdesign-uniapp/components/cascader/_example/cascader.vue create mode 100644 packages/tdesign-uniapp/components/cascader/_example/check-strictly/index.vue create mode 100644 packages/tdesign-uniapp/components/cascader/_example/keys/index.vue create mode 100644 packages/tdesign-uniapp/components/cascader/_example/theme-tab/index.vue create mode 100644 packages/tdesign-uniapp/components/cascader/_example/with-title/index.vue create mode 100644 packages/tdesign-uniapp/components/cascader/_example/with-value/index.vue create mode 100644 packages/tdesign-uniapp/components/cascader/cascader.less create mode 100644 packages/tdesign-uniapp/components/cascader/cascader.vue create mode 100644 packages/tdesign-uniapp/components/cascader/props.ts create mode 100644 packages/tdesign-uniapp/components/cascader/type.ts create mode 100644 packages/tdesign-uniapp/components/cell-group/_example/api.md create mode 100644 packages/tdesign-uniapp/components/cell-group/_example/cell-group.less create mode 100644 packages/tdesign-uniapp/components/cell-group/_example/cell-group.vue create mode 100644 packages/tdesign-uniapp/components/cell-group/cell-group.less create mode 100644 packages/tdesign-uniapp/components/cell-group/cell-group.vue create mode 100644 packages/tdesign-uniapp/components/cell-group/props.ts create mode 100644 packages/tdesign-uniapp/components/cell-group/type.ts create mode 100644 packages/tdesign-uniapp/components/cell/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/cell/README.md create mode 100644 packages/tdesign-uniapp/components/cell/_example/base/index.vue create mode 100644 packages/tdesign-uniapp/components/cell/_example/cell.less create mode 100644 packages/tdesign-uniapp/components/cell/_example/cell.vue create mode 100644 packages/tdesign-uniapp/components/cell/_example/multiple/index.vue create mode 100644 packages/tdesign-uniapp/components/cell/_example/skyline/cell.less create mode 100644 packages/tdesign-uniapp/components/cell/_example/skyline/cell.vue create mode 100644 packages/tdesign-uniapp/components/cell/_example/theme/index.vue create mode 100644 packages/tdesign-uniapp/components/cell/cell.less create mode 100644 packages/tdesign-uniapp/components/cell/cell.vue create mode 100644 packages/tdesign-uniapp/components/cell/props.ts create mode 100644 packages/tdesign-uniapp/components/cell/type.ts create mode 100644 packages/tdesign-uniapp/components/check-tag/check-tag.less create mode 100644 packages/tdesign-uniapp/components/check-tag/check-tag.vue create mode 100644 packages/tdesign-uniapp/components/check-tag/props.ts create mode 100644 packages/tdesign-uniapp/components/check-tag/type.ts create mode 100644 packages/tdesign-uniapp/components/checkbox-group/checkbox-group.vue create mode 100644 packages/tdesign-uniapp/components/checkbox-group/props.ts create mode 100644 packages/tdesign-uniapp/components/checkbox-group/type.ts create mode 100644 packages/tdesign-uniapp/components/checkbox/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/checkbox/README.md create mode 100644 packages/tdesign-uniapp/components/checkbox/_example/all/index.vue create mode 100644 packages/tdesign-uniapp/components/checkbox/_example/base/index.vue create mode 100644 packages/tdesign-uniapp/components/checkbox/_example/card/index.vue create mode 100644 packages/tdesign-uniapp/components/checkbox/_example/checkbox.less create mode 100644 packages/tdesign-uniapp/components/checkbox/_example/checkbox.vue create mode 100644 packages/tdesign-uniapp/components/checkbox/_example/horizontal/index.vue create mode 100644 packages/tdesign-uniapp/components/checkbox/_example/right/index.vue create mode 100644 packages/tdesign-uniapp/components/checkbox/_example/skyline/checkbox.less create mode 100644 packages/tdesign-uniapp/components/checkbox/_example/skyline/checkbox.vue create mode 100644 packages/tdesign-uniapp/components/checkbox/_example/special/index.vue create mode 100644 packages/tdesign-uniapp/components/checkbox/_example/status/index.vue create mode 100644 packages/tdesign-uniapp/components/checkbox/_example/type/index.vue create mode 100644 packages/tdesign-uniapp/components/checkbox/checkbox.less create mode 100644 packages/tdesign-uniapp/components/checkbox/checkbox.vue create mode 100644 packages/tdesign-uniapp/components/checkbox/props.ts create mode 100644 packages/tdesign-uniapp/components/checkbox/type.ts create mode 100644 packages/tdesign-uniapp/components/col/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/col/README.md create mode 100644 packages/tdesign-uniapp/components/col/_example/base/index.vue create mode 100644 packages/tdesign-uniapp/components/col/_example/col.less create mode 100644 packages/tdesign-uniapp/components/col/_example/col.vue create mode 100644 packages/tdesign-uniapp/components/col/_example/offset/index.vue create mode 100644 packages/tdesign-uniapp/components/col/_example/skyline/col.less create mode 100644 packages/tdesign-uniapp/components/col/_example/skyline/col.vue create mode 100644 packages/tdesign-uniapp/components/col/col.less create mode 100644 packages/tdesign-uniapp/components/col/col.vue create mode 100644 packages/tdesign-uniapp/components/col/computed.js create mode 100644 packages/tdesign-uniapp/components/col/props.ts create mode 100644 packages/tdesign-uniapp/components/col/type.ts create mode 100644 packages/tdesign-uniapp/components/collapse-panel/collapse-panel.less create mode 100644 packages/tdesign-uniapp/components/collapse-panel/collapse-panel.vue create mode 100644 packages/tdesign-uniapp/components/collapse-panel/props.ts create mode 100644 packages/tdesign-uniapp/components/collapse-panel/type.ts create mode 100644 packages/tdesign-uniapp/components/collapse/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/collapse/README.md create mode 100644 packages/tdesign-uniapp/components/collapse/_example/accordion/index.vue create mode 100644 packages/tdesign-uniapp/components/collapse/_example/action/index.vue create mode 100644 packages/tdesign-uniapp/components/collapse/_example/base/index.vue create mode 100644 packages/tdesign-uniapp/components/collapse/_example/collapse.less create mode 100644 packages/tdesign-uniapp/components/collapse/_example/collapse.vue create mode 100644 packages/tdesign-uniapp/components/collapse/_example/placement/index.vue create mode 100644 packages/tdesign-uniapp/components/collapse/_example/theme/index.vue create mode 100644 packages/tdesign-uniapp/components/collapse/collapse.less create mode 100644 packages/tdesign-uniapp/components/collapse/collapse.vue create mode 100644 packages/tdesign-uniapp/components/collapse/props.ts create mode 100644 packages/tdesign-uniapp/components/collapse/type.ts create mode 100644 packages/tdesign-uniapp/components/color-picker/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/color-picker/README.md create mode 100644 packages/tdesign-uniapp/components/color-picker/_example/base/index.vue create mode 100644 packages/tdesign-uniapp/components/color-picker/_example/color-picker.less create mode 100644 packages/tdesign-uniapp/components/color-picker/_example/color-picker.vue create mode 100644 packages/tdesign-uniapp/components/color-picker/_example/format/index.vue create mode 100644 packages/tdesign-uniapp/components/color-picker/_example/multiple/index.vue create mode 100644 packages/tdesign-uniapp/components/color-picker/_example/use-popup/index.vue create mode 100644 packages/tdesign-uniapp/components/color-picker/color-picker.less create mode 100644 packages/tdesign-uniapp/components/color-picker/color-picker.vue create mode 100644 packages/tdesign-uniapp/components/color-picker/constants.ts create mode 100644 packages/tdesign-uniapp/components/color-picker/props.ts create mode 100644 packages/tdesign-uniapp/components/color-picker/template.props.js create mode 100644 packages/tdesign-uniapp/components/color-picker/template.vue create mode 100644 packages/tdesign-uniapp/components/color-picker/type.ts create mode 100644 packages/tdesign-uniapp/components/color-picker/utils.js create mode 100644 packages/tdesign-uniapp/components/common/bus.js create mode 100644 packages/tdesign-uniapp/components/common/canvas/index.js create mode 100644 packages/tdesign-uniapp/components/common/common.ts create mode 100644 packages/tdesign-uniapp/components/common/config.js create mode 100644 packages/tdesign-uniapp/components/common/dom/index.js create mode 100644 packages/tdesign-uniapp/components/common/dom/select-component.js create mode 100644 packages/tdesign-uniapp/components/common/event/dynamic.js create mode 100644 packages/tdesign-uniapp/components/common/functional/mixin.js create mode 100644 packages/tdesign-uniapp/components/common/relation/index.js create mode 100644 packages/tdesign-uniapp/components/common/relation/parent-map.js create mode 100644 packages/tdesign-uniapp/components/common/relation/relation.js create mode 100644 packages/tdesign-uniapp/components/common/runtime/index.js create mode 100644 packages/tdesign-uniapp/components/common/runtime/relation.js create mode 100644 packages/tdesign-uniapp/components/common/runtime/wxs-polyfill.js create mode 100644 packages/tdesign-uniapp/components/common/shared/calendar/index.ts create mode 100644 packages/tdesign-uniapp/components/common/shared/calendar/type.ts create mode 100644 packages/tdesign-uniapp/components/common/shared/color-picker/cmyk.ts create mode 100644 packages/tdesign-uniapp/components/common/shared/color-picker/color.ts create mode 100644 packages/tdesign-uniapp/components/common/shared/color-picker/gradient.ts create mode 100644 packages/tdesign-uniapp/components/common/shared/color-picker/index.ts create mode 100644 packages/tdesign-uniapp/components/common/shared/date.ts create mode 100644 packages/tdesign-uniapp/components/common/shared/qrcode/qrcodegen.ts create mode 100644 packages/tdesign-uniapp/components/common/shared/qrcode/types.ts create mode 100644 packages/tdesign-uniapp/components/common/shared/qrcode/utils.ts create mode 100644 packages/tdesign-uniapp/components/common/src/control.js create mode 100644 packages/tdesign-uniapp/components/common/src/flatTool.js create mode 100644 packages/tdesign-uniapp/components/common/src/index.js create mode 100644 packages/tdesign-uniapp/components/common/src/instantiationDecorator.js create mode 100644 packages/tdesign-uniapp/components/common/src/superComponent.js create mode 100644 packages/tdesign-uniapp/components/common/style/_variables.less create mode 100644 packages/tdesign-uniapp/components/common/style/base.less create mode 100644 packages/tdesign-uniapp/components/common/style/icons.less create mode 100644 packages/tdesign-uniapp/components/common/style/index.less create mode 100644 packages/tdesign-uniapp/components/common/style/mixins/_border.less create mode 100644 packages/tdesign-uniapp/components/common/style/mixins/_clearfix.less create mode 100644 packages/tdesign-uniapp/components/common/style/mixins/_cursor.less create mode 100644 packages/tdesign-uniapp/components/common/style/mixins/_ellipsis.less create mode 100644 packages/tdesign-uniapp/components/common/style/mixins/_hairline.less create mode 100644 packages/tdesign-uniapp/components/common/style/mixins/_index.less create mode 100644 packages/tdesign-uniapp/components/common/style/mixins/_other.less create mode 100644 packages/tdesign-uniapp/components/common/style/theme/index.css create mode 100644 packages/tdesign-uniapp/components/common/style/theme/index.less create mode 100644 packages/tdesign-uniapp/components/common/style/theme/raw/_components.less create mode 100644 packages/tdesign-uniapp/components/common/style/theme/raw/_dark.less create mode 100644 packages/tdesign-uniapp/components/common/style/theme/raw/_font.less create mode 100644 packages/tdesign-uniapp/components/common/style/theme/raw/_light.less create mode 100644 packages/tdesign-uniapp/components/common/style/theme/raw/_radius.less create mode 100644 packages/tdesign-uniapp/components/common/style/theme/raw/_spacer.less create mode 100644 packages/tdesign-uniapp/components/common/style/utilities/_index.less create mode 100644 packages/tdesign-uniapp/components/common/utils.js create mode 100644 packages/tdesign-uniapp/components/common/utils.wxs.js create mode 100644 packages/tdesign-uniapp/components/common/validator.js create mode 100644 packages/tdesign-uniapp/components/common/version.js create mode 100644 packages/tdesign-uniapp/components/common/wechat.js create mode 100644 packages/tdesign-uniapp/components/count-down/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/count-down/README.md create mode 100644 packages/tdesign-uniapp/components/count-down/_example/base/index.vue create mode 100644 packages/tdesign-uniapp/components/count-down/_example/count-down.less create mode 100644 packages/tdesign-uniapp/components/count-down/_example/count-down.vue create mode 100644 packages/tdesign-uniapp/components/count-down/_example/size/index.vue create mode 100644 packages/tdesign-uniapp/components/count-down/_example/skyline/count-down.less create mode 100644 packages/tdesign-uniapp/components/count-down/_example/skyline/count-down.vue create mode 100644 packages/tdesign-uniapp/components/count-down/computed.js create mode 100644 packages/tdesign-uniapp/components/count-down/count-down.less create mode 100644 packages/tdesign-uniapp/components/count-down/count-down.vue create mode 100644 packages/tdesign-uniapp/components/count-down/props.ts create mode 100644 packages/tdesign-uniapp/components/count-down/type.ts create mode 100644 packages/tdesign-uniapp/components/count-down/utils.ts create mode 100644 packages/tdesign-uniapp/components/date-time-picker/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/date-time-picker/README.md create mode 100644 packages/tdesign-uniapp/components/date-time-picker/_example/date-all/index.vue create mode 100644 packages/tdesign-uniapp/components/date-time-picker/_example/date-time-picker.less create mode 100644 packages/tdesign-uniapp/components/date-time-picker/_example/date-time-picker.vue create mode 100644 packages/tdesign-uniapp/components/date-time-picker/_example/skyline/date-time-picker.less create mode 100644 packages/tdesign-uniapp/components/date-time-picker/_example/skyline/date-time-picker.vue create mode 100644 packages/tdesign-uniapp/components/date-time-picker/_example/steps/index.vue create mode 100644 packages/tdesign-uniapp/components/date-time-picker/_example/time/index.vue create mode 100644 packages/tdesign-uniapp/components/date-time-picker/_example/without-popup/index.vue create mode 100644 packages/tdesign-uniapp/components/date-time-picker/_example/year-month-date/index.vue create mode 100644 packages/tdesign-uniapp/components/date-time-picker/_example/year-month/index.vue create mode 100644 packages/tdesign-uniapp/components/date-time-picker/date-time-picker.less create mode 100644 packages/tdesign-uniapp/components/date-time-picker/date-time-picker.vue create mode 100644 packages/tdesign-uniapp/components/date-time-picker/locale/dayjs.ts create mode 100644 packages/tdesign-uniapp/components/date-time-picker/locale/en.ts create mode 100644 packages/tdesign-uniapp/components/date-time-picker/locale/ja.ts create mode 100644 packages/tdesign-uniapp/components/date-time-picker/locale/ko.ts create mode 100644 packages/tdesign-uniapp/components/date-time-picker/locale/ru.ts create mode 100644 packages/tdesign-uniapp/components/date-time-picker/locale/tc.ts create mode 100644 packages/tdesign-uniapp/components/date-time-picker/locale/zh.ts create mode 100644 packages/tdesign-uniapp/components/date-time-picker/props.ts create mode 100644 packages/tdesign-uniapp/components/date-time-picker/type.ts create mode 100644 packages/tdesign-uniapp/components/demo-header/demo-header.vue create mode 100644 packages/tdesign-uniapp/components/demo-header/index.less create mode 100644 packages/tdesign-uniapp/components/demo/demo.vue create mode 100644 packages/tdesign-uniapp/components/demo/index.less create mode 100644 packages/tdesign-uniapp/components/dialog/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/dialog/README.md create mode 100644 packages/tdesign-uniapp/components/dialog/_example/base/index.vue create mode 100644 packages/tdesign-uniapp/components/dialog/_example/button/index.vue create mode 100644 packages/tdesign-uniapp/components/dialog/_example/command/index.vue create mode 100644 packages/tdesign-uniapp/components/dialog/_example/confirm/index.vue create mode 100644 packages/tdesign-uniapp/components/dialog/_example/dialog.less create mode 100644 packages/tdesign-uniapp/components/dialog/_example/dialog.vue create mode 100644 packages/tdesign-uniapp/components/dialog/_example/skyline/dialog.less create mode 100644 packages/tdesign-uniapp/components/dialog/_example/skyline/dialog.vue create mode 100644 packages/tdesign-uniapp/components/dialog/_example/status/index.vue create mode 100644 packages/tdesign-uniapp/components/dialog/_example/with-image/index.vue create mode 100644 packages/tdesign-uniapp/components/dialog/_example/with-input/index.vue create mode 100644 packages/tdesign-uniapp/components/dialog/computed.js create mode 100644 packages/tdesign-uniapp/components/dialog/dialog.less create mode 100644 packages/tdesign-uniapp/components/dialog/dialog.vue create mode 100644 packages/tdesign-uniapp/components/dialog/index.ts create mode 100644 packages/tdesign-uniapp/components/dialog/props.ts create mode 100644 packages/tdesign-uniapp/components/dialog/type.ts create mode 100644 packages/tdesign-uniapp/components/divider/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/divider/README.md create mode 100644 packages/tdesign-uniapp/components/divider/_example/base/index.vue create mode 100644 packages/tdesign-uniapp/components/divider/_example/divider.less create mode 100644 packages/tdesign-uniapp/components/divider/_example/divider.vue create mode 100644 packages/tdesign-uniapp/components/divider/_example/skyline/divider.less create mode 100644 packages/tdesign-uniapp/components/divider/_example/skyline/divider.vue create mode 100644 packages/tdesign-uniapp/components/divider/_example/theme/index.vue create mode 100644 packages/tdesign-uniapp/components/divider/divider.less create mode 100644 packages/tdesign-uniapp/components/divider/divider.vue create mode 100644 packages/tdesign-uniapp/components/divider/props.ts create mode 100644 packages/tdesign-uniapp/components/divider/type.ts create mode 100644 packages/tdesign-uniapp/components/draggable/draggable.less create mode 100644 packages/tdesign-uniapp/components/draggable/draggable.vue create mode 100644 packages/tdesign-uniapp/components/draggable/props.js create mode 100644 packages/tdesign-uniapp/components/drawer/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/drawer/README.md create mode 100644 packages/tdesign-uniapp/components/drawer/_example/base/index.vue create mode 100644 packages/tdesign-uniapp/components/drawer/_example/drawer.less create mode 100644 packages/tdesign-uniapp/components/drawer/_example/drawer.vue create mode 100644 packages/tdesign-uniapp/components/drawer/_example/footer/index.vue create mode 100644 packages/tdesign-uniapp/components/drawer/_example/icon-drawer/index.vue create mode 100644 packages/tdesign-uniapp/components/drawer/_example/skyline/drawer.less create mode 100644 packages/tdesign-uniapp/components/drawer/_example/skyline/drawer.vue create mode 100644 packages/tdesign-uniapp/components/drawer/_example/title/index.vue create mode 100644 packages/tdesign-uniapp/components/drawer/drawer.less create mode 100644 packages/tdesign-uniapp/components/drawer/drawer.vue create mode 100644 packages/tdesign-uniapp/components/drawer/props.ts create mode 100644 packages/tdesign-uniapp/components/drawer/type.ts create mode 100644 packages/tdesign-uniapp/components/dropdown-item/computed.js create mode 100644 packages/tdesign-uniapp/components/dropdown-item/dropdown-item.less create mode 100644 packages/tdesign-uniapp/components/dropdown-item/dropdown-item.vue create mode 100644 packages/tdesign-uniapp/components/dropdown-item/props.ts create mode 100644 packages/tdesign-uniapp/components/dropdown-item/type.ts create mode 100644 packages/tdesign-uniapp/components/dropdown-menu/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/dropdown-menu/README.md create mode 100644 packages/tdesign-uniapp/components/dropdown-menu/_example/dropdown-menu.less create mode 100644 packages/tdesign-uniapp/components/dropdown-menu/_example/dropdown-menu.vue create mode 100644 packages/tdesign-uniapp/components/dropdown-menu/_example/multi/index.vue create mode 100644 packages/tdesign-uniapp/components/dropdown-menu/_example/single/index.vue create mode 100644 packages/tdesign-uniapp/components/dropdown-menu/_example/tree/index.vue create mode 100644 packages/tdesign-uniapp/components/dropdown-menu/dropdown-menu.less create mode 100644 packages/tdesign-uniapp/components/dropdown-menu/dropdown-menu.vue create mode 100644 packages/tdesign-uniapp/components/dropdown-menu/props.ts create mode 100644 packages/tdesign-uniapp/components/dropdown-menu/type.ts create mode 100644 packages/tdesign-uniapp/components/empty/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/empty/README.md create mode 100644 packages/tdesign-uniapp/components/empty/_example/base/index.vue create mode 100644 packages/tdesign-uniapp/components/empty/_example/buttonEmpty/index.vue create mode 100644 packages/tdesign-uniapp/components/empty/_example/empty.less create mode 100644 packages/tdesign-uniapp/components/empty/_example/empty.vue create mode 100644 packages/tdesign-uniapp/components/empty/_example/imageEmpty/index.vue create mode 100644 packages/tdesign-uniapp/components/empty/_example/skyline/empty.less create mode 100644 packages/tdesign-uniapp/components/empty/_example/skyline/empty.vue create mode 100644 packages/tdesign-uniapp/components/empty/empty.less create mode 100644 packages/tdesign-uniapp/components/empty/empty.vue create mode 100644 packages/tdesign-uniapp/components/empty/props.ts create mode 100644 packages/tdesign-uniapp/components/empty/type.ts create mode 100644 packages/tdesign-uniapp/components/fab/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/fab/README.md create mode 100644 packages/tdesign-uniapp/components/fab/_example/advance/index.vue create mode 100644 packages/tdesign-uniapp/components/fab/_example/base/index.vue create mode 100644 packages/tdesign-uniapp/components/fab/_example/collapsible/index.vue create mode 100644 packages/tdesign-uniapp/components/fab/_example/draggable/index.vue create mode 100644 packages/tdesign-uniapp/components/fab/_example/fab.less create mode 100644 packages/tdesign-uniapp/components/fab/_example/fab.vue create mode 100644 packages/tdesign-uniapp/components/fab/_example/skyline/fab.less create mode 100644 packages/tdesign-uniapp/components/fab/_example/skyline/fab.vue create mode 100644 packages/tdesign-uniapp/components/fab/fab.less create mode 100644 packages/tdesign-uniapp/components/fab/fab.vue create mode 100644 packages/tdesign-uniapp/components/fab/props.ts create mode 100644 packages/tdesign-uniapp/components/fab/type.ts create mode 100644 packages/tdesign-uniapp/components/footer/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/footer/README.md create mode 100644 packages/tdesign-uniapp/components/footer/_example/base/index.vue create mode 100644 packages/tdesign-uniapp/components/footer/_example/footer.less create mode 100644 packages/tdesign-uniapp/components/footer/_example/footer.vue create mode 100644 packages/tdesign-uniapp/components/footer/_example/link/index.vue create mode 100644 packages/tdesign-uniapp/components/footer/_example/logo/index.vue create mode 100644 packages/tdesign-uniapp/components/footer/_example/skyline/footer.less create mode 100644 packages/tdesign-uniapp/components/footer/_example/skyline/footer.vue create mode 100644 packages/tdesign-uniapp/components/footer/footer.less create mode 100644 packages/tdesign-uniapp/components/footer/footer.vue create mode 100644 packages/tdesign-uniapp/components/footer/props.ts create mode 100644 packages/tdesign-uniapp/components/footer/type.ts create mode 100644 packages/tdesign-uniapp/components/form-item/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/form-item/README.md create mode 100644 packages/tdesign-uniapp/components/form-item/form-item.less create mode 100644 packages/tdesign-uniapp/components/form-item/form-item.vue create mode 100644 packages/tdesign-uniapp/components/form-item/form-model.ts create mode 100644 packages/tdesign-uniapp/components/form-item/props.ts create mode 100644 packages/tdesign-uniapp/components/form-item/type.ts create mode 100644 packages/tdesign-uniapp/components/form/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/form/README.md create mode 100644 packages/tdesign-uniapp/components/form/_example/form.less create mode 100644 packages/tdesign-uniapp/components/form/_example/form.vue create mode 100644 packages/tdesign-uniapp/components/form/_example/horizontal/index.vue create mode 100644 packages/tdesign-uniapp/components/form/_example/vertical/index.vue create mode 100644 packages/tdesign-uniapp/components/form/form-item-props.ts create mode 100644 packages/tdesign-uniapp/components/form/form.less create mode 100644 packages/tdesign-uniapp/components/form/form.vue create mode 100644 packages/tdesign-uniapp/components/form/props.ts create mode 100644 packages/tdesign-uniapp/components/form/type.ts create mode 100644 packages/tdesign-uniapp/components/global.d.ts create mode 100644 packages/tdesign-uniapp/components/grid-item/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/grid-item/README.md create mode 100644 packages/tdesign-uniapp/components/grid-item/grid-item.less create mode 100644 packages/tdesign-uniapp/components/grid-item/grid-item.vue create mode 100644 packages/tdesign-uniapp/components/grid-item/props.ts create mode 100644 packages/tdesign-uniapp/components/grid-item/type.ts create mode 100644 packages/tdesign-uniapp/components/grid/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/grid/README.md create mode 100644 packages/tdesign-uniapp/components/grid/_example/badge/index.vue create mode 100644 packages/tdesign-uniapp/components/grid/_example/base/index.vue create mode 100644 packages/tdesign-uniapp/components/grid/_example/border/index.vue create mode 100644 packages/tdesign-uniapp/components/grid/_example/card/index.vue create mode 100644 packages/tdesign-uniapp/components/grid/_example/description/index.vue create mode 100644 packages/tdesign-uniapp/components/grid/_example/grid.less create mode 100644 packages/tdesign-uniapp/components/grid/_example/grid.vue create mode 100644 packages/tdesign-uniapp/components/grid/_example/icon-grid/index.vue create mode 100644 packages/tdesign-uniapp/components/grid/_example/multiple/index.vue create mode 100644 packages/tdesign-uniapp/components/grid/_example/scroll/index.vue create mode 100644 packages/tdesign-uniapp/components/grid/grid.less create mode 100644 packages/tdesign-uniapp/components/grid/grid.vue create mode 100644 packages/tdesign-uniapp/components/grid/props.ts create mode 100644 packages/tdesign-uniapp/components/grid/type.ts create mode 100644 packages/tdesign-uniapp/components/guide/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/guide/README.md create mode 100644 packages/tdesign-uniapp/components/guide/_example/base/index.vue create mode 100644 packages/tdesign-uniapp/components/guide/_example/content/index.vue create mode 100644 packages/tdesign-uniapp/components/guide/_example/dialog/index.vue create mode 100644 packages/tdesign-uniapp/components/guide/_example/guide.less create mode 100644 packages/tdesign-uniapp/components/guide/_example/guide.vue create mode 100644 packages/tdesign-uniapp/components/guide/_example/multiple/index.vue create mode 100644 packages/tdesign-uniapp/components/guide/_example/no-mask/index.vue create mode 100644 packages/tdesign-uniapp/components/guide/content.vue create mode 100644 packages/tdesign-uniapp/components/guide/guide.less create mode 100644 packages/tdesign-uniapp/components/guide/guide.vue create mode 100644 packages/tdesign-uniapp/components/guide/props.ts create mode 100644 packages/tdesign-uniapp/components/guide/type.ts create mode 100644 packages/tdesign-uniapp/components/icon/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/icon/README.md create mode 100644 packages/tdesign-uniapp/components/icon/_example/base/index.vue create mode 100644 packages/tdesign-uniapp/components/icon/_example/custom/index.vue create mode 100644 packages/tdesign-uniapp/components/icon/_example/data.js create mode 100644 packages/tdesign-uniapp/components/icon/_example/icon.less create mode 100644 packages/tdesign-uniapp/components/icon/_example/icon.vue create mode 100644 packages/tdesign-uniapp/components/icon/_example/iconImage/index.vue create mode 100644 packages/tdesign-uniapp/components/icon/_example/iconfont.css create mode 100644 packages/tdesign-uniapp/components/icon/_example/skyline/icon.less create mode 100644 packages/tdesign-uniapp/components/icon/_example/skyline/icon.vue create mode 100644 packages/tdesign-uniapp/components/icon/icon.less create mode 100644 packages/tdesign-uniapp/components/icon/icon.vue create mode 100644 packages/tdesign-uniapp/components/icon/props.ts create mode 100644 packages/tdesign-uniapp/components/icon/type.ts create mode 100644 packages/tdesign-uniapp/components/image-viewer/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/image-viewer/README.md create mode 100644 packages/tdesign-uniapp/components/image-viewer/_example/base/index.vue create mode 100644 packages/tdesign-uniapp/components/image-viewer/_example/delete/index.vue create mode 100644 packages/tdesign-uniapp/components/image-viewer/_example/image-viewer.less create mode 100644 packages/tdesign-uniapp/components/image-viewer/_example/image-viewer.vue create mode 100644 packages/tdesign-uniapp/components/image-viewer/_example/skyline/image-viewer.vue create mode 100644 packages/tdesign-uniapp/components/image-viewer/computed.js create mode 100644 packages/tdesign-uniapp/components/image-viewer/image-viewer.less create mode 100644 packages/tdesign-uniapp/components/image-viewer/image-viewer.vue create mode 100644 packages/tdesign-uniapp/components/image-viewer/props.ts create mode 100644 packages/tdesign-uniapp/components/image-viewer/type.ts create mode 100644 packages/tdesign-uniapp/components/image/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/image/README.md create mode 100644 packages/tdesign-uniapp/components/image/_example/base/index.vue create mode 100644 packages/tdesign-uniapp/components/image/_example/image.less create mode 100644 packages/tdesign-uniapp/components/image/_example/image.vue create mode 100644 packages/tdesign-uniapp/components/image/_example/skyline/image.less create mode 100644 packages/tdesign-uniapp/components/image/_example/skyline/image.vue create mode 100644 packages/tdesign-uniapp/components/image/_example/status/index.vue create mode 100644 packages/tdesign-uniapp/components/image/image.less create mode 100644 packages/tdesign-uniapp/components/image/image.vue create mode 100644 packages/tdesign-uniapp/components/image/props.ts create mode 100644 packages/tdesign-uniapp/components/image/type.ts create mode 100644 packages/tdesign-uniapp/components/indexes-anchor/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/indexes-anchor/README.md create mode 100644 packages/tdesign-uniapp/components/indexes-anchor/indexes-anchor.less create mode 100644 packages/tdesign-uniapp/components/indexes-anchor/indexes-anchor.vue create mode 100644 packages/tdesign-uniapp/components/indexes-anchor/props.ts create mode 100644 packages/tdesign-uniapp/components/indexes-anchor/type.ts create mode 100644 packages/tdesign-uniapp/components/indexes/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/indexes/README.md create mode 100644 packages/tdesign-uniapp/components/indexes/_example/base/index.vue create mode 100644 packages/tdesign-uniapp/components/indexes/_example/custom/index.vue create mode 100644 packages/tdesign-uniapp/components/indexes/_example/indexes.less create mode 100644 packages/tdesign-uniapp/components/indexes/_example/indexes.vue create mode 100644 packages/tdesign-uniapp/components/indexes/computed.js create mode 100644 packages/tdesign-uniapp/components/indexes/indexes-anchor-props.ts create mode 100644 packages/tdesign-uniapp/components/indexes/indexes.less create mode 100644 packages/tdesign-uniapp/components/indexes/indexes.vue create mode 100644 packages/tdesign-uniapp/components/indexes/props.ts create mode 100644 packages/tdesign-uniapp/components/indexes/type.ts create mode 100644 packages/tdesign-uniapp/components/input/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/input/README.md create mode 100644 packages/tdesign-uniapp/components/input/_example/align/index.vue create mode 100644 packages/tdesign-uniapp/components/input/_example/banner/index.vue create mode 100644 packages/tdesign-uniapp/components/input/_example/base/index.vue create mode 100644 packages/tdesign-uniapp/components/input/_example/bordered/index.vue create mode 100644 packages/tdesign-uniapp/components/input/_example/custom/index.vue create mode 100644 packages/tdesign-uniapp/components/input/_example/input.less create mode 100644 packages/tdesign-uniapp/components/input/_example/input.vue create mode 100644 packages/tdesign-uniapp/components/input/_example/label/index.vue create mode 100644 packages/tdesign-uniapp/components/input/_example/layout/index.vue create mode 100644 packages/tdesign-uniapp/components/input/_example/maxlength/index.vue create mode 100644 packages/tdesign-uniapp/components/input/_example/prefix/index.vue create mode 100644 packages/tdesign-uniapp/components/input/_example/skyline/input.less create mode 100644 packages/tdesign-uniapp/components/input/_example/skyline/input.vue create mode 100644 packages/tdesign-uniapp/components/input/_example/special/index.vue create mode 100644 packages/tdesign-uniapp/components/input/_example/status/index.vue create mode 100644 packages/tdesign-uniapp/components/input/_example/suffix/index.vue create mode 100644 packages/tdesign-uniapp/components/input/computed.js create mode 100644 packages/tdesign-uniapp/components/input/input.less create mode 100644 packages/tdesign-uniapp/components/input/input.vue create mode 100644 packages/tdesign-uniapp/components/input/props.ts create mode 100644 packages/tdesign-uniapp/components/input/type.ts create mode 100644 packages/tdesign-uniapp/components/input/utils.js create mode 100644 packages/tdesign-uniapp/components/link/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/link/README.md create mode 100644 packages/tdesign-uniapp/components/link/_example/content/index.vue create mode 100644 packages/tdesign-uniapp/components/link/_example/disabled/index.vue create mode 100644 packages/tdesign-uniapp/components/link/_example/link.less create mode 100644 packages/tdesign-uniapp/components/link/_example/link.vue create mode 100644 packages/tdesign-uniapp/components/link/_example/prefix/index.vue create mode 100644 packages/tdesign-uniapp/components/link/_example/size/index.vue create mode 100644 packages/tdesign-uniapp/components/link/_example/skyline/link.less create mode 100644 packages/tdesign-uniapp/components/link/_example/skyline/link.vue create mode 100644 packages/tdesign-uniapp/components/link/_example/suffix/index.vue create mode 100644 packages/tdesign-uniapp/components/link/_example/theme/index.vue create mode 100644 packages/tdesign-uniapp/components/link/_example/underline/index.vue create mode 100644 packages/tdesign-uniapp/components/link/link.less create mode 100644 packages/tdesign-uniapp/components/link/link.vue create mode 100644 packages/tdesign-uniapp/components/link/props.ts create mode 100644 packages/tdesign-uniapp/components/link/type.ts create mode 100644 packages/tdesign-uniapp/components/loading/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/loading/README.md create mode 100644 packages/tdesign-uniapp/components/loading/_example/base/index.vue create mode 100644 packages/tdesign-uniapp/components/loading/_example/duration/index.vue create mode 100644 packages/tdesign-uniapp/components/loading/_example/horizontal/index.vue create mode 100644 packages/tdesign-uniapp/components/loading/_example/loading.less create mode 100644 packages/tdesign-uniapp/components/loading/_example/loading.vue create mode 100644 packages/tdesign-uniapp/components/loading/_example/size/index.vue create mode 100644 packages/tdesign-uniapp/components/loading/_example/skyline/loading.less create mode 100644 packages/tdesign-uniapp/components/loading/_example/skyline/loading.vue create mode 100644 packages/tdesign-uniapp/components/loading/_example/text/index.vue create mode 100644 packages/tdesign-uniapp/components/loading/_example/vertical/index.vue create mode 100644 packages/tdesign-uniapp/components/loading/loading.less create mode 100644 packages/tdesign-uniapp/components/loading/loading.vue create mode 100644 packages/tdesign-uniapp/components/loading/props.ts create mode 100644 packages/tdesign-uniapp/components/loading/type.ts create mode 100644 packages/tdesign-uniapp/components/message-item/computed.js create mode 100644 packages/tdesign-uniapp/components/message-item/index.ts create mode 100644 packages/tdesign-uniapp/components/message-item/message-item.less create mode 100644 packages/tdesign-uniapp/components/message-item/message-item.vue create mode 100644 packages/tdesign-uniapp/components/message/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/message/README.md create mode 100644 packages/tdesign-uniapp/components/message/_example/base/index.vue create mode 100644 packages/tdesign-uniapp/components/message/_example/message.less create mode 100644 packages/tdesign-uniapp/components/message/_example/message.vue create mode 100644 packages/tdesign-uniapp/components/message/_example/theme/index.vue create mode 100644 packages/tdesign-uniapp/components/message/config.ts create mode 100644 packages/tdesign-uniapp/components/message/index.ts create mode 100644 packages/tdesign-uniapp/components/message/message.interface.ts create mode 100644 packages/tdesign-uniapp/components/message/message.vue create mode 100644 packages/tdesign-uniapp/components/message/props.ts create mode 100644 packages/tdesign-uniapp/components/message/type.ts create mode 100644 packages/tdesign-uniapp/components/mixins/page-scroll.js create mode 100644 packages/tdesign-uniapp/components/mixins/skyline.js create mode 100644 packages/tdesign-uniapp/components/mixins/theme-change.js create mode 100644 packages/tdesign-uniapp/components/mixins/touch.js create mode 100644 packages/tdesign-uniapp/components/mixins/transition.js create mode 100644 packages/tdesign-uniapp/components/mixins/using-custom-navbar.js create mode 100644 packages/tdesign-uniapp/components/navbar/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/navbar/README.md create mode 100644 packages/tdesign-uniapp/components/navbar/_example/back-home/index.vue create mode 100644 packages/tdesign-uniapp/components/navbar/_example/base/index.vue create mode 100644 packages/tdesign-uniapp/components/navbar/_example/custom-color/index.vue create mode 100644 packages/tdesign-uniapp/components/navbar/_example/img/index.vue create mode 100644 packages/tdesign-uniapp/components/navbar/_example/left-title/index.vue create mode 100644 packages/tdesign-uniapp/components/navbar/_example/navbar.less create mode 100644 packages/tdesign-uniapp/components/navbar/_example/navbar.vue create mode 100644 packages/tdesign-uniapp/components/navbar/_example/search/index.vue create mode 100644 packages/tdesign-uniapp/components/navbar/_example/skyline/navbar.less create mode 100644 packages/tdesign-uniapp/components/navbar/_example/skyline/navbar.vue create mode 100644 packages/tdesign-uniapp/components/navbar/navbar.less create mode 100644 packages/tdesign-uniapp/components/navbar/navbar.vue create mode 100644 packages/tdesign-uniapp/components/navbar/props.ts create mode 100644 packages/tdesign-uniapp/components/navbar/type.ts create mode 100644 packages/tdesign-uniapp/components/notice-bar/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/notice-bar/README.md create mode 100644 packages/tdesign-uniapp/components/notice-bar/_example/base/index.vue create mode 100644 packages/tdesign-uniapp/components/notice-bar/_example/custom/index.vue create mode 100644 packages/tdesign-uniapp/components/notice-bar/_example/customization/index.vue create mode 100644 packages/tdesign-uniapp/components/notice-bar/_example/event/index.vue create mode 100644 packages/tdesign-uniapp/components/notice-bar/_example/iconDemo/index.vue create mode 100644 packages/tdesign-uniapp/components/notice-bar/_example/notice-bar.less create mode 100644 packages/tdesign-uniapp/components/notice-bar/_example/notice-bar.vue create mode 100644 packages/tdesign-uniapp/components/notice-bar/_example/scrolling/index.vue create mode 100644 packages/tdesign-uniapp/components/notice-bar/_example/suffixIcon/index.vue create mode 100644 packages/tdesign-uniapp/components/notice-bar/_example/theme/index.vue create mode 100644 packages/tdesign-uniapp/components/notice-bar/notice-bar.less create mode 100644 packages/tdesign-uniapp/components/notice-bar/notice-bar.vue create mode 100644 packages/tdesign-uniapp/components/notice-bar/props.ts create mode 100644 packages/tdesign-uniapp/components/notice-bar/type.ts create mode 100644 packages/tdesign-uniapp/components/npm/dayjs/esm/constant.js create mode 100644 packages/tdesign-uniapp/components/npm/dayjs/esm/index.js create mode 100644 packages/tdesign-uniapp/components/npm/dayjs/esm/locale/en.js create mode 100644 packages/tdesign-uniapp/components/npm/dayjs/esm/locale/ja.js create mode 100644 packages/tdesign-uniapp/components/npm/dayjs/esm/locale/ko.js create mode 100644 packages/tdesign-uniapp/components/npm/dayjs/esm/locale/ru.js create mode 100644 packages/tdesign-uniapp/components/npm/dayjs/esm/locale/zh-cn.js create mode 100644 packages/tdesign-uniapp/components/npm/dayjs/esm/locale/zh-tw.js create mode 100644 packages/tdesign-uniapp/components/npm/dayjs/esm/plugin/localeData/index.js create mode 100644 packages/tdesign-uniapp/components/npm/dayjs/esm/plugin/localizedFormat/index.js create mode 100644 packages/tdesign-uniapp/components/npm/dayjs/esm/plugin/localizedFormat/utils.js create mode 100644 packages/tdesign-uniapp/components/npm/dayjs/esm/utils.js create mode 100644 packages/tdesign-uniapp/components/npm/tinycolor2/esm/tinycolor.js create mode 100644 packages/tdesign-uniapp/components/overlay/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/overlay/README.md create mode 100644 packages/tdesign-uniapp/components/overlay/_example/base/index.vue create mode 100644 packages/tdesign-uniapp/components/overlay/_example/overlay.less create mode 100644 packages/tdesign-uniapp/components/overlay/_example/overlay.vue create mode 100644 packages/tdesign-uniapp/components/overlay/_example/skyline/overlay.less create mode 100644 packages/tdesign-uniapp/components/overlay/_example/skyline/overlay.vue create mode 100644 packages/tdesign-uniapp/components/overlay/overlay.less create mode 100644 packages/tdesign-uniapp/components/overlay/overlay.vue create mode 100644 packages/tdesign-uniapp/components/overlay/props.ts create mode 100644 packages/tdesign-uniapp/components/overlay/type.ts create mode 100644 packages/tdesign-uniapp/components/package.json create mode 100644 packages/tdesign-uniapp/components/picker-item/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/picker-item/README.md create mode 100644 packages/tdesign-uniapp/components/picker-item/picker-item.less create mode 100644 packages/tdesign-uniapp/components/picker-item/picker-item.vue create mode 100644 packages/tdesign-uniapp/components/picker-item/props.ts create mode 100644 packages/tdesign-uniapp/components/picker-item/type.ts create mode 100644 packages/tdesign-uniapp/components/picker/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/picker/README.md create mode 100644 packages/tdesign-uniapp/components/picker/_example/area/index.vue create mode 100644 packages/tdesign-uniapp/components/picker/_example/base/index.vue create mode 100644 packages/tdesign-uniapp/components/picker/_example/picker.less create mode 100644 packages/tdesign-uniapp/components/picker/_example/picker.vue create mode 100644 packages/tdesign-uniapp/components/picker/_example/skyline/picker.less create mode 100644 packages/tdesign-uniapp/components/picker/_example/skyline/picker.vue create mode 100644 packages/tdesign-uniapp/components/picker/_example/with-title/index.vue create mode 100644 packages/tdesign-uniapp/components/picker/_example/without-popup/index.vue create mode 100644 packages/tdesign-uniapp/components/picker/picker.less create mode 100644 packages/tdesign-uniapp/components/picker/picker.vue create mode 100644 packages/tdesign-uniapp/components/picker/props.ts create mode 100644 packages/tdesign-uniapp/components/picker/type.ts create mode 100644 packages/tdesign-uniapp/components/popup/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/popup/README.md create mode 100644 packages/tdesign-uniapp/components/popup/_example/base/index.vue create mode 100644 packages/tdesign-uniapp/components/popup/_example/custom-close/index.vue create mode 100644 packages/tdesign-uniapp/components/popup/_example/popup.less create mode 100644 packages/tdesign-uniapp/components/popup/_example/popup.vue create mode 100644 packages/tdesign-uniapp/components/popup/_example/skyline/popup.less create mode 100644 packages/tdesign-uniapp/components/popup/_example/skyline/popup.vue create mode 100644 packages/tdesign-uniapp/components/popup/_example/with-title/index.vue create mode 100644 packages/tdesign-uniapp/components/popup/computed.js create mode 100644 packages/tdesign-uniapp/components/popup/popup.less create mode 100644 packages/tdesign-uniapp/components/popup/popup.vue create mode 100644 packages/tdesign-uniapp/components/popup/props.ts create mode 100644 packages/tdesign-uniapp/components/popup/type.ts create mode 100644 packages/tdesign-uniapp/components/progress/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/progress/README.md create mode 100644 packages/tdesign-uniapp/components/progress/_example/base/index.vue create mode 100644 packages/tdesign-uniapp/components/progress/_example/circle/index.vue create mode 100644 packages/tdesign-uniapp/components/progress/_example/custom/index.vue create mode 100644 packages/tdesign-uniapp/components/progress/_example/line/index.vue create mode 100644 packages/tdesign-uniapp/components/progress/_example/plump/index.vue create mode 100644 packages/tdesign-uniapp/components/progress/_example/progress.less create mode 100644 packages/tdesign-uniapp/components/progress/_example/progress.vue create mode 100644 packages/tdesign-uniapp/components/progress/_example/skyline/progress.less create mode 100644 packages/tdesign-uniapp/components/progress/_example/skyline/progress.vue create mode 100644 packages/tdesign-uniapp/components/progress/_example/transition/index.vue create mode 100644 packages/tdesign-uniapp/components/progress/computed.js create mode 100644 packages/tdesign-uniapp/components/progress/progress.less create mode 100644 packages/tdesign-uniapp/components/progress/progress.vue create mode 100644 packages/tdesign-uniapp/components/progress/props.ts create mode 100644 packages/tdesign-uniapp/components/progress/type.ts create mode 100644 packages/tdesign-uniapp/components/progress/utils.ts create mode 100644 packages/tdesign-uniapp/components/pull-down-refresh/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/pull-down-refresh/README.md create mode 100644 packages/tdesign-uniapp/components/pull-down-refresh/_example/base/index.vue create mode 100644 packages/tdesign-uniapp/components/pull-down-refresh/_example/pull-down-refresh.less create mode 100644 packages/tdesign-uniapp/components/pull-down-refresh/_example/pull-down-refresh.vue create mode 100644 packages/tdesign-uniapp/components/pull-down-refresh/_example/skyline/pull-down-refresh.vue create mode 100644 packages/tdesign-uniapp/components/pull-down-refresh/props.ts create mode 100644 packages/tdesign-uniapp/components/pull-down-refresh/pull-down-refresh.less create mode 100644 packages/tdesign-uniapp/components/pull-down-refresh/pull-down-refresh.vue create mode 100644 packages/tdesign-uniapp/components/pull-down-refresh/type.ts create mode 100644 packages/tdesign-uniapp/components/qrcode/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/qrcode/README.md create mode 100644 packages/tdesign-uniapp/components/qrcode/_example/base/index.less create mode 100644 packages/tdesign-uniapp/components/qrcode/_example/base/index.vue create mode 100644 packages/tdesign-uniapp/components/qrcode/_example/borderless/index.less create mode 100644 packages/tdesign-uniapp/components/qrcode/_example/borderless/index.vue create mode 100644 packages/tdesign-uniapp/components/qrcode/_example/color/index.less create mode 100644 packages/tdesign-uniapp/components/qrcode/_example/color/index.vue create mode 100644 packages/tdesign-uniapp/components/qrcode/_example/icon/index.less create mode 100644 packages/tdesign-uniapp/components/qrcode/_example/icon/index.vue create mode 100644 packages/tdesign-uniapp/components/qrcode/_example/level/index.less create mode 100644 packages/tdesign-uniapp/components/qrcode/_example/level/index.vue create mode 100644 packages/tdesign-uniapp/components/qrcode/_example/qrcode.less create mode 100644 packages/tdesign-uniapp/components/qrcode/_example/qrcode.vue create mode 100644 packages/tdesign-uniapp/components/qrcode/_example/size/index.less create mode 100644 packages/tdesign-uniapp/components/qrcode/_example/size/index.vue create mode 100644 packages/tdesign-uniapp/components/qrcode/_example/status/index.less create mode 100644 packages/tdesign-uniapp/components/qrcode/_example/status/index.vue create mode 100644 packages/tdesign-uniapp/components/qrcode/components/qrcode-canvas/props.ts create mode 100644 packages/tdesign-uniapp/components/qrcode/components/qrcode-canvas/qrcode-canvas.less create mode 100644 packages/tdesign-uniapp/components/qrcode/components/qrcode-canvas/qrcode-canvas.vue create mode 100644 packages/tdesign-uniapp/components/qrcode/components/qrcode-canvas/type.ts create mode 100644 packages/tdesign-uniapp/components/qrcode/components/qrcode-status/props.ts create mode 100644 packages/tdesign-uniapp/components/qrcode/components/qrcode-status/qrcode-status.less create mode 100644 packages/tdesign-uniapp/components/qrcode/components/qrcode-status/qrcode-status.vue create mode 100644 packages/tdesign-uniapp/components/qrcode/components/qrcode-status/type.ts create mode 100644 packages/tdesign-uniapp/components/qrcode/hooks/useQRCode.ts create mode 100644 packages/tdesign-uniapp/components/qrcode/props.ts create mode 100644 packages/tdesign-uniapp/components/qrcode/qrcode.less create mode 100644 packages/tdesign-uniapp/components/qrcode/qrcode.vue create mode 100644 packages/tdesign-uniapp/components/qrcode/type.ts create mode 100644 packages/tdesign-uniapp/components/radio-group/props.ts create mode 100644 packages/tdesign-uniapp/components/radio-group/radio-group.vue create mode 100644 packages/tdesign-uniapp/components/radio-group/type.ts create mode 100644 packages/tdesign-uniapp/components/radio/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/radio/README.md create mode 100644 packages/tdesign-uniapp/components/radio/_example/align/index.vue create mode 100644 packages/tdesign-uniapp/components/radio/_example/base/index.vue create mode 100644 packages/tdesign-uniapp/components/radio/_example/card/index.vue create mode 100644 packages/tdesign-uniapp/components/radio/_example/horizontal/index.vue create mode 100644 packages/tdesign-uniapp/components/radio/_example/radio.less create mode 100644 packages/tdesign-uniapp/components/radio/_example/radio.vue create mode 100644 packages/tdesign-uniapp/components/radio/_example/skyline/radio.less create mode 100644 packages/tdesign-uniapp/components/radio/_example/skyline/radio.vue create mode 100644 packages/tdesign-uniapp/components/radio/_example/special/index.vue create mode 100644 packages/tdesign-uniapp/components/radio/_example/status/index.vue create mode 100644 packages/tdesign-uniapp/components/radio/_example/theme/index.vue create mode 100644 packages/tdesign-uniapp/components/radio/props.ts create mode 100644 packages/tdesign-uniapp/components/radio/radio.less create mode 100644 packages/tdesign-uniapp/components/radio/radio.vue create mode 100644 packages/tdesign-uniapp/components/radio/type.ts create mode 100644 packages/tdesign-uniapp/components/rate/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/rate/README.md create mode 100644 packages/tdesign-uniapp/components/rate/_example/action/index.vue create mode 100644 packages/tdesign-uniapp/components/rate/_example/base/index.vue create mode 100644 packages/tdesign-uniapp/components/rate/_example/color/index.vue create mode 100644 packages/tdesign-uniapp/components/rate/_example/count/index.vue create mode 100644 packages/tdesign-uniapp/components/rate/_example/custom-prefix/index.vue create mode 100644 packages/tdesign-uniapp/components/rate/_example/custom/index.vue create mode 100644 packages/tdesign-uniapp/components/rate/_example/iconfont.css create mode 100644 packages/tdesign-uniapp/components/rate/_example/rate.less create mode 100644 packages/tdesign-uniapp/components/rate/_example/rate.vue create mode 100644 packages/tdesign-uniapp/components/rate/_example/show-text/index.vue create mode 100644 packages/tdesign-uniapp/components/rate/_example/size/index.vue create mode 100644 packages/tdesign-uniapp/components/rate/_example/special/index.vue create mode 100644 packages/tdesign-uniapp/components/rate/computed.js create mode 100644 packages/tdesign-uniapp/components/rate/props.ts create mode 100644 packages/tdesign-uniapp/components/rate/rate.less create mode 100644 packages/tdesign-uniapp/components/rate/rate.vue create mode 100644 packages/tdesign-uniapp/components/rate/type.ts create mode 100644 packages/tdesign-uniapp/components/result/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/result/README.md create mode 100644 packages/tdesign-uniapp/components/result/_example/custom/index.vue create mode 100644 packages/tdesign-uniapp/components/result/_example/description/index.vue create mode 100644 packages/tdesign-uniapp/components/result/_example/result-page.less create mode 100644 packages/tdesign-uniapp/components/result/_example/result-page.vue create mode 100644 packages/tdesign-uniapp/components/result/_example/result.less create mode 100644 packages/tdesign-uniapp/components/result/_example/result.vue create mode 100644 packages/tdesign-uniapp/components/result/_example/skyline/result.less create mode 100644 packages/tdesign-uniapp/components/result/_example/skyline/result.vue create mode 100644 packages/tdesign-uniapp/components/result/_example/theme/index.vue create mode 100644 packages/tdesign-uniapp/components/result/props.ts create mode 100644 packages/tdesign-uniapp/components/result/result.less create mode 100644 packages/tdesign-uniapp/components/result/result.vue create mode 100644 packages/tdesign-uniapp/components/result/type.ts create mode 100644 packages/tdesign-uniapp/components/row/computed.js create mode 100644 packages/tdesign-uniapp/components/row/props.ts create mode 100644 packages/tdesign-uniapp/components/row/row.less create mode 100644 packages/tdesign-uniapp/components/row/row.vue create mode 100644 packages/tdesign-uniapp/components/row/type.ts create mode 100644 packages/tdesign-uniapp/components/script/postinstall.js create mode 100644 packages/tdesign-uniapp/components/scroll-view/scroll-view.vue create mode 100644 packages/tdesign-uniapp/components/search/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/search/README.md create mode 100644 packages/tdesign-uniapp/components/search/_example/action/index.vue create mode 100644 packages/tdesign-uniapp/components/search/_example/base/index.vue create mode 100644 packages/tdesign-uniapp/components/search/_example/maxlength/index.vue create mode 100644 packages/tdesign-uniapp/components/search/_example/other/index.vue create mode 100644 packages/tdesign-uniapp/components/search/_example/search.less create mode 100644 packages/tdesign-uniapp/components/search/_example/search.vue create mode 100644 packages/tdesign-uniapp/components/search/_example/shape/index.vue create mode 100644 packages/tdesign-uniapp/components/search/_example/skyline/search.less create mode 100644 packages/tdesign-uniapp/components/search/_example/skyline/search.vue create mode 100644 packages/tdesign-uniapp/components/search/computed.js create mode 100644 packages/tdesign-uniapp/components/search/props.ts create mode 100644 packages/tdesign-uniapp/components/search/search.less create mode 100644 packages/tdesign-uniapp/components/search/search.vue create mode 100644 packages/tdesign-uniapp/components/search/type.ts create mode 100644 packages/tdesign-uniapp/components/side-bar-item/props.ts create mode 100644 packages/tdesign-uniapp/components/side-bar-item/side-bar-item.less create mode 100644 packages/tdesign-uniapp/components/side-bar-item/side-bar-item.vue create mode 100644 packages/tdesign-uniapp/components/side-bar-item/type.ts create mode 100644 packages/tdesign-uniapp/components/side-bar/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/side-bar/README.md create mode 100644 packages/tdesign-uniapp/components/side-bar/_example/base/index.vue create mode 100644 packages/tdesign-uniapp/components/side-bar/_example/custom/index.vue create mode 100644 packages/tdesign-uniapp/components/side-bar/_example/side-bar.less create mode 100644 packages/tdesign-uniapp/components/side-bar/_example/side-bar.vue create mode 100644 packages/tdesign-uniapp/components/side-bar/_example/switch/index.vue create mode 100644 packages/tdesign-uniapp/components/side-bar/_example/with-icon/index.vue create mode 100644 packages/tdesign-uniapp/components/side-bar/props.ts create mode 100644 packages/tdesign-uniapp/components/side-bar/side-bar-item-props.ts create mode 100644 packages/tdesign-uniapp/components/side-bar/side-bar.less create mode 100644 packages/tdesign-uniapp/components/side-bar/side-bar.vue create mode 100644 packages/tdesign-uniapp/components/side-bar/type.ts create mode 100644 packages/tdesign-uniapp/components/skeleton/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/skeleton/README.md create mode 100644 packages/tdesign-uniapp/components/skeleton/_example/animation/index.vue create mode 100644 packages/tdesign-uniapp/components/skeleton/_example/cell-group/index.vue create mode 100644 packages/tdesign-uniapp/components/skeleton/_example/grid/index.vue create mode 100644 packages/tdesign-uniapp/components/skeleton/_example/image-group/index.vue create mode 100644 packages/tdesign-uniapp/components/skeleton/_example/skeleton.less create mode 100644 packages/tdesign-uniapp/components/skeleton/_example/skeleton.vue create mode 100644 packages/tdesign-uniapp/components/skeleton/_example/skyline/skeleton.less create mode 100644 packages/tdesign-uniapp/components/skeleton/_example/skyline/skeleton.vue create mode 100644 packages/tdesign-uniapp/components/skeleton/_example/theme/index.vue create mode 100644 packages/tdesign-uniapp/components/skeleton/props.ts create mode 100644 packages/tdesign-uniapp/components/skeleton/skeleton.less create mode 100644 packages/tdesign-uniapp/components/skeleton/skeleton.vue create mode 100644 packages/tdesign-uniapp/components/skeleton/type.ts create mode 100644 packages/tdesign-uniapp/components/slider/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/slider/README.md create mode 100644 packages/tdesign-uniapp/components/slider/_example/base/index.vue create mode 100644 packages/tdesign-uniapp/components/slider/_example/capsule/index.vue create mode 100644 packages/tdesign-uniapp/components/slider/_example/disabled/index.vue create mode 100644 packages/tdesign-uniapp/components/slider/_example/label/index.vue create mode 100644 packages/tdesign-uniapp/components/slider/_example/max/index.vue create mode 100644 packages/tdesign-uniapp/components/slider/_example/range/index.vue create mode 100644 packages/tdesign-uniapp/components/slider/_example/skyline/slider.less create mode 100644 packages/tdesign-uniapp/components/slider/_example/skyline/slider.vue create mode 100644 packages/tdesign-uniapp/components/slider/_example/slider.less create mode 100644 packages/tdesign-uniapp/components/slider/_example/slider.vue create mode 100644 packages/tdesign-uniapp/components/slider/_example/step/index.vue create mode 100644 packages/tdesign-uniapp/components/slider/_example/vertical/index.vue create mode 100644 packages/tdesign-uniapp/components/slider/computed.js create mode 100644 packages/tdesign-uniapp/components/slider/props.ts create mode 100644 packages/tdesign-uniapp/components/slider/slider.less create mode 100644 packages/tdesign-uniapp/components/slider/slider.vue create mode 100644 packages/tdesign-uniapp/components/slider/tool.ts create mode 100644 packages/tdesign-uniapp/components/slider/type.ts create mode 100644 packages/tdesign-uniapp/components/step-item/computed.js create mode 100644 packages/tdesign-uniapp/components/step-item/props.ts create mode 100644 packages/tdesign-uniapp/components/step-item/step-item.less create mode 100644 packages/tdesign-uniapp/components/step-item/step-item.vue create mode 100644 packages/tdesign-uniapp/components/step-item/type.ts create mode 100644 packages/tdesign-uniapp/components/stepper/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/stepper/README.md create mode 100644 packages/tdesign-uniapp/components/stepper/_example/base/index.vue create mode 100644 packages/tdesign-uniapp/components/stepper/_example/min-max/index.vue create mode 100644 packages/tdesign-uniapp/components/stepper/_example/size/index.vue create mode 100644 packages/tdesign-uniapp/components/stepper/_example/skyline/stepper.less create mode 100644 packages/tdesign-uniapp/components/stepper/_example/skyline/stepper.vue create mode 100644 packages/tdesign-uniapp/components/stepper/_example/status/index.vue create mode 100644 packages/tdesign-uniapp/components/stepper/_example/stepper.less create mode 100644 packages/tdesign-uniapp/components/stepper/_example/stepper.vue create mode 100644 packages/tdesign-uniapp/components/stepper/_example/theme/index.vue create mode 100644 packages/tdesign-uniapp/components/stepper/props.ts create mode 100644 packages/tdesign-uniapp/components/stepper/stepper.less create mode 100644 packages/tdesign-uniapp/components/stepper/stepper.vue create mode 100644 packages/tdesign-uniapp/components/stepper/type.ts create mode 100644 packages/tdesign-uniapp/components/steps/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/steps/README.md create mode 100644 packages/tdesign-uniapp/components/steps/_example/horizontal/index.vue create mode 100644 packages/tdesign-uniapp/components/steps/_example/skyline/steps.less create mode 100644 packages/tdesign-uniapp/components/steps/_example/skyline/steps.vue create mode 100644 packages/tdesign-uniapp/components/steps/_example/special/index.vue create mode 100644 packages/tdesign-uniapp/components/steps/_example/status/index.vue create mode 100644 packages/tdesign-uniapp/components/steps/_example/steps.less create mode 100644 packages/tdesign-uniapp/components/steps/_example/steps.vue create mode 100644 packages/tdesign-uniapp/components/steps/_example/vertical/index.vue create mode 100644 packages/tdesign-uniapp/components/steps/props.ts create mode 100644 packages/tdesign-uniapp/components/steps/steps.less create mode 100644 packages/tdesign-uniapp/components/steps/steps.vue create mode 100644 packages/tdesign-uniapp/components/steps/type.ts create mode 100644 packages/tdesign-uniapp/components/sticky/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/sticky/README.md create mode 100644 packages/tdesign-uniapp/components/sticky/_example/base/index.vue create mode 100644 packages/tdesign-uniapp/components/sticky/_example/container/index.vue create mode 100644 packages/tdesign-uniapp/components/sticky/_example/offset/index.vue create mode 100644 packages/tdesign-uniapp/components/sticky/_example/sticky.less create mode 100644 packages/tdesign-uniapp/components/sticky/_example/sticky.vue create mode 100644 packages/tdesign-uniapp/components/sticky/props.ts create mode 100644 packages/tdesign-uniapp/components/sticky/sticky.less create mode 100644 packages/tdesign-uniapp/components/sticky/sticky.vue create mode 100644 packages/tdesign-uniapp/components/sticky/type.ts create mode 100644 packages/tdesign-uniapp/components/swipe-cell/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/swipe-cell/README.md create mode 100644 packages/tdesign-uniapp/components/swipe-cell/_example/double/index.vue create mode 100644 packages/tdesign-uniapp/components/swipe-cell/_example/icon/index.vue create mode 100644 packages/tdesign-uniapp/components/swipe-cell/_example/left/index.vue create mode 100644 packages/tdesign-uniapp/components/swipe-cell/_example/right/index.vue create mode 100644 packages/tdesign-uniapp/components/swipe-cell/_example/swipe-cell.less create mode 100644 packages/tdesign-uniapp/components/swipe-cell/_example/swipe-cell.vue create mode 100644 packages/tdesign-uniapp/components/swipe-cell/computed.js create mode 100644 packages/tdesign-uniapp/components/swipe-cell/props.ts create mode 100644 packages/tdesign-uniapp/components/swipe-cell/swipe-cell.less create mode 100644 packages/tdesign-uniapp/components/swipe-cell/swipe-cell.vue create mode 100644 packages/tdesign-uniapp/components/swipe-cell/type.ts create mode 100644 packages/tdesign-uniapp/components/swiper-nav/props.ts create mode 100644 packages/tdesign-uniapp/components/swiper-nav/swiper-nav.less create mode 100644 packages/tdesign-uniapp/components/swiper-nav/swiper-nav.vue create mode 100644 packages/tdesign-uniapp/components/swiper-nav/type.ts create mode 100644 packages/tdesign-uniapp/components/swiper/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/swiper/README.md create mode 100644 packages/tdesign-uniapp/components/swiper/_example/base/index.vue create mode 100644 packages/tdesign-uniapp/components/swiper/_example/cards/index.vue create mode 100644 packages/tdesign-uniapp/components/swiper/_example/custom/index.vue create mode 100644 packages/tdesign-uniapp/components/swiper/_example/fraction/index.vue create mode 100644 packages/tdesign-uniapp/components/swiper/_example/nav-btn/index.vue create mode 100644 packages/tdesign-uniapp/components/swiper/_example/skyline/swiper.vue create mode 100644 packages/tdesign-uniapp/components/swiper/_example/swiper.less create mode 100644 packages/tdesign-uniapp/components/swiper/_example/swiper.vue create mode 100644 packages/tdesign-uniapp/components/swiper/_example/vertical/index.vue create mode 100644 packages/tdesign-uniapp/components/swiper/computed.js create mode 100644 packages/tdesign-uniapp/components/swiper/props.ts create mode 100644 packages/tdesign-uniapp/components/swiper/swiper.less create mode 100644 packages/tdesign-uniapp/components/swiper/swiper.vue create mode 100644 packages/tdesign-uniapp/components/swiper/type.ts create mode 100644 packages/tdesign-uniapp/components/switch/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/switch/README.md create mode 100644 packages/tdesign-uniapp/components/switch/_example/base/index.vue create mode 100644 packages/tdesign-uniapp/components/switch/_example/color/index.vue create mode 100644 packages/tdesign-uniapp/components/switch/_example/label/index.vue create mode 100644 packages/tdesign-uniapp/components/switch/_example/size/index.vue create mode 100644 packages/tdesign-uniapp/components/switch/_example/skyline/switch.less create mode 100644 packages/tdesign-uniapp/components/switch/_example/skyline/switch.vue create mode 100644 packages/tdesign-uniapp/components/switch/_example/status/index.vue create mode 100644 packages/tdesign-uniapp/components/switch/_example/switch.less create mode 100644 packages/tdesign-uniapp/components/switch/_example/switch.vue create mode 100644 packages/tdesign-uniapp/components/switch/props.ts create mode 100644 packages/tdesign-uniapp/components/switch/switch.less create mode 100644 packages/tdesign-uniapp/components/switch/switch.vue create mode 100644 packages/tdesign-uniapp/components/switch/type.ts create mode 100644 packages/tdesign-uniapp/components/tab-bar-item/props.ts create mode 100644 packages/tdesign-uniapp/components/tab-bar-item/tab-bar-item.less create mode 100644 packages/tdesign-uniapp/components/tab-bar-item/tab-bar-item.vue create mode 100644 packages/tdesign-uniapp/components/tab-bar-item/type.ts create mode 100644 packages/tdesign-uniapp/components/tab-bar/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/tab-bar/README.md create mode 100644 packages/tdesign-uniapp/components/tab-bar/_example/badge/index.vue create mode 100644 packages/tdesign-uniapp/components/tab-bar/_example/base/index.vue create mode 100644 packages/tdesign-uniapp/components/tab-bar/_example/custom/index.vue create mode 100644 packages/tdesign-uniapp/components/tab-bar/_example/icon-only/index.vue create mode 100644 packages/tdesign-uniapp/components/tab-bar/_example/round/index.vue create mode 100644 packages/tdesign-uniapp/components/tab-bar/_example/skyline/tab-bar.less create mode 100644 packages/tdesign-uniapp/components/tab-bar/_example/skyline/tab-bar.vue create mode 100644 packages/tdesign-uniapp/components/tab-bar/_example/sub/index.vue create mode 100644 packages/tdesign-uniapp/components/tab-bar/_example/tab-bar.less create mode 100644 packages/tdesign-uniapp/components/tab-bar/_example/tab-bar.vue create mode 100644 packages/tdesign-uniapp/components/tab-bar/_example/text-only/index.vue create mode 100644 packages/tdesign-uniapp/components/tab-bar/props.ts create mode 100644 packages/tdesign-uniapp/components/tab-bar/tab-bar.less create mode 100644 packages/tdesign-uniapp/components/tab-bar/tab-bar.vue create mode 100644 packages/tdesign-uniapp/components/tab-bar/type.ts create mode 100644 packages/tdesign-uniapp/components/tab-panel/props.ts create mode 100644 packages/tdesign-uniapp/components/tab-panel/tab-panel.less create mode 100644 packages/tdesign-uniapp/components/tab-panel/tab-panel.vue create mode 100644 packages/tdesign-uniapp/components/tab-panel/type.ts create mode 100644 packages/tdesign-uniapp/components/tabs/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/tabs/README.md create mode 100644 packages/tdesign-uniapp/components/tabs/_example/base/index.vue create mode 100644 packages/tdesign-uniapp/components/tabs/_example/scroll/index.vue create mode 100644 packages/tdesign-uniapp/components/tabs/_example/size/index.vue create mode 100644 packages/tdesign-uniapp/components/tabs/_example/status/index.vue create mode 100644 packages/tdesign-uniapp/components/tabs/_example/tabs.less create mode 100644 packages/tdesign-uniapp/components/tabs/_example/tabs.vue create mode 100644 packages/tdesign-uniapp/components/tabs/_example/theme/index.vue create mode 100644 packages/tdesign-uniapp/components/tabs/_example/with-badge/index.vue create mode 100644 packages/tdesign-uniapp/components/tabs/_example/with-content/index.vue create mode 100644 packages/tdesign-uniapp/components/tabs/_example/with-icon/index.vue create mode 100644 packages/tdesign-uniapp/components/tabs/computed.js create mode 100644 packages/tdesign-uniapp/components/tabs/props.ts create mode 100644 packages/tdesign-uniapp/components/tabs/tabs.less create mode 100644 packages/tdesign-uniapp/components/tabs/tabs.vue create mode 100644 packages/tdesign-uniapp/components/tabs/type.ts create mode 100644 packages/tdesign-uniapp/components/tag/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/tag/README.md create mode 100644 packages/tdesign-uniapp/components/tag/_example/checkable/index.vue create mode 100644 packages/tdesign-uniapp/components/tag/_example/closable/index.vue create mode 100644 packages/tdesign-uniapp/components/tag/_example/size/index.vue create mode 100644 packages/tdesign-uniapp/components/tag/_example/skyline/tag.less create mode 100644 packages/tdesign-uniapp/components/tag/_example/skyline/tag.vue create mode 100644 packages/tdesign-uniapp/components/tag/_example/tag.less create mode 100644 packages/tdesign-uniapp/components/tag/_example/tag.vue create mode 100644 packages/tdesign-uniapp/components/tag/_example/theme/index.vue create mode 100644 packages/tdesign-uniapp/components/tag/_example/type/index.vue create mode 100644 packages/tdesign-uniapp/components/tag/props.ts create mode 100644 packages/tdesign-uniapp/components/tag/tag.less create mode 100644 packages/tdesign-uniapp/components/tag/tag.vue create mode 100644 packages/tdesign-uniapp/components/tag/type.ts create mode 100644 packages/tdesign-uniapp/components/tdesign-uniapp/tdesign-uniapp.vue create mode 100644 packages/tdesign-uniapp/components/textarea/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/textarea/README.md create mode 100644 packages/tdesign-uniapp/components/textarea/_example/autosize/index.vue create mode 100644 packages/tdesign-uniapp/components/textarea/_example/base/index.vue create mode 100644 packages/tdesign-uniapp/components/textarea/_example/card/index.vue create mode 100644 packages/tdesign-uniapp/components/textarea/_example/custom/index.vue create mode 100644 packages/tdesign-uniapp/components/textarea/_example/disabled/index.vue create mode 100644 packages/tdesign-uniapp/components/textarea/_example/label/index.vue create mode 100644 packages/tdesign-uniapp/components/textarea/_example/maxcharacter/index.vue create mode 100644 packages/tdesign-uniapp/components/textarea/_example/maxlength/index.vue create mode 100644 packages/tdesign-uniapp/components/textarea/_example/skyline/textarea.less create mode 100644 packages/tdesign-uniapp/components/textarea/_example/skyline/textarea.vue create mode 100644 packages/tdesign-uniapp/components/textarea/_example/textarea.less create mode 100644 packages/tdesign-uniapp/components/textarea/_example/textarea.vue create mode 100644 packages/tdesign-uniapp/components/textarea/computed.js create mode 100644 packages/tdesign-uniapp/components/textarea/props.ts create mode 100644 packages/tdesign-uniapp/components/textarea/textarea.less create mode 100644 packages/tdesign-uniapp/components/textarea/textarea.vue create mode 100644 packages/tdesign-uniapp/components/textarea/type.ts create mode 100644 packages/tdesign-uniapp/components/toast/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/toast/README.md create mode 100644 packages/tdesign-uniapp/components/toast/_example/base/index.vue create mode 100644 packages/tdesign-uniapp/components/toast/_example/close/index.vue create mode 100644 packages/tdesign-uniapp/components/toast/_example/cover/index.vue create mode 100644 packages/tdesign-uniapp/components/toast/_example/skyline/toast.less create mode 100644 packages/tdesign-uniapp/components/toast/_example/skyline/toast.vue create mode 100644 packages/tdesign-uniapp/components/toast/_example/theme/index.vue create mode 100644 packages/tdesign-uniapp/components/toast/_example/toast.less create mode 100644 packages/tdesign-uniapp/components/toast/_example/toast.vue create mode 100644 packages/tdesign-uniapp/components/toast/index.ts create mode 100644 packages/tdesign-uniapp/components/toast/props.ts create mode 100644 packages/tdesign-uniapp/components/toast/toast.less create mode 100644 packages/tdesign-uniapp/components/toast/toast.vue create mode 100644 packages/tdesign-uniapp/components/toast/type.ts create mode 100644 packages/tdesign-uniapp/components/transition/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/transition/README.md create mode 100644 packages/tdesign-uniapp/components/transition/_example/api.md create mode 100644 packages/tdesign-uniapp/components/transition/_example/appear/index.vue create mode 100644 packages/tdesign-uniapp/components/transition/_example/base/index.vue create mode 100644 packages/tdesign-uniapp/components/transition/_example/custom/index.less create mode 100644 packages/tdesign-uniapp/components/transition/_example/custom/index.vue create mode 100644 packages/tdesign-uniapp/components/transition/_example/destroy/index.vue create mode 100644 packages/tdesign-uniapp/components/transition/_example/transition.less create mode 100644 packages/tdesign-uniapp/components/transition/_example/transition.vue create mode 100644 packages/tdesign-uniapp/components/transition/props.js create mode 100644 packages/tdesign-uniapp/components/transition/transition.less create mode 100644 packages/tdesign-uniapp/components/transition/transition.vue create mode 100644 packages/tdesign-uniapp/components/tree-select/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/tree-select/README.md create mode 100644 packages/tdesign-uniapp/components/tree-select/_example/base/index.vue create mode 100644 packages/tdesign-uniapp/components/tree-select/_example/multiple/index.vue create mode 100644 packages/tdesign-uniapp/components/tree-select/_example/normal/index.vue create mode 100644 packages/tdesign-uniapp/components/tree-select/_example/tree-select.vue create mode 100644 packages/tdesign-uniapp/components/tree-select/computed.js create mode 100644 packages/tdesign-uniapp/components/tree-select/props.ts create mode 100644 packages/tdesign-uniapp/components/tree-select/tree-select.less create mode 100644 packages/tdesign-uniapp/components/tree-select/tree-select.vue create mode 100644 packages/tdesign-uniapp/components/tree-select/type.ts create mode 100644 packages/tdesign-uniapp/components/types/action-sheet.d.ts create mode 100644 packages/tdesign-uniapp/components/types/avatar-group.d.ts create mode 100644 packages/tdesign-uniapp/components/types/avatar.d.ts create mode 100644 packages/tdesign-uniapp/components/types/back-top.d.ts create mode 100644 packages/tdesign-uniapp/components/types/badge.d.ts create mode 100644 packages/tdesign-uniapp/components/types/button.d.ts create mode 100644 packages/tdesign-uniapp/components/types/calendar.d.ts create mode 100644 packages/tdesign-uniapp/components/types/cascader.d.ts create mode 100644 packages/tdesign-uniapp/components/types/cell-group.d.ts create mode 100644 packages/tdesign-uniapp/components/types/cell.d.ts create mode 100644 packages/tdesign-uniapp/components/types/check-tag.d.ts create mode 100644 packages/tdesign-uniapp/components/types/checkbox-group.d.ts create mode 100644 packages/tdesign-uniapp/components/types/checkbox.d.ts create mode 100644 packages/tdesign-uniapp/components/types/col.d.ts create mode 100644 packages/tdesign-uniapp/components/types/collapse-panel.d.ts create mode 100644 packages/tdesign-uniapp/components/types/collapse.d.ts create mode 100644 packages/tdesign-uniapp/components/types/color-picker.d.ts create mode 100644 packages/tdesign-uniapp/components/types/count-down.d.ts create mode 100644 packages/tdesign-uniapp/components/types/date-time-picker.d.ts create mode 100644 packages/tdesign-uniapp/components/types/dialog.d.ts create mode 100644 packages/tdesign-uniapp/components/types/divider.d.ts create mode 100644 packages/tdesign-uniapp/components/types/drawer.d.ts create mode 100644 packages/tdesign-uniapp/components/types/dropdown-item.d.ts create mode 100644 packages/tdesign-uniapp/components/types/dropdown-menu.d.ts create mode 100644 packages/tdesign-uniapp/components/types/empty.d.ts create mode 100644 packages/tdesign-uniapp/components/types/fab.d.ts create mode 100644 packages/tdesign-uniapp/components/types/footer.d.ts create mode 100644 packages/tdesign-uniapp/components/types/form-item.d.ts create mode 100644 packages/tdesign-uniapp/components/types/form.d.ts create mode 100644 packages/tdesign-uniapp/components/types/grid-item.d.ts create mode 100644 packages/tdesign-uniapp/components/types/grid.d.ts create mode 100644 packages/tdesign-uniapp/components/types/guide.d.ts create mode 100644 packages/tdesign-uniapp/components/types/icon.d.ts create mode 100644 packages/tdesign-uniapp/components/types/image-viewer.d.ts create mode 100644 packages/tdesign-uniapp/components/types/image.d.ts create mode 100644 packages/tdesign-uniapp/components/types/index.d.ts create mode 100644 packages/tdesign-uniapp/components/types/indexes-anchor.d.ts create mode 100644 packages/tdesign-uniapp/components/types/indexes.d.ts create mode 100644 packages/tdesign-uniapp/components/types/input.d.ts create mode 100644 packages/tdesign-uniapp/components/types/link.d.ts create mode 100644 packages/tdesign-uniapp/components/types/loading.d.ts create mode 100644 packages/tdesign-uniapp/components/types/message.d.ts create mode 100644 packages/tdesign-uniapp/components/types/navbar.d.ts create mode 100644 packages/tdesign-uniapp/components/types/notice-bar.d.ts create mode 100644 packages/tdesign-uniapp/components/types/overlay.d.ts create mode 100644 packages/tdesign-uniapp/components/types/picker-item.d.ts create mode 100644 packages/tdesign-uniapp/components/types/picker.d.ts create mode 100644 packages/tdesign-uniapp/components/types/popup.d.ts create mode 100644 packages/tdesign-uniapp/components/types/progress.d.ts create mode 100644 packages/tdesign-uniapp/components/types/pull-down-refresh.d.ts create mode 100644 packages/tdesign-uniapp/components/types/qrcode.d.ts create mode 100644 packages/tdesign-uniapp/components/types/radio-group.d.ts create mode 100644 packages/tdesign-uniapp/components/types/radio.d.ts create mode 100644 packages/tdesign-uniapp/components/types/rate.d.ts create mode 100644 packages/tdesign-uniapp/components/types/result.d.ts create mode 100644 packages/tdesign-uniapp/components/types/row.d.ts create mode 100644 packages/tdesign-uniapp/components/types/search.d.ts create mode 100644 packages/tdesign-uniapp/components/types/side-bar-item.d.ts create mode 100644 packages/tdesign-uniapp/components/types/side-bar.d.ts create mode 100644 packages/tdesign-uniapp/components/types/skeleton.d.ts create mode 100644 packages/tdesign-uniapp/components/types/slider.d.ts create mode 100644 packages/tdesign-uniapp/components/types/step-item.d.ts create mode 100644 packages/tdesign-uniapp/components/types/stepper.d.ts create mode 100644 packages/tdesign-uniapp/components/types/steps.d.ts create mode 100644 packages/tdesign-uniapp/components/types/sticky.d.ts create mode 100644 packages/tdesign-uniapp/components/types/swipe-cell.d.ts create mode 100644 packages/tdesign-uniapp/components/types/swiper-nav.d.ts create mode 100644 packages/tdesign-uniapp/components/types/swiper.d.ts create mode 100644 packages/tdesign-uniapp/components/types/switch.d.ts create mode 100644 packages/tdesign-uniapp/components/types/tab-bar-item.d.ts create mode 100644 packages/tdesign-uniapp/components/types/tab-bar.d.ts create mode 100644 packages/tdesign-uniapp/components/types/tab-panel.d.ts create mode 100644 packages/tdesign-uniapp/components/types/tabs.d.ts create mode 100644 packages/tdesign-uniapp/components/types/tag.d.ts create mode 100644 packages/tdesign-uniapp/components/types/textarea.d.ts create mode 100644 packages/tdesign-uniapp/components/types/toast.d.ts create mode 100644 packages/tdesign-uniapp/components/types/tree-select.d.ts create mode 100644 packages/tdesign-uniapp/components/types/upload.d.ts create mode 100644 packages/tdesign-uniapp/components/types/watermark.d.ts create mode 100644 packages/tdesign-uniapp/components/upload/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/upload/README.md create mode 100644 packages/tdesign-uniapp/components/upload/_example/drag/index.vue create mode 100644 packages/tdesign-uniapp/components/upload/_example/messageFile/index.vue create mode 100644 packages/tdesign-uniapp/components/upload/_example/multiple/index.vue create mode 100644 packages/tdesign-uniapp/components/upload/_example/single/index.vue create mode 100644 packages/tdesign-uniapp/components/upload/_example/status/index.vue create mode 100644 packages/tdesign-uniapp/components/upload/_example/upload.less create mode 100644 packages/tdesign-uniapp/components/upload/_example/upload.vue create mode 100644 packages/tdesign-uniapp/components/upload/drag.computed.js create mode 100644 packages/tdesign-uniapp/components/upload/props.ts create mode 100644 packages/tdesign-uniapp/components/upload/type.ts create mode 100644 packages/tdesign-uniapp/components/upload/upload.computed.js create mode 100644 packages/tdesign-uniapp/components/upload/upload.less create mode 100644 packages/tdesign-uniapp/components/upload/upload.vue create mode 100644 packages/tdesign-uniapp/components/watermark/README.en-US.md create mode 100644 packages/tdesign-uniapp/components/watermark/README.md create mode 100644 packages/tdesign-uniapp/components/watermark/_example/base/index.vue create mode 100644 packages/tdesign-uniapp/components/watermark/_example/gray/index.vue create mode 100644 packages/tdesign-uniapp/components/watermark/_example/image/index.vue create mode 100644 packages/tdesign-uniapp/components/watermark/_example/layout/index.vue create mode 100644 packages/tdesign-uniapp/components/watermark/_example/move-image/index.vue create mode 100644 packages/tdesign-uniapp/components/watermark/_example/move-text/index.vue create mode 100644 packages/tdesign-uniapp/components/watermark/_example/multi-line-gray/index.vue create mode 100644 packages/tdesign-uniapp/components/watermark/_example/multi-line/index.vue create mode 100644 packages/tdesign-uniapp/components/watermark/_example/watermark.less create mode 100644 packages/tdesign-uniapp/components/watermark/_example/watermark.vue create mode 100644 packages/tdesign-uniapp/components/watermark/props.ts create mode 100644 packages/tdesign-uniapp/components/watermark/type.ts create mode 100644 packages/tdesign-uniapp/components/watermark/utils/generateBase64Url.js create mode 100644 packages/tdesign-uniapp/components/watermark/utils/randomMovingStyle.js create mode 100644 packages/tdesign-uniapp/components/watermark/watermark.less create mode 100644 packages/tdesign-uniapp/components/watermark/watermark.vue create mode 100644 packages/tdesign-uniapp/example/.env.production create mode 100644 packages/tdesign-uniapp/example/docs/img/github-pages.png create mode 100644 packages/tdesign-uniapp/example/docs/img/tdesign-uniapp-mp.png create mode 100644 packages/tdesign-uniapp/example/index.html create mode 100644 packages/tdesign-uniapp/example/package.json create mode 100644 packages/tdesign-uniapp/example/script/deploy/cdn.js create mode 100644 packages/tdesign-uniapp/example/script/deploy/local.env.js create mode 100644 packages/tdesign-uniapp/example/script/deploy/mine-doc.js create mode 100644 packages/tdesign-uniapp/example/script/deploy/publish.sh create mode 100644 packages/tdesign-uniapp/example/script/pages/config.js create mode 100644 packages/tdesign-uniapp/example/script/pages/index.js create mode 100644 packages/tdesign-uniapp/example/script/release/config.js create mode 100644 packages/tdesign-uniapp/example/script/release/core.js create mode 100644 packages/tdesign-uniapp/example/script/release/less.js create mode 100644 packages/tdesign-uniapp/example/script/release/prepare.js create mode 100644 packages/tdesign-uniapp/example/script/release/publish-core.js create mode 100644 packages/tdesign-uniapp/example/script/release/publish-tdesign-uniapp-chat.js create mode 100644 packages/tdesign-uniapp/example/script/release/publish-tdesign-uniapp.js create mode 100644 packages/tdesign-uniapp/example/script/sync/demo-vue-css.js create mode 100644 packages/tdesign-uniapp/example/script/sync/doc-common-design.js create mode 100644 packages/tdesign-uniapp/example/script/sync/doc-component.js create mode 100644 packages/tdesign-uniapp/example/script/sync/doc-format.js create mode 100644 packages/tdesign-uniapp/example/script/sync/less.js create mode 100644 packages/tdesign-uniapp/example/script/utils/components.js create mode 100644 packages/tdesign-uniapp/example/script/utils/utils.js create mode 100644 packages/tdesign-uniapp/example/script/watch/config.js create mode 100644 packages/tdesign-uniapp/example/script/watch/core.js create mode 100644 packages/tdesign-uniapp/example/script/watch/init.js create mode 100644 packages/tdesign-uniapp/example/script/watch/types.js create mode 100644 packages/tdesign-uniapp/example/script/watch/watch.js create mode 100644 packages/tdesign-uniapp/example/src/App.vue create mode 100644 packages/tdesign-uniapp/example/src/components/pull-down-list/index.less create mode 100644 packages/tdesign-uniapp/example/src/components/pull-down-list/index.vue create mode 100644 packages/tdesign-uniapp/example/src/components/trd-privacy/index.less create mode 100644 packages/tdesign-uniapp/example/src/components/trd-privacy/index.vue create mode 100644 packages/tdesign-uniapp/example/src/env.d.ts create mode 100644 packages/tdesign-uniapp/example/src/main.ts create mode 100644 packages/tdesign-uniapp/example/src/manifest.json create mode 100644 packages/tdesign-uniapp/example/src/mixins/demo-base.js create mode 100644 packages/tdesign-uniapp/example/src/mixins/skyline.js create mode 100644 packages/tdesign-uniapp/example/src/pages.json create mode 100644 packages/tdesign-uniapp/example/src/pages/home/data/base.json create mode 100644 packages/tdesign-uniapp/example/src/pages/home/data/chat.json create mode 100644 packages/tdesign-uniapp/example/src/pages/home/data/display.json create mode 100644 packages/tdesign-uniapp/example/src/pages/home/data/form.json create mode 100644 packages/tdesign-uniapp/example/src/pages/home/data/index.ts create mode 100644 packages/tdesign-uniapp/example/src/pages/home/data/nav.json create mode 100644 packages/tdesign-uniapp/example/src/pages/home/data/ux.json create mode 100644 packages/tdesign-uniapp/example/src/pages/home/home.less create mode 100644 packages/tdesign-uniapp/example/src/pages/home/home.vue create mode 100644 packages/tdesign-uniapp/example/src/pages/home/navigate-fail/index.less create mode 100644 packages/tdesign-uniapp/example/src/pages/home/navigate-fail/index.vue create mode 100644 packages/tdesign-uniapp/example/src/shime-uni.d.ts create mode 100644 packages/tdesign-uniapp/example/src/style/app.less create mode 100644 packages/tdesign-uniapp/example/src/uni.scss create mode 100644 packages/tdesign-uniapp/example/vite.config.ts create mode 100644 packages/tdesign-uniapp/package.json create mode 100644 packages/tdesign-uniapp/shims-uni.d.ts create mode 100644 packages/tdesign-uniapp/site/.env.intranet create mode 100644 packages/tdesign-uniapp/site/.env.preview create mode 100644 packages/tdesign-uniapp/site/.env.production create mode 100644 packages/tdesign-uniapp/site/docs.config.js create mode 100644 packages/tdesign-uniapp/site/docs/custom-style.md create mode 100644 packages/tdesign-uniapp/site/docs/custom-theme.md create mode 100644 packages/tdesign-uniapp/site/docs/dark-mode.md create mode 100644 packages/tdesign-uniapp/site/docs/design/action-sheet.md create mode 100644 packages/tdesign-uniapp/site/docs/design/avatar.md create mode 100644 packages/tdesign-uniapp/site/docs/design/back-top.md create mode 100644 packages/tdesign-uniapp/site/docs/design/badge.md create mode 100644 packages/tdesign-uniapp/site/docs/design/button.md create mode 100644 packages/tdesign-uniapp/site/docs/design/calendar.md create mode 100644 packages/tdesign-uniapp/site/docs/design/cascader.md create mode 100644 packages/tdesign-uniapp/site/docs/design/cell.md create mode 100644 packages/tdesign-uniapp/site/docs/design/checkbox.md create mode 100644 packages/tdesign-uniapp/site/docs/design/collapse.md create mode 100644 packages/tdesign-uniapp/site/docs/design/count-down.md create mode 100644 packages/tdesign-uniapp/site/docs/design/date-time-picker.md create mode 100644 packages/tdesign-uniapp/site/docs/design/dialog.md create mode 100644 packages/tdesign-uniapp/site/docs/design/divider.md create mode 100644 packages/tdesign-uniapp/site/docs/design/drawer.md create mode 100644 packages/tdesign-uniapp/site/docs/design/dropdown-menu.md create mode 100644 packages/tdesign-uniapp/site/docs/design/empty.md create mode 100644 packages/tdesign-uniapp/site/docs/design/fab.md create mode 100644 packages/tdesign-uniapp/site/docs/design/footer.md create mode 100644 packages/tdesign-uniapp/site/docs/design/grid.md create mode 100644 packages/tdesign-uniapp/site/docs/design/image-viewer.md create mode 100644 packages/tdesign-uniapp/site/docs/design/image.md create mode 100644 packages/tdesign-uniapp/site/docs/design/indexes.md create mode 100644 packages/tdesign-uniapp/site/docs/design/input.md create mode 100644 packages/tdesign-uniapp/site/docs/design/link.md create mode 100644 packages/tdesign-uniapp/site/docs/design/loading.md create mode 100644 packages/tdesign-uniapp/site/docs/design/message.md create mode 100644 packages/tdesign-uniapp/site/docs/design/navbar.md create mode 100644 packages/tdesign-uniapp/site/docs/design/notice-bar.md create mode 100644 packages/tdesign-uniapp/site/docs/design/picker.md create mode 100644 packages/tdesign-uniapp/site/docs/design/popup.md create mode 100644 packages/tdesign-uniapp/site/docs/design/progress.md create mode 100644 packages/tdesign-uniapp/site/docs/design/pull-down-refresh.md create mode 100644 packages/tdesign-uniapp/site/docs/design/radio.md create mode 100644 packages/tdesign-uniapp/site/docs/design/rate.md create mode 100644 packages/tdesign-uniapp/site/docs/design/result.md create mode 100644 packages/tdesign-uniapp/site/docs/design/search.md create mode 100644 packages/tdesign-uniapp/site/docs/design/side-bar.md create mode 100644 packages/tdesign-uniapp/site/docs/design/skeleton.md create mode 100644 packages/tdesign-uniapp/site/docs/design/slider.md create mode 100644 packages/tdesign-uniapp/site/docs/design/stepper.md create mode 100644 packages/tdesign-uniapp/site/docs/design/steps.md create mode 100644 packages/tdesign-uniapp/site/docs/design/swipe-cell.md create mode 100644 packages/tdesign-uniapp/site/docs/design/swiper.md create mode 100644 packages/tdesign-uniapp/site/docs/design/switch.md create mode 100644 packages/tdesign-uniapp/site/docs/design/tab-bar.md create mode 100644 packages/tdesign-uniapp/site/docs/design/tabs.md create mode 100644 packages/tdesign-uniapp/site/docs/design/tag.md create mode 100644 packages/tdesign-uniapp/site/docs/design/textarea.md create mode 100644 packages/tdesign-uniapp/site/docs/design/toast.md create mode 100644 packages/tdesign-uniapp/site/docs/design/tree-select.md create mode 100644 packages/tdesign-uniapp/site/docs/design/upload.md create mode 100644 packages/tdesign-uniapp/site/docs/design/watermark.md create mode 100644 packages/tdesign-uniapp/site/docs/faq.md create mode 100644 packages/tdesign-uniapp/site/docs/getting-started.en-US.md create mode 100644 packages/tdesign-uniapp/site/docs/getting-started.md create mode 100644 packages/tdesign-uniapp/site/docs/overview.en-US.md create mode 100644 packages/tdesign-uniapp/site/docs/overview.md create mode 100644 packages/tdesign-uniapp/site/index.html create mode 100644 packages/tdesign-uniapp/site/mobile.html create mode 100644 packages/tdesign-uniapp/site/package.json create mode 100644 packages/tdesign-uniapp/site/styles/mixins/index.less create mode 100644 packages/tdesign-uniapp/site/styles/mixins/text.less create mode 100644 packages/tdesign-uniapp/site/styles/mobile/components.less create mode 100644 packages/tdesign-uniapp/site/styles/mobile/demo.less create mode 100644 packages/tdesign-uniapp/site/styles/mobile/index.less create mode 100644 packages/tdesign-uniapp/site/styles/vars.less create mode 100644 packages/tdesign-uniapp/site/vite.config.ts create mode 100644 packages/tdesign-uniapp/site/web/app.vue create mode 100644 packages/tdesign-uniapp/site/web/main.ts create mode 100644 packages/tdesign-uniapp/site/web/plugins/changelog-to-json-core/components.ts create mode 100644 packages/tdesign-uniapp/site/web/plugins/changelog-to-json-core/index.ts create mode 100644 packages/tdesign-uniapp/site/web/plugins/changelog-to-json-core/libs.ts create mode 100644 packages/tdesign-uniapp/site/web/plugins/changelog-to-json-core/types.ts create mode 100644 packages/tdesign-uniapp/site/web/plugins/changelog-to-json/index.js create mode 100644 packages/tdesign-uniapp/site/web/plugins/plugin-tdoc/demo.js create mode 100644 packages/tdesign-uniapp/site/web/plugins/plugin-tdoc/index.js create mode 100644 packages/tdesign-uniapp/site/web/plugins/plugin-tdoc/md-to-vue.js create mode 100644 packages/tdesign-uniapp/site/web/plugins/plugin-tdoc/transforms.js create mode 100644 packages/tdesign-uniapp/site/web/router.ts create mode 100644 packages/tdesign-uniapp/site/web/stackblitz/content.ts create mode 100644 packages/tdesign-uniapp/site/web/stackblitz/index.vue create mode 100644 packages/tdesign-uniapp/site/web/test-coverage.js create mode 100644 packages/tdesign-uniapp/site/web/utils.ts create mode 100644 packages/tdesign-uniapp/tsconfig.eslint.json diff --git a/.gitignore b/.gitignore index dd585b279..886d7061a 100644 --- a/.gitignore +++ b/.gitignore @@ -5,6 +5,8 @@ _wechatide _example !packages/components/**/_example/ !packages/pro-components/**/_example/ +!packages/tdesign-uniapp/**/_example/ +!packages/tdesign-uniapp-chat/**/_example/ packages/tdesign-miniprogram/example/pages/* !packages/tdesign-miniprogram/example/pages/gulp-error @@ -14,6 +16,12 @@ packages/tdesign-miniprogram/test/e2e packages/tdesign-miniprogram/test/unit packages/tdesign-miniprogram/test/unit-virtualHost +packages/tdesign-uniapp/example/src/_tdesign +packages/tdesign-uniapp/example/src/_tdesign-raw/ +packages/tdesign-uniapp/example/src/pages-more/ +packages/tdesign-uniapp/npm_dist/ +packages/tdesign-uniapp-chat/npm_dist/ + .DS_Store node_modules package-lock.json diff --git a/.vscode/settings.json b/.vscode/settings.json index 130dfdf9d..81d8aba50 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -46,5 +46,10 @@ "[typescript]": { "editor.defaultFormatter": "esbenp.prettier-vscode" }, - "cSpell.words": ["stylelint", "cascader"] + "cSpell.words": [ + "stylelint", + "cascader", + "tdesign", + "uniapp", + ] } diff --git a/package.json b/package.json index 07ab535f8..72abe6683 100644 --- a/package.json +++ b/package.json @@ -13,6 +13,8 @@ "scripts": { "start": "npm run dev", "dev": "cross-env NODE_ENV=development gulp dev --gulpfile script/gulpfile.js --cwd ./", + "uniapp": "pnpm -C packages/tdesign-uniapp", + "uniapp:chat": "pnpm -C packages/tdesign-uniapp", "build": "cross-env NODE_ENV=production gulp build --gulpfile script/gulpfile.js --cwd ./", "build:dist": "gulp --gulpfile script/gulpfile.dist.js --cwd ./", "build:example": "gulp --gulpfile script/gulpfile.example.js --cwd ./", diff --git a/packages/tdesign-uniapp-chat/.eslintignore b/packages/tdesign-uniapp-chat/.eslintignore new file mode 100644 index 000000000..865dc3fbd --- /dev/null +++ b/packages/tdesign-uniapp-chat/.eslintignore @@ -0,0 +1,17 @@ +unpackage +node_modules/ +coverage +static/common/* + +dist/ +/log/ +!.vuepress + +uni_modules/ +miniprogram_npm/ +packages/tdesign/npm/ +packages/tdesign-uniapp-chat/npm/ +packages/tdesign-uniapp-chat/chat-list/_example/ec-canvas/echarts.js + +*.html +!.stylelintrc.js diff --git a/packages/tdesign-uniapp-chat/.eslintrc.js b/packages/tdesign-uniapp-chat/.eslintrc.js new file mode 100644 index 000000000..ff525544c --- /dev/null +++ b/packages/tdesign-uniapp-chat/.eslintrc.js @@ -0,0 +1,24 @@ +module.exports = { + root: true, + extends: ['eslint-config-light-vue3'], + globals: { + getCurrentPages: true, + uni: true, + globalThis: true, + qq: true, + weex: true, + plus: true, + getApp: true, + }, + parserOptions: { + project: 'tsconfig.eslint.json', + // https://stackoverflow.com/questions/77792745/fatalerror-error-ts6046-argument-for-moduleresolution-option-must-be-nod + tsconfigRootDir: __dirname, + + ecmaVersion: 'latest', + extraFileExtensions: ['.vue'], + }, + rules: { + 'vue/no-v-text-v-html-on-component': 0, + }, +}; diff --git a/packages/tdesign-uniapp-chat/components/.npmrc b/packages/tdesign-uniapp-chat/components/.npmrc new file mode 100644 index 000000000..214c29d13 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/.npmrc @@ -0,0 +1 @@ +registry=https://registry.npmjs.org/ diff --git a/packages/tdesign-uniapp-chat/components/CHANGELOG.md b/packages/tdesign-uniapp-chat/components/CHANGELOG.md new file mode 100644 index 000000000..373129337 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/CHANGELOG.md @@ -0,0 +1,11 @@ +--- +title: 更新日志 +spline: explain +toc: false +docClass: timeline +--- + +## 🌈 0.1.1 `2025-11-17` +### 🐞 Bug Fixes +- `Attachments`: 修复图标点击事件冒泡问题 @novlan1 ([#72](https://github.com/novlan1/tdesign-uniapp/pull/72)) + diff --git a/packages/tdesign-uniapp-chat/components/LICENSE b/packages/tdesign-uniapp-chat/components/LICENSE new file mode 100644 index 000000000..bce416bd7 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/LICENSE @@ -0,0 +1,9 @@ +MIT License + +Copyright (c) 2021-present novlan1 + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/packages/tdesign-uniapp-chat/components/README.md b/packages/tdesign-uniapp-chat/components/README.md new file mode 100644 index 000000000..ef0b45ec9 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/README.md @@ -0,0 +1,108 @@ + +

+ + TDesign Logo + +

+ +

+ + License + + + Version + + + Downloads + + + Downloads + + + Ask DeepWiki + +

+ +[TDesign Chat](https://github.com/Tencent/tdesign) 适配 [uniapp](https://uniapp.dcloud.net.cn/) 的组件库。 + +## 文档 + +[点此查看](https://uwayfly.com/tdesign-uniapp-chat/) + +## 预览 + +扫码查看 ↓ + + + +> 其他平台同样支持,仅因平台审核等原因未能上架预览,不影响组件库正常使用。 + +## 安装 + +### NPM 方式 + +```bash +npm i tdesign-uniapp-chat +``` + +### UNI_MODULES 方式 + +已上传 [插件](https://ext.dcloud.net.cn/plugin?name=tdesign-uniapp-chat) 到 DCloud 插件市场,请打开插件详情页并点击`使用 HBuilderX 导入插件`。 + +## 使用 + +1. 在 `main.ts` 中引入样式文件 + +```js +import 'tdesign-uniapp/common/style/theme/index.css'; +``` + +也可以引入 `rpx` 单位的 `less` 文件,该文件与 `tdesign-miniprogram` 完全一致。 + +```js +import 'tdesign-uniapp/common/style/theme/index.less'; +``` + +2. 在文件中使用 + +```html + + + +``` + +只提供按需导入方式,不支持全量导入(全量导入在小程序下有兼容性问题)。 + +## 编辑器提示 + +安装注册 TDesign 之后,在开发项目时,可以配合插件在VSCode等主流编辑器中达到提示组件名及API的效果。 + +推荐安装 `Volar`,并在项目的 `tsconfig.json` 的 `includes` 属性中增加 `node_modules/tdesign-uniapp-chat/global.d.ts`,即可实现该效果。 + +## 平台兼容性 + +| 平台 | Vue2 | Vue3 | H5 | Android | iOS | App-nvue | 微信小程序 | QQ小程序 | +| ------------ | ---- | ---- | --- | ------- | --- | -------- | ---------- | -------- | +| **支持情况** | ✅ | ✅ | ✅ | ✅ | ✅ | ⚠️ | ✅ | ⚠️ | + +## 浏览器兼容性 + +| [Firefox](http://godban.github.io/browsers-support-badges/)
Firefox | [Chrome](http://godban.github.io/browsers-support-badges/)
Chrome | [iOS Safari](http://godban.github.io/browsers-support-badges/)
iOS Safari| [Samsung](http://godban.github.io/browsers-support-badges/)
Samsung | [Opera](http://godban.github.io/browsers-support-badges/)
Opera |[Android Browser]()
Android Browser| +| --------- | --------- | --------- | --------- | --------- |--------- | +| Firefox >=104| Chrome >=105| iOS Safari >=12.2| Samsung >=10.2 | Opera >=64 | Android Browser >=105 | + +详情参见[移动端组件库浏览器兼容性说明](https://github.com/Tencent/tdesign/wiki/Browser-Compatibility) + +## 反馈 + +有任何问题,建议通过 [Github issues](https://github.com/novlan1/tdesign-uniapp/issues) 反馈或扫码加入用户微信群。 + + + +## 开源协议 + +TDesign 遵循 [MIT 协议](https://github.com/novlan1/tdesign-uniapp/blob/develop/LICENSE)。 diff --git a/packages/tdesign-uniapp-chat/components/attachments/README.en-US.md b/packages/tdesign-uniapp-chat/components/attachments/README.en-US.md new file mode 100644 index 000000000..28ce14ca8 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/attachments/README.en-US.md @@ -0,0 +1,21 @@ +:: BASE_DOC :: + +## API + +### Attachments Props + +name | type | default | description | required +-- | -- | -- | -- | -- +custom-style | Object | - | CSS(Cascading Style Sheets) | N +addable | Boolean | true | \- | N +image-viewer | Boolean | true | \- | N +items | Array | [] | required。Typescript: `FileItem[]` `interface FileItem { fileType: 'image'\|'video'\|'audio'\|'pdf'\|'doc'\|'ppt'\|'txt'; name: string; url: string; size: number; status?: 'success'\|'fail'\|'pending'\|'error'; progress?: number; errorMessage?: string; fileIcon?: string; width?: number; height?: number; mode?: 'aspectFit' \| 'aspectFill' \| 'widthFix' \| 'heightFix' \| 'scaleToFill'}`。[see more ts definition](https://github.com/novlan1/tdesign-uniapp/blob/develop/packages/tdesign-uniapp-chat/attachments/type.ts) | Y +removable | Boolean | true | \- | N + +### Attachments Events + +name | params | description +-- | -- | -- +add | \- | \- +file-click | `(item: FileItem)` | \- +remove | `(item: FileItem, index: number)` | \- diff --git a/packages/tdesign-uniapp-chat/components/attachments/README.md b/packages/tdesign-uniapp-chat/components/attachments/README.md new file mode 100644 index 000000000..b9c7d47ed --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/attachments/README.md @@ -0,0 +1,55 @@ +--- +title: Attachments 文件附件 +description: 用于聊天场景中上传、预览和管理附件的组件。 +spline: base +isComponent: true +--- + + +## 引入 + +可在 `main.ts` 或在需要使用的页面或组件中引入。 + +```js +import TAttachments from 'tdesign-uniapp-chat/attachments/attachments.vue'; +``` + +### 01 组件类型 + +#### 图片类型 + +{{ base }} + +#### 文件类型 + +{{ file }} + +### 02 组件状态 + +#### 图片类型加载状态 + +{{ image-loading }} + +#### 文件类型加载状态 + +{{ file-loading }} + +## API + +### Attachments Props + +名称 | 类型 | 默认值 | 描述 | 必传 +-- | -- | -- | -- | -- +custom-style | Object | - | 自定义样式 | N +addable | Boolean | true | 【讨论中】是否显示添加按钮 | N +image-viewer | Boolean | true | 是否启用图片预览功能 | N +items | Array | [] | 必需。附件列表。TS 类型:`FileItem[]` `interface FileItem { fileType: 'image'\|'video'\|'audio'\|'pdf'\|'doc'\|'ppt'\|'txt'; name: string; url: string; size: number; status?: 'success'\|'fail'\|'pending'\|'error'; progress?: number; errorMessage?: string; fileIcon?: string; width?: number; height?: number; mode?: 'aspectFit' \| 'aspectFill' \| 'widthFix' \| 'heightFix' \| 'scaleToFill'}`。[详细类型定义](https://github.com/novlan1/tdesign-uniapp/blob/develop/packages/tdesign-uniapp-chat/attachments/type.ts) | Y +removable | Boolean | true | 是否显示删除按钮 | N + +### Attachments Events + +名称 | 参数 | 描述 +-- | -- | -- +add | \- | 点击添加按钮时触发 +file-click | `(item: FileItem)` | 点击文件时触发 +remove | `(item: FileItem, index: number)` | 点击删除按钮时触发 diff --git a/packages/tdesign-uniapp-chat/components/attachments/_example/attachments.less b/packages/tdesign-uniapp-chat/components/attachments/_example/attachments.less new file mode 100644 index 000000000..e69de29bb diff --git a/packages/tdesign-uniapp-chat/components/attachments/_example/attachments.vue b/packages/tdesign-uniapp-chat/components/attachments/_example/attachments.vue new file mode 100644 index 000000000..0bba80c35 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/attachments/_example/attachments.vue @@ -0,0 +1,57 @@ + + + + diff --git a/packages/tdesign-uniapp-chat/components/attachments/_example/base/index.vue b/packages/tdesign-uniapp-chat/components/attachments/_example/base/index.vue new file mode 100644 index 000000000..fdde200a6 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/attachments/_example/base/index.vue @@ -0,0 +1,85 @@ + + + + diff --git a/packages/tdesign-uniapp-chat/components/attachments/_example/file-loading/index.vue b/packages/tdesign-uniapp-chat/components/attachments/_example/file-loading/index.vue new file mode 100644 index 000000000..a791d60ad --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/attachments/_example/file-loading/index.vue @@ -0,0 +1,85 @@ + + + + diff --git a/packages/tdesign-uniapp-chat/components/attachments/_example/file/index.vue b/packages/tdesign-uniapp-chat/components/attachments/_example/file/index.vue new file mode 100644 index 000000000..e5f10afc4 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/attachments/_example/file/index.vue @@ -0,0 +1,136 @@ + + + + diff --git a/packages/tdesign-uniapp-chat/components/attachments/_example/image-loading/index.vue b/packages/tdesign-uniapp-chat/components/attachments/_example/image-loading/index.vue new file mode 100644 index 000000000..629341e6b --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/attachments/_example/image-loading/index.vue @@ -0,0 +1,85 @@ + + + + diff --git a/packages/tdesign-uniapp-chat/components/attachments/attachments.less b/packages/tdesign-uniapp-chat/components/attachments/attachments.less new file mode 100644 index 000000000..30c80c21c --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/attachments/attachments.less @@ -0,0 +1,250 @@ +@import 'tdesign-uniapp/common/style/base.less'; + +@attachments: ~'@{prefix}-attachments'; + +@attachments-background-color: @bg-color-secondarycontainer; +@attachments-file-margin: 16rpx; +@attachments-file-margin-tiny: 8rpx; +@attachments-file-padding: 24rpx; +@attachments-file-image-size: 104rpx; +@attachments-file-width: 256rpx; +@attachments-file-height: 104rpx; +@attachments-file-icon-size: 64rpx; +@attachments-title-color: @text-color-primary; +@attachments-desc-color: @text-color-placeholder; +@attachments-title-font-size: 28rpx; +@attachments-desc-font-size: 24rpx; +@attachments-title-line-height: 44rpx; +@attachments-desc-line-height: 40rpx; +@attachments-title-margin-bottom: -2rpx; + +.@{attachments} { + display: flex; + width: 100%; + height: auto; + + // 可滚动内容区域 + &__scrollable { + height: 100%; + display: flex; + align-items: center; + justify-content: flex-start; + } + + // 滚动容器样式 + .scroll-x { + white-space: nowrap; + overflow-x: auto; + overflow-y: hidden; + scrollbar-width: none; + /* Firefox */ + -ms-overflow-style: none; + /* IE and Edge */ + + &::-webkit-scrollbar { + display: none; + /* Chrome, Safari, Opera */ + } + } + + // 换行容器样式 + .wrap { + flex-wrap: wrap; + overflow-x: hidden; + } + + // 左侧内容区域 + &__left { + flex: 1; + overflow: hidden; + } + + // 文件状态样式 + &__file { + &--pending, + &--fail, + &--error, + &--success { + position: absolute; + width: 100%; + height: 100%; + top: 0; + left: 0; + border-radius: @radius-extraLarge; + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + } + } + + // 文件包装器 + &__files { + box-sizing: border-box; + margin-left: @attachments-file-margin; + + &:first-of-type { + margin-left: 0; + } + } + + // 文件项样式 + &__file { + border-radius: @radius-extraLarge; + display: block; + position: relative; + background-color: @attachments-background-color; + + // 仅当有删除按钮时,增加上边距 + &--removable { + margin-top: @attachments-file-margin-tiny; + } + + // 删除按钮样式 + .@{attachments}__remove { + background-color: @text-color-primary; + color: @bg-color-container; + border-radius: @radius-circle; + position: absolute; + right: -4px; + top: -4px; + } + + // 图片文件样式 适配图片附件在聊天中的特殊样式 + &.file-image { + width: @attachments-file-image-size; + height: @attachments-file-image-size; + + .image { + width: 100%; + height: 100%; + border-radius: @radius-extraLarge; + } + } + + // 普通文件样式 + &.file { + width: @attachments-file-width; + height: @attachments-file-height; + display: flex; + align-items: stretch; + justify-content: flex-start; + padding: 0 @attachments-file-padding; + + .image { + width: @attachments-file-icon-size; + height: auto; + box-sizing: border-box; + overflow: hidden; + position: relative; + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + + image { + width: 100%; + height: 100%; + } + } + + .@{attachments}__content { + flex: 1; + overflow: hidden; + display: flex; + flex-direction: column; + align-items: flex-start; + justify-content: center; + margin-left: @attachments-file-margin; + + .@{attachments}__title { + width: 100%; + color: @attachments-title-color; + font-size: @attachments-title-font-size; + font-style: normal; + font-weight: 400; + line-height: @attachments-title-line-height; + /* 核心:单行溢出隐藏 + 显示省略号(兼容全浏览器) */ + white-space: nowrap; /* 强制文字在一行显示,不换行 */ + overflow: hidden; /* 超出容器部分隐藏 */ + text-overflow: ellipsis; /* 超出部分显示“...” */ + /* 移除冗余属性:原 -webkit-box 相关属性与 nowrap 冲突,且单行场景无需 */ + margin-bottom: @attachments-title-margin-bottom; + padding: 0; + } + + .@{attachments}__desc { + width: 100%; + color: @attachments-desc-color; + font-size: @attachments-desc-font-size; + font-style: normal; + font-weight: 400; + line-height: @attachments-desc-line-height; + margin-top: -4rpx; + } + } + } + } +} + +// 对话中附件样式覆盖 +.@{attachments}--chatting { + + &.all_images { + width: 100%; + + .file-image.@{attachments}__file { + background-color: transparent !important; + } + .file-image { + width: auto; + height: auto; + + .image { + max-width: 400rpx; + max-height: 400rpx; + border-radius: @radius-extraLarge; + } + } + } + + &.all_files { + width: auto; + + .@{attachments}__files:not(:last-child) { + margin-bottom: @attachments-file-margin; + } + + .file-image.@{attachments}__file { + background-color: transparent !important; + } + .file-image { + width: auto; + height: auto; + + .image { + max-width: 400rpx; + max-height: 400rpx; + border-radius: @radius-extraLarge; + } + } + .@{attachments}__files { + margin-left: 0; + } + .@{attachments}__scrollable { + display: contents; + } + .file.@{attachments}__file { + width: 352rpx; + } + } +} + +// 右侧布局下的附件样式 +.@{prefix}-chat__inner.right { + .@{attachments}--chatting { + .file-image.@{attachments}__file { + text-align: right; + } + } +} diff --git a/packages/tdesign-uniapp-chat/components/attachments/attachments.vue b/packages/tdesign-uniapp-chat/components/attachments/attachments.vue new file mode 100644 index 000000000..528eef471 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/attachments/attachments.vue @@ -0,0 +1,349 @@ + + + diff --git a/packages/tdesign-uniapp-chat/components/attachments/computed.js b/packages/tdesign-uniapp-chat/components/attachments/computed.js new file mode 100644 index 000000000..668ab4fc1 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/attachments/computed.js @@ -0,0 +1,49 @@ +import utils from 'tdesign-uniapp/common/utils.wxs'; + +export function imageStyle(imageProps) { + if (imageProps && imageProps.width && imageProps.height) { + return utils._style({ + width: utils.addUnit(imageProps.width), + height: utils.addUnit(imageProps.height), + }); + } + // 兜底逻辑:没有传入 width 和 height 时,使用默认最大宽高尺寸 + return utils._style({ + width: '400rpx', + height: '400rpx', + }); +} + +export function getImageMode(imageProps) { + if (imageProps && imageProps.width && imageProps.height) { + return imageProps.width > imageProps.height ? 'widthFix' : 'heightFix'; + } + // 兜底逻辑:没有传入 width 和 height 时,使用 aspectFit 保持图片比例 + return imageProps && imageProps.mode ? imageProps.mode : 'scaleToFill'; +} + + +export function getFileTypeClass(inChat, files) { + // 如果 inChat 不为 true,返回空字符串 + if (!inChat) { + return ''; + } + + // 如果 files 为空或不存在,返回空字符串 + if (!files || files.length === 0) { + return ''; + } + + // 检查是否所有文件的 fileType 都是 'image' + let allImages = true; + for (let i = 0; i < files.length; i++) { + if (files[i].fileType !== 'image') { + allImages = false; + break; + } + } + + // 根据判断结果返回相应的类名 + return allImages ? 'all_images' : 'all_files'; +} + diff --git a/packages/tdesign-uniapp-chat/components/attachments/props.ts b/packages/tdesign-uniapp-chat/components/attachments/props.ts new file mode 100644 index 000000000..0666e8b5e --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/attachments/props.ts @@ -0,0 +1,45 @@ +/* eslint-disable */ + +/** + * 该文件为脚本自动生成文件,请勿随意修改。如需修改请联系 PMC + * */ + +import type { TdAttachmentsProps } from './type'; +export default { + /** 【讨论中】是否显示添加按钮 */ + addable: { + type: Boolean, + default: true, + }, + /** 是否启用图片预览功能 */ + imageViewer: { + type: Boolean, + default: true, + }, + /** 附件列表 */ + items: { + type: Array, + default: (): TdAttachmentsProps['items'] => [], + required: true, + }, + /** 是否显示删除按钮 */ + removable: { + type: Boolean, + default: true, + }, + /** 点击添加按钮时触发 */ + onAdd: { + type: Function, + default: () => ({}), + }, + /** 点击文件时触发 */ + onFileClick: { + type: Function, + default: () => ({}), + }, + /** 点击删除按钮时触发 */ + onRemove: { + type: Function, + default: () => ({}), + }, +}; diff --git a/packages/tdesign-uniapp-chat/components/attachments/type.ts b/packages/tdesign-uniapp-chat/components/attachments/type.ts new file mode 100644 index 000000000..8ead94c6e --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/attachments/type.ts @@ -0,0 +1,57 @@ +/* eslint-disable */ + +/** + * 该文件为脚本自动生成文件,请勿随意修改。如需修改请联系 PMC + * */ + +export interface TdAttachmentsProps { + /** + * 【讨论中】是否显示添加按钮 + * @default true + */ + addable?: boolean; + /** + * 是否启用图片预览功能 + * @default true + */ + imageViewer?: boolean; + /** + * 附件列表 + * @default [] + */ + items: FileItem[]; + /** + * 是否显示删除按钮 + * @default true + */ + removable?: boolean; + /** + * 点击添加按钮时触发 + * @default '' + */ + onAdd?: () => void; + /** + * 点击文件时触发 + * @default '' + */ + onFileClick?: (item: FileItem) => void; + /** + * 点击删除按钮时触发 + * @default '' + */ + onRemove?: (item: FileItem, index: number) => void; +} + +export interface FileItem { + fileType: 'image' | 'video' | 'audio' | 'pdf' | 'doc' | 'ppt' | 'txt'; + name: string; + url: string; + size: number; + status?: 'success' | 'fail' | 'pending' | 'error'; + progress?: number; + errorMessage?: string; + fileIcon?: string; + width?: number; + height?: number; + mode?: 'aspectFit' | 'aspectFill' | 'widthFix' | 'heightFix' | 'scaleToFill'; +} diff --git a/packages/tdesign-uniapp-chat/components/chat-actionbar/README.en-US.md b/packages/tdesign-uniapp-chat/components/chat-actionbar/README.en-US.md new file mode 100644 index 000000000..e92848e8a --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-actionbar/README.en-US.md @@ -0,0 +1,22 @@ +:: BASE_DOC :: + +## API + +### ChatActionbar Props + +name | type | default | description | required +-- | -- | -- | -- | -- +custom-style | Object | - | CSS(Cascading Style Sheets) | N +action-bar | Array | () => ['replay', 'copy', 'good', 'bad', 'share'] | Typescript: `Array<'replay'\|'copy'\|'good'\|'bad'\|'share'>` | N +chat-id | String | - | \- | N +comment | String | - | \- | N +content | String | - | \- | N +copy-mode | String | markdown | options: markdown/text | N +disabled | Boolean | false | \- | N +placement | String | start | options: start/end/space-around/space-between | N + +### ChatActionbar Events + +name | params | description +-- | -- | -- +actions | `(context: {name: string, active: boolean})` | \- diff --git a/packages/tdesign-uniapp-chat/components/chat-actionbar/README.md b/packages/tdesign-uniapp-chat/components/chat-actionbar/README.md new file mode 100644 index 000000000..7d22c1df1 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-actionbar/README.md @@ -0,0 +1,49 @@ +--- +title: ChatActionbar 对话操作 +description: 包含重新生成,点赞,点踩,复制按钮。 内置 Clipboard 可以复制聊天内容,提供按钮的交互样式,监听 actions 相关事件由业务层实现具体逻辑。 +spline: base +isComponent: true +--- + + +## 引入 + +可在 `main.ts` 或在需要使用的页面或组件中引入。 + +```js +import TChatActionbar from 'tdesign-uniapp-chat/chat-actionbar/chat-actionbar.vue'; +``` + +### 01 组件类型 + +#### 基础类型 + +{{ base }} + +### 02 组件状态 + +#### 手动初始化状态 + +{{ comment }} + + +## API + +### ChatActionbar Props + +名称 | 类型 | 默认值 | 描述 | 必传 +-- | -- | -- | -- | -- +custom-style | Object | - | 自定义样式 | N +action-bar | Array | () => ['replay', 'copy', 'good', 'bad', 'share'] | 操作栏配置。TS 类型:`Array<'replay'\|'copy'\|'good'\|'bad'\|'share'>` | N +chat-id | String | - | 【实验】聊天消息的唯一标识 | N +comment | String | - | 评价内容 | N +content | String | - | 被复制的内容 | N +copy-mode | String | markdown | 【实验】复制内容的模式,可选 'markdown'(复制markdown原文)或 'text'(复制纯文本)。可选项:markdown/text | N +disabled | Boolean | false | 【讨论中】操作按钮是否可点击 | N +placement | String | start | 【实验】操作栏位置。可选项:start/end/space-around/space-between | N + +### ChatActionbar Events + +名称 | 参数 | 描述 +-- | -- | -- +actions | `(context: {name: string, active: boolean})` | 点击点赞,点踩,复制,分享,重新生成按钮时触发发 diff --git a/packages/tdesign-uniapp-chat/components/chat-actionbar/_example/base/index.vue b/packages/tdesign-uniapp-chat/components/chat-actionbar/_example/base/index.vue new file mode 100644 index 000000000..5a057a706 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-actionbar/_example/base/index.vue @@ -0,0 +1,88 @@ + + + + diff --git a/packages/tdesign-uniapp-chat/components/chat-actionbar/_example/chat-actionbar.less b/packages/tdesign-uniapp-chat/components/chat-actionbar/_example/chat-actionbar.less new file mode 100644 index 000000000..8e74b1185 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-actionbar/_example/chat-actionbar.less @@ -0,0 +1,8 @@ +// .demo-block__title { +// font-size: 32rpx; +// font-weight: bold; +// color: #333; +// margin-bottom: 24rpx; +// padding-bottom: 16rpx; +// border-bottom: 1rpx solid #e7e7e7; +// } diff --git a/packages/tdesign-uniapp-chat/components/chat-actionbar/_example/chat-actionbar.vue b/packages/tdesign-uniapp-chat/components/chat-actionbar/_example/chat-actionbar.vue new file mode 100644 index 000000000..aa7776875 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-actionbar/_example/chat-actionbar.vue @@ -0,0 +1,48 @@ + + + + diff --git a/packages/tdesign-uniapp-chat/components/chat-actionbar/_example/comment/index.vue b/packages/tdesign-uniapp-chat/components/chat-actionbar/_example/comment/index.vue new file mode 100644 index 000000000..185e12925 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-actionbar/_example/comment/index.vue @@ -0,0 +1,89 @@ + + + + diff --git a/packages/tdesign-uniapp-chat/components/chat-actionbar/chat-actionbar.less b/packages/tdesign-uniapp-chat/components/chat-actionbar/chat-actionbar.less new file mode 100644 index 000000000..99a3b6160 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-actionbar/chat-actionbar.less @@ -0,0 +1,84 @@ +@import 'tdesign-uniapp/common/style/base.less'; + +@chat-actionbar: ~'@{prefix}-chat-actionbar'; + +@chat-actionbar-padding: var(--chat-actionbar-padding, 0); +@chat-actionbar-item-padding: var(--chat-actionbar-item-padding, 16rpx 28rpx); +@chat-actionbar-item-color: @text-color-primary; +@chat-actionbar-item-active: @brand-color; + +// TODO: 长按弹出层样式 +@chat-actionbar-popover-background: @mask-active; +@chat-actionbar-popover-radius: 32rpx; +@chat-actionbar-popover-padding: 45rpx; + +.@{chat-actionbar} { + display: flex; + padding: @chat-actionbar-padding; + + // 对齐方式 + &.start { + justify-content: flex-start; + } + + &.end { + justify-content: flex-end; + } + + // 内部容器 + &__inner { + background-color: @bg-color-secondarycontainer; + border: 2rpx solid @component-border; + box-sizing: border-box; + border-radius: @radius-default; + display: inline-flex; + flex-direction: row; + flex-wrap: nowrap; + align-items: center; + + // 列布局 + &--column { + display: flex; + align-items: center; + justify-content: space-between; + } + + // 弹出层 + &--popover { + padding: @chat-actionbar-popover-padding; + background-color: @chat-actionbar-popover-background; + border-radius: @chat-actionbar-popover-radius; + color: @font-white-1; + } + } + + // 左侧内容 + &__left { + &:empty { + display: none; + } + } + + // 操作项 + &__item { + color: @chat-actionbar-item-color; + margin: 12rpx 0; + padding: 4rpx 28rpx; + border-right: 2rpx solid @component-stroke; + background-color: unset; + outline: none; + + &:after { + display: none; + } + + &:last-child { + border-right: none; + } + + // 激活状态 + &--active { + color: @chat-actionbar-item-active; + } + } +} diff --git a/packages/tdesign-uniapp-chat/components/chat-actionbar/chat-actionbar.vue b/packages/tdesign-uniapp-chat/components/chat-actionbar/chat-actionbar.vue new file mode 100644 index 000000000..e64fcf3bf --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-actionbar/chat-actionbar.vue @@ -0,0 +1,225 @@ + + + diff --git a/packages/tdesign-uniapp-chat/components/chat-actionbar/props.ts b/packages/tdesign-uniapp-chat/components/chat-actionbar/props.ts new file mode 100644 index 000000000..ba7d425cd --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-actionbar/props.ts @@ -0,0 +1,54 @@ +/* eslint-disable */ + +/** + * 该文件为脚本自动生成文件,请勿随意修改。如需修改请联系 PMC + * */ + +import type { TdChatActionbarProps } from './type'; +export default { + /** 操作栏配置 */ + actionBar: { + type: Array, + default: () => ['replay', 'copy', 'good', 'bad', 'share'], + }, + /** 【实验】聊天消息的唯一标识 */ + chatId: { + type: String, + default: '', + }, + /** 评价内容 */ + comment: { + type: String, + default: '', + }, + /** 被复制的内容 */ + content: { + type: String, + default: '', + }, + /** 【实验】复制内容的模式,可选 'markdown'(复制markdown原文)或 'text'(复制纯文本) */ + copyMode: { + type: String, + default: 'markdown' as TdChatActionbarProps['copyMode'], + validator(val: TdChatActionbarProps['copyMode']): boolean { + if (!val) return true; + return ['markdown', 'text'].includes(val); + }, + }, + /** 【讨论中】操作按钮是否可点击 */ + disabled: Boolean, + /** 【实验】操作栏位置 */ + placement: { + type: String, + default: 'start' as TdChatActionbarProps['placement'], + validator(val: TdChatActionbarProps['placement']): boolean { + if (!val) return true; + return ['start', 'end', 'space-around', 'space-between'].includes(val); + }, + }, + /** 点击点赞,点踩,复制,分享,重新生成按钮时触发发 */ + onActions: { + type: Function, + default: () => ({}), + }, +}; diff --git a/packages/tdesign-uniapp-chat/components/chat-actionbar/type.ts b/packages/tdesign-uniapp-chat/components/chat-actionbar/type.ts new file mode 100644 index 000000000..88e27f424 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-actionbar/type.ts @@ -0,0 +1,47 @@ +/* eslint-disable */ + +/** + * 该文件为脚本自动生成文件,请勿随意修改。如需修改请联系 PMC + * */ + +export interface TdChatActionbarProps { + /** + * 操作栏配置 + * @default () => ['replay', 'copy', 'good', 'bad', 'share'] + */ + actionBar?: Array<'replay' | 'copy' | 'good' | 'bad' | 'share'>; + /** + * 【实验】聊天消息的唯一标识 + * @default '' + */ + chatId?: string; + /** + * 评价内容 + * @default '' + */ + comment?: string; + /** + * 被复制的内容 + * @default '' + */ + content?: string; + /** + * 【实验】复制内容的模式,可选 'markdown'(复制markdown原文)或 'text'(复制纯文本) + * @default markdown + */ + copyMode?: 'markdown' | 'text'; + /** + * 【讨论中】操作按钮是否可点击 + * @default false + */ + disabled?: boolean; + /** + * 【实验】操作栏位置 + * @default start + */ + placement?: 'start' | 'end' | 'space-around' | 'space-between'; + /** + * 点击点赞,点踩,复制,分享,重新生成按钮时触发发 + */ + onActions?: (context: { name: string; active: boolean }) => void; +} diff --git a/packages/tdesign-uniapp-chat/components/chat-content/README.en-US.md b/packages/tdesign-uniapp-chat/components/chat-content/README.en-US.md new file mode 100644 index 000000000..8b53b0734 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-content/README.en-US.md @@ -0,0 +1,18 @@ + +## API + +### ChatContent Props + +name | type | default | description | required +-- | -- | -- | -- | -- +custom-style | Object | - | CSS(Cascading Style Sheets) | N +content | Object | - | required。Typescript: `TdChatContentType ` `interface TdChatContentType { type: 'text' \| 'markdown'; data: string; }`。[see more ts definition](https://github.com/novlan1/tdesign-uniapp/blob/develop/packages/tdesign-uniapp-chat/chat-content/type.ts) | Y +markdown-props | Object | - | Typescript: `ChatMarkdownProps`,[ChatMarkdown API Documents](./chat-markdown?tab=api)。[see more ts definition](https://github.com/novlan1/tdesign-uniapp/blob/develop/packages/tdesign-uniapp-chat/chat-content/type.ts) | N +role | String | - | required。options: user/assistant/system | Y +status | String | - | options: error / '' | N + +### ChatContent Events + +name | params | description +-- | -- | -- +click | `(context: {detail:{event, node}, currentTarget, target})` | \- diff --git a/packages/tdesign-uniapp-chat/components/chat-content/README.md b/packages/tdesign-uniapp-chat/components/chat-content/README.md new file mode 100644 index 000000000..94fdb48a5 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-content/README.md @@ -0,0 +1,41 @@ +--- +title: ChatContent 对话正文 +description: ChatContent 用于在聊天对话中渲染不同类型的聊天内容。它支持纯文本和Markdown格式的内容渲染,能够根据内容类型自动选择合适的渲染方式。 +spline: base +isComponent: true +--- + +## 引入 + +可在 `main.ts` 或在需要使用的页面或组件中引入。 + +```js +import TChatContent from 'tdesign-uniapp-chat/chat-content/chat-content.vue'; +``` + +### 01 组件类型 + +- 对大模型返回的 markdown 数据自动渲染。markdown 会内置调用 `t-chat-markdown` 渲染,同时可根据 role(user/assistant)切换样式。 +- 用户发送的消息保持默认格式显示,纯文本会做 HTML 转义并用 rich-text 渲染; + + +{{ base }} + + +## API + +### ChatContent Props + +名称 | 类型 | 默认值 | 描述 | 必传 +-- | -- | -- | -- | -- +custom-style | Object | - | 自定义样式 | N +content | Object | - | 必需。聊天内容对象。TS 类型:`TdChatContentType ` `interface TdChatContentType { type: 'text' \| 'markdown'; data: string; }`。[详细类型定义](https://github.com/novlan1/tdesign-uniapp/blob/develop/packages/tdesign-uniapp-chat/chat-content/type.ts) | Y +markdown-props | Object | - | marked 解析器的配置选项。TS 类型:`ChatMarkdownProps`,[ChatMarkdown API Documents](./chat-markdown?tab=api)。[详细类型定义](https://github.com/novlan1/tdesign-uniapp/blob/develop/packages/tdesign-uniapp-chat/chat-content/type.ts) | N +role | String | - | 必需。消息角色,用于区分用户和助手的消息样式 。可选项:user/assistant/system | Y +status | String | - | 正文状态。可选项:error / '' | N + +### ChatContent Events + +名称 | 参数 | 描述 +-- | -- | -- +click | `(context: {detail:{event, node}, currentTarget, target})` | 点击链接时触发 diff --git a/packages/tdesign-uniapp-chat/components/chat-content/_example/base/index.vue b/packages/tdesign-uniapp-chat/components/chat-content/_example/base/index.vue new file mode 100644 index 000000000..ab2fde68e --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-content/_example/base/index.vue @@ -0,0 +1,105 @@ + + + + diff --git a/packages/tdesign-uniapp-chat/components/chat-content/_example/chat-content.less b/packages/tdesign-uniapp-chat/components/chat-content/_example/chat-content.less new file mode 100644 index 000000000..e69de29bb diff --git a/packages/tdesign-uniapp-chat/components/chat-content/_example/chat-content.vue b/packages/tdesign-uniapp-chat/components/chat-content/_example/chat-content.vue new file mode 100644 index 000000000..1298e9bef --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-content/_example/chat-content.vue @@ -0,0 +1,35 @@ + + + + diff --git a/packages/tdesign-uniapp-chat/components/chat-content/chat-content.less b/packages/tdesign-uniapp-chat/components/chat-content/chat-content.less new file mode 100644 index 000000000..02efe78bb --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-content/chat-content.less @@ -0,0 +1,49 @@ +@import 'tdesign-uniapp/common/style/base.less'; + +@chat-content: ~'@{prefix}-chat-content'; + +@chat-content-user-text-color: var(--td-chat-content-user-text-color, @text-color-primary); +@chat-content-assistant-text-color: var(--td-chat-content-assistant-text-color, @text-color-primary); +@chat-content-error-text-color: var(--td-chat-content-error-text-color, @error-color); + +.@{chat-content} { + font-size: 32rpx; + line-height: 48rpx; + word-break: break-all; + word-wrap: break-word; + overflow-wrap: break-word; + box-sizing: border-box; + width: fit-content; + + &__user { + color: @chat-content-user-text-color; + + ._pre { + margin: 0; + white-space: pre-wrap; + } + } + + &__assistant { + color: @chat-content-assistant-text-color; + + ._ol { + -webkit-padding-start: 40rpx; + padding-inline-start: 40rpx; + + ._li { + list-style: decimal; + } + } + + ._img { + max-width: 100%; + margin: 8rpx 0; + border-radius: @radius-small; + } + } +// 错误状态样式 + &__error { + color: @chat-content-error-text-color; + } +} diff --git a/packages/tdesign-uniapp-chat/components/chat-content/chat-content.vue b/packages/tdesign-uniapp-chat/components/chat-content/chat-content.vue new file mode 100644 index 000000000..bf5c21c8b --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-content/chat-content.vue @@ -0,0 +1,119 @@ + + + diff --git a/packages/tdesign-uniapp-chat/components/chat-content/props.ts b/packages/tdesign-uniapp-chat/components/chat-content/props.ts new file mode 100644 index 000000000..20026d24d --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-content/props.ts @@ -0,0 +1,39 @@ +/* eslint-disable */ + +/** + * 该文件为脚本自动生成文件,请勿随意修改。如需修改请联系 PMC + * */ + +import type { TdChatContentProps } from './type'; +export default { + /** 聊天内容对象 */ + content: { + type: Object, + required: true, + }, + /** marked 解析器的配置选项 */ + markdownProps: { + type: Object, + }, + /** 消息角色,用于区分用户和助手的消息样式 */ + role: { + type: String, + required: true, + validator(val: TdChatContentProps['role']): boolean { + return ['user', 'assistant', 'system'].includes(val); + }, + }, + /** 正文状态 */ + status: { + type: String, + validator(val: TdChatContentProps['status']): boolean { + if (!val) return true; + return ['error', ''].includes(val); + }, + }, + /** 点击链接时触发 */ + onClick: { + type: Function, + default: () => ({}), + }, +}; diff --git a/packages/tdesign-uniapp-chat/components/chat-content/type.ts b/packages/tdesign-uniapp-chat/components/chat-content/type.ts new file mode 100644 index 000000000..63206debf --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-content/type.ts @@ -0,0 +1,35 @@ +/* eslint-disable */ + +/** + * 该文件为脚本自动生成文件,请勿随意修改。如需修改请联系 PMC + * */ + +import type { TdChatMarkdownProps as ChatMarkdownProps } from '../chat-markdown/type'; + +export interface TdChatContentProps { + /** + * 聊天内容对象 + */ + content: TdChatContentType; + /** + * marked 解析器的配置选项 + */ + markdownProps?: ChatMarkdownProps; + /** + * 消息角色,用于区分用户和助手的消息样式 + */ + role: 'user' | 'assistant' | 'system'; + /** + * 正文状态 + */ + status?: 'error' | ''; + /** + * 点击链接时触发 + */ + onClick?: (context: { detail: { event; node }; currentTarget; target }) => void; +} + +export interface TdChatContentType { + type: 'text' | 'markdown'; + data: string; +} diff --git a/packages/tdesign-uniapp-chat/components/chat-list/README.en-US.md b/packages/tdesign-uniapp-chat/components/chat-list/README.en-US.md new file mode 100644 index 000000000..a4545e985 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-list/README.en-US.md @@ -0,0 +1,25 @@ +:: BASE_DOC :: + +## API + +### ChatList Props + +name | type | default | description | required +-- | -- | -- | -- | -- +custom-style | Object | - | CSS(Cascading Style Sheets) | N +animation | String | skeleton | options: skeleton/moving/gradient/dot | N +data | Array | - | Typescript: `Array` ` interface TdChatItemMeta { avatar?: string; name?:string; role?:string; datetime?: string; content?: string; status?: string }`。[see more ts definition](https://github.com/novlan1/tdesign-uniapp/blob/develop/packages/tdesign-uniapp-chat/chat-list/type.ts) | N +layout | String | both | options: both/single | N +reverse | Boolean | true | \- | N + +### ChatList Events + +name | params | description +-- | -- | -- +scroll | `(context: {scrollLeft, scrollTop, scrollHeight, scrollWidth, deltaX, deltaY})` | \- + +### ChatList Slots + +name | Description +-- | -- +actionbar | \- diff --git a/packages/tdesign-uniapp-chat/components/chat-list/README.md b/packages/tdesign-uniapp-chat/components/chat-list/README.md new file mode 100644 index 000000000..f0751da6f --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-list/README.md @@ -0,0 +1,68 @@ +--- +title: ChatList 对话列表 +description: 用于展示对话或者普通对话场景的组件。 +spline: base +isComponent: true +--- + + +## 引入 + +可在 `main.ts` 或在需要使用的页面或组件中引入。 + +```js +import TChatList from 'tdesign-uniapp-chat/chat-list/chat-list.vue'; +``` + + +### 组件类型 + +#### 基础使用 + +{{ base }} + +#### 组合式用法 + +{{ hook-component }} + +#### 自定义 + +`t-chat-message`支持`content`自定义,使用建议:渲染聊天消息统一用 `t-chat-content`;仅在需要“单独使用 Markdown 组件”或自定义管线时使用 `t-chat-markdown`。也支持别的 markdown 渲染组件,选择其他 markdown 渲染库由用户自行安装。 + +{{ custom }} + +#### 文案助手 + +{{ docs }} + +#### 图像生成 + +{{ image }} + +#### 任务规划 + +{{ agent }} + +## API + +### ChatList Props + +名称 | 类型 | 默认值 | 描述 | 必传 +-- | -- | -- | -- | -- +custom-style | Object | - | 自定义样式 | N +animation | String | skeleton | 动画效果,支持「渐变加载动画」,「闪烁加载动画」, 「骨架屏」三种。可选项:skeleton/moving/gradient/dot | N +data | Array | - | 对话列表的数据。TS 类型:`Array` ` interface TdChatItemMeta { avatar?: string; name?:string; role?:string; datetime?: string; content?: string; status?: string }`。[详细类型定义](https://github.com/novlan1/tdesign-uniapp/blob/develop/packages/tdesign-uniapp-chat/chat-list/type.ts) | N +layout | String | both | 对话布局形式,支持两侧对齐与左对齐。使用插槽自定义对话内容时不生效,得用`t-chat-message`的`placement`属性。可选项:both/single | N +reverse | Boolean | true | 是否表现为倒序 | N + +### ChatList Events + +名称 | 参数 | 描述 +-- | -- | -- +scroll | `(context: {scrollLeft, scrollTop, scrollHeight, scrollWidth, deltaX, deltaY})` | 滚动事件的回调 + +### ChatList Slots + +名称 | 描述 +-- | -- +actionbar | 自定义操作按钮的插槽 diff --git a/packages/tdesign-uniapp-chat/components/chat-list/_example/agent/index.vue b/packages/tdesign-uniapp-chat/components/chat-list/_example/agent/index.vue new file mode 100644 index 000000000..6bf007448 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-list/_example/agent/index.vue @@ -0,0 +1,601 @@ + + + + diff --git a/packages/tdesign-uniapp-chat/components/chat-list/_example/base/index.vue b/packages/tdesign-uniapp-chat/components/chat-list/_example/base/index.vue new file mode 100644 index 000000000..5043d7fd6 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-list/_example/base/index.vue @@ -0,0 +1,330 @@ + + + + diff --git a/packages/tdesign-uniapp-chat/components/chat-list/_example/chart-component/index.vue b/packages/tdesign-uniapp-chat/components/chat-list/_example/chart-component/index.vue new file mode 100644 index 000000000..c36053cd5 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-list/_example/chart-component/index.vue @@ -0,0 +1,82 @@ + + + + diff --git a/packages/tdesign-uniapp-chat/components/chat-list/_example/chat-list.less b/packages/tdesign-uniapp-chat/components/chat-list/_example/chat-list.less new file mode 100644 index 000000000..ed55cc1ab --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-list/_example/chat-list.less @@ -0,0 +1,7 @@ +page { + background-color: var(--td-bg-color-container); +} + +.demo { + padding-bottom: 0; +} diff --git a/packages/tdesign-uniapp-chat/components/chat-list/_example/chat-list.vue b/packages/tdesign-uniapp-chat/components/chat-list/_example/chat-list.vue new file mode 100644 index 000000000..4262b9eff --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-list/_example/chat-list.vue @@ -0,0 +1,101 @@ + + + + diff --git a/packages/tdesign-uniapp-chat/components/chat-list/_example/code/index.vue b/packages/tdesign-uniapp-chat/components/chat-list/_example/code/index.vue new file mode 100644 index 000000000..56a60967c --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-list/_example/code/index.vue @@ -0,0 +1,389 @@ + + + + diff --git a/packages/tdesign-uniapp-chat/components/chat-list/_example/custom/index.vue b/packages/tdesign-uniapp-chat/components/chat-list/_example/custom/index.vue new file mode 100644 index 000000000..368f79261 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-list/_example/custom/index.vue @@ -0,0 +1,399 @@ + + + + diff --git a/packages/tdesign-uniapp-chat/components/chat-list/_example/docs/index.vue b/packages/tdesign-uniapp-chat/components/chat-list/_example/docs/index.vue new file mode 100644 index 000000000..5029e1d21 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-list/_example/docs/index.vue @@ -0,0 +1,373 @@ + + + + diff --git a/packages/tdesign-uniapp-chat/components/chat-list/_example/ec-canvas/ec-canvas.vue b/packages/tdesign-uniapp-chat/components/chat-list/_example/ec-canvas/ec-canvas.vue new file mode 100644 index 000000000..808222d33 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-list/_example/ec-canvas/ec-canvas.vue @@ -0,0 +1,319 @@ + + + + diff --git a/packages/tdesign-uniapp-chat/components/chat-list/_example/ec-canvas/echarts.js b/packages/tdesign-uniapp-chat/components/chat-list/_example/ec-canvas/echarts.js new file mode 100644 index 000000000..0b1ab373f --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-list/_example/ec-canvas/echarts.js @@ -0,0 +1,45 @@ + +/* +* Licensed to the Apache Software Foundation (ASF) under one +* or more contributor license agreements. See the NOTICE file +* distributed with this work for additional information +* regarding copyright ownership. The ASF licenses this file +* to you under the Apache License, Version 2.0 (the +* "License"); you may not use this file except in compliance +* with the License. You may obtain a copy of the License at +* +* http://www.apache.org/licenses/LICENSE-2.0 +* +* Unless required by applicable law or agreed to in writing, +* software distributed under the License is distributed on an +* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +* KIND, either express or implied. See the License for the +* specific language governing permissions and limitations +* under the License. +*/ + +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).echarts={})}(this,(function(t){"use strict"; +/*! ***************************************************************************** + Copyright (c) Microsoft Corporation. + + Permission to use, copy, modify, and/or distribute this software for any + purpose with or without fee is hereby granted. + + THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH + REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY + AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, + INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM + LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR + OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR + PERFORMANCE OF THIS SOFTWARE. + ***************************************************************************** */var e=function(t,n){return(e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,e){t.__proto__=e}||function(t,e){for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&(t[n]=e[n])})(t,n)};function n(t,n){if("function"!=typeof n&&null!==n)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");function i(){this.constructor=t}e(t,n),t.prototype=null===n?Object.create(n):(i.prototype=n.prototype,new i)}var i=function(){this.firefox=!1,this.ie=!1,this.edge=!1,this.newEdge=!1,this.weChat=!1},r=new function(){this.browser=new i,this.node=!1,this.wxa=!1,this.worker=!1,this.svgSupported=!1,this.touchEventsSupported=!1,this.pointerEventsSupported=!1,this.domSupported=!1,this.transformSupported=!1,this.transform3dSupported=!1,this.hasGlobalWindow="undefined"!=typeof window};"object"==typeof wx&&"function"==typeof wx.getSystemInfoSync?(r.wxa=!0,r.touchEventsSupported=!0):"undefined"==typeof document&&"undefined"!=typeof self?r.worker=!0:"undefined"==typeof navigator?(r.node=!0,r.svgSupported=!0):function(t,e){var n=e.browser,i=t.match(/Firefox\/([\d.]+)/),r=t.match(/MSIE\s([\d.]+)/)||t.match(/Trident\/.+?rv:(([\d.]+))/),o=t.match(/Edge?\/([\d.]+)/),a=/micromessenger/i.test(t);i&&(n.firefox=!0,n.version=i[1]);r&&(n.ie=!0,n.version=r[1]);o&&(n.edge=!0,n.version=o[1],n.newEdge=+o[1].split(".")[0]>18);a&&(n.weChat=!0);e.svgSupported="undefined"!=typeof SVGRect,e.touchEventsSupported="ontouchstart"in window&&!n.ie&&!n.edge,e.pointerEventsSupported="onpointerdown"in window&&(n.edge||n.ie&&+n.version>=11),e.domSupported="undefined"!=typeof document;var s=document.documentElement.style;e.transform3dSupported=(n.ie&&"transition"in s||n.edge||"WebKitCSSMatrix"in window&&"m11"in new WebKitCSSMatrix||"MozPerspective"in s)&&!("OTransition"in s),e.transformSupported=e.transform3dSupported||n.ie&&+n.version>=9}(navigator.userAgent,r);var o="sans-serif",a="12px sans-serif";var s,l,u=function(t){var e={};if("undefined"==typeof JSON)return e;for(var n=0;n=0)o=r*t.length;else for(var c=0;c>1)%2;a.style.cssText=["position: absolute","visibility: hidden","padding: 0","margin: 0","border-width: 0","user-select: none","width:0","height:0",i[s]+":0",r[l]+":0",i[1-s]+":auto",r[1-l]+":auto",""].join("!important;"),t.appendChild(a),n.push(a)}return n}(e,a),a,o);if(s)return s(t,n,i),!0}return!1}function Jt(t){return"CANVAS"===t.nodeName.toUpperCase()}var Qt=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,te=[],ee=r.browser.firefox&&+r.browser.version.split(".")[0]<39;function ne(t,e,n,i){return n=n||{},i?ie(t,e,n):ee&&null!=e.layerX&&e.layerX!==e.offsetX?(n.zrX=e.layerX,n.zrY=e.layerY):null!=e.offsetX?(n.zrX=e.offsetX,n.zrY=e.offsetY):ie(t,e,n),n}function ie(t,e,n){if(r.domSupported&&t.getBoundingClientRect){var i=e.clientX,o=e.clientY;if(Jt(t)){var a=t.getBoundingClientRect();return n.zrX=i-a.left,void(n.zrY=o-a.top)}if($t(te,t,i,o))return n.zrX=te[0],void(n.zrY=te[1])}n.zrX=n.zrY=0}function re(t){return t||window.event}function oe(t,e,n){if(null!=(e=re(e)).zrX)return e;var i=e.type;if(i&&i.indexOf("touch")>=0){var r="touchend"!==i?e.targetTouches[0]:e.changedTouches[0];r&&ne(t,r,e,n)}else{ne(t,e,e,n);var o=function(t){var e=t.wheelDelta;if(e)return e;var n=t.deltaX,i=t.deltaY;if(null==n||null==i)return e;return 3*(0!==i?Math.abs(i):Math.abs(n))*(i>0?-1:i<0?1:n>0?-1:1)}(e);e.zrDelta=o?o/120:-(e.detail||0)/3}var a=e.button;return null==e.which&&void 0!==a&&Qt.test(e.type)&&(e.which=1&a?1:2&a?3:4&a?2:0),e}function ae(t,e,n,i){t.addEventListener(e,n,i)}var se=function(t){t.preventDefault(),t.stopPropagation(),t.cancelBubble=!0};function le(t){return 2===t.which||3===t.which}var ue=function(){function t(){this._track=[]}return t.prototype.recognize=function(t,e,n){return this._doTrack(t,e,n),this._recognize(t)},t.prototype.clear=function(){return this._track.length=0,this},t.prototype._doTrack=function(t,e,n){var i=t.touches;if(i){for(var r={points:[],touches:[],target:e,event:t},o=0,a=i.length;o1&&r&&r.length>1){var a=he(r)/he(o);!isFinite(a)&&(a=1),e.pinchScale=a;var s=[((i=r)[0][0]+i[1][0])/2,(i[0][1]+i[1][1])/2];return e.pinchX=s[0],e.pinchY=s[1],{type:"pinch",target:t[0].target,event:e}}}}},pe="silent";function de(){se(this.event)}var fe=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.handler=null,e}return n(e,t),e.prototype.dispose=function(){},e.prototype.setCursor=function(){},e}(Xt),ge=function(t,e){this.x=t,this.y=e},ye=["click","dblclick","mousewheel","mouseout","mouseup","mousedown","mousemove","contextmenu"],ve=function(t){function e(e,n,i,r){var o=t.call(this)||this;return o._hovered=new ge(0,0),o.storage=e,o.painter=n,o.painterRoot=r,i=i||new fe,o.proxy=null,o.setHandlerProxy(i),o._draggingMgr=new Ut(o),o}return n(e,t),e.prototype.setHandlerProxy=function(t){this.proxy&&this.proxy.dispose(),t&&(E(ye,(function(e){t.on&&t.on(e,this[e],this)}),this),t.handler=this),this.proxy=t},e.prototype.mousemove=function(t){var e=t.zrX,n=t.zrY,i=xe(this,e,n),r=this._hovered,o=r.target;o&&!o.__zr&&(o=(r=this.findHover(r.x,r.y)).target);var a=this._hovered=i?new ge(e,n):this.findHover(e,n),s=a.target,l=this.proxy;l.setCursor&&l.setCursor(s?s.cursor:"default"),o&&s!==o&&this.dispatchToElement(r,"mouseout",t),this.dispatchToElement(a,"mousemove",t),s&&s!==o&&this.dispatchToElement(a,"mouseover",t)},e.prototype.mouseout=function(t){var e=t.zrEventControl;"only_globalout"!==e&&this.dispatchToElement(this._hovered,"mouseout",t),"no_globalout"!==e&&this.trigger("globalout",{type:"globalout",event:t})},e.prototype.resize=function(){this._hovered=new ge(0,0)},e.prototype.dispatch=function(t,e){var n=this[t];n&&n.call(this,e)},e.prototype.dispose=function(){this.proxy.dispose(),this.storage=null,this.proxy=null,this.painter=null},e.prototype.setCursorStyle=function(t){var e=this.proxy;e.setCursor&&e.setCursor(t)},e.prototype.dispatchToElement=function(t,e,n){var i=(t=t||{}).target;if(!i||!i.silent){for(var r="on"+e,o=function(t,e,n){return{type:t,event:n,target:e.target,topTarget:e.topTarget,cancelBubble:!1,offsetX:n.zrX,offsetY:n.zrY,gestureEvent:n.gestureEvent,pinchX:n.pinchX,pinchY:n.pinchY,pinchScale:n.pinchScale,wheelDelta:n.zrDelta,zrByTouch:n.zrByTouch,which:n.which,stop:de}}(e,t,n);i&&(i[r]&&(o.cancelBubble=!!i[r].call(i,o)),i.trigger(e,o),i=i.__hostTarget?i.__hostTarget:i.parent,!o.cancelBubble););o.cancelBubble||(this.trigger(e,o),this.painter&&this.painter.eachOtherLayer&&this.painter.eachOtherLayer((function(t){"function"==typeof t[r]&&t[r].call(t,o),t.trigger&&t.trigger(e,o)})))}},e.prototype.findHover=function(t,e,n){for(var i=this.storage.getDisplayList(),r=new ge(t,e),o=i.length-1;o>=0;o--){var a=void 0;if(i[o]!==n&&!i[o].ignore&&(a=me(i[o],t,e))&&(!r.topTarget&&(r.topTarget=i[o]),a!==pe)){r.target=i[o];break}}return r},e.prototype.processGesture=function(t,e){this._gestureMgr||(this._gestureMgr=new ue);var n=this._gestureMgr;"start"===e&&n.clear();var i=n.recognize(t,this.findHover(t.zrX,t.zrY,null).target,this.proxy.dom);if("end"===e&&n.clear(),i){var r=i.type;t.gestureEvent=r;var o=new ge;o.target=i.target,this.dispatchToElement(o,r,i.event)}},e}(Xt);function me(t,e,n){if(t[t.rectHover?"rectContain":"contain"](e,n)){for(var i=t,r=void 0,o=!1;i;){if(i.ignoreClip&&(o=!0),!o){var a=i.getClipPath();if(a&&!a.contain(e,n))return!1;i.silent&&(r=!0)}var s=i.__hostTarget;i=s||i.parent}return!r||pe}return!1}function xe(t,e,n){var i=t.painter;return e<0||e>i.getWidth()||n<0||n>i.getHeight()}E(["click","mousedown","mouseup","mousewheel","dblclick","contextmenu"],(function(t){ve.prototype[t]=function(e){var n,i,r=e.zrX,o=e.zrY,a=xe(this,r,o);if("mouseup"===t&&a||(i=(n=this.findHover(r,o)).target),"mousedown"===t)this._downEl=i,this._downPoint=[e.zrX,e.zrY],this._upEl=i;else if("mouseup"===t)this._upEl=i;else if("click"===t){if(this._downEl!==this._upEl||!this._downPoint||Et(this._downPoint,[e.zrX,e.zrY])>4)return;this._downPoint=null}this.dispatchToElement(n,t,e)}}));function _e(t,e,n,i){var r=e+1;if(r===n)return 1;if(i(t[r++],t[e])<0){for(;r=0;)r++;return r-e}function be(t,e,n,i,r){for(i===e&&i++;i>>1])<0?l=o:s=o+1;var u=i-s;switch(u){case 3:t[s+3]=t[s+2];case 2:t[s+2]=t[s+1];case 1:t[s+1]=t[s];break;default:for(;u>0;)t[s+u]=t[s+u-1],u--}t[s]=a}}function we(t,e,n,i,r,o){var a=0,s=0,l=1;if(o(t,e[n+r])>0){for(s=i-r;l0;)a=l,(l=1+(l<<1))<=0&&(l=s);l>s&&(l=s),a+=r,l+=r}else{for(s=r+1;ls&&(l=s);var u=a;a=r-l,l=r-u}for(a++;a>>1);o(t,e[n+h])>0?a=h+1:l=h}return l}function Se(t,e,n,i,r,o){var a=0,s=0,l=1;if(o(t,e[n+r])<0){for(s=r+1;ls&&(l=s);var u=a;a=r-l,l=r-u}else{for(s=i-r;l=0;)a=l,(l=1+(l<<1))<=0&&(l=s);l>s&&(l=s),a+=r,l+=r}for(a++;a>>1);o(t,e[n+h])<0?l=h:a=h+1}return l}function Me(t,e){var n,i,r=7,o=0;t.length;var a=[];function s(s){var l=n[s],u=i[s],h=n[s+1],c=i[s+1];i[s]=u+c,s===o-3&&(n[s+1]=n[s+2],i[s+1]=i[s+2]),o--;var p=Se(t[h],t,l,u,0,e);l+=p,0!==(u-=p)&&0!==(c=we(t[l+u-1],t,h,c,c-1,e))&&(u<=c?function(n,i,o,s){var l=0;for(l=0;l=7||d>=7);if(f)break;g<0&&(g=0),g+=2}if((r=g)<1&&(r=1),1===i){for(l=0;l=0;l--)t[d+l]=t[p+l];return void(t[c]=a[h])}var f=r;for(;;){var g=0,y=0,v=!1;do{if(e(a[h],t[u])<0){if(t[c--]=t[u--],g++,y=0,0==--i){v=!0;break}}else if(t[c--]=a[h--],y++,g=0,1==--s){v=!0;break}}while((g|y)=0;l--)t[d+l]=t[p+l];if(0===i){v=!0;break}}if(t[c--]=a[h--],1==--s){v=!0;break}if(0!==(y=s-we(t[u],a,0,s,s-1,e))){for(s-=y,d=(c-=y)+1,p=(h-=y)+1,l=0;l=7||y>=7);if(v)break;f<0&&(f=0),f+=2}(r=f)<1&&(r=1);if(1===s){for(d=(c-=i)+1,p=(u-=i)+1,l=i-1;l>=0;l--)t[d+l]=t[p+l];t[c]=a[h]}else{if(0===s)throw new Error;for(p=c-(s-1),l=0;l1;){var t=o-2;if(t>=1&&i[t-1]<=i[t]+i[t+1]||t>=2&&i[t-2]<=i[t]+i[t-1])i[t-1]i[t+1])break;s(t)}},forceMergeRuns:function(){for(;o>1;){var t=o-2;t>0&&i[t-1]=32;)e|=1&t,t>>=1;return t+e}(r);do{if((o=_e(t,n,i,e))s&&(l=s),be(t,n,n+l,n+o,e),o=l}a.pushRun(n,o),a.mergeRuns(),r-=o,n+=o}while(0!==r);a.forceMergeRuns()}}}var Te=!1;function Ce(){Te||(Te=!0,console.warn("z / z2 / zlevel of displayable is invalid, which may cause unexpected errors"))}function De(t,e){return t.zlevel===e.zlevel?t.z===e.z?t.z2-e.z2:t.z-e.z:t.zlevel-e.zlevel}var Ae=function(){function t(){this._roots=[],this._displayList=[],this._displayListLen=0,this.displayableSortFunc=De}return t.prototype.traverse=function(t,e){for(var n=0;n0&&(u.__clipPaths=[]),isNaN(u.z)&&(Ce(),u.z=0),isNaN(u.z2)&&(Ce(),u.z2=0),isNaN(u.zlevel)&&(Ce(),u.zlevel=0),this._displayList[this._displayListLen++]=u}var h=t.getDecalElement&&t.getDecalElement();h&&this._updateAndAddDisplayable(h,e,n);var c=t.getTextGuideLine();c&&this._updateAndAddDisplayable(c,e,n);var p=t.getTextContent();p&&this._updateAndAddDisplayable(p,e,n)}},t.prototype.addRoot=function(t){t.__zr&&t.__zr.storage===this||this._roots.push(t)},t.prototype.delRoot=function(t){if(t instanceof Array)for(var e=0,n=t.length;e=0&&this._roots.splice(i,1)}},t.prototype.delAllRoots=function(){this._roots=[],this._displayList=[],this._displayListLen=0},t.prototype.getRoots=function(){return this._roots},t.prototype.dispose=function(){this._displayList=null,this._roots=null},t}(),ke=r.hasGlobalWindow&&(window.requestAnimationFrame&&window.requestAnimationFrame.bind(window)||window.msRequestAnimationFrame&&window.msRequestAnimationFrame.bind(window)||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame)||function(t){return setTimeout(t,16)},Le={linear:function(t){return t},quadraticIn:function(t){return t*t},quadraticOut:function(t){return t*(2-t)},quadraticInOut:function(t){return(t*=2)<1?.5*t*t:-.5*(--t*(t-2)-1)},cubicIn:function(t){return t*t*t},cubicOut:function(t){return--t*t*t+1},cubicInOut:function(t){return(t*=2)<1?.5*t*t*t:.5*((t-=2)*t*t+2)},quarticIn:function(t){return t*t*t*t},quarticOut:function(t){return 1- --t*t*t*t},quarticInOut:function(t){return(t*=2)<1?.5*t*t*t*t:-.5*((t-=2)*t*t*t-2)},quinticIn:function(t){return t*t*t*t*t},quinticOut:function(t){return--t*t*t*t*t+1},quinticInOut:function(t){return(t*=2)<1?.5*t*t*t*t*t:.5*((t-=2)*t*t*t*t+2)},sinusoidalIn:function(t){return 1-Math.cos(t*Math.PI/2)},sinusoidalOut:function(t){return Math.sin(t*Math.PI/2)},sinusoidalInOut:function(t){return.5*(1-Math.cos(Math.PI*t))},exponentialIn:function(t){return 0===t?0:Math.pow(1024,t-1)},exponentialOut:function(t){return 1===t?1:1-Math.pow(2,-10*t)},exponentialInOut:function(t){return 0===t?0:1===t?1:(t*=2)<1?.5*Math.pow(1024,t-1):.5*(2-Math.pow(2,-10*(t-1)))},circularIn:function(t){return 1-Math.sqrt(1-t*t)},circularOut:function(t){return Math.sqrt(1- --t*t)},circularInOut:function(t){return(t*=2)<1?-.5*(Math.sqrt(1-t*t)-1):.5*(Math.sqrt(1-(t-=2)*t)+1)},elasticIn:function(t){var e,n=.1;return 0===t?0:1===t?1:(!n||n<1?(n=1,e=.1):e=.4*Math.asin(1/n)/(2*Math.PI),-n*Math.pow(2,10*(t-=1))*Math.sin((t-e)*(2*Math.PI)/.4))},elasticOut:function(t){var e,n=.1;return 0===t?0:1===t?1:(!n||n<1?(n=1,e=.1):e=.4*Math.asin(1/n)/(2*Math.PI),n*Math.pow(2,-10*t)*Math.sin((t-e)*(2*Math.PI)/.4)+1)},elasticInOut:function(t){var e,n=.1,i=.4;return 0===t?0:1===t?1:(!n||n<1?(n=1,e=.1):e=i*Math.asin(1/n)/(2*Math.PI),(t*=2)<1?n*Math.pow(2,10*(t-=1))*Math.sin((t-e)*(2*Math.PI)/i)*-.5:n*Math.pow(2,-10*(t-=1))*Math.sin((t-e)*(2*Math.PI)/i)*.5+1)},backIn:function(t){var e=1.70158;return t*t*((e+1)*t-e)},backOut:function(t){var e=1.70158;return--t*t*((e+1)*t+e)+1},backInOut:function(t){var e=2.5949095;return(t*=2)<1?t*t*((e+1)*t-e)*.5:.5*((t-=2)*t*((e+1)*t+e)+2)},bounceIn:function(t){return 1-Le.bounceOut(1-t)},bounceOut:function(t){return t<1/2.75?7.5625*t*t:t<2/2.75?7.5625*(t-=1.5/2.75)*t+.75:t<2.5/2.75?7.5625*(t-=2.25/2.75)*t+.9375:7.5625*(t-=2.625/2.75)*t+.984375},bounceInOut:function(t){return t<.5?.5*Le.bounceIn(2*t):.5*Le.bounceOut(2*t-1)+.5}},Pe=Math.pow,Oe=Math.sqrt,Re=1e-8,Ne=1e-4,Ee=Oe(3),ze=1/3,Ve=wt(),Be=wt(),Fe=wt();function Ge(t){return t>-1e-8&&tRe||t<-1e-8}function He(t,e,n,i,r){var o=1-r;return o*o*(o*t+3*r*e)+r*r*(r*i+3*o*n)}function Ye(t,e,n,i,r){var o=1-r;return 3*(((e-t)*o+2*(n-e)*r)*o+(i-n)*r*r)}function Ue(t,e,n,i,r,o){var a=i+3*(e-n)-t,s=3*(n-2*e+t),l=3*(e-t),u=t-r,h=s*s-3*a*l,c=s*l-9*a*u,p=l*l-3*s*u,d=0;if(Ge(h)&&Ge(c)){if(Ge(s))o[0]=0;else(M=-l/s)>=0&&M<=1&&(o[d++]=M)}else{var f=c*c-4*h*p;if(Ge(f)){var g=c/h,y=-g/2;(M=-s/a+g)>=0&&M<=1&&(o[d++]=M),y>=0&&y<=1&&(o[d++]=y)}else if(f>0){var v=Oe(f),m=h*s+1.5*a*(-c+v),x=h*s+1.5*a*(-c-v);(M=(-s-((m=m<0?-Pe(-m,ze):Pe(m,ze))+(x=x<0?-Pe(-x,ze):Pe(x,ze))))/(3*a))>=0&&M<=1&&(o[d++]=M)}else{var _=(2*h*s-3*a*c)/(2*Oe(h*h*h)),b=Math.acos(_)/3,w=Oe(h),S=Math.cos(b),M=(-s-2*w*S)/(3*a),I=(y=(-s+w*(S+Ee*Math.sin(b)))/(3*a),(-s+w*(S-Ee*Math.sin(b)))/(3*a));M>=0&&M<=1&&(o[d++]=M),y>=0&&y<=1&&(o[d++]=y),I>=0&&I<=1&&(o[d++]=I)}}return d}function Xe(t,e,n,i,r){var o=6*n-12*e+6*t,a=9*e+3*i-3*t-9*n,s=3*e-3*t,l=0;if(Ge(a)){if(We(o))(h=-s/o)>=0&&h<=1&&(r[l++]=h)}else{var u=o*o-4*a*s;if(Ge(u))r[0]=-o/(2*a);else if(u>0){var h,c=Oe(u),p=(-o-c)/(2*a);(h=(-o+c)/(2*a))>=0&&h<=1&&(r[l++]=h),p>=0&&p<=1&&(r[l++]=p)}}return l}function Ze(t,e,n,i,r,o){var a=(e-t)*r+t,s=(n-e)*r+e,l=(i-n)*r+n,u=(s-a)*r+a,h=(l-s)*r+s,c=(h-u)*r+u;o[0]=t,o[1]=a,o[2]=u,o[3]=c,o[4]=c,o[5]=h,o[6]=l,o[7]=i}function je(t,e,n,i,r,o,a,s,l,u,h){var c,p,d,f,g,y=.005,v=1/0;Ve[0]=l,Ve[1]=u;for(var m=0;m<1;m+=.05)Be[0]=He(t,n,r,a,m),Be[1]=He(e,i,o,s,m),(f=Vt(Ve,Be))=0&&f=0&&y=1?1:Ue(0,i,o,1,t,s)&&He(0,r,a,1,s[0])}}}var on=function(){function t(t){this._inited=!1,this._startTime=0,this._pausedTime=0,this._paused=!1,this._life=t.life||1e3,this._delay=t.delay||0,this.loop=t.loop||!1,this.onframe=t.onframe||xt,this.ondestroy=t.ondestroy||xt,this.onrestart=t.onrestart||xt,t.easing&&this.setEasing(t.easing)}return t.prototype.step=function(t,e){if(this._inited||(this._startTime=t+this._delay,this._inited=!0),!this._paused){var n=this._life,i=t-this._startTime-this._pausedTime,r=i/n;r<0&&(r=0),r=Math.min(r,1);var o=this.easingFunc,a=o?o(r):r;if(this.onframe(a),1===r){if(!this.loop)return!0;var s=i%n;this._startTime=t-s,this._pausedTime=0,this.onrestart()}return!1}this._pausedTime+=e},t.prototype.pause=function(){this._paused=!0},t.prototype.resume=function(){this._paused=!1},t.prototype.setEasing=function(t){this.easing=t,this.easingFunc=U(t)?t:Le[t]||rn(t)},t}(),an=function(t){this.value=t},sn=function(){function t(){this._len=0}return t.prototype.insert=function(t){var e=new an(t);return this.insertEntry(e),e},t.prototype.insertEntry=function(t){this.head?(this.tail.next=t,t.prev=this.tail,t.next=null,this.tail=t):this.head=this.tail=t,this._len++},t.prototype.remove=function(t){var e=t.prev,n=t.next;e?e.next=n:this.head=n,n?n.prev=e:this.tail=e,t.next=t.prev=null,this._len--},t.prototype.len=function(){return this._len},t.prototype.clear=function(){this.head=this.tail=null,this._len=0},t}(),ln=function(){function t(t){this._list=new sn,this._maxSize=10,this._map={},this._maxSize=t}return t.prototype.put=function(t,e){var n=this._list,i=this._map,r=null;if(null==i[t]){var o=n.len(),a=this._lastRemovedEntry;if(o>=this._maxSize&&o>0){var s=n.head;n.remove(s),delete i[s.key],r=s.value,this._lastRemovedEntry=s}a?a.value=e:a=new an(e),a.key=t,n.insertEntry(a),i[t]=a}return r},t.prototype.get=function(t){var e=this._map[t],n=this._list;if(null!=e)return e!==n.tail&&(n.remove(e),n.insertEntry(e)),e.value},t.prototype.clear=function(){this._list.clear(),this._map={}},t.prototype.len=function(){return this._list.len()},t}(),un={transparent:[0,0,0,0],aliceblue:[240,248,255,1],antiquewhite:[250,235,215,1],aqua:[0,255,255,1],aquamarine:[127,255,212,1],azure:[240,255,255,1],beige:[245,245,220,1],bisque:[255,228,196,1],black:[0,0,0,1],blanchedalmond:[255,235,205,1],blue:[0,0,255,1],blueviolet:[138,43,226,1],brown:[165,42,42,1],burlywood:[222,184,135,1],cadetblue:[95,158,160,1],chartreuse:[127,255,0,1],chocolate:[210,105,30,1],coral:[255,127,80,1],cornflowerblue:[100,149,237,1],cornsilk:[255,248,220,1],crimson:[220,20,60,1],cyan:[0,255,255,1],darkblue:[0,0,139,1],darkcyan:[0,139,139,1],darkgoldenrod:[184,134,11,1],darkgray:[169,169,169,1],darkgreen:[0,100,0,1],darkgrey:[169,169,169,1],darkkhaki:[189,183,107,1],darkmagenta:[139,0,139,1],darkolivegreen:[85,107,47,1],darkorange:[255,140,0,1],darkorchid:[153,50,204,1],darkred:[139,0,0,1],darksalmon:[233,150,122,1],darkseagreen:[143,188,143,1],darkslateblue:[72,61,139,1],darkslategray:[47,79,79,1],darkslategrey:[47,79,79,1],darkturquoise:[0,206,209,1],darkviolet:[148,0,211,1],deeppink:[255,20,147,1],deepskyblue:[0,191,255,1],dimgray:[105,105,105,1],dimgrey:[105,105,105,1],dodgerblue:[30,144,255,1],firebrick:[178,34,34,1],floralwhite:[255,250,240,1],forestgreen:[34,139,34,1],fuchsia:[255,0,255,1],gainsboro:[220,220,220,1],ghostwhite:[248,248,255,1],gold:[255,215,0,1],goldenrod:[218,165,32,1],gray:[128,128,128,1],green:[0,128,0,1],greenyellow:[173,255,47,1],grey:[128,128,128,1],honeydew:[240,255,240,1],hotpink:[255,105,180,1],indianred:[205,92,92,1],indigo:[75,0,130,1],ivory:[255,255,240,1],khaki:[240,230,140,1],lavender:[230,230,250,1],lavenderblush:[255,240,245,1],lawngreen:[124,252,0,1],lemonchiffon:[255,250,205,1],lightblue:[173,216,230,1],lightcoral:[240,128,128,1],lightcyan:[224,255,255,1],lightgoldenrodyellow:[250,250,210,1],lightgray:[211,211,211,1],lightgreen:[144,238,144,1],lightgrey:[211,211,211,1],lightpink:[255,182,193,1],lightsalmon:[255,160,122,1],lightseagreen:[32,178,170,1],lightskyblue:[135,206,250,1],lightslategray:[119,136,153,1],lightslategrey:[119,136,153,1],lightsteelblue:[176,196,222,1],lightyellow:[255,255,224,1],lime:[0,255,0,1],limegreen:[50,205,50,1],linen:[250,240,230,1],magenta:[255,0,255,1],maroon:[128,0,0,1],mediumaquamarine:[102,205,170,1],mediumblue:[0,0,205,1],mediumorchid:[186,85,211,1],mediumpurple:[147,112,219,1],mediumseagreen:[60,179,113,1],mediumslateblue:[123,104,238,1],mediumspringgreen:[0,250,154,1],mediumturquoise:[72,209,204,1],mediumvioletred:[199,21,133,1],midnightblue:[25,25,112,1],mintcream:[245,255,250,1],mistyrose:[255,228,225,1],moccasin:[255,228,181,1],navajowhite:[255,222,173,1],navy:[0,0,128,1],oldlace:[253,245,230,1],olive:[128,128,0,1],olivedrab:[107,142,35,1],orange:[255,165,0,1],orangered:[255,69,0,1],orchid:[218,112,214,1],palegoldenrod:[238,232,170,1],palegreen:[152,251,152,1],paleturquoise:[175,238,238,1],palevioletred:[219,112,147,1],papayawhip:[255,239,213,1],peachpuff:[255,218,185,1],peru:[205,133,63,1],pink:[255,192,203,1],plum:[221,160,221,1],powderblue:[176,224,230,1],purple:[128,0,128,1],red:[255,0,0,1],rosybrown:[188,143,143,1],royalblue:[65,105,225,1],saddlebrown:[139,69,19,1],salmon:[250,128,114,1],sandybrown:[244,164,96,1],seagreen:[46,139,87,1],seashell:[255,245,238,1],sienna:[160,82,45,1],silver:[192,192,192,1],skyblue:[135,206,235,1],slateblue:[106,90,205,1],slategray:[112,128,144,1],slategrey:[112,128,144,1],snow:[255,250,250,1],springgreen:[0,255,127,1],steelblue:[70,130,180,1],tan:[210,180,140,1],teal:[0,128,128,1],thistle:[216,191,216,1],tomato:[255,99,71,1],turquoise:[64,224,208,1],violet:[238,130,238,1],wheat:[245,222,179,1],white:[255,255,255,1],whitesmoke:[245,245,245,1],yellow:[255,255,0,1],yellowgreen:[154,205,50,1]};function hn(t){return(t=Math.round(t))<0?0:t>255?255:t}function cn(t){return t<0?0:t>1?1:t}function pn(t){var e=t;return e.length&&"%"===e.charAt(e.length-1)?hn(parseFloat(e)/100*255):hn(parseInt(e,10))}function dn(t){var e=t;return e.length&&"%"===e.charAt(e.length-1)?cn(parseFloat(e)/100):cn(parseFloat(e))}function fn(t,e,n){return n<0?n+=1:n>1&&(n-=1),6*n<1?t+(e-t)*n*6:2*n<1?e:3*n<2?t+(e-t)*(2/3-n)*6:t}function gn(t,e,n){return t+(e-t)*n}function yn(t,e,n,i,r){return t[0]=e,t[1]=n,t[2]=i,t[3]=r,t}function vn(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t}var mn=new ln(20),xn=null;function _n(t,e){xn&&vn(xn,e),xn=mn.put(t,xn||e.slice())}function bn(t,e){if(t){e=e||[];var n=mn.get(t);if(n)return vn(e,n);var i=(t+="").replace(/ /g,"").toLowerCase();if(i in un)return vn(e,un[i]),_n(t,e),e;var r,o=i.length;if("#"===i.charAt(0))return 4===o||5===o?(r=parseInt(i.slice(1,4),16))>=0&&r<=4095?(yn(e,(3840&r)>>4|(3840&r)>>8,240&r|(240&r)>>4,15&r|(15&r)<<4,5===o?parseInt(i.slice(4),16)/15:1),_n(t,e),e):void yn(e,0,0,0,1):7===o||9===o?(r=parseInt(i.slice(1,7),16))>=0&&r<=16777215?(yn(e,(16711680&r)>>16,(65280&r)>>8,255&r,9===o?parseInt(i.slice(7),16)/255:1),_n(t,e),e):void yn(e,0,0,0,1):void 0;var a=i.indexOf("("),s=i.indexOf(")");if(-1!==a&&s+1===o){var l=i.substr(0,a),u=i.substr(a+1,s-(a+1)).split(","),h=1;switch(l){case"rgba":if(4!==u.length)return 3===u.length?yn(e,+u[0],+u[1],+u[2],1):yn(e,0,0,0,1);h=dn(u.pop());case"rgb":return 3!==u.length?void yn(e,0,0,0,1):(yn(e,pn(u[0]),pn(u[1]),pn(u[2]),h),_n(t,e),e);case"hsla":return 4!==u.length?void yn(e,0,0,0,1):(u[3]=dn(u[3]),wn(u,e),_n(t,e),e);case"hsl":return 3!==u.length?void yn(e,0,0,0,1):(wn(u,e),_n(t,e),e);default:return}}yn(e,0,0,0,1)}}function wn(t,e){var n=(parseFloat(t[0])%360+360)%360/360,i=dn(t[1]),r=dn(t[2]),o=r<=.5?r*(i+1):r+i-r*i,a=2*r-o;return yn(e=e||[],hn(255*fn(a,o,n+1/3)),hn(255*fn(a,o,n)),hn(255*fn(a,o,n-1/3)),1),4===t.length&&(e[3]=t[3]),e}function Sn(t,e){var n=bn(t);if(n){for(var i=0;i<3;i++)n[i]=e<0?n[i]*(1-e)|0:(255-n[i])*e+n[i]|0,n[i]>255?n[i]=255:n[i]<0&&(n[i]=0);return kn(n,4===n.length?"rgba":"rgb")}}function Mn(t,e,n){if(e&&e.length&&t>=0&&t<=1){n=n||[];var i=t*(e.length-1),r=Math.floor(i),o=Math.ceil(i),a=e[r],s=e[o],l=i-r;return n[0]=hn(gn(a[0],s[0],l)),n[1]=hn(gn(a[1],s[1],l)),n[2]=hn(gn(a[2],s[2],l)),n[3]=cn(gn(a[3],s[3],l)),n}}var In=Mn;function Tn(t,e,n){if(e&&e.length&&t>=0&&t<=1){var i=t*(e.length-1),r=Math.floor(i),o=Math.ceil(i),a=bn(e[r]),s=bn(e[o]),l=i-r,u=kn([hn(gn(a[0],s[0],l)),hn(gn(a[1],s[1],l)),hn(gn(a[2],s[2],l)),cn(gn(a[3],s[3],l))],"rgba");return n?{color:u,leftIndex:r,rightIndex:o,value:i}:u}}var Cn=Tn;function Dn(t,e,n,i){var r=bn(t);if(t)return r=function(t){if(t){var e,n,i=t[0]/255,r=t[1]/255,o=t[2]/255,a=Math.min(i,r,o),s=Math.max(i,r,o),l=s-a,u=(s+a)/2;if(0===l)e=0,n=0;else{n=u<.5?l/(s+a):l/(2-s-a);var h=((s-i)/6+l/2)/l,c=((s-r)/6+l/2)/l,p=((s-o)/6+l/2)/l;i===s?e=p-c:r===s?e=1/3+h-p:o===s&&(e=2/3+c-h),e<0&&(e+=1),e>1&&(e-=1)}var d=[360*e,n,u];return null!=t[3]&&d.push(t[3]),d}}(r),null!=e&&(r[0]=function(t){return(t=Math.round(t))<0?0:t>360?360:t}(e)),null!=n&&(r[1]=dn(n)),null!=i&&(r[2]=dn(i)),kn(wn(r),"rgba")}function An(t,e){var n=bn(t);if(n&&null!=e)return n[3]=cn(e),kn(n,"rgba")}function kn(t,e){if(t&&t.length){var n=t[0]+","+t[1]+","+t[2];return"rgba"!==e&&"hsva"!==e&&"hsla"!==e||(n+=","+t[3]),e+"("+n+")"}}function Ln(t,e){var n=bn(t);return n?(.299*n[0]+.587*n[1]+.114*n[2])*n[3]/255+(1-n[3])*e:0}var Pn=Object.freeze({__proto__:null,parse:bn,lift:Sn,toHex:function(t){var e=bn(t);if(e)return((1<<24)+(e[0]<<16)+(e[1]<<8)+ +e[2]).toString(16).slice(1)},fastLerp:Mn,fastMapToColor:In,lerp:Tn,mapToColor:Cn,modifyHSL:Dn,modifyAlpha:An,stringify:kn,lum:Ln,random:function(){return kn([Math.round(255*Math.random()),Math.round(255*Math.random()),Math.round(255*Math.random())],"rgb")}}),On=Math.round;function Rn(t){var e;if(t&&"transparent"!==t){if("string"==typeof t&&t.indexOf("rgba")>-1){var n=bn(t);n&&(t="rgb("+n[0]+","+n[1]+","+n[2]+")",e=n[3])}}else t="none";return{color:t,opacity:null==e?1:e}}var Nn=1e-4;function En(t){return t-1e-4}function zn(t){return On(1e3*t)/1e3}function Vn(t){return On(1e4*t)/1e4}var Bn={left:"start",right:"end",center:"middle",middle:"middle"};function Fn(t){return t&&!!t.image}function Gn(t){return"linear"===t.type}function Wn(t){return"radial"===t.type}function Hn(t){return"url(#"+t+")"}function Yn(t){var e=t.getGlobalScale(),n=Math.max(e[0],e[1]);return Math.max(Math.ceil(Math.log(n)/Math.log(10)),1)}function Un(t){var e=t.x||0,n=t.y||0,i=(t.rotation||0)*_t,r=rt(t.scaleX,1),o=rt(t.scaleY,1),a=t.skewX||0,s=t.skewY||0,l=[];return(e||n)&&l.push("translate("+e+"px,"+n+"px)"),i&&l.push("rotate("+i+")"),1===r&&1===o||l.push("scale("+r+","+o+")"),(a||s)&&l.push("skew("+On(a*_t)+"deg, "+On(s*_t)+"deg)"),l.join(" ")}var Xn=r.hasGlobalWindow&&U(window.btoa)?function(t){return window.btoa(unescape(t))}:"undefined"!=typeof Buffer?function(t){return Buffer.from(t).toString("base64")}:function(t){return null},Zn=Array.prototype.slice;function jn(t,e,n){return(e-t)*n+t}function qn(t,e,n,i){for(var r=e.length,o=0;oi?e:t,o=Math.min(n,i),a=r[o-1]||{color:[0,0,0,0],offset:0},s=o;sa)i.length=a;else for(var s=o;s=1},t.prototype.getAdditiveTrack=function(){return this._additiveTrack},t.prototype.addKeyframe=function(t,e,n){this._needsSort=!0;var i=this.keyframes,r=i.length,o=!1,a=6,s=e;if(N(e)){var l=function(t){return N(t&&t[0])?2:1}(e);a=l,(1===l&&!j(e[0])||2===l&&!j(e[0][0]))&&(o=!0)}else if(j(e)&&!nt(e))a=0;else if(X(e))if(isNaN(+e)){var u=bn(e);u&&(s=u,a=3)}else a=0;else if(Q(e)){var h=A({},s);h.colorStops=z(e.colorStops,(function(t){return{offset:t.offset,color:bn(t.color)}})),Gn(e)?a=4:Wn(e)&&(a=5),s=h}0===r?this.valType=a:a===this.valType&&6!==a||(o=!0),this.discrete=this.discrete||o;var c={time:t,value:s,rawValue:e,percent:0};return n&&(c.easing=n,c.easingFunc=U(n)?n:Le[n]||rn(n)),i.push(c),c},t.prototype.prepare=function(t,e){var n=this.keyframes;this._needsSort&&n.sort((function(t,e){return t.time-e.time}));for(var i=this.valType,r=n.length,o=n[r-1],a=this.discrete,s=ii(i),l=ni(i),u=0;u=0&&!(l[n].percent<=e);n--);n=d(n,u-2)}else{for(n=p;ne);n++);n=d(n-1,u-2)}r=l[n+1],i=l[n]}if(i&&r){this._lastFr=n,this._lastFrP=e;var f=r.percent-i.percent,g=0===f?1:d((e-i.percent)/f,1);r.easingFunc&&(g=r.easingFunc(g));var y=o?this._additiveValue:c?ri:t[h];if(!ii(s)&&!c||y||(y=this._additiveValue=[]),this.discrete)t[h]=g<1?i.rawValue:r.rawValue;else if(ii(s))1===s?qn(y,i[a],r[a],g):function(t,e,n,i){for(var r=e.length,o=r&&e[0].length,a=0;a0&&s.addKeyframe(0,ti(l),i),this._trackKeys.push(a)}s.addKeyframe(t,ti(e[a]),i)}return this._maxTime=Math.max(this._maxTime,t),this},t.prototype.pause=function(){this._clip.pause(),this._paused=!0},t.prototype.resume=function(){this._clip.resume(),this._paused=!1},t.prototype.isPaused=function(){return!!this._paused},t.prototype.duration=function(t){return this._maxTime=t,this._force=!0,this},t.prototype._doneCallback=function(){this._setTracksFinished(),this._clip=null;var t=this._doneCbs;if(t)for(var e=t.length,n=0;n0)){this._started=1;for(var e=this,n=[],i=this._maxTime||0,r=0;r1){var a=o.pop();r.addKeyframe(a.time,t[i]),r.prepare(this._maxTime,r.getAdditiveTrack())}}}},t}();function si(){return(new Date).getTime()}var li,ui,hi=function(t){function e(e){var n=t.call(this)||this;return n._running=!1,n._time=0,n._pausedTime=0,n._pauseStart=0,n._paused=!1,e=e||{},n.stage=e.stage||{},n}return n(e,t),e.prototype.addClip=function(t){t.animation&&this.removeClip(t),this._head?(this._tail.next=t,t.prev=this._tail,t.next=null,this._tail=t):this._head=this._tail=t,t.animation=this},e.prototype.addAnimator=function(t){t.animation=this;var e=t.getClip();e&&this.addClip(e)},e.prototype.removeClip=function(t){if(t.animation){var e=t.prev,n=t.next;e?e.next=n:this._head=n,n?n.prev=e:this._tail=e,t.next=t.prev=t.animation=null}},e.prototype.removeAnimator=function(t){var e=t.getClip();e&&this.removeClip(e),t.animation=null},e.prototype.update=function(t){for(var e=si()-this._pausedTime,n=e-this._time,i=this._head;i;){var r=i.next;i.step(e,n)?(i.ondestroy(),this.removeClip(i),i=r):i=r}this._time=e,t||(this.trigger("frame",n),this.stage.update&&this.stage.update())},e.prototype._startLoop=function(){var t=this;this._running=!0,ke((function e(){t._running&&(ke(e),!t._paused&&t.update())}))},e.prototype.start=function(){this._running||(this._time=si(),this._pausedTime=0,this._startLoop())},e.prototype.stop=function(){this._running=!1},e.prototype.pause=function(){this._paused||(this._pauseStart=si(),this._paused=!0)},e.prototype.resume=function(){this._paused&&(this._pausedTime+=si()-this._pauseStart,this._paused=!1)},e.prototype.clear=function(){for(var t=this._head;t;){var e=t.next;t.prev=t.next=t.animation=null,t=e}this._head=this._tail=null},e.prototype.isFinished=function(){return null==this._head},e.prototype.animate=function(t,e){e=e||{},this.start();var n=new ai(t,e.loop);return this.addAnimator(n),n},e}(Xt),ci=r.domSupported,pi=(ui={pointerdown:1,pointerup:1,pointermove:1,pointerout:1},{mouse:li=["click","dblclick","mousewheel","wheel","mouseout","mouseup","mousedown","mousemove","contextmenu"],touch:["touchstart","touchend","touchmove"],pointer:z(li,(function(t){var e=t.replace("mouse","pointer");return ui.hasOwnProperty(e)?e:t}))}),di=["mousemove","mouseup"],fi=["pointermove","pointerup"],gi=!1;function yi(t){var e=t.pointerType;return"pen"===e||"touch"===e}function vi(t){t&&(t.zrByTouch=!0)}function mi(t,e){for(var n=e,i=!1;n&&9!==n.nodeType&&!(i=n.domBelongToZr||n!==e&&n===t.painterRoot);)n=n.parentNode;return i}var xi=function(t,e){this.stopPropagation=xt,this.stopImmediatePropagation=xt,this.preventDefault=xt,this.type=e.type,this.target=this.currentTarget=t.dom,this.pointerType=e.pointerType,this.clientX=e.clientX,this.clientY=e.clientY},_i={mousedown:function(t){t=oe(this.dom,t),this.__mayPointerCapture=[t.zrX,t.zrY],this.trigger("mousedown",t)},mousemove:function(t){t=oe(this.dom,t);var e=this.__mayPointerCapture;!e||t.zrX===e[0]&&t.zrY===e[1]||this.__togglePointerCapture(!0),this.trigger("mousemove",t)},mouseup:function(t){t=oe(this.dom,t),this.__togglePointerCapture(!1),this.trigger("mouseup",t)},mouseout:function(t){mi(this,(t=oe(this.dom,t)).toElement||t.relatedTarget)||(this.__pointerCapturing&&(t.zrEventControl="no_globalout"),this.trigger("mouseout",t))},wheel:function(t){gi=!0,t=oe(this.dom,t),this.trigger("mousewheel",t)},mousewheel:function(t){gi||(t=oe(this.dom,t),this.trigger("mousewheel",t))},touchstart:function(t){vi(t=oe(this.dom,t)),this.__lastTouchMoment=new Date,this.handler.processGesture(t,"start"),_i.mousemove.call(this,t),_i.mousedown.call(this,t)},touchmove:function(t){vi(t=oe(this.dom,t)),this.handler.processGesture(t,"change"),_i.mousemove.call(this,t)},touchend:function(t){vi(t=oe(this.dom,t)),this.handler.processGesture(t,"end"),_i.mouseup.call(this,t),+new Date-+this.__lastTouchMoment<300&&_i.click.call(this,t)},pointerdown:function(t){_i.mousedown.call(this,t)},pointermove:function(t){yi(t)||_i.mousemove.call(this,t)},pointerup:function(t){_i.mouseup.call(this,t)},pointerout:function(t){yi(t)||_i.mouseout.call(this,t)}};E(["click","dblclick","contextmenu"],(function(t){_i[t]=function(e){e=oe(this.dom,e),this.trigger(t,e)}}));var bi={pointermove:function(t){yi(t)||bi.mousemove.call(this,t)},pointerup:function(t){bi.mouseup.call(this,t)},mousemove:function(t){this.trigger("mousemove",t)},mouseup:function(t){var e=this.__pointerCapturing;this.__togglePointerCapture(!1),this.trigger("mouseup",t),e&&(t.zrEventControl="only_globalout",this.trigger("mouseout",t))}};function wi(t,e){var n=e.domHandlers;r.pointerEventsSupported?E(pi.pointer,(function(i){Mi(e,i,(function(e){n[i].call(t,e)}))})):(r.touchEventsSupported&&E(pi.touch,(function(i){Mi(e,i,(function(r){n[i].call(t,r),function(t){t.touching=!0,null!=t.touchTimer&&(clearTimeout(t.touchTimer),t.touchTimer=null),t.touchTimer=setTimeout((function(){t.touching=!1,t.touchTimer=null}),700)}(e)}))})),E(pi.mouse,(function(i){Mi(e,i,(function(r){r=re(r),e.touching||n[i].call(t,r)}))})))}function Si(t,e){function n(n){Mi(e,n,(function(i){i=re(i),mi(t,i.target)||(i=function(t,e){return oe(t.dom,new xi(t,e),!0)}(t,i),e.domHandlers[n].call(t,i))}),{capture:!0})}r.pointerEventsSupported?E(fi,n):r.touchEventsSupported||E(di,n)}function Mi(t,e,n,i){t.mounted[e]=n,t.listenerOpts[e]=i,ae(t.domTarget,e,n,i)}function Ii(t){var e,n,i,r,o=t.mounted;for(var a in o)o.hasOwnProperty(a)&&(e=t.domTarget,n=a,i=o[a],r=t.listenerOpts[a],e.removeEventListener(n,i,r));t.mounted={}}var Ti=function(t,e){this.mounted={},this.listenerOpts={},this.touching=!1,this.domTarget=t,this.domHandlers=e},Ci=function(t){function e(e,n){var i=t.call(this)||this;return i.__pointerCapturing=!1,i.dom=e,i.painterRoot=n,i._localHandlerScope=new Ti(e,_i),ci&&(i._globalHandlerScope=new Ti(document,bi)),wi(i,i._localHandlerScope),i}return n(e,t),e.prototype.dispose=function(){Ii(this._localHandlerScope),ci&&Ii(this._globalHandlerScope)},e.prototype.setCursor=function(t){this.dom.style&&(this.dom.style.cursor=t||"default")},e.prototype.__togglePointerCapture=function(t){if(this.__mayPointerCapture=null,ci&&+this.__pointerCapturing^+t){this.__pointerCapturing=t;var e=this._globalHandlerScope;t?Si(this,e):Ii(e)}},e}(Xt),Di=1;r.hasGlobalWindow&&(Di=Math.max(window.devicePixelRatio||window.screen&&window.screen.deviceXDPI/window.screen.logicalXDPI||1,1));var Ai=Di,ki="#333",Li="#ccc";function Pi(){return[1,0,0,1,0,0]}function Oi(t){return t[0]=1,t[1]=0,t[2]=0,t[3]=1,t[4]=0,t[5]=0,t}function Ri(t,e){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4],t[5]=e[5],t}function Ni(t,e,n){var i=e[0]*n[0]+e[2]*n[1],r=e[1]*n[0]+e[3]*n[1],o=e[0]*n[2]+e[2]*n[3],a=e[1]*n[2]+e[3]*n[3],s=e[0]*n[4]+e[2]*n[5]+e[4],l=e[1]*n[4]+e[3]*n[5]+e[5];return t[0]=i,t[1]=r,t[2]=o,t[3]=a,t[4]=s,t[5]=l,t}function Ei(t,e,n){return t[0]=e[0],t[1]=e[1],t[2]=e[2],t[3]=e[3],t[4]=e[4]+n[0],t[5]=e[5]+n[1],t}function zi(t,e,n){var i=e[0],r=e[2],o=e[4],a=e[1],s=e[3],l=e[5],u=Math.sin(n),h=Math.cos(n);return t[0]=i*h+a*u,t[1]=-i*u+a*h,t[2]=r*h+s*u,t[3]=-r*u+h*s,t[4]=h*o+u*l,t[5]=h*l-u*o,t}function Vi(t,e,n){var i=n[0],r=n[1];return t[0]=e[0]*i,t[1]=e[1]*r,t[2]=e[2]*i,t[3]=e[3]*r,t[4]=e[4]*i,t[5]=e[5]*r,t}function Bi(t,e){var n=e[0],i=e[2],r=e[4],o=e[1],a=e[3],s=e[5],l=n*a-o*i;return l?(l=1/l,t[0]=a*l,t[1]=-o*l,t[2]=-i*l,t[3]=n*l,t[4]=(i*s-a*r)*l,t[5]=(o*r-n*s)*l,t):null}function Fi(t){var e=[1,0,0,1,0,0];return Ri(e,t),e}var Gi=Object.freeze({__proto__:null,create:Pi,identity:Oi,copy:Ri,mul:Ni,translate:Ei,rotate:zi,scale:Vi,invert:Bi,clone:Fi}),Wi=Oi,Hi=5e-5;function Yi(t){return t>Hi||t<-5e-5}var Ui=[],Xi=[],Zi=[1,0,0,1,0,0],ji=Math.abs,qi=function(){function t(){}return t.prototype.getLocalTransform=function(e){return t.getLocalTransform(this,e)},t.prototype.setPosition=function(t){this.x=t[0],this.y=t[1]},t.prototype.setScale=function(t){this.scaleX=t[0],this.scaleY=t[1]},t.prototype.setSkew=function(t){this.skewX=t[0],this.skewY=t[1]},t.prototype.setOrigin=function(t){this.originX=t[0],this.originY=t[1]},t.prototype.needLocalTransform=function(){return Yi(this.rotation)||Yi(this.x)||Yi(this.y)||Yi(this.scaleX-1)||Yi(this.scaleY-1)||Yi(this.skewX)||Yi(this.skewY)},t.prototype.updateTransform=function(){var t=this.parent&&this.parent.transform,e=this.needLocalTransform(),n=this.transform;e||t?(n=n||[1,0,0,1,0,0],e?this.getLocalTransform(n):Wi(n),t&&(e?Ni(n,t,n):Ri(n,t)),this.transform=n,this._resolveGlobalScaleRatio(n)):n&&Wi(n)},t.prototype._resolveGlobalScaleRatio=function(t){var e=this.globalScaleRatio;if(null!=e&&1!==e){this.getGlobalScale(Ui);var n=Ui[0]<0?-1:1,i=Ui[1]<0?-1:1,r=((Ui[0]-n)*e+n)/Ui[0]||0,o=((Ui[1]-i)*e+i)/Ui[1]||0;t[0]*=r,t[1]*=r,t[2]*=o,t[3]*=o}this.invTransform=this.invTransform||[1,0,0,1,0,0],Bi(this.invTransform,t)},t.prototype.getComputedTransform=function(){for(var t=this,e=[];t;)e.push(t),t=t.parent;for(;t=e.pop();)t.updateTransform();return this.transform},t.prototype.setLocalTransform=function(t){if(t){var e=t[0]*t[0]+t[1]*t[1],n=t[2]*t[2]+t[3]*t[3],i=Math.atan2(t[1],t[0]),r=Math.PI/2+i-Math.atan2(t[3],t[2]);n=Math.sqrt(n)*Math.cos(r),e=Math.sqrt(e),this.skewX=r,this.skewY=0,this.rotation=-i,this.x=+t[4],this.y=+t[5],this.scaleX=e,this.scaleY=n,this.originX=0,this.originY=0}},t.prototype.decomposeTransform=function(){if(this.transform){var t=this.parent,e=this.transform;t&&t.transform&&(Ni(Xi,t.invTransform,e),e=Xi);var n=this.originX,i=this.originY;(n||i)&&(Zi[4]=n,Zi[5]=i,Ni(Xi,e,Zi),Xi[4]-=n,Xi[5]-=i,e=Xi),this.setLocalTransform(e)}},t.prototype.getGlobalScale=function(t){var e=this.transform;return t=t||[],e?(t[0]=Math.sqrt(e[0]*e[0]+e[1]*e[1]),t[1]=Math.sqrt(e[2]*e[2]+e[3]*e[3]),e[0]<0&&(t[0]=-t[0]),e[3]<0&&(t[1]=-t[1]),t):(t[0]=1,t[1]=1,t)},t.prototype.transformCoordToLocal=function(t,e){var n=[t,e],i=this.invTransform;return i&&Ft(n,n,i),n},t.prototype.transformCoordToGlobal=function(t,e){var n=[t,e],i=this.transform;return i&&Ft(n,n,i),n},t.prototype.getLineScale=function(){var t=this.transform;return t&&ji(t[0]-1)>1e-10&&ji(t[3]-1)>1e-10?Math.sqrt(ji(t[0]*t[3]-t[2]*t[1])):1},t.prototype.copyTransform=function(t){$i(this,t)},t.getLocalTransform=function(t,e){e=e||[];var n=t.originX||0,i=t.originY||0,r=t.scaleX,o=t.scaleY,a=t.anchorX,s=t.anchorY,l=t.rotation||0,u=t.x,h=t.y,c=t.skewX?Math.tan(t.skewX):0,p=t.skewY?Math.tan(-t.skewY):0;if(n||i||a||s){var d=n+a,f=i+s;e[4]=-d*r-c*f*o,e[5]=-f*o-p*d*r}else e[4]=e[5]=0;return e[0]=r,e[3]=o,e[1]=p*r,e[2]=c*o,l&&zi(e,e,l),e[4]+=n+u,e[5]+=i+h,e},t.initDefaultProps=function(){var e=t.prototype;e.scaleX=e.scaleY=e.globalScaleRatio=1,e.x=e.y=e.originX=e.originY=e.skewX=e.skewY=e.rotation=e.anchorX=e.anchorY=0}(),t}(),Ki=["x","y","originX","originY","anchorX","anchorY","rotation","scaleX","scaleY","skewX","skewY"];function $i(t,e){for(var n=0;nf&&(f=x,gf&&(f=_,v=n.x&&t<=n.x+n.width&&e>=n.y&&e<=n.y+n.height},t.prototype.clone=function(){return new t(this.x,this.y,this.width,this.height)},t.prototype.copy=function(e){t.copy(this,e)},t.prototype.plain=function(){return{x:this.x,y:this.y,width:this.width,height:this.height}},t.prototype.isFinite=function(){return isFinite(this.x)&&isFinite(this.y)&&isFinite(this.width)&&isFinite(this.height)},t.prototype.isZero=function(){return 0===this.width||0===this.height},t.create=function(e){return new t(e.x,e.y,e.width,e.height)},t.copy=function(t,e){t.x=e.x,t.y=e.y,t.width=e.width,t.height=e.height},t.applyTransform=function(e,n,i){if(i){if(i[1]<1e-5&&i[1]>-1e-5&&i[2]<1e-5&&i[2]>-1e-5){var r=i[0],o=i[3],a=i[4],s=i[5];return e.x=n.x*r+a,e.y=n.y*o+s,e.width=n.width*r,e.height=n.height*o,e.width<0&&(e.x+=e.width,e.width=-e.width),void(e.height<0&&(e.y+=e.height,e.height=-e.height))}er.x=ir.x=n.x,er.y=rr.y=n.y,nr.x=rr.x=n.x+n.width,nr.y=ir.y=n.y+n.height,er.transform(i),rr.transform(i),nr.transform(i),ir.transform(i),e.x=Qi(er.x,nr.x,ir.x,rr.x),e.y=Qi(er.y,nr.y,ir.y,rr.y);var l=tr(er.x,nr.x,ir.x,rr.x),u=tr(er.y,nr.y,ir.y,rr.y);e.width=l-e.x,e.height=u-e.y}else e!==n&&t.copy(e,n)},t}(),lr={};function ur(t,e){var n=lr[e=e||a];n||(n=lr[e]=new ln(500));var i=n.get(t);return null==i&&(i=h.measureText(t,e).width,n.put(t,i)),i}function hr(t,e,n,i){var r=ur(t,e),o=fr(e),a=pr(0,r,n),s=dr(0,o,i);return new sr(a,s,r,o)}function cr(t,e,n,i){var r=((t||"")+"").split("\n");if(1===r.length)return hr(r[0],e,n,i);for(var o=new sr(0,0,0,0),a=0;a=0?parseFloat(t)/100*e:parseFloat(t):t}function yr(t,e,n){var i=e.position||"inside",r=null!=e.distance?e.distance:5,o=n.height,a=n.width,s=o/2,l=n.x,u=n.y,h="left",c="top";if(i instanceof Array)l+=gr(i[0],n.width),u+=gr(i[1],n.height),h=null,c=null;else switch(i){case"left":l-=r,u+=s,h="right",c="middle";break;case"right":l+=r+a,u+=s,c="middle";break;case"top":l+=a/2,u-=r,h="center",c="bottom";break;case"bottom":l+=a/2,u+=o+r,h="center";break;case"inside":l+=a/2,u+=s,h="center",c="middle";break;case"insideLeft":l+=r,u+=s,c="middle";break;case"insideRight":l+=a-r,u+=s,h="right",c="middle";break;case"insideTop":l+=a/2,u+=r,h="center";break;case"insideBottom":l+=a/2,u+=o-r,h="center",c="bottom";break;case"insideTopLeft":l+=r,u+=r;break;case"insideTopRight":l+=a-r,u+=r,h="right";break;case"insideBottomLeft":l+=r,u+=o-r,c="bottom";break;case"insideBottomRight":l+=a-r,u+=o-r,h="right",c="bottom"}return(t=t||{}).x=l,t.y=u,t.align=h,t.verticalAlign=c,t}var vr="__zr_normal__",mr=Ki.concat(["ignore"]),xr=V(Ki,(function(t,e){return t[e]=!0,t}),{ignore:!1}),_r={},br=new sr(0,0,0,0),wr=function(){function t(t){this.id=M(),this.animators=[],this.currentStates=[],this.states={},this._init(t)}return t.prototype._init=function(t){this.attr(t)},t.prototype.drift=function(t,e,n){switch(this.draggable){case"horizontal":e=0;break;case"vertical":t=0}var i=this.transform;i||(i=this.transform=[1,0,0,1,0,0]),i[4]+=t,i[5]+=e,this.decomposeTransform(),this.markRedraw()},t.prototype.beforeUpdate=function(){},t.prototype.afterUpdate=function(){},t.prototype.update=function(){this.updateTransform(),this.__dirty&&this.updateInnerText()},t.prototype.updateInnerText=function(t){var e=this._textContent;if(e&&(!e.ignore||t)){this.textConfig||(this.textConfig={});var n=this.textConfig,i=n.local,r=e.innerTransformable,o=void 0,a=void 0,s=!1;r.parent=i?this:null;var l=!1;if(r.copyTransform(e),null!=n.position){var u=br;n.layoutRect?u.copy(n.layoutRect):u.copy(this.getBoundingRect()),i||u.applyTransform(this.transform),this.calculateTextPosition?this.calculateTextPosition(_r,n,u):yr(_r,n,u),r.x=_r.x,r.y=_r.y,o=_r.align,a=_r.verticalAlign;var h=n.origin;if(h&&null!=n.rotation){var c=void 0,p=void 0;"center"===h?(c=.5*u.width,p=.5*u.height):(c=gr(h[0],u.width),p=gr(h[1],u.height)),l=!0,r.originX=-r.x+c+(i?0:u.x),r.originY=-r.y+p+(i?0:u.y)}}null!=n.rotation&&(r.rotation=n.rotation);var d=n.offset;d&&(r.x+=d[0],r.y+=d[1],l||(r.originX=-d[0],r.originY=-d[1]));var f=null==n.inside?"string"==typeof n.position&&n.position.indexOf("inside")>=0:n.inside,g=this._innerTextDefaultStyle||(this._innerTextDefaultStyle={}),y=void 0,v=void 0,m=void 0;f&&this.canBeInsideText()?(y=n.insideFill,v=n.insideStroke,null!=y&&"auto"!==y||(y=this.getInsideTextFill()),null!=v&&"auto"!==v||(v=this.getInsideTextStroke(y),m=!0)):(y=n.outsideFill,v=n.outsideStroke,null!=y&&"auto"!==y||(y=this.getOutsideFill()),null!=v&&"auto"!==v||(v=this.getOutsideStroke(y),m=!0)),(y=y||"#000")===g.fill&&v===g.stroke&&m===g.autoStroke&&o===g.align&&a===g.verticalAlign||(s=!0,g.fill=y,g.stroke=v,g.autoStroke=m,g.align=o,g.verticalAlign=a,e.setDefaultTextStyle(g)),e.__dirty|=1,s&&e.dirtyStyle(!0)}},t.prototype.canBeInsideText=function(){return!0},t.prototype.getInsideTextFill=function(){return"#fff"},t.prototype.getInsideTextStroke=function(t){return"#000"},t.prototype.getOutsideFill=function(){return this.__zr&&this.__zr.isDarkMode()?Li:ki},t.prototype.getOutsideStroke=function(t){var e=this.__zr&&this.__zr.getBackgroundColor(),n="string"==typeof e&&bn(e);n||(n=[255,255,255,1]);for(var i=n[3],r=this.__zr.isDarkMode(),o=0;o<3;o++)n[o]=n[o]*i+(r?0:255)*(1-i);return n[3]=1,kn(n,"rgba")},t.prototype.traverse=function(t,e){},t.prototype.attrKV=function(t,e){"textConfig"===t?this.setTextConfig(e):"textContent"===t?this.setTextContent(e):"clipPath"===t?this.setClipPath(e):"extra"===t?(this.extra=this.extra||{},A(this.extra,e)):this[t]=e},t.prototype.hide=function(){this.ignore=!0,this.markRedraw()},t.prototype.show=function(){this.ignore=!1,this.markRedraw()},t.prototype.attr=function(t,e){if("string"==typeof t)this.attrKV(t,e);else if(q(t))for(var n=G(t),i=0;i0},t.prototype.getState=function(t){return this.states[t]},t.prototype.ensureState=function(t){var e=this.states;return e[t]||(e[t]={}),e[t]},t.prototype.clearStates=function(t){this.useState(vr,!1,t)},t.prototype.useState=function(t,e,n,i){var r=t===vr;if(this.hasState()||!r){var o=this.currentStates,a=this.stateTransition;if(!(P(o,t)>=0)||!e&&1!==o.length){var s;if(this.stateProxy&&!r&&(s=this.stateProxy(t)),s||(s=this.states&&this.states[t]),s||r){r||this.saveCurrentToNormalState(s);var l=!!(s&&s.hoverLayer||i);l&&this._toggleHoverLayerFlag(!0),this._applyStateObj(t,s,this._normalState,e,!n&&!this.__inHover&&a&&a.duration>0,a);var u=this._textContent,h=this._textGuide;return u&&u.useState(t,e,n,l),h&&h.useState(t,e,n,l),r?(this.currentStates=[],this._normalState={}):e?this.currentStates.push(t):this.currentStates=[t],this._updateAnimationTargets(),this.markRedraw(),!l&&this.__inHover&&(this._toggleHoverLayerFlag(!1),this.__dirty&=-2),s}I("State "+t+" not exists.")}}},t.prototype.useStates=function(t,e,n){if(t.length){var i=[],r=this.currentStates,o=t.length,a=o===r.length;if(a)for(var s=0;s0,d);var f=this._textContent,g=this._textGuide;f&&f.useStates(t,e,c),g&&g.useStates(t,e,c),this._updateAnimationTargets(),this.currentStates=t.slice(),this.markRedraw(),!c&&this.__inHover&&(this._toggleHoverLayerFlag(!1),this.__dirty&=-2)}else this.clearStates()},t.prototype._updateAnimationTargets=function(){for(var t=0;t=0){var n=this.currentStates.slice();n.splice(e,1),this.useStates(n)}},t.prototype.replaceState=function(t,e,n){var i=this.currentStates.slice(),r=P(i,t),o=P(i,e)>=0;r>=0?o?i.splice(r,1):i[r]=e:n&&!o&&i.push(e),this.useStates(i)},t.prototype.toggleState=function(t,e){e?this.useState(t,!0):this.removeState(t)},t.prototype._mergeStates=function(t){for(var e,n={},i=0;i=0&&e.splice(n,1)})),this.animators.push(t),n&&n.animation.addAnimator(t),n&&n.wakeUp()},t.prototype.updateDuringAnimation=function(t){this.markRedraw()},t.prototype.stopAnimation=function(t,e){for(var n=this.animators,i=n.length,r=[],o=0;o0&&n.during&&o[0].during((function(t,e){n.during(e)}));for(var p=0;p0||r.force&&!a.length){var w,S=void 0,M=void 0,I=void 0;if(s){M={},p&&(S={});for(_=0;_=0&&(n.splice(i,0,t),this._doAdd(t))}return this},e.prototype.replace=function(t,e){var n=P(this._children,t);return n>=0&&this.replaceAt(e,n),this},e.prototype.replaceAt=function(t,e){var n=this._children,i=n[e];if(t&&t!==this&&t.parent!==this&&t!==i){n[e]=t,i.parent=null;var r=this.__zr;r&&i.removeSelfFromZr(r),this._doAdd(t)}return this},e.prototype._doAdd=function(t){t.parent&&t.parent.remove(t),t.parent=this;var e=this.__zr;e&&e!==t.__zr&&t.addSelfToZr(e),e&&e.refresh()},e.prototype.remove=function(t){var e=this.__zr,n=this._children,i=P(n,t);return i<0||(n.splice(i,1),t.parent=null,e&&t.removeSelfFromZr(e),e&&e.refresh()),this},e.prototype.removeAll=function(){for(var t=this._children,e=this.__zr,n=0;n0&&(this._stillFrameAccum++,this._stillFrameAccum>this._sleepAfterStill&&this.animation.stop())},t.prototype.setSleepAfterStill=function(t){this._sleepAfterStill=t},t.prototype.wakeUp=function(){this.animation.start(),this._stillFrameAccum=0},t.prototype.refreshHover=function(){this._needsRefreshHover=!0},t.prototype.refreshHoverImmediately=function(){this._needsRefreshHover=!1,this.painter.refreshHover&&"canvas"===this.painter.getType()&&this.painter.refreshHover()},t.prototype.resize=function(t){t=t||{},this.painter.resize(t.width,t.height),this.handler.resize()},t.prototype.clearAnimation=function(){this.animation.clear()},t.prototype.getWidth=function(){return this.painter.getWidth()},t.prototype.getHeight=function(){return this.painter.getHeight()},t.prototype.setCursorStyle=function(t){this.handler.setCursorStyle(t)},t.prototype.findHover=function(t,e){return this.handler.findHover(t,e)},t.prototype.on=function(t,e,n){return this.handler.on(t,e,n),this},t.prototype.off=function(t,e){this.handler.off(t,e)},t.prototype.trigger=function(t,e){this.handler.trigger(t,e)},t.prototype.clear=function(){for(var t=this.storage.getRoots(),e=0;e0){if(t<=r)return a;if(t>=o)return s}else{if(t>=r)return a;if(t<=o)return s}else{if(t===r)return a;if(t===o)return s}return(t-r)/l*u+a}function Er(t,e){switch(t){case"center":case"middle":t="50%";break;case"left":case"top":t="0%";break;case"right":case"bottom":t="100%"}return X(t)?(n=t,n.replace(/^\s+|\s+$/g,"")).match(/%$/)?parseFloat(t)/100*e:parseFloat(t):null==t?NaN:+t;var n}function zr(t,e,n){return null==e&&(e=10),e=Math.min(Math.max(0,e),20),t=(+t).toFixed(e),n?t:+t}function Vr(t){return t.sort((function(t,e){return t-e})),t}function Br(t){if(t=+t,isNaN(t))return 0;if(t>1e-14)for(var e=1,n=0;n<15;n++,e*=10)if(Math.round(t*e)/e===t)return n;return Fr(t)}function Fr(t){var e=t.toString().toLowerCase(),n=e.indexOf("e"),i=n>0?+e.slice(n+1):0,r=n>0?n:e.length,o=e.indexOf("."),a=o<0?0:r-1-o;return Math.max(0,a-i)}function Gr(t,e){var n=Math.log,i=Math.LN10,r=Math.floor(n(t[1]-t[0])/i),o=Math.round(n(Math.abs(e[1]-e[0]))/i),a=Math.min(Math.max(-r+o,0),20);return isFinite(a)?a:20}function Wr(t,e,n){if(!t[e])return 0;var i=V(t,(function(t,e){return t+(isNaN(e)?0:e)}),0);if(0===i)return 0;for(var r=Math.pow(10,n),o=z(t,(function(t){return(isNaN(t)?0:t)/i*r*100})),a=100*r,s=z(o,(function(t){return Math.floor(t)})),l=V(s,(function(t,e){return t+e}),0),u=z(o,(function(t,e){return t-s[e]}));lh&&(h=u[p],c=p);++s[c],u[c]=0,++l}return s[e]/r}function Hr(t,e){var n=Math.max(Br(t),Br(e)),i=t+e;return n>20?i:zr(i,n)}var Yr=9007199254740991;function Ur(t){var e=2*Math.PI;return(t%e+e)%e}function Xr(t){return t>-1e-4&&t=10&&e++,e}function $r(t,e){var n=Kr(t),i=Math.pow(10,n),r=t/i;return t=(e?r<1.5?1:r<2.5?2:r<4?3:r<7?5:10:r<1?1:r<2?2:r<3?3:r<5?5:10)*i,n>=-20?+t.toFixed(n<0?-n:0):t}function Jr(t,e){var n=(t.length-1)*e+1,i=Math.floor(n),r=+t[i-1],o=n-i;return o?r+o*(t[i]-r):r}function Qr(t){t.sort((function(t,e){return s(t,e,0)?-1:1}));for(var e=-1/0,n=1,i=0;i=0||r&&P(r,s)<0)){var l=n.getShallow(s,e);null!=l&&(o[t[a][0]]=l)}}return o}}var Ho=Wo([["fill","color"],["shadowBlur"],["shadowOffsetX"],["shadowOffsetY"],["opacity"],["shadowColor"]]),Yo=function(){function t(){}return t.prototype.getAreaStyle=function(t,e){return Ho(this,t,e)},t}(),Uo=new ln(50);function Xo(t){if("string"==typeof t){var e=Uo.get(t);return e&&e.image}return t}function Zo(t,e,n,i,r){if(t){if("string"==typeof t){if(e&&e.__zrImageSrc===t||!n)return e;var o=Uo.get(t),a={hostEl:n,cb:i,cbPayload:r};return o?!qo(e=o.image)&&o.pending.push(a):((e=h.loadImage(t,jo,jo)).__zrImageSrc=t,Uo.put(t,e.__cachedImgObj={image:e,pending:[a]})),e}return t}return e}function jo(){var t=this.__cachedImgObj;this.onload=this.onerror=this.__cachedImgObj=null;for(var e=0;e=a;l++)s-=a;var u=ur(n,e);return u>s&&(n="",u=0),s=t-u,r.ellipsis=n,r.ellipsisWidth=u,r.contentWidth=s,r.containerWidth=t,r}function Qo(t,e){var n=e.containerWidth,i=e.font,r=e.contentWidth;if(!n)return"";var o=ur(t,i);if(o<=n)return t;for(var a=0;;a++){if(o<=r||a>=e.maxIterations){t+=e.ellipsis;break}var s=0===a?ta(t,r,e.ascCharWidth,e.cnCharWidth):o>0?Math.floor(t.length*r/o):0;o=ur(t=t.substr(0,s),i)}return""===t&&(t=e.placeholder),t}function ta(t,e,n,i){for(var r=0,o=0,a=t.length;o0&&f+i.accumWidth>i.width&&(o=e.split("\n"),c=!0),i.accumWidth=f}else{var g=sa(e,h,i.width,i.breakAll,i.accumWidth);i.accumWidth=g.accumWidth+d,a=g.linesWidths,o=g.lines}}else o=e.split("\n");for(var y=0;y=33&&e<=383}(t)||!!oa[t]}function sa(t,e,n,i,r){for(var o=[],a=[],s="",l="",u=0,h=0,c=0;cn:r+h+d>n)?h?(s||l)&&(f?(s||(s=l,l="",h=u=0),o.push(s),a.push(h-u),l+=p,s="",h=u+=d):(l&&(s+=l,l="",u=0),o.push(s),a.push(h),s=p,h=d)):f?(o.push(l),a.push(u),l=p,u=d):(o.push(p),a.push(d)):(h+=d,f?(l+=p,u+=d):(l&&(s+=l,l="",u=0),s+=p))}else l&&(s+=l,h+=u),o.push(s),a.push(h),s="",l="",u=0,h=0}return o.length||s||(s=t,l="",u=0),l&&(s+=l),s&&(o.push(s),a.push(h)),1===o.length&&(h+=r),{accumWidth:h,lines:o,linesWidths:a}}var la="__zr_style_"+Math.round(10*Math.random()),ua={shadowBlur:0,shadowOffsetX:0,shadowOffsetY:0,shadowColor:"#000",opacity:1,blend:"source-over"},ha={style:{shadowBlur:!0,shadowOffsetX:!0,shadowOffsetY:!0,shadowColor:!0,opacity:!0}};ua[la]=!0;var ca=["z","z2","invisible"],pa=["invisible"],da=function(t){function e(e){return t.call(this,e)||this}var i;return n(e,t),e.prototype._init=function(e){for(var n=G(e),i=0;i1e-4)return s[0]=t-n,s[1]=e-i,l[0]=t+n,void(l[1]=e+i);if(ba[0]=xa(r)*n+t,ba[1]=ma(r)*i+e,wa[0]=xa(o)*n+t,wa[1]=ma(o)*i+e,u(s,ba,wa),h(l,ba,wa),(r%=_a)<0&&(r+=_a),(o%=_a)<0&&(o+=_a),r>o&&!a?o+=_a:rr&&(Sa[0]=xa(d)*n+t,Sa[1]=ma(d)*i+e,u(s,Sa,s),h(l,Sa,l))}var La={M:1,L:2,C:3,Q:4,A:5,Z:6,R:7},Pa=[],Oa=[],Ra=[],Na=[],Ea=[],za=[],Va=Math.min,Ba=Math.max,Fa=Math.cos,Ga=Math.sin,Wa=Math.abs,Ha=Math.PI,Ya=2*Ha,Ua="undefined"!=typeof Float32Array,Xa=[];function Za(t){return Math.round(t/Ha*1e8)/1e8%2*Ha}function ja(t,e){var n=Za(t[0]);n<0&&(n+=Ya);var i=n-t[0],r=t[1];r+=i,!e&&r-n>=Ya?r=n+Ya:e&&n-r>=Ya?r=n-Ya:!e&&n>r?r=n+(Ya-Za(n-r)):e&&n0&&(this._ux=Wa(n/Ai/t)||0,this._uy=Wa(n/Ai/e)||0)},t.prototype.setDPR=function(t){this.dpr=t},t.prototype.setContext=function(t){this._ctx=t},t.prototype.getContext=function(){return this._ctx},t.prototype.beginPath=function(){return this._ctx&&this._ctx.beginPath(),this.reset(),this},t.prototype.reset=function(){this._saveData&&(this._len=0),this._pathSegLen&&(this._pathSegLen=null,this._pathLen=0),this._version++},t.prototype.moveTo=function(t,e){return this._drawPendingPt(),this.addData(La.M,t,e),this._ctx&&this._ctx.moveTo(t,e),this._x0=t,this._y0=e,this._xi=t,this._yi=e,this},t.prototype.lineTo=function(t,e){var n=Wa(t-this._xi),i=Wa(e-this._yi),r=n>this._ux||i>this._uy;if(this.addData(La.L,t,e),this._ctx&&r&&this._ctx.lineTo(t,e),r)this._xi=t,this._yi=e,this._pendingPtDist=0;else{var o=n*n+i*i;o>this._pendingPtDist&&(this._pendingPtX=t,this._pendingPtY=e,this._pendingPtDist=o)}return this},t.prototype.bezierCurveTo=function(t,e,n,i,r,o){return this._drawPendingPt(),this.addData(La.C,t,e,n,i,r,o),this._ctx&&this._ctx.bezierCurveTo(t,e,n,i,r,o),this._xi=r,this._yi=o,this},t.prototype.quadraticCurveTo=function(t,e,n,i){return this._drawPendingPt(),this.addData(La.Q,t,e,n,i),this._ctx&&this._ctx.quadraticCurveTo(t,e,n,i),this._xi=n,this._yi=i,this},t.prototype.arc=function(t,e,n,i,r,o){this._drawPendingPt(),Xa[0]=i,Xa[1]=r,ja(Xa,o),i=Xa[0];var a=(r=Xa[1])-i;return this.addData(La.A,t,e,n,n,i,a,0,o?0:1),this._ctx&&this._ctx.arc(t,e,n,i,r,o),this._xi=Fa(r)*n+t,this._yi=Ga(r)*n+e,this},t.prototype.arcTo=function(t,e,n,i,r){return this._drawPendingPt(),this._ctx&&this._ctx.arcTo(t,e,n,i,r),this},t.prototype.rect=function(t,e,n,i){return this._drawPendingPt(),this._ctx&&this._ctx.rect(t,e,n,i),this.addData(La.R,t,e,n,i),this},t.prototype.closePath=function(){this._drawPendingPt(),this.addData(La.Z);var t=this._ctx,e=this._x0,n=this._y0;return t&&t.closePath(),this._xi=e,this._yi=n,this},t.prototype.fill=function(t){t&&t.fill(),this.toStatic()},t.prototype.stroke=function(t){t&&t.stroke(),this.toStatic()},t.prototype.len=function(){return this._len},t.prototype.setData=function(t){var e=t.length;this.data&&this.data.length===e||!Ua||(this.data=new Float32Array(e));for(var n=0;nu.length&&(this._expandData(),u=this.data);for(var h=0;h0&&(this._ctx&&this._ctx.lineTo(this._pendingPtX,this._pendingPtY),this._pendingPtDist=0)},t.prototype._expandData=function(){if(!(this.data instanceof Array)){for(var t=[],e=0;e11&&(this.data=new Float32Array(t)))}},t.prototype.getBoundingRect=function(){Ra[0]=Ra[1]=Ea[0]=Ea[1]=Number.MAX_VALUE,Na[0]=Na[1]=za[0]=za[1]=-Number.MAX_VALUE;var t,e=this.data,n=0,i=0,r=0,o=0;for(t=0;tn||Wa(y)>i||c===e-1)&&(f=Math.sqrt(A*A+y*y),r=g,o=x);break;case La.C:var v=t[c++],m=t[c++],x=(g=t[c++],t[c++]),_=t[c++],b=t[c++];f=qe(r,o,v,m,g,x,_,b,10),r=_,o=b;break;case La.Q:f=en(r,o,v=t[c++],m=t[c++],g=t[c++],x=t[c++],10),r=g,o=x;break;case La.A:var w=t[c++],S=t[c++],M=t[c++],I=t[c++],T=t[c++],C=t[c++],D=C+T;c+=1;t[c++];d&&(a=Fa(T)*M+w,s=Ga(T)*I+S),f=Ba(M,I)*Va(Ya,Math.abs(C)),r=Fa(D)*M+w,o=Ga(D)*I+S;break;case La.R:a=r=t[c++],s=o=t[c++],f=2*t[c++]+2*t[c++];break;case La.Z:var A=a-r;y=s-o;f=Math.sqrt(A*A+y*y),r=a,o=s}f>=0&&(l[h++]=f,u+=f)}return this._pathLen=u,u},t.prototype.rebuildPath=function(t,e){var n,i,r,o,a,s,l,u,h,c,p=this.data,d=this._ux,f=this._uy,g=this._len,y=e<1,v=0,m=0,x=0;if(!y||(this._pathSegLen||this._calculateLength(),l=this._pathSegLen,u=e*this._pathLen))t:for(var _=0;_0&&(t.lineTo(h,c),x=0),b){case La.M:n=r=p[_++],i=o=p[_++],t.moveTo(r,o);break;case La.L:a=p[_++],s=p[_++];var S=Wa(a-r),M=Wa(s-o);if(S>d||M>f){if(y){if(v+(j=l[m++])>u){var I=(u-v)/j;t.lineTo(r*(1-I)+a*I,o*(1-I)+s*I);break t}v+=j}t.lineTo(a,s),r=a,o=s,x=0}else{var T=S*S+M*M;T>x&&(h=a,c=s,x=T)}break;case La.C:var C=p[_++],D=p[_++],A=p[_++],k=p[_++],L=p[_++],P=p[_++];if(y){if(v+(j=l[m++])>u){Ze(r,C,A,L,I=(u-v)/j,Pa),Ze(o,D,k,P,I,Oa),t.bezierCurveTo(Pa[1],Oa[1],Pa[2],Oa[2],Pa[3],Oa[3]);break t}v+=j}t.bezierCurveTo(C,D,A,k,L,P),r=L,o=P;break;case La.Q:C=p[_++],D=p[_++],A=p[_++],k=p[_++];if(y){if(v+(j=l[m++])>u){Qe(r,C,A,I=(u-v)/j,Pa),Qe(o,D,k,I,Oa),t.quadraticCurveTo(Pa[1],Oa[1],Pa[2],Oa[2]);break t}v+=j}t.quadraticCurveTo(C,D,A,k),r=A,o=k;break;case La.A:var O=p[_++],R=p[_++],N=p[_++],E=p[_++],z=p[_++],V=p[_++],B=p[_++],F=!p[_++],G=N>E?N:E,W=Wa(N-E)>.001,H=z+V,Y=!1;if(y)v+(j=l[m++])>u&&(H=z+V*(u-v)/j,Y=!0),v+=j;if(W&&t.ellipse?t.ellipse(O,R,N,E,B,z,H,F):t.arc(O,R,G,z,H,F),Y)break t;w&&(n=Fa(z)*N+O,i=Ga(z)*E+R),r=Fa(H)*N+O,o=Ga(H)*E+R;break;case La.R:n=r=p[_],i=o=p[_+1],a=p[_++],s=p[_++];var U=p[_++],X=p[_++];if(y){if(v+(j=l[m++])>u){var Z=u-v;t.moveTo(a,s),t.lineTo(a+Va(Z,U),s),(Z-=U)>0&&t.lineTo(a+U,s+Va(Z,X)),(Z-=X)>0&&t.lineTo(a+Ba(U-Z,0),s+X),(Z-=U)>0&&t.lineTo(a,s+Ba(X-Z,0));break t}v+=j}t.rect(a,s,U,X);break;case La.Z:if(y){var j;if(v+(j=l[m++])>u){I=(u-v)/j;t.lineTo(r*(1-I)+n*I,o*(1-I)+i*I);break t}v+=j}t.closePath(),r=n,o=i}}},t.prototype.clone=function(){var e=new t,n=this.data;return e.data=n.slice?n.slice():Array.prototype.slice.call(n),e._len=this._len,e},t.CMD=La,t.initDefaultProps=function(){var e=t.prototype;e._saveData=!0,e._ux=0,e._uy=0,e._pendingPtDist=0,e._version=0}(),t}();function Ka(t,e,n,i,r,o,a){if(0===r)return!1;var s=r,l=0;if(a>e+s&&a>i+s||at+s&&o>n+s||oe+c&&h>i+c&&h>o+c&&h>s+c||ht+c&&u>n+c&&u>r+c&&u>a+c||ue+u&&l>i+u&&l>o+u||lt+u&&s>n+u&&s>r+u||sn||h+ur&&(r+=es);var p=Math.atan2(l,s);return p<0&&(p+=es),p>=i&&p<=r||p+es>=i&&p+es<=r}function is(t,e,n,i,r,o){if(o>e&&o>i||or?s:0}var rs=qa.CMD,os=2*Math.PI;var as=[-1,-1,-1],ss=[-1,-1];function ls(t,e,n,i,r,o,a,s,l,u){if(u>e&&u>i&&u>o&&u>s||u1&&(h=void 0,h=ss[0],ss[0]=ss[1],ss[1]=h),f=He(e,i,o,s,ss[0]),d>1&&(g=He(e,i,o,s,ss[1]))),2===d?ve&&s>i&&s>o||s=0&&h<=1&&(r[l++]=h);else{var u=a*a-4*o*s;if(Ge(u))(h=-a/(2*o))>=0&&h<=1&&(r[l++]=h);else if(u>0){var h,c=Oe(u),p=(-a-c)/(2*o);(h=(-a+c)/(2*o))>=0&&h<=1&&(r[l++]=h),p>=0&&p<=1&&(r[l++]=p)}}return l}(e,i,o,s,as);if(0===l)return 0;var u=Je(e,i,o);if(u>=0&&u<=1){for(var h=0,c=Ke(e,i,o,u),p=0;pn||s<-n)return 0;var l=Math.sqrt(n*n-s*s);as[0]=-l,as[1]=l;var u=Math.abs(i-r);if(u<1e-4)return 0;if(u>=os-1e-4){i=0,r=os;var h=o?1:-1;return a>=as[0]+t&&a<=as[1]+t?h:0}if(i>r){var c=i;i=r,r=c}i<0&&(i+=os,r+=os);for(var p=0,d=0;d<2;d++){var f=as[d];if(f+t>a){var g=Math.atan2(s,f);h=o?1:-1;g<0&&(g=os+g),(g>=i&&g<=r||g+os>=i&&g+os<=r)&&(g>Math.PI/2&&g<1.5*Math.PI&&(h=-h),p+=h)}}return p}function cs(t,e,n,i,r){for(var o,a,s,l,u=t.data,h=t.len(),c=0,p=0,d=0,f=0,g=0,y=0;y1&&(n||(c+=is(p,d,f,g,i,r))),m&&(f=p=u[y],g=d=u[y+1]),v){case rs.M:p=f=u[y++],d=g=u[y++];break;case rs.L:if(n){if(Ka(p,d,u[y],u[y+1],e,i,r))return!0}else c+=is(p,d,u[y],u[y+1],i,r)||0;p=u[y++],d=u[y++];break;case rs.C:if(n){if($a(p,d,u[y++],u[y++],u[y++],u[y++],u[y],u[y+1],e,i,r))return!0}else c+=ls(p,d,u[y++],u[y++],u[y++],u[y++],u[y],u[y+1],i,r)||0;p=u[y++],d=u[y++];break;case rs.Q:if(n){if(Ja(p,d,u[y++],u[y++],u[y],u[y+1],e,i,r))return!0}else c+=us(p,d,u[y++],u[y++],u[y],u[y+1],i,r)||0;p=u[y++],d=u[y++];break;case rs.A:var x=u[y++],_=u[y++],b=u[y++],w=u[y++],S=u[y++],M=u[y++];y+=1;var I=!!(1-u[y++]);o=Math.cos(S)*b+x,a=Math.sin(S)*w+_,m?(f=o,g=a):c+=is(p,d,o,a,i,r);var T=(i-x)*w/b+x;if(n){if(ns(x,_,w,S,S+M,I,e,T,r))return!0}else c+=hs(x,_,w,S,S+M,I,T,r);p=Math.cos(S+M)*b+x,d=Math.sin(S+M)*w+_;break;case rs.R:if(f=p=u[y++],g=d=u[y++],o=f+u[y++],a=g+u[y++],n){if(Ka(f,g,o,g,e,i,r)||Ka(o,g,o,a,e,i,r)||Ka(o,a,f,a,e,i,r)||Ka(f,a,f,g,e,i,r))return!0}else c+=is(o,g,o,a,i,r),c+=is(f,a,f,g,i,r);break;case rs.Z:if(n){if(Ka(p,d,f,g,e,i,r))return!0}else c+=is(p,d,f,g,i,r);p=f,d=g}}return n||(s=d,l=g,Math.abs(s-l)<1e-4)||(c+=is(p,d,f,g,i,r)||0),0!==c}var ps=k({fill:"#000",stroke:null,strokePercent:1,fillOpacity:1,strokeOpacity:1,lineDashOffset:0,lineWidth:1,lineCap:"butt",miterLimit:10,strokeNoScale:!1,strokeFirst:!1},ua),ds={style:k({fill:!0,stroke:!0,strokePercent:!0,fillOpacity:!0,strokeOpacity:!0,lineDashOffset:!0,lineWidth:!0,miterLimit:!0},ha.style)},fs=Ki.concat(["invisible","culling","z","z2","zlevel","parent"]),gs=function(t){function e(e){return t.call(this,e)||this}var i;return n(e,t),e.prototype.update=function(){var n=this;t.prototype.update.call(this);var i=this.style;if(i.decal){var r=this._decalEl=this._decalEl||new e;r.buildPath===e.prototype.buildPath&&(r.buildPath=function(t){n.buildPath(t,n.shape)}),r.silent=!0;var o=r.style;for(var a in i)o[a]!==i[a]&&(o[a]=i[a]);o.fill=i.fill?i.decal:null,o.decal=null,o.shadowColor=null,i.strokeFirst&&(o.stroke=null);for(var s=0;s.5?ki:e>.2?"#eee":Li}if(t)return Li}return ki},e.prototype.getInsideTextStroke=function(t){var e=this.style.fill;if(X(e)){var n=this.__zr;if(!(!n||!n.isDarkMode())===Ln(t,0)<.4)return e}},e.prototype.buildPath=function(t,e,n){},e.prototype.pathUpdated=function(){this.__dirty&=-5},e.prototype.getUpdatedPathProxy=function(t){return!this.path&&this.createPathProxy(),this.path.beginPath(),this.buildPath(this.path,this.shape,t),this.path},e.prototype.createPathProxy=function(){this.path=new qa(!1)},e.prototype.hasStroke=function(){var t=this.style,e=t.stroke;return!(null==e||"none"===e||!(t.lineWidth>0))},e.prototype.hasFill=function(){var t=this.style.fill;return null!=t&&"none"!==t},e.prototype.getBoundingRect=function(){var t=this._rect,e=this.style,n=!t;if(n){var i=!1;this.path||(i=!0,this.createPathProxy());var r=this.path;(i||4&this.__dirty)&&(r.beginPath(),this.buildPath(r,this.shape,!1),this.pathUpdated()),t=r.getBoundingRect()}if(this._rect=t,this.hasStroke()&&this.path&&this.path.len()>0){var o=this._rectStroke||(this._rectStroke=t.clone());if(this.__dirty||n){o.copy(t);var a=e.strokeNoScale?this.getLineScale():1,s=e.lineWidth;if(!this.hasFill()){var l=this.strokeContainThreshold;s=Math.max(s,null==l?4:l)}a>1e-10&&(o.width+=s/a,o.height+=s/a,o.x-=s/a/2,o.y-=s/a/2)}return o}return t},e.prototype.contain=function(t,e){var n=this.transformCoordToLocal(t,e),i=this.getBoundingRect(),r=this.style;if(t=n[0],e=n[1],i.contain(t,e)){var o=this.path;if(this.hasStroke()){var a=r.lineWidth,s=r.strokeNoScale?this.getLineScale():1;if(s>1e-10&&(this.hasFill()||(a=Math.max(a,this.strokeContainThreshold)),function(t,e,n,i){return cs(t,e,!0,n,i)}(o,a/s,t,e)))return!0}if(this.hasFill())return function(t,e,n){return cs(t,0,!1,e,n)}(o,t,e)}return!1},e.prototype.dirtyShape=function(){this.__dirty|=4,this._rect&&(this._rect=null),this._decalEl&&this._decalEl.dirtyShape(),this.markRedraw()},e.prototype.dirty=function(){this.dirtyStyle(),this.dirtyShape()},e.prototype.animateShape=function(t){return this.animate("shape",t)},e.prototype.updateDuringAnimation=function(t){"style"===t?this.dirtyStyle():"shape"===t?this.dirtyShape():this.markRedraw()},e.prototype.attrKV=function(e,n){"shape"===e?this.setShape(n):t.prototype.attrKV.call(this,e,n)},e.prototype.setShape=function(t,e){var n=this.shape;return n||(n=this.shape={}),"string"==typeof t?n[t]=e:A(n,t),this.dirtyShape(),this},e.prototype.shapeChanged=function(){return!!(4&this.__dirty)},e.prototype.createStyle=function(t){return yt(ps,t)},e.prototype._innerSaveToNormal=function(e){t.prototype._innerSaveToNormal.call(this,e);var n=this._normalState;e.shape&&!n.shape&&(n.shape=A({},this.shape))},e.prototype._applyStateObj=function(e,n,i,r,o,a){t.prototype._applyStateObj.call(this,e,n,i,r,o,a);var s,l=!(n&&r);if(n&&n.shape?o?r?s=n.shape:(s=A({},i.shape),A(s,n.shape)):(s=A({},r?this.shape:i.shape),A(s,n.shape)):l&&(s=i.shape),s)if(o){this.shape=A({},this.shape);for(var u={},h=G(s),c=0;c0},e.prototype.hasFill=function(){var t=this.style.fill;return null!=t&&"none"!==t},e.prototype.createStyle=function(t){return yt(ys,t)},e.prototype.setBoundingRect=function(t){this._rect=t},e.prototype.getBoundingRect=function(){var t=this.style;if(!this._rect){var e=t.text;null!=e?e+="":e="";var n=cr(e,t.font,t.textAlign,t.textBaseline);if(n.x+=t.x||0,n.y+=t.y||0,this.hasStroke()){var i=t.lineWidth;n.x-=i/2,n.y-=i/2,n.width+=i,n.height+=i}this._rect=n}return this._rect},e.initDefaultProps=void(e.prototype.dirtyRectTolerance=10),e}(da);vs.prototype.type="tspan";var ms=k({x:0,y:0},ua),xs={style:k({x:!0,y:!0,width:!0,height:!0,sx:!0,sy:!0,sWidth:!0,sHeight:!0},ha.style)};var _s=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.createStyle=function(t){return yt(ms,t)},e.prototype._getSize=function(t){var e=this.style,n=e[t];if(null!=n)return n;var i,r=(i=e.image)&&"string"!=typeof i&&i.width&&i.height?e.image:this.__image;if(!r)return 0;var o="width"===t?"height":"width",a=e[o];return null==a?r[t]:r[t]/r[o]*a},e.prototype.getWidth=function(){return this._getSize("width")},e.prototype.getHeight=function(){return this._getSize("height")},e.prototype.getAnimationStyleProps=function(){return xs},e.prototype.getBoundingRect=function(){var t=this.style;return this._rect||(this._rect=new sr(t.x||0,t.y||0,this.getWidth(),this.getHeight())),this._rect},e}(da);_s.prototype.type="image";var bs=Math.round;function ws(t,e,n){if(e){var i=e.x1,r=e.x2,o=e.y1,a=e.y2;t.x1=i,t.x2=r,t.y1=o,t.y2=a;var s=n&&n.lineWidth;return s?(bs(2*i)===bs(2*r)&&(t.x1=t.x2=Ms(i,s,!0)),bs(2*o)===bs(2*a)&&(t.y1=t.y2=Ms(o,s,!0)),t):t}}function Ss(t,e,n){if(e){var i=e.x,r=e.y,o=e.width,a=e.height;t.x=i,t.y=r,t.width=o,t.height=a;var s=n&&n.lineWidth;return s?(t.x=Ms(i,s,!0),t.y=Ms(r,s,!0),t.width=Math.max(Ms(i+o,s,!1)-t.x,0===o?0:1),t.height=Math.max(Ms(r+a,s,!1)-t.y,0===a?0:1),t):t}}function Ms(t,e,n){if(!e)return t;var i=bs(2*t);return(i+bs(e))%2==0?i/2:(i+(n?1:-1))/2}var Is=function(){this.x=0,this.y=0,this.width=0,this.height=0},Ts={},Cs=function(t){function e(e){return t.call(this,e)||this}return n(e,t),e.prototype.getDefaultShape=function(){return new Is},e.prototype.buildPath=function(t,e){var n,i,r,o;if(this.subPixelOptimize){var a=Ss(Ts,e,this.style);n=a.x,i=a.y,r=a.width,o=a.height,a.r=e.r,e=a}else n=e.x,i=e.y,r=e.width,o=e.height;e.r?function(t,e){var n,i,r,o,a,s=e.x,l=e.y,u=e.width,h=e.height,c=e.r;u<0&&(s+=u,u=-u),h<0&&(l+=h,h=-h),"number"==typeof c?n=i=r=o=c:c instanceof Array?1===c.length?n=i=r=o=c[0]:2===c.length?(n=r=c[0],i=o=c[1]):3===c.length?(n=c[0],i=o=c[1],r=c[2]):(n=c[0],i=c[1],r=c[2],o=c[3]):n=i=r=o=0,n+i>u&&(n*=u/(a=n+i),i*=u/a),r+o>u&&(r*=u/(a=r+o),o*=u/a),i+r>h&&(i*=h/(a=i+r),r*=h/a),n+o>h&&(n*=h/(a=n+o),o*=h/a),t.moveTo(s+n,l),t.lineTo(s+u-i,l),0!==i&&t.arc(s+u-i,l+i,i,-Math.PI/2,0),t.lineTo(s+u,l+h-r),0!==r&&t.arc(s+u-r,l+h-r,r,0,Math.PI/2),t.lineTo(s+o,l+h),0!==o&&t.arc(s+o,l+h-o,o,Math.PI/2,Math.PI),t.lineTo(s,l+n),0!==n&&t.arc(s+n,l+n,n,Math.PI,1.5*Math.PI)}(t,e):t.rect(n,i,r,o)},e.prototype.isZeroArea=function(){return!this.shape.width||!this.shape.height},e}(gs);Cs.prototype.type="rect";var Ds={fill:"#000"},As={style:k({fill:!0,stroke:!0,fillOpacity:!0,strokeOpacity:!0,lineWidth:!0,fontSize:!0,lineHeight:!0,width:!0,height:!0,textShadowColor:!0,textShadowBlur:!0,textShadowOffsetX:!0,textShadowOffsetY:!0,backgroundColor:!0,padding:!0,borderColor:!0,borderWidth:!0,borderRadius:!0},ha.style)},ks=function(t){function e(e){var n=t.call(this)||this;return n.type="text",n._children=[],n._defaultStyle=Ds,n.attr(e),n}return n(e,t),e.prototype.childrenRef=function(){return this._children},e.prototype.update=function(){t.prototype.update.call(this),this.styleChanged()&&this._updateSubTexts();for(var e=0;ed&&h){var f=Math.floor(d/l);n=n.slice(0,f)}if(t&&a&&null!=c)for(var g=Jo(c,o,e.ellipsis,{minChar:e.truncateMinChar,placeholder:e.placeholder}),y=0;y0,T=null!=t.width&&("truncate"===t.overflow||"break"===t.overflow||"breakAll"===t.overflow),C=i.calculatedLineHeight,D=0;Dl&&ra(n,t.substring(l,u),e,s),ra(n,i[2],e,s,i[1]),l=Ko.lastIndex}lo){b>0?(m.tokens=m.tokens.slice(0,b),y(m,_,x),n.lines=n.lines.slice(0,v+1)):n.lines=n.lines.slice(0,v);break t}var C=w.width,D=null==C||"auto"===C;if("string"==typeof C&&"%"===C.charAt(C.length-1))P.percentWidth=C,h.push(P),P.contentWidth=ur(P.text,I);else{if(D){var A=w.backgroundColor,k=A&&A.image;k&&qo(k=Xo(k))&&(P.width=Math.max(P.width,k.width*T/k.height))}var L=f&&null!=r?r-_:null;null!=L&&L=0&&"right"===(C=x[T]).align;)this._placeToken(C,t,b,f,I,"right",y),w-=C.width,I-=C.width,T--;for(M+=(n-(M-d)-(g-I)-w)/2;S<=T;)C=x[S],this._placeToken(C,t,b,f,M+C.width/2,"center",y),M+=C.width,S++;f+=b}},e.prototype._placeToken=function(t,e,n,i,r,o,s){var l=e.rich[t.styleName]||{};l.text=t.text;var u=t.verticalAlign,h=i+n/2;"top"===u?h=i+t.height/2:"bottom"===u&&(h=i+n-t.height/2),!t.isLineHolder&&Ws(l)&&this._renderBackground(l,e,"right"===o?r-t.width:"center"===o?r-t.width/2:r,h-t.height/2,t.width,t.height);var c=!!l.backgroundColor,p=t.textPadding;p&&(r=Fs(r,o,p),h-=t.height/2-p[0]-t.innerHeight/2);var d=this._getOrCreateChild(vs),f=d.createStyle();d.useStyle(f);var g=this._defaultStyle,y=!1,v=0,m=Bs("fill"in l?l.fill:"fill"in e?e.fill:(y=!0,g.fill)),x=Vs("stroke"in l?l.stroke:"stroke"in e?e.stroke:c||s||g.autoStroke&&!y?null:(v=2,g.stroke)),_=l.textShadowBlur>0||e.textShadowBlur>0;f.text=t.text,f.x=r,f.y=h,_&&(f.shadowBlur=l.textShadowBlur||e.textShadowBlur||0,f.shadowColor=l.textShadowColor||e.textShadowColor||"transparent",f.shadowOffsetX=l.textShadowOffsetX||e.textShadowOffsetX||0,f.shadowOffsetY=l.textShadowOffsetY||e.textShadowOffsetY||0),f.textAlign=o,f.textBaseline="middle",f.font=t.font||a,f.opacity=ot(l.opacity,e.opacity,1),Ns(f,l),x&&(f.lineWidth=ot(l.lineWidth,e.lineWidth,v),f.lineDash=rt(l.lineDash,e.lineDash),f.lineDashOffset=e.lineDashOffset||0,f.stroke=x),m&&(f.fill=m);var b=t.contentWidth,w=t.contentHeight;d.setBoundingRect(new sr(pr(f.x,b,f.textAlign),dr(f.y,w,f.textBaseline),b,w))},e.prototype._renderBackground=function(t,e,n,i,r,o){var a,s,l,u=t.backgroundColor,h=t.borderWidth,c=t.borderColor,p=u&&u.image,d=u&&!p,f=t.borderRadius,g=this;if(d||t.lineHeight||h&&c){(a=this._getOrCreateChild(Cs)).useStyle(a.createStyle()),a.style.fill=null;var y=a.shape;y.x=n,y.y=i,y.width=r,y.height=o,y.r=f,a.dirtyShape()}if(d)(l=a.style).fill=u||null,l.fillOpacity=rt(t.fillOpacity,1);else if(p){(s=this._getOrCreateChild(_s)).onload=function(){g.dirtyStyle()};var v=s.style;v.image=u.image,v.x=n,v.y=i,v.width=r,v.height=o}h&&c&&((l=a.style).lineWidth=h,l.stroke=c,l.strokeOpacity=rt(t.strokeOpacity,1),l.lineDash=t.borderDash,l.lineDashOffset=t.borderDashOffset||0,a.strokeContainThreshold=0,a.hasFill()&&a.hasStroke()&&(l.strokeFirst=!0,l.lineWidth*=2));var m=(a||s).style;m.shadowBlur=t.shadowBlur||0,m.shadowColor=t.shadowColor||"transparent",m.shadowOffsetX=t.shadowOffsetX||0,m.shadowOffsetY=t.shadowOffsetY||0,m.opacity=ot(t.opacity,e.opacity,1)},e.makeFont=function(t){var e="";return Es(t)&&(e=[t.fontStyle,t.fontWeight,Rs(t.fontSize),t.fontFamily||"sans-serif"].join(" ")),e&&ut(e)||t.textFont||t.font},e}(da),Ls={left:!0,right:1,center:1},Ps={top:1,bottom:1,middle:1},Os=["fontStyle","fontWeight","fontSize","fontFamily"];function Rs(t){return"string"!=typeof t||-1===t.indexOf("px")&&-1===t.indexOf("rem")&&-1===t.indexOf("em")?isNaN(+t)?"12px":t+"px":t}function Ns(t,e){for(var n=0;n=0,o=!1;if(t instanceof gs){var a=Zs(t),s=r&&a.selectFill||a.normalFill,l=r&&a.selectStroke||a.normalStroke;if(il(s)||il(l)){var u=(i=i||{}).style||{};"inherit"===u.fill?(o=!0,i=A({},i),(u=A({},u)).fill=s):!il(u.fill)&&il(s)?(o=!0,i=A({},i),(u=A({},u)).fill=ol(s)):!il(u.stroke)&&il(l)&&(o||(i=A({},i),u=A({},u)),u.stroke=ol(l)),i.style=u}}if(i&&null==i.z2){o||(i=A({},i));var h=t.z2EmphasisLift;i.z2=t.z2+(null!=h?h:$s)}return i}(this,0,e,n);if("blur"===t)return function(t,e,n){var i=P(t.currentStates,e)>=0,r=t.style.opacity,o=i?null:function(t,e,n,i){for(var r=t.style,o={},a=0;a0){var o={dataIndex:r,seriesIndex:t.seriesIndex};null!=i&&(o.dataType=i),e.push(o)}}))})),e}function Ol(t,e,n){Bl(t,!0),fl(t,vl),Nl(t,e,n)}function Rl(t,e,n,i){i?function(t){Bl(t,!1)}(t):Ol(t,e,n)}function Nl(t,e,n){var i=Hs(t);null!=e?(i.focus=e,i.blurScope=n):i.focus&&(i.focus=null)}var El=["emphasis","blur","select"],zl={itemStyle:"getItemStyle",lineStyle:"getLineStyle",areaStyle:"getAreaStyle"};function Vl(t,e,n,i){n=n||"itemStyle";for(var r=0;r1&&(a*=jl(f),s*=jl(f));var g=(r===o?-1:1)*jl((a*a*(s*s)-a*a*(d*d)-s*s*(p*p))/(a*a*(d*d)+s*s*(p*p)))||0,y=g*a*d/s,v=g*-s*p/a,m=(t+n)/2+Kl(c)*y-ql(c)*v,x=(e+i)/2+ql(c)*y+Kl(c)*v,_=tu([1,0],[(p-y)/a,(d-v)/s]),b=[(p-y)/a,(d-v)/s],w=[(-1*p-y)/a,(-1*d-v)/s],S=tu(b,w);if(Ql(b,w)<=-1&&(S=$l),Ql(b,w)>=1&&(S=0),S<0){var M=Math.round(S/$l*1e6)/1e6;S=2*$l+M%2*$l}h.addData(u,m,x,a,s,_,S,c,o)}var nu=/([mlvhzcqtsa])([^mlvhzcqtsa]*)/gi,iu=/-?([0-9]*\.)?[0-9]+([eE]-?[0-9]+)?/g;var ru=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.applyTransform=function(t){},e}(gs);function ou(t){return null!=t.setData}function au(t,e){var n=function(t){var e=new qa;if(!t)return e;var n,i=0,r=0,o=i,a=r,s=qa.CMD,l=t.match(nu);if(!l)return e;for(var u=0;uk*k+L*L&&(M=T,I=C),{cx:M,cy:I,x0:-h,y0:-c,x1:M*(r/b-1),y1:I*(r/b-1)}}function Iu(t,e){var n,i=bu(e.r,0),r=bu(e.r0||0,0),o=i>0;if(o||r>0){if(o||(i=r,r=0),r>i){var a=i;i=r,r=a}var s=e.startAngle,l=e.endAngle;if(!isNaN(s)&&!isNaN(l)){var u=e.cx,h=e.cy,c=!!e.clockwise,p=xu(l-s),d=p>fu&&p%fu;if(d>Su&&(p=d),i>Su)if(p>fu-Su)t.moveTo(u+i*yu(s),h+i*gu(s)),t.arc(u,h,i,s,l,!c),r>Su&&(t.moveTo(u+r*yu(l),h+r*gu(l)),t.arc(u,h,r,l,s,c));else{var f=void 0,g=void 0,y=void 0,v=void 0,m=void 0,x=void 0,_=void 0,b=void 0,w=void 0,S=void 0,M=void 0,I=void 0,T=void 0,C=void 0,D=void 0,A=void 0,k=i*yu(s),L=i*gu(s),P=r*yu(l),O=r*gu(l),R=p>Su;if(R){var N=e.cornerRadius;N&&(f=(n=function(t){var e;if(Y(t)){var n=t.length;if(!n)return t;e=1===n?[t[0],t[0],0,0]:2===n?[t[0],t[0],t[1],t[1]]:3===n?t.concat(t[2]):t}else e=[t,t,t,t];return e}(N))[0],g=n[1],y=n[2],v=n[3]);var E=xu(i-r)/2;if(m=wu(E,y),x=wu(E,v),_=wu(E,f),b=wu(E,g),M=w=bu(m,x),I=S=bu(_,b),(w>Su||S>Su)&&(T=i*yu(l),C=i*gu(l),D=r*yu(s),A=r*gu(s),pSu){var U=wu(y,M),X=wu(v,M),Z=Mu(D,A,k,L,i,U,c),j=Mu(T,C,P,O,i,X,c);t.moveTo(u+Z.cx+Z.x0,h+Z.cy+Z.y0),M0&&t.arc(u+Z.cx,h+Z.cy,U,mu(Z.y0,Z.x0),mu(Z.y1,Z.x1),!c),t.arc(u,h,i,mu(Z.cy+Z.y1,Z.cx+Z.x1),mu(j.cy+j.y1,j.cx+j.x1),!c),X>0&&t.arc(u+j.cx,h+j.cy,X,mu(j.y1,j.x1),mu(j.y0,j.x0),!c))}else t.moveTo(u+k,h+L),t.arc(u,h,i,s,l,!c);else t.moveTo(u+k,h+L);if(r>Su&&R)if(I>Su){U=wu(f,I),Z=Mu(P,O,T,C,r,-(X=wu(g,I)),c),j=Mu(k,L,D,A,r,-U,c);t.lineTo(u+Z.cx+Z.x0,h+Z.cy+Z.y0),I0&&t.arc(u+Z.cx,h+Z.cy,X,mu(Z.y0,Z.x0),mu(Z.y1,Z.x1),!c),t.arc(u,h,r,mu(Z.cy+Z.y1,Z.cx+Z.x1),mu(j.cy+j.y1,j.cx+j.x1),c),U>0&&t.arc(u+j.cx,h+j.cy,U,mu(j.y1,j.x1),mu(j.y0,j.x0),!c))}else t.lineTo(u+P,h+O),t.arc(u,h,r,l,s,c);else t.lineTo(u+P,h+O)}else t.moveTo(u,h);t.closePath()}}}var Tu=function(){this.cx=0,this.cy=0,this.r0=0,this.r=0,this.startAngle=0,this.endAngle=2*Math.PI,this.clockwise=!0,this.cornerRadius=0},Cu=function(t){function e(e){return t.call(this,e)||this}return n(e,t),e.prototype.getDefaultShape=function(){return new Tu},e.prototype.buildPath=function(t,e){Iu(t,e)},e.prototype.isZeroArea=function(){return this.shape.startAngle===this.shape.endAngle||this.shape.r===this.shape.r0},e}(gs);Cu.prototype.type="sector";var Du=function(){this.cx=0,this.cy=0,this.r=0,this.r0=0},Au=function(t){function e(e){return t.call(this,e)||this}return n(e,t),e.prototype.getDefaultShape=function(){return new Du},e.prototype.buildPath=function(t,e){var n=e.cx,i=e.cy,r=2*Math.PI;t.moveTo(n+e.r,i),t.arc(n,i,e.r,0,r,!1),t.moveTo(n+e.r0,i),t.arc(n,i,e.r0,0,r,!0)},e}(gs);function ku(t,e,n){var i=e.smooth,r=e.points;if(r&&r.length>=2){if(i){var o=function(t,e,n,i){var r,o,a,s,l=[],u=[],h=[],c=[];if(i){a=[1/0,1/0],s=[-1/0,-1/0];for(var p=0,d=t.length;pqu[1]){if(a=!1,r)return a;var u=Math.abs(qu[0]-ju[1]),h=Math.abs(ju[0]-qu[1]);Math.min(u,h)>i.len()&&(u0){var c={duration:h.duration,delay:h.delay||0,easing:h.easing,done:o,force:!!o||!!a,setToFinal:!u,scope:t,during:a};l?e.animateFrom(n,c):e.animateTo(n,c)}else e.stopAnimation(),!l&&e.attr(n),a&&a(1),o&&o()}function rh(t,e,n,i,r,o){ih("update",t,e,n,i,r,o)}function oh(t,e,n,i,r,o){ih("enter",t,e,n,i,r,o)}function ah(t){if(!t.__zr)return!0;for(var e=0;eMath.abs(o[1])?o[0]>0?"right":"left":o[1]>0?"bottom":"top"}function Dh(t){return!t.isGroup}function Ah(t,e,n){if(t&&e){var i,r=(i={},t.traverse((function(t){Dh(t)&&t.anid&&(i[t.anid]=t)})),i);e.traverse((function(t){if(Dh(t)&&t.anid){var e=r[t.anid];if(e){var i=o(t);t.attr(o(e)),rh(t,i,n,Hs(t).dataIndex)}}}))}function o(t){var e={x:t.x,y:t.y,rotation:t.rotation};return function(t){return null!=t.shape}(t)&&(e.shape=A({},t.shape)),e}}function kh(t,e){return z(t,(function(t){var n=t[0];n=ch(n,e.x),n=ph(n,e.x+e.width);var i=t[1];return i=ch(i,e.y),[n,i=ph(i,e.y+e.height)]}))}function Lh(t,e){var n=ch(t.x,e.x),i=ph(t.x+t.width,e.x+e.width),r=ch(t.y,e.y),o=ph(t.y+t.height,e.y+e.height);if(i>=n&&o>=r)return{x:n,y:r,width:i-n,height:o-r}}function Ph(t,e,n){var i=A({rectHover:!0},e),r=i.style={strokeNoScale:!0};if(n=n||{x:-1,y:-1,width:2,height:2},t)return 0===t.indexOf("image://")?(r.image=t.slice(8),k(r,n),new _s(i)):xh(t.replace("path://",""),i,n,"center")}function Oh(t,e,n,i,r){for(var o=0,a=r[r.length-1];o=-1e-6)return!1;var f=t-r,g=e-o,y=Nh(f,g,u,h)/d;if(y<0||y>1)return!1;var v=Nh(f,g,c,p)/d;return!(v<0||v>1)}function Nh(t,e,n,i){return t*i-n*e}function Eh(t){var e=t.itemTooltipOption,n=t.componentModel,i=t.itemName,r=X(e)?{formatter:e}:e,o=n.mainType,a=n.componentIndex,s={componentType:o,name:i,$vars:["name"]};s[o+"Index"]=a;var l=t.formatterParamsExtra;l&&E(G(l),(function(t){mt(s,t)||(s[t]=l[t],s.$vars.push(t))}));var u=Hs(t.el);u.componentMainType=o,u.componentIndex=a,u.tooltipConfig={name:i,option:k({content:i,formatterParams:s},r)}}function zh(t,e){var n;t.isGroup&&(n=e(t)),n||t.traverse(e)}function Vh(t,e){if(t)if(Y(t))for(var n=0;n-1?vc:xc;function Sc(t,e){t=t.toUpperCase(),bc[t]=new dc(e),_c[t]=e}function Mc(t){return bc[t]}Sc(mc,{time:{month:["January","February","March","April","May","June","July","August","September","October","November","December"],monthAbbr:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dayOfWeek:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],dayOfWeekAbbr:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]},legend:{selector:{all:"All",inverse:"Inv"}},toolbox:{brush:{title:{rect:"Box Select",polygon:"Lasso Select",lineX:"Horizontally Select",lineY:"Vertically Select",keep:"Keep Selections",clear:"Clear Selections"}},dataView:{title:"Data View",lang:["Data View","Close","Refresh"]},dataZoom:{title:{zoom:"Zoom",back:"Zoom Reset"}},magicType:{title:{line:"Switch to Line Chart",bar:"Switch to Bar Chart",stack:"Stack",tiled:"Tile"}},restore:{title:"Restore"},saveAsImage:{title:"Save as Image",lang:["Right Click to Save Image"]}},series:{typeNames:{pie:"Pie chart",bar:"Bar chart",line:"Line chart",scatter:"Scatter plot",effectScatter:"Ripple scatter plot",radar:"Radar chart",tree:"Tree",treemap:"Treemap",boxplot:"Boxplot",candlestick:"Candlestick",k:"K line chart",heatmap:"Heat map",map:"Map",parallel:"Parallel coordinate map",lines:"Line graph",graph:"Relationship graph",sankey:"Sankey diagram",funnel:"Funnel chart",gauge:"Gauge",pictorialBar:"Pictorial bar",themeRiver:"Theme River Map",sunburst:"Sunburst"}},aria:{general:{withTitle:'This is a chart about "{title}"',withoutTitle:"This is a chart"},series:{single:{prefix:"",withName:" with type {seriesType} named {seriesName}.",withoutName:" with type {seriesType}."},multiple:{prefix:". It consists of {seriesCount} series count.",withName:" The {seriesId} series is a {seriesType} representing {seriesName}.",withoutName:" The {seriesId} series is a {seriesType}.",separator:{middle:"",end:""}}},data:{allData:"The data is as follows: ",partialData:"The first {displayCnt} items are: ",withName:"the data for {name} is {value}",withoutName:"{value}",separator:{middle:", ",end:". "}}}}),Sc(vc,{time:{month:["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"],monthAbbr:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"],dayOfWeek:["星期日","星期一","星期二","星期三","星期四","星期五","星期六"],dayOfWeekAbbr:["日","一","二","三","四","五","六"]},legend:{selector:{all:"全选",inverse:"反选"}},toolbox:{brush:{title:{rect:"矩形选择",polygon:"圈选",lineX:"横向选择",lineY:"纵向选择",keep:"保持选择",clear:"清除选择"}},dataView:{title:"数据视图",lang:["数据视图","关闭","刷新"]},dataZoom:{title:{zoom:"区域缩放",back:"区域缩放还原"}},magicType:{title:{line:"切换为折线图",bar:"切换为柱状图",stack:"切换为堆叠",tiled:"切换为平铺"}},restore:{title:"还原"},saveAsImage:{title:"保存为图片",lang:["右键另存为图片"]}},series:{typeNames:{pie:"饼图",bar:"柱状图",line:"折线图",scatter:"散点图",effectScatter:"涟漪散点图",radar:"雷达图",tree:"树图",treemap:"矩形树图",boxplot:"箱型图",candlestick:"K线图",k:"K线图",heatmap:"热力图",map:"地图",parallel:"平行坐标图",lines:"线图",graph:"关系图",sankey:"桑基图",funnel:"漏斗图",gauge:"仪表盘图",pictorialBar:"象形柱图",themeRiver:"主题河流图",sunburst:"旭日图"}},aria:{general:{withTitle:"这是一个关于“{title}”的图表。",withoutTitle:"这是一个图表,"},series:{single:{prefix:"",withName:"图表类型是{seriesType},表示{seriesName}。",withoutName:"图表类型是{seriesType}。"},multiple:{prefix:"它由{seriesCount}个图表系列组成。",withName:"第{seriesId}个系列是一个表示{seriesName}的{seriesType},",withoutName:"第{seriesId}个系列是一个{seriesType},",separator:{middle:";",end:"。"}}},data:{allData:"其数据是——",partialData:"其中,前{displayCnt}项是——",withName:"{name}的数据是{value}",withoutName:"{value}",separator:{middle:",",end:""}}}});var Ic=1e3,Tc=6e4,Cc=36e5,Dc=864e5,Ac=31536e6,kc={year:"{yyyy}",month:"{MMM}",day:"{d}",hour:"{HH}:{mm}",minute:"{HH}:{mm}",second:"{HH}:{mm}:{ss}",millisecond:"{HH}:{mm}:{ss} {SSS}",none:"{yyyy}-{MM}-{dd} {HH}:{mm}:{ss} {SSS}"},Lc="{yyyy}-{MM}-{dd}",Pc={year:"{yyyy}",month:"{yyyy}-{MM}",day:Lc,hour:"{yyyy}-{MM}-{dd} "+kc.hour,minute:"{yyyy}-{MM}-{dd} "+kc.minute,second:"{yyyy}-{MM}-{dd} "+kc.second,millisecond:kc.none},Oc=["year","month","day","hour","minute","second","millisecond"],Rc=["year","half-year","quarter","month","week","half-week","day","half-day","quarter-day","hour","minute","second","millisecond"];function Nc(t,e){return"0000".substr(0,e-(t+="").length)+t}function Ec(t){switch(t){case"half-year":case"quarter":return"month";case"week":case"half-week":return"day";case"half-day":case"quarter-day":return"hour";default:return t}}function zc(t){return t===Ec(t)}function Vc(t,e,n,i){var r=jr(t),o=r[Gc(n)](),a=r[Wc(n)]()+1,s=Math.floor((a-1)/3)+1,l=r[Hc(n)](),u=r["get"+(n?"UTC":"")+"Day"](),h=r[Yc(n)](),c=(h-1)%12+1,p=r[Uc(n)](),d=r[Xc(n)](),f=r[Zc(n)](),g=(i instanceof dc?i:Mc(i||wc)||bc.EN).getModel("time"),y=g.get("month"),v=g.get("monthAbbr"),m=g.get("dayOfWeek"),x=g.get("dayOfWeekAbbr");return(e||"").replace(/{yyyy}/g,o+"").replace(/{yy}/g,o%100+"").replace(/{Q}/g,s+"").replace(/{MMMM}/g,y[a-1]).replace(/{MMM}/g,v[a-1]).replace(/{MM}/g,Nc(a,2)).replace(/{M}/g,a+"").replace(/{dd}/g,Nc(l,2)).replace(/{d}/g,l+"").replace(/{eeee}/g,m[u]).replace(/{ee}/g,x[u]).replace(/{e}/g,u+"").replace(/{HH}/g,Nc(h,2)).replace(/{H}/g,h+"").replace(/{hh}/g,Nc(c+"",2)).replace(/{h}/g,c+"").replace(/{mm}/g,Nc(p,2)).replace(/{m}/g,p+"").replace(/{ss}/g,Nc(d,2)).replace(/{s}/g,d+"").replace(/{SSS}/g,Nc(f,3)).replace(/{S}/g,f+"")}function Bc(t,e){var n=jr(t),i=n[Wc(e)]()+1,r=n[Hc(e)](),o=n[Yc(e)](),a=n[Uc(e)](),s=n[Xc(e)](),l=0===n[Zc(e)](),u=l&&0===s,h=u&&0===a,c=h&&0===o,p=c&&1===r;return p&&1===i?"year":p?"month":c?"day":h?"hour":u?"minute":l?"second":"millisecond"}function Fc(t,e,n){var i=j(t)?jr(t):t;switch(e=e||Bc(t,n)){case"year":return i[Gc(n)]();case"half-year":return i[Wc(n)]()>=6?1:0;case"quarter":return Math.floor((i[Wc(n)]()+1)/4);case"month":return i[Wc(n)]();case"day":return i[Hc(n)]();case"half-day":return i[Yc(n)]()/24;case"hour":return i[Yc(n)]();case"minute":return i[Uc(n)]();case"second":return i[Xc(n)]();case"millisecond":return i[Zc(n)]()}}function Gc(t){return t?"getUTCFullYear":"getFullYear"}function Wc(t){return t?"getUTCMonth":"getMonth"}function Hc(t){return t?"getUTCDate":"getDate"}function Yc(t){return t?"getUTCHours":"getHours"}function Uc(t){return t?"getUTCMinutes":"getMinutes"}function Xc(t){return t?"getUTCSeconds":"getSeconds"}function Zc(t){return t?"getUTCMilliseconds":"getMilliseconds"}function jc(t){return t?"setUTCFullYear":"setFullYear"}function qc(t){return t?"setUTCMonth":"setMonth"}function Kc(t){return t?"setUTCDate":"setDate"}function $c(t){return t?"setUTCHours":"setHours"}function Jc(t){return t?"setUTCMinutes":"setMinutes"}function Qc(t){return t?"setUTCSeconds":"setSeconds"}function tp(t){return t?"setUTCMilliseconds":"setMilliseconds"}function ep(t){if(!eo(t))return X(t)?t:"-";var e=(t+"").split(".");return e[0].replace(/(\d{1,3})(?=(?:\d{3})+(?!\d))/g,"$1,")+(e.length>1?"."+e[1]:"")}function np(t,e){return t=(t||"").toLowerCase().replace(/-(.)/g,(function(t,e){return e.toUpperCase()})),e&&t&&(t=t.charAt(0).toUpperCase()+t.slice(1)),t}var ip=st,rp=/([&<>"'])/g,op={"&":"&","<":"<",">":">",'"':""","'":"'"};function ap(t){return null==t?"":(t+"").replace(rp,(function(t,e){return op[e]}))}function sp(t,e,n){function i(t){return t&&ut(t)?t:"-"}function r(t){return!(null==t||isNaN(t)||!isFinite(t))}var o="time"===e,a=t instanceof Date;if(o||a){var s=o?jr(t):t;if(!isNaN(+s))return Vc(s,"{yyyy}-{MM}-{dd} {HH}:{mm}:{ss}",n);if(a)return"-"}if("ordinal"===e)return Z(t)?i(t):j(t)&&r(t)?t+"":"-";var l=to(t);return r(l)?ep(l):Z(t)?i(t):"boolean"==typeof t?t+"":"-"}var lp=["a","b","c","d","e","f","g"],up=function(t,e){return"{"+t+(null==e?"":e)+"}"};function hp(t,e,n){Y(e)||(e=[e]);var i=e.length;if(!i)return"";for(var r=e[0].$vars||[],o=0;o':'':{renderMode:o,content:"{"+(n.markerId||"markerX")+"|} ",style:"subItem"===r?{width:4,height:4,borderRadius:2,backgroundColor:i}:{width:10,height:10,borderRadius:5,backgroundColor:i}}:""}function pp(t,e){return e=e||"transparent",X(t)?t:q(t)&&t.colorStops&&(t.colorStops[0]||{}).color||e}function dp(t,e){if("_blank"===e||"blank"===e){var n=window.open();n.opener=null,n.location.href=t}else window.open(t,e)}var fp=E,gp=["left","right","top","bottom","width","height"],yp=[["width","left","right"],["height","top","bottom"]];function vp(t,e,n,i,r){var o=0,a=0;null==i&&(i=1/0),null==r&&(r=1/0);var s=0;e.eachChild((function(l,u){var h,c,p=l.getBoundingRect(),d=e.childAt(u+1),f=d&&d.getBoundingRect();if("horizontal"===t){var g=p.width+(f?-f.x+p.x:0);(h=o+g)>i||l.newline?(o=0,h=g,a+=s+n,s=p.height):s=Math.max(s,p.height)}else{var y=p.height+(f?-f.y+p.y:0);(c=a+y)>r||l.newline?(o+=s+n,a=0,c=y,s=p.width):s=Math.max(s,p.width)}l.newline||(l.x=o,l.y=a,l.markRedraw(),"horizontal"===t?o=h+n:a=c+n)}))}var mp=vp;H(vp,"vertical"),H(vp,"horizontal");function xp(t,e,n){n=ip(n||0);var i=e.width,r=e.height,o=Er(t.left,i),a=Er(t.top,r),s=Er(t.right,i),l=Er(t.bottom,r),u=Er(t.width,i),h=Er(t.height,r),c=n[2]+n[0],p=n[1]+n[3],d=t.aspect;switch(isNaN(u)&&(u=i-s-p-o),isNaN(h)&&(h=r-l-c-a),null!=d&&(isNaN(u)&&isNaN(h)&&(d>i/r?u=.8*i:h=.8*r),isNaN(u)&&(u=d*h),isNaN(h)&&(h=u/d)),isNaN(o)&&(o=i-s-u-p),isNaN(a)&&(a=r-l-h-c),t.left||t.right){case"center":o=i/2-u/2-n[3];break;case"right":o=i-u-p}switch(t.top||t.bottom){case"middle":case"center":a=r/2-h/2-n[0];break;case"bottom":a=r-h-c}o=o||0,a=a||0,isNaN(u)&&(u=i-p-o-(s||0)),isNaN(h)&&(h=r-c-a-(l||0));var f=new sr(o+n[3],a+n[0],u,h);return f.margin=n,f}function _p(t,e,n,i,r,o){var a,s=!r||!r.hv||r.hv[0],l=!r||!r.hv||r.hv[1],u=r&&r.boundingMode||"all";if((o=o||t).x=t.x,o.y=t.y,!s&&!l)return!1;if("raw"===u)a="group"===t.type?new sr(0,0,+e.width||0,+e.height||0):t.getBoundingRect();else if(a=t.getBoundingRect(),t.needLocalTransform()){var h=t.getLocalTransform();(a=a.clone()).applyTransform(h)}var c=xp(k({width:a.width,height:a.height},e),n,i),p=s?c.x-a.x:0,d=l?c.y-a.y:0;return"raw"===u?(o.x=p,o.y=d):(o.x+=p,o.y+=d),o===t&&t.markRedraw(),!0}function bp(t){var e=t.layoutMode||t.constructor.layoutMode;return q(e)?e:e?{type:e}:null}function wp(t,e,n){var i=n&&n.ignoreSize;!Y(i)&&(i=[i,i]);var r=a(yp[0],0),o=a(yp[1],1);function a(n,r){var o={},a=0,u={},h=0;if(fp(n,(function(e){u[e]=t[e]})),fp(n,(function(t){s(e,t)&&(o[t]=u[t]=e[t]),l(o,t)&&a++,l(u,t)&&h++})),i[r])return l(e,n[1])?u[n[2]]=null:l(e,n[2])&&(u[n[1]]=null),u;if(2!==h&&a){if(a>=2)return o;for(var c=0;c=0;a--)o=C(o,n[a],!0);e.defaultOption=o}return e.defaultOption},e.prototype.getReferringComponents=function(t,e){var n=t+"Index",i=t+"Id";return Ao(this.ecModel,t,{index:this.get(n,!0),id:this.get(i,!0)},e)},e.prototype.getBoxLayoutParams=function(){var t=this;return{left:t.get("left"),top:t.get("top"),right:t.get("right"),bottom:t.get("bottom"),width:t.get("width"),height:t.get("height")}},e.prototype.getZLevelKey=function(){return""},e.prototype.setZLevel=function(t){this.option.zlevel=t},e.protoInitialize=function(){var t=e.prototype;t.type="component",t.id="",t.name="",t.mainType="",t.subType="",t.componentIndex=0}(),e}(dc);zo(Tp,dc),Go(Tp),function(t){var e={};t.registerSubTypeDefaulter=function(t,n){var i=No(t);e[i.main]=n},t.determineSubType=function(n,i){var r=i.type;if(!r){var o=No(n).main;t.hasSubTypes(n)&&e[o]&&(r=e[o](i))}return r}}(Tp),function(t,e){function n(t,e){return t[e]||(t[e]={predecessor:[],successor:[]}),t[e]}t.topologicalTravel=function(t,i,r,o){if(t.length){var a=function(t){var i={},r=[];return E(t,(function(o){var a=n(i,o),s=function(t,e){var n=[];return E(t,(function(t){P(e,t)>=0&&n.push(t)})),n}(a.originalDeps=e(o),t);a.entryCount=s.length,0===a.entryCount&&r.push(o),E(s,(function(t){P(a.predecessor,t)<0&&a.predecessor.push(t);var e=n(i,t);P(e.successor,t)<0&&e.successor.push(o)}))})),{graph:i,noEntryList:r}}(i),s=a.graph,l=a.noEntryList,u={};for(E(t,(function(t){u[t]=!0}));l.length;){var h=l.pop(),c=s[h],p=!!u[h];p&&(r.call(o,h,c.originalDeps.slice()),delete u[h]),E(c.successor,p?f:d)}E(u,(function(){var t="";throw new Error(t)}))}function d(t){s[t].entryCount--,0===s[t].entryCount&&l.push(t)}function f(t){u[t]=!0,d(t)}}}(Tp,(function(t){var e=[];E(Tp.getClassesByMainType(t),(function(t){e=e.concat(t.dependencies||t.prototype.dependencies||[])})),e=z(e,(function(t){return No(t).main})),"dataset"!==t&&P(e,"dataset")<=0&&e.unshift("dataset");return e}));var Cp="";"undefined"!=typeof navigator&&(Cp=navigator.platform||"");var Dp="rgba(0, 0, 0, 0.2)",Ap={darkMode:"auto",colorBy:"series",color:["#5470c6","#91cc75","#fac858","#ee6666","#73c0de","#3ba272","#fc8452","#9a60b4","#ea7ccc"],gradientColor:["#f6efa6","#d88273","#bf444c"],aria:{decal:{decals:[{color:Dp,dashArrayX:[1,0],dashArrayY:[2,5],symbolSize:1,rotation:Math.PI/6},{color:Dp,symbol:"circle",dashArrayX:[[8,8],[0,8,8,0]],dashArrayY:[6,0],symbolSize:.8},{color:Dp,dashArrayX:[1,0],dashArrayY:[4,3],rotation:-Math.PI/4},{color:Dp,dashArrayX:[[6,6],[0,6,6,0]],dashArrayY:[6,0]},{color:Dp,dashArrayX:[[1,0],[1,6]],dashArrayY:[1,0,6,0],rotation:Math.PI/4},{color:Dp,symbol:"triangle",dashArrayX:[[9,9],[0,9,9,0]],dashArrayY:[7,2],symbolSize:.75}]}},textStyle:{fontFamily:Cp.match(/^Win/)?"Microsoft YaHei":"sans-serif",fontSize:12,fontStyle:"normal",fontWeight:"normal"},blendMode:null,stateAnimation:{duration:300,easing:"cubicOut"},animation:"auto",animationDuration:1e3,animationDurationUpdate:500,animationEasing:"cubicInOut",animationEasingUpdate:"cubicInOut",animationThreshold:2e3,progressiveThreshold:3e3,progressive:400,hoverLayerThreshold:3e3,useUTC:!1},kp=ft(["tooltip","label","itemName","itemId","itemGroupId","seriesName"]),Lp="original",Pp="arrayRows",Op="objectRows",Rp="keyedColumns",Np="typedArray",Ep="unknown",zp="column",Vp="row",Bp=1,Fp=2,Gp=3,Wp=So();function Hp(t,e,n){var i={},r=Up(e);if(!r||!t)return i;var o,a,s=[],l=[],u=e.ecModel,h=Wp(u).datasetMap,c=r.uid+"_"+n.seriesLayoutBy;E(t=t.slice(),(function(e,n){var r=q(e)?e:t[n]={name:e};"ordinal"===r.type&&null==o&&(o=n,a=f(r)),i[r.name]=[]}));var p=h.get(c)||h.set(c,{categoryWayDim:a,valueWayDim:0});function d(t,e,n){for(var i=0;ie)return t[i];return t[n-1]}(i,a):n;if((h=h||n)&&h.length){var c=h[l];return r&&(u[r]=c),s.paletteIdx=(l+1)%h.length,c}}var id=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.init=function(t,e,n,i,r,o){i=i||{},this.option=null,this._theme=new dc(i),this._locale=new dc(r),this._optionManager=o},e.prototype.setOption=function(t,e,n){var i=ad(e);this._optionManager.setOption(t,n,i),this._resetOption(null,i)},e.prototype.resetOption=function(t,e){return this._resetOption(t,ad(e))},e.prototype._resetOption=function(t,e){var n=!1,i=this._optionManager;if(!t||"recreate"===t){var r=i.mountOption("recreate"===t);0,this.option&&"recreate"!==t?(this.restoreData(),this._mergeOption(r,e)):$p(this,r),n=!0}if("timeline"!==t&&"media"!==t||this.restoreData(),!t||"recreate"===t||"timeline"===t){var o=i.getTimelineOption(this);o&&(n=!0,this._mergeOption(o,e))}if(!t||"recreate"===t||"media"===t){var a=i.getMediaOption(this);a.length&&E(a,(function(t){n=!0,this._mergeOption(t,e)}),this)}return n},e.prototype.mergeOption=function(t){this._mergeOption(t,null)},e.prototype._mergeOption=function(t,e){var n=this.option,i=this._componentsMap,r=this._componentsCount,o=[],a=ft(),s=e&&e.replaceMergeMainTypeMap;Wp(this).datasetMap=ft(),E(t,(function(t,e){null!=t&&(Tp.hasClass(e)?e&&(o.push(e),a.set(e,!0)):n[e]=null==n[e]?T(t):C(n[e],t,!0))})),s&&s.each((function(t,e){Tp.hasClass(e)&&!a.get(e)&&(o.push(e),a.set(e,!0))})),Tp.topologicalTravel(o,Tp.getAllClassMainTypes(),(function(e){var o=function(t,e,n){var i=jp.get(e);if(!i)return n;var r=i(t);return r?n.concat(r):n}(this,e,ho(t[e])),a=i.get(e),l=a?s&&s.get(e)?"replaceMerge":"normalMerge":"replaceAll",u=yo(a,o,l);(function(t,e,n){E(t,(function(t){var i=t.newOption;q(i)&&(t.keyInfo.mainType=e,t.keyInfo.subType=function(t,e,n,i){return e.type?e.type:n?n.subType:i.determineSubType(t,e)}(e,i,t.existing,n))}))})(u,e,Tp),n[e]=null,i.set(e,null),r.set(e,0);var h,c=[],p=[],d=0;E(u,(function(t,n){var i=t.existing,r=t.newOption;if(r){var o="series"===e,a=Tp.getClass(e,t.keyInfo.subType,!o);if(!a)return;if("tooltip"===e){if(h)return void 0;h=!0}if(i&&i.constructor===a)i.name=t.keyInfo.name,i.mergeOption(r,this),i.optionUpdated(r,!1);else{var s=A({componentIndex:n},t.keyInfo);A(i=new a(r,this,this,s),s),t.brandNew&&(i.__requireNewView=!0),i.init(r,this,this),i.optionUpdated(null,!0)}}else i&&(i.mergeOption({},this),i.optionUpdated({},!1));i?(c.push(i.option),p.push(i),d++):(c.push(void 0),p.push(void 0))}),this),n[e]=c,i.set(e,p),r.set(e,d),"series"===e&&qp(this)}),this),this._seriesIndices||qp(this)},e.prototype.getOption=function(){var t=T(this.option);return E(t,(function(e,n){if(Tp.hasClass(n)){for(var i=ho(e),r=i.length,o=!1,a=r-1;a>=0;a--)i[a]&&!bo(i[a])?o=!0:(i[a]=null,!o&&r--);i.length=r,t[n]=i}})),delete t["\0_ec_inner"],t},e.prototype.getTheme=function(){return this._theme},e.prototype.getLocaleModel=function(){return this._locale},e.prototype.setUpdatePayload=function(t){this._payload=t},e.prototype.getUpdatePayload=function(){return this._payload},e.prototype.getComponent=function(t,e){var n=this._componentsMap.get(t);if(n){var i=n[e||0];if(i)return i;if(null==e)for(var r=0;r=e:"max"===n?t<=e:t===e})(i[a],t,o)||(r=!1)}})),r}var fd=E,gd=q,yd=["areaStyle","lineStyle","nodeStyle","linkStyle","chordStyle","label","labelLine"];function vd(t){var e=t&&t.itemStyle;if(e)for(var n=0,i=yd.length;n=0;g--){var y=t[g];if(s||(p=y.data.rawIndexOf(y.stackedByDimension,c)),p>=0){var v=y.data.getByRawIndex(y.stackResultDimension,p);if("all"===l||"positive"===l&&v>0||"negative"===l&&v<0||"samesign"===l&&d>=0&&v>0||"samesign"===l&&d<=0&&v<0){d=Hr(d,v),f=v;break}}}return i[0]=d,i[1]=f,i}))}))}var Nd,Ed,zd,Vd,Bd,Fd=function(t){this.data=t.data||(t.sourceFormat===Rp?{}:[]),this.sourceFormat=t.sourceFormat||Ep,this.seriesLayoutBy=t.seriesLayoutBy||zp,this.startIndex=t.startIndex||0,this.dimensionsDetectedCount=t.dimensionsDetectedCount,this.metaRawOption=t.metaRawOption;var e=this.dimensionsDefine=t.dimensionsDefine;if(e)for(var n=0;nu&&(u=d)}s[0]=l,s[1]=u}},i=function(){return this._data?this._data.length/this._dimSize:0};function r(t){for(var e=0;e=0&&(s=o.interpolatedValue[l])}return null!=s?s+"":""})):void 0},t.prototype.getRawValue=function(t,e){return af(this.getData(e),t)},t.prototype.formatTooltip=function(t,e,n){},t}();function uf(t){var e,n;return q(t)?t.type&&(n=t):e=t,{text:e,frag:n}}function hf(t){return new cf(t)}var cf=function(){function t(t){t=t||{},this._reset=t.reset,this._plan=t.plan,this._count=t.count,this._onDirty=t.onDirty,this._dirty=!0}return t.prototype.perform=function(t){var e,n=this._upstream,i=t&&t.skip;if(this._dirty&&n){var r=this.context;r.data=r.outputData=n.context.outputData}this.__pipeline&&(this.__pipeline.currentTask=this),this._plan&&!i&&(e=this._plan(this.context));var o,a=h(this._modBy),s=this._modDataCount||0,l=h(t&&t.modBy),u=t&&t.modDataCount||0;function h(t){return!(t>=1)&&(t=1),t}a===l&&s===u||(e="reset"),(this._dirty||"reset"===e)&&(this._dirty=!1,o=this._doReset(i)),this._modBy=l,this._modDataCount=u;var c=t&&t.step;if(this._dueEnd=n?n._outputDueEnd:this._count?this._count(this.context):1/0,this._progress){var p=this._dueIndex,d=Math.min(null!=c?this._dueIndex+c:1/0,this._dueEnd);if(!i&&(o||p1&&i>0?s:a}};return o;function a(){return e=t?null:oe},gte:function(t,e){return t>=e}},vf=function(){function t(t,e){if(!j(e)){var n="";0,ao(n)}this._opFn=yf[t],this._rvalFloat=to(e)}return t.prototype.evaluate=function(t){return j(t)?this._opFn(t,this._rvalFloat):this._opFn(to(t),this._rvalFloat)},t}(),mf=function(){function t(t,e){var n="desc"===t;this._resultLT=n?1:-1,null==e&&(e=n?"min":"max"),this._incomparable="min"===e?-1/0:1/0}return t.prototype.evaluate=function(t,e){var n=j(t)?t:to(t),i=j(e)?e:to(e),r=isNaN(n),o=isNaN(i);if(r&&(n=this._incomparable),o&&(i=this._incomparable),r&&o){var a=X(t),s=X(e);a&&(n=s?t:0),s&&(i=a?e:0)}return ni?-this._resultLT:0},t}(),xf=function(){function t(t,e){this._rval=e,this._isEQ=t,this._rvalTypeof=typeof e,this._rvalFloat=to(e)}return t.prototype.evaluate=function(t){var e=t===this._rval;if(!e){var n=typeof t;n===this._rvalTypeof||"number"!==n&&"number"!==this._rvalTypeof||(e=to(t)===this._rvalFloat)}return this._isEQ?e:!e},t}();function _f(t,e){return"eq"===t||"ne"===t?new xf("eq"===t,e):mt(yf,t)?new vf(t,e):null}var bf=function(){function t(){}return t.prototype.getRawData=function(){throw new Error("not supported")},t.prototype.getRawDataItem=function(t){throw new Error("not supported")},t.prototype.cloneRawData=function(){},t.prototype.getDimensionInfo=function(t){},t.prototype.cloneAllDimensionInfo=function(){},t.prototype.count=function(){},t.prototype.retrieveValue=function(t,e){},t.prototype.retrieveValueFromItem=function(t,e){},t.prototype.convertValue=function(t,e){return df(t,e)},t}();function wf(t){var e=t.sourceFormat;if(!Df(e)){var n="";0,ao(n)}return t.data}function Sf(t){var e=t.sourceFormat,n=t.data;if(!Df(e)){var i="";0,ao(i)}if(e===Pp){for(var r=[],o=0,a=n.length;o65535?Lf:Pf}function zf(t,e,n,i,r){var o=Nf[n||"float"];if(r){var a=t[e],s=a&&a.length;if(s!==i){for(var l=new o(i),u=0;ug[1]&&(g[1]=f)}return this._rawCount=this._count=s,{start:a,end:s}},t.prototype._initDataFromProvider=function(t,e,n){for(var i=this._provider,r=this._chunks,o=this._dimensions,a=o.length,s=this._rawExtent,l=z(o,(function(t){return t.property})),u=0;uy[1]&&(y[1]=g)}}!i.persistent&&i.clean&&i.clean(),this._rawCount=this._count=e,this._extent=[]},t.prototype.count=function(){return this._count},t.prototype.get=function(t,e){if(!(e>=0&&e=0&&e=this._rawCount||t<0)return-1;if(!this._indices)return t;var e=this._indices,n=e[t];if(null!=n&&nt))return o;r=o-1}}return-1},t.prototype.indicesOfNearest=function(t,e,n){var i=this._chunks[t],r=[];if(!i)return r;null==n&&(n=1/0);for(var o=1/0,a=-1,s=0,l=0,u=this.count();l=0&&a<0)&&(o=c,a=h,s=0),h===a&&(r[s++]=l))}return r.length=s,r},t.prototype.getIndices=function(){var t,e=this._indices;if(e){var n=e.constructor,i=this._count;if(n===Array){t=new n(i);for(var r=0;r=u&&x<=h||isNaN(x))&&(a[s++]=d),d++}p=!0}else if(2===r){f=c[i[0]];var y=c[i[1]],v=t[i[1]][0],m=t[i[1]][1];for(g=0;g=u&&x<=h||isNaN(x))&&(_>=v&&_<=m||isNaN(_))&&(a[s++]=d),d++}p=!0}}if(!p)if(1===r)for(g=0;g=u&&x<=h||isNaN(x))&&(a[s++]=b)}else for(g=0;gt[M][1])&&(w=!1)}w&&(a[s++]=e.getRawIndex(g))}return sy[1]&&(y[1]=g)}}}},t.prototype.lttbDownSample=function(t,e){var n,i,r,o=this.clone([t],!0),a=o._chunks[t],s=this.count(),l=0,u=Math.floor(1/e),h=this.getRawIndex(0),c=new(Ef(this._rawCount))(Math.min(2*(Math.ceil(s/u)+2),s));c[l++]=h;for(var p=1;pn&&(n=i,r=I)}M>0&&M<_-x&&(c[l++]=Math.min(S,r),r=Math.max(S,r)),c[l++]=r,h=r}return c[l++]=this.getRawIndex(s-1),o._count=l,o._indices=c,o.getRawIndex=this._getRawIdx,o},t.prototype.downSample=function(t,e,n,i){for(var r=this.clone([t],!0),o=r._chunks,a=[],s=Math.floor(1/e),l=o[t],u=this.count(),h=r._rawExtent[t]=[1/0,-1/0],c=new(Ef(this._rawCount))(Math.ceil(u/s)),p=0,d=0;du-d&&(s=u-d,a.length=s);for(var f=0;fh[1]&&(h[1]=y),c[p++]=v}return r._count=p,r._indices=c,r._updateGetRawIdx(),r},t.prototype.each=function(t,e){if(this._count)for(var n=t.length,i=this._chunks,r=0,o=this.count();ra&&(a=l)}return i=[o,a],this._extent[t]=i,i},t.prototype.getRawDataItem=function(t){var e=this.getRawIndex(t);if(this._provider.persistent)return this._provider.getItem(e);for(var n=[],i=this._chunks,r=0;r=0?this._indices[t]:-1},t.prototype._updateGetRawIdx=function(){this.getRawIndex=this._indices?this._getRawIdx:this._getRawIdxIdentity},t.internalField=function(){function t(t,e,n,i){return df(t[i],this._dimensions[i])}Af={arrayRows:t,objectRows:function(t,e,n,i){return df(t[e],this._dimensions[i])},keyedColumns:t,original:function(t,e,n,i){var r=t&&(null==t.value?t:t.value);return df(r instanceof Array?r[i]:r,this._dimensions[i])},typedArray:function(t,e,n,i){return t[i]}}}(),t}(),Bf=function(){function t(t){this._sourceList=[],this._storeList=[],this._upstreamSignList=[],this._versionSignBase=0,this._dirty=!0,this._sourceHost=t}return t.prototype.dirty=function(){this._setLocalSource([],[]),this._storeList=[],this._dirty=!0},t.prototype._setLocalSource=function(t,e){this._sourceList=t,this._upstreamSignList=e,this._versionSignBase++,this._versionSignBase>9e10&&(this._versionSignBase=0)},t.prototype._getVersionSign=function(){return this._sourceHost.uid+"_"+this._versionSignBase},t.prototype.prepareSource=function(){this._isDirty()&&(this._createSource(),this._dirty=!1)},t.prototype._createSource=function(){this._setLocalSource([],[]);var t,e,n=this._sourceHost,i=this._getUpstreamSourceManagers(),r=!!i.length;if(Gf(n)){var o=n,a=void 0,s=void 0,l=void 0;if(r){var u=i[0];u.prepareSource(),a=(l=u.getSource()).data,s=l.sourceFormat,e=[u._getVersionSign()]}else s=$(a=o.get("data",!0))?Np:Lp,e=[];var h=this._getSourceMetaRawOption()||{},c=l&&l.metaRawOption||{},p=rt(h.seriesLayoutBy,c.seriesLayoutBy)||null,d=rt(h.sourceHeader,c.sourceHeader),f=rt(h.dimensions,c.dimensions);t=p!==c.seriesLayoutBy||!!d!=!!c.sourceHeader||f?[Wd(a,{seriesLayoutBy:p,sourceHeader:d,dimensions:f},s)]:[]}else{var g=n;if(r){var y=this._applyTransform(i);t=y.sourceList,e=y.upstreamSignList}else{t=[Wd(g.get("source",!0),this._getSourceMetaRawOption(),null)],e=[]}}this._setLocalSource(t,e)},t.prototype._applyTransform=function(t){var e,n=this._sourceHost,i=n.get("transform",!0),r=n.get("fromTransformResult",!0);if(null!=r){var o="";1!==t.length&&Wf(o)}var a,s=[],l=[];return E(t,(function(t){t.prepareSource();var e=t.getSource(r||0),n="";null==r||e||Wf(n),s.push(e),l.push(t._getVersionSign())})),i?e=function(t,e,n){var i=ho(t),r=i.length,o="";r||ao(o);for(var a=0,s=r;a1||n>0&&!t.noHeader;return E(t.blocks,(function(t){var n=qf(t);n>=e&&(e=n+ +(i&&(!n||Zf(t)&&!t.noHeader)))})),e}return 0}function Kf(t,e,n,i){var r,o=e.noHeader,a=(r=qf(e),{html:Yf[r],richText:Uf[r]}),s=[],l=e.blocks||[];lt(!l||Y(l)),l=l||[];var u=t.orderMode;if(e.sortBlocks&&u){l=l.slice();var h={valueAsc:"asc",valueDesc:"desc"};if(mt(h,u)){var c=new mf(h[u],null);l.sort((function(t,e){return c.evaluate(t.sortParam,e.sortParam)}))}else"seriesDesc"===u&&l.reverse()}E(l,(function(n,r){var o=e.valueFormatter,l=jf(n)(o?A(A({},t),{valueFormatter:o}):t,n,r>0?a.html:0,i);null!=l&&s.push(l)}));var p="richText"===t.renderMode?s.join(a.richText):Qf(s.join(""),o?n:a.html);if(o)return p;var d=sp(e.header,"ordinal",t.useUTC),f=Hf(i,t.renderMode).nameStyle;return"richText"===t.renderMode?tg(t,d,f)+a.richText+p:Qf('
'+ap(d)+"
"+p,n)}function $f(t,e,n,i){var r=t.renderMode,o=e.noName,a=e.noValue,s=!e.markerType,l=e.name,u=t.useUTC,h=e.valueFormatter||t.valueFormatter||function(t){return z(t=Y(t)?t:[t],(function(t,e){return sp(t,Y(d)?d[e]:d,u)}))};if(!o||!a){var c=s?"":t.markupStyleCreator.makeTooltipMarker(e.markerType,e.markerColor||"#333",r),p=o?"":sp(l,"ordinal",u),d=e.valueType,f=a?[]:h(e.value),g=!s||!o,y=!s&&o,v=Hf(i,r),m=v.nameStyle,x=v.valueStyle;return"richText"===r?(s?"":c)+(o?"":tg(t,p,m))+(a?"":function(t,e,n,i,r){var o=[r],a=i?10:20;return n&&o.push({padding:[0,0,0,a],align:"right"}),t.markupStyleCreator.wrapRichTextStyle(Y(e)?e.join(" "):e,o)}(t,f,g,y,x)):Qf((s?"":c)+(o?"":function(t,e,n){return''+ap(t)+""}(p,!s,m))+(a?"":function(t,e,n,i){var r=n?"10px":"20px",o=e?"float:right;margin-left:"+r:"";return t=Y(t)?t:[t],''+z(t,(function(t){return ap(t)})).join("  ")+""}(f,g,y,x)),n)}}function Jf(t,e,n,i,r,o){if(t)return jf(t)({useUTC:r,renderMode:n,orderMode:i,markupStyleCreator:e,valueFormatter:t.valueFormatter},t,0,o)}function Qf(t,e){return'
'+t+'
'}function tg(t,e,n){return t.markupStyleCreator.wrapRichTextStyle(e,n)}function eg(t,e){return pp(t.getData().getItemVisual(e,"style")[t.visualDrawType])}function ng(t,e){var n=t.get("padding");return null!=n?n:"richText"===e?[8,10]:10}var ig=function(){function t(){this.richTextStyles={},this._nextStyleNameId=no()}return t.prototype._generateStyleName=function(){return"__EC_aUTo_"+this._nextStyleNameId++},t.prototype.makeTooltipMarker=function(t,e,n){var i="richText"===n?this._generateStyleName():null,r=cp({color:e,type:t,renderMode:n,markerId:i});return X(r)?r:(this.richTextStyles[i]=r.style,r.content)},t.prototype.wrapRichTextStyle=function(t,e){var n={};Y(e)?E(e,(function(t){return A(n,t)})):A(n,e);var i=this._generateStyleName();return this.richTextStyles[i]=n,"{"+i+"|"+t+"}"},t}();function rg(t){var e,n,i,r,o=t.series,a=t.dataIndex,s=t.multipleSeries,l=o.getData(),u=l.mapDimensionsAll("defaultedTooltip"),h=u.length,c=o.getRawValue(a),p=Y(c),d=eg(o,a);if(h>1||p&&!h){var f=function(t,e,n,i,r){var o=e.getData(),a=V(t,(function(t,e,n){var i=o.getDimensionInfo(n);return t||i&&!1!==i.tooltip&&null!=i.displayName}),!1),s=[],l=[],u=[];function h(t,e){var n=o.getDimensionInfo(e);n&&!1!==n.otherDims.tooltip&&(a?u.push(Xf("nameValue",{markerType:"subItem",markerColor:r,name:n.displayName,value:t,valueType:n.type})):(s.push(t),l.push(n.type)))}return i.length?E(i,(function(t){h(af(o,n,t),t)})):E(t,h),{inlineValues:s,inlineValueTypes:l,blocks:u}}(c,o,a,u,d);e=f.inlineValues,n=f.inlineValueTypes,i=f.blocks,r=f.inlineValues[0]}else if(h){var g=l.getDimensionInfo(u[0]);r=e=af(l,a,u[0]),n=g.type}else r=e=p?c[0]:c;var y=_o(o),v=y&&o.name||"",m=l.getName(a),x=s?v:m;return Xf("section",{header:v,noHeader:s||!y,sortParam:r,blocks:[Xf("nameValue",{markerType:"item",markerColor:d,name:x,noName:!ut(x),value:e,valueType:n})].concat(i||[])})}var og=So();function ag(t,e){return t.getName(e)||t.getId(e)}var sg=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e._selectedDataIndicesMap={},e}return n(e,t),e.prototype.init=function(t,e,n){this.seriesIndex=this.componentIndex,this.dataTask=hf({count:ug,reset:hg}),this.dataTask.context={model:this},this.mergeDefaultAndTheme(t,n),(og(this).sourceManager=new Bf(this)).prepareSource();var i=this.getInitialData(t,n);pg(i,this),this.dataTask.context.data=i,og(this).dataBeforeProcessed=i,lg(this),this._initSelectedMapFromData(i)},e.prototype.mergeDefaultAndTheme=function(t,e){var n=bp(this),i=n?Sp(t):{},r=this.subType;Tp.hasClass(r)&&(r+="Series"),C(t,e.getTheme().get(this.subType)),C(t,this.getDefaultOption()),co(t,"label",["show"]),this.fillDataTextStyle(t.data),n&&wp(t,i,n)},e.prototype.mergeOption=function(t,e){t=C(this.option,t,!0),this.fillDataTextStyle(t.data);var n=bp(this);n&&wp(this.option,t,n);var i=og(this).sourceManager;i.dirty(),i.prepareSource();var r=this.getInitialData(t,e);pg(r,this),this.dataTask.dirty(),this.dataTask.context.data=r,og(this).dataBeforeProcessed=r,lg(this),this._initSelectedMapFromData(r)},e.prototype.fillDataTextStyle=function(t){if(t&&!$(t))for(var e=["show"],n=0;nthis.getShallow("animationThreshold")&&(e=!1),!!e},e.prototype.restoreData=function(){this.dataTask.dirty()},e.prototype.getColorFromPalette=function(t,e,n){var i=this.ecModel,r=td.prototype.getColorFromPalette.call(this,t,e,n);return r||(r=i.getColorFromPalette(t,e,n)),r},e.prototype.coordDimToDataDim=function(t){return this.getRawData().mapDimensionsAll(t)},e.prototype.getProgressive=function(){return this.get("progressive")},e.prototype.getProgressiveThreshold=function(){return this.get("progressiveThreshold")},e.prototype.select=function(t,e){this._innerSelect(this.getData(e),t)},e.prototype.unselect=function(t,e){var n=this.option.selectedMap;if(n){var i=this.option.selectedMode,r=this.getData(e);if("series"===i||"all"===n)return this.option.selectedMap={},void(this._selectedDataIndicesMap={});for(var o=0;o=0&&n.push(r)}return n},e.prototype.isSelected=function(t,e){var n=this.option.selectedMap;if(!n)return!1;var i=this.getData(e);return("all"===n||n[ag(i,t)])&&!i.getItemModel(t).get(["select","disabled"])},e.prototype.isUniversalTransitionEnabled=function(){if(this.__universalTransitionEnabled)return!0;var t=this.option.universalTransition;return!!t&&(!0===t||t&&t.enabled)},e.prototype._innerSelect=function(t,e){var n,i,r=this.option,o=r.selectedMode,a=e.length;if(o&&a)if("series"===o)r.selectedMap="all";else if("multiple"===o){q(r.selectedMap)||(r.selectedMap={});for(var s=r.selectedMap,l=0;l0&&this._innerSelect(t,e)}},e.registerClass=function(t){return Tp.registerClass(t)},e.protoInitialize=function(){var t=e.prototype;t.type="series.__base__",t.seriesIndex=0,t.ignoreStyleOnData=!1,t.hasSymbolVisual=!1,t.defaultSymbol="circle",t.visualStyleAccessPath="itemStyle",t.visualDrawType="fill"}(),e}(Tp);function lg(t){var e=t.name;_o(t)||(t.name=function(t){var e=t.getRawData(),n=e.mapDimensionsAll("seriesName"),i=[];return E(n,(function(t){var n=e.getDimensionInfo(t);n.displayName&&i.push(n.displayName)})),i.join(" ")}(t)||e)}function ug(t){return t.model.getRawData().count()}function hg(t){var e=t.model;return e.setData(e.getRawData().cloneShallow()),cg}function cg(t,e){e.outputData&&t.end>e.outputData.count()&&e.model.getRawData().cloneShallow(e.outputData)}function pg(t,e){E(gt(t.CHANGABLE_METHODS,t.DOWNSAMPLE_METHODS),(function(n){t.wrapMethod(n,H(dg,e))}))}function dg(t,e){var n=fg(t);return n&&n.setOutputEnd((e||this).count()),e}function fg(t){var e=(t.ecModel||{}).scheduler,n=e&&e.getPipeline(t.uid);if(n){var i=n.currentTask;if(i){var r=i.agentStubMap;r&&(i=r.get(t.uid))}return i}}R(sg,lf),R(sg,td),zo(sg,Tp);var gg=function(){function t(){this.group=new Cr,this.uid=gc("viewComponent")}return t.prototype.init=function(t,e){},t.prototype.render=function(t,e,n,i){},t.prototype.dispose=function(t,e){},t.prototype.updateView=function(t,e,n,i){},t.prototype.updateLayout=function(t,e,n,i){},t.prototype.updateVisual=function(t,e,n,i){},t.prototype.toggleBlurSeries=function(t,e,n){},t.prototype.eachRendered=function(t){var e=this.group;e&&e.traverse(t)},t}();function yg(){var t=So();return function(e){var n=t(e),i=e.pipelineContext,r=!!n.large,o=!!n.progressiveRender,a=n.large=!(!i||!i.large),s=n.progressiveRender=!(!i||!i.progressiveRender);return!(r===a&&o===s)&&"reset"}}Eo(gg),Go(gg);var vg=So(),mg=yg(),xg=function(){function t(){this.group=new Cr,this.uid=gc("viewChart"),this.renderTask=hf({plan:wg,reset:Sg}),this.renderTask.context={view:this}}return t.prototype.init=function(t,e){},t.prototype.render=function(t,e,n,i){0},t.prototype.highlight=function(t,e,n,i){var r=t.getData(i&&i.dataType);r&&bg(r,i,"emphasis")},t.prototype.downplay=function(t,e,n,i){var r=t.getData(i&&i.dataType);r&&bg(r,i,"normal")},t.prototype.remove=function(t,e){this.group.removeAll()},t.prototype.dispose=function(t,e){},t.prototype.updateView=function(t,e,n,i){this.render(t,e,n,i)},t.prototype.updateLayout=function(t,e,n,i){this.render(t,e,n,i)},t.prototype.updateVisual=function(t,e,n,i){this.render(t,e,n,i)},t.prototype.eachRendered=function(t){Vh(this.group,t)},t.markUpdateMethod=function(t,e){vg(t).updateMethod=e},t.protoInitialize=void(t.prototype.type="chart"),t}();function _g(t,e,n){t&&Fl(t)&&("emphasis"===e?_l:bl)(t,n)}function bg(t,e,n){var i=wo(t,e),r=e&&null!=e.highlightKey?function(t){var e=Xs[t];return null==e&&Us<=32&&(e=Xs[t]=Us++),e}(e.highlightKey):null;null!=i?E(ho(i),(function(e){_g(t.getItemGraphicEl(e),n,r)})):t.eachItemGraphicEl((function(t){_g(t,n,r)}))}function wg(t){return mg(t.model)}function Sg(t){var e=t.model,n=t.ecModel,i=t.api,r=t.payload,o=e.pipelineContext.progressiveRender,a=t.view,s=r&&vg(r).updateMethod,l=o?"incrementalPrepareRender":s&&a[s]?s:"render";return"render"!==l&&a[l](e,n,i,r),Mg[l]}Eo(xg),Go(xg);var Mg={incrementalPrepareRender:{progress:function(t,e){e.view.incrementalRender(t,e.model,e.ecModel,e.api,e.payload)}},render:{forceFirstProgress:!0,progress:function(t,e){e.view.render(e.model,e.ecModel,e.api,e.payload)}}},Ig="\0__throttleOriginMethod",Tg="\0__throttleRate",Cg="\0__throttleType";function Dg(t,e,n){var i,r,o,a,s,l=0,u=0,h=null;function c(){u=(new Date).getTime(),h=null,t.apply(o,a||[])}e=e||0;var p=function(){for(var t=[],p=0;p=0?c():h=setTimeout(c,-r),l=i};return p.clear=function(){h&&(clearTimeout(h),h=null)},p.debounceNextCall=function(t){s=t},p}function Ag(t,e,n,i){var r=t[e];if(r){var o=r[Ig]||r,a=r[Cg];if(r[Tg]!==n||a!==i){if(null==n||!i)return t[e]=o;(r=t[e]=Dg(o,n,"debounce"===i))[Ig]=o,r[Cg]=i,r[Tg]=n}return r}}function kg(t,e){var n=t[e];n&&n[Ig]&&(n.clear&&n.clear(),t[e]=n[Ig])}var Lg=So(),Pg={itemStyle:Wo(hc,!0),lineStyle:Wo(sc,!0)},Og={lineStyle:"stroke",itemStyle:"fill"};function Rg(t,e){var n=t.visualStyleMapper||Pg[e];return n||(console.warn("Unkown style type '"+e+"'."),Pg.itemStyle)}function Ng(t,e){var n=t.visualDrawType||Og[e];return n||(console.warn("Unkown style type '"+e+"'."),"fill")}var Eg={createOnAllSeries:!0,performRawSeries:!0,reset:function(t,e){var n=t.getData(),i=t.visualStyleAccessPath||"itemStyle",r=t.getModel(i),o=Rg(t,i)(r),a=r.getShallow("decal");a&&(n.setVisual("decal",a),a.dirty=!0);var s=Ng(t,i),l=o[s],u=U(l)?l:null,h="auto"===o.fill||"auto"===o.stroke;if(!o[s]||u||h){var c=t.getColorFromPalette(t.name,null,e.getSeriesCount());o[s]||(o[s]=c,n.setVisual("colorFromPalette",!0)),o.fill="auto"===o.fill||U(o.fill)?c:o.fill,o.stroke="auto"===o.stroke||U(o.stroke)?c:o.stroke}if(n.setVisual("style",o),n.setVisual("drawType",s),!e.isSeriesFiltered(t)&&u)return n.setVisual("colorFromPalette",!1),{dataEach:function(e,n){var i=t.getDataParams(n),r=A({},o);r[s]=u(i),e.setItemVisual(n,"style",r)}}}},zg=new dc,Vg={createOnAllSeries:!0,performRawSeries:!0,reset:function(t,e){if(!t.ignoreStyleOnData&&!e.isSeriesFiltered(t)){var n=t.getData(),i=t.visualStyleAccessPath||"itemStyle",r=Rg(t,i),o=n.getVisual("drawType");return{dataEach:n.hasItemOption?function(t,e){var n=t.getRawDataItem(e);if(n&&n[i]){zg.option=n[i];var a=r(zg);A(t.ensureUniqueItemVisual(e,"style"),a),zg.option.decal&&(t.setItemVisual(e,"decal",zg.option.decal),zg.option.decal.dirty=!0),o in a&&t.setItemVisual(e,"colorFromPalette",!1)}}:null}}}},Bg={performRawSeries:!0,overallReset:function(t){var e=ft();t.eachSeries((function(t){var n=t.getColorBy();if(!t.isColorBySeries()){var i=t.type+"-"+n,r=e.get(i);r||(r={},e.set(i,r)),Lg(t).scope=r}})),t.eachSeries((function(e){if(!e.isColorBySeries()&&!t.isSeriesFiltered(e)){var n=e.getRawData(),i={},r=e.getData(),o=Lg(e).scope,a=e.visualStyleAccessPath||"itemStyle",s=Ng(e,a);r.each((function(t){var e=r.getRawIndex(t);i[e]=t})),n.each((function(t){var a=i[t];if(r.getItemVisual(a,"colorFromPalette")){var l=r.ensureUniqueItemVisual(a,"style"),u=n.getName(t)||t+"",h=n.count();l[s]=e.getColorFromPalette(u,o,h)}}))}}))}},Fg=Math.PI;var Gg=function(){function t(t,e,n,i){this._stageTaskMap=ft(),this.ecInstance=t,this.api=e,n=this._dataProcessorHandlers=n.slice(),i=this._visualHandlers=i.slice(),this._allHandlers=n.concat(i)}return t.prototype.restoreData=function(t,e){t.restoreData(e),this._stageTaskMap.each((function(t){var e=t.overallTask;e&&e.dirty()}))},t.prototype.getPerformArgs=function(t,e){if(t.__pipeline){var n=this._pipelineMap.get(t.__pipeline.id),i=n.context,r=!e&&n.progressiveEnabled&&(!i||i.progressiveRender)&&t.__idxInPipeline>n.blockIndex?n.step:null,o=i&&i.modDataCount;return{step:r,modBy:null!=o?Math.ceil(o/r):null,modDataCount:o}}},t.prototype.getPipeline=function(t){return this._pipelineMap.get(t)},t.prototype.updateStreamModes=function(t,e){var n=this._pipelineMap.get(t.uid),i=t.getData().count(),r=n.progressiveEnabled&&e.incrementalPrepareRender&&i>=n.threshold,o=t.get("large")&&i>=t.get("largeThreshold"),a="mod"===t.get("progressiveChunkMode")?i:null;t.pipelineContext=n.context={progressiveRender:r,modDataCount:a,large:o}},t.prototype.restorePipelines=function(t){var e=this,n=e._pipelineMap=ft();t.eachSeries((function(t){var i=t.getProgressive(),r=t.uid;n.set(r,{id:r,head:null,tail:null,threshold:t.getProgressiveThreshold(),progressiveEnabled:i&&!(t.preventIncremental&&t.preventIncremental()),blockIndex:-1,step:Math.round(i||700),count:0}),e._pipe(t,t.dataTask)}))},t.prototype.prepareStageTasks=function(){var t=this._stageTaskMap,e=this.api.getModel(),n=this.api;E(this._allHandlers,(function(i){var r=t.get(i.uid)||t.set(i.uid,{}),o="";lt(!(i.reset&&i.overallReset),o),i.reset&&this._createSeriesStageTask(i,r,e,n),i.overallReset&&this._createOverallStageTask(i,r,e,n)}),this)},t.prototype.prepareView=function(t,e,n,i){var r=t.renderTask,o=r.context;o.model=e,o.ecModel=n,o.api=i,r.__block=!t.incrementalPrepareRender,this._pipe(e,r)},t.prototype.performDataProcessorTasks=function(t,e){this._performStageTasks(this._dataProcessorHandlers,t,e,{block:!0})},t.prototype.performVisualTasks=function(t,e,n){this._performStageTasks(this._visualHandlers,t,e,n)},t.prototype._performStageTasks=function(t,e,n,i){i=i||{};var r=!1,o=this;function a(t,e){return t.setDirty&&(!t.dirtyMap||t.dirtyMap.get(e.__pipeline.id))}E(t,(function(t,s){if(!i.visualType||i.visualType===t.visualType){var l=o._stageTaskMap.get(t.uid),u=l.seriesTaskMap,h=l.overallTask;if(h){var c,p=h.agentStubMap;p.each((function(t){a(i,t)&&(t.dirty(),c=!0)})),c&&h.dirty(),o.updatePayload(h,n);var d=o.getPerformArgs(h,i.block);p.each((function(t){t.perform(d)})),h.perform(d)&&(r=!0)}else u&&u.each((function(s,l){a(i,s)&&s.dirty();var u=o.getPerformArgs(s,i.block);u.skip=!t.performRawSeries&&e.isSeriesFiltered(s.context.model),o.updatePayload(s,n),s.perform(u)&&(r=!0)}))}})),this.unfinished=r||this.unfinished},t.prototype.performSeriesTasks=function(t){var e;t.eachSeries((function(t){e=t.dataTask.perform()||e})),this.unfinished=e||this.unfinished},t.prototype.plan=function(){this._pipelineMap.each((function(t){var e=t.tail;do{if(e.__block){t.blockIndex=e.__idxInPipeline;break}e=e.getUpstream()}while(e)}))},t.prototype.updatePayload=function(t,e){"remain"!==e&&(t.context.payload=e)},t.prototype._createSeriesStageTask=function(t,e,n,i){var r=this,o=e.seriesTaskMap,a=e.seriesTaskMap=ft(),s=t.seriesType,l=t.getTargetSeries;function u(e){var s=e.uid,l=a.set(s,o&&o.get(s)||hf({plan:Xg,reset:Zg,count:Kg}));l.context={model:e,ecModel:n,api:i,useClearVisual:t.isVisual&&!t.isLayout,plan:t.plan,reset:t.reset,scheduler:r},r._pipe(e,l)}t.createOnAllSeries?n.eachRawSeries(u):s?n.eachRawSeriesByType(s,u):l&&l(n,i).each(u)},t.prototype._createOverallStageTask=function(t,e,n,i){var r=this,o=e.overallTask=e.overallTask||hf({reset:Wg});o.context={ecModel:n,api:i,overallReset:t.overallReset,scheduler:r};var a=o.agentStubMap,s=o.agentStubMap=ft(),l=t.seriesType,u=t.getTargetSeries,h=!0,c=!1,p="";function d(t){var e=t.uid,n=s.set(e,a&&a.get(e)||(c=!0,hf({reset:Hg,onDirty:Ug})));n.context={model:t,overallProgress:h},n.agent=o,n.__block=h,r._pipe(t,n)}lt(!t.createOnAllSeries,p),l?n.eachRawSeriesByType(l,d):u?u(n,i).each(d):(h=!1,E(n.getSeries(),d)),c&&o.dirty()},t.prototype._pipe=function(t,e){var n=t.uid,i=this._pipelineMap.get(n);!i.head&&(i.head=e),i.tail&&i.tail.pipe(e),i.tail=e,e.__idxInPipeline=i.count++,e.__pipeline=i},t.wrapStageHandler=function(t,e){return U(t)&&(t={overallReset:t,seriesType:$g(t)}),t.uid=gc("stageHandler"),e&&(t.visualType=e),t},t}();function Wg(t){t.overallReset(t.ecModel,t.api,t.payload)}function Hg(t){return t.overallProgress&&Yg}function Yg(){this.agent.dirty(),this.getDownstream().dirty()}function Ug(){this.agent&&this.agent.dirty()}function Xg(t){return t.plan?t.plan(t.model,t.ecModel,t.api,t.payload):null}function Zg(t){t.useClearVisual&&t.data.clearAllVisual();var e=t.resetDefines=ho(t.reset(t.model,t.ecModel,t.api,t.payload));return e.length>1?z(e,(function(t,e){return qg(e)})):jg}var jg=qg(0);function qg(t){return function(e,n){var i=n.data,r=n.resetDefines[t];if(r&&r.dataEach)for(var o=e.start;o0&&h===r.length-u.length){var c=r.slice(0,h);"data"!==c&&(e.mainType=c,e[u.toLowerCase()]=t,s=!0)}}a.hasOwnProperty(r)&&(n[r]=t,s=!0),s||(i[r]=t)}))}return{cptQuery:e,dataQuery:n,otherQuery:i}},t.prototype.filter=function(t,e){var n=this.eventInfo;if(!n)return!0;var i=n.targetEl,r=n.packedEvent,o=n.model,a=n.view;if(!o||!a)return!0;var s=e.cptQuery,l=e.dataQuery;return u(s,o,"mainType")&&u(s,o,"subType")&&u(s,o,"index","componentIndex")&&u(s,o,"name")&&u(s,o,"id")&&u(l,r,"name")&&u(l,r,"dataIndex")&&u(l,r,"dataType")&&(!a.filterForExposedEvent||a.filterForExposedEvent(t,e.otherQuery,i,r));function u(t,e,n,i){return null==t[n]||e[i||n]===t[n]}},t.prototype.afterTrigger=function(){this.eventInfo=null},t}(),hy=["symbol","symbolSize","symbolRotate","symbolOffset"],cy=hy.concat(["symbolKeepAspect"]),py={createOnAllSeries:!0,performRawSeries:!0,reset:function(t,e){var n=t.getData();if(t.legendIcon&&n.setVisual("legendIcon",t.legendIcon),t.hasSymbolVisual){for(var i={},r={},o=!1,a=0;a=0&&Ry(l)?l:.5,t.createRadialGradient(a,s,0,a,s,l)}(t,e,n):function(t,e,n){var i=null==e.x?0:e.x,r=null==e.x2?1:e.x2,o=null==e.y?0:e.y,a=null==e.y2?0:e.y2;return e.global||(i=i*n.width+n.x,r=r*n.width+n.x,o=o*n.height+n.y,a=a*n.height+n.y),i=Ry(i)?i:0,r=Ry(r)?r:1,o=Ry(o)?o:0,a=Ry(a)?a:0,t.createLinearGradient(i,o,r,a)}(t,e,n),r=e.colorStops,o=0;o0&&(e=i.lineDash,n=i.lineWidth,e&&"solid"!==e&&n>0?"dashed"===e?[4*n,2*n]:"dotted"===e?[n]:j(e)?[e]:Y(e)?e:null:null),o=i.lineDashOffset;if(r){var a=i.strokeNoScale&&t.getLineScale?t.getLineScale():1;a&&1!==a&&(r=z(r,(function(t){return t/a})),o/=a)}return[r,o]}var By=new qa(!0);function Fy(t){var e=t.stroke;return!(null==e||"none"===e||!(t.lineWidth>0))}function Gy(t){return"string"==typeof t&&"none"!==t}function Wy(t){var e=t.fill;return null!=e&&"none"!==e}function Hy(t,e){if(null!=e.fillOpacity&&1!==e.fillOpacity){var n=t.globalAlpha;t.globalAlpha=e.fillOpacity*e.opacity,t.fill(),t.globalAlpha=n}else t.fill()}function Yy(t,e){if(null!=e.strokeOpacity&&1!==e.strokeOpacity){var n=t.globalAlpha;t.globalAlpha=e.strokeOpacity*e.opacity,t.stroke(),t.globalAlpha=n}else t.stroke()}function Uy(t,e,n){var i=Zo(e.image,e.__image,n);if(qo(i)){var r=t.createPattern(i,e.repeat||"repeat");if("function"==typeof DOMMatrix&&r&&r.setTransform){var o=new DOMMatrix;o.translateSelf(e.x||0,e.y||0),o.rotateSelf(0,0,(e.rotation||0)*_t),o.scaleSelf(e.scaleX||1,e.scaleY||1),r.setTransform(o)}return r}}var Xy=["shadowBlur","shadowOffsetX","shadowOffsetY"],Zy=[["lineCap","butt"],["lineJoin","miter"],["miterLimit",10]];function jy(t,e,n,i,r){var o=!1;if(!i&&e===(n=n||{}))return!1;if(i||e.opacity!==n.opacity){$y(t,r),o=!0;var a=Math.max(Math.min(e.opacity,1),0);t.globalAlpha=isNaN(a)?ua.opacity:a}(i||e.blend!==n.blend)&&(o||($y(t,r),o=!0),t.globalCompositeOperation=e.blend||ua.blend);for(var s=0;s0&&t.unfinished);t.unfinished||this._zr.flush()}}},e.prototype.getDom=function(){return this._dom},e.prototype.getId=function(){return this.id},e.prototype.getZr=function(){return this._zr},e.prototype.isSSR=function(){return this._ssr},e.prototype.setOption=function(t,e,n){if(!this.__flagInMainProcess)if(this._disposed)Hv(this.id);else{var i,r,o;if(q(e)&&(n=e.lazyUpdate,i=e.silent,r=e.replaceMerge,o=e.transition,e=e.notMerge),this.__flagInMainProcess=!0,!this._model||e){var a=new pd(this._api),s=this._theme,l=this._model=new id;l.scheduler=this._scheduler,l.ssr=this._ssr,l.init(null,null,null,s,this._locale,a)}this._model.setOption(t,{replaceMerge:r},Zv);var u={seriesTransition:o,optionChanged:!0};if(n)this.__pendingUpdate={silent:i,updateParams:u},this.__flagInMainProcess=!1,this.getZr().wakeUp();else{try{_v(this),Sv.update.call(this,null,u)}catch(t){throw this.__pendingUpdate=null,this.__flagInMainProcess=!1,t}this._ssr||this._zr.flush(),this.__pendingUpdate=null,this.__flagInMainProcess=!1,Cv.call(this,i),Dv.call(this,i)}}},e.prototype.setTheme=function(){oo()},e.prototype.getModel=function(){return this._model},e.prototype.getOption=function(){return this._model&&this._model.getOption()},e.prototype.getWidth=function(){return this._zr.getWidth()},e.prototype.getHeight=function(){return this._zr.getHeight()},e.prototype.getDevicePixelRatio=function(){return this._zr.painter.dpr||cv&&window.devicePixelRatio||1},e.prototype.getRenderedCanvas=function(t){return this.renderToCanvas(t)},e.prototype.renderToCanvas=function(t){t=t||{};var e=this._zr.painter;return e.getRenderedCanvas({backgroundColor:t.backgroundColor||this._model.get("backgroundColor"),pixelRatio:t.pixelRatio||this.getDevicePixelRatio()})},e.prototype.renderToSVGString=function(t){t=t||{};var e=this._zr.painter;return e.renderToString({useViewBox:t.useViewBox})},e.prototype.getSvgDataURL=function(){if(r.svgSupported){var t=this._zr;return E(t.storage.getDisplayList(),(function(t){t.stopAnimation(null,!0)})),t.painter.toDataURL()}},e.prototype.getDataURL=function(t){if(!this._disposed){var e=(t=t||{}).excludeComponents,n=this._model,i=[],r=this;E(e,(function(t){n.eachComponent({mainType:t},(function(t){var e=r._componentsMap[t.__viewId];e.group.ignore||(i.push(e),e.group.ignore=!0)}))}));var o="svg"===this._zr.painter.getType()?this.getSvgDataURL():this.renderToCanvas(t).toDataURL("image/"+(t&&t.type||"png"));return E(i,(function(t){t.group.ignore=!1})),o}Hv(this.id)},e.prototype.getConnectedDataURL=function(t){if(!this._disposed){var e="svg"===t.type,n=this.group,i=Math.min,r=Math.max,o=1/0;if(Jv[n]){var a=o,s=o,l=-1/0,u=-1/0,c=[],p=t&&t.pixelRatio||this.getDevicePixelRatio();E($v,(function(o,h){if(o.group===n){var p=e?o.getZr().painter.getSvgDom().innerHTML:o.renderToCanvas(T(t)),d=o.getDom().getBoundingClientRect();a=i(d.left,a),s=i(d.top,s),l=r(d.right,l),u=r(d.bottom,u),c.push({dom:p,left:d.left,top:d.top})}}));var d=(l*=p)-(a*=p),f=(u*=p)-(s*=p),g=h.createCanvas(),y=Lr(g,{renderer:e?"svg":"canvas"});if(y.resize({width:d,height:f}),e){var v="";return E(c,(function(t){var e=t.left-a,n=t.top-s;v+=''+t.dom+""})),y.painter.getSvgRoot().innerHTML=v,t.connectedBackgroundColor&&y.painter.setBackgroundColor(t.connectedBackgroundColor),y.refreshImmediately(),y.painter.toDataURL()}return t.connectedBackgroundColor&&y.add(new Cs({shape:{x:0,y:0,width:d,height:f},style:{fill:t.connectedBackgroundColor}})),E(c,(function(t){var e=new _s({style:{x:t.left*p-a,y:t.top*p-s,image:t.dom}});y.add(e)})),y.refreshImmediately(),g.toDataURL("image/"+(t&&t.type||"png"))}return this.getDataURL(t)}Hv(this.id)},e.prototype.convertToPixel=function(t,e){return Mv(this,"convertToPixel",t,e)},e.prototype.convertFromPixel=function(t,e){return Mv(this,"convertFromPixel",t,e)},e.prototype.containPixel=function(t,e){var n;if(!this._disposed)return E(Io(this._model,t),(function(t,i){i.indexOf("Models")>=0&&E(t,(function(t){var r=t.coordinateSystem;if(r&&r.containPoint)n=n||!!r.containPoint(e);else if("seriesModels"===i){var o=this._chartsMap[t.__viewId];o&&o.containPoint&&(n=n||o.containPoint(e,t))}else 0}),this)}),this),!!n;Hv(this.id)},e.prototype.getVisual=function(t,e){var n=Io(this._model,t,{defaultMainType:"series"}),i=n.seriesModel;var r=i.getData(),o=n.hasOwnProperty("dataIndexInside")?n.dataIndexInside:n.hasOwnProperty("dataIndex")?r.indexOfRawIndex(n.dataIndex):null;return null!=o?fy(r,o,e):gy(r,e)},e.prototype.getViewOfComponentModel=function(t){return this._componentsMap[t.__viewId]},e.prototype.getViewOfSeriesModel=function(t){return this._chartsMap[t.__viewId]},e.prototype._initEvents=function(){var t,e,n,i=this;E(Wv,(function(t){var e=function(e){var n,r=i.getModel(),o=e.target,a="globalout"===t;if(a?n={}:o&&xy(o,(function(t){var e=Hs(t);if(e&&null!=e.dataIndex){var i=e.dataModel||r.getSeriesByIndex(e.seriesIndex);return n=i&&i.getDataParams(e.dataIndex,e.dataType)||{},!0}if(e.eventData)return n=A({},e.eventData),!0}),!0),n){var s=n.componentType,l=n.componentIndex;"markLine"!==s&&"markPoint"!==s&&"markArea"!==s||(s="series",l=n.seriesIndex);var u=s&&null!=l&&r.getComponent(s,l),h=u&&i["series"===u.mainType?"_chartsMap":"_componentsMap"][u.__viewId];0,n.event=e,n.type=t,i._$eventProcessor.eventInfo={targetEl:o,packedEvent:n,model:u,view:h},i.trigger(t,n)}};e.zrEventfulCallAtLast=!0,i._zr.on(t,e,i)})),E(Uv,(function(t,e){i._messageCenter.on(e,(function(t){this.trigger(e,t)}),i)})),E(["selectchanged"],(function(t){i._messageCenter.on(t,(function(e){this.trigger(t,e)}),i)})),t=this._messageCenter,e=this,n=this._api,t.on("selectchanged",(function(t){var i=n.getModel();t.isFromClick?(my("map","selectchanged",e,i,t),my("pie","selectchanged",e,i,t)):"select"===t.fromAction?(my("map","selected",e,i,t),my("pie","selected",e,i,t)):"unselect"===t.fromAction&&(my("map","unselected",e,i,t),my("pie","unselected",e,i,t))}))},e.prototype.isDisposed=function(){return this._disposed},e.prototype.clear=function(){this._disposed?Hv(this.id):this.setOption({series:[]},!0)},e.prototype.dispose=function(){if(this._disposed)Hv(this.id);else{this._disposed=!0,this.getDom()&&ko(this.getDom(),em,"");var t=this,e=t._api,n=t._model;E(t._componentsViews,(function(t){t.dispose(n,e)})),E(t._chartsViews,(function(t){t.dispose(n,e)})),t._zr.dispose(),t._dom=t._model=t._chartsMap=t._componentsMap=t._chartsViews=t._componentsViews=t._scheduler=t._api=t._zr=t._throttledZrFlush=t._theme=t._coordSysMgr=t._messageCenter=null,delete $v[t.id]}},e.prototype.resize=function(t){if(!this.__flagInMainProcess)if(this._disposed)Hv(this.id);else{this._zr.resize(t);var e=this._model;if(this._loadingFX&&this._loadingFX.resize(),e){var n=e.resetOption("media"),i=t&&t.silent;this.__pendingUpdate&&(null==i&&(i=this.__pendingUpdate.silent),n=!0,this.__pendingUpdate=null),this.__flagInMainProcess=!0;try{n&&_v(this),Sv.update.call(this,{type:"resize",animation:A({duration:0},t&&t.animation)})}catch(t){throw this.__flagInMainProcess=!1,t}this.__flagInMainProcess=!1,Cv.call(this,i),Dv.call(this,i)}}},e.prototype.showLoading=function(t,e){if(this._disposed)Hv(this.id);else if(q(t)&&(e=t,t=""),t=t||"default",this.hideLoading(),Kv[t]){var n=Kv[t](this._api,e),i=this._zr;this._loadingFX=n,i.add(n)}},e.prototype.hideLoading=function(){this._disposed?Hv(this.id):(this._loadingFX&&this._zr.remove(this._loadingFX),this._loadingFX=null)},e.prototype.makeActionFromEvent=function(t){var e=A({},t);return e.type=Uv[t.type],e},e.prototype.dispatchAction=function(t,e){if(this._disposed)Hv(this.id);else if(q(e)||(e={silent:!!e}),Yv[t.type]&&this._model)if(this.__flagInMainProcess)this._pendingActions.push(t);else{var n=e.silent;Tv.call(this,t,n);var i=e.flush;i?this._zr.flush():!1!==i&&r.browser.weChat&&this._throttledZrFlush(),Cv.call(this,n),Dv.call(this,n)}},e.prototype.updateLabelLayout=function(){lv.trigger("series:layoutlabels",this._model,this._api,{updatedSeries:[]})},e.prototype.appendData=function(t){if(this._disposed)Hv(this.id);else{var e=t.seriesIndex,n=this.getModel().getSeriesByIndex(e);0,n.appendData(t),this._scheduler.unfinished=!0,this.getZr().wakeUp()}},e.internalField=function(){function t(t){t.clearColorPalette(),t.eachSeries((function(t){t.clearColorPalette()}))}function e(t){for(var e=[],n=t.currentStates,i=0;i0?{duration:o,delay:i.get("delay"),easing:i.get("easing")}:null;n.eachRendered((function(t){if(t.states&&t.states.emphasis){if(ah(t))return;if(t instanceof gs&&function(t){var e=Zs(t);e.normalFill=t.style.fill,e.normalStroke=t.style.stroke;var n=t.states.select||{};e.selectFill=n.style&&n.style.fill||null,e.selectStroke=n.style&&n.style.stroke||null}(t),t.__dirty){var n=t.prevStates;n&&t.useStates(n)}if(r){t.stateTransition=a;var i=t.getTextContent(),o=t.getTextGuideLine();i&&(i.stateTransition=a),o&&(o.stateTransition=a)}t.__dirty&&e(t)}}))}_v=function(t){var e=t._scheduler;e.restorePipelines(t._model),e.prepareStageTasks(),bv(t,!0),bv(t,!1),e.plan()},bv=function(t,e){for(var n=t._model,i=t._scheduler,r=e?t._componentsViews:t._chartsViews,o=e?t._componentsMap:t._chartsMap,a=t._zr,s=t._api,l=0;le.get("hoverLayerThreshold")&&!r.node&&!r.worker&&e.eachSeries((function(e){if(!e.preventUsingHoverLayer){var n=t._chartsMap[e.__viewId];n.__alive&&n.eachRendered((function(t){t.states.emphasis&&(t.states.emphasis.hoverLayer=!0)}))}}))}(t,e),lv.trigger("series:afterupdate",e,n,l)},Ev=function(t){t.__needsUpdateStatus=!0,t.getZr().wakeUp()},zv=function(t){t.__needsUpdateStatus&&(t.getZr().storage.traverse((function(t){ah(t)||e(t)})),t.__needsUpdateStatus=!1)},Rv=function(t){return new(function(e){function i(){return null!==e&&e.apply(this,arguments)||this}return n(i,e),i.prototype.getCoordinateSystems=function(){return t._coordSysMgr.getCoordinateSystems()},i.prototype.getComponentByElement=function(e){for(;e;){var n=e.__ecComponentInfo;if(null!=n)return t._model.getComponent(n.mainType,n.index);e=e.parent}},i.prototype.enterEmphasis=function(e,n){_l(e,n),Ev(t)},i.prototype.leaveEmphasis=function(e,n){bl(e,n),Ev(t)},i.prototype.enterBlur=function(e){wl(e),Ev(t)},i.prototype.leaveBlur=function(e){Sl(e),Ev(t)},i.prototype.enterSelect=function(e){Ml(e),Ev(t)},i.prototype.leaveSelect=function(e){Il(e),Ev(t)},i.prototype.getModel=function(){return t.getModel()},i.prototype.getViewOfComponentModel=function(e){return t.getViewOfComponentModel(e)},i.prototype.getViewOfSeriesModel=function(e){return t.getViewOfSeriesModel(e)},i}(ld))(t)},Nv=function(t){function e(t,e){for(var n=0;n=0)){gm.push(n);var o=Gg.wrapStageHandler(n,r);o.__prio=e,o.__raw=n,t.push(o)}}function vm(t,e){Kv[t]=e}function mm(t,e,n){var i=hv("registerMap");i&&i(t,e,n)}var xm=function(t){var e=(t=T(t)).type,n="";e||ao(n);var i=e.split(":");2!==i.length&&ao(n);var r=!1;"echarts"===i[0]&&(e=i[1],r=!0),t.__isBuiltIn=r,Tf.set(e,t)};fm(pv,Eg),fm(dv,Vg),fm(dv,Bg),fm(pv,py),fm(dv,dy),fm(7e3,(function(t,e){t.eachRawSeries((function(n){if(!t.isSeriesFiltered(n)){var i=n.getData();i.hasItemVisual()&&i.each((function(t){var n=i.getItemVisual(t,"decal");n&&(i.ensureUniqueItemVisual(t,"style").decal=rv(n,e))}));var r=i.getVisual("decal");if(r)i.getVisual("style").decal=rv(r,e)}}))})),am(Od),sm(900,(function(t){var e=ft();t.eachSeries((function(t){var n=t.get("stack");if(n){var i=e.get(n)||e.set(n,[]),r=t.getData(),o={stackResultDimension:r.getCalculationInfo("stackResultDimension"),stackedOverDimension:r.getCalculationInfo("stackedOverDimension"),stackedDimension:r.getCalculationInfo("stackedDimension"),stackedByDimension:r.getCalculationInfo("stackedByDimension"),isStackedByIndex:r.getCalculationInfo("isStackedByIndex"),data:r,seriesModel:t};if(!o.stackedDimension||!o.isStackedByIndex&&!o.stackedByDimension)return;i.length&&r.setCalculationInfo("stackedOnSeries",i[i.length-1].seriesModel),i.push(o)}})),e.each(Rd)})),vm("default",(function(t,e){k(e=e||{},{text:"loading",textColor:"#000",fontSize:12,fontWeight:"normal",fontStyle:"normal",fontFamily:"sans-serif",maskColor:"rgba(255, 255, 255, 0.8)",showSpinner:!0,color:"#5470c6",spinnerRadius:10,lineWidth:5,zlevel:0});var n=new Cr,i=new Cs({style:{fill:e.maskColor},zlevel:e.zlevel,z:1e4});n.add(i);var r,o=new ks({style:{text:e.text,fill:e.textColor,fontSize:e.fontSize,fontWeight:e.fontWeight,fontStyle:e.fontStyle,fontFamily:e.fontFamily},zlevel:e.zlevel,z:10001}),a=new Cs({style:{fill:"none"},textContent:o,textConfig:{position:"right",distance:10},zlevel:e.zlevel,z:10001});return n.add(a),e.showSpinner&&((r=new Hu({shape:{startAngle:-Fg/2,endAngle:-Fg/2+.1,r:e.spinnerRadius},style:{stroke:e.color,lineCap:"round",lineWidth:e.lineWidth},zlevel:e.zlevel,z:10001})).animateShape(!0).when(1e3,{endAngle:3*Fg/2}).start("circularInOut"),r.animateShape(!0).when(1e3,{startAngle:3*Fg/2}).delay(300).start("circularInOut"),n.add(r)),n.resize=function(){var n=o.getBoundingRect().width,s=e.showSpinner?e.spinnerRadius:0,l=(t.getWidth()-2*s-(e.showSpinner&&n?10:0)-n)/2-(e.showSpinner&&n?0:5+n/2)+(e.showSpinner?0:n/2)+(n?0:s),u=t.getHeight()/2;e.showSpinner&&r.setShape({cx:l,cy:u}),a.setShape({x:l-s,y:u-s,width:2*s,height:2*s}),i.setShape({x:0,y:0,width:t.getWidth(),height:t.getHeight()})},n.resize(),n})),cm({type:Js,event:Js,update:Js},xt),cm({type:Qs,event:Qs,update:Qs},xt),cm({type:tl,event:tl,update:tl},xt),cm({type:el,event:el,update:el},xt),cm({type:nl,event:nl,update:nl},xt),om("light",iy),om("dark",ly);var _m=[],bm={registerPreprocessor:am,registerProcessor:sm,registerPostInit:lm,registerPostUpdate:um,registerUpdateLifecycle:hm,registerAction:cm,registerCoordinateSystem:pm,registerLayout:dm,registerVisual:fm,registerTransform:xm,registerLoading:vm,registerMap:mm,registerImpl:function(t,e){uv[t]=e},PRIORITY:fv,ComponentModel:Tp,ComponentView:gg,SeriesModel:sg,ChartView:xg,registerComponentModel:function(t){Tp.registerClass(t)},registerComponentView:function(t){gg.registerClass(t)},registerSeriesModel:function(t){sg.registerClass(t)},registerChartView:function(t){xg.registerClass(t)},registerSubTypeDefaulter:function(t,e){Tp.registerSubTypeDefaulter(t,e)},registerPainter:function(t,e){Pr(t,e)}};function wm(t){Y(t)?E(t,(function(t){wm(t)})):P(_m,t)>=0||(_m.push(t),U(t)&&(t={install:t}),t.install(bm))}function Sm(t){return null==t?0:t.length||1}function Mm(t){return t}var Im=function(){function t(t,e,n,i,r,o){this._old=t,this._new=e,this._oldKeyGetter=n||Mm,this._newKeyGetter=i||Mm,this.context=r,this._diffModeMultiple="multiple"===o}return t.prototype.add=function(t){return this._add=t,this},t.prototype.update=function(t){return this._update=t,this},t.prototype.updateManyToOne=function(t){return this._updateManyToOne=t,this},t.prototype.updateOneToMany=function(t){return this._updateOneToMany=t,this},t.prototype.updateManyToMany=function(t){return this._updateManyToMany=t,this},t.prototype.remove=function(t){return this._remove=t,this},t.prototype.execute=function(){this[this._diffModeMultiple?"_executeMultiple":"_executeOneToOne"]()},t.prototype._executeOneToOne=function(){var t=this._old,e=this._new,n={},i=new Array(t.length),r=new Array(e.length);this._initIndexMap(t,null,i,"_oldKeyGetter"),this._initIndexMap(e,n,r,"_newKeyGetter");for(var o=0;o1){var u=s.shift();1===s.length&&(n[a]=s[0]),this._update&&this._update(u,o)}else 1===l?(n[a]=null,this._update&&this._update(s,o)):this._remove&&this._remove(o)}this._performRestAdd(r,n)},t.prototype._executeMultiple=function(){var t=this._old,e=this._new,n={},i={},r=[],o=[];this._initIndexMap(t,n,r,"_oldKeyGetter"),this._initIndexMap(e,i,o,"_newKeyGetter");for(var a=0;a1&&1===c)this._updateManyToOne&&this._updateManyToOne(u,l),i[s]=null;else if(1===h&&c>1)this._updateOneToMany&&this._updateOneToMany(u,l),i[s]=null;else if(1===h&&1===c)this._update&&this._update(u,l),i[s]=null;else if(h>1&&c>1)this._updateManyToMany&&this._updateManyToMany(u,l),i[s]=null;else if(h>1)for(var p=0;p1)for(var a=0;a30}var zm,Vm,Bm,Fm,Gm,Wm,Hm,Ym=q,Um=z,Xm="undefined"==typeof Int32Array?Array:Int32Array,Zm=["hasItemOption","_nameList","_idList","_invertedIndicesMap","_dimSummary","userOutput","_rawData","_dimValueGetter","_nameDimIdx","_idDimIdx","_nameRepeatCount"],jm=["_approximateExtent"],qm=function(){function t(t,e){var n;this.type="list",this._dimOmitted=!1,this._nameList=[],this._idList=[],this._visual={},this._layout={},this._itemVisuals=[],this._itemLayouts=[],this._graphicEls=[],this._approximateExtent={},this._calculationInfo={},this.hasItemOption=!1,this.TRANSFERABLE_METHODS=["cloneShallow","downSample","lttbDownSample","map"],this.CHANGABLE_METHODS=["filterSelf","selectRange"],this.DOWNSAMPLE_METHODS=["downSample","lttbDownSample"];var i=!1;Om(t)?(n=t.dimensions,this._dimOmitted=t.isDimensionOmitted(),this._schema=t):(i=!0,n=t),n=n||["x","y"];for(var r={},o=[],a={},s=!1,l={},u=0;u=e)){var n=this._store.getProvider();this._updateOrdinalMeta();var i=this._nameList,r=this._idList;if(n.getSource().sourceFormat===Lp&&!n.pure)for(var o=[],a=t;a0},t.prototype.ensureUniqueItemVisual=function(t,e){var n=this._itemVisuals,i=n[t];i||(i=n[t]={});var r=i[e];return null==r&&(Y(r=this.getVisual(e))?r=r.slice():Ym(r)&&(r=A({},r)),i[e]=r),r},t.prototype.setItemVisual=function(t,e,n){var i=this._itemVisuals[t]||{};this._itemVisuals[t]=i,Ym(e)?A(i,e):i[e]=n},t.prototype.clearAllVisual=function(){this._visual={},this._itemVisuals=[]},t.prototype.setLayout=function(t,e){Ym(t)?A(this._layout,t):this._layout[t]=e},t.prototype.getLayout=function(t){return this._layout[t]},t.prototype.getItemLayout=function(t){return this._itemLayouts[t]},t.prototype.setItemLayout=function(t,e,n){this._itemLayouts[t]=n?A(this._itemLayouts[t]||{},e):e},t.prototype.clearItemLayouts=function(){this._itemLayouts.length=0},t.prototype.setItemGraphicEl=function(t,e){var n=this.hostModel&&this.hostModel.seriesIndex;Ys(n,this.dataType,t,e),this._graphicEls[t]=e},t.prototype.getItemGraphicEl=function(t){return this._graphicEls[t]},t.prototype.eachItemGraphicEl=function(t,e){E(this._graphicEls,(function(n,i){n&&t&&t.call(e,n,i)}))},t.prototype.cloneShallow=function(e){return e||(e=new t(this._schema?this._schema:Um(this.dimensions,this._getDimInfo,this),this.hostModel)),Gm(e,this),e._store=this._store,e},t.prototype.wrapMethod=function(t,e){var n=this[t];U(n)&&(this.__wrappedMethods=this.__wrappedMethods||[],this.__wrappedMethods.push(t),this[t]=function(){var t=n.apply(this,arguments);return e.apply(this,[t].concat(at(arguments)))})},t.internalField=(zm=function(t){var e=t._invertedIndicesMap;E(e,(function(n,i){var r=t._dimInfos[i],o=r.ordinalMeta,a=t._store;if(o){n=e[i]=new Xm(o.categories.length);for(var s=0;s1&&(s+="__ec__"+u),i[e]=s}})),t}();function Km(t,e){Gd(t)||(t=Hd(t));var n=(e=e||{}).coordDimensions||[],i=e.dimensionsDefine||t.dimensionsDefine||[],r=ft(),o=[],a=function(t,e,n,i){var r=Math.max(t.dimensionsDetectedCount||1,e.length,n.length,i||0);return E(e,(function(t){var e;q(t)&&(e=t.dimsDef)&&(r=Math.max(r,e.length))})),r}(t,n,i,e.dimensionsCount),s=e.canOmitUnusedDimensions&&Em(a),l=i===t.dimensionsDefine,u=l?Nm(t):Rm(i),h=e.encodeDefine;!h&&e.encodeDefaulter&&(h=e.encodeDefaulter(t,a));for(var c=ft(h),p=new Of(a),d=0;d0&&(i.name=r+(o-1)),o++,e.set(r,o)}}(o),new Pm({source:t,dimensions:o,fullDimensionCount:a,dimensionOmitted:s})}function $m(t,e,n){var i=e.data;if(n||i.hasOwnProperty(t)){for(var r=0;i.hasOwnProperty(t+r);)r++;t+=r}return e.set(t,!0),t}var Jm=function(t){this.coordSysDims=[],this.axisMap=ft(),this.categoryAxisMap=ft(),this.coordSysName=t};var Qm={cartesian2d:function(t,e,n,i){var r=t.getReferringComponents("xAxis",Co).models[0],o=t.getReferringComponents("yAxis",Co).models[0];e.coordSysDims=["x","y"],n.set("x",r),n.set("y",o),tx(r)&&(i.set("x",r),e.firstCategoryDimIndex=0),tx(o)&&(i.set("y",o),null==e.firstCategoryDimIndex&&(e.firstCategoryDimIndex=1))},singleAxis:function(t,e,n,i){var r=t.getReferringComponents("singleAxis",Co).models[0];e.coordSysDims=["single"],n.set("single",r),tx(r)&&(i.set("single",r),e.firstCategoryDimIndex=0)},polar:function(t,e,n,i){var r=t.getReferringComponents("polar",Co).models[0],o=r.findAxisModel("radiusAxis"),a=r.findAxisModel("angleAxis");e.coordSysDims=["radius","angle"],n.set("radius",o),n.set("angle",a),tx(o)&&(i.set("radius",o),e.firstCategoryDimIndex=0),tx(a)&&(i.set("angle",a),null==e.firstCategoryDimIndex&&(e.firstCategoryDimIndex=1))},geo:function(t,e,n,i){e.coordSysDims=["lng","lat"]},parallel:function(t,e,n,i){var r=t.ecModel,o=r.getComponent("parallel",t.get("parallelIndex")),a=e.coordSysDims=o.dimensions.slice();E(o.parallelAxisIndex,(function(t,o){var s=r.getComponent("parallelAxis",t),l=a[o];n.set(l,s),tx(s)&&(i.set(l,s),null==e.firstCategoryDimIndex&&(e.firstCategoryDimIndex=o))}))}};function tx(t){return"category"===t.get("type")}function ex(t,e,n){var i,r,o,a=(n=n||{}).byIndex,s=n.stackedCoordDimension;!function(t){return!Om(t.schema)}(e)?(r=e.schema,i=r.dimensions,o=e.store):i=e;var l,u,h,c,p=!(!t||!t.get("stack"));if(E(i,(function(t,e){X(t)&&(i[e]=t={name:t}),p&&!t.isExtraCoord&&(a||l||!t.ordinalMeta||(l=t),u||"ordinal"===t.type||"time"===t.type||s&&s!==t.coordDim||(u=t))})),!u||a||l||(a=!0),u){h="__\0ecstackresult_"+t.id,c="__\0ecstackedover_"+t.id,l&&(l.createInvertedIndices=!0);var d=u.coordDim,f=u.type,g=0;E(i,(function(t){t.coordDim===d&&g++}));var y={name:h,coordDim:d,coordDimIndex:g,type:f,isExtraCoord:!0,isCalculationCoord:!0,storeDimIndex:i.length},v={name:c,coordDim:c,coordDimIndex:g+1,type:f,isExtraCoord:!0,isCalculationCoord:!0,storeDimIndex:i.length+1};r?(o&&(y.storeDimIndex=o.ensureCalculationDimension(c,f),v.storeDimIndex=o.ensureCalculationDimension(h,f)),r.appendCalculationDimension(y),r.appendCalculationDimension(v)):(i.push(y),i.push(v))}return{stackedDimension:u&&u.name,stackedByDimension:l&&l.name,isStackedByIndex:a,stackedOverDimension:c,stackResultDimension:h}}function nx(t,e){return!!e&&e===t.getCalculationInfo("stackedDimension")}function ix(t,e){return nx(t,e)?t.getCalculationInfo("stackResultDimension"):e}function rx(t,e,n){n=n||{};var i,r=e.getSourceManager(),o=!1;t?(o=!0,i=Hd(t)):o=(i=r.getSource()).sourceFormat===Lp;var a=function(t){var e=t.get("coordinateSystem"),n=new Jm(e),i=Qm[e];if(i)return i(t,n,n.axisMap,n.categoryAxisMap),n}(e),s=function(t,e){var n,i=t.get("coordinateSystem"),r=hd.get(i);return e&&e.coordSysDims&&(n=z(e.coordSysDims,(function(t){var n={name:t},i=e.axisMap.get(t);if(i){var r=i.get("type");n.type=Dm(r)}return n}))),n||(n=r&&(r.getDimensionsInfo?r.getDimensionsInfo():r.dimensions.slice())||["x","y"]),n}(e,a),l=n.useEncodeDefaulter,u=U(l)?l:l?H(Hp,s,e):null,h=Km(i,{coordDimensions:s,generateCoord:n.generateCoord,encodeDefine:e.getEncode(),encodeDefaulter:u,canOmitUnusedDimensions:!o}),c=function(t,e,n){var i,r;return n&&E(t,(function(t,o){var a=t.coordDim,s=n.categoryAxisMap.get(a);s&&(null==i&&(i=o),t.ordinalMeta=s.getOrdinalMeta(),e&&(t.createInvertedIndices=!0)),null!=t.otherDims.itemName&&(r=!0)})),r||null==i||(t[i].otherDims.itemName=0),i}(h.dimensions,n.createInvertedIndices,a),p=o?null:r.getSharedDataStore(h),d=ex(e,{schema:h,store:p}),f=new qm(h,e);f.setCalculationInfo(d);var g=null!=c&&function(t){if(t.sourceFormat===Lp){return!Y(fo(function(t){var e=0;for(;ee[1]&&(e[1]=t[1])},t.prototype.unionExtentFromData=function(t,e){this.unionExtent(t.getApproximateExtent(e))},t.prototype.getExtent=function(){return this._extent.slice()},t.prototype.setExtent=function(t,e){var n=this._extent;isNaN(t)||(n[0]=t),isNaN(e)||(n[1]=e)},t.prototype.isInExtentRange=function(t){return this._extent[0]<=t&&this._extent[1]>=t},t.prototype.isBlank=function(){return this._isBlank},t.prototype.setBlank=function(t){this._isBlank=t},t}();Go(ox);var ax=0,sx=function(){function t(t){this.categories=t.categories||[],this._needCollect=t.needCollect,this._deduplication=t.deduplication,this.uid=++ax}return t.createByAxisModel=function(e){var n=e.option,i=n.data,r=i&&z(i,lx);return new t({categories:r,needCollect:!r,deduplication:!1!==n.dedplication})},t.prototype.getOrdinal=function(t){return this._getOrCreateMap().get(t)},t.prototype.parseAndCollect=function(t){var e,n=this._needCollect;if(!X(t)&&!n)return t;if(n&&!this._deduplication)return e=this.categories.length,this.categories[e]=t,e;var i=this._getOrCreateMap();return null==(e=i.get(t))&&(n?(e=this.categories.length,this.categories[e]=t,i.set(t,e)):e=NaN),e},t.prototype._getOrCreateMap=function(){return this._map||(this._map=ft(this.categories))},t}();function lx(t){return q(t)&&null!=t.value?t.value:t+""}function ux(t){return"interval"===t.type||"log"===t.type}function hx(t,e,n,i){var r={},o=t[1]-t[0],a=r.interval=$r(o/e,!0);null!=n&&ai&&(a=r.interval=i);var s=r.intervalPrecision=px(a);return function(t,e){!isFinite(t[0])&&(t[0]=e[0]),!isFinite(t[1])&&(t[1]=e[1]),dx(t,0,e),dx(t,1,e),t[0]>t[1]&&(t[0]=t[1])}(r.niceTickExtent=[zr(Math.ceil(t[0]/a)*a,s),zr(Math.floor(t[1]/a)*a,s)],t),r}function cx(t){var e=Math.pow(10,Kr(t)),n=t/e;return n?2===n?n=3:3===n?n=5:n*=2:n=1,zr(n*e)}function px(t){return Br(t)+2}function dx(t,e,n){t[e]=Math.max(Math.min(t[e],n[1]),n[0])}function fx(t,e){return t>=e[0]&&t<=e[1]}function gx(t,e){return e[1]===e[0]?.5:(t-e[0])/(e[1]-e[0])}function yx(t,e){return t*(e[1]-e[0])+e[0]}var vx=function(t){function e(e){var n=t.call(this,e)||this;n.type="ordinal";var i=n.getSetting("ordinalMeta");return i||(i=new sx({})),Y(i)&&(i=new sx({categories:z(i,(function(t){return q(t)?t.value:t}))})),n._ordinalMeta=i,n._extent=n.getSetting("extent")||[0,i.categories.length-1],n}return n(e,t),e.prototype.parse=function(t){return null==t?NaN:X(t)?this._ordinalMeta.getOrdinal(t):Math.round(t)},e.prototype.contain=function(t){return fx(t=this.parse(t),this._extent)&&null!=this._ordinalMeta.categories[t]},e.prototype.normalize=function(t){return gx(t=this._getTickNumber(this.parse(t)),this._extent)},e.prototype.scale=function(t){return t=Math.round(yx(t,this._extent)),this.getRawOrdinalNumber(t)},e.prototype.getTicks=function(){for(var t=[],e=this._extent,n=e[0];n<=e[1];)t.push({value:n}),n++;return t},e.prototype.getMinorTicks=function(t){},e.prototype.setSortInfo=function(t){if(null!=t){for(var e=t.ordinalNumbers,n=this._ordinalNumbersByTick=[],i=this._ticksByOrdinalNumber=[],r=0,o=this._ordinalMeta.categories.length,a=Math.min(o,e.length);r=0&&t=0&&t=t},e.prototype.getOrdinalMeta=function(){return this._ordinalMeta},e.prototype.calcNiceTicks=function(){},e.prototype.calcNiceExtent=function(){},e.type="ordinal",e}(ox);ox.registerClass(vx);var mx=zr,xx=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.type="interval",e._interval=0,e._intervalPrecision=2,e}return n(e,t),e.prototype.parse=function(t){return t},e.prototype.contain=function(t){return fx(t,this._extent)},e.prototype.normalize=function(t){return gx(t,this._extent)},e.prototype.scale=function(t){return yx(t,this._extent)},e.prototype.setExtent=function(t,e){var n=this._extent;isNaN(t)||(n[0]=parseFloat(t)),isNaN(e)||(n[1]=parseFloat(e))},e.prototype.unionExtent=function(t){var e=this._extent;t[0]e[1]&&(e[1]=t[1]),this.setExtent(e[0],e[1])},e.prototype.getInterval=function(){return this._interval},e.prototype.setInterval=function(t){this._interval=t,this._niceExtent=this._extent.slice(),this._intervalPrecision=px(t)},e.prototype.getTicks=function(t){var e=this._interval,n=this._extent,i=this._niceExtent,r=this._intervalPrecision,o=[];if(!e)return o;n[0]1e4)return[];var s=o.length?o[o.length-1].value:i[1];return n[1]>s&&(t?o.push({value:mx(s+e,r)}):o.push({value:n[1]})),o},e.prototype.getMinorTicks=function(t){for(var e=this.getTicks(!0),n=[],i=this.getExtent(),r=1;ri[0]&&h0&&(o=null===o?s:Math.min(o,s))}n[i]=o}}return n}(t),n=[];return E(t,(function(t){var i,r=t.coordinateSystem.getBaseAxis(),o=r.getExtent();if("category"===r.type)i=r.getBandWidth();else if("value"===r.type||"time"===r.type){var a=r.dim+"_"+r.index,s=e[a],l=Math.abs(o[1]-o[0]),u=r.scale.getExtent(),h=Math.abs(u[1]-u[0]);i=s?l/h*s:l}else{var c=t.getData();i=Math.abs(o[1]-o[0])/c.count()}var p=Er(t.get("barWidth"),i),d=Er(t.get("barMaxWidth"),i),f=Er(t.get("barMinWidth")||(Ox(t)?.5:1),i),g=t.get("barGap"),y=t.get("barCategoryGap");n.push({bandWidth:i,barWidth:p,barMaxWidth:d,barMinWidth:f,barGap:g,barCategoryGap:y,axisKey:Tx(r),stackId:Ix(t)})})),Ax(n)}function Ax(t){var e={};E(t,(function(t,n){var i=t.axisKey,r=t.bandWidth,o=e[i]||{bandWidth:r,remainedWidth:r,autoWidthCount:0,categoryGap:null,gap:"20%",stacks:{}},a=o.stacks;e[i]=o;var s=t.stackId;a[s]||o.autoWidthCount++,a[s]=a[s]||{width:0,maxWidth:0};var l=t.barWidth;l&&!a[s].width&&(a[s].width=l,l=Math.min(o.remainedWidth,l),o.remainedWidth-=l);var u=t.barMaxWidth;u&&(a[s].maxWidth=u);var h=t.barMinWidth;h&&(a[s].minWidth=h);var c=t.barGap;null!=c&&(o.gap=c);var p=t.barCategoryGap;null!=p&&(o.categoryGap=p)}));var n={};return E(e,(function(t,e){n[e]={};var i=t.stacks,r=t.bandWidth,o=t.categoryGap;if(null==o){var a=G(i).length;o=Math.max(35-4*a,15)+"%"}var s=Er(o,r),l=Er(t.gap,1),u=t.remainedWidth,h=t.autoWidthCount,c=(u-s)/(h+(h-1)*l);c=Math.max(c,0),E(i,(function(t){var e=t.maxWidth,n=t.minWidth;if(t.width){i=t.width;e&&(i=Math.min(i,e)),n&&(i=Math.max(i,n)),t.width=i,u-=i+l*i,h--}else{var i=c;e&&ei&&(i=n),i!==c&&(t.width=i,u-=i+l*i,h--)}})),c=(u-s)/(h+(h-1)*l),c=Math.max(c,0);var p,d=0;E(i,(function(t,e){t.width||(t.width=c),p=t,d+=t.width*(1+l)})),p&&(d-=p.width*l);var f=-d/2;E(i,(function(t,i){n[e][i]=n[e][i]||{bandWidth:r,offset:f,width:t.width},f+=t.width*(1+l)}))})),n}function kx(t,e){var n=Cx(t,e),i=Dx(n);E(n,(function(t){var e=t.getData(),n=t.coordinateSystem.getBaseAxis(),r=Ix(t),o=i[Tx(n)][r],a=o.offset,s=o.width;e.setLayout({bandWidth:o.bandWidth,offset:a,size:s})}))}function Lx(t){return{seriesType:t,plan:yg(),reset:function(t){if(Px(t)){var e=t.getData(),n=t.coordinateSystem,i=n.getBaseAxis(),r=n.getOtherAxis(i),o=e.getDimensionIndex(e.mapDimension(r.dim)),a=e.getDimensionIndex(e.mapDimension(i.dim)),s=t.get("showBackground",!0),l=e.mapDimension(r.dim),u=e.getCalculationInfo("stackResultDimension"),h=nx(e,l)&&!!e.getCalculationInfo("stackedOnSeries"),c=r.isHorizontal(),p=function(t,e){return e.toGlobalCoord(e.dataToCoord("log"===e.type?1:0))}(0,r),d=Ox(t),f=t.get("barMinHeight")||0,g=u&&e.getDimensionIndex(u),y=e.getLayout("size"),v=e.getLayout("offset");return{progress:function(t,e){for(var i,r=t.count,l=d&&Sx(3*r),u=d&&s&&Sx(3*r),m=d&&Sx(r),x=n.master.getRect(),_=c?x.width:x.height,b=e.getStore(),w=0;null!=(i=t.next());){var S=b.get(h?g:o,i),M=b.get(a,i),I=p,T=void 0;h&&(T=+S-b.get(o,i));var C=void 0,D=void 0,A=void 0,k=void 0;if(c){var L=n.dataToPoint([S,M]);if(h)I=n.dataToPoint([T,M])[0];C=I,D=L[1]+v,A=L[0]-I,k=y,Math.abs(A)0)for(var s=0;s=0;--s)if(l[u]){o=l[u];break}o=o||a.none}if(Y(o)){var h=null==t.level?0:t.level>=0?t.level:o.length+t.level;o=o[h=Math.min(h,o.length-1)]}}return Vc(new Date(t.value),o,r,i)}(t,e,n,this.getSetting("locale"),i)},e.prototype.getTicks=function(){var t=this._interval,e=this._extent,n=[];if(!t)return n;n.push({value:e[0],level:0});var i=this.getSetting("useUTC"),r=function(t,e,n,i){var r=1e4,o=Rc,a=0;function s(t,e,n,r,o,a,s){for(var l=new Date(e),u=e,h=l[r]();u1&&0===u&&o.unshift({value:o[0].value-p})}}for(u=0;u=i[0]&&v<=i[1]&&c++)}var m=(i[1]-i[0])/e;if(c>1.5*m&&p>m/1.5)break;if(u.push(g),c>m||t===o[d])break}h=[]}}0;var x=B(z(u,(function(t){return B(t,(function(t){return t.value>=i[0]&&t.value<=i[1]&&!t.notAdd}))})),(function(t){return t.length>0})),_=[],b=x.length-1;for(d=0;dn&&(this._approxInterval=n);var o=Nx.length,a=Math.min(function(t,e,n,i){for(;n>>1;t[r][1]16?16:t>7.5?7:t>3.5?4:t>1.5?2:1}function zx(t){return(t/=2592e6)>6?6:t>3?3:t>2?2:1}function Vx(t){return(t/=Cc)>12?12:t>6?6:t>3.5?4:t>2?2:1}function Bx(t,e){return(t/=e?Tc:Ic)>30?30:t>20?20:t>15?15:t>10?10:t>5?5:t>2?2:1}function Fx(t){return $r(t,!0)}function Gx(t,e,n){var i=new Date(t);switch(Ec(e)){case"year":case"month":i[qc(n)](0);case"day":i[Kc(n)](1);case"hour":i[$c(n)](0);case"minute":i[Jc(n)](0);case"second":i[Qc(n)](0),i[tp(n)](0)}return i.getTime()}ox.registerClass(Rx);var Wx=ox.prototype,Hx=xx.prototype,Yx=zr,Ux=Math.floor,Xx=Math.ceil,Zx=Math.pow,jx=Math.log,qx=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.type="log",e.base=10,e._originalScale=new xx,e._interval=0,e}return n(e,t),e.prototype.getTicks=function(t){var e=this._originalScale,n=this._extent,i=e.getExtent();return z(Hx.getTicks.call(this,t),(function(t){var e=t.value,r=zr(Zx(this.base,e));return r=e===n[0]&&this._fixMin?$x(r,i[0]):r,{value:r=e===n[1]&&this._fixMax?$x(r,i[1]):r}}),this)},e.prototype.setExtent=function(t,e){var n=this.base;t=jx(t)/jx(n),e=jx(e)/jx(n),Hx.setExtent.call(this,t,e)},e.prototype.getExtent=function(){var t=this.base,e=Wx.getExtent.call(this);e[0]=Zx(t,e[0]),e[1]=Zx(t,e[1]);var n=this._originalScale.getExtent();return this._fixMin&&(e[0]=$x(e[0],n[0])),this._fixMax&&(e[1]=$x(e[1],n[1])),e},e.prototype.unionExtent=function(t){this._originalScale.unionExtent(t);var e=this.base;t[0]=jx(t[0])/jx(e),t[1]=jx(t[1])/jx(e),Wx.unionExtent.call(this,t)},e.prototype.unionExtentFromData=function(t,e){this.unionExtent(t.getApproximateExtent(e))},e.prototype.calcNiceTicks=function(t){t=t||10;var e=this._extent,n=e[1]-e[0];if(!(n===1/0||n<=0)){var i=qr(n);for(t/n*i<=.5&&(i*=10);!isNaN(i)&&Math.abs(i)<1&&Math.abs(i)>0;)i*=10;var r=[zr(Xx(e[0]/i)*i),zr(Ux(e[1]/i)*i)];this._interval=i,this._niceExtent=r}},e.prototype.calcNiceExtent=function(t){Hx.calcNiceExtent.call(this,t),this._fixMin=t.fixMin,this._fixMax=t.fixMax},e.prototype.parse=function(t){return t},e.prototype.contain=function(t){return fx(t=jx(t)/jx(this.base),this._extent)},e.prototype.normalize=function(t){return gx(t=jx(t)/jx(this.base),this._extent)},e.prototype.scale=function(t){return t=yx(t,this._extent),Zx(this.base,t)},e.type="log",e}(ox),Kx=qx.prototype;function $x(t,e){return Yx(t,Br(e))}Kx.getMinorTicks=Hx.getMinorTicks,Kx.getLabel=Hx.getLabel,ox.registerClass(qx);var Jx=function(){function t(t,e,n){this._prepareParams(t,e,n)}return t.prototype._prepareParams=function(t,e,n){n[1]0&&s>0&&!l&&(a=0),a<0&&s<0&&!u&&(s=0));var c=this._determinedMin,p=this._determinedMax;return null!=c&&(a=c,l=!0),null!=p&&(s=p,u=!0),{min:a,max:s,minFixed:l,maxFixed:u,isBlank:h}},t.prototype.modifyDataMinMax=function(t,e){this[t_[t]]=e},t.prototype.setDeterminedMinMax=function(t,e){var n=Qx[t];this[n]=e},t.prototype.freeze=function(){this.frozen=!0},t}(),Qx={min:"_determinedMin",max:"_determinedMax"},t_={min:"_dataMin",max:"_dataMax"};function e_(t,e,n){var i=t.rawExtentInfo;return i||(i=new Jx(t,e,n),t.rawExtentInfo=i,i)}function n_(t,e){return null==e?null:nt(e)?NaN:t.parse(e)}function i_(t,e){var n=t.type,i=e_(t,e,t.getExtent()).calculate();t.setBlank(i.isBlank);var r=i.min,o=i.max,a=e.ecModel;if(a&&"time"===n){var s=Cx("bar",a),l=!1;if(E(s,(function(t){l=l||t.getBaseAxis()===e.axis})),l){var u=Dx(s),h=function(t,e,n,i){var r=n.axis.getExtent(),o=r[1]-r[0],a=function(t,e,n){if(t&&e){var i=t[Tx(e)];return null!=i&&null!=n?i[Ix(n)]:i}}(i,n.axis);if(void 0===a)return{min:t,max:e};var s=1/0;E(a,(function(t){s=Math.min(t.offset,s)}));var l=-1/0;E(a,(function(t){l=Math.max(t.offset+t.width,l)})),s=Math.abs(s),l=Math.abs(l);var u=s+l,h=e-t,c=h/(1-(s+l)/o)-h;return{min:t-=c*(s/u),max:e+=c*(l/u)}}(r,o,e,u);r=h.min,o=h.max}}return{extent:[r,o],fixMin:i.minFixed,fixMax:i.maxFixed}}function r_(t,e){var n=e,i=i_(t,n),r=i.extent,o=n.get("splitNumber");t instanceof qx&&(t.base=n.get("logBase"));var a=t.type,s=n.get("interval"),l="interval"===a||"time"===a;t.setExtent(r[0],r[1]),t.calcNiceExtent({splitNumber:o,fixMin:i.fixMin,fixMax:i.fixMax,minInterval:l?n.get("minInterval"):null,maxInterval:l?n.get("maxInterval"):null}),null!=s&&t.setInterval&&t.setInterval(s)}function o_(t,e){if(e=e||t.get("type"))switch(e){case"category":return new vx({ordinalMeta:t.getOrdinalMeta?t.getOrdinalMeta():t.getCategories(),extent:[1/0,-1/0]});case"time":return new Rx({locale:t.ecModel.getLocaleModel(),useUTC:t.ecModel.get("useUTC")});default:return new(ox.getClass(e)||xx)}}function a_(t){var e,n,i=t.getLabelModel().get("formatter"),r="category"===t.type?t.scale.getExtent()[0]:null;return"time"===t.scale.type?(n=i,function(e,i){return t.scale.getFormattedLabel(e,i,n)}):X(i)?function(e){return function(n){var i=t.scale.getLabel(n);return e.replace("{value}",null!=i?i:"")}}(i):U(i)?(e=i,function(n,i){return null!=r&&(i=n.value-r),e(s_(t,n),i,null!=n.level?{level:n.level}:null)}):function(e){return t.scale.getLabel(e)}}function s_(t,e){return"category"===t.type?t.scale.getLabel(e):e.value}function l_(t,e){var n=e*Math.PI/180,i=t.width,r=t.height,o=i*Math.abs(Math.cos(n))+Math.abs(r*Math.sin(n)),a=i*Math.abs(Math.sin(n))+Math.abs(r*Math.cos(n));return new sr(t.x,t.y,o,a)}function u_(t){var e=t.get("interval");return null==e?"auto":e}function h_(t){return"category"===t.type&&0===u_(t.getLabelModel())}function c_(t,e){var n={};return E(t.mapDimensionsAll(e),(function(e){n[ix(t,e)]=!0})),G(n)}var p_=function(){function t(){}return t.prototype.getNeedCrossZero=function(){return!this.option.scale},t.prototype.getCoordSysModel=function(){},t}();var d_={isDimensionStacked:nx,enableDataStack:ex,getStackedDimension:ix};var f_=Object.freeze({__proto__:null,createList:function(t){return rx(null,t)},getLayoutRect:xp,dataStack:d_,createScale:function(t,e){var n=e;e instanceof dc||(n=new dc(e));var i=o_(n);return i.setExtent(t[0],t[1]),r_(i,n),i},mixinAxisModelCommonMethods:function(t){R(t,p_)},getECData:Hs,createTextStyle:function(t,e){return Uh(t,null,null,"normal"!==(e=e||{}).state)},createDimensions:function(t,e){return Km(t,e).dimensions},createSymbol:Ly,enableHoverEmphasis:Ol});function g_(t,e){return Math.abs(t-e)<1e-8}function y_(t,e,n){var i=0,r=t[0];if(!r)return!1;for(var o=1;on&&(t=r,n=a)}if(t)return function(t){for(var e=0,n=0,i=0,r=t.length,o=t[r-1][0],a=t[r-1][1],s=0;s>1^-(1&s),l=l>>1^-(1&l),r=s+=r,o=l+=o,i.push([s/n,l/n])}return i}function C_(t,e){return z(B((t=function(t){if(!t.UTF8Encoding)return t;var e=t,n=e.UTF8Scale;return null==n&&(n=1024),E(e.features,(function(t){var e=t.geometry,i=e.encodeOffsets,r=e.coordinates;if(i)switch(e.type){case"LineString":e.coordinates=T_(r,i,n);break;case"Polygon":case"MultiLineString":I_(r,i,n);break;case"MultiPolygon":E(r,(function(t,e){return I_(t,i[e],n)}))}})),e.UTF8Encoding=!1,e}(t)).features,(function(t){return t.geometry&&t.properties&&t.geometry.coordinates.length>0})),(function(t){var n=t.properties,i=t.geometry,r=[];switch(i.type){case"Polygon":var o=i.coordinates;r.push(new b_(o[0],o.slice(1)));break;case"MultiPolygon":E(i.coordinates,(function(t){t[0]&&r.push(new b_(t[0],t.slice(1)))}));break;case"LineString":r.push(new w_([i.coordinates]));break;case"MultiLineString":r.push(new w_(i.coordinates))}var a=new S_(n[e||"name"],r,n.cp);return a.properties=n,a}))}var D_=Object.freeze({__proto__:null,linearMap:Nr,round:zr,asc:Vr,getPrecision:Br,getPrecisionSafe:Fr,getPixelPrecision:Gr,getPercentWithPrecision:Wr,MAX_SAFE_INTEGER:Yr,remRadian:Ur,isRadianAroundZero:Xr,parseDate:jr,quantity:qr,quantityExponent:Kr,nice:$r,quantile:Jr,reformIntervals:Qr,isNumeric:eo,numericToNumber:to}),A_=Object.freeze({__proto__:null,parse:jr,format:Vc}),k_=Object.freeze({__proto__:null,extendShape:fh,extendPath:yh,makePath:xh,makeImage:_h,mergePath:wh,resizePath:Sh,createIcon:Ph,updateProps:rh,initProps:oh,getTransform:Ih,clipPointsByRect:kh,clipRectByRect:Lh,registerShape:vh,getShapeClass:mh,Group:Cr,Image:_s,Text:ks,Circle:hu,Ellipse:pu,Sector:Cu,Ring:Au,Polygon:Pu,Polyline:Ru,Rect:Cs,Line:zu,BezierCurve:Gu,Arc:Hu,IncrementalDisplayable:th,CompoundPath:Yu,LinearGradient:Xu,RadialGradient:Zu,BoundingRect:sr}),L_=Object.freeze({__proto__:null,addCommas:ep,toCamelCase:np,normalizeCssArray:ip,encodeHTML:ap,formatTpl:hp,getTooltipMarker:cp,formatTime:function(t,e,n){"week"!==t&&"month"!==t&&"quarter"!==t&&"half-year"!==t&&"year"!==t||(t="MM-dd\nyyyy");var i=jr(e),r=n?"getUTC":"get",o=i[r+"FullYear"](),a=i[r+"Month"]()+1,s=i[r+"Date"](),l=i[r+"Hours"](),u=i[r+"Minutes"](),h=i[r+"Seconds"](),c=i[r+"Milliseconds"]();return t=t.replace("MM",Nc(a,2)).replace("M",a).replace("yyyy",o).replace("yy",Nc(o%100+"",2)).replace("dd",Nc(s,2)).replace("d",s).replace("hh",Nc(l,2)).replace("h",l).replace("mm",Nc(u,2)).replace("m",u).replace("ss",Nc(h,2)).replace("s",h).replace("SSS",Nc(c,3))},capitalFirst:function(t){return t?t.charAt(0).toUpperCase()+t.substr(1):t},truncateText:$o,getTextRect:function(t,e,n,i,r,o,a,s){return new ks({style:{text:t,font:e,align:n,verticalAlign:i,padding:r,rich:o,overflow:a?"truncate":null,lineHeight:s}}).getBoundingRect()}}),P_=Object.freeze({__proto__:null,map:z,each:E,indexOf:P,inherits:O,reduce:V,filter:B,bind:W,curry:H,isArray:Y,isString:X,isObject:q,isFunction:U,extend:A,defaults:k,clone:T,merge:C}),O_=So();function R_(t){return"category"===t.type?function(t){var e=t.getLabelModel(),n=E_(t,e);return!e.get("show")||t.scale.isBlank()?{labels:[],labelCategoryInterval:n.labelCategoryInterval}:n}(t):function(t){var e=t.scale.getTicks(),n=a_(t);return{labels:z(e,(function(e,i){return{level:e.level,formattedLabel:n(e,i),rawLabel:t.scale.getLabel(e),tickValue:e.value}}))}}(t)}function N_(t,e){return"category"===t.type?function(t,e){var n,i,r=z_(t,"ticks"),o=u_(e),a=V_(r,o);if(a)return a;e.get("show")&&!t.scale.isBlank()||(n=[]);if(U(o))n=G_(t,o,!0);else if("auto"===o){var s=E_(t,t.getLabelModel());i=s.labelCategoryInterval,n=z(s.labels,(function(t){return t.tickValue}))}else n=F_(t,i=o,!0);return B_(r,o,{ticks:n,tickCategoryInterval:i})}(t,e):{ticks:z(t.scale.getTicks(),(function(t){return t.value}))}}function E_(t,e){var n,i,r=z_(t,"labels"),o=u_(e),a=V_(r,o);return a||(U(o)?n=G_(t,o):(i="auto"===o?function(t){var e=O_(t).autoInterval;return null!=e?e:O_(t).autoInterval=t.calculateCategoryInterval()}(t):o,n=F_(t,i)),B_(r,o,{labels:n,labelCategoryInterval:i}))}function z_(t,e){return O_(t)[e]||(O_(t)[e]=[])}function V_(t,e){for(var n=0;n1&&h/l>2&&(u=Math.round(Math.ceil(u/l)*l));var c=h_(t),p=a.get("showMinLabel")||c,d=a.get("showMaxLabel")||c;p&&u!==o[0]&&g(o[0]);for(var f=u;f<=o[1];f+=l)g(f);function g(t){var e={value:t};s.push(n?t:{formattedLabel:i(e),rawLabel:r.getLabel(e),tickValue:t})}return d&&f-l!==o[1]&&g(o[1]),s}function G_(t,e,n){var i=t.scale,r=a_(t),o=[];return E(i.getTicks(),(function(t){var a=i.getLabel(t),s=t.value;e(t.value,a)&&o.push(n?s:{formattedLabel:r(t),rawLabel:a,tickValue:s})})),o}var W_=[0,1],H_=function(){function t(t,e,n){this.onBand=!1,this.inverse=!1,this.dim=t,this.scale=e,this._extent=n||[0,0]}return t.prototype.contain=function(t){var e=this._extent,n=Math.min(e[0],e[1]),i=Math.max(e[0],e[1]);return t>=n&&t<=i},t.prototype.containData=function(t){return this.scale.contain(t)},t.prototype.getExtent=function(){return this._extent.slice()},t.prototype.getPixelPrecision=function(t){return Gr(t||this.scale.getExtent(),this._extent)},t.prototype.setExtent=function(t,e){var n=this._extent;n[0]=t,n[1]=e},t.prototype.dataToCoord=function(t,e){var n=this._extent,i=this.scale;return t=i.normalize(t),this.onBand&&"ordinal"===i.type&&Y_(n=n.slice(),i.count()),Nr(t,W_,n,e)},t.prototype.coordToData=function(t,e){var n=this._extent,i=this.scale;this.onBand&&"ordinal"===i.type&&Y_(n=n.slice(),i.count());var r=Nr(t,n,W_,e);return this.scale.scale(r)},t.prototype.pointToData=function(t,e){},t.prototype.getTicksCoords=function(t){var e=(t=t||{}).tickModel||this.getTickModel(),n=z(N_(this,e).ticks,(function(t){return{coord:this.dataToCoord("ordinal"===this.scale.type?this.scale.getRawOrdinalNumber(t):t),tickValue:t}}),this);return function(t,e,n,i){var r=e.length;if(!t.onBand||n||!r)return;var o,a,s=t.getExtent();if(1===r)e[0].coord=s[0],o=e[1]={coord:s[0]};else{var l=e[r-1].tickValue-e[0].tickValue,u=(e[r-1].coord-e[0].coord)/l;E(e,(function(t){t.coord-=u/2})),a=1+t.scale.getExtent()[1]-e[r-1].tickValue,o={coord:e[r-1].coord+u*a},e.push(o)}var h=s[0]>s[1];c(e[0].coord,s[0])&&(i?e[0].coord=s[0]:e.shift());i&&c(s[0],e[0].coord)&&e.unshift({coord:s[0]});c(s[1],o.coord)&&(i?o.coord=s[1]:e.pop());i&&c(o.coord,s[1])&&e.push({coord:s[1]});function c(t,e){return t=zr(t),e=zr(e),h?t>e:t0&&t<100||(t=5),z(this.scale.getMinorTicks(t),(function(t){return z(t,(function(t){return{coord:this.dataToCoord(t),tickValue:t}}),this)}),this)},t.prototype.getViewLabels=function(){return R_(this).labels},t.prototype.getLabelModel=function(){return this.model.getModel("axisLabel")},t.prototype.getTickModel=function(){return this.model.getModel("axisTick")},t.prototype.getBandWidth=function(){var t=this._extent,e=this.scale.getExtent(),n=e[1]-e[0]+(this.onBand?1:0);0===n&&(n=1);var i=Math.abs(t[1]-t[0]);return Math.abs(i)/n},t.prototype.calculateCategoryInterval=function(){return function(t){var e=function(t){var e=t.getLabelModel();return{axisRotate:t.getRotate?t.getRotate():t.isHorizontal&&!t.isHorizontal()?90:0,labelRotate:e.get("rotate")||0,font:e.getFont()}}(t),n=a_(t),i=(e.axisRotate-e.labelRotate)/180*Math.PI,r=t.scale,o=r.getExtent(),a=r.count();if(o[1]-o[0]<1)return 0;var s=1;a>40&&(s=Math.max(1,Math.floor(a/40)));for(var l=o[0],u=t.dataToCoord(l+1)-t.dataToCoord(l),h=Math.abs(u*Math.cos(i)),c=Math.abs(u*Math.sin(i)),p=0,d=0;l<=o[1];l+=s){var f,g,y=cr(n({value:l}),e.font,"center","top");f=1.3*y.width,g=1.3*y.height,p=Math.max(p,f,7),d=Math.max(d,g,7)}var v=p/h,m=d/c;isNaN(v)&&(v=1/0),isNaN(m)&&(m=1/0);var x=Math.max(0,Math.floor(Math.min(v,m))),_=O_(t.model),b=t.getExtent(),w=_.lastAutoInterval,S=_.lastTickCount;return null!=w&&null!=S&&Math.abs(w-x)<=1&&Math.abs(S-a)<=1&&w>x&&_.axisExtent0===b[0]&&_.axisExtent1===b[1]?x=w:(_.lastTickCount=a,_.lastAutoInterval=x,_.axisExtent0=b[0],_.axisExtent1=b[1]),x}(this)},t}();function Y_(t,e){var n=(t[1]-t[0])/e/2;t[0]+=n,t[1]-=n}var U_=2*Math.PI,X_=qa.CMD,Z_=["top","right","bottom","left"];function j_(t,e,n,i,r){var o=n.width,a=n.height;switch(t){case"top":i.set(n.x+o/2,n.y-e),r.set(0,-1);break;case"bottom":i.set(n.x+o/2,n.y+a+e),r.set(0,1);break;case"left":i.set(n.x-e,n.y+a/2),r.set(-1,0);break;case"right":i.set(n.x+o+e,n.y+a/2),r.set(1,0)}}function q_(t,e,n,i,r,o,a,s,l){a-=t,s-=e;var u=Math.sqrt(a*a+s*s),h=(a/=u)*n+t,c=(s/=u)*n+e;if(Math.abs(i-r)%U_<1e-4)return l[0]=h,l[1]=c,u-n;if(o){var p=i;i=ts(r),r=ts(p)}else i=ts(i),r=ts(r);i>r&&(r+=U_);var d=Math.atan2(s,a);if(d<0&&(d+=U_),d>=i&&d<=r||d+U_>=i&&d+U_<=r)return l[0]=h,l[1]=c,u-n;var f=n*Math.cos(i)+t,g=n*Math.sin(i)+e,y=n*Math.cos(r)+t,v=n*Math.sin(r)+e,m=(f-a)*(f-a)+(g-s)*(g-s),x=(y-a)*(y-a)+(v-s)*(v-s);return m0){e=e/180*Math.PI,eb.fromArray(t[0]),nb.fromArray(t[1]),ib.fromArray(t[2]),Ji.sub(rb,eb,nb),Ji.sub(ob,ib,nb);var n=rb.len(),i=ob.len();if(!(n<.001||i<.001)){rb.scale(1/n),ob.scale(1/i);var r=rb.dot(ob);if(Math.cos(e)1&&Ji.copy(lb,ib),lb.toArray(t[1])}}}}function hb(t,e,n){if(n<=180&&n>0){n=n/180*Math.PI,eb.fromArray(t[0]),nb.fromArray(t[1]),ib.fromArray(t[2]),Ji.sub(rb,nb,eb),Ji.sub(ob,ib,nb);var i=rb.len(),r=ob.len();if(!(i<.001||r<.001))if(rb.scale(1/i),ob.scale(1/r),rb.dot(e)=a)Ji.copy(lb,ib);else{lb.scaleAndAdd(ob,o/Math.tan(Math.PI/2-s));var l=ib.x!==nb.x?(lb.x-nb.x)/(ib.x-nb.x):(lb.y-nb.y)/(ib.y-nb.y);if(isNaN(l))return;l<0?Ji.copy(lb,nb):l>1&&Ji.copy(lb,ib)}lb.toArray(t[1])}}}function cb(t,e,n,i){var r="normal"===n,o=r?t:t.ensureState(n);o.ignore=e;var a=i.get("smooth");a&&!0===a&&(a=.3),o.shape=o.shape||{},a>0&&(o.shape.smooth=a);var s=i.getModel("lineStyle").getLineStyle();r?t.useStyle(s):o.style=s}function pb(t,e){var n=e.smooth,i=e.points;if(i)if(t.moveTo(i[0][0],i[0][1]),n>0&&i.length>=3){var r=Et(i[0],i[1]),o=Et(i[1],i[2]);if(!r||!o)return t.lineTo(i[1][0],i[1][1]),void t.lineTo(i[2][0],i[2][1]);var a=Math.min(r,o)*n,s=Bt([],i[1],i[0],a/r),l=Bt([],i[1],i[2],a/o),u=Bt([],s,l,.5);t.bezierCurveTo(s[0],s[1],s[0],s[1],u[0],u[1]),t.bezierCurveTo(l[0],l[1],l[0],l[1],i[2][0],i[2][1])}else for(var h=1;h0&&o&&_(-h/a,0,a);var f,g,y=t[0],v=t[a-1];return m(),f<0&&b(-f,.8),g<0&&b(g,.8),m(),x(f,g,1),x(g,f,-1),m(),f<0&&w(-f),g<0&&w(g),u}function m(){f=y.rect[e]-i,g=r-v.rect[e]-v.rect[n]}function x(t,e,n){if(t<0){var i=Math.min(e,-t);if(i>0){_(i*n,0,a);var r=i+t;r<0&&b(-r*n,1)}else b(-t*n,1)}}function _(n,i,r){0!==n&&(u=!0);for(var o=i;o0)for(l=0;l0;l--){_(-(o[l-1]*c),l,a)}}}function w(t){var e=t<0?-1:1;t=Math.abs(t);for(var n=Math.ceil(t/(a-1)),i=0;i0?_(n,0,i+1):_(-n,a-i-1,a),(t-=n)<=0)return}}function vb(t,e,n,i){return yb(t,"y","height",e,n,i)}function mb(t){var e=[];t.sort((function(t,e){return e.priority-t.priority}));var n=new sr(0,0,0,0);function i(t){if(!t.ignore){var e=t.ensureState("emphasis");null==e.ignore&&(e.ignore=!1)}t.ignore=!0}for(var r=0;r=0&&n.attr(d.oldLayoutSelect),P(u,"emphasis")>=0&&n.attr(d.oldLayoutEmphasis)),rh(n,s,e,a)}else if(n.attr(s),!Jh(n).valueAnimation){var h=rt(n.style.opacity,1);n.style.opacity=0,oh(n,{style:{opacity:h}},e,a)}if(d.oldLayout=s,n.states.select){var c=d.oldLayoutSelect={};Ib(c,s,Tb),Ib(c,n.states.select,Tb)}if(n.states.emphasis){var p=d.oldLayoutEmphasis={};Ib(p,s,Tb),Ib(p,n.states.emphasis,Tb)}tc(n,a,l,e,e)}if(i&&!i.ignore&&!i.invisible){r=(d=Mb(i)).oldLayout;var d,f={points:i.shape.points};r?(i.attr({shape:r}),rh(i,{shape:f},e)):(i.setShape(f),i.style.strokePercent=0,oh(i,{style:{strokePercent:1}},e)),d.oldLayout=f}},t}(),Db=So();var Ab=Math.sin,kb=Math.cos,Lb=Math.PI,Pb=2*Math.PI,Ob=180/Lb,Rb=function(){function t(){}return t.prototype.reset=function(t){this._start=!0,this._d=[],this._str="",this._p=Math.pow(10,t||4)},t.prototype.moveTo=function(t,e){this._add("M",t,e)},t.prototype.lineTo=function(t,e){this._add("L",t,e)},t.prototype.bezierCurveTo=function(t,e,n,i,r,o){this._add("C",t,e,n,i,r,o)},t.prototype.quadraticCurveTo=function(t,e,n,i){this._add("Q",t,e,n,i)},t.prototype.arc=function(t,e,n,i,r,o){this.ellipse(t,e,n,n,0,i,r,o)},t.prototype.ellipse=function(t,e,n,i,r,o,a,s){var l=a-o,u=!s,h=Math.abs(l),c=En(h-Pb)||(u?l>=Pb:-l>=Pb),p=l>0?l%Pb:l%Pb+Pb,d=!1;d=!!c||!En(h)&&p>=Lb==!!u;var f=t+n*kb(o),g=e+i*Ab(o);this._start&&this._add("M",f,g);var y=Math.round(r*Ob);if(c){var v=1/this._p,m=(u?1:-1)*(Pb-v);this._add("A",n,i,y,1,+u,t+n*kb(o+m),e+i*Ab(o+m)),v>.01&&this._add("A",n,i,y,0,+u,f,g)}else{var x=t+n*kb(a),_=e+i*Ab(a);this._add("A",n,i,y,+d,+u,x,_)}},t.prototype.rect=function(t,e,n,i){this._add("M",t,e),this._add("l",n,0),this._add("l",0,i),this._add("l",-n,0),this._add("Z")},t.prototype.closePath=function(){this._d.length>0&&this._add("Z")},t.prototype._add=function(t,e,n,i,r,o,a,s,l){for(var u=[],h=this._p,c=1;c"}(r,e.attrs)+(e.text||"")+(i?""+n+z(i,(function(e){return t(e)})).join(n)+n:"")+("")}(t)}function Ub(t){return{zrId:t,shadowCache:{},patternCache:{},gradientCache:{},clipPathCache:{},defs:{},cssNodes:{},cssAnims:{},cssClassIdx:0,cssAnimIdx:0,shadowIdx:0,gradientIdx:0,patternIdx:0,clipPathIdx:0}}function Xb(t,e,n,i){return Hb("svg","root",{width:t,height:e,xmlns:Fb,"xmlns:xlink":Gb,version:"1.1",baseProfile:"full",viewBox:!!i&&"0 0 "+t+" "+e},n)}var Zb={cubicIn:"0.32,0,0.67,0",cubicOut:"0.33,1,0.68,1",cubicInOut:"0.65,0,0.35,1",quadraticIn:"0.11,0,0.5,0",quadraticOut:"0.5,1,0.89,1",quadraticInOut:"0.45,0,0.55,1",quarticIn:"0.5,0,0.75,0",quarticOut:"0.25,1,0.5,1",quarticInOut:"0.76,0,0.24,1",quinticIn:"0.64,0,0.78,0",quinticOut:"0.22,1,0.36,1",quinticInOut:"0.83,0,0.17,1",sinusoidalIn:"0.12,0,0.39,0",sinusoidalOut:"0.61,1,0.88,1",sinusoidalInOut:"0.37,0,0.63,1",exponentialIn:"0.7,0,0.84,0",exponentialOut:"0.16,1,0.3,1",exponentialInOut:"0.87,0,0.13,1",circularIn:"0.55,0,1,0.45",circularOut:"0,0.55,0.45,1",circularInOut:"0.85,0,0.15,1"},jb="transform-origin";function qb(t,e,n){var i=A({},t.shape);A(i,e),t.buildPath(n,i);var r=new Rb;return r.reset(Yn(t)),n.rebuildPath(r,1),r.generateStr(),r.getStr()}function Kb(t,e){var n=e.originX,i=e.originY;(n||i)&&(t[jb]=n+"px "+i+"px")}var $b={fill:"fill",opacity:"opacity",lineWidth:"stroke-width",lineDashOffset:"stroke-dashoffset"};function Jb(t,e){var n=e.zrId+"-ani-"+e.cssAnimIdx++;return e.cssAnims[n]=t,n}function Qb(t){return X(t)?Zb[t]?"cubic-bezier("+Zb[t]+")":rn(t)?t:"":""}function tw(t,e,n,i){var r=t.animators,o=r.length,a=[];if(t instanceof Yu){if(y=function(t,e,n){var i,r,o=t.shape.paths,a={};if(E(o,(function(t){var e=Ub(n.zrId);e.animation=!0,tw(t,{},e,!0);var o=e.cssAnims,s=e.cssNodes,l=G(o),u=l.length;if(u){var h=o[r=l[u-1]];for(var c in h){var p=h[c];a[c]=a[c]||{d:""},a[c].d+=p.d||""}for(var d in s){var f=s[d].animation;f.indexOf(r)>=0&&(i=f)}}})),i){e.d=!1;var s=Jb(a,n);return i.replace(r,s)}}(t,e,n))a.push(y);else if(!o)return}else if(!o)return;for(var s={},l=0;l0})).length)return Jb(h,n)+" "+r[0]+" both"}for(var g in s){var y;(y=f(s[g]))&&a.push(y)}if(a.length){var v=n.zrId+"-cls-"+n.cssClassIdx++;n.cssNodes["."+v]={animation:a.join(",")},e.class=v}}var ew=Math.round;function nw(t){return t&&X(t.src)}function iw(t){return t&&U(t.toDataURL)}function rw(t,e,n,i){Bb((function(r,o){var a="fill"===r||"stroke"===r;a&&function(t){return t&&("linear"===t.type||"radial"===t.type)}(o)?function(t,e,n,i){var r,o=t[n],a={gradientUnits:o.global?"userSpaceOnUse":"objectBoundingBox"};if(Gn(o))r="linearGradient",a.x1=o.x,a.y1=o.y,a.x2=o.x2,a.y2=o.y2;else{if(!Wn(o))return void 0;r="radialGradient",a.cx=rt(o.x,.5),a.cy=rt(o.y,.5),a.r=rt(o.r,.5)}for(var s=o.colorStops,l=[],u=0,h=s.length;ul?Dw(t,null==n[c+1]?null:n[c+1].elm,n,s,c):Aw(t,e,a,l))}(n,i,r):Mw(r)?(Mw(t.text)&&bw(n,""),Dw(n,null,r,0,r.length-1)):Mw(i)?Aw(n,i,0,i.length-1):Mw(t.text)&&bw(n,""):t.text!==e.text&&(Mw(i)&&Aw(n,i,0,i.length-1),bw(n,e.text)))}var Pw=0,Ow=function(){function t(t,e,n){if(this.type="svg",this.refreshHover=Rw("refreshHover"),this.configLayer=Rw("configLayer"),this.storage=e,this._opts=n=A({},n),this.root=t,this._id="zr"+Pw++,this._oldVNode=Xb(n.width,n.height),t&&!n.ssr){var i=this._viewport=document.createElement("div");i.style.cssText="position:relative;overflow:hidden";var r=this._svgDom=this._oldVNode.elm=Wb("svg");kw(null,this._oldVNode),i.appendChild(r),t.appendChild(i)}this.resize(n.width,n.height)}return t.prototype.getType=function(){return this.type},t.prototype.getViewportRoot=function(){return this._viewport},t.prototype.getViewportRootOffset=function(){var t=this.getViewportRoot();if(t)return{offsetLeft:t.offsetLeft||0,offsetTop:t.offsetTop||0}},t.prototype.getSvgDom=function(){return this._svgDom},t.prototype.refresh=function(){if(this.root){var t=this.renderToVNode({willUpdate:!0});t.attrs.style="position:absolute;left:0;top:0;user-select:none",function(t,e){if(Tw(t,e))Lw(t,e);else{var n=t.elm,i=xw(n);Cw(e),null!==i&&(yw(i,e.elm,_w(n)),Aw(i,[t],0,0))}}(this._oldVNode,t),this._oldVNode=t}},t.prototype.renderOneToVNode=function(t){return dw(t,Ub(this._id))},t.prototype.renderToVNode=function(t){t=t||{};var e=this.storage.getDisplayList(!0),n=this._backgroundColor,i=this._width,r=this._height,o=Ub(this._id);o.animation=t.animation,o.willUpdate=t.willUpdate,o.compress=t.compress;var a=[];if(n&&"none"!==n){var s=Rn(n),l=s.color,u=s.opacity;this._bgVNode=Hb("rect","bg",{width:i,height:r,x:"0",y:"0",id:"0",fill:l,"fill-opacity":u}),a.push(this._bgVNode)}else this._bgVNode=null;var h=t.compress?null:this._mainVNode=Hb("g","main",{},[]);this._paintList(e,o,h?h.children:a),h&&a.push(h);var c=z(G(o.defs),(function(t){return o.defs[t]}));if(c.length&&a.push(Hb("defs","defs",{},c)),t.animation){var p=function(t,e,n){var i=(n=n||{}).newline?"\n":"",r=" {"+i,o=i+"}",a=z(G(t),(function(e){return e+r+z(G(t[e]),(function(n){return n+":"+t[e][n]+";"})).join(i)+o})).join(i),s=z(G(e),(function(t){return"@keyframes "+t+r+z(G(e[t]),(function(n){return n+r+z(G(e[t][n]),(function(i){var r=e[t][n][i];return"d"===i&&(r='path("'+r+'")'),i+":"+r+";"})).join(i)+o})).join(i)+o})).join(i);return a||s?[""].join(i):""}(o.cssNodes,o.cssAnims,{newline:!0});if(p){var d=Hb("style","stl",{},[],p);a.push(d)}}return Xb(i,r,a,t.useViewBox)},t.prototype.renderToString=function(t){return t=t||{},Yb(this.renderToVNode({animation:rt(t.cssAnimation,!0),willUpdate:!1,compress:!0,useViewBox:rt(t.useViewBox,!0)}),{newline:!0})},t.prototype.setBackgroundColor=function(t){this._backgroundColor=t;var e=this._bgVNode;if(e&&e.elm){var n=Rn(t),i=n.color,r=n.opacity;e.elm.setAttribute("fill",i),r<1&&e.elm.setAttribute("fill-opacity",r)}},t.prototype.getSvgRoot=function(){return this._mainVNode&&this._mainVNode.elm},t.prototype._paintList=function(t,e,n){for(var i,r,o=t.length,a=[],s=0,l=0,u=0;u=0&&(!c||!r||c[f]!==r[f]);f--);for(var g=d-1;g>f;g--)i=a[--s-1];for(var y=f+1;y=a)}}for(var h=this.__startIndex;h15)break}n.prevElClipPaths&&u.restore()};if(p)if(0===p.length)s=l.__endIndex;else for(var _=d.dpr,b=0;b0&&t>i[0]){for(s=0;st);s++);a=n[i[s]]}if(i.splice(s+1,0,t),n[t]=e,!e.virtual)if(a){var l=a.dom;l.nextSibling?o.insertBefore(e.dom,l.nextSibling):o.appendChild(e.dom)}else o.firstChild?o.insertBefore(e.dom,o.firstChild):o.appendChild(e.dom);e.__painter=this}},t.prototype.eachLayer=function(t,e){for(var n=this._zlevelList,i=0;i0?Bw:0),this._needsManuallyCompositing),u.__builtin__||I("ZLevel "+l+" has been used by unkown layer "+u.id),u!==o&&(u.__used=!0,u.__startIndex!==r&&(u.__dirty=!0),u.__startIndex=r,u.incremental?u.__drawIndex=-1:u.__drawIndex=r,e(r),o=u),1&s.__dirty&&!s.__inHover&&(u.__dirty=!0,u.incremental&&u.__drawIndex<0&&(u.__drawIndex=r))}e(r),this.eachBuiltinLayer((function(t,e){!t.__used&&t.getElementCount()>0&&(t.__dirty=!0,t.__startIndex=t.__endIndex=t.__drawIndex=0),t.__dirty&&t.__drawIndex<0&&(t.__drawIndex=t.__startIndex)}))},t.prototype.clear=function(){return this.eachBuiltinLayer(this._clearLayer),this},t.prototype._clearLayer=function(t){t.clear()},t.prototype.setBackgroundColor=function(t){this._backgroundColor=t,E(this._layers,(function(t){t.setUnpainted()}))},t.prototype.configLayer=function(t,e){if(e){var n=this._layerConfig;n[t]?C(n[t],e,!0):n[t]=e;for(var i=0;i-1&&(s.style.stroke=s.style.fill,s.style.fill="#fff",s.style.lineWidth=2),e},e.type="series.line",e.dependencies=["grid","polar"],e.defaultOption={z:3,coordinateSystem:"cartesian2d",legendHoverLink:!0,clip:!0,label:{position:"top"},endLabel:{show:!1,valueAnimation:!0,distance:8},lineStyle:{width:2,type:"solid"},emphasis:{scale:!0},step:!1,smooth:!1,smoothMonotone:null,symbol:"emptyCircle",symbolSize:4,symbolRotate:null,showSymbol:!0,showAllSymbol:"auto",connectNulls:!1,sampling:"none",animationEasing:"linear",progressive:0,hoverLayerThreshold:1/0,universalTransition:{divideShape:"clone"},triggerLineEvent:!1},e}(sg);function Ww(t,e){var n=t.mapDimensionsAll("defaultedLabel"),i=n.length;if(1===i){var r=af(t,e,n[0]);return null!=r?r+"":null}if(i){for(var o=[],a=0;a=0&&i.push(e[o])}return i.join(" ")}var Yw=function(t){function e(e,n,i,r){var o=t.call(this)||this;return o.updateData(e,n,i,r),o}return n(e,t),e.prototype._createSymbol=function(t,e,n,i,r){this.removeAll();var o=Ly(t,-1,-1,2,2,null,r);o.attr({z2:100,culling:!0,scaleX:i[0]/2,scaleY:i[1]/2}),o.drift=Uw,this._symbolType=t,this.add(o)},e.prototype.stopSymbolAnimation=function(t){this.childAt(0).stopAnimation(null,t)},e.prototype.getSymbolType=function(){return this._symbolType},e.prototype.getSymbolPath=function(){return this.childAt(0)},e.prototype.highlight=function(){_l(this.childAt(0))},e.prototype.downplay=function(){bl(this.childAt(0))},e.prototype.setZ=function(t,e){var n=this.childAt(0);n.zlevel=t,n.z=e},e.prototype.setDraggable=function(t,e){var n=this.childAt(0);n.draggable=t,n.cursor=!e&&t?"move":n.cursor},e.prototype.updateData=function(t,n,i,r){this.silent=!1;var o=t.getItemVisual(n,"symbol")||"circle",a=t.hostModel,s=e.getSymbolSize(t,n),l=o!==this._symbolType,u=r&&r.disableAnimation;if(l){var h=t.getItemVisual(n,"symbolKeepAspect");this._createSymbol(o,t,n,s,h)}else{(p=this.childAt(0)).silent=!1;var c={scaleX:s[0]/2,scaleY:s[1]/2};u?p.attr(c):rh(p,c,a,n),hh(p)}if(this._updateCommon(t,n,s,i,r),l){var p=this.childAt(0);if(!u){c={scaleX:this._sizeX,scaleY:this._sizeY,style:{opacity:p.style.opacity}};p.scaleX=p.scaleY=0,p.style.opacity=0,oh(p,c,a,n)}}u&&this.childAt(0).stopAnimation("leave")},e.prototype._updateCommon=function(t,e,n,i,r){var o,a,s,l,u,h,c,p,d,f=this.childAt(0),g=t.hostModel;if(i&&(o=i.emphasisItemStyle,a=i.blurItemStyle,s=i.selectItemStyle,l=i.focus,u=i.blurScope,c=i.labelStatesModels,p=i.hoverScale,d=i.cursorStyle,h=i.emphasisDisabled),!i||t.hasItemOption){var y=i&&i.itemModel?i.itemModel:t.getItemModel(e),v=y.getModel("emphasis");o=v.getModel("itemStyle").getItemStyle(),s=y.getModel(["select","itemStyle"]).getItemStyle(),a=y.getModel(["blur","itemStyle"]).getItemStyle(),l=v.get("focus"),u=v.get("blurScope"),h=v.get("disabled"),c=Yh(y),p=v.getShallow("scale"),d=y.getShallow("cursor")}var m=t.getItemVisual(e,"symbolRotate");f.attr("rotation",(m||0)*Math.PI/180||0);var x=Oy(t.getItemVisual(e,"symbolOffset"),n);x&&(f.x=x[0],f.y=x[1]),d&&f.attr("cursor",d);var _=t.getItemVisual(e,"style"),b=_.fill;if(f instanceof _s){var w=f.style;f.useStyle(A({image:w.image,x:w.x,y:w.y,width:w.width,height:w.height},_))}else f.__isEmptyBrush?f.useStyle(A({},_)):f.useStyle(_),f.style.decal=null,f.setColor(b,r&&r.symbolInnerColor),f.style.strokeNoScale=!0;var S=t.getItemVisual(e,"liftZ"),M=this._z2;null!=S?null==M&&(this._z2=f.z2,f.z2+=S):null!=M&&(f.z2=M,this._z2=null);var I=r&&r.useNameLabel;Hh(f,c,{labelFetcher:g,labelDataIndex:e,defaultText:function(e){return I?t.getName(e):Ww(t,e)},inheritColor:b,defaultOpacity:_.opacity}),this._sizeX=n[0]/2,this._sizeY=n[1]/2;var T=f.ensureState("emphasis");if(T.style=o,f.ensureState("select").style=s,f.ensureState("blur").style=a,p){var C=Math.max(j(p)?p:1.1,3/this._sizeY);T.scaleX=this._sizeX*C,T.scaleY=this._sizeY*C}this.setSymbolScale(1),Rl(this,l,u,h)},e.prototype.setSymbolScale=function(t){this.scaleX=this.scaleY=t},e.prototype.fadeOut=function(t,e,n){var i=this.childAt(0),r=Hs(this).dataIndex,o=n&&n.animation;if(this.silent=i.silent=!0,n&&n.fadeLabel){var a=i.getTextContent();a&&sh(a,{style:{opacity:0}},e,{dataIndex:r,removeOpt:o,cb:function(){i.removeTextContent()}})}else i.removeTextContent();sh(i,{style:{opacity:0},scaleX:0,scaleY:0},e,{dataIndex:r,cb:t,removeOpt:o})},e.getSymbolSize=function(t,e){return Py(t.getItemVisual(e,"symbolSize"))},e}(Cr);function Uw(t,e){this.parent.drift(t,e)}function Xw(t,e,n,i){return e&&!isNaN(e[0])&&!isNaN(e[1])&&!(i.isIgnore&&i.isIgnore(n))&&!(i.clipShape&&!i.clipShape.contain(e[0],e[1]))&&"none"!==t.getItemVisual(n,"symbol")}function Zw(t){return null==t||q(t)||(t={isIgnore:t}),t||{}}function jw(t){var e=t.hostModel,n=e.getModel("emphasis");return{emphasisItemStyle:n.getModel("itemStyle").getItemStyle(),blurItemStyle:e.getModel(["blur","itemStyle"]).getItemStyle(),selectItemStyle:e.getModel(["select","itemStyle"]).getItemStyle(),focus:n.get("focus"),blurScope:n.get("blurScope"),emphasisDisabled:n.get("disabled"),hoverScale:n.get("scale"),labelStatesModels:Yh(e),cursorStyle:e.get("cursor")}}var qw=function(){function t(t){this.group=new Cr,this._SymbolCtor=t||Yw}return t.prototype.updateData=function(t,e){this._progressiveEls=null,e=Zw(e);var n=this.group,i=t.hostModel,r=this._data,o=this._SymbolCtor,a=e.disableAnimation,s=jw(t),l={disableAnimation:a},u=e.getSymbolPoint||function(e){return t.getItemLayout(e)};r||n.removeAll(),t.diff(r).add((function(i){var r=u(i);if(Xw(t,r,i,e)){var a=new o(t,i,s,l);a.setPosition(r),t.setItemGraphicEl(i,a),n.add(a)}})).update((function(h,c){var p=r.getItemGraphicEl(c),d=u(h);if(Xw(t,d,h,e)){var f=t.getItemVisual(h,"symbol")||"circle",g=p&&p.getSymbolType&&p.getSymbolType();if(!p||g&&g!==f)n.remove(p),(p=new o(t,h,s,l)).setPosition(d);else{p.updateData(t,h,s,l);var y={x:d[0],y:d[1]};a?p.attr(y):rh(p,y,i)}n.add(p),t.setItemGraphicEl(h,p)}else n.remove(p)})).remove((function(t){var e=r.getItemGraphicEl(t);e&&e.fadeOut((function(){n.remove(e)}),i)})).execute(),this._getSymbolPoint=u,this._data=t},t.prototype.updateLayout=function(){var t=this,e=this._data;e&&e.eachItemGraphicEl((function(e,n){var i=t._getSymbolPoint(n);e.setPosition(i),e.markRedraw()}))},t.prototype.incrementalPrepareUpdate=function(t){this._seriesScope=jw(t),this._data=null,this.group.removeAll()},t.prototype.incrementalUpdate=function(t,e,n){function i(t){t.isGroup||(t.incremental=!0,t.ensureState("emphasis").hoverLayer=!0)}this._progressiveEls=[],n=Zw(n);for(var r=t.start;r0?n=i[0]:i[1]<0&&(n=i[1]);return n}(r,n),a=i.dim,s=r.dim,l=e.mapDimension(s),u=e.mapDimension(a),h="x"===s||"radius"===s?1:0,c=z(t.dimensions,(function(t){return e.mapDimension(t)})),p=!1,d=e.getCalculationInfo("stackResultDimension");return nx(e,c[0])&&(p=!0,c[0]=d),nx(e,c[1])&&(p=!0,c[1]=d),{dataDimsForPoint:c,valueStart:o,valueAxisDim:s,baseAxisDim:a,stacked:!!p,valueDim:l,baseDim:u,baseDataOffset:h,stackedOverDimension:e.getCalculationInfo("stackedOverDimension")}}function $w(t,e,n,i){var r=NaN;t.stacked&&(r=n.get(n.getCalculationInfo("stackedOverDimension"),i)),isNaN(r)&&(r=t.valueStart);var o=t.baseDataOffset,a=[];return a[o]=n.get(t.baseDim,i),a[1-o]=r,e.dataToPoint(a)}var Jw=Math.min,Qw=Math.max;function tS(t,e){return isNaN(t)||isNaN(e)}function eS(t,e,n,i,r,o,a,s,l){for(var u,h,c,p,d,f,g=n,y=0;y=r||g<0)break;if(tS(v,m)){if(l){g+=o;continue}break}if(g===n)t[o>0?"moveTo":"lineTo"](v,m),c=v,p=m;else{var x=v-u,_=m-h;if(x*x+_*_<.5){g+=o;continue}if(a>0){for(var b=g+o,w=e[2*b],S=e[2*b+1];w===v&&S===m&&y=i||tS(w,S))d=v,f=m;else{T=w-u,C=S-h;var k=v-u,L=w-v,P=m-h,O=S-m,R=void 0,N=void 0;if("x"===s){var E=T>0?1:-1;d=v-E*(R=Math.abs(k))*a,f=m,D=v+E*(N=Math.abs(L))*a,A=m}else if("y"===s){var z=C>0?1:-1;d=v,f=m-z*(R=Math.abs(P))*a,D=v,A=m+z*(N=Math.abs(O))*a}else R=Math.sqrt(k*k+P*P),d=v-T*a*(1-(I=(N=Math.sqrt(L*L+O*O))/(N+R))),f=m-C*a*(1-I),A=m+C*a*I,D=Jw(D=v+T*a*I,Qw(w,v)),A=Jw(A,Qw(S,m)),D=Qw(D,Jw(w,v)),f=m-(C=(A=Qw(A,Jw(S,m)))-m)*R/N,d=Jw(d=v-(T=D-v)*R/N,Qw(u,v)),f=Jw(f,Qw(h,m)),D=v+(T=v-(d=Qw(d,Jw(u,v))))*N/R,A=m+(C=m-(f=Qw(f,Jw(h,m))))*N/R}t.bezierCurveTo(c,p,d,f,v,m),c=D,p=A}else t.lineTo(v,m)}u=v,h=m,g+=o}return y}var nS=function(){this.smooth=0,this.smoothConstraint=!0},iS=function(t){function e(e){var n=t.call(this,e)||this;return n.type="ec-polyline",n}return n(e,t),e.prototype.getDefaultStyle=function(){return{stroke:"#000",fill:null}},e.prototype.getDefaultShape=function(){return new nS},e.prototype.buildPath=function(t,e){var n=e.points,i=0,r=n.length/2;if(e.connectNulls){for(;r>0&&tS(n[2*r-2],n[2*r-1]);r--);for(;i=0){var y=a?(h-i)*g+i:(u-n)*g+n;return a?[t,y]:[y,t]}n=u,i=h;break;case o.C:u=r[l++],h=r[l++],c=r[l++],p=r[l++],d=r[l++],f=r[l++];var v=a?Ue(n,u,c,d,t,s):Ue(i,h,p,f,t,s);if(v>0)for(var m=0;m=0){y=a?He(i,h,p,f,x):He(n,u,c,d,x);return a?[t,y]:[y,t]}}n=d,i=f}}},e}(gs),rS=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e}(nS),oS=function(t){function e(e){var n=t.call(this,e)||this;return n.type="ec-polygon",n}return n(e,t),e.prototype.getDefaultShape=function(){return new rS},e.prototype.buildPath=function(t,e){var n=e.points,i=e.stackedOnPoints,r=0,o=n.length/2,a=e.smoothMonotone;if(e.connectNulls){for(;o>0&&tS(n[2*o-2],n[2*o-1]);o--);for(;r=0;a--){var s=t.getDimensionInfo(i[a].dimension);if("x"===(r=s&&s.coordDim)||"y"===r){o=i[a];break}}if(o){var l=e.getAxis(r),u=z(o.stops,(function(t){return{coord:l.toGlobalCoord(l.dataToCoord(t.value)),color:t.color}})),h=u.length,c=o.outerColors.slice();h&&u[0].coord>u[h-1].coord&&(u.reverse(),c.reverse());var p=function(t,e){var n,i,r=[],o=t.length;function a(t,e,n){var i=t.coord;return{coord:n,color:Tn((n-i)/(e.coord-i),[t.color,e.color])}}for(var s=0;se){i?r.push(a(i,l,e)):n&&r.push(a(n,l,0),a(n,l,e));break}n&&(r.push(a(n,l,0)),n=null),r.push(l),i=l}}return r}(u,"x"===r?n.getWidth():n.getHeight()),d=p.length;if(!d&&h)return u[0].coord<0?c[1]?c[1]:u[h-1].color:c[0]?c[0]:u[0].color;var f=p[0].coord-10,g=p[d-1].coord+10,y=g-f;if(y<.001)return"transparent";E(p,(function(t){t.offset=(t.coord-f)/y})),p.push({offset:d?p[d-1].offset:.5,color:c[1]||"transparent"}),p.unshift({offset:d?p[0].offset:.5,color:c[0]||"transparent"});var v=new Xu(0,0,0,0,p,!0);return v[r]=f,v[r+"2"]=g,v}}}function yS(t,e,n){var i=t.get("showAllSymbol"),r="auto"===i;if(!i||r){var o=n.getAxesByScale("ordinal")[0];if(o&&(!r||!function(t,e){var n=t.getExtent(),i=Math.abs(n[1]-n[0])/t.scale.count();isNaN(i)&&(i=0);for(var r=e.count(),o=Math.max(1,Math.round(r/5)),a=0;ai)return!1;return!0}(o,e))){var a=e.mapDimension(o.dim),s={};return E(o.getViewLabels(),(function(t){var e=o.scale.getRawOrdinalNumber(t.tickValue);s[e]=1})),function(t){return!s.hasOwnProperty(e.get(a,t))}}}}function vS(t,e){return[t[2*e],t[2*e+1]]}function mS(t){if(t.get(["endLabel","show"]))return!0;for(var e=0;e0&&"bolder"===t.get(["emphasis","lineStyle","width"]))&&(d.getState("emphasis").style.lineWidth=+d.style.lineWidth+1);Hs(d).seriesIndex=t.seriesIndex,Rl(d,L,P,O);var R=dS(t.get("smooth")),N=t.get("smoothMonotone");if(d.setShape({smooth:R,smoothMonotone:N,connectNulls:w}),f){var E=a.getCalculationInfo("stackedOnSeries"),z=0;f.useStyle(k(l.getAreaStyle(),{fill:C,opacity:.7,lineJoin:"bevel",decal:a.getVisual("style").decal})),E&&(z=dS(E.get("smooth"))),f.setShape({smooth:R,stackedOnSmooth:z,smoothMonotone:N,connectNulls:w}),Vl(f,t,"areaStyle"),Hs(f).seriesIndex=t.seriesIndex,Rl(f,L,P,O)}var V=function(t){i._changePolyState(t)};a.eachItemGraphicEl((function(t){t&&(t.onHoverStateChange=V)})),this._polyline.onHoverStateChange=V,this._data=a,this._coordSys=r,this._stackedOnPoints=_,this._points=u,this._step=T,this._valueOrigin=m,t.get("triggerLineEvent")&&(this.packEventData(t,d),f&&this.packEventData(t,f))},e.prototype.packEventData=function(t,e){Hs(e).eventData={componentType:"series",componentSubType:"line",componentIndex:t.componentIndex,seriesIndex:t.seriesIndex,seriesName:t.name,seriesType:"line"}},e.prototype.highlight=function(t,e,n,i){var r=t.getData(),o=wo(r,i);if(this._changePolyState("emphasis"),!(o instanceof Array)&&null!=o&&o>=0){var a=r.getLayout("points"),s=r.getItemGraphicEl(o);if(!s){var l=a[2*o],u=a[2*o+1];if(isNaN(l)||isNaN(u))return;if(this._clipShapeForSymbol&&!this._clipShapeForSymbol.contain(l,u))return;var h=t.get("zlevel"),c=t.get("z");(s=new Yw(r,o)).x=l,s.y=u,s.setZ(h,c);var p=s.getSymbolPath().getTextContent();p&&(p.zlevel=h,p.z=c,p.z2=this._polyline.z2+1),s.__temp=!0,r.setItemGraphicEl(o,s),s.stopSymbolAnimation(!0),this.group.add(s)}s.highlight()}else xg.prototype.highlight.call(this,t,e,n,i)},e.prototype.downplay=function(t,e,n,i){var r=t.getData(),o=wo(r,i);if(this._changePolyState("normal"),null!=o&&o>=0){var a=r.getItemGraphicEl(o);a&&(a.__temp?(r.setItemGraphicEl(o,null),this.group.remove(a)):a.downplay())}else xg.prototype.downplay.call(this,t,e,n,i)},e.prototype._changePolyState=function(t){var e=this._polygon;gl(this._polyline,t),e&&gl(e,t)},e.prototype._newPolyline=function(t){var e=this._polyline;return e&&this._lineGroup.remove(e),e=new iS({shape:{points:t},segmentIgnoreThreshold:2,z2:10}),this._lineGroup.add(e),this._polyline=e,e},e.prototype._newPolygon=function(t,e){var n=this._polygon;return n&&this._lineGroup.remove(n),n=new oS({shape:{points:t,stackedOnPoints:e},segmentIgnoreThreshold:2}),this._lineGroup.add(n),this._polygon=n,n},e.prototype._initSymbolLabelAnimation=function(t,e,n){var i,r,o=e.getBaseAxis(),a=o.inverse;"cartesian2d"===e.type?(i=o.isHorizontal(),r=!1):"polar"===e.type&&(i="angle"===o.dim,r=!0);var s=t.hostModel,l=s.get("animationDuration");U(l)&&(l=l(null));var u=s.get("animationDelay")||0,h=U(u)?u(null):u;t.eachItemGraphicEl((function(t,o){var s=t;if(s){var c=[t.x,t.y],p=void 0,d=void 0,f=void 0;if(n)if(r){var g=n,y=e.pointToCoord(c);i?(p=g.startAngle,d=g.endAngle,f=-y[1]/180*Math.PI):(p=g.r0,d=g.r,f=y[0])}else{var v=n;i?(p=v.x,d=v.x+v.width,f=t.x):(p=v.y+v.height,d=v.y,f=t.y)}var m=d===p?0:(f-p)/(d-p);a&&(m=1-m);var x=U(u)?u(o):l*m+h,_=s.getSymbolPath(),b=_.getTextContent();s.attr({scaleX:0,scaleY:0}),s.animateTo({scaleX:1,scaleY:1},{duration:200,setToFinal:!0,delay:x}),b&&b.animateFrom({style:{opacity:0}},{duration:300,delay:x}),_.disableLabelAnimation=!0}}))},e.prototype._initOrUpdateEndLabel=function(t,e,n){var i=t.getModel("endLabel");if(mS(t)){var r=t.getData(),o=this._polyline,a=r.getLayout("points");if(!a)return o.removeTextContent(),void(this._endLabel=null);var s=this._endLabel;s||((s=this._endLabel=new ks({z2:200})).ignoreClip=!0,o.setTextContent(this._endLabel),o.disableLabelAnimation=!0);var l=function(t){for(var e,n,i=t.length/2;i>0&&(e=t[2*i-2],n=t[2*i-1],isNaN(e)||isNaN(n));i--);return i-1}(a);l>=0&&(Hh(o,Yh(t,"endLabel"),{inheritColor:n,labelFetcher:t,labelDataIndex:l,defaultText:function(t,e,n){return null!=n?Hw(r,n):Ww(r,t)},enableTextSetter:!0},function(t,e){var n=e.getBaseAxis(),i=n.isHorizontal(),r=n.inverse,o=i?r?"right":"left":"center",a=i?"middle":r?"top":"bottom";return{normal:{align:t.get("align")||o,verticalAlign:t.get("verticalAlign")||a}}}(i,e)),o.textConfig.position=null)}else this._endLabel&&(this._polyline.removeTextContent(),this._endLabel=null)},e.prototype._endLabelOnDuring=function(t,e,n,i,r,o,a){var s=this._endLabel,l=this._polyline;if(s){t<1&&null==i.originalX&&(i.originalX=s.x,i.originalY=s.y);var u=n.getLayout("points"),h=n.hostModel,c=h.get("connectNulls"),p=o.get("precision"),d=o.get("distance")||0,f=a.getBaseAxis(),g=f.isHorizontal(),y=f.inverse,v=e.shape,m=y?g?v.x:v.y+v.height:g?v.x+v.width:v.y,x=(g?d:0)*(y?-1:1),_=(g?0:-d)*(y?-1:1),b=g?"x":"y",w=function(t,e,n){for(var i,r,o=t.length/2,a="x"===n?0:1,s=0,l=-1,u=0;u=e||i>=e&&r<=e){l=u;break}s=u,i=r}else i=r;return{range:[s,l],t:(e-i)/(r-i)}}(u,m,b),S=w.range,M=S[1]-S[0],I=void 0;if(M>=1){if(M>1&&!c){var T=vS(u,S[0]);s.attr({x:T[0]+x,y:T[1]+_}),r&&(I=h.getRawValue(S[0]))}else{(T=l.getPointOn(m,b))&&s.attr({x:T[0]+x,y:T[1]+_});var C=h.getRawValue(S[0]),D=h.getRawValue(S[1]);r&&(I=Po(n,p,C,D,w.t))}i.lastFrameIndex=S[0]}else{var A=1===t||i.lastFrameIndex>0?S[0]:0;T=vS(u,A);r&&(I=h.getRawValue(A)),s.attr({x:T[0]+x,y:T[1]+_})}r&&Jh(s).setLabelText(I)}},e.prototype._doUpdateAnimation=function(t,e,n,i,r,o,a){var s=this._polyline,l=this._polygon,u=t.hostModel,h=function(t,e,n,i,r,o,a,s){for(var l=function(t,e){var n=[];return e.diff(t).add((function(t){n.push({cmd:"+",idx:t})})).update((function(t,e){n.push({cmd:"=",idx:e,idx1:t})})).remove((function(t){n.push({cmd:"-",idx:t})})).execute(),n}(t,e),u=[],h=[],c=[],p=[],d=[],f=[],g=[],y=Kw(r,e,a),v=t.getLayout("points")||[],m=e.getLayout("points")||[],x=0;x3e3||l&&pS(p,f)>3e3)return s.stopAnimation(),s.setShape({points:d}),void(l&&(l.stopAnimation(),l.setShape({points:d,stackedOnPoints:f})));s.shape.__points=h.current,s.shape.points=c;var g={shape:{points:d}};h.current!==c&&(g.shape.__points=h.next),s.stopAnimation(),rh(s,g,u),l&&(l.setShape({points:c,stackedOnPoints:p}),l.stopAnimation(),rh(l,{shape:{stackedOnPoints:f}},u),s.shape.points!==l.shape.points&&(l.shape.points=s.shape.points));for(var y=[],v=h.status,m=0;me&&(e=t[n]);return isFinite(e)?e:NaN},min:function(t){for(var e=1/0,n=0;n10&&"cartesian2d"===o.type&&r){var s=o.getBaseAxis(),l=o.getOtherAxis(s),u=s.getExtent(),h=n.getDevicePixelRatio(),c=Math.abs(u[1]-u[0])*(h||1),p=Math.round(a/c);if(isFinite(p)&&p>1){"lttb"===r&&t.setData(i.lttbDownSample(i.mapDimension(l.dim),1/p));var d=void 0;X(r)?d=wS[r]:U(r)&&(d=r),d&&t.setData(i.downSample(i.mapDimension(l.dim),1/p,d,SS))}}}}}var IS=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.getInitialData=function(t,e){return rx(null,this,{useEncodeDefaulter:!0})},e.prototype.getMarkerPosition=function(t){var e=this.coordinateSystem;if(e&&e.clampData){var n=e.dataToPoint(e.clampData(t)),i=this.getData(),r=i.getLayout("offset"),o=i.getLayout("size");return n[e.getBaseAxis().isHorizontal()?0:1]+=r+o/2,n}return[NaN,NaN]},e.type="series.__base_bar__",e.defaultOption={z:2,coordinateSystem:"cartesian2d",legendHoverLink:!0,barMinHeight:0,barMinAngle:0,large:!1,largeThreshold:400,progressive:3e3,progressiveChunkMode:"mod"},e}(sg);sg.registerClass(IS);var TS=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.getInitialData=function(){return rx(null,this,{useEncodeDefaulter:!0,createInvertedIndices:!!this.get("realtimeSort",!0)||null})},e.prototype.getProgressive=function(){return!!this.get("large")&&this.get("progressive")},e.prototype.getProgressiveThreshold=function(){var t=this.get("progressiveThreshold"),e=this.get("largeThreshold");return e>t&&(t=e),t},e.prototype.brushSelector=function(t,e,n){return n.rect(e.getItemLayout(t))},e.type="series.bar",e.dependencies=["grid","polar"],e.defaultOption=yc(IS.defaultOption,{clip:!0,roundCap:!1,showBackground:!1,backgroundStyle:{color:"rgba(180, 180, 180, 0.2)",borderColor:null,borderWidth:0,borderType:"solid",borderRadius:0,shadowBlur:0,shadowColor:null,shadowOffsetX:0,shadowOffsetY:0,opacity:1},select:{itemStyle:{borderColor:"#212121"}},realtimeSort:!1}),e}(IS),CS=function(){this.cx=0,this.cy=0,this.r0=0,this.r=0,this.startAngle=0,this.endAngle=2*Math.PI,this.clockwise=!0},DS=function(t){function e(e){var n=t.call(this,e)||this;return n.type="sausage",n}return n(e,t),e.prototype.getDefaultShape=function(){return new CS},e.prototype.buildPath=function(t,e){var n=e.cx,i=e.cy,r=Math.max(e.r0||0,0),o=Math.max(e.r,0),a=.5*(o-r),s=r+a,l=e.startAngle,u=e.endAngle,h=e.clockwise,c=2*Math.PI,p=h?u-lo)return!0;o=u}return!1},e.prototype._isOrderDifferentInView=function(t,e){for(var n=e.scale,i=n.getExtent(),r=Math.max(0,i[0]),o=Math.min(i[1],n.getOrdinalMeta().categories.length-1);r<=o;++r)if(t.ordinalNumbers[r]!==n.getRawOrdinalNumber(r))return!0},e.prototype._updateSortWithinSameData=function(t,e,n,i){if(this._isOrderChangedWithinSameData(t,e,n)){var r=this._dataSort(t,n,e);this._isOrderDifferentInView(r,n)&&(this._removeOnRenderedListener(i),i.dispatchAction({type:"changeAxisOrder",componentType:n.dim+"Axis",axisId:n.index,sortInfo:r}))}},e.prototype._dispatchInitSort=function(t,e,n){var i=e.baseAxis,r=this._dataSort(t,i,(function(n){return t.get(t.mapDimension(e.otherAxis.dim),n)}));n.dispatchAction({type:"changeAxisOrder",componentType:i.dim+"Axis",isInitSort:!0,axisId:i.index,sortInfo:r})},e.prototype.remove=function(t,e){this._clear(this._model),this._removeOnRenderedListener(e)},e.prototype.dispose=function(t,e){this._removeOnRenderedListener(e)},e.prototype._removeOnRenderedListener=function(t){this._onRendered&&(t.getZr().off("rendered",this._onRendered),this._onRendered=null)},e.prototype._clear=function(t){var e=this.group,n=this._data;t&&t.isAnimationEnabled()&&n&&!this._isLargeDraw?(this._removeBackground(),this._backgroundEls=[],n.eachItemGraphicEl((function(e){uh(e,t,Hs(e).dataIndex)}))):e.removeAll(),this._data=null,this._isFirstFrame=!0},e.prototype._removeBackground=function(){this.group.remove(this._backgroundGroup),this._backgroundGroup=null},e.type="bar",e}(xg),RS={cartesian2d:function(t,e){var n=e.width<0?-1:1,i=e.height<0?-1:1;n<0&&(e.x+=e.width,e.width=-e.width),i<0&&(e.y+=e.height,e.height=-e.height);var r=t.x+t.width,o=t.y+t.height,a=LS(e.x,t.x),s=PS(e.x+e.width,r),l=LS(e.y,t.y),u=PS(e.y+e.height,o),h=sr?s:a,e.y=c&&l>o?u:l,e.width=h?0:s-a,e.height=c?0:u-l,n<0&&(e.x+=e.width,e.width=-e.width),i<0&&(e.y+=e.height,e.height=-e.height),h||c},polar:function(t,e){var n=e.r0<=e.r?1:-1;if(n<0){var i=e.r;e.r=e.r0,e.r0=i}var r=PS(e.r,t.r),o=LS(e.r0,t.r0);e.r=r,e.r0=o;var a=r-o<0;if(n<0){i=e.r;e.r=e.r0,e.r0=i}return a}},NS={cartesian2d:function(t,e,n,i,r,o,a,s,l){var u=new Cs({shape:A({},i),z2:1});(u.__dataIndex=n,u.name="item",o)&&(u.shape[r?"height":"width"]=0);return u},polar:function(t,e,n,i,r,o,a,s,l){var u=!r&&l?DS:Cu,h=new u({shape:i,z2:1});h.name="item";var c,p,d=WS(r);if(h.calculateTextPosition=(c=d,p=({isRoundCap:u===DS}||{}).isRoundCap,function(t,e,n){var i=e.position;if(!i||i instanceof Array)return yr(t,e,n);var r=c(i),o=null!=e.distance?e.distance:5,a=this.shape,s=a.cx,l=a.cy,u=a.r,h=a.r0,d=(u+h)/2,f=a.startAngle,g=a.endAngle,y=(f+g)/2,v=p?Math.abs(u-h)/2:0,m=Math.cos,x=Math.sin,_=s+u*m(f),b=l+u*x(f),w="left",S="top";switch(r){case"startArc":_=s+(h-o)*m(y),b=l+(h-o)*x(y),w="center",S="top";break;case"insideStartArc":_=s+(h+o)*m(y),b=l+(h+o)*x(y),w="center",S="bottom";break;case"startAngle":_=s+d*m(f)+AS(f,o+v,!1),b=l+d*x(f)+kS(f,o+v,!1),w="right",S="middle";break;case"insideStartAngle":_=s+d*m(f)+AS(f,-o+v,!1),b=l+d*x(f)+kS(f,-o+v,!1),w="left",S="middle";break;case"middle":_=s+d*m(y),b=l+d*x(y),w="center",S="middle";break;case"endArc":_=s+(u+o)*m(y),b=l+(u+o)*x(y),w="center",S="bottom";break;case"insideEndArc":_=s+(u-o)*m(y),b=l+(u-o)*x(y),w="center",S="top";break;case"endAngle":_=s+d*m(g)+AS(g,o+v,!0),b=l+d*x(g)+kS(g,o+v,!0),w="left",S="middle";break;case"insideEndAngle":_=s+d*m(g)+AS(g,-o+v,!0),b=l+d*x(g)+kS(g,-o+v,!0),w="right",S="middle";break;default:return yr(t,e,n)}return(t=t||{}).x=_,t.y=b,t.align=w,t.verticalAlign=S,t}),o){var f=r?"r":"endAngle",g={};h.shape[f]=r?0:i.startAngle,g[f]=i[f],(s?rh:oh)(h,{shape:g},o)}return h}};function ES(t,e,n,i,r,o,a,s){var l,u;o?(u={x:i.x,width:i.width},l={y:i.y,height:i.height}):(u={y:i.y,height:i.height},l={x:i.x,width:i.width}),s||(a?rh:oh)(n,{shape:l},e,r,null),(a?rh:oh)(n,{shape:u},e?t.baseAxis.model:null,r)}function zS(t,e){for(var n=0;n0?1:-1,a=i.height>0?1:-1;return{x:i.x+o*r/2,y:i.y+a*r/2,width:i.width-o*r,height:i.height-a*r}},polar:function(t,e,n){var i=t.getItemLayout(e);return{cx:i.cx,cy:i.cy,r0:i.r0,r:i.r,startAngle:i.startAngle,endAngle:i.endAngle,clockwise:i.clockwise}}};function WS(t){return function(t){var e=t?"Arc":"Angle";return function(t){switch(t){case"start":case"insideStart":case"end":case"insideEnd":return t+e;default:return t}}}(t)}function HS(t,e,n,i,r,o,a,s){var l=e.getItemVisual(n,"style");s||t.setShape("r",i.get(["itemStyle","borderRadius"])||0),t.useStyle(l);var u=i.getShallow("cursor");u&&t.attr("cursor",u);var h=s?a?r.r>=r.r0?"endArc":"startArc":r.endAngle>=r.startAngle?"endAngle":"startAngle":a?r.height>=0?"bottom":"top":r.width>=0?"right":"left",c=Yh(i);Hh(t,c,{labelFetcher:o,labelDataIndex:n,defaultText:Ww(o.getData(),n),inheritColor:l.fill,defaultOpacity:l.opacity,defaultOutsidePosition:h});var p=t.getTextContent();if(s&&p){var d=i.get(["label","position"]);t.textConfig.inside="middle"===d||null,function(t,e,n,i){if(j(i))t.setTextConfig({rotation:i});else if(Y(e))t.setTextConfig({rotation:0});else{var r,o=t.shape,a=o.clockwise?o.startAngle:o.endAngle,s=o.clockwise?o.endAngle:o.startAngle,l=(a+s)/2,u=n(e);switch(u){case"startArc":case"insideStartArc":case"middle":case"insideEndArc":case"endArc":r=l;break;case"startAngle":case"insideStartAngle":r=a;break;case"endAngle":case"insideEndAngle":r=s;break;default:return void t.setTextConfig({rotation:0})}var h=1.5*Math.PI-r;"middle"===u&&h>Math.PI/2&&h<1.5*Math.PI&&(h-=Math.PI),t.setTextConfig({rotation:h})}}(t,"outside"===d?h:d,WS(a),i.get(["label","rotate"]))}Qh(p,c,o.getRawValue(n),(function(t){return Hw(e,t)}));var f=i.getModel(["emphasis"]);Rl(t,f.get("focus"),f.get("blurScope"),f.get("disabled")),Vl(t,i),function(t){return null!=t.startAngle&&null!=t.endAngle&&t.startAngle===t.endAngle}(r)&&(t.style.fill="none",t.style.stroke="none",E(t.states,(function(t){t.style&&(t.style.fill=t.style.stroke="none")})))}var YS=function(){},US=function(t){function e(e){var n=t.call(this,e)||this;return n.type="largeBar",n}return n(e,t),e.prototype.getDefaultShape=function(){return new YS},e.prototype.buildPath=function(t,e){for(var n=e.points,i=this.baseDimIdx,r=1-this.baseDimIdx,o=[],a=[],s=this.barWidth,l=0;l=s[0]&&e<=s[0]+l[0]&&n>=s[1]&&n<=s[1]+l[1])return a[h]}return-1}(this,t.offsetX,t.offsetY);Hs(this).dataIndex=e>=0?e:null}),30,!1);function jS(t,e,n){if(uS(n,"cartesian2d")){var i=e,r=n.getArea();return{x:t?i.x:r.x,y:t?r.y:i.y,width:t?i.width:r.width,height:t?r.height:i.height}}var o=e;return{cx:(r=n.getArea()).cx,cy:r.cy,r0:t?r.r0:o.r0,r:t?r.r:o.r,startAngle:t?o.startAngle:0,endAngle:t?o.endAngle:2*Math.PI}}var qS=2*Math.PI,KS=Math.PI/180;function $S(t,e){return xp(t.getBoxLayoutParams(),{width:e.getWidth(),height:e.getHeight()})}function JS(t,e){var n=$S(t,e),i=t.get("center"),r=t.get("radius");Y(r)||(r=[0,r]),Y(i)||(i=[i,i]);var o=Er(n.width,e.getWidth()),a=Er(n.height,e.getHeight()),s=Math.min(o,a);return{cx:Er(i[0],o)+n.x,cy:Er(i[1],a)+n.y,r0:Er(r[0],s/2),r:Er(r[1],s/2)}}function QS(t,e,n){e.eachSeriesByType(t,(function(t){var e=t.getData(),i=e.mapDimension("value"),r=$S(t,n),o=JS(t,n),a=o.cx,s=o.cy,l=o.r,u=o.r0,h=-t.get("startAngle")*KS,c=t.get("minAngle")*KS,p=0;e.each(i,(function(t){!isNaN(t)&&p++}));var d=e.getSum(i),f=Math.PI/(d||p)*2,g=t.get("clockwise"),y=t.get("roseType"),v=t.get("stillShowZeroSum"),m=e.getDataExtent(i);m[0]=0;var x=qS,_=0,b=h,w=g?1:-1;if(e.setLayout({viewRect:r,r:l}),e.each(i,(function(t,n){var i;if(isNaN(t))e.setItemLayout(n,{angle:NaN,startAngle:NaN,endAngle:NaN,clockwise:g,cx:a,cy:s,r0:u,r:y?NaN:l});else{(i="area"!==y?0===d&&v?f:t*f:qS/p)n?a:o,h=Math.abs(l.label.y-n);if(h>=u.maxY){var c=l.label.x-e-l.len2*r,p=i+l.len,f=Math.abs(c)t.unconstrainedWidth?null:d:null;i.setStyle("width",f)}var g=i.getBoundingRect();o.width=g.width;var y=(i.style.margin||0)+2.1;o.height=g.height+y,o.y-=(o.height-c)/2}}}function rM(t){return"center"===t.position}function oM(t){var e,n,i=t.getData(),r=[],o=!1,a=(t.get("minShowLabelAngle")||0)*eM,s=i.getLayout("viewRect"),l=i.getLayout("r"),u=s.width,h=s.x,c=s.y,p=s.height;function d(t){t.ignore=!0}i.each((function(t){var s=i.getItemGraphicEl(t),c=s.shape,p=s.getTextContent(),f=s.getTextGuideLine(),g=i.getItemModel(t),y=g.getModel("label"),v=y.get("position")||g.get(["emphasis","label","position"]),m=y.get("distanceToLabelLine"),x=y.get("alignTo"),_=Er(y.get("edgeDistance"),u),b=y.get("bleedMargin"),w=g.getModel("labelLine"),S=w.get("length");S=Er(S,u);var M=w.get("length2");if(M=Er(M,u),Math.abs(c.endAngle-c.startAngle)0?"right":"left":k>0?"left":"right"}var B=Math.PI,F=0,G=y.get("rotate");if(j(G))F=G*(B/180);else if("center"===v)F=0;else if("radial"===G||!0===G){F=k<0?-A+B:-A}else if("tangential"===G&&"outside"!==v&&"outer"!==v){var W=Math.atan2(k,L);W<0&&(W=2*B+W),L>0&&(W=B+W),F=W-B}if(o=!!F,p.x=I,p.y=T,p.rotation=F,p.setStyle({verticalAlign:"middle"}),P){p.setStyle({align:D});var H=p.states.select;H&&(H.x+=p.x,H.y+=p.y)}else{var Y=p.getBoundingRect().clone();Y.applyTransform(p.getComputedTransform());var U=(p.style.margin||0)+2.1;Y.y-=U/2,Y.height+=U,r.push({label:p,labelLine:f,position:v,len:S,len2:M,minTurnAngle:w.get("minTurnAngle"),maxSurfaceAngle:w.get("maxSurfaceAngle"),surfaceNormal:new Ji(k,L),linePoints:C,textAlign:D,labelDistance:m,labelAlignTo:x,edgeDistance:_,bleedMargin:b,rect:Y,unconstrainedWidth:Y.width,labelStyleWidth:p.style.width})}s.setTextConfig({inside:P})}})),!o&&t.get("avoidLabelOverlap")&&function(t,e,n,i,r,o,a,s){for(var l=[],u=[],h=Number.MAX_VALUE,c=-Number.MAX_VALUE,p=0;p0){for(var l=o.getItemLayout(0),u=1;isNaN(l&&l.startAngle)&&u=n.r0}},e.type="pie",e}(xg);function uM(t,e,n){e=Y(e)&&{coordDimensions:e}||A({encodeDefine:t.getEncode()},e);var i=t.getSource(),r=Km(i,e).dimensions,o=new qm(r,t);return o.initData(i,n),o}var hM=function(){function t(t,e){this._getDataWithEncodedVisual=t,this._getRawData=e}return t.prototype.getAllNames=function(){var t=this._getRawData();return t.mapArray(t.getName)},t.prototype.containName=function(t){return this._getRawData().indexOfName(t)>=0},t.prototype.indexOfName=function(t){return this._getDataWithEncodedVisual().indexOfName(t)},t.prototype.getItemVisual=function(t,e){return this._getDataWithEncodedVisual().getItemVisual(t,e)},t}(),cM=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.init=function(e){t.prototype.init.apply(this,arguments),this.legendVisualProvider=new hM(W(this.getData,this),W(this.getRawData,this)),this._defaultLabelLine(e)},e.prototype.mergeOption=function(){t.prototype.mergeOption.apply(this,arguments)},e.prototype.getInitialData=function(){return uM(this,{coordDimensions:["value"],encodeDefaulter:H(Yp,this)})},e.prototype.getDataParams=function(e){var n=this.getData(),i=t.prototype.getDataParams.call(this,e),r=[];return n.each(n.mapDimension("value"),(function(t){r.push(t)})),i.percent=Wr(r,e,n.hostModel.get("percentPrecision")),i.$vars.push("percent"),i},e.prototype._defaultLabelLine=function(t){co(t,"labelLine",["show"]);var e=t.labelLine,n=t.emphasis.labelLine;e.show=e.show&&t.label.show,n.show=n.show&&t.emphasis.label.show},e.type="series.pie",e.defaultOption={z:2,legendHoverLink:!0,colorBy:"data",center:["50%","50%"],radius:[0,"75%"],clockwise:!0,startAngle:90,minAngle:0,minShowLabelAngle:0,selectedOffset:10,percentPrecision:2,stillShowZeroSum:!0,left:0,top:0,right:0,bottom:0,width:null,height:null,label:{rotate:0,show:!0,overflow:"truncate",position:"outer",alignTo:"none",edgeDistance:"25%",bleedMargin:10,distanceToLabelLine:5},labelLine:{show:!0,length:15,length2:15,smooth:!1,minTurnAngle:90,maxSurfaceAngle:90,lineStyle:{width:1,type:"solid"}},itemStyle:{borderWidth:1,borderJoin:"round"},showEmptyCircle:!0,emptyCircleStyle:{color:"lightgray",opacity:1},labelLayout:{hideOverlap:!0},emphasis:{scale:!0,scaleSize:5},avoidLabelOverlap:!0,animationType:"expansion",animationDuration:1e3,animationTypeUpdate:"transition",animationEasingUpdate:"cubicInOut",animationDurationUpdate:500,animationEasing:"cubicInOut"},e}(sg);var pM=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.hasSymbolVisual=!0,n}return n(e,t),e.prototype.getInitialData=function(t,e){return rx(null,this,{useEncodeDefaulter:!0})},e.prototype.getProgressive=function(){var t=this.option.progressive;return null==t?this.option.large?5e3:this.get("progressive"):t},e.prototype.getProgressiveThreshold=function(){var t=this.option.progressiveThreshold;return null==t?this.option.large?1e4:this.get("progressiveThreshold"):t},e.prototype.brushSelector=function(t,e,n){return n.point(e.getItemLayout(t))},e.prototype.getZLevelKey=function(){return this.getData().count()>this.getProgressiveThreshold()?this.id:""},e.type="series.scatter",e.dependencies=["grid","polar","geo","singleAxis","calendar"],e.defaultOption={coordinateSystem:"cartesian2d",z:2,legendHoverLink:!0,symbolSize:10,large:!1,largeThreshold:2e3,itemStyle:{opacity:.8},emphasis:{scale:!0},clip:!0,select:{itemStyle:{borderColor:"#212121"}},universalTransition:{divideShape:"clone"}},e}(sg),dM=function(){},fM=function(t){function e(e){var n=t.call(this,e)||this;return n._off=0,n.hoverDataIdx=-1,n}return n(e,t),e.prototype.getDefaultShape=function(){return new dM},e.prototype.reset=function(){this.notClear=!1,this._off=0},e.prototype.buildPath=function(t,e){var n,i=e.points,r=e.size,o=this.symbolProxy,a=o.shape,s=t.getContext?t.getContext():t,l=s&&r[0]<4,u=this.softClipShape;if(l)this._ctx=s;else{for(this._ctx=null,n=this._off;n=0;s--){var l=2*s,u=i[l]-o/2,h=i[l+1]-a/2;if(t>=u&&e>=h&&t<=u+o&&e<=h+a)return s}return-1},e.prototype.contain=function(t,e){var n=this.transformCoordToLocal(t,e),i=this.getBoundingRect();return t=n[0],e=n[1],i.contain(t,e)?(this.hoverDataIdx=this.findDataIndex(t,e))>=0:(this.hoverDataIdx=-1,!1)},e.prototype.getBoundingRect=function(){var t=this._rect;if(!t){for(var e=this.shape,n=e.points,i=e.size,r=i[0],o=i[1],a=1/0,s=1/0,l=-1/0,u=-1/0,h=0;h=0&&(l.dataIndex=n+(t.startIndex||0))}))},t.prototype.remove=function(){this._clear()},t.prototype._clear=function(){this._newAdded=[],this.group.removeAll()},t}(),yM=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n){var i=t.getData();this._updateSymbolDraw(i,t).updateData(i,{clipShape:this._getClipShape(t)}),this._finished=!0},e.prototype.incrementalPrepareRender=function(t,e,n){var i=t.getData();this._updateSymbolDraw(i,t).incrementalPrepareUpdate(i),this._finished=!1},e.prototype.incrementalRender=function(t,e,n){this._symbolDraw.incrementalUpdate(t,e.getData(),{clipShape:this._getClipShape(e)}),this._finished=t.end===e.getData().count()},e.prototype.updateTransform=function(t,e,n){var i=t.getData();if(this.group.dirty(),!this._finished||i.count()>1e4)return{update:!0};var r=bS("").reset(t,e,n);r.progress&&r.progress({start:0,end:i.count(),count:i.count()},i),this._symbolDraw.updateLayout(i)},e.prototype.eachRendered=function(t){this._symbolDraw&&this._symbolDraw.eachRendered(t)},e.prototype._getClipShape=function(t){var e=t.coordinateSystem,n=e&&e.getArea&&e.getArea();return t.get("clip",!0)?n:null},e.prototype._updateSymbolDraw=function(t,e){var n=this._symbolDraw,i=e.pipelineContext.large;return n&&i===this._isLargeDraw||(n&&n.remove(),n=this._symbolDraw=i?new gM:new qw,this._isLargeDraw=i,this.group.removeAll()),this.group.add(n.group),n},e.prototype.remove=function(t,e){this._symbolDraw&&this._symbolDraw.remove(!0),this._symbolDraw=null},e.prototype.dispose=function(){},e.type="scatter",e}(xg),vM=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.type="grid",e.dependencies=["xAxis","yAxis"],e.layoutMode="box",e.defaultOption={show:!1,z:0,left:"10%",top:60,right:"10%",bottom:70,containLabel:!1,backgroundColor:"rgba(0,0,0,0)",borderWidth:1,borderColor:"#ccc"},e}(Tp),mM=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.getCoordSysModel=function(){return this.getReferringComponents("grid",Co).models[0]},e.type="cartesian2dAxis",e}(Tp);R(mM,p_);var xM={show:!0,z:0,inverse:!1,name:"",nameLocation:"end",nameRotate:null,nameTruncate:{maxWidth:null,ellipsis:"...",placeholder:"."},nameTextStyle:{},nameGap:15,silent:!1,triggerEvent:!1,tooltip:{show:!1},axisPointer:{},axisLine:{show:!0,onZero:!0,onZeroAxisIndex:null,lineStyle:{color:"#6E7079",width:1,type:"solid"},symbol:["none","none"],symbolSize:[10,15]},axisTick:{show:!0,inside:!1,length:5,lineStyle:{width:1}},axisLabel:{show:!0,inside:!1,rotate:0,showMinLabel:null,showMaxLabel:null,margin:8,fontSize:12},splitLine:{show:!0,lineStyle:{color:["#E0E6F1"],width:1,type:"solid"}},splitArea:{show:!1,areaStyle:{color:["rgba(250,250,250,0.2)","rgba(210,219,238,0.2)"]}}},_M=C({boundaryGap:!0,deduplication:null,splitLine:{show:!1},axisTick:{alignWithLabel:!1,interval:"auto"},axisLabel:{interval:"auto"}},xM),bM=C({boundaryGap:[0,0],axisLine:{show:"auto"},axisTick:{show:"auto"},splitNumber:5,minorTick:{show:!1,splitNumber:5,length:3,lineStyle:{}},minorSplitLine:{show:!1,lineStyle:{color:"#F4F7FD",width:1}}},xM),wM={category:_M,value:bM,time:C({splitNumber:6,axisLabel:{showMinLabel:!1,showMaxLabel:!1,rich:{primary:{fontWeight:"bold"}}},splitLine:{show:!1}},bM),log:k({logBase:10},bM)},SM={value:1,category:1,time:1,log:1};function MM(t,e,i,r){E(SM,(function(o,a){var s=C(C({},wM[a],!0),r,!0),l=function(t){function i(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e+"Axis."+a,n}return n(i,t),i.prototype.mergeDefaultAndTheme=function(t,e){var n=bp(this),i=n?Sp(t):{};C(t,e.getTheme().get(a+"Axis")),C(t,this.getDefaultOption()),t.type=IM(t),n&&wp(t,i,n)},i.prototype.optionUpdated=function(){"category"===this.option.type&&(this.__ordinalMeta=sx.createByAxisModel(this))},i.prototype.getCategories=function(t){var e=this.option;if("category"===e.type)return t?e.data:this.__ordinalMeta.categories},i.prototype.getOrdinalMeta=function(){return this.__ordinalMeta},i.type=e+"Axis."+a,i.defaultOption=s,i}(i);t.registerComponentModel(l)})),t.registerSubTypeDefaulter(e+"Axis",IM)}function IM(t){return t.type||(t.data?"category":"value")}var TM=function(){function t(t){this.type="cartesian",this._dimList=[],this._axes={},this.name=t||""}return t.prototype.getAxis=function(t){return this._axes[t]},t.prototype.getAxes=function(){return z(this._dimList,(function(t){return this._axes[t]}),this)},t.prototype.getAxesByScale=function(t){return t=t.toLowerCase(),B(this.getAxes(),(function(e){return e.scale.type===t}))},t.prototype.addAxis=function(t){var e=t.dim;this._axes[e]=t,this._dimList.push(e)},t}(),CM=["x","y"];function DM(t){return"interval"===t.type||"time"===t.type}var AM=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.type="cartesian2d",e.dimensions=CM,e}return n(e,t),e.prototype.calcAffineTransform=function(){this._transform=this._invTransform=null;var t=this.getAxis("x").scale,e=this.getAxis("y").scale;if(DM(t)&&DM(e)){var n=t.getExtent(),i=e.getExtent(),r=this.dataToPoint([n[0],i[0]]),o=this.dataToPoint([n[1],i[1]]),a=n[1]-n[0],s=i[1]-i[0];if(a&&s){var l=(o[0]-r[0])/a,u=(o[1]-r[1])/s,h=r[0]-n[0]*l,c=r[1]-i[0]*u,p=this._transform=[l,0,0,u,h,c];this._invTransform=Bi([],p)}}},e.prototype.getBaseAxis=function(){return this.getAxesByScale("ordinal")[0]||this.getAxesByScale("time")[0]||this.getAxis("x")},e.prototype.containPoint=function(t){var e=this.getAxis("x"),n=this.getAxis("y");return e.contain(e.toLocalCoord(t[0]))&&n.contain(n.toLocalCoord(t[1]))},e.prototype.containData=function(t){return this.getAxis("x").containData(t[0])&&this.getAxis("y").containData(t[1])},e.prototype.containZone=function(t,e){var n=this.dataToPoint(t),i=this.dataToPoint(e),r=this.getArea(),o=new sr(n[0],n[1],i[0]-n[0],i[1]-n[1]);return r.intersect(o)},e.prototype.dataToPoint=function(t,e,n){n=n||[];var i=t[0],r=t[1];if(this._transform&&null!=i&&isFinite(i)&&null!=r&&isFinite(r))return Ft(n,t,this._transform);var o=this.getAxis("x"),a=this.getAxis("y");return n[0]=o.toGlobalCoord(o.dataToCoord(i,e)),n[1]=a.toGlobalCoord(a.dataToCoord(r,e)),n},e.prototype.clampData=function(t,e){var n=this.getAxis("x").scale,i=this.getAxis("y").scale,r=n.getExtent(),o=i.getExtent(),a=n.parse(t[0]),s=i.parse(t[1]);return(e=e||[])[0]=Math.min(Math.max(Math.min(r[0],r[1]),a),Math.max(r[0],r[1])),e[1]=Math.min(Math.max(Math.min(o[0],o[1]),s),Math.max(o[0],o[1])),e},e.prototype.pointToData=function(t,e){var n=[];if(this._invTransform)return Ft(n,t,this._invTransform);var i=this.getAxis("x"),r=this.getAxis("y");return n[0]=i.coordToData(i.toLocalCoord(t[0]),e),n[1]=r.coordToData(r.toLocalCoord(t[1]),e),n},e.prototype.getOtherAxis=function(t){return this.getAxis("x"===t.dim?"y":"x")},e.prototype.getArea=function(){var t=this.getAxis("x").getGlobalExtent(),e=this.getAxis("y").getGlobalExtent(),n=Math.min(t[0],t[1]),i=Math.min(e[0],e[1]),r=Math.max(t[0],t[1])-n,o=Math.max(e[0],e[1])-i;return new sr(n,i,r,o)},e}(TM),kM=function(t){function e(e,n,i,r,o){var a=t.call(this,e,n,i)||this;return a.index=0,a.type=r||"value",a.position=o||"bottom",a}return n(e,t),e.prototype.isHorizontal=function(){var t=this.position;return"top"===t||"bottom"===t},e.prototype.getGlobalExtent=function(t){var e=this.getExtent();return e[0]=this.toGlobalCoord(e[0]),e[1]=this.toGlobalCoord(e[1]),t&&e[0]>e[1]&&e.reverse(),e},e.prototype.pointToData=function(t,e){return this.coordToData(this.toLocalCoord(t["x"===this.dim?0:1]),e)},e.prototype.setCategorySortInfo=function(t){if("category"!==this.type)return!1;this.model.option.categorySortInfo=t,this.scale.setSortInfo(t)},e}(H_);function LM(t,e,n){n=n||{};var i=t.coordinateSystem,r=e.axis,o={},a=r.getAxesOnZeroOf()[0],s=r.position,l=a?"onZero":s,u=r.dim,h=i.getRect(),c=[h.x,h.x+h.width,h.y,h.y+h.height],p={left:0,right:1,top:0,bottom:1,onZero:2},d=e.get("offset")||0,f="x"===u?[c[2]-d,c[3]+d]:[c[0]-d,c[1]+d];if(a){var g=a.toGlobalCoord(a.dataToCoord(0));f[p.onZero]=Math.max(Math.min(g,f[1]),f[0])}o.position=["y"===u?f[p[l]]:c[0],"x"===u?f[p[l]]:c[3]],o.rotation=Math.PI/2*("x"===u?0:1);o.labelDirection=o.tickDirection=o.nameDirection={top:-1,bottom:1,left:-1,right:1}[s],o.labelOffset=a?f[p[s]]-f[p.onZero]:0,e.get(["axisTick","inside"])&&(o.tickDirection=-o.tickDirection),it(n.labelInside,e.get(["axisLabel","inside"]))&&(o.labelDirection=-o.labelDirection);var y=e.get(["axisLabel","rotate"]);return o.labelRotate="top"===l?-y:y,o.z2=1,o}function PM(t){return"cartesian2d"===t.get("coordinateSystem")}function OM(t){var e={xAxisModel:null,yAxisModel:null};return E(e,(function(n,i){var r=i.replace(/Model$/,""),o=t.getReferringComponents(r,Co).models[0];e[i]=o})),e}var RM=Math.log;function NM(t,e,n){var i=xx.prototype,r=i.getTicks.call(n),o=i.getTicks.call(n,!0),a=r.length-1,s=i.getInterval.call(n),l=i_(t,e),u=l.extent,h=l.fixMin,c=l.fixMax;if("log"===t.type){var p=RM(t.base);u=[RM(u[0])/p,RM(u[1])/p]}t.setExtent(u[0],u[1]),t.calcNiceExtent({splitNumber:a,fixMin:h,fixMax:c});var d=i.getExtent.call(t);h&&(u[0]=d[0]),c&&(u[1]=d[1]);var f=i.getInterval.call(t),g=u[0],y=u[1];if(h&&c)f=(y-g)/a;else if(h)for(y=u[0]+f*a;yu[0]&&isFinite(g)&&isFinite(u[0]);)f=cx(f),g=u[1]-f*a;else{t.getTicks().length-1>a&&(f=cx(f));var v=f*a;(g=zr((y=Math.ceil(u[1]/f)*f)-v))<0&&u[0]>=0?(g=0,y=zr(v)):y>0&&u[1]<=0&&(y=0,g=-zr(v))}var m=(r[0].value-o[0].value)/s,x=(r[a].value-o[a].value)/s;i.setExtent.call(t,g+f*m,y+f*x),i.setInterval.call(t,f),(m||x)&&i.setNiceExtent.call(t,g+f,y-f)}var EM=function(){function t(t,e,n){this.type="grid",this._coordsMap={},this._coordsList=[],this._axesMap={},this._axesList=[],this.axisPointerEnabled=!0,this.dimensions=CM,this._initCartesian(t,e,n),this.model=t}return t.prototype.getRect=function(){return this._rect},t.prototype.update=function(t,e){var n=this._axesMap;function i(t){var e,n=G(t),i=n.length;if(i){for(var r=[],o=i-1;o>=0;o--){var a=t[+n[o]],s=a.model,l=a.scale;ux(l)&&s.get("alignTicks")&&null==s.get("interval")?r.push(a):(r_(l,s),ux(l)&&(e=a))}r.length&&(e||r_((e=r.pop()).scale,e.model),E(r,(function(t){NM(t.scale,t.model,e.scale)})))}}this._updateScale(t,this.model),i(n.x),i(n.y);var r={};E(n.x,(function(t){VM(n,"y",t,r)})),E(n.y,(function(t){VM(n,"x",t,r)})),this.resize(this.model,e)},t.prototype.resize=function(t,e,n){var i=t.getBoxLayoutParams(),r=!n&&t.get("containLabel"),o=xp(i,{width:e.getWidth(),height:e.getHeight()});this._rect=o;var a=this._axesList;function s(){E(a,(function(t){var e=t.isHorizontal(),n=e?[0,o.width]:[0,o.height],i=t.inverse?1:0;t.setExtent(n[i],n[1-i]),function(t,e){var n=t.getExtent(),i=n[0]+n[1];t.toGlobalCoord="x"===t.dim?function(t){return t+e}:function(t){return i-t+e},t.toLocalCoord="x"===t.dim?function(t){return t-e}:function(t){return i-t+e}}(t,e?o.x:o.y)}))}s(),r&&(E(a,(function(t){if(!t.model.get(["axisLabel","inside"])){var e=function(t){var e=t.model,n=t.scale;if(e.get(["axisLabel","show"])&&!n.isBlank()){var i,r,o=n.getExtent();r=n instanceof vx?n.count():(i=n.getTicks()).length;var a,s=t.getLabelModel(),l=a_(t),u=1;r>40&&(u=Math.ceil(r/40));for(var h=0;h0&&i>0||n<0&&i<0)}(t)}var FM=Math.PI,GM=function(){function t(t,e){this.group=new Cr,this.opt=e,this.axisModel=t,k(e,{labelOffset:0,nameDirection:1,tickDirection:1,labelDirection:1,silent:!0,handleAutoShown:function(){return!0}});var n=new Cr({x:e.position[0],y:e.position[1],rotation:e.rotation});n.updateTransform(),this._transformGroup=n}return t.prototype.hasBuilder=function(t){return!!WM[t]},t.prototype.add=function(t){WM[t](this.opt,this.axisModel,this.group,this._transformGroup)},t.prototype.getGroup=function(){return this.group},t.innerTextLayout=function(t,e,n){var i,r,o=Ur(e-t);return Xr(o)?(r=n>0?"top":"bottom",i="center"):Xr(o-FM)?(r=n>0?"bottom":"top",i="center"):(r="middle",i=o>0&&o0?"right":"left":n>0?"left":"right"),{rotation:o,textAlign:i,textVerticalAlign:r}},t.makeAxisEventDataBase=function(t){var e={componentType:t.mainType,componentIndex:t.componentIndex};return e[t.mainType+"Index"]=t.componentIndex,e},t.isLabelSilent=function(t){var e=t.get("tooltip");return t.get("silent")||!(t.get("triggerEvent")||e&&e.show)},t}(),WM={axisLine:function(t,e,n,i){var r=e.get(["axisLine","show"]);if("auto"===r&&t.handleAutoShown&&(r=t.handleAutoShown("axisLine")),r){var o=e.axis.getExtent(),a=i.transform,s=[o[0],0],l=[o[1],0];a&&(Ft(s,s,a),Ft(l,l,a));var u=A({lineCap:"round"},e.getModel(["axisLine","lineStyle"]).getLineStyle()),h=new zu({subPixelOptimize:!0,shape:{x1:s[0],y1:s[1],x2:l[0],y2:l[1]},style:u,strokeContainThreshold:t.strokeContainThreshold||5,silent:!0,z2:1});h.anid="line",n.add(h);var c=e.get(["axisLine","symbol"]);if(null!=c){var p=e.get(["axisLine","symbolSize"]);X(c)&&(c=[c,c]),(X(p)||j(p))&&(p=[p,p]);var d=Oy(e.get(["axisLine","symbolOffset"])||0,p),f=p[0],g=p[1];E([{rotate:t.rotation+Math.PI/2,offset:d[0],r:0},{rotate:t.rotation-Math.PI/2,offset:d[1],r:Math.sqrt((s[0]-l[0])*(s[0]-l[0])+(s[1]-l[1])*(s[1]-l[1]))}],(function(e,i){if("none"!==c[i]&&null!=c[i]){var r=Ly(c[i],-f/2,-g/2,f,g,u.stroke,!0),o=e.r+e.offset;r.attr({rotation:e.rotate,x:s[0]+o*Math.cos(t.rotation),y:s[1]-o*Math.sin(t.rotation),silent:!0,z2:11}),n.add(r)}}))}}},axisTickLabel:function(t,e,n,i){var r=function(t,e,n,i){var r=n.axis,o=n.getModel("axisTick"),a=o.get("show");"auto"===a&&i.handleAutoShown&&(a=i.handleAutoShown("axisTick"));if(!a||r.scale.isBlank())return;for(var s=o.getModel("lineStyle"),l=i.tickDirection*o.get("length"),u=XM(r.getTicksCoords(),e.transform,l,k(s.getLineStyle(),{stroke:n.get(["axisLine","lineStyle","color"])}),"ticks"),h=0;hc[1]?-1:1,d=["start"===s?c[0]-p*h:"end"===s?c[1]+p*h:(c[0]+c[1])/2,UM(s)?t.labelOffset+l*h:0],f=e.get("nameRotate");null!=f&&(f=f*FM/180),UM(s)?o=GM.innerTextLayout(t.rotation,null!=f?f:t.rotation,l):(o=function(t,e,n,i){var r,o,a=Ur(n-t),s=i[0]>i[1],l="start"===e&&!s||"start"!==e&&s;Xr(a-FM/2)?(o=l?"bottom":"top",r="center"):Xr(a-1.5*FM)?(o=l?"top":"bottom",r="center"):(o="middle",r=a<1.5*FM&&a>FM/2?l?"left":"right":l?"right":"left");return{rotation:a,textAlign:r,textVerticalAlign:o}}(t.rotation,s,f||0,c),null!=(a=t.axisNameAvailableWidth)&&(a=Math.abs(a/Math.sin(o.rotation)),!isFinite(a)&&(a=null)));var g=u.getFont(),y=e.get("nameTruncate",!0)||{},v=y.ellipsis,m=it(t.nameTruncateMaxWidth,y.maxWidth,a),x=new ks({x:d[0],y:d[1],rotation:o.rotation,silent:GM.isLabelSilent(e),style:Uh(u,{text:r,font:g,overflow:"truncate",width:m,ellipsis:v,fill:u.getTextColor()||e.get(["axisLine","lineStyle","color"]),align:u.get("align")||o.textAlign,verticalAlign:u.get("verticalAlign")||o.textVerticalAlign}),z2:1});if(Eh({el:x,componentModel:e,itemName:r}),x.__fullText=r,x.anid="name",e.get("triggerEvent")){var _=GM.makeAxisEventDataBase(e);_.targetType="axisName",_.name=r,Hs(x).eventData=_}i.add(x),x.updateTransform(),n.add(x),x.decomposeTransform()}}};function HM(t){t&&(t.ignore=!0)}function YM(t,e){var n=t&&t.getBoundingRect().clone(),i=e&&e.getBoundingRect().clone();if(n&&i){var r=Oi([]);return zi(r,r,-t.rotation),n.applyTransform(Ni([],r,t.getLocalTransform())),i.applyTransform(Ni([],r,e.getLocalTransform())),n.intersect(i)}}function UM(t){return"middle"===t||"center"===t}function XM(t,e,n,i,r){for(var o=[],a=[],s=[],l=0;l=0||t===e}function qM(t){var e=KM(t);if(e){var n=e.axisPointerModel,i=e.axis.scale,r=n.option,o=n.get("status"),a=n.get("value");null!=a&&(a=i.parse(a));var s=$M(n);null==o&&(r.status=s?"show":"hide");var l=i.getExtent().slice();l[0]>l[1]&&l.reverse(),(null==a||a>l[1])&&(a=l[1]),a0&&!c.min?c.min=0:null!=c.min&&c.min<0&&!c.max&&(c.max=0);var p=a;null!=c.color&&(p=k({color:c.color},a));var d=C(T(c),{boundaryGap:t,splitNumber:e,scale:n,axisLine:i,axisTick:r,axisLabel:o,name:c.text,showName:s,nameLocation:"end",nameGap:u,nameTextStyle:p,triggerEvent:h},!1);if(X(l)){var f=d.name;d.name=l.replace("{value}",null!=f?f:"")}else U(l)&&(d.name=l(d.name,d));var g=new dc(d,null,this.ecModel);return R(g,p_.prototype),g.mainType="radar",g.componentIndex=this.componentIndex,g}),this);this._indicatorModels=c},e.prototype.getIndicatorModels=function(){return this._indicatorModels},e.type="radar",e.defaultOption={z:0,center:["50%","50%"],radius:"75%",startAngle:90,axisName:{show:!0},boundaryGap:[0,0],splitNumber:5,axisNameGap:15,scale:!1,shape:"polygon",axisLine:C({lineStyle:{color:"#bbb"}},xI.axisLine),axisLabel:_I(xI.axisLabel,!1),axisTick:_I(xI.axisTick,!1),splitLine:_I(xI.splitLine,!0),splitArea:_I(xI.splitArea,!0),indicator:[]},e}(Tp),wI=["axisLine","axisTickLabel","axisName"],SI=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n){this.group.removeAll(),this._buildAxes(t),this._buildSplitLineAndArea(t)},e.prototype._buildAxes=function(t){var e=t.coordinateSystem;E(z(e.getIndicatorAxes(),(function(t){var n=t.model.get("showName")?t.name:"";return new GM(t.model,{axisName:n,position:[e.cx,e.cy],rotation:t.angle,labelDirection:-1,tickDirection:-1,nameDirection:1})})),(function(t){E(wI,t.add,t),this.group.add(t.getGroup())}),this)},e.prototype._buildSplitLineAndArea=function(t){var e=t.coordinateSystem,n=e.getIndicatorAxes();if(n.length){var i=t.get("shape"),r=t.getModel("splitLine"),o=t.getModel("splitArea"),a=r.getModel("lineStyle"),s=o.getModel("areaStyle"),l=r.get("show"),u=o.get("show"),h=a.get("color"),c=s.get("color"),p=Y(h)?h:[h],d=Y(c)?c:[c],f=[],g=[];if("circle"===i)for(var y=n[0].getTicksCoords(),v=e.cx,m=e.cy,x=0;x3?1.4:r>1?1.2:1.1;LI(this,"zoom","zoomOnMouseWheel",t,{scale:i>0?s:1/s,originX:o,originY:a,isAvailableBehavior:null})}if(n){var l=Math.abs(i);LI(this,"scrollMove","moveOnMouseWheel",t,{scrollDelta:(i>0?1:-1)*(l>3?.4:l>1?.15:.05),originX:o,originY:a,isAvailableBehavior:null})}}},e.prototype._pinchHandler=function(t){DI(this._zr,"globalPan")||LI(this,"zoom",null,t,{scale:t.pinchScale>1?1.1:1/1.1,originX:t.pinchX,originY:t.pinchY,isAvailableBehavior:null})},e}(Xt);function LI(t,e,n,i,r){t.pointerChecker&&t.pointerChecker(i,r.originX,r.originY)&&(se(i.event),PI(t,e,n,i,r))}function PI(t,e,n,i,r){r.isAvailableBehavior=W(OI,null,n,i),t.trigger(e,r)}function OI(t,e,n){var i=n[t];return!t||i&&(!X(i)||e.event[i+"Key"])}function RI(t,e,n){var i=t.target;i.x+=e,i.y+=n,i.dirty()}function NI(t,e,n,i){var r=t.target,o=t.zoomLimit,a=t.zoom=t.zoom||1;if(a*=e,o){var s=o.min||0,l=o.max||1/0;a=Math.max(Math.min(l,a),s)}var u=a/t.zoom;t.zoom=a,r.x-=(n-r.x)*(u-1),r.y-=(i-r.y)*(u-1),r.scaleX*=u,r.scaleY*=u,r.dirty()}var EI,zI={axisPointer:1,tooltip:1,brush:1};function VI(t,e,n){var i=e.getComponentByElement(t.topTarget),r=i&&i.coordinateSystem;return i&&i!==n&&!zI.hasOwnProperty(i.mainType)&&r&&r.model!==n}function BI(t){X(t)&&(t=(new DOMParser).parseFromString(t,"text/xml"));var e=t;for(9===e.nodeType&&(e=e.firstChild);"svg"!==e.nodeName.toLowerCase()||1!==e.nodeType;)e=e.nextSibling;return e}var FI={fill:"fill",stroke:"stroke","stroke-width":"lineWidth",opacity:"opacity","fill-opacity":"fillOpacity","stroke-opacity":"strokeOpacity","stroke-dasharray":"lineDash","stroke-dashoffset":"lineDashOffset","stroke-linecap":"lineCap","stroke-linejoin":"lineJoin","stroke-miterlimit":"miterLimit","font-family":"fontFamily","font-size":"fontSize","font-style":"fontStyle","font-weight":"fontWeight","text-anchor":"textAlign",visibility:"visibility",display:"display"},GI=G(FI),WI={"alignment-baseline":"textBaseline","stop-color":"stopColor"},HI=G(WI),YI=function(){function t(){this._defs={},this._root=null}return t.prototype.parse=function(t,e){e=e||{};var n=BI(t);this._defsUsePending=[];var i=new Cr;this._root=i;var r=[],o=n.getAttribute("viewBox")||"",a=parseFloat(n.getAttribute("width")||e.width),s=parseFloat(n.getAttribute("height")||e.height);isNaN(a)&&(a=null),isNaN(s)&&(s=null),KI(n,i,null,!0,!1);for(var l,u,h=n.firstChild;h;)this._parseNode(h,i,r,null,!1,!1),h=h.nextSibling;if(function(t,e){for(var n=0;n=4&&(l={x:parseFloat(c[0]||0),y:parseFloat(c[1]||0),width:parseFloat(c[2]),height:parseFloat(c[3])})}if(l&&null!=a&&null!=s&&(u=oT(l,{x:0,y:0,width:a,height:s}),!e.ignoreViewBox)){var p=i;(i=new Cr).add(p),p.scaleX=p.scaleY=u.scale,p.x=u.x,p.y=u.y}return e.ignoreRootClip||null==a||null==s||i.setClipPath(new Cs({shape:{x:0,y:0,width:a,height:s}})),{root:i,width:a,height:s,viewBoxRect:l,viewBoxTransform:u,named:r}},t.prototype._parseNode=function(t,e,n,i,r,o){var a,s=t.nodeName.toLowerCase(),l=i;if("defs"===s&&(r=!0),"text"===s&&(o=!0),"defs"===s||"switch"===s)a=e;else{if(!r){var u=EI[s];if(u&&mt(EI,s)){a=u.call(this,t,e);var h=t.getAttribute("name");if(h){var c={name:h,namedFrom:null,svgNodeTagLower:s,el:a};n.push(c),"g"===s&&(l=c)}else i&&n.push({name:i.name,namedFrom:i,svgNodeTagLower:s,el:a});e.add(a)}}var p=UI[s];if(p&&mt(UI,s)){var d=p.call(this,t),f=t.getAttribute("id");f&&(this._defs[f]=d)}}if(a&&a.isGroup)for(var g=t.firstChild;g;)1===g.nodeType?this._parseNode(g,a,n,l,r,o):3===g.nodeType&&o&&this._parseText(g,a),g=g.nextSibling},t.prototype._parseText=function(t,e){var n=new vs({style:{text:t.textContent},silent:!0,x:this._textX||0,y:this._textY||0});jI(e,n),KI(t,n,this._defsUsePending,!1,!1),function(t,e){var n=e.__selfStyle;if(n){var i=n.textBaseline,r=i;i&&"auto"!==i?"baseline"===i?r="alphabetic":"before-edge"===i||"text-before-edge"===i?r="top":"after-edge"===i||"text-after-edge"===i?r="bottom":"central"!==i&&"mathematical"!==i||(r="middle"):r="alphabetic",t.style.textBaseline=r}var o=e.__inheritedStyle;if(o){var a=o.textAlign,s=a;a&&("middle"===a&&(s="center"),t.style.textAlign=s)}}(n,e);var i=n.style,r=i.fontSize;r&&r<9&&(i.fontSize=9,n.scaleX*=r/9,n.scaleY*=r/9);var o=(i.fontSize||i.fontFamily)&&[i.fontStyle,i.fontWeight,(i.fontSize||12)+"px",i.fontFamily||"sans-serif"].join(" ");i.font=o;var a=n.getBoundingRect();return this._textX+=a.width,e.add(n),n},t.internalField=void(EI={g:function(t,e){var n=new Cr;return jI(e,n),KI(t,n,this._defsUsePending,!1,!1),n},rect:function(t,e){var n=new Cs;return jI(e,n),KI(t,n,this._defsUsePending,!1,!1),n.setShape({x:parseFloat(t.getAttribute("x")||"0"),y:parseFloat(t.getAttribute("y")||"0"),width:parseFloat(t.getAttribute("width")||"0"),height:parseFloat(t.getAttribute("height")||"0")}),n.silent=!0,n},circle:function(t,e){var n=new hu;return jI(e,n),KI(t,n,this._defsUsePending,!1,!1),n.setShape({cx:parseFloat(t.getAttribute("cx")||"0"),cy:parseFloat(t.getAttribute("cy")||"0"),r:parseFloat(t.getAttribute("r")||"0")}),n.silent=!0,n},line:function(t,e){var n=new zu;return jI(e,n),KI(t,n,this._defsUsePending,!1,!1),n.setShape({x1:parseFloat(t.getAttribute("x1")||"0"),y1:parseFloat(t.getAttribute("y1")||"0"),x2:parseFloat(t.getAttribute("x2")||"0"),y2:parseFloat(t.getAttribute("y2")||"0")}),n.silent=!0,n},ellipse:function(t,e){var n=new pu;return jI(e,n),KI(t,n,this._defsUsePending,!1,!1),n.setShape({cx:parseFloat(t.getAttribute("cx")||"0"),cy:parseFloat(t.getAttribute("cy")||"0"),rx:parseFloat(t.getAttribute("rx")||"0"),ry:parseFloat(t.getAttribute("ry")||"0")}),n.silent=!0,n},polygon:function(t,e){var n,i=t.getAttribute("points");i&&(n=qI(i));var r=new Pu({shape:{points:n||[]},silent:!0});return jI(e,r),KI(t,r,this._defsUsePending,!1,!1),r},polyline:function(t,e){var n,i=t.getAttribute("points");i&&(n=qI(i));var r=new Ru({shape:{points:n||[]},silent:!0});return jI(e,r),KI(t,r,this._defsUsePending,!1,!1),r},image:function(t,e){var n=new _s;return jI(e,n),KI(t,n,this._defsUsePending,!1,!1),n.setStyle({image:t.getAttribute("xlink:href")||t.getAttribute("href"),x:+t.getAttribute("x"),y:+t.getAttribute("y"),width:+t.getAttribute("width"),height:+t.getAttribute("height")}),n.silent=!0,n},text:function(t,e){var n=t.getAttribute("x")||"0",i=t.getAttribute("y")||"0",r=t.getAttribute("dx")||"0",o=t.getAttribute("dy")||"0";this._textX=parseFloat(n)+parseFloat(r),this._textY=parseFloat(i)+parseFloat(o);var a=new Cr;return jI(e,a),KI(t,a,this._defsUsePending,!1,!0),a},tspan:function(t,e){var n=t.getAttribute("x"),i=t.getAttribute("y");null!=n&&(this._textX=parseFloat(n)),null!=i&&(this._textY=parseFloat(i));var r=t.getAttribute("dx")||"0",o=t.getAttribute("dy")||"0",a=new Cr;return jI(e,a),KI(t,a,this._defsUsePending,!1,!0),this._textX+=parseFloat(r),this._textY+=parseFloat(o),a},path:function(t,e){var n=su(t.getAttribute("d")||"");return jI(e,n),KI(t,n,this._defsUsePending,!1,!1),n.silent=!0,n}}),t}(),UI={lineargradient:function(t){var e=parseInt(t.getAttribute("x1")||"0",10),n=parseInt(t.getAttribute("y1")||"0",10),i=parseInt(t.getAttribute("x2")||"10",10),r=parseInt(t.getAttribute("y2")||"0",10),o=new Xu(e,n,i,r);return XI(t,o),ZI(t,o),o},radialgradient:function(t){var e=parseInt(t.getAttribute("cx")||"0",10),n=parseInt(t.getAttribute("cy")||"0",10),i=parseInt(t.getAttribute("r")||"0",10),r=new Zu(e,n,i);return XI(t,r),ZI(t,r),r}};function XI(t,e){"userSpaceOnUse"===t.getAttribute("gradientUnits")&&(e.global=!0)}function ZI(t,e){for(var n=t.firstChild;n;){if(1===n.nodeType&&"stop"===n.nodeName.toLocaleLowerCase()){var i=n.getAttribute("offset"),r=void 0;r=i&&i.indexOf("%")>0?parseInt(i,10)/100:i?parseFloat(i):0;var o={};rT(n,o,o);var a=o.stopColor||n.getAttribute("stop-color")||"#000000";e.colorStops.push({offset:r,color:a})}n=n.nextSibling}}function jI(t,e){t&&t.__inheritedStyle&&(e.__inheritedStyle||(e.__inheritedStyle={}),k(e.__inheritedStyle,t.__inheritedStyle))}function qI(t){for(var e=tT(t),n=[],i=0;i0;o-=2){var a=i[o],s=i[o-1],l=tT(a);switch(r=r||[1,0,0,1,0,0],s){case"translate":Ei(r,r,[parseFloat(l[0]),parseFloat(l[1]||"0")]);break;case"scale":Vi(r,r,[parseFloat(l[0]),parseFloat(l[1]||l[0])]);break;case"rotate":zi(r,r,-parseFloat(l[0])*nT);break;case"skewX":Ni(r,[1,0,Math.tan(parseFloat(l[0])*nT),1,0,0],r);break;case"skewY":Ni(r,[1,Math.tan(parseFloat(l[0])*nT),0,1,0,0],r);break;case"matrix":r[0]=parseFloat(l[0]),r[1]=parseFloat(l[1]),r[2]=parseFloat(l[2]),r[3]=parseFloat(l[3]),r[4]=parseFloat(l[4]),r[5]=parseFloat(l[5])}}e.setLocalTransform(r)}}(t,e),rT(t,a,s),i||function(t,e,n){for(var i=0;i0,f={api:n,geo:s,mapOrGeoModel:t,data:a,isVisualEncodedByVisualMap:d,isGeo:o,transformInfoRaw:c};"geoJSON"===s.resourceType?this._buildGeoJSON(f):"geoSVG"===s.resourceType&&this._buildSVG(f),this._updateController(t,e,n),this._updateMapSelectHandler(t,l,n,i)},t.prototype._buildGeoJSON=function(t){var e=this._regionsGroupByName=ft(),n=ft(),i=this._regionsGroup,r=t.transformInfoRaw,o=t.mapOrGeoModel,a=t.data,s=t.geo.projection,l=s&&s.stream;function u(t,e){return e&&(t=e(t)),t&&[t[0]*r.scaleX+r.x,t[1]*r.scaleY+r.y]}function h(t){for(var e=[],n=!l&&s&&s.project,i=0;i=0)&&(p=r);var d=a?{normal:{align:"center",verticalAlign:"middle"}}:null;Hh(e,Yh(i),{labelFetcher:p,labelDataIndex:c,defaultText:n},d);var f=e.getTextContent();if(f&&(TT(f).ignore=f.ignore,e.textConfig&&a)){var g=e.getBoundingRect().clone();e.textConfig.layoutRect=g,e.textConfig.position=[(a[0]-g.x)/g.width*100+"%",(a[1]-g.y)/g.height*100+"%"]}e.disableLabelAnimation=!0}else e.removeTextContent(),e.removeTextConfig(),e.disableLabelAnimation=null}function PT(t,e,n,i,r,o){t.data?t.data.setItemGraphicEl(o,e):Hs(e).eventData={componentType:"geo",componentIndex:r.componentIndex,geoIndex:r.componentIndex,name:n,region:i&&i.option||{}}}function OT(t,e,n,i,r){t.data||Eh({el:e,componentModel:r,itemName:n,itemTooltipOption:i.get("tooltip")})}function RT(t,e,n,i,r){e.highDownSilentOnTouch=!!r.get("selectedMode");var o=i.getModel("emphasis"),a=o.get("focus");return Rl(e,a,o.get("blurScope"),o.get("disabled")),t.isGeo&&function(t,e,n){var i=Hs(t);i.componentMainType=e.mainType,i.componentIndex=e.componentIndex,i.componentHighDownName=n}(e,r,n),a}function NT(t,e,n){var i,r=[];function o(){i=[]}function a(){i.length&&(r.push(i),i=[])}var s=e({polygonStart:o,polygonEnd:a,lineStart:o,lineEnd:a,point:function(t,e){isFinite(t)&&isFinite(e)&&i.push([t,e])},sphere:function(){}});return!n&&s.polygonStart(),E(t,(function(t){s.lineStart();for(var e=0;e-1&&(n.style.stroke=n.style.fill,n.style.fill="#fff",n.style.lineWidth=2),n},e.type="series.map",e.dependencies=["geo"],e.layoutMode="box",e.defaultOption={z:2,coordinateSystem:"geo",map:"",left:"center",top:"center",aspectScale:null,showLegendSymbol:!0,boundingCoords:null,center:null,zoom:1,scaleLimit:null,selectedMode:!0,label:{show:!1,color:"#000"},itemStyle:{borderWidth:.5,borderColor:"#444",areaColor:"#eee"},emphasis:{label:{show:!0,color:"rgb(100,0,0)"},itemStyle:{areaColor:"rgba(255,215,0,0.8)"}},select:{label:{show:!0,color:"rgb(100,0,0)"},itemStyle:{color:"rgba(255,215,0,0.8)"}},nameProperty:"name"},e}(sg);function VT(t){var e={};t.eachSeriesByType("map",(function(t){var n=t.getHostGeoModel(),i=n?"o"+n.id:"i"+t.getMapType();(e[i]=e[i]||[]).push(t)})),E(e,(function(t,e){for(var n,i,r,o=(n=z(t,(function(t){return t.getData()})),i=t[0].get("mapValueCalculation"),r={},E(n,(function(t){t.each(t.mapDimension("value"),(function(e,n){var i="ec-"+t.getName(n);r[i]=r[i]||[],isNaN(e)||r[i].push(e)}))})),n[0].map(n[0].mapDimension("value"),(function(t,e){for(var o="ec-"+n[0].getName(e),a=0,s=1/0,l=-1/0,u=r[o].length,h=0;h1?(d.width=p,d.height=p/x):(d.height=p,d.width=p*x),d.y=c[1]-d.height/2,d.x=c[0]-d.width/2;else{var b=t.getBoxLayoutParams();b.aspect=x,d=xp(b,{width:v,height:m})}this.setViewRect(d.x,d.y,d.width,d.height),this.setCenter(t.get("center"),e),this.setZoom(t.get("zoom"))}R(UT,GT);var jT=new(function(){function t(){this.dimensions=YT}return t.prototype.create=function(t,e){var n=[];function i(t){return{nameProperty:t.get("nameProperty"),aspectScale:t.get("aspectScale"),projection:t.get("projection")}}t.eachComponent("geo",(function(t,r){var o=t.get("map"),a=new UT(o+r,o,A({nameMap:t.get("nameMap")},i(t)));a.zoomLimit=t.get("scaleLimit"),n.push(a),t.coordinateSystem=a,a.model=t,a.resize=ZT,a.resize(t,e)})),t.eachSeries((function(t){if("geo"===t.get("coordinateSystem")){var e=t.get("geoIndex")||0;t.coordinateSystem=n[e]}}));var r={};return t.eachSeriesByType("map",(function(t){if(!t.getHostGeoModel()){var e=t.getMapType();r[e]=r[e]||[],r[e].push(t)}})),E(r,(function(t,r){var o=z(t,(function(t){return t.get("nameMap")})),a=new UT(r,r,A({nameMap:D(o)},i(t[0])));a.zoomLimit=it.apply(null,z(t,(function(t){return t.get("scaleLimit")}))),n.push(a),a.resize=ZT,a.resize(t[0],e),E(t,(function(t){t.coordinateSystem=a,function(t,e){E(e.get("geoCoord"),(function(e,n){t.addGeoCoord(n,e)}))}(a,t)}))})),n},t.prototype.getFilledRegions=function(t,e,n,i){for(var r=(t||[]).slice(),o=ft(),a=0;a=0;){var o=e[n];o.hierNode.prelim+=i,o.hierNode.modifier+=i,r+=o.hierNode.change,i+=o.hierNode.shift+r}}(t);var o=(n[0].hierNode.prelim+n[n.length-1].hierNode.prelim)/2;r?(t.hierNode.prelim=r.hierNode.prelim+e(t,r),t.hierNode.modifier=t.hierNode.prelim-o):t.hierNode.prelim=o}else r&&(t.hierNode.prelim=r.hierNode.prelim+e(t,r));t.parentNode.hierNode.defaultAncestor=function(t,e,n,i){if(e){for(var r=t,o=t,a=o.parentNode.children[0],s=e,l=r.hierNode.modifier,u=o.hierNode.modifier,h=a.hierNode.modifier,c=s.hierNode.modifier;s=oC(s),o=aC(o),s&&o;){r=oC(r),a=aC(a),r.hierNode.ancestor=t;var p=s.hierNode.prelim+c-o.hierNode.prelim-u+i(s,o);p>0&&(lC(sC(s,t,n),t,p),u+=p,l+=p),c+=s.hierNode.modifier,u+=o.hierNode.modifier,l+=r.hierNode.modifier,h+=a.hierNode.modifier}s&&!oC(r)&&(r.hierNode.thread=s,r.hierNode.modifier+=c-l),o&&!aC(a)&&(a.hierNode.thread=o,a.hierNode.modifier+=u-h,n=t)}return n}(t,r,t.parentNode.hierNode.defaultAncestor||i[0],e)}function nC(t){var e=t.hierNode.prelim+t.parentNode.hierNode.modifier;t.setLayout({x:e},!0),t.hierNode.modifier+=t.parentNode.hierNode.modifier}function iC(t){return arguments.length?t:uC}function rC(t,e){return t-=Math.PI/2,{x:e*Math.cos(t),y:e*Math.sin(t)}}function oC(t){var e=t.children;return e.length&&t.isExpand?e[e.length-1]:t.hierNode.thread}function aC(t){var e=t.children;return e.length&&t.isExpand?e[0]:t.hierNode.thread}function sC(t,e,n){return t.hierNode.ancestor.parentNode===e.parentNode?t.hierNode.ancestor:n}function lC(t,e,n){var i=n/(e.hierNode.i-t.hierNode.i);e.hierNode.change-=i,e.hierNode.shift+=n,e.hierNode.modifier+=n,e.hierNode.prelim+=n,t.hierNode.change+=i}function uC(t,e){return t.parentNode===e.parentNode?1:2}var hC=function(){this.parentPoint=[],this.childPoints=[]},cC=function(t){function e(e){return t.call(this,e)||this}return n(e,t),e.prototype.getDefaultStyle=function(){return{stroke:"#000",fill:null}},e.prototype.getDefaultShape=function(){return new hC},e.prototype.buildPath=function(t,e){var n=e.childPoints,i=n.length,r=e.parentPoint,o=n[0],a=n[i-1];if(1===i)return t.moveTo(r[0],r[1]),void t.lineTo(o[0],o[1]);var s=e.orient,l="TB"===s||"BT"===s?0:1,u=1-l,h=Er(e.forkPosition,1),c=[];c[l]=r[l],c[u]=r[u]+(a[u]-r[u])*h,t.moveTo(r[0],r[1]),t.lineTo(c[0],c[1]),t.moveTo(o[0],o[1]),c[l]=o[l],t.lineTo(c[0],c[1]),c[l]=a[l],t.lineTo(c[0],c[1]),t.lineTo(a[0],a[1]);for(var p=1;pm.x)||(_-=Math.PI);var S=b?"left":"right",M=s.getModel("label"),I=M.get("rotate"),T=I*(Math.PI/180),C=y.getTextContent();C&&(y.setTextConfig({position:M.get("position")||S,rotation:null==I?-_:T,origin:"center"}),C.setStyle("verticalAlign","middle"))}var D=s.get(["emphasis","focus"]),A="relative"===D?gt(a.getAncestorsIndices(),a.getDescendantIndices()):"ancestor"===D?a.getAncestorsIndices():"descendant"===D?a.getDescendantIndices():null;A&&(Hs(n).focus=A),function(t,e,n,i,r,o,a,s){var l=e.getModel(),u=t.get("edgeShape"),h=t.get("layout"),c=t.getOrient(),p=t.get(["lineStyle","curveness"]),d=t.get("edgeForkPosition"),f=l.getModel("lineStyle").getLineStyle(),g=i.__edge;if("curve"===u)e.parentNode&&e.parentNode!==n&&(g||(g=i.__edge=new Gu({shape:mC(h,c,p,r,r)})),rh(g,{shape:mC(h,c,p,o,a)},t));else if("polyline"===u)if("orthogonal"===h){if(e!==n&&e.children&&0!==e.children.length&&!0===e.isExpand){for(var y=e.children,v=[],m=0;me&&(e=i.height)}this.height=e+1},t.prototype.getNodeById=function(t){if(this.getId()===t)return this;for(var e=0,n=this.children,i=n.length;e=0&&this.hostTree.data.setItemLayout(this.dataIndex,t,e)},t.prototype.getLayout=function(){return this.hostTree.data.getItemLayout(this.dataIndex)},t.prototype.getModel=function(t){if(!(this.dataIndex<0))return this.hostTree.data.getItemModel(this.dataIndex).getModel(t)},t.prototype.getLevelModel=function(){return(this.hostTree.levelModels||[])[this.depth]},t.prototype.setVisual=function(t,e){this.dataIndex>=0&&this.hostTree.data.setItemVisual(this.dataIndex,t,e)},t.prototype.getVisual=function(t){return this.hostTree.data.getItemVisual(this.dataIndex,t)},t.prototype.getRawIndex=function(){return this.hostTree.data.getRawIndex(this.dataIndex)},t.prototype.getId=function(){return this.hostTree.data.getId(this.dataIndex)},t.prototype.getChildIndex=function(){if(this.parentNode){for(var t=this.parentNode.children,e=0;e=0){var i=n.getData().tree.root,r=t.targetNode;if(X(r)&&(r=i.getNodeById(r)),r&&i.contains(r))return{node:r};var o=t.targetNodeId;if(null!=o&&(r=i.getNodeById(o)))return{node:r}}}function LC(t){for(var e=[];t;)(t=t.parentNode)&&e.push(t);return e.reverse()}function PC(t,e){return P(LC(t),e)>=0}function OC(t,e){for(var n=[];t;){var i=t.dataIndex;n.push({name:t.name,dataIndex:i,value:e.getRawValue(i)}),t=t.parentNode}return n.reverse(),n}var RC=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.hasSymbolVisual=!0,e.ignoreStyleOnData=!0,e}return n(e,t),e.prototype.getInitialData=function(t){var e={name:t.name,children:t.data},n=t.leaves||{},i=new dc(n,this,this.ecModel),r=AC.createTree(e,this,(function(t){t.wrapMethod("getItemModel",(function(t,e){var n=r.getNodeByDataIndex(e);return n&&n.children.length&&n.isExpand||(t.parentModel=i),t}))}));var o=0;r.eachNode("preorder",(function(t){t.depth>o&&(o=t.depth)}));var a=t.expandAndCollapse&&t.initialTreeDepth>=0?t.initialTreeDepth:o;return r.root.eachNode("preorder",(function(t){var e=t.hostTree.data.getRawDataItem(t.dataIndex);t.isExpand=e&&null!=e.collapsed?!e.collapsed:t.depth<=a})),r.data},e.prototype.getOrient=function(){var t=this.get("orient");return"horizontal"===t?t="LR":"vertical"===t&&(t="TB"),t},e.prototype.setZoom=function(t){this.option.zoom=t},e.prototype.setCenter=function(t){this.option.center=t},e.prototype.formatTooltip=function(t,e,n){for(var i=this.getData().tree,r=i.root.children[0],o=i.getNodeByDataIndex(t),a=o.getValue(),s=o.name;o&&o!==r;)s=o.parentNode.name+"."+s,o=o.parentNode;return Xf("nameValue",{name:s,value:a,noValue:isNaN(a)||null==a})},e.prototype.getDataParams=function(e){var n=t.prototype.getDataParams.apply(this,arguments),i=this.getData().tree.getNodeByDataIndex(e);return n.treeAncestors=OC(i,this),n.collapsed=!i.isExpand,n},e.type="series.tree",e.layoutMode="box",e.defaultOption={z:2,coordinateSystem:"view",left:"12%",top:"12%",right:"12%",bottom:"12%",layout:"orthogonal",edgeShape:"curve",edgeForkPosition:"50%",roam:!1,nodeScaleRatio:.4,center:null,zoom:1,orient:"LR",symbol:"emptyCircle",symbolSize:7,expandAndCollapse:!0,initialTreeDepth:2,lineStyle:{color:"#ccc",width:1.5,curveness:.5},itemStyle:{color:"lightsteelblue",borderWidth:1.5},label:{show:!0},animationEasing:"linear",animationDuration:700,animationDurationUpdate:500},e}(sg);function NC(t,e){for(var n,i=[t];n=i.pop();)if(e(n),n.isExpand){var r=n.children;if(r.length)for(var o=r.length-1;o>=0;o--)i.push(r[o])}}function EC(t,e){t.eachSeriesByType("tree",(function(t){!function(t,e){var n=function(t,e){return xp(t.getBoxLayoutParams(),{width:e.getWidth(),height:e.getHeight()})}(t,e);t.layoutInfo=n;var i=t.get("layout"),r=0,o=0,a=null;"radial"===i?(r=2*Math.PI,o=Math.min(n.height,n.width)/2,a=iC((function(t,e){return(t.parentNode===e.parentNode?1:2)/t.depth}))):(r=n.width,o=n.height,a=iC());var s=t.getData().tree.root,l=s.children[0];if(l){!function(t){var e=t;e.hierNode={defaultAncestor:null,ancestor:e,prelim:0,modifier:0,change:0,shift:0,i:0,thread:null};for(var n,i,r=[e];n=r.pop();)if(i=n.children,n.isExpand&&i.length)for(var o=i.length-1;o>=0;o--){var a=i[o];a.hierNode={defaultAncestor:null,ancestor:a,prelim:0,modifier:0,change:0,shift:0,i:o,thread:null},r.push(a)}}(s),function(t,e,n){for(var i,r=[t],o=[];i=r.pop();)if(o.push(i),i.isExpand){var a=i.children;if(a.length)for(var s=0;sh.getLayout().x&&(h=t),t.depth>c.depth&&(c=t)}));var p=u===h?1:a(u,h)/2,d=p-u.getLayout().x,f=0,g=0,y=0,v=0;if("radial"===i)f=r/(h.getLayout().x+p+d),g=o/(c.depth-1||1),NC(l,(function(t){y=(t.getLayout().x+d)*f,v=(t.depth-1)*g;var e=rC(y,v);t.setLayout({x:e.x,y:e.y,rawX:y,rawY:v},!0)}));else{var m=t.getOrient();"RL"===m||"LR"===m?(g=o/(h.getLayout().x+p+d),f=r/(c.depth-1||1),NC(l,(function(t){v=(t.getLayout().x+d)*g,y="LR"===m?(t.depth-1)*f:r-(t.depth-1)*f,t.setLayout({x:y,y:v},!0)}))):"TB"!==m&&"BT"!==m||(f=r/(h.getLayout().x+p+d),g=o/(c.depth-1||1),NC(l,(function(t){y=(t.getLayout().x+d)*f,v="TB"===m?(t.depth-1)*g:o-(t.depth-1)*g,t.setLayout({x:y,y:v},!0)})))}}}(t,e)}))}function zC(t){t.eachSeriesByType("tree",(function(t){var e=t.getData();e.tree.eachNode((function(t){var n=t.getModel().getModel("itemStyle").getItemStyle();A(e.ensureUniqueItemVisual(t.dataIndex,"style"),n)}))}))}var VC=["treemapZoomToNode","treemapRender","treemapMove"];function BC(t){var e=t.getData().tree,n={};e.eachNode((function(e){for(var i=e;i&&i.depth>1;)i=i.parentNode;var r=ed(t.ecModel,i.name||i.dataIndex+"",n);e.setVisual("decal",r)}))}var FC=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.preventUsingHoverLayer=!0,n}return n(e,t),e.prototype.getInitialData=function(t,e){var n={name:t.name,children:t.data};GC(n);var i=t.levels||[],r=this.designatedVisualItemStyle={},o=new dc({itemStyle:r},this,e),a=z((i=t.levels=function(t,e){var n,i,r=ho(e.get("color")),o=ho(e.get(["aria","decal","decals"]));if(!r)return;E(t=t||[],(function(t){var e=new dc(t),r=e.get("color"),o=e.get("decal");(e.get(["itemStyle","color"])||r&&"none"!==r)&&(n=!0),(e.get(["itemStyle","decal"])||o&&"none"!==o)&&(i=!0)}));var a=t[0]||(t[0]={});n||(a.color=r.slice());!i&&o&&(a.decal=o.slice());return t}(i,e))||[],(function(t){return new dc(t,o,e)}),this),s=AC.createTree(n,this,(function(t){t.wrapMethod("getItemModel",(function(t,e){var n=s.getNodeByDataIndex(e),i=n?a[n.depth]:null;return t.parentModel=i||o,t}))}));return s.data},e.prototype.optionUpdated=function(){this.resetViewRoot()},e.prototype.formatTooltip=function(t,e,n){var i=this.getData(),r=this.getRawValue(t);return Xf("nameValue",{name:i.getName(t),value:r})},e.prototype.getDataParams=function(e){var n=t.prototype.getDataParams.apply(this,arguments),i=this.getData().tree.getNodeByDataIndex(e);return n.treeAncestors=OC(i,this),n.treePathInfo=n.treeAncestors,n},e.prototype.setLayoutInfo=function(t){this.layoutInfo=this.layoutInfo||{},A(this.layoutInfo,t)},e.prototype.mapIdToIndex=function(t){var e=this._idIndexMap;e||(e=this._idIndexMap=ft(),this._idIndexMapCount=0);var n=e.get(t);return null==n&&e.set(t,n=this._idIndexMapCount++),n},e.prototype.getViewRoot=function(){return this._viewRoot},e.prototype.resetViewRoot=function(t){t?this._viewRoot=t:t=this._viewRoot;var e=this.getRawData().tree.root;t&&(t===e||e.contains(t))||(this._viewRoot=e)},e.prototype.enableAriaDecal=function(){BC(this)},e.type="series.treemap",e.layoutMode="box",e.defaultOption={progressive:0,left:"center",top:"middle",width:"80%",height:"80%",sort:!0,clipWindow:"origin",squareRatio:.5*(1+Math.sqrt(5)),leafDepth:null,drillDownIcon:"▶",zoomToNodeRatio:.1024,roam:!0,nodeClick:"zoomToNode",animation:!0,animationDurationUpdate:900,animationEasing:"quinticInOut",breadcrumb:{show:!0,height:22,left:"center",top:"bottom",emptyItemWidth:25,itemStyle:{color:"rgba(0,0,0,0.7)",textStyle:{color:"#fff"}}},label:{show:!0,distance:0,padding:5,position:"inside",color:"#fff",overflow:"truncate"},upperLabel:{show:!1,position:[0,"50%"],height:20,overflow:"truncate",verticalAlign:"middle"},itemStyle:{color:null,colorAlpha:null,colorSaturation:null,borderWidth:0,gapWidth:0,borderColor:"#fff",borderColorSaturation:null},emphasis:{upperLabel:{show:!0,position:[0,"50%"],overflow:"truncate",verticalAlign:"middle"}},visualDimension:0,visualMin:null,visualMax:null,color:[],colorAlpha:null,colorSaturation:null,colorMappingBy:"index",visibleMin:10,childrenVisibleMin:null,levels:[]},e}(sg);function GC(t){var e=0;E(t.children,(function(t){GC(t);var n=t.value;Y(n)&&(n=n[0]),e+=n}));var n=t.value;Y(n)&&(n=n[0]),(null==n||isNaN(n))&&(n=e),n<0&&(n=0),Y(t.value)?t.value[0]=n:t.value=n}var WC=function(){function t(t){this.group=new Cr,t.add(this.group)}return t.prototype.render=function(t,e,n,i){var r=t.getModel("breadcrumb"),o=this.group;if(o.removeAll(),r.get("show")&&n){var a=r.getModel("itemStyle"),s=a.getModel("textStyle"),l={pos:{left:r.get("left"),right:r.get("right"),top:r.get("top"),bottom:r.get("bottom")},box:{width:e.getWidth(),height:e.getHeight()},emptyItemWidth:r.get("emptyItemWidth"),totalWidth:0,renderList:[]};this._prepare(n,l,s),this._renderContent(t,l,a,s,i),_p(o,l.pos,l.box)}},t.prototype._prepare=function(t,e,n){for(var i=t;i;i=i.parentNode){var r=xo(i.getModel().get("name"),""),o=n.getTextRect(r),a=Math.max(o.width+16,e.emptyItemWidth);e.totalWidth+=a+8,e.renderList.push({node:i,text:r,width:a})}},t.prototype._renderContent=function(t,e,n,i,r){for(var o,a,s,l,u,h,c,p,d,f=0,g=e.emptyItemWidth,y=t.get(["breadcrumb","height"]),v=(o=e.pos,a=e.box,l=a.width,u=a.height,h=Er(o.left,l),c=Er(o.top,u),p=Er(o.right,l),d=Er(o.bottom,u),(isNaN(h)||isNaN(parseFloat(o.left)))&&(h=0),(isNaN(p)||isNaN(parseFloat(o.right)))&&(p=l),(isNaN(c)||isNaN(parseFloat(o.top)))&&(c=0),(isNaN(d)||isNaN(parseFloat(o.bottom)))&&(d=u),s=ip(s||0),{width:Math.max(p-h-s[1]-s[3],0),height:Math.max(d-c-s[0]-s[2],0)}),m=e.totalWidth,x=e.renderList,_=x.length-1;_>=0;_--){var b=x[_],w=b.node,S=b.width,M=b.text;m>v.width&&(m-=S-g,S=g,M=null);var I=new Pu({shape:{points:HC(f,0,S,y,_===x.length-1,0===_)},style:k(n.getItemStyle(),{lineJoin:"bevel"}),textContent:new ks({style:{text:M,fill:i.getTextColor(),font:i.getFont()}}),textConfig:{position:"inside"},z2:1e5,onclick:H(r,w)});I.disableLabelAnimation=!0,this.group.add(I),YC(I,t,w),f+=S+8}},t.prototype.remove=function(){this.group.removeAll()},t}();function HC(t,e,n,i,r,o){var a=[[r?t:t-5,e],[t+n,e],[t+n,e+i],[r?t:t-5,e+i]];return!o&&a.splice(2,0,[t+n+5,e+i/2]),!r&&a.push([t,e+i/2]),a}function YC(t,e,n){Hs(t).eventData={componentType:"series",componentSubType:"treemap",componentIndex:e.componentIndex,seriesIndex:e.seriesIndex,seriesName:e.name,seriesType:"treemap",selfType:"breadcrumb",nodeData:{dataIndex:n&&n.dataIndex,name:n&&n.name},treePathInfo:n&&OC(n,e)}}var UC=function(){function t(){this._storage=[],this._elExistsMap={}}return t.prototype.add=function(t,e,n,i,r){return!this._elExistsMap[t.id]&&(this._elExistsMap[t.id]=!0,this._storage.push({el:t,target:e,duration:n,delay:i,easing:r}),!0)},t.prototype.finished=function(t){return this._finishedCallback=t,this},t.prototype.start=function(){for(var t=this,e=this._storage.length,n=function(){--e<=0&&(t._storage.length=0,t._elExistsMap={},t._finishedCallback&&t._finishedCallback())},i=0,r=this._storage.length;i3||Math.abs(t.dy)>3)){var e=this.seriesModel.getData().tree.root;if(!e)return;var n=e.getLayout();if(!n)return;this.api.dispatchAction({type:"treemapMove",from:this.uid,seriesId:this.seriesModel.id,rootRect:{x:n.x+t.dx,y:n.y+t.dy,width:n.width,height:n.height}})}},e.prototype._onZoom=function(t){var e=t.originX,n=t.originY;if("animating"!==this._state){var i=this.seriesModel.getData().tree.root;if(!i)return;var r=i.getLayout();if(!r)return;var o=new sr(r.x,r.y,r.width,r.height),a=this.seriesModel.layoutInfo,s=[1,0,0,1,0,0];Ei(s,s,[-(e-=a.x),-(n-=a.y)]),Vi(s,s,[t.scale,t.scale]),Ei(s,s,[e,n]),o.applyTransform(s),this.api.dispatchAction({type:"treemapRender",from:this.uid,seriesId:this.seriesModel.id,rootRect:{x:o.x,y:o.y,width:o.width,height:o.height}})}},e.prototype._initEvents=function(t){var e=this;t.on("click",(function(t){if("ready"===e._state){var n=e.seriesModel.get("nodeClick",!0);if(n){var i=e.findTarget(t.offsetX,t.offsetY);if(i){var r=i.node;if(r.getLayout().isLeafRoot)e._rootToNode(i);else if("zoomToNode"===n)e._zoomToNode(i);else if("link"===n){var o=r.hostTree.data.getItemModel(r.dataIndex),a=o.get("link",!0),s=o.get("target",!0)||"blank";a&&dp(a,s)}}}}}),this)},e.prototype._renderBreadcrumb=function(t,e,n){var i=this;n||(n=null!=t.get("leafDepth",!0)?{node:t.getViewRoot()}:this.findTarget(e.getWidth()/2,e.getHeight()/2))||(n={node:t.getData().tree.root}),(this._breadcrumb||(this._breadcrumb=new WC(this.group))).render(t,e,n.node,(function(e){"animating"!==i._state&&(PC(t.getViewRoot(),e)?i._rootToNode({node:e}):i._zoomToNode({node:e}))}))},e.prototype.remove=function(){this._clearController(),this._containerGroup&&this._containerGroup.removeAll(),this._storage={nodeGroup:[],background:[],content:[]},this._state="ready",this._breadcrumb&&this._breadcrumb.remove()},e.prototype.dispose=function(){this._clearController()},e.prototype._zoomToNode=function(t){this.api.dispatchAction({type:"treemapZoomToNode",from:this.uid,seriesId:this.seriesModel.id,targetNode:t.node})},e.prototype._rootToNode=function(t){this.api.dispatchAction({type:"treemapRootToNode",from:this.uid,seriesId:this.seriesModel.id,targetNode:t.node})},e.prototype.findTarget=function(t,e){var n;return this.seriesModel.getViewRoot().eachNode({attr:"viewChildren",order:"preorder"},(function(i){var r=this._storage.background[i.getRawIndex()];if(r){var o=r.transformCoordToLocal(t,e),a=r.shape;if(!(a.x<=o[0]&&o[0]<=a.x+a.width&&a.y<=o[1]&&o[1]<=a.y+a.height))return!1;n={node:i,offsetX:o[0],offsetY:o[1]}}}),this),n},e.type="treemap",e}(xg);var tD=E,eD=q,nD=-1,iD=function(){function t(e){var n=e.mappingMethod,i=e.type,r=this.option=T(e);this.type=i,this.mappingMethod=n,this._normalizeData=dD[n];var o=t.visualHandlers[i];this.applyVisual=o.applyVisual,this.getColorMapper=o.getColorMapper,this._normalizedToVisual=o._normalizedToVisual[n],"piecewise"===n?(rD(r),function(t){var e=t.pieceList;t.hasSpecialVisual=!1,E(e,(function(e,n){e.originIndex=n,null!=e.visual&&(t.hasSpecialVisual=!0)}))}(r)):"category"===n?r.categories?function(t){var e=t.categories,n=t.categoryMap={},i=t.visual;if(tD(e,(function(t,e){n[t]=e})),!Y(i)){var r=[];q(i)?tD(i,(function(t,e){var i=n[e];r[null!=i?i:nD]=t})):r[-1]=i,i=pD(t,r)}for(var o=e.length-1;o>=0;o--)null==i[o]&&(delete n[e[o]],e.pop())}(r):rD(r,!0):(lt("linear"!==n||r.dataExtent),rD(r))}return t.prototype.mapValueToVisual=function(t){var e=this._normalizeData(t);return this._normalizedToVisual(e,t)},t.prototype.getNormalizer=function(){return W(this._normalizeData,this)},t.listVisualTypes=function(){return G(t.visualHandlers)},t.isValidType=function(e){return t.visualHandlers.hasOwnProperty(e)},t.eachVisual=function(t,e,n){q(t)?E(t,e,n):e.call(n,t)},t.mapVisual=function(e,n,i){var r,o=Y(e)?[]:q(e)?{}:(r=!0,null);return t.eachVisual(e,(function(t,e){var a=n.call(i,t,e);r?o=a:o[e]=a})),o},t.retrieveVisuals=function(e){var n,i={};return e&&tD(t.visualHandlers,(function(t,r){e.hasOwnProperty(r)&&(i[r]=e[r],n=!0)})),n?i:null},t.prepareVisualTypes=function(t){if(Y(t))t=t.slice();else{if(!eD(t))return[];var e=[];tD(t,(function(t,n){e.push(n)})),t=e}return t.sort((function(t,e){return"color"===e&&"color"!==t&&0===t.indexOf("color")?1:-1})),t},t.dependsOn=function(t,e){return"color"===e?!(!t||0!==t.indexOf(e)):t===e},t.findPieceIndex=function(t,e,n){for(var i,r=1/0,o=0,a=e.length;ou[1]&&(u[1]=l);var h=e.get("colorMappingBy"),c={type:a.name,dataExtent:u,visual:a.range};"color"!==c.type||"index"!==h&&"id"!==h?c.mappingMethod="linear":(c.mappingMethod="category",c.loop=!0);var p=new iD(c);return gD(p).drColorMappingBy=h,p}(0,r,o,0,u,d);E(d,(function(t,e){if(t.depth>=n.length||t===n[t.depth]){var o=function(t,e,n,i,r,o){var a=A({},e);if(r){var s=r.type,l="color"===s&&gD(r).drColorMappingBy,u="index"===l?i:"id"===l?o.mapIdToIndex(n.getId()):n.getValue(t.get("visualDimension"));a[s]=r.mapValueToVisual(u)}return a}(r,u,t,e,f,i);vD(t,o,n,i)}}))}else s=mD(u),h.fill=s}}function mD(t){var e=xD(t,"color");if(e){var n=xD(t,"colorAlpha"),i=xD(t,"colorSaturation");return i&&(e=Dn(e,null,null,i)),n&&(e=An(e,n)),e}}function xD(t,e){var n=t[e];if(null!=n&&"none"!==n)return n}function _D(t,e){var n=t.get(e);return Y(n)&&n.length?{name:e,range:n}:null}var bD=Math.max,wD=Math.min,SD=it,MD=E,ID=["itemStyle","borderWidth"],TD=["itemStyle","gapWidth"],CD=["upperLabel","show"],DD=["upperLabel","height"],AD={seriesType:"treemap",reset:function(t,e,n,i){var r=n.getWidth(),o=n.getHeight(),a=t.option,s=xp(t.getBoxLayoutParams(),{width:n.getWidth(),height:n.getHeight()}),l=a.size||[],u=Er(SD(s.width,l[0]),r),h=Er(SD(s.height,l[1]),o),c=i&&i.type,p=kC(i,["treemapZoomToNode","treemapRootToNode"],t),d="treemapRender"===c||"treemapMove"===c?i.rootRect:null,f=t.getViewRoot(),g=LC(f);if("treemapMove"!==c){var y="treemapZoomToNode"===c?function(t,e,n,i,r){var o,a=(e||{}).node,s=[i,r];if(!a||a===n)return s;var l=i*r,u=l*t.option.zoomToNodeRatio;for(;o=a.parentNode;){for(var h=0,c=o.children,p=0,d=c.length;pYr&&(u=Yr),a=o}ua[1]&&(a[1]=e)}))):a=[NaN,NaN];return{sum:i,dataExtent:a}}(e,a,s);if(0===u.sum)return t.viewChildren=[];if(u.sum=function(t,e,n,i,r){if(!i)return n;for(var o=t.get("visibleMin"),a=r.length,s=a,l=a-1;l>=0;l--){var u=r["asc"===i?a-l-1:l].getValue();u/n*ei&&(i=a));var l=t.area*t.area,u=e*e*n;return l?bD(u*i/l,l/(u*r)):1/0}function PD(t,e,n,i,r){var o=e===n.width?0:1,a=1-o,s=["x","y"],l=["width","height"],u=n[s[o]],h=e?t.area/e:0;(r||h>n[l[a]])&&(h=n[l[a]]);for(var c=0,p=t.length;ci&&(i=e);var o=i%2?i+2:i+3;r=[];for(var a=0;a0&&(m[0]=-m[0],m[1]=-m[1]);var _=v[0]<0?-1:1;if("start"!==i.__position&&"end"!==i.__position){var b=-Math.atan2(v[1],v[0]);u[0].8?"left":h[0]<-.8?"right":"center",p=h[1]>.8?"top":h[1]<-.8?"bottom":"middle";break;case"start":i.x=-h[0]*f+l[0],i.y=-h[1]*g+l[1],c=h[0]>.8?"right":h[0]<-.8?"left":"center",p=h[1]>.8?"bottom":h[1]<-.8?"top":"middle";break;case"insideStartTop":case"insideStart":case"insideStartBottom":i.x=f*_+l[0],i.y=l[1]+w,c=v[0]<0?"right":"left",i.originX=-f*_,i.originY=-w;break;case"insideMiddleTop":case"insideMiddle":case"insideMiddleBottom":case"middle":i.x=x[0],i.y=x[1]+w,c="center",i.originY=-w;break;case"insideEndTop":case"insideEnd":case"insideEndBottom":i.x=-f*_+u[0],i.y=u[1]+w,c=v[0]>=0?"right":"left",i.originX=f*_,i.originY=-w}i.scaleX=i.scaleY=r,i.setStyle({verticalAlign:i.__verticalAlign||p,align:i.__align||c})}}}function S(t,e){var n=t.__specifiedRotation;if(null==n){var i=a.tangentAt(e);t.attr("rotation",(1===e?-1:1)*Math.PI/2-Math.atan2(i[1],i[0]))}else t.attr("rotation",n)}},e}(Cr),gA=function(){function t(t){this.group=new Cr,this._LineCtor=t||fA}return t.prototype.updateData=function(t){var e=this;this._progressiveEls=null;var n=this,i=n.group,r=n._lineData;n._lineData=t,r||i.removeAll();var o=yA(t);t.diff(r).add((function(n){e._doAdd(t,n,o)})).update((function(n,i){e._doUpdate(r,t,i,n,o)})).remove((function(t){i.remove(r.getItemGraphicEl(t))})).execute()},t.prototype.updateLayout=function(){var t=this._lineData;t&&t.eachItemGraphicEl((function(e,n){e.updateLayout(t,n)}),this)},t.prototype.incrementalPrepareUpdate=function(t){this._seriesScope=yA(t),this._lineData=null,this.group.removeAll()},t.prototype.incrementalUpdate=function(t,e){function n(t){t.isGroup||function(t){return t.animators&&t.animators.length>0}(t)||(t.incremental=!0,t.ensureState("emphasis").hoverLayer=!0)}this._progressiveEls=[];for(var i=t.start;i=0?i+=u:i-=u:f>=0?i-=u:i+=u}return i}function TA(t,e){var n=[],i=Qe,r=[[],[],[]],o=[[],[]],a=[];e/=2,t.eachEdge((function(t,s){var l=t.getLayout(),u=t.getVisual("fromSymbol"),h=t.getVisual("toSymbol");l.__original||(l.__original=[Mt(l[0]),Mt(l[1])],l[2]&&l.__original.push(Mt(l[2])));var c=l.__original;if(null!=l[2]){if(St(r[0],c[0]),St(r[1],c[2]),St(r[2],c[1]),u&&"none"!==u){var p=KD(t.node1),d=IA(r,c[0],p*e);i(r[0][0],r[1][0],r[2][0],d,n),r[0][0]=n[3],r[1][0]=n[4],i(r[0][1],r[1][1],r[2][1],d,n),r[0][1]=n[3],r[1][1]=n[4]}if(h&&"none"!==h){p=KD(t.node2),d=IA(r,c[1],p*e);i(r[0][0],r[1][0],r[2][0],d,n),r[1][0]=n[1],r[2][0]=n[2],i(r[0][1],r[1][1],r[2][1],d,n),r[1][1]=n[1],r[2][1]=n[2]}St(l[0],r[0]),St(l[1],r[2]),St(l[2],r[1])}else{if(St(o[0],c[0]),St(o[1],c[1]),Dt(a,o[1],o[0]),Rt(a,a),u&&"none"!==u){p=KD(t.node1);Ct(o[0],o[0],a,p*e)}if(h&&"none"!==h){p=KD(t.node2);Ct(o[1],o[1],a,-p*e)}St(l[0],o[0]),St(l[1],o[1])}}))}function CA(t){return"view"===t.type}var DA=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.init=function(t,e){var n=new qw,i=new gA,r=this.group;this._controller=new kI(e.getZr()),this._controllerHost={target:r},r.add(n.group),r.add(i.group),this._symbolDraw=n,this._lineDraw=i,this._firstRender=!0},e.prototype.render=function(t,e,n){var i=this,r=t.coordinateSystem;this._model=t;var o=this._symbolDraw,a=this._lineDraw,s=this.group;if(CA(r)){var l={x:r.x,y:r.y,scaleX:r.scaleX,scaleY:r.scaleY};this._firstRender?s.attr(l):rh(s,l,t)}TA(t.getGraph(),qD(t));var u=t.getData();o.updateData(u);var h=t.getEdgeData();a.updateData(h),this._updateNodeAndLinkScale(),this._updateController(t,e,n),clearTimeout(this._layoutTimeout);var c=t.forceLayout,p=t.get(["force","layoutAnimation"]);c&&this._startForceLayoutIteration(c,p),u.graph.eachNode((function(t){var e=t.dataIndex,n=t.getGraphicEl(),r=t.getModel();if(n){n.off("drag").off("dragend");var o=r.get("draggable");o&&n.on("drag",(function(){c&&(c.warmUp(),!i._layouting&&i._startForceLayoutIteration(c,p),c.setFixed(e),u.setItemLayout(e,[n.x,n.y]))})).on("dragend",(function(){c&&c.setUnfixed(e)})),n.setDraggable(o&&!!c,!!r.get("cursor")),"adjacency"===r.get(["emphasis","focus"])&&(Hs(n).focus=t.getAdjacentDataIndices())}})),u.graph.eachEdge((function(t){var e=t.getGraphicEl(),n=t.getModel().get(["emphasis","focus"]);e&&"adjacency"===n&&(Hs(e).focus={edge:[t.dataIndex],node:[t.node1.dataIndex,t.node2.dataIndex]})}));var d="circular"===t.get("layout")&&t.get(["circular","rotateLabel"]),f=u.getLayout("cx"),g=u.getLayout("cy");u.eachItemGraphicEl((function(t,e){var n=u.getItemModel(e).get(["label","rotate"])||0,i=t.getSymbolPath();if(d){var r=u.getItemLayout(e),o=Math.atan2(r[1]-g,r[0]-f);o<0&&(o=2*Math.PI+o);var a=r[0]=0&&t.call(e,n[r],r)},t.prototype.eachEdge=function(t,e){for(var n=this.edges,i=n.length,r=0;r=0&&n[r].node1.dataIndex>=0&&n[r].node2.dataIndex>=0&&t.call(e,n[r],r)},t.prototype.breadthFirstTraverse=function(t,e,n,i){if(e instanceof LA||(e=this._nodesMap[AA(e)]),e){for(var r="out"===n?"outEdges":"in"===n?"inEdges":"edges",o=0;o=0&&n.node2.dataIndex>=0}));for(r=0,o=i.length;r=0&&this[t][e].setItemVisual(this.dataIndex,n,i)},getVisual:function(n){return this[t][e].getItemVisual(this.dataIndex,n)},setLayout:function(n,i){this.dataIndex>=0&&this[t][e].setItemLayout(this.dataIndex,n,i)},getLayout:function(){return this[t][e].getItemLayout(this.dataIndex)},getGraphicEl:function(){return this[t][e].getItemGraphicEl(this.dataIndex)},getRawIndex:function(){return this[t][e].getRawIndex(this.dataIndex)}}}function RA(t,e,n,i,r){for(var o=new kA(i),a=0;a "+p)),u++)}var d,f=n.get("coordinateSystem");if("cartesian2d"===f||"polar"===f)d=rx(t,n);else{var g=hd.get(f),y=g&&g.dimensions||[];P(y,"value")<0&&y.concat(["value"]);var v=Km(t,{coordDimensions:y,encodeDefine:n.getEncode()}).dimensions;(d=new qm(v,n)).initData(t)}var m=new qm(["value"],n);return m.initData(l,s),r&&r(d,m),_C({mainData:d,struct:o,structAttr:"graph",datas:{node:d,edge:m},datasAttr:{node:"data",edge:"edgeData"}}),o.update(),o}R(LA,OA("hostGraph","data")),R(PA,OA("hostGraph","edgeData"));var NA=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.hasSymbolVisual=!0,n}return n(e,t),e.prototype.init=function(e){t.prototype.init.apply(this,arguments);var n=this;function i(){return n._categoriesData}this.legendVisualProvider=new hM(i,i),this.fillDataTextStyle(e.edges||e.links),this._updateCategoriesData()},e.prototype.mergeOption=function(e){t.prototype.mergeOption.apply(this,arguments),this.fillDataTextStyle(e.edges||e.links),this._updateCategoriesData()},e.prototype.mergeDefaultAndTheme=function(e){t.prototype.mergeDefaultAndTheme.apply(this,arguments),co(e,"edgeLabel",["show"])},e.prototype.getInitialData=function(t,e){var n,i=t.edges||t.links||[],r=t.data||t.nodes||[],o=this;if(r&&i){FD(n=this)&&(n.__curvenessList=[],n.__edgeMap={},GD(n));var a=RA(r,i,this,!0,(function(t,e){t.wrapMethod("getItemModel",(function(t){var e=o._categoriesModels[t.getShallow("category")];return e&&(e.parentModel=t.parentModel,t.parentModel=e),t}));var n=dc.prototype.getModel;function i(t,e){var i=n.call(this,t,e);return i.resolveParentPath=r,i}function r(t){if(t&&("label"===t[0]||"label"===t[1])){var e=t.slice();return"label"===t[0]?e[0]="edgeLabel":"label"===t[1]&&(e[1]="edgeLabel"),e}return t}e.wrapMethod("getItemModel",(function(t){return t.resolveParentPath=r,t.getModel=i,t}))}));return E(a.edges,(function(t){!function(t,e,n,i){if(FD(n)){var r=WD(t,e,n),o=n.__edgeMap,a=o[HD(r)];o[r]&&!a?o[r].isForward=!0:a&&o[r]&&(a.isForward=!0,o[r].isForward=!1),o[r]=o[r]||[],o[r].push(i)}}(t.node1,t.node2,this,t.dataIndex)}),this),a.data}},e.prototype.getGraph=function(){return this.getData().graph},e.prototype.getEdgeData=function(){return this.getGraph().edgeData},e.prototype.getCategoriesData=function(){return this._categoriesData},e.prototype.formatTooltip=function(t,e,n){if("edge"===n){var i=this.getData(),r=this.getDataParams(t,n),o=i.graph.getEdgeByIndex(t),a=i.getName(o.node1.dataIndex),s=i.getName(o.node2.dataIndex),l=[];return null!=a&&l.push(a),null!=s&&l.push(s),Xf("nameValue",{name:l.join(" > "),value:r.value,noValue:null==r.value})}return rg({series:this,dataIndex:t,multipleSeries:e})},e.prototype._updateCategoriesData=function(){var t=z(this.option.categories||[],(function(t){return null!=t.value?t:A({value:0},t)})),e=new qm(["value"],this);e.initData(t),this._categoriesData=e,this._categoriesModels=e.mapArray((function(t){return e.getItemModel(t)}))},e.prototype.setZoom=function(t){this.option.zoom=t},e.prototype.setCenter=function(t){this.option.center=t},e.prototype.isAnimationEnabled=function(){return t.prototype.isAnimationEnabled.call(this)&&!("force"===this.get("layout")&&this.get(["force","layoutAnimation"]))},e.type="series.graph",e.dependencies=["grid","polar","geo","singleAxis","calendar"],e.defaultOption={z:2,coordinateSystem:"view",legendHoverLink:!0,layout:null,circular:{rotateLabel:!1},force:{initLayout:null,repulsion:[0,50],gravity:.1,friction:.6,edgeLength:30,layoutAnimation:!0},left:"center",top:"center",symbol:"circle",symbolSize:10,edgeSymbol:["none","none"],edgeSymbolSize:10,edgeLabel:{position:"middle",distance:5},draggable:!1,roam:!1,center:null,zoom:1,nodeScaleRatio:.6,label:{show:!1,formatter:"{b}"},itemStyle:{},lineStyle:{color:"#aaa",width:1,opacity:.5},emphasis:{scale:!0,label:{show:!0}},select:{itemStyle:{borderColor:"#212121"}}},e}(sg),EA={type:"graphRoam",event:"graphRoam",update:"none"};var zA=function(){this.angle=0,this.width=10,this.r=10,this.x=0,this.y=0},VA=function(t){function e(e){var n=t.call(this,e)||this;return n.type="pointer",n}return n(e,t),e.prototype.getDefaultShape=function(){return new zA},e.prototype.buildPath=function(t,e){var n=Math.cos,i=Math.sin,r=e.r,o=e.width,a=e.angle,s=e.x-n(a)*o*(o>=r/3?1:2),l=e.y-i(a)*o*(o>=r/3?1:2);a=e.angle-Math.PI/2,t.moveTo(s,l),t.lineTo(e.x+n(a)*o,e.y+i(a)*o),t.lineTo(e.x+n(e.angle)*r,e.y+i(e.angle)*r),t.lineTo(e.x-n(a)*o,e.y-i(a)*o),t.lineTo(s,l)},e}(gs);function BA(t,e){var n=null==t?"":t+"";return e&&(X(e)?n=e.replace("{value}",n):U(e)&&(n=e(t))),n}var FA=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n){this.group.removeAll();var i=t.get(["axisLine","lineStyle","color"]),r=function(t,e){var n=t.get("center"),i=e.getWidth(),r=e.getHeight(),o=Math.min(i,r);return{cx:Er(n[0],e.getWidth()),cy:Er(n[1],e.getHeight()),r:Er(t.get("radius"),o/2)}}(t,n);this._renderMain(t,e,n,i,r),this._data=t.getData()},e.prototype.dispose=function(){},e.prototype._renderMain=function(t,e,n,i,r){var o=this.group,a=t.get("clockwise"),s=-t.get("startAngle")/180*Math.PI,l=-t.get("endAngle")/180*Math.PI,u=t.getModel("axisLine"),h=u.get("roundCap")?DS:Cu,c=u.get("show"),p=u.getModel("lineStyle"),d=p.get("width"),f=[s,l];ja(f,!a);for(var g=(l=f[1])-(s=f[0]),y=s,v=0;c&&v=t&&(0===e?0:i[e-1][0]).8?"bottom":"middle",align:u<-.4?"left":u>.4?"right":"center"},{inheritColor:R}),silent:!0}))}if(m.get("show")&&k!==_){P=(P=m.get("distance"))?P+l:l;for(var N=0;N<=b;N++){u=Math.cos(M),h=Math.sin(M);var E=new zu({shape:{x1:u*(f-P)+p,y1:h*(f-P)+d,x2:u*(f-S-P)+p,y2:h*(f-S-P)+d},silent:!0,style:D});"auto"===D.stroke&&E.setStyle({stroke:i((k+N/b)/_)}),c.add(E),M+=T}M-=T}else M+=I}},e.prototype._renderPointer=function(t,e,n,i,r,o,a,s,l){var u=this.group,h=this._data,c=this._progressEls,p=[],d=t.get(["pointer","show"]),f=t.getModel("progress"),g=f.get("show"),y=t.getData(),v=y.mapDimension("value"),m=+t.get("min"),x=+t.get("max"),_=[m,x],b=[o,a];function w(e,n){var i,o=y.getItemModel(e).getModel("pointer"),a=Er(o.get("width"),r.r),s=Er(o.get("length"),r.r),l=t.get(["pointer","icon"]),u=o.get("offsetCenter"),h=Er(u[0],r.r),c=Er(u[1],r.r),p=o.get("keepAspect");return(i=l?Ly(l,h-a/2,c-s,a,s,null,p):new VA({shape:{angle:-Math.PI/2,width:a,r:s,x:h,y:c}})).rotation=-(n+Math.PI/2),i.x=r.cx,i.y=r.cy,i}function S(t,e){var n=f.get("roundCap")?DS:Cu,i=f.get("overlap"),a=i?f.get("width"):l/y.count(),u=i?r.r-a:r.r-(t+1)*a,h=i?r.r:r.r-t*a,c=new n({shape:{startAngle:o,endAngle:e,cx:r.cx,cy:r.cy,clockwise:s,r0:u,r:h}});return i&&(c.z2=x-y.get(v,t)%x),c}(g||d)&&(y.diff(h).add((function(e){var n=y.get(v,e);if(d){var i=w(e,o);oh(i,{rotation:-((isNaN(+n)?b[0]:Nr(n,_,b,!0))+Math.PI/2)},t),u.add(i),y.setItemGraphicEl(e,i)}if(g){var r=S(e,o),a=f.get("clip");oh(r,{shape:{endAngle:Nr(n,_,b,a)}},t),u.add(r),Ys(t.seriesIndex,y.dataType,e,r),p[e]=r}})).update((function(e,n){var i=y.get(v,e);if(d){var r=h.getItemGraphicEl(n),a=r?r.rotation:o,s=w(e,a);s.rotation=a,rh(s,{rotation:-((isNaN(+i)?b[0]:Nr(i,_,b,!0))+Math.PI/2)},t),u.add(s),y.setItemGraphicEl(e,s)}if(g){var l=c[n],m=S(e,l?l.shape.endAngle:o),x=f.get("clip");rh(m,{shape:{endAngle:Nr(i,_,b,x)}},t),u.add(m),Ys(t.seriesIndex,y.dataType,e,m),p[e]=m}})).execute(),y.each((function(t){var e=y.getItemModel(t),n=e.getModel("emphasis"),r=n.get("focus"),o=n.get("blurScope"),a=n.get("disabled");if(d){var s=y.getItemGraphicEl(t),l=y.getItemVisual(t,"style"),u=l.fill;if(s instanceof _s){var h=s.style;s.useStyle(A({image:h.image,x:h.x,y:h.y,width:h.width,height:h.height},l))}else s.useStyle(l),"pointer"!==s.type&&s.setColor(u);s.setStyle(e.getModel(["pointer","itemStyle"]).getItemStyle()),"auto"===s.style.fill&&s.setStyle("fill",i(Nr(y.get(v,t),_,[0,1],!0))),s.z2EmphasisLift=0,Vl(s,e),Rl(s,r,o,a)}if(g){var c=p[t];c.useStyle(y.getItemVisual(t,"style")),c.setStyle(e.getModel(["progress","itemStyle"]).getItemStyle()),c.z2EmphasisLift=0,Vl(c,e),Rl(c,r,o,a)}})),this._progressEls=p)},e.prototype._renderAnchor=function(t,e){var n=t.getModel("anchor");if(n.get("show")){var i=n.get("size"),r=n.get("icon"),o=n.get("offsetCenter"),a=n.get("keepAspect"),s=Ly(r,e.cx-i/2+Er(o[0],e.r),e.cy-i/2+Er(o[1],e.r),i,i,null,a);s.z2=n.get("showAbove")?1:0,s.setStyle(n.getModel("itemStyle").getItemStyle()),this.group.add(s)}},e.prototype._renderTitleAndDetail=function(t,e,n,i,r){var o=this,a=t.getData(),s=a.mapDimension("value"),l=+t.get("min"),u=+t.get("max"),h=new Cr,c=[],p=[],d=t.isAnimationEnabled(),f=t.get(["pointer","showAbove"]);a.diff(this._data).add((function(t){c[t]=new ks({silent:!0}),p[t]=new ks({silent:!0})})).update((function(t,e){c[t]=o._titleEls[e],p[t]=o._detailEls[e]})).execute(),a.each((function(e){var n=a.getItemModel(e),o=a.get(s,e),g=new Cr,y=i(Nr(o,[l,u],[0,1],!0)),v=n.getModel("title");if(v.get("show")){var m=v.get("offsetCenter"),x=r.cx+Er(m[0],r.r),_=r.cy+Er(m[1],r.r);(D=c[e]).attr({z2:f?0:2,style:Uh(v,{x:x,y:_,text:a.getName(e),align:"center",verticalAlign:"middle"},{inheritColor:y})}),g.add(D)}var b=n.getModel("detail");if(b.get("show")){var w=b.get("offsetCenter"),S=r.cx+Er(w[0],r.r),M=r.cy+Er(w[1],r.r),I=Er(b.get("width"),r.r),T=Er(b.get("height"),r.r),C=t.get(["progress","show"])?a.getItemVisual(e,"style").fill:y,D=p[e],A=b.get("formatter");D.attr({z2:f?0:2,style:Uh(b,{x:S,y:M,text:BA(o,A),width:isNaN(I)?null:I,height:isNaN(T)?null:T,align:"center",verticalAlign:"middle"},{inheritColor:C})}),Qh(D,{normal:b},o,(function(t){return BA(t,A)})),d&&tc(D,e,a,t,{getFormattedLabel:function(t,e,n,i,r,a){return BA(a?a.interpolatedValue:o,A)}}),g.add(D)}h.add(g)})),this.group.add(h),this._titleEls=c,this._detailEls=p},e.type="gauge",e}(xg),GA=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.visualStyleAccessPath="itemStyle",n}return n(e,t),e.prototype.getInitialData=function(t,e){return uM(this,["value"])},e.type="series.gauge",e.defaultOption={z:2,colorBy:"data",center:["50%","50%"],legendHoverLink:!0,radius:"75%",startAngle:225,endAngle:-45,clockwise:!0,min:0,max:100,splitNumber:10,axisLine:{show:!0,roundCap:!1,lineStyle:{color:[[1,"#E6EBF8"]],width:10}},progress:{show:!1,overlap:!0,width:10,roundCap:!1,clip:!0},splitLine:{show:!0,length:10,distance:10,lineStyle:{color:"#63677A",width:3,type:"solid"}},axisTick:{show:!0,splitNumber:5,length:6,distance:10,lineStyle:{color:"#63677A",width:1,type:"solid"}},axisLabel:{show:!0,distance:15,color:"#464646",fontSize:12},pointer:{icon:null,offsetCenter:[0,0],show:!0,showAbove:!0,length:"60%",width:6,keepAspect:!1},anchor:{show:!1,showAbove:!1,size:6,icon:"circle",offsetCenter:[0,0],keepAspect:!1,itemStyle:{color:"#fff",borderWidth:0,borderColor:"#5470c6"}},title:{show:!0,offsetCenter:[0,"20%"],color:"#464646",fontSize:16,valueAnimation:!1},detail:{show:!0,backgroundColor:"rgba(0,0,0,0)",borderWidth:0,borderColor:"#ccc",width:100,height:null,padding:[5,10],offsetCenter:[0,"40%"],color:"#464646",fontSize:30,fontWeight:"bold",lineHeight:30,valueAnimation:!1}},e}(sg);var WA=["itemStyle","opacity"],HA=function(t){function e(e,n){var i=t.call(this)||this,r=i,o=new Ru,a=new ks;return r.setTextContent(a),i.setTextGuideLine(o),i.updateData(e,n,!0),i}return n(e,t),e.prototype.updateData=function(t,e,n){var i=this,r=t.hostModel,o=t.getItemModel(e),a=t.getItemLayout(e),s=o.getModel("emphasis"),l=o.get(WA);l=null==l?1:l,n||hh(i),i.useStyle(t.getItemVisual(e,"style")),i.style.lineJoin="round",n?(i.setShape({points:a.points}),i.style.opacity=0,oh(i,{style:{opacity:l}},r,e)):rh(i,{style:{opacity:l},shape:{points:a.points}},r,e),Vl(i,o),this._updateLabel(t,e),Rl(this,s.get("focus"),s.get("blurScope"),s.get("disabled"))},e.prototype._updateLabel=function(t,e){var n=this,i=this.getTextGuideLine(),r=n.getTextContent(),o=t.hostModel,a=t.getItemModel(e),s=t.getItemLayout(e).label,l=t.getItemVisual(e,"style"),u=l.fill;Hh(r,Yh(a),{labelFetcher:t.hostModel,labelDataIndex:e,defaultOpacity:l.opacity,defaultText:t.getName(e)},{normal:{align:s.textAlign,verticalAlign:s.verticalAlign}}),n.setTextConfig({local:!0,inside:!!s.inside,insideStroke:u,outsideFill:u});var h=s.linePoints;i.setShape({points:h}),n.textGuideLineConfig={anchor:h?new Ji(h[0][0],h[0][1]):null},rh(r,{style:{x:s.x,y:s.y}},o,e),r.attr({rotation:s.rotation,originX:s.x,originY:s.y,z2:10}),db(n,fb(a),{stroke:u})},e}(Pu),YA=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.ignoreLabelLineUpdate=!0,n}return n(e,t),e.prototype.render=function(t,e,n){var i=t.getData(),r=this._data,o=this.group;i.diff(r).add((function(t){var e=new HA(i,t);i.setItemGraphicEl(t,e),o.add(e)})).update((function(t,e){var n=r.getItemGraphicEl(e);n.updateData(i,t),o.add(n),i.setItemGraphicEl(t,n)})).remove((function(e){uh(r.getItemGraphicEl(e),t,e)})).execute(),this._data=i},e.prototype.remove=function(){this.group.removeAll(),this._data=null},e.prototype.dispose=function(){},e.type="funnel",e}(xg),UA=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.init=function(e){t.prototype.init.apply(this,arguments),this.legendVisualProvider=new hM(W(this.getData,this),W(this.getRawData,this)),this._defaultLabelLine(e)},e.prototype.getInitialData=function(t,e){return uM(this,{coordDimensions:["value"],encodeDefaulter:H(Yp,this)})},e.prototype._defaultLabelLine=function(t){co(t,"labelLine",["show"]);var e=t.labelLine,n=t.emphasis.labelLine;e.show=e.show&&t.label.show,n.show=n.show&&t.emphasis.label.show},e.prototype.getDataParams=function(e){var n=this.getData(),i=t.prototype.getDataParams.call(this,e),r=n.mapDimension("value"),o=n.getSum(r);return i.percent=o?+(n.get(r,e)/o*100).toFixed(2):0,i.$vars.push("percent"),i},e.type="series.funnel",e.defaultOption={z:2,legendHoverLink:!0,colorBy:"data",left:80,top:60,right:80,bottom:60,minSize:"0%",maxSize:"100%",sort:"descending",orient:"vertical",gap:0,funnelAlign:"center",label:{show:!0,position:"outer"},labelLine:{show:!0,length:20,lineStyle:{width:1}},itemStyle:{borderColor:"#fff",borderWidth:1},emphasis:{label:{show:!0}},select:{itemStyle:{borderColor:"#212121"}}},e}(sg);function XA(t,e){t.eachSeriesByType("funnel",(function(t){var n=t.getData(),i=n.mapDimension("value"),r=t.get("sort"),o=function(t,e){return xp(t.getBoxLayoutParams(),{width:e.getWidth(),height:e.getHeight()})}(t,e),a=t.get("orient"),s=o.width,l=o.height,u=function(t,e){for(var n=t.mapDimension("value"),i=t.mapArray(n,(function(t){return t})),r=[],o="ascending"===e,a=0,s=t.count();a5)return;var i=this._model.coordinateSystem.getSlidedAxisExpandWindow([t.offsetX,t.offsetY]);"none"!==i.behavior&&this._dispatchExpand({axisExpandWindow:i.axisExpandWindow})}this._mouseDownPoint=null},mousemove:function(t){if(!this._mouseDownPoint&&ok(this,"mousemove")){var e=this._model,n=e.coordinateSystem.getSlidedAxisExpandWindow([t.offsetX,t.offsetY]),i=n.behavior;"jump"===i&&this._throttledDispatchExpand.debounceNextCall(e.get("axisExpandDebounce")),this._throttledDispatchExpand("none"===i?null:{axisExpandWindow:n.axisExpandWindow,animation:"jump"===i?null:{duration:0}})}}};function ok(t,e){var n=t._model;return n.get("axisExpandable")&&n.get("axisExpandTriggerOn")===e}var ak=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.init=function(){t.prototype.init.apply(this,arguments),this.mergeOption({})},e.prototype.mergeOption=function(t){var e=this.option;t&&C(e,t,!0),this._initDimensions()},e.prototype.contains=function(t,e){var n=t.get("parallelIndex");return null!=n&&e.getComponent("parallel",n)===this},e.prototype.setAxisExpand=function(t){E(["axisExpandable","axisExpandCenter","axisExpandCount","axisExpandWidth","axisExpandWindow"],(function(e){t.hasOwnProperty(e)&&(this.option[e]=t[e])}),this)},e.prototype._initDimensions=function(){var t=this.dimensions=[],e=this.parallelAxisIndex=[];E(B(this.ecModel.queryComponents({mainType:"parallelAxis"}),(function(t){return(t.get("parallelIndex")||0)===this.componentIndex}),this),(function(n){t.push("dim"+n.get("dim")),e.push(n.componentIndex)}))},e.type="parallel",e.dependencies=["parallelAxis"],e.layoutMode="box",e.defaultOption={z:0,left:80,top:60,right:80,bottom:60,layout:"horizontal",axisExpandable:!1,axisExpandCenter:null,axisExpandCount:0,axisExpandWidth:50,axisExpandRate:17,axisExpandDebounce:50,axisExpandSlideTriggerArea:[-.15,.05,.4],axisExpandTriggerOn:"click",parallelAxisDefault:null},e}(Tp),sk=function(t){function e(e,n,i,r,o){var a=t.call(this,e,n,i)||this;return a.type=r||"value",a.axisIndex=o,a}return n(e,t),e.prototype.isHorizontal=function(){return"horizontal"!==this.coordinateSystem.getModel().get("layout")},e}(H_);function lk(t,e,n,i,r,o){t=t||0;var a=n[1]-n[0];if(null!=r&&(r=hk(r,[0,a])),null!=o&&(o=Math.max(o,null!=r?r:0)),"all"===i){var s=Math.abs(e[1]-e[0]);s=hk(s,[0,a]),r=o=hk(s,[r,o]),i=0}e[0]=hk(e[0],n),e[1]=hk(e[1],n);var l=uk(e,i);e[i]+=t;var u,h=r||0,c=n.slice();return l.sign<0?c[0]+=h:c[1]-=h,e[i]=hk(e[i],c),u=uk(e,i),null!=r&&(u.sign!==l.sign||u.spano&&(e[1-i]=e[i]+u.sign*o),e}function uk(t,e){var n=t[e]-t[1-e];return{span:Math.abs(n),sign:n>0?-1:n<0?1:e?-1:1}}function hk(t,e){return Math.min(null!=e[1]?e[1]:1/0,Math.max(null!=e[0]?e[0]:-1/0,t))}var ck=E,pk=Math.min,dk=Math.max,fk=Math.floor,gk=Math.ceil,yk=zr,vk=Math.PI,mk=function(){function t(t,e,n){this.type="parallel",this._axesMap=ft(),this._axesLayout={},this.dimensions=t.dimensions,this._model=t,this._init(t,e,n)}return t.prototype._init=function(t,e,n){var i=t.dimensions,r=t.parallelAxisIndex;ck(i,(function(t,n){var i=r[n],o=e.getComponent("parallelAxis",i),a=this._axesMap.set(t,new sk(t,o_(o),[0,0],o.get("type"),i)),s="category"===a.type;a.onBand=s&&o.get("boundaryGap"),a.inverse=o.get("inverse"),o.axis=a,a.model=o,a.coordinateSystem=o.coordinateSystem=this}),this)},t.prototype.update=function(t,e){this._updateAxesFromSeries(this._model,t)},t.prototype.containPoint=function(t){var e=this._makeLayoutInfo(),n=e.axisBase,i=e.layoutBase,r=e.pixelDimIndex,o=t[1-r],a=t[r];return o>=n&&o<=n+e.axisLength&&a>=i&&a<=i+e.layoutLength},t.prototype.getModel=function(){return this._model},t.prototype._updateAxesFromSeries=function(t,e){e.eachSeries((function(n){if(t.contains(n,e)){var i=n.getData();ck(this.dimensions,(function(t){var e=this._axesMap.get(t);e.scale.unionExtentFromData(i,i.mapDimension(t)),r_(e.scale,e.model)}),this)}}),this)},t.prototype.resize=function(t,e){this._rect=xp(t.getBoxLayoutParams(),{width:e.getWidth(),height:e.getHeight()}),this._layoutAxes()},t.prototype.getRect=function(){return this._rect},t.prototype._makeLayoutInfo=function(){var t,e=this._model,n=this._rect,i=["x","y"],r=["width","height"],o=e.get("layout"),a="horizontal"===o?0:1,s=n[r[a]],l=[0,s],u=this.dimensions.length,h=xk(e.get("axisExpandWidth"),l),c=xk(e.get("axisExpandCount")||0,[0,u]),p=e.get("axisExpandable")&&u>3&&u>c&&c>1&&h>0&&s>0,d=e.get("axisExpandWindow");d?(t=xk(d[1]-d[0],l),d[1]=d[0]+t):(t=xk(h*(c-1),l),(d=[h*(e.get("axisExpandCenter")||fk(u/2))-t/2])[1]=d[0]+t);var f=(s-t)/(u-c);f<3&&(f=0);var g=[fk(yk(d[0]/h,1))+1,gk(yk(d[1]/h,1))-1],y=f/h*d[0];return{layout:o,pixelDimIndex:a,layoutBase:n[i[a]],layoutLength:s,axisBase:n[i[1-a]],axisLength:n[r[1-a]],axisExpandable:p,axisExpandWidth:h,axisCollapseWidth:f,axisExpandWindow:d,axisCount:u,winInnerIndices:g,axisExpandWindow0Pos:y}},t.prototype._layoutAxes=function(){var t=this._rect,e=this._axesMap,n=this.dimensions,i=this._makeLayoutInfo(),r=i.layout;e.each((function(t){var e=[0,i.axisLength],n=t.inverse?1:0;t.setExtent(e[n],e[1-n])})),ck(n,(function(e,n){var o=(i.axisExpandable?bk:_k)(n,i),a={horizontal:{x:o.position,y:i.axisLength},vertical:{x:0,y:o.position}},s={horizontal:vk/2,vertical:0},l=[a[r].x+t.x,a[r].y+t.y],u=s[r],h=[1,0,0,1,0,0];zi(h,h,u),Ei(h,h,l),this._axesLayout[e]={position:l,rotation:u,transform:h,axisNameAvailableWidth:o.axisNameAvailableWidth,axisLabelShow:o.axisLabelShow,nameTruncateMaxWidth:o.nameTruncateMaxWidth,tickDirection:1,labelDirection:1}}),this)},t.prototype.getAxis=function(t){return this._axesMap.get(t)},t.prototype.dataToPoint=function(t,e){return this.axisCoordToPoint(this._axesMap.get(e).dataToCoord(t),e)},t.prototype.eachActiveState=function(t,e,n,i){null==n&&(n=0),null==i&&(i=t.count());var r=this._axesMap,o=this.dimensions,a=[],s=[];E(o,(function(e){a.push(t.mapDimension(e)),s.push(r.get(e).model)}));for(var l=this.hasAxisBrushed(),u=n;ur*(1-h[0])?(l="jump",a=s-r*(1-h[2])):(a=s-r*h[1])>=0&&(a=s-r*(1-h[1]))<=0&&(a=0),(a*=e.axisExpandWidth/u)?lk(a,i,o,"all"):l="none";else{var p=i[1]-i[0];(i=[dk(0,o[1]*s/p-p/2)])[1]=pk(o[1],i[0]+p),i[0]=i[1]-p}return{axisExpandWindow:i,behavior:l}},t}();function xk(t,e){return pk(dk(t,e[0]),e[1])}function _k(t,e){var n=e.layoutLength/(e.axisCount-1);return{position:n*t,axisNameAvailableWidth:n,axisLabelShow:!0}}function bk(t,e){var n,i,r=e.layoutLength,o=e.axisExpandWidth,a=e.axisCount,s=e.axisCollapseWidth,l=e.winInnerIndices,u=s,h=!1;return t=0;n--)Vr(e[n])},e.prototype.getActiveState=function(t){var e=this.activeIntervals;if(!e.length)return"normal";if(null==t||isNaN(+t))return"inactive";if(1===e.length){var n=e[0];if(n[0]<=t&&t<=n[1])return"active"}else for(var i=0,r=e.length;i6}(t)||o){if(a&&!o){"single"===s.brushMode&&Wk(t);var l=T(s);l.brushType=oL(l.brushType,a),l.panelId=a===Mk?null:a.panelId,o=t._creatingCover=Rk(t,l),t._covers.push(o)}if(o){var u=lL[oL(t._brushType,a)];o.__brushOption.range=u.getCreatingRange(eL(t,o,t._track)),i&&(Nk(t,o),u.updateCommon(t,o)),Ek(t,o),r={isEnd:i}}}else i&&"single"===s.brushMode&&s.removeOnClick&&Fk(t,e,n)&&Wk(t)&&(r={isEnd:i,removeOnClick:!0});return r}function oL(t,e){return"auto"===t?e.defaultBrushType:t}var aL={mousedown:function(t){if(this._dragging)sL(this,t);else if(!t.target||!t.target.draggable){nL(t);var e=this.group.transformCoordToLocal(t.offsetX,t.offsetY);this._creatingCover=null,(this._creatingPanel=Fk(this,t,e))&&(this._dragging=!0,this._track=[e.slice()])}},mousemove:function(t){var e=t.offsetX,n=t.offsetY,i=this.group.transformCoordToLocal(e,n);if(function(t,e,n){if(t._brushType&&!function(t,e,n){var i=t._zr;return e<0||e>i.getWidth()||n<0||n>i.getHeight()}(t,e.offsetX,e.offsetY)){var i=t._zr,r=t._covers,o=Fk(t,e,n);if(!t._dragging)for(var a=0;a=0&&(o[r[a].depth]=new dc(r[a],this,e));if(i&&n)return RA(i,n,this,!0,(function(t,e){t.wrapMethod("getItemModel",(function(t,e){var n=t.parentModel,i=n.getData().getItemLayout(e);if(i){var r=i.depth,o=n.levelModels[r];o&&(t.parentModel=o)}return t})),e.wrapMethod("getItemModel",(function(t,e){var n=t.parentModel,i=n.getGraph().getEdgeByIndex(e).node1.getLayout();if(i){var r=i.depth,o=n.levelModels[r];o&&(t.parentModel=o)}return t}))})).data},e.prototype.setNodePosition=function(t,e){var n=(this.option.data||this.option.nodes)[t];n.localX=e[0],n.localY=e[1]},e.prototype.getGraph=function(){return this.getData().graph},e.prototype.getEdgeData=function(){return this.getGraph().edgeData},e.prototype.formatTooltip=function(t,e,n){function i(t){return isNaN(t)||null==t}if("edge"===n){var r=this.getDataParams(t,n),o=r.data,a=r.value;return Xf("nameValue",{name:o.source+" -- "+o.target,value:a,noValue:i(a)})}var s=this.getGraph().getNodeByIndex(t).getLayout().value,l=this.getDataParams(t,n).data.name;return Xf("nameValue",{name:null!=l?l+"":null,value:s,noValue:i(s)})},e.prototype.optionUpdated=function(){},e.prototype.getDataParams=function(e,n){var i=t.prototype.getDataParams.call(this,e,n);if(null==i.value&&"node"===n){var r=this.getGraph().getNodeByIndex(e).getLayout().value;i.value=r}return i},e.type="series.sankey",e.defaultOption={z:2,coordinateSystem:"view",left:"5%",top:"5%",right:"20%",bottom:"5%",orient:"horizontal",nodeWidth:20,nodeGap:8,draggable:!0,layoutIterations:32,label:{show:!0,position:"right",fontSize:12},levels:[],nodeAlign:"justify",lineStyle:{color:"#314656",opacity:.2,curveness:.5},emphasis:{label:{show:!0},lineStyle:{opacity:.5}},select:{itemStyle:{borderColor:"#212121"}},animationEasing:"linear",animationDuration:1e3},e}(sg);function SL(t,e){t.eachSeriesByType("sankey",(function(t){var n=t.get("nodeWidth"),i=t.get("nodeGap"),r=function(t,e){return xp(t.getBoxLayoutParams(),{width:e.getWidth(),height:e.getHeight()})}(t,e);t.layoutInfo=r;var o=r.width,a=r.height,s=t.getGraph(),l=s.nodes,u=s.edges;!function(t){E(t,(function(t){var e=OL(t.outEdges,PL),n=OL(t.inEdges,PL),i=t.getValue()||0,r=Math.max(e,n,i);t.setLayout({value:r},!0)}))}(l),function(t,e,n,i,r,o,a,s,l){(function(t,e,n,i,r,o,a){for(var s=[],l=[],u=[],h=[],c=0,p=0;p=0;v&&y.depth>d&&(d=y.depth),g.setLayout({depth:v?y.depth:c},!0),"vertical"===o?g.setLayout({dy:n},!0):g.setLayout({dx:n},!0);for(var m=0;mc-1?d:c-1;a&&"left"!==a&&function(t,e,n,i){if("right"===e){for(var r=[],o=t,a=0;o.length;){for(var s=0;s0;o--)TL(s,l*=.99,a),IL(s,r,n,i,a),RL(s,l,a),IL(s,r,n,i,a)}(t,e,o,r,i,a,s),function(t,e){var n="vertical"===e?"x":"y";E(t,(function(t){t.outEdges.sort((function(t,e){return t.node2.getLayout()[n]-e.node2.getLayout()[n]})),t.inEdges.sort((function(t,e){return t.node1.getLayout()[n]-e.node1.getLayout()[n]}))})),E(t,(function(t){var e=0,n=0;E(t.outEdges,(function(t){t.setLayout({sy:e},!0),e+=t.getLayout().dy})),E(t.inEdges,(function(t){t.setLayout({ty:n},!0),n+=t.getLayout().dy}))}))}(t,s)}(l,u,n,i,o,a,0!==B(l,(function(t){return 0===t.getLayout().value})).length?0:t.get("layoutIterations"),t.get("orient"),t.get("nodeAlign"))}))}function ML(t){var e=t.hostGraph.data.getRawDataItem(t.dataIndex);return null!=e.depth&&e.depth>=0}function IL(t,e,n,i,r){var o="vertical"===r?"x":"y";E(t,(function(t){var a,s,l;t.sort((function(t,e){return t.getLayout()[o]-e.getLayout()[o]}));for(var u=0,h=t.length,c="vertical"===r?"dx":"dy",p=0;p0&&(a=s.getLayout()[o]+l,"vertical"===r?s.setLayout({x:a},!0):s.setLayout({y:a},!0)),u=s.getLayout()[o]+s.getLayout()[c]+e;if((l=u-e-("vertical"===r?i:n))>0){a=s.getLayout()[o]-l,"vertical"===r?s.setLayout({x:a},!0):s.setLayout({y:a},!0),u=a;for(p=h-2;p>=0;--p)(l=(s=t[p]).getLayout()[o]+s.getLayout()[c]+e-u)>0&&(a=s.getLayout()[o]-l,"vertical"===r?s.setLayout({x:a},!0):s.setLayout({y:a},!0)),u=s.getLayout()[o]}}))}function TL(t,e,n){E(t.slice().reverse(),(function(t){E(t,(function(t){if(t.outEdges.length){var i=OL(t.outEdges,CL,n)/OL(t.outEdges,PL);if(isNaN(i)){var r=t.outEdges.length;i=r?OL(t.outEdges,DL,n)/r:0}if("vertical"===n){var o=t.getLayout().x+(i-LL(t,n))*e;t.setLayout({x:o},!0)}else{var a=t.getLayout().y+(i-LL(t,n))*e;t.setLayout({y:a},!0)}}}))}))}function CL(t,e){return LL(t.node2,e)*t.getValue()}function DL(t,e){return LL(t.node2,e)}function AL(t,e){return LL(t.node1,e)*t.getValue()}function kL(t,e){return LL(t.node1,e)}function LL(t,e){return"vertical"===e?t.getLayout().x+t.getLayout().dx/2:t.getLayout().y+t.getLayout().dy/2}function PL(t){return t.getValue()}function OL(t,e,n){for(var i=0,r=t.length,o=-1;++oi&&(i=e)})),E(e,(function(e){var r=new iD({type:"color",mappingMethod:"linear",dataExtent:[n,i],visual:t.get("color")}).mapValueToVisual(e.getLayout().value),o=e.getModel().get(["itemStyle","color"]);null!=o?(e.setVisual("color",o),e.setVisual("style",{fill:o})):(e.setVisual("color",r),e.setVisual("style",{fill:r}))}))}}))}var EL=function(){function t(){}return t.prototype.getInitialData=function(t,e){var n,i,r=e.getComponent("xAxis",this.get("xAxisIndex")),o=e.getComponent("yAxis",this.get("yAxisIndex")),a=r.get("type"),s=o.get("type");"category"===a?(t.layout="horizontal",n=r.getOrdinalMeta(),i=!0):"category"===s?(t.layout="vertical",n=o.getOrdinalMeta(),i=!0):t.layout=t.layout||"horizontal";var l=["x","y"],u="horizontal"===t.layout?0:1,h=this._baseAxisDim=l[u],c=l[1-u],p=[r,o],d=p[u].get("type"),f=p[1-u].get("type"),g=t.data;if(g&&i){var y=[];E(g,(function(t,e){var n;Y(t)?(n=t.slice(),t.unshift(e)):Y(t.value)?((n=A({},t)).value=n.value.slice(),t.value.unshift(e)):n=t,y.push(n)})),t.data=y}var v=this.defaultValueDimensions,m=[{name:h,type:Dm(d),ordinalMeta:n,otherDims:{tooltip:!1,itemName:0},dimsDef:["base"]},{name:c,type:Dm(f),dimsDef:v.slice()}];return uM(this,{coordDimensions:m,dimensionsCount:v.length+1,encodeDefaulter:H(Hp,m,this)})},t.prototype.getBaseAxis=function(){var t=this._baseAxisDim;return this.ecModel.getComponent(t+"Axis",this.get(t+"AxisIndex")).axis},t}(),zL=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.defaultValueDimensions=[{name:"min",defaultTooltip:!0},{name:"Q1",defaultTooltip:!0},{name:"median",defaultTooltip:!0},{name:"Q3",defaultTooltip:!0},{name:"max",defaultTooltip:!0}],n.visualDrawType="stroke",n}return n(e,t),e.type="series.boxplot",e.dependencies=["xAxis","yAxis","grid"],e.defaultOption={z:2,coordinateSystem:"cartesian2d",legendHoverLink:!0,layout:null,boxWidth:[7,50],itemStyle:{color:"#fff",borderWidth:1},emphasis:{scale:!0,itemStyle:{borderWidth:2,shadowBlur:5,shadowOffsetX:1,shadowOffsetY:1,shadowColor:"rgba(0,0,0,0.2)"}},animationDuration:800},e}(sg);R(zL,EL,!0);var VL=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n){var i=t.getData(),r=this.group,o=this._data;this._data||r.removeAll();var a="horizontal"===t.get("layout")?1:0;i.diff(o).add((function(t){if(i.hasValue(t)){var e=GL(i.getItemLayout(t),i,t,a,!0);i.setItemGraphicEl(t,e),r.add(e)}})).update((function(t,e){var n=o.getItemGraphicEl(e);if(i.hasValue(t)){var s=i.getItemLayout(t);n?(hh(n),WL(s,n,i,t)):n=GL(s,i,t,a),r.add(n),i.setItemGraphicEl(t,n)}else r.remove(n)})).remove((function(t){var e=o.getItemGraphicEl(t);e&&r.remove(e)})).execute(),this._data=i},e.prototype.remove=function(t){var e=this.group,n=this._data;this._data=null,n&&n.eachItemGraphicEl((function(t){t&&e.remove(t)}))},e.type="boxplot",e}(xg),BL=function(){},FL=function(t){function e(e){var n=t.call(this,e)||this;return n.type="boxplotBoxPath",n}return n(e,t),e.prototype.getDefaultShape=function(){return new BL},e.prototype.buildPath=function(t,e){var n=e.points,i=0;for(t.moveTo(n[i][0],n[i][1]),i++;i<4;i++)t.lineTo(n[i][0],n[i][1]);for(t.closePath();ig){var _=[v,x];i.push(_)}}}return{boxData:n,outliers:i}}(e.getRawData(),t.config);return[{dimensions:["ItemName","Low","Q1","Q2","Q3","High"],data:i.boxData},{data:i.outliers}]}};var jL=["color","borderColor"],qL=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n){this.group.removeClipPath(),this._progressiveEls=null,this._updateDrawMode(t),this._isLargeDraw?this._renderLarge(t):this._renderNormal(t)},e.prototype.incrementalPrepareRender=function(t,e,n){this._clear(),this._updateDrawMode(t)},e.prototype.incrementalRender=function(t,e,n,i){this._progressiveEls=[],this._isLargeDraw?this._incrementalRenderLarge(t,e):this._incrementalRenderNormal(t,e)},e.prototype.eachRendered=function(t){Vh(this._progressiveEls||this.group,t)},e.prototype._updateDrawMode=function(t){var e=t.pipelineContext.large;null!=this._isLargeDraw&&e===this._isLargeDraw||(this._isLargeDraw=e,this._clear())},e.prototype._renderNormal=function(t){var e=t.getData(),n=this._data,i=this.group,r=e.getLayout("isSimpleBox"),o=t.get("clip",!0),a=t.coordinateSystem,s=a.getArea&&a.getArea();this._data||i.removeAll(),e.diff(n).add((function(n){if(e.hasValue(n)){var a=e.getItemLayout(n);if(o&&QL(s,a))return;var l=JL(a,n,!0);oh(l,{shape:{points:a.ends}},t,n),tP(l,e,n,r),i.add(l),e.setItemGraphicEl(n,l)}})).update((function(a,l){var u=n.getItemGraphicEl(l);if(e.hasValue(a)){var h=e.getItemLayout(a);o&&QL(s,h)?i.remove(u):(u?(rh(u,{shape:{points:h.ends}},t,a),hh(u)):u=JL(h),tP(u,e,a,r),i.add(u),e.setItemGraphicEl(a,u))}else i.remove(u)})).remove((function(t){var e=n.getItemGraphicEl(t);e&&i.remove(e)})).execute(),this._data=e},e.prototype._renderLarge=function(t){this._clear(),rP(t,this.group);var e=t.get("clip",!0)?lS(t.coordinateSystem,!1,t):null;e?this.group.setClipPath(e):this.group.removeClipPath()},e.prototype._incrementalRenderNormal=function(t,e){for(var n,i=e.getData(),r=i.getLayout("isSimpleBox");null!=(n=t.next());){var o=JL(i.getItemLayout(n));tP(o,i,n,r),o.incremental=!0,this.group.add(o),this._progressiveEls.push(o)}},e.prototype._incrementalRenderLarge=function(t,e){rP(e,this.group,this._progressiveEls,!0)},e.prototype.remove=function(t){this._clear()},e.prototype._clear=function(){this.group.removeAll(),this._data=null},e.type="candlestick",e}(xg),KL=function(){},$L=function(t){function e(e){var n=t.call(this,e)||this;return n.type="normalCandlestickBox",n}return n(e,t),e.prototype.getDefaultShape=function(){return new KL},e.prototype.buildPath=function(t,e){var n=e.points;this.__simpleBox?(t.moveTo(n[4][0],n[4][1]),t.lineTo(n[6][0],n[6][1])):(t.moveTo(n[0][0],n[0][1]),t.lineTo(n[1][0],n[1][1]),t.lineTo(n[2][0],n[2][1]),t.lineTo(n[3][0],n[3][1]),t.closePath(),t.moveTo(n[4][0],n[4][1]),t.lineTo(n[5][0],n[5][1]),t.moveTo(n[6][0],n[6][1]),t.lineTo(n[7][0],n[7][1]))},e}(gs);function JL(t,e,n){var i=t.ends;return new $L({shape:{points:n?eP(i,t):i},z2:100})}function QL(t,e){for(var n=!0,i=0;i0?"borderColor":"borderColor0"])||n.get(["itemStyle",t>0?"color":"color0"]),o=n.getModel("itemStyle").getItemStyle(jL);e.useStyle(o),e.style.fill=null,e.style.stroke=r}var aP=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.defaultValueDimensions=[{name:"open",defaultTooltip:!0},{name:"close",defaultTooltip:!0},{name:"lowest",defaultTooltip:!0},{name:"highest",defaultTooltip:!0}],n}return n(e,t),e.prototype.getShadowDim=function(){return"open"},e.prototype.brushSelector=function(t,e,n){var i=e.getItemLayout(t);return i&&n.rect(i.brushRect)},e.type="series.candlestick",e.dependencies=["xAxis","yAxis","grid"],e.defaultOption={z:2,coordinateSystem:"cartesian2d",legendHoverLink:!0,layout:null,clip:!0,itemStyle:{color:"#eb5454",color0:"#47b262",borderColor:"#eb5454",borderColor0:"#47b262",borderWidth:1},emphasis:{scale:!0,itemStyle:{borderWidth:2}},barMaxWidth:null,barMinWidth:null,barWidth:null,large:!0,largeThreshold:600,progressive:3e3,progressiveThreshold:1e4,progressiveChunkMode:"mod",animationEasing:"linear",animationDuration:300},e}(sg);function sP(t){t&&Y(t.series)&&E(t.series,(function(t){q(t)&&"k"===t.type&&(t.type="candlestick")}))}R(aP,EL,!0);var lP=["itemStyle","borderColor"],uP=["itemStyle","borderColor0"],hP=["itemStyle","color"],cP=["itemStyle","color0"],pP={seriesType:"candlestick",plan:yg(),performRawSeries:!0,reset:function(t,e){function n(t,e){return e.get(t>0?hP:cP)}function i(t,e){return e.get(t>0?lP:uP)}if(!e.isSeriesFiltered(t))return!t.pipelineContext.large&&{progress:function(t,e){for(var r;null!=(r=t.next());){var o=e.getItemModel(r),a=e.getItemLayout(r).sign,s=o.getItemStyle();s.fill=n(a,o),s.stroke=i(a,o)||s.fill,A(e.ensureUniqueItemVisual(r,"style"),s)}}}}},dP={seriesType:"candlestick",plan:yg(),reset:function(t){var e=t.coordinateSystem,n=t.getData(),i=function(t,e){var n,i=t.getBaseAxis(),r="category"===i.type?i.getBandWidth():(n=i.getExtent(),Math.abs(n[1]-n[0])/e.count()),o=Er(rt(t.get("barMaxWidth"),r),r),a=Er(rt(t.get("barMinWidth"),1),r),s=t.get("barWidth");return null!=s?Er(s,r):Math.max(Math.min(r/2,o),a)}(t,n),r=["x","y"],o=n.getDimensionIndex(n.mapDimension(r[0])),a=z(n.mapDimensionsAll(r[1]),n.getDimensionIndex,n),s=a[0],l=a[1],u=a[2],h=a[3];if(n.setLayout({candleWidth:i,isSimpleBox:i<=1.3}),!(o<0||a.length<4))return{progress:t.pipelineContext.large?function(t,n){var i,r,a=Sx(4*t.count),c=0,p=[],d=[],f=n.getStore();for(;null!=(r=t.next());){var g=f.get(o,r),y=f.get(s,r),v=f.get(l,r),m=f.get(u,r),x=f.get(h,r);isNaN(g)||isNaN(m)||isNaN(x)?(a[c++]=NaN,c+=3):(a[c++]=fP(f,r,y,v,l),p[0]=g,p[1]=m,i=e.dataToPoint(p,null,d),a[c++]=i?i[0]:NaN,a[c++]=i?i[1]:NaN,p[1]=x,i=e.dataToPoint(p,null,d),a[c++]=i?i[1]:NaN)}n.setLayout("largePoints",a)}:function(t,n){var r,a=n.getStore();for(;null!=(r=t.next());){var c=a.get(o,r),p=a.get(s,r),d=a.get(l,r),f=a.get(u,r),g=a.get(h,r),y=Math.min(p,d),v=Math.max(p,d),m=S(y,c),x=S(v,c),_=S(f,c),b=S(g,c),w=[];M(w,x,0),M(w,m,1),w.push(T(b),T(x),T(_),T(m)),n.setItemLayout(r,{sign:fP(a,r,p,d,l),initBaseline:p>d?x[1]:m[1],ends:w,brushRect:I(f,g,c)})}function S(t,n){var i=[];return i[0]=n,i[1]=t,isNaN(n)||isNaN(t)?[NaN,NaN]:e.dataToPoint(i)}function M(t,e,n){var r=e.slice(),o=e.slice();r[0]=Mh(r[0]+i/2,1,!1),o[0]=Mh(o[0]-i/2,1,!0),n?t.push(r,o):t.push(o,r)}function I(t,e,n){var r=S(t,n),o=S(e,n);return r[0]-=i/2,o[0]-=i/2,{x:r[0],y:r[1],width:i,height:o[1]-r[1]}}function T(t){return t[0]=Mh(t[0],1),t}}}}};function fP(t,e,n,i,r){return n>i?-1:n0?t.get(r,e-1)<=i?1:-1:1}function gP(t,e){var n=e.rippleEffectColor||e.color;t.eachChild((function(t){t.attr({z:e.z,zlevel:e.zlevel,style:{stroke:"stroke"===e.brushType?n:null,fill:"fill"===e.brushType?n:null}})}))}var yP=function(t){function e(e,n){var i=t.call(this)||this,r=new Yw(e,n),o=new Cr;return i.add(r),i.add(o),i.updateData(e,n),i}return n(e,t),e.prototype.stopEffectAnimation=function(){this.childAt(1).removeAll()},e.prototype.startEffectAnimation=function(t){for(var e=t.symbolType,n=t.color,i=t.rippleNumber,r=this.childAt(1),o=0;o0&&(o=this._getLineLength(i)/s*1e3),o!==this._period||a!==this._loop){i.stopAnimation();var u=void 0;u=U(l)?l(n):l,i.__t>0&&(u=-o*i.__t),this._animateSymbol(i,o,u,a)}this._period=o,this._loop=a}},e.prototype._animateSymbol=function(t,e,n,i){if(e>0){t.__t=0;var r=this,o=t.animate("",i).when(e,{__t:1}).delay(n).during((function(){r._updateSymbolPosition(t)}));i||o.done((function(){r.remove(t)})),o.start()}},e.prototype._getLineLength=function(t){return Et(t.__p1,t.__cp1)+Et(t.__cp1,t.__p2)},e.prototype._updateAnimationPoints=function(t,e){t.__p1=e[0],t.__p2=e[1],t.__cp1=e[2]||[(e[0][0]+e[1][0])/2,(e[0][1]+e[1][1])/2]},e.prototype.updateData=function(t,e,n){this.childAt(0).updateData(t,e,n),this._updateEffectSymbol(t,e)},e.prototype._updateSymbolPosition=function(t){var e=t.__p1,n=t.__p2,i=t.__cp1,r=t.__t,o=[t.x,t.y],a=o.slice(),s=Ke,l=$e;o[0]=s(e[0],i[0],n[0],r),o[1]=s(e[1],i[1],n[1],r);var u=l(e[0],i[0],n[0],r),h=l(e[1],i[1],n[1],r);t.rotation=-Math.atan2(h,u)-Math.PI/2,"line"!==this._symbolType&&"rect"!==this._symbolType&&"roundRect"!==this._symbolType||(void 0!==t.__lastT&&t.__lastT=0&&!(i[o]<=e);o--);o=Math.min(o,r-2)}else{for(o=a;oe);o++);o=Math.min(o-1,r-2)}var s=(e-i[o])/(i[o+1]-i[o]),l=n[o],u=n[o+1];t.x=l[0]*(1-s)+s*u[0],t.y=l[1]*(1-s)+s*u[1];var h=u[0]-l[0],c=u[1]-l[1];t.rotation=-Math.atan2(c,h)-Math.PI/2,this._lastFrame=o,this._lastFramePercent=e,t.ignore=!1}},e}(xP),wP=function(){this.polyline=!1,this.curveness=0,this.segs=[]},SP=function(t){function e(e){var n=t.call(this,e)||this;return n._off=0,n.hoverDataIdx=-1,n}return n(e,t),e.prototype.reset=function(){this.notClear=!1,this._off=0},e.prototype.getDefaultStyle=function(){return{stroke:"#000",fill:null}},e.prototype.getDefaultShape=function(){return new wP},e.prototype.buildPath=function(t,e){var n,i=e.segs,r=e.curveness;if(e.polyline)for(n=this._off;n0){t.moveTo(i[n++],i[n++]);for(var a=1;a0){var c=(s+u)/2-(l-h)*r,p=(l+h)/2-(u-s)*r;t.quadraticCurveTo(c,p,u,h)}else t.lineTo(u,h)}this.incremental&&(this._off=n,this.notClear=!0)},e.prototype.findDataIndex=function(t,e){var n=this.shape,i=n.segs,r=n.curveness,o=this.style.lineWidth;if(n.polyline)for(var a=0,s=0;s0)for(var u=i[s++],h=i[s++],c=1;c0){if(Ja(u,h,(u+p)/2-(h-d)*r,(h+d)/2-(p-u)*r,p,d,o,t,e))return a}else if(Ka(u,h,p,d,o,t,e))return a;a++}return-1},e.prototype.contain=function(t,e){var n=this.transformCoordToLocal(t,e),i=this.getBoundingRect();return t=n[0],e=n[1],i.contain(t,e)?(this.hoverDataIdx=this.findDataIndex(t,e))>=0:(this.hoverDataIdx=-1,!1)},e.prototype.getBoundingRect=function(){var t=this._rect;if(!t){for(var e=this.shape.segs,n=1/0,i=1/0,r=-1/0,o=-1/0,a=0;a0&&(o.dataIndex=n+t.__startIndex)}))},t.prototype._clear=function(){this._newAdded=[],this.group.removeAll()},t}(),IP={seriesType:"lines",plan:yg(),reset:function(t){var e=t.coordinateSystem;if(e){var n=t.get("polyline"),i=t.pipelineContext.large;return{progress:function(r,o){var a=[];if(i){var s=void 0,l=r.end-r.start;if(n){for(var u=0,h=r.start;h0&&(l||s.configLayer(o,{motionBlur:!0,lastFrameAlpha:Math.max(Math.min(a/10+.9,1),0)})),r.updateData(i);var u=t.get("clip",!0)&&lS(t.coordinateSystem,!1,t);u?this.group.setClipPath(u):this.group.removeClipPath(),this._lastZlevel=o,this._finished=!0},e.prototype.incrementalPrepareRender=function(t,e,n){var i=t.getData();this._updateLineDraw(i,t).incrementalPrepareUpdate(i),this._clearLayer(n),this._finished=!1},e.prototype.incrementalRender=function(t,e,n){this._lineDraw.incrementalUpdate(t,e.getData()),this._finished=t.end===e.getData().count()},e.prototype.eachRendered=function(t){this._lineDraw&&this._lineDraw.eachRendered(t)},e.prototype.updateTransform=function(t,e,n){var i=t.getData(),r=t.pipelineContext;if(!this._finished||r.large||r.progressiveRender)return{update:!0};var o=IP.reset(t,e,n);o.progress&&o.progress({start:0,end:i.count(),count:i.count()},i),this._lineDraw.updateLayout(),this._clearLayer(n)},e.prototype._updateLineDraw=function(t,e){var n=this._lineDraw,i=this._showEffect(e),r=!!e.get("polyline"),o=e.pipelineContext.large;return n&&i===this._hasEffet&&r===this._isPolyline&&o===this._isLargeDraw||(n&&n.remove(),n=this._lineDraw=o?new MP:new gA(r?i?bP:_P:i?xP:fA),this._hasEffet=i,this._isPolyline=r,this._isLargeDraw=o),this.group.add(n.group),n},e.prototype._showEffect=function(t){return!!t.get(["effect","show"])},e.prototype._clearLayer=function(t){var e=t.getZr();"svg"===e.painter.getType()||null==this._lastZlevel||e.painter.getLayer(this._lastZlevel).clear(!0)},e.prototype.remove=function(t,e){this._lineDraw&&this._lineDraw.remove(),this._lineDraw=null,this._clearLayer(e)},e.prototype.dispose=function(t,e){this.remove(t,e)},e.type="lines",e}(xg),CP="undefined"==typeof Uint32Array?Array:Uint32Array,DP="undefined"==typeof Float64Array?Array:Float64Array;function AP(t){var e=t.data;e&&e[0]&&e[0][0]&&e[0][0].coord&&(t.data=z(e,(function(t){var e={coords:[t[0].coord,t[1].coord]};return t[0].name&&(e.fromName=t[0].name),t[1].name&&(e.toName=t[1].name),D([e,t[0],t[1]])})))}var kP=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.visualStyleAccessPath="lineStyle",n.visualDrawType="stroke",n}return n(e,t),e.prototype.init=function(e){e.data=e.data||[],AP(e);var n=this._processFlatCoordsArray(e.data);this._flatCoords=n.flatCoords,this._flatCoordsOffset=n.flatCoordsOffset,n.flatCoords&&(e.data=new Float32Array(n.count)),t.prototype.init.apply(this,arguments)},e.prototype.mergeOption=function(e){if(AP(e),e.data){var n=this._processFlatCoordsArray(e.data);this._flatCoords=n.flatCoords,this._flatCoordsOffset=n.flatCoordsOffset,n.flatCoords&&(e.data=new Float32Array(n.count))}t.prototype.mergeOption.apply(this,arguments)},e.prototype.appendData=function(t){var e=this._processFlatCoordsArray(t.data);e.flatCoords&&(this._flatCoords?(this._flatCoords=gt(this._flatCoords,e.flatCoords),this._flatCoordsOffset=gt(this._flatCoordsOffset,e.flatCoordsOffset)):(this._flatCoords=e.flatCoords,this._flatCoordsOffset=e.flatCoordsOffset),t.data=new Float32Array(e.count)),this.getRawData().appendData(t.data)},e.prototype._getCoordsFromItemModel=function(t){var e=this.getData().getItemModel(t),n=e.option instanceof Array?e.option:e.getShallow("coords");return n},e.prototype.getLineCoordsCount=function(t){return this._flatCoordsOffset?this._flatCoordsOffset[2*t+1]:this._getCoordsFromItemModel(t).length},e.prototype.getLineCoords=function(t,e){if(this._flatCoordsOffset){for(var n=this._flatCoordsOffset[2*t],i=this._flatCoordsOffset[2*t+1],r=0;r ")})},e.prototype.preventIncremental=function(){return!!this.get(["effect","show"])},e.prototype.getProgressive=function(){var t=this.option.progressive;return null==t?this.option.large?1e4:this.get("progressive"):t},e.prototype.getProgressiveThreshold=function(){var t=this.option.progressiveThreshold;return null==t?this.option.large?2e4:this.get("progressiveThreshold"):t},e.prototype.getZLevelKey=function(){var t=this.getModel("effect"),e=t.get("trailLength");return this.getData().count()>this.getProgressiveThreshold()?this.id:t.get("show")&&e>0?e+"":""},e.type="series.lines",e.dependencies=["grid","polar","geo","calendar"],e.defaultOption={coordinateSystem:"geo",z:2,legendHoverLink:!0,xAxisIndex:0,yAxisIndex:0,symbol:["none","none"],symbolSize:[10,10],geoIndex:0,effect:{show:!1,period:4,constantSpeed:0,symbol:"circle",symbolSize:3,loop:!0,trailLength:.2},large:!1,largeThreshold:2e3,polyline:!1,clip:!0,label:{show:!1,position:"end"},lineStyle:{opacity:.5}},e}(sg);function LP(t){return t instanceof Array||(t=[t,t]),t}var PP={seriesType:"lines",reset:function(t){var e=LP(t.get("symbol")),n=LP(t.get("symbolSize")),i=t.getData();return i.setVisual("fromSymbol",e&&e[0]),i.setVisual("toSymbol",e&&e[1]),i.setVisual("fromSymbolSize",n&&n[0]),i.setVisual("toSymbolSize",n&&n[1]),{dataEach:i.hasItemOption?function(t,e){var n=t.getItemModel(e),i=LP(n.getShallow("symbol",!0)),r=LP(n.getShallow("symbolSize",!0));i[0]&&t.setItemVisual(e,"fromSymbol",i[0]),i[1]&&t.setItemVisual(e,"toSymbol",i[1]),r[0]&&t.setItemVisual(e,"fromSymbolSize",r[0]),r[1]&&t.setItemVisual(e,"toSymbolSize",r[1])}:null}}};var OP=function(){function t(){this.blurSize=30,this.pointSize=20,this.maxOpacity=1,this.minOpacity=0,this._gradientPixels={inRange:null,outOfRange:null};var t=h.createCanvas();this.canvas=t}return t.prototype.update=function(t,e,n,i,r,o){var a=this._getBrush(),s=this._getGradient(r,"inRange"),l=this._getGradient(r,"outOfRange"),u=this.pointSize+this.blurSize,h=this.canvas,c=h.getContext("2d"),p=t.length;h.width=e,h.height=n;for(var d=0;d0){var I=o(v)?s:l;v>0&&(v=v*S+w),x[_++]=I[M],x[_++]=I[M+1],x[_++]=I[M+2],x[_++]=I[M+3]*v*256}else _+=4}return c.putImageData(m,0,0),h},t.prototype._getBrush=function(){var t=this._brushCanvas||(this._brushCanvas=h.createCanvas()),e=this.pointSize+this.blurSize,n=2*e;t.width=n,t.height=n;var i=t.getContext("2d");return i.clearRect(0,0,n,n),i.shadowOffsetX=n,i.shadowBlur=this.blurSize,i.shadowColor="#000",i.beginPath(),i.arc(-e,e,this.pointSize,0,2*Math.PI,!0),i.closePath(),i.fill(),t},t.prototype._getGradient=function(t,e){for(var n=this._gradientPixels,i=n[e]||(n[e]=new Uint8ClampedArray(1024)),r=[0,0,0,0],o=0,a=0;a<256;a++)t[e](a/255,!0,r),i[o++]=r[0],i[o++]=r[1],i[o++]=r[2],i[o++]=r[3];return i},t}();function RP(t){var e=t.dimensions;return"lng"===e[0]&&"lat"===e[1]}var NP=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n){var i;e.eachComponent("visualMap",(function(e){e.eachTargetSeries((function(n){n===t&&(i=e)}))})),this._progressiveEls=null,this.group.removeAll();var r=t.coordinateSystem;"cartesian2d"===r.type||"calendar"===r.type?this._renderOnCartesianAndCalendar(t,n,0,t.getData().count()):RP(r)&&this._renderOnGeo(r,t,i,n)},e.prototype.incrementalPrepareRender=function(t,e,n){this.group.removeAll()},e.prototype.incrementalRender=function(t,e,n,i){var r=e.coordinateSystem;r&&(RP(r)?this.render(e,n,i):(this._progressiveEls=[],this._renderOnCartesianAndCalendar(e,i,t.start,t.end,!0)))},e.prototype.eachRendered=function(t){Vh(this._progressiveEls||this.group,t)},e.prototype._renderOnCartesianAndCalendar=function(t,e,n,i,r){var o,a,s,l,u=t.coordinateSystem,h=uS(u,"cartesian2d");if(h){var c=u.getAxis("x"),p=u.getAxis("y");0,o=c.getBandWidth()+.5,a=p.getBandWidth()+.5,s=c.scale.getExtent(),l=p.scale.getExtent()}for(var d=this.group,f=t.getData(),g=t.getModel(["emphasis","itemStyle"]).getItemStyle(),y=t.getModel(["blur","itemStyle"]).getItemStyle(),v=t.getModel(["select","itemStyle"]).getItemStyle(),m=t.get(["itemStyle","borderRadius"]),x=Yh(t),_=t.getModel("emphasis"),b=_.get("focus"),w=_.get("blurScope"),S=_.get("disabled"),M=h?[f.mapDimension("x"),f.mapDimension("y"),f.mapDimension("value")]:[f.mapDimension("time"),f.mapDimension("value")],I=n;Is[1]||Al[1])continue;var k=u.dataToPoint([D,A]);T=new Cs({shape:{x:k[0]-o/2,y:k[1]-a/2,width:o,height:a},style:C})}else{if(isNaN(f.get(M[1],I)))continue;T=new Cs({z2:1,shape:u.dataToRect([f.get(M[0],I)]).contentShape,style:C})}if(f.hasItemOption){var L=f.getItemModel(I),P=L.getModel("emphasis");g=P.getModel("itemStyle").getItemStyle(),y=L.getModel(["blur","itemStyle"]).getItemStyle(),v=L.getModel(["select","itemStyle"]).getItemStyle(),m=L.get(["itemStyle","borderRadius"]),b=P.get("focus"),w=P.get("blurScope"),S=P.get("disabled"),x=Yh(L)}T.shape.r=m;var O=t.getRawValue(I),R="-";O&&null!=O[2]&&(R=O[2]+""),Hh(T,x,{labelFetcher:t,labelDataIndex:I,defaultOpacity:C.opacity,defaultText:R}),T.ensureState("emphasis").style=g,T.ensureState("blur").style=y,T.ensureState("select").style=v,Rl(T,b,w,S),T.incremental=r,r&&(T.states.emphasis.hoverLayer=!0),d.add(T),f.setItemGraphicEl(I,T),this._progressiveEls&&this._progressiveEls.push(T)}},e.prototype._renderOnGeo=function(t,e,n,i){var r=n.targetVisuals.inRange,o=n.targetVisuals.outOfRange,a=e.getData(),s=this._hmLayer||this._hmLayer||new OP;s.blurSize=e.get("blurSize"),s.pointSize=e.get("pointSize"),s.minOpacity=e.get("minOpacity"),s.maxOpacity=e.get("maxOpacity");var l=t.getViewRect().clone(),u=t.getRoamTransform();l.applyTransform(u);var h=Math.max(l.x,0),c=Math.max(l.y,0),p=Math.min(l.width+l.x,i.getWidth()),d=Math.min(l.height+l.y,i.getHeight()),f=p-h,g=d-c,y=[a.mapDimension("lng"),a.mapDimension("lat"),a.mapDimension("value")],v=a.mapArray(y,(function(e,n,i){var r=t.dataToPoint([e,n]);return r[0]-=h,r[1]-=c,r.push(i),r})),m=n.getExtent(),x="visualMap.continuous"===n.type?function(t,e){var n=t[1]-t[0];return e=[(e[0]-t[0])/n,(e[1]-t[0])/n],function(t){return t>=e[0]&&t<=e[1]}}(m,n.option.range):function(t,e,n){var i=t[1]-t[0],r=(e=z(e,(function(e){return{interval:[(e.interval[0]-t[0])/i,(e.interval[1]-t[0])/i]}}))).length,o=0;return function(t){var i;for(i=o;i=0;i--){var a;if((a=e[i].interval)[0]<=t&&t<=a[1]){o=i;break}}return i>=0&&i0?1:-1}(n,o,r,i,c),function(t,e,n,i,r,o,a,s,l,u){var h,c=l.valueDim,p=l.categoryDim,d=Math.abs(n[p.wh]),f=t.getItemVisual(e,"symbolSize");h=Y(f)?f.slice():null==f?["100%","100%"]:[f,f];h[p.index]=Er(h[p.index],d),h[c.index]=Er(h[c.index],i?d:Math.abs(o)),u.symbolSize=h,(u.symbolScale=[h[0]/s,h[1]/s])[c.index]*=(l.isHorizontal?-1:1)*a}(t,e,r,o,0,c.boundingLength,c.pxSign,u,i,c),function(t,e,n,i,r){var o=t.get(zP)||0;o&&(BP.attr({scaleX:e[0],scaleY:e[1],rotation:n}),BP.updateTransform(),o/=BP.getLineScale(),o*=e[i.valueDim.index]);r.valueLineWidth=o||0}(n,c.symbolScale,l,i,c);var p=c.symbolSize,d=Oy(n.get("symbolOffset"),p);return function(t,e,n,i,r,o,a,s,l,u,h,c){var p=h.categoryDim,d=h.valueDim,f=c.pxSign,g=Math.max(e[d.index]+s,0),y=g;if(i){var v=Math.abs(l),m=it(t.get("symbolMargin"),"15%")+"",x=!1;m.lastIndexOf("!")===m.length-1&&(x=!0,m=m.slice(0,m.length-1));var _=Er(m,e[d.index]),b=Math.max(g+2*_,0),w=x?0:2*_,S=eo(i),M=S?i:iO((v+w)/b);b=g+2*(_=(v-M*g)/2/(x?M:Math.max(M-1,1))),w=x?0:2*_,S||"fixed"===i||(M=u?iO((Math.abs(u)+w)/b):0),y=M*b-w,c.repeatTimes=M,c.symbolMargin=_}var I=f*(y/2),T=c.pathPosition=[];T[p.index]=n[p.wh]/2,T[d.index]="start"===a?I:"end"===a?l-I:l/2,o&&(T[0]+=o[0],T[1]+=o[1]);var C=c.bundlePosition=[];C[p.index]=n[p.xy],C[d.index]=n[d.xy];var D=c.barRectShape=A({},n);D[d.wh]=f*Math.max(Math.abs(n[d.wh]),Math.abs(T[d.index]+I)),D[p.wh]=n[p.wh];var k=c.clipShape={};k[p.xy]=-n[p.xy],k[p.wh]=h.ecSize[p.wh],k[d.xy]=0,k[d.wh]=n[d.wh]}(n,p,r,o,0,d,s,c.valueLineWidth,c.boundingLength,c.repeatCutLength,i,c),c}function WP(t,e){return t.toGlobalCoord(t.dataToCoord(t.scale.parse(e)))}function HP(t){var e=t.symbolPatternSize,n=Ly(t.symbolType,-e/2,-e/2,e,e);return n.attr({culling:!0}),"image"!==n.type&&n.setStyle({strokeNoScale:!0}),n}function YP(t,e,n,i){var r=t.__pictorialBundle,o=n.symbolSize,a=n.valueLineWidth,s=n.pathPosition,l=e.valueDim,u=n.repeatTimes||0,h=0,c=o[e.valueDim.index]+a+2*n.symbolMargin;for(tO(t,(function(t){t.__pictorialAnimationIndex=h,t.__pictorialRepeatTimes=u,h0:i<0)&&(r=u-1-t),e[l.index]=c*(r-u/2+.5)+s[l.index],{x:e[0],y:e[1],scaleX:n.symbolScale[0],scaleY:n.symbolScale[1],rotation:n.rotation}}}function UP(t,e,n,i){var r=t.__pictorialBundle,o=t.__pictorialMainPath;o?eO(o,null,{x:n.pathPosition[0],y:n.pathPosition[1],scaleX:n.symbolScale[0],scaleY:n.symbolScale[1],rotation:n.rotation},n,i):(o=t.__pictorialMainPath=HP(n),r.add(o),eO(o,{x:n.pathPosition[0],y:n.pathPosition[1],scaleX:0,scaleY:0,rotation:n.rotation},{scaleX:n.symbolScale[0],scaleY:n.symbolScale[1]},n,i))}function XP(t,e,n){var i=A({},e.barRectShape),r=t.__pictorialBarRect;r?eO(r,null,{shape:i},e,n):((r=t.__pictorialBarRect=new Cs({z2:2,shape:i,silent:!0,style:{stroke:"transparent",fill:"transparent",lineWidth:0}})).disableMorphing=!0,t.add(r))}function ZP(t,e,n,i){if(n.symbolClip){var r=t.__pictorialClipPath,o=A({},n.clipShape),a=e.valueDim,s=n.animationModel,l=n.dataIndex;if(r)rh(r,{shape:o},s,l);else{o[a.wh]=0,r=new Cs({shape:o}),t.__pictorialBundle.setClipPath(r),t.__pictorialClipPath=r;var u={};u[a.wh]=n.clipShape[a.wh],Bh[i?"updateProps":"initProps"](r,{shape:u},s,l)}}}function jP(t,e){var n=t.getItemModel(e);return n.getAnimationDelayParams=qP,n.isAnimationEnabled=KP,n}function qP(t){return{index:t.__pictorialAnimationIndex,count:t.__pictorialRepeatTimes}}function KP(){return this.parentModel.isAnimationEnabled()&&!!this.getShallow("animation")}function $P(t,e,n,i){var r=new Cr,o=new Cr;return r.add(o),r.__pictorialBundle=o,o.x=n.bundlePosition[0],o.y=n.bundlePosition[1],n.symbolRepeat?YP(r,e,n):UP(r,0,n),XP(r,n,i),ZP(r,e,n,i),r.__pictorialShapeStr=QP(t,n),r.__pictorialSymbolMeta=n,r}function JP(t,e,n,i){var r=i.__pictorialBarRect;r&&r.removeTextContent();var o=[];tO(i,(function(t){o.push(t)})),i.__pictorialMainPath&&o.push(i.__pictorialMainPath),i.__pictorialClipPath&&(n=null),E(o,(function(t){sh(t,{scaleX:0,scaleY:0},n,e,(function(){i.parent&&i.parent.remove(i)}))})),t.setItemGraphicEl(e,null)}function QP(t,e){return[t.getItemVisual(e.dataIndex,"symbol")||"none",!!e.symbolRepeat,!!e.symbolClip].join(":")}function tO(t,e,n){E(t.__pictorialBundle.children(),(function(i){i!==t.__pictorialBarRect&&e.call(n,i)}))}function eO(t,e,n,i,r,o){e&&t.attr(e),i.symbolClip&&!r?n&&t.attr(n):n&&Bh[r?"updateProps":"initProps"](t,n,i.animationModel,i.dataIndex,o)}function nO(t,e,n){var i=n.dataIndex,r=n.itemModel,o=r.getModel("emphasis"),a=o.getModel("itemStyle").getItemStyle(),s=r.getModel(["blur","itemStyle"]).getItemStyle(),l=r.getModel(["select","itemStyle"]).getItemStyle(),u=r.getShallow("cursor"),h=o.get("focus"),c=o.get("blurScope"),p=o.get("scale");tO(t,(function(t){if(t instanceof _s){var e=t.style;t.useStyle(A({image:e.image,x:e.x,y:e.y,width:e.width,height:e.height},n.style))}else t.useStyle(n.style);var i=t.ensureState("emphasis");i.style=a,p&&(i.scaleX=1.1*t.scaleX,i.scaleY=1.1*t.scaleY),t.ensureState("blur").style=s,t.ensureState("select").style=l,u&&(t.cursor=u),t.z2=n.z2}));var d=e.valueDim.posDesc[+(n.boundingLength>0)];Hh(t.__pictorialBarRect,Yh(r),{labelFetcher:e.seriesModel,labelDataIndex:i,defaultText:Ww(e.seriesModel.getData(),i),inheritColor:n.style.fill,defaultOpacity:n.style.opacity,defaultOutsidePosition:d}),Rl(t,h,c,o.get("disabled"))}function iO(t){var e=Math.round(t);return Math.abs(t-e)<1e-4?e:Math.ceil(t)}var rO=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.hasSymbolVisual=!0,n.defaultSymbol="roundRect",n}return n(e,t),e.prototype.getInitialData=function(e){return e.stack=null,t.prototype.getInitialData.apply(this,arguments)},e.type="series.pictorialBar",e.dependencies=["grid"],e.defaultOption=yc(IS.defaultOption,{symbol:"circle",symbolSize:null,symbolRotate:null,symbolPosition:null,symbolOffset:null,symbolMargin:null,symbolRepeat:!1,symbolRepeatDirection:"end",symbolClip:!1,symbolBoundingData:null,symbolPatternSize:400,barGap:"-100%",progressive:0,emphasis:{scale:!1},select:{itemStyle:{borderColor:"#212121"}}}),e}(IS);var oO=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n._layers=[],n}return n(e,t),e.prototype.render=function(t,e,n){var i=t.getData(),r=this,o=this.group,a=t.getLayerSeries(),s=i.getLayout("layoutInfo"),l=s.rect,u=s.boundaryGap;function h(t){return t.name}o.x=0,o.y=l.y+u[0];var c=new Im(this._layersSeries||[],a,h,h),p=[];function d(e,n,s){var l=r._layers;if("remove"!==e){for(var u,h,c=[],d=[],f=a[n].indices,g=0;go&&(o=s),i.push(s)}for(var u=0;uo&&(o=c)}return{y0:r,max:o}}(l),h=u.y0,c=n/u.max,p=o.length,d=o[0].indices.length,f=0;fMath.PI/2?"right":"left"):S&&"center"!==S?"left"===S?(m=r.r0+w,a>Math.PI/2&&(S="right")):"right"===S&&(m=r.r-w,a>Math.PI/2&&(S="left")):(m=o===2*Math.PI&&0===r.r0?0:(r.r+r.r0)/2,S="center"),g.style.align=S,g.style.verticalAlign=f(p,"verticalAlign")||"middle",g.x=m*s+r.cx,g.y=m*l+r.cy;var M=f(p,"rotate"),I=0;"radial"===M?(I=-a)<-Math.PI/2&&(I+=Math.PI):"tangential"===M?(I=Math.PI/2-a)>Math.PI/2?I-=Math.PI:I<-Math.PI/2&&(I+=Math.PI):j(M)&&(I=M*Math.PI/180),g.rotation=I})),h.dirtyStyle()},e}(Cu),hO="sunburstRootToNode",cO="sunburstHighlight";var pO=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n,i){var r=this;this.seriesModel=t,this.api=n,this.ecModel=e;var o=t.getData(),a=o.tree.root,s=t.getViewRoot(),l=this.group,u=t.get("renderLabelForZeroData"),h=[];s.eachNode((function(t){h.push(t)}));var c=this._oldChildren||[];!function(i,r){if(0===i.length&&0===r.length)return;function s(t){return t.getId()}function h(s,h){!function(i,r){u||!i||i.getValue()||(i=null);if(i!==a&&r!==a)if(r&&r.piece)i?(r.piece.updateData(!1,i,t,e,n),o.setItemGraphicEl(i.dataIndex,r.piece)):function(t){if(!t)return;t.piece&&(l.remove(t.piece),t.piece=null)}(r);else if(i){var s=new uO(i,t,e,n);l.add(s),o.setItemGraphicEl(i.dataIndex,s)}}(null==s?null:i[s],null==h?null:r[h])}new Im(r,i,s,s).add(h).update(h).remove(H(h,null)).execute()}(h,c),function(i,o){o.depth>0?(r.virtualPiece?r.virtualPiece.updateData(!1,i,t,e,n):(r.virtualPiece=new uO(i,t,e,n),l.add(r.virtualPiece)),o.piece.off("click"),r.virtualPiece.on("click",(function(t){r._rootToNode(o.parentNode)}))):r.virtualPiece&&(l.remove(r.virtualPiece),r.virtualPiece=null)}(a,s),this._initEvents(),this._oldChildren=h},e.prototype._initEvents=function(){var t=this;this.group.off("click"),this.group.on("click",(function(e){var n=!1;t.seriesModel.getViewRoot().eachNode((function(i){if(!n&&i.piece&&i.piece===e.target){var r=i.getModel().get("nodeClick");if("rootToNode"===r)t._rootToNode(i);else if("link"===r){var o=i.getModel(),a=o.get("link");if(a)dp(a,o.get("target",!0)||"_blank")}n=!0}}))}))},e.prototype._rootToNode=function(t){t!==this.seriesModel.getViewRoot()&&this.api.dispatchAction({type:hO,from:this.uid,seriesId:this.seriesModel.id,targetNode:t})},e.prototype.containPoint=function(t,e){var n=e.getData().getItemLayout(0);if(n){var i=t[0]-n.cx,r=t[1]-n.cy,o=Math.sqrt(i*i+r*r);return o<=n.r&&o>=n.r0}},e.type="sunburst",e}(xg),dO=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.ignoreStyleOnData=!0,n}return n(e,t),e.prototype.getInitialData=function(t,e){var n={name:t.name,children:t.data};fO(n);var i=this._levelModels=z(t.levels||[],(function(t){return new dc(t,this,e)}),this),r=AC.createTree(n,this,(function(t){t.wrapMethod("getItemModel",(function(t,e){var n=r.getNodeByDataIndex(e),o=i[n.depth];return o&&(t.parentModel=o),t}))}));return r.data},e.prototype.optionUpdated=function(){this.resetViewRoot()},e.prototype.getDataParams=function(e){var n=t.prototype.getDataParams.apply(this,arguments),i=this.getData().tree.getNodeByDataIndex(e);return n.treePathInfo=OC(i,this),n},e.prototype.getLevelModel=function(t){return this._levelModels&&this._levelModels[t.depth]},e.prototype.getViewRoot=function(){return this._viewRoot},e.prototype.resetViewRoot=function(t){t?this._viewRoot=t:t=this._viewRoot;var e=this.getRawData().tree.root;t&&(t===e||e.contains(t))||(this._viewRoot=e)},e.prototype.enableAriaDecal=function(){BC(this)},e.type="series.sunburst",e.defaultOption={z:2,center:["50%","50%"],radius:[0,"75%"],clockwise:!0,startAngle:90,minAngle:0,stillShowZeroSum:!0,nodeClick:"rootToNode",renderLabelForZeroData:!1,label:{rotate:"radial",show:!0,opacity:1,align:"center",position:"inside",distance:5,silent:!0},itemStyle:{borderWidth:1,borderColor:"white",borderType:"solid",shadowBlur:0,shadowColor:"rgba(0, 0, 0, 0.2)",shadowOffsetX:0,shadowOffsetY:0,opacity:1},emphasis:{focus:"descendant"},blur:{itemStyle:{opacity:.2},label:{opacity:.1}},animationType:"expansion",animationDuration:1e3,animationDurationUpdate:500,data:[],sort:"desc"},e}(sg);function fO(t){var e=0;E(t.children,(function(t){fO(t);var n=t.value;Y(n)&&(n=n[0]),e+=n}));var n=t.value;Y(n)&&(n=n[0]),(null==n||isNaN(n))&&(n=e),n<0&&(n=0),Y(t.value)?t.value[0]=n:t.value=n}var gO=Math.PI/180;function yO(t,e,n){e.eachSeriesByType(t,(function(t){var e=t.get("center"),i=t.get("radius");Y(i)||(i=[0,i]),Y(e)||(e=[e,e]);var r=n.getWidth(),o=n.getHeight(),a=Math.min(r,o),s=Er(e[0],r),l=Er(e[1],o),u=Er(i[0],a/2),h=Er(i[1],a/2),c=-t.get("startAngle")*gO,p=t.get("minAngle")*gO,d=t.getData().tree.root,f=t.getViewRoot(),g=f.depth,y=t.get("sort");null!=y&&vO(f,y);var v=0;E(f.children,(function(t){!isNaN(t.getValue())&&v++}));var m=f.getValue(),x=Math.PI/(m||v)*2,_=f.depth>0,b=f.height-(_?-1:1),w=(h-u)/(b||1),S=t.get("clockwise"),M=t.get("stillShowZeroSum"),I=S?1:-1,T=function(e,n){if(e){var i=n;if(e!==d){var r=e.getValue(),o=0===m&&M?x:r*x;o1;)r=r.parentNode;var o=n.getColorFromPalette(r.name||r.dataIndex+"",e);return t.depth>1&&X(o)&&(o=Sn(o,(t.depth-1)/(i-1)*.5)),o}(r,t,i.root.height)),A(n.ensureUniqueItemVisual(r.dataIndex,"style"),o)}))}))}var xO={color:"fill",borderColor:"stroke"},_O={symbol:1,symbolSize:1,symbolKeepAspect:1,legendIcon:1,visualMeta:1,liftZ:1,decal:1},bO=So(),wO=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.optionUpdated=function(){this.currentZLevel=this.get("zlevel",!0),this.currentZ=this.get("z",!0)},e.prototype.getInitialData=function(t,e){return rx(null,this)},e.prototype.getDataParams=function(e,n,i){var r=t.prototype.getDataParams.call(this,e,n);return i&&(r.info=bO(i).info),r},e.type="series.custom",e.dependencies=["grid","polar","geo","singleAxis","calendar"],e.defaultOption={coordinateSystem:"cartesian2d",z:2,legendHoverLink:!0,clip:!1},e}(sg);function SO(t,e){return e=e||[0,0],z(["x","y"],(function(n,i){var r=this.getAxis(n),o=e[i],a=t[i]/2;return"category"===r.type?r.getBandWidth():Math.abs(r.dataToCoord(o-a)-r.dataToCoord(o+a))}),this)}function MO(t,e){return e=e||[0,0],z([0,1],(function(n){var i=e[n],r=t[n]/2,o=[],a=[];return o[n]=i-r,a[n]=i+r,o[1-n]=a[1-n]=e[1-n],Math.abs(this.dataToPoint(o)[n]-this.dataToPoint(a)[n])}),this)}function IO(t,e){var n=this.getAxis(),i=e instanceof Array?e[0]:e,r=(t instanceof Array?t[0]:t)/2;return"category"===n.type?n.getBandWidth():Math.abs(n.dataToCoord(i-r)-n.dataToCoord(i+r))}function TO(t,e){return e=e||[0,0],z(["Radius","Angle"],(function(n,i){var r=this["get"+n+"Axis"](),o=e[i],a=t[i]/2,s="category"===r.type?r.getBandWidth():Math.abs(r.dataToCoord(o-a)-r.dataToCoord(o+a));return"Angle"===n&&(s=s*Math.PI/180),s}),this)}function CO(t,e,n,i){return t&&(t.legacy||!1!==t.legacy&&!n&&!i&&"tspan"!==e&&("text"===e||mt(t,"text")))}function DO(t,e,n){var i,r,o,a=t;if("text"===e)o=a;else{o={},mt(a,"text")&&(o.text=a.text),mt(a,"rich")&&(o.rich=a.rich),mt(a,"textFill")&&(o.fill=a.textFill),mt(a,"textStroke")&&(o.stroke=a.textStroke),mt(a,"fontFamily")&&(o.fontFamily=a.fontFamily),mt(a,"fontSize")&&(o.fontSize=a.fontSize),mt(a,"fontStyle")&&(o.fontStyle=a.fontStyle),mt(a,"fontWeight")&&(o.fontWeight=a.fontWeight),r={type:"text",style:o,silent:!0},i={};var s=mt(a,"textPosition");n?i.position=s?a.textPosition:"inside":s&&(i.position=a.textPosition),mt(a,"textPosition")&&(i.position=a.textPosition),mt(a,"textOffset")&&(i.offset=a.textOffset),mt(a,"textRotation")&&(i.rotation=a.textRotation),mt(a,"textDistance")&&(i.distance=a.textDistance)}return AO(o,t),E(o.rich,(function(t){AO(t,t)})),{textConfig:i,textContent:r}}function AO(t,e){e&&(e.font=e.textFont||e.font,mt(e,"textStrokeWidth")&&(t.lineWidth=e.textStrokeWidth),mt(e,"textAlign")&&(t.align=e.textAlign),mt(e,"textVerticalAlign")&&(t.verticalAlign=e.textVerticalAlign),mt(e,"textLineHeight")&&(t.lineHeight=e.textLineHeight),mt(e,"textWidth")&&(t.width=e.textWidth),mt(e,"textHeight")&&(t.height=e.textHeight),mt(e,"textBackgroundColor")&&(t.backgroundColor=e.textBackgroundColor),mt(e,"textPadding")&&(t.padding=e.textPadding),mt(e,"textBorderColor")&&(t.borderColor=e.textBorderColor),mt(e,"textBorderWidth")&&(t.borderWidth=e.textBorderWidth),mt(e,"textBorderRadius")&&(t.borderRadius=e.textBorderRadius),mt(e,"textBoxShadowColor")&&(t.shadowColor=e.textBoxShadowColor),mt(e,"textBoxShadowBlur")&&(t.shadowBlur=e.textBoxShadowBlur),mt(e,"textBoxShadowOffsetX")&&(t.shadowOffsetX=e.textBoxShadowOffsetX),mt(e,"textBoxShadowOffsetY")&&(t.shadowOffsetY=e.textBoxShadowOffsetY))}function kO(t,e,n){var i=t;i.textPosition=i.textPosition||n.position||"inside",null!=n.offset&&(i.textOffset=n.offset),null!=n.rotation&&(i.textRotation=n.rotation),null!=n.distance&&(i.textDistance=n.distance);var r=i.textPosition.indexOf("inside")>=0,o=t.fill||"#000";LO(i,e);var a=null==i.textFill;return r?a&&(i.textFill=n.insideFill||"#fff",!i.textStroke&&n.insideStroke&&(i.textStroke=n.insideStroke),!i.textStroke&&(i.textStroke=o),null==i.textStrokeWidth&&(i.textStrokeWidth=2)):(a&&(i.textFill=t.fill||n.outsideFill||"#000"),!i.textStroke&&n.outsideStroke&&(i.textStroke=n.outsideStroke)),i.text=e.text,i.rich=e.rich,E(e.rich,(function(t){LO(t,t)})),i}function LO(t,e){e&&(mt(e,"fill")&&(t.textFill=e.fill),mt(e,"stroke")&&(t.textStroke=e.fill),mt(e,"lineWidth")&&(t.textStrokeWidth=e.lineWidth),mt(e,"font")&&(t.font=e.font),mt(e,"fontStyle")&&(t.fontStyle=e.fontStyle),mt(e,"fontWeight")&&(t.fontWeight=e.fontWeight),mt(e,"fontSize")&&(t.fontSize=e.fontSize),mt(e,"fontFamily")&&(t.fontFamily=e.fontFamily),mt(e,"align")&&(t.textAlign=e.align),mt(e,"verticalAlign")&&(t.textVerticalAlign=e.verticalAlign),mt(e,"lineHeight")&&(t.textLineHeight=e.lineHeight),mt(e,"width")&&(t.textWidth=e.width),mt(e,"height")&&(t.textHeight=e.height),mt(e,"backgroundColor")&&(t.textBackgroundColor=e.backgroundColor),mt(e,"padding")&&(t.textPadding=e.padding),mt(e,"borderColor")&&(t.textBorderColor=e.borderColor),mt(e,"borderWidth")&&(t.textBorderWidth=e.borderWidth),mt(e,"borderRadius")&&(t.textBorderRadius=e.borderRadius),mt(e,"shadowColor")&&(t.textBoxShadowColor=e.shadowColor),mt(e,"shadowBlur")&&(t.textBoxShadowBlur=e.shadowBlur),mt(e,"shadowOffsetX")&&(t.textBoxShadowOffsetX=e.shadowOffsetX),mt(e,"shadowOffsetY")&&(t.textBoxShadowOffsetY=e.shadowOffsetY),mt(e,"textShadowColor")&&(t.textShadowColor=e.textShadowColor),mt(e,"textShadowBlur")&&(t.textShadowBlur=e.textShadowBlur),mt(e,"textShadowOffsetX")&&(t.textShadowOffsetX=e.textShadowOffsetX),mt(e,"textShadowOffsetY")&&(t.textShadowOffsetY=e.textShadowOffsetY))}var PO={position:["x","y"],scale:["scaleX","scaleY"],origin:["originX","originY"]},OO=G(PO),RO=(V(Ki,(function(t,e){return t[e]=1,t}),{}),Ki.join(", "),["","style","shape","extra"]),NO=So();function EO(t,e,n,i,r){var o=t+"Animation",a=nh(t,i,r)||{},s=NO(e).userDuring;return a.duration>0&&(a.during=s?W(HO,{el:e,userDuring:s}):null,a.setToFinal=!0,a.scope=t),A(a,n[o]),a}function zO(t,e,n,i){var r=(i=i||{}).dataIndex,o=i.isInit,a=i.clearStyle,s=n.isAnimationEnabled(),l=NO(t),u=e.style;l.userDuring=e.during;var h={},c={};if(function(t,e,n){for(var i=0;i=0)){var c=t.getAnimationStyleProps(),p=c?c.style:null;if(p){!r&&(r=i.style={});var d=G(n);for(u=0;u0&&t.animateFrom(p,d)}else!function(t,e,n,i,r){if(r){var o=EO("update",t,e,i,n);o.duration>0&&t.animateFrom(r,o)}}(t,e,r||0,n,h);VO(t,e),u?t.dirty():t.markRedraw()}function VO(t,e){for(var n=NO(t).leaveToProps,i=0;i=0){!o&&(o=i[t]={});var p=G(a);for(h=0;hi[1]&&i.reverse(),{coordSys:{type:"polar",cx:t.cx,cy:t.cy,r:i[1],r0:i[0]},api:{coord:function(i){var r=e.dataToRadius(i[0]),o=n.dataToAngle(i[1]),a=t.coordToPoint([r,o]);return a.push(r,o*Math.PI/180),a},size:W(TO,t)}}},calendar:function(t){var e=t.getRect(),n=t.getRangeInfo();return{coordSys:{type:"calendar",x:e.x,y:e.y,width:e.width,height:e.height,cellWidth:t.getCellWidth(),cellHeight:t.getCellHeight(),rangeInfo:{start:n.start,end:n.end,weeks:n.weeks,dayCount:n.allDay}},api:{coord:function(e,n){return t.dataToPoint(e,n)}}}}};function sR(t){return t instanceof gs}function lR(t){return t instanceof da}var uR=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n,i){this._progressiveEls=null;var r=this._data,o=t.getData(),a=this.group,s=fR(t,o,e,n);r||a.removeAll(),o.diff(r).add((function(e){yR(n,null,e,s(e,i),t,a,o)})).remove((function(e){var n=r.getItemGraphicEl(e);BO(n,bO(n).option,t)})).update((function(e,l){var u=r.getItemGraphicEl(l);yR(n,u,e,s(e,i),t,a,o)})).execute();var l=t.get("clip",!0)?lS(t.coordinateSystem,!1,t):null;l?a.setClipPath(l):a.removeClipPath(),this._data=o},e.prototype.incrementalPrepareRender=function(t,e,n){this.group.removeAll(),this._data=null},e.prototype.incrementalRender=function(t,e,n,i,r){var o=e.getData(),a=fR(e,o,n,i),s=this._progressiveEls=[];function l(t){t.isGroup||(t.incremental=!0,t.ensureState("emphasis").hoverLayer=!0)}for(var u=t.start;u=0?e.getStore().get(r,n):void 0}var o=e.get(i.name,n),a=i&&i.ordinalMeta;return a?a.categories[o]:o},styleEmphasis:function(n,i){0;null==i&&(i=s);var r=m(i,$O).getItemStyle(),o=x(i,$O),a=Uh(o,null,null,!0,!0);a.text=o.getShallow("show")?ot(t.getFormattedLabel(i,$O),t.getFormattedLabel(i,JO),Ww(e,i)):null;var l=Xh(o,null,!0);return b(n,r),r=kO(r,a,l),n&&_(r,n),r.legacy=!0,r},visual:function(t,n){if(null==n&&(n=s),mt(xO,t)){var i=e.getItemVisual(n,"style");return i?i[xO[t]]:null}if(mt(_O,t))return e.getItemVisual(n,t)},barLayout:function(t){if("cartesian2d"===o.type){return function(t){var e=[],n=t.axis,i="axis0";if("category"===n.type){for(var r=n.getBandWidth(),o=0;o=c;p--){BO(e.childAt(p),bO(e).option,r)}}(t,c,n,i,r),a>=0?o.replaceAt(c,a):o.add(c),c}function mR(t,e,n){var i,r=bO(t),o=e.type,a=e.shape,s=e.style;return n.isUniversalTransitionEnabled()||null!=o&&o!==r.customGraphicType||"path"===o&&((i=a)&&(mt(i,"pathData")||mt(i,"d")))&&IR(a)!==r.customPathData||"image"===o&&mt(s,"image")&&s.image!==r.customImagePath}function xR(t,e,n){var i=e?_R(t,e):t,r=e?bR(t,i,$O):t.style,o=t.type,a=i?i.textConfig:null,s=t.textContent,l=s?e?_R(s,e):s:null;if(r&&(n.isLegacy||CO(r,o,!!a,!!l))){n.isLegacy=!0;var u=DO(r,o,!e);!a&&u.textConfig&&(a=u.textConfig),!l&&u.textContent&&(l=u.textContent)}if(!e&&l){var h=l;!h.type&&(h.type="text")}var c=e?n[e]:n.normal;c.cfg=a,c.conOpt=l}function _R(t,e){return e?t?t[e]:null:t}function bR(t,e,n){var i=e&&e.style;return null==i&&n===$O&&t&&(i=t.styleEmphasis),i}function wR(t,e){var n=t&&t.name;return null!=n?n:"e\0\0"+e}function SR(t,e){var n=this.context,i=null!=t?n.newChildren[t]:null,r=null!=e?n.oldChildren[e]:null;vR(n.api,r,n.dataIndex,i,n.seriesModel,n.group)}function MR(t){var e=this.context,n=e.oldChildren[t];BO(n,bO(n).option,e.seriesModel)}function IR(t){return t&&(t.pathData||t.d)}var TR=So(),CR=T,DR=W,AR=function(){function t(){this._dragging=!1,this.animationThreshold=15}return t.prototype.render=function(t,e,n,i){var r=e.get("value"),o=e.get("status");if(this._axisModel=t,this._axisPointerModel=e,this._api=n,i||this._lastValue!==r||this._lastStatus!==o){this._lastValue=r,this._lastStatus=o;var a=this._group,s=this._handle;if(!o||"hide"===o)return a&&a.hide(),void(s&&s.hide());a&&a.show(),s&&s.show();var l={};this.makeElOption(l,r,t,e,n);var u=l.graphicKey;u!==this._lastGraphicKey&&this.clear(n),this._lastGraphicKey=u;var h=this._moveAnimation=this.determineAnimation(t,e);if(a){var c=H(kR,e,h);this.updatePointerEl(a,l,c),this.updateLabelEl(a,l,c,e)}else a=this._group=new Cr,this.createPointerEl(a,l,t,e),this.createLabelEl(a,l,t,e),n.getZr().add(a);RR(a,e,!0),this._renderHandle(r)}},t.prototype.remove=function(t){this.clear(t)},t.prototype.dispose=function(t){this.clear(t)},t.prototype.determineAnimation=function(t,e){var n=e.get("animation"),i=t.axis,r="category"===i.type,o=e.get("snap");if(!o&&!r)return!1;if("auto"===n||null==n){var a=this.animationThreshold;if(r&&i.getBandWidth()>a)return!0;if(o){var s=KM(t).seriesDataCount,l=i.getExtent();return Math.abs(l[0]-l[1])/s>a}return!1}return!0===n},t.prototype.makeElOption=function(t,e,n,i,r){},t.prototype.createPointerEl=function(t,e,n,i){var r=e.pointer;if(r){var o=TR(t).pointerEl=new Bh[r.type](CR(e.pointer));t.add(o)}},t.prototype.createLabelEl=function(t,e,n,i){if(e.label){var r=TR(t).labelEl=new ks(CR(e.label));t.add(r),PR(r,i)}},t.prototype.updatePointerEl=function(t,e,n){var i=TR(t).pointerEl;i&&e.pointer&&(i.setStyle(e.pointer.style),n(i,{shape:e.pointer.shape}))},t.prototype.updateLabelEl=function(t,e,n,i){var r=TR(t).labelEl;r&&(r.setStyle(e.label.style),n(r,{x:e.label.x,y:e.label.y}),PR(r,i))},t.prototype._renderHandle=function(t){if(!this._dragging&&this.updateHandleTransform){var e,n=this._axisPointerModel,i=this._api.getZr(),r=this._handle,o=n.getModel("handle"),a=n.get("status");if(!o.get("show")||!a||"hide"===a)return r&&i.remove(r),void(this._handle=null);this._handle||(e=!0,r=this._handle=Ph(o.get("icon"),{cursor:"move",draggable:!0,onmousemove:function(t){se(t.event)},onmousedown:DR(this._onHandleDragMove,this,0,0),drift:DR(this._onHandleDragMove,this),ondragend:DR(this._onHandleDragEnd,this)}),i.add(r)),RR(r,n,!1),r.setStyle(o.getItemStyle(null,["color","borderColor","borderWidth","opacity","shadowColor","shadowBlur","shadowOffsetX","shadowOffsetY"]));var s=o.get("size");Y(s)||(s=[s,s]),r.scaleX=s[0]/2,r.scaleY=s[1]/2,Ag(this,"_doDispatchAxisPointer",o.get("throttle")||0,"fixRate"),this._moveHandleToValue(t,e)}},t.prototype._moveHandleToValue=function(t,e){kR(this._axisPointerModel,!e&&this._moveAnimation,this._handle,OR(this.getHandleTransform(t,this._axisModel,this._axisPointerModel)))},t.prototype._onHandleDragMove=function(t,e){var n=this._handle;if(n){this._dragging=!0;var i=this.updateHandleTransform(OR(n),[t,e],this._axisModel,this._axisPointerModel);this._payloadInfo=i,n.stopAnimation(),n.attr(OR(i)),TR(n).lastProp=null,this._doDispatchAxisPointer()}},t.prototype._doDispatchAxisPointer=function(){if(this._handle){var t=this._payloadInfo,e=this._axisModel;this._api.dispatchAction({type:"updateAxisPointer",x:t.cursorPoint[0],y:t.cursorPoint[1],tooltipOption:t.tooltipOption,axesInfo:[{axisDim:e.axis.dim,axisIndex:e.componentIndex}]})}},t.prototype._onHandleDragEnd=function(){if(this._dragging=!1,this._handle){var t=this._axisPointerModel.get("value");this._moveHandleToValue(t),this._api.dispatchAction({type:"hideTip"})}},t.prototype.clear=function(t){this._lastValue=null,this._lastStatus=null;var e=t.getZr(),n=this._group,i=this._handle;e&&n&&(this._lastGraphicKey=null,n&&e.remove(n),i&&e.remove(i),this._group=null,this._handle=null,this._payloadInfo=null),kg(this,"_doDispatchAxisPointer")},t.prototype.doClear=function(){},t.prototype.buildLabel=function(t,e,n){return{x:t[n=n||0],y:t[1-n],width:e[n],height:e[1-n]}},t}();function kR(t,e,n,i){LR(TR(n).lastProp,i)||(TR(n).lastProp=i,e?rh(n,i,t):(n.stopAnimation(),n.attr(i)))}function LR(t,e){if(q(t)&&q(e)){var n=!0;return E(e,(function(e,i){n=n&&LR(t[i],e)})),!!n}return t===e}function PR(t,e){t[e.get(["label","show"])?"show":"hide"]()}function OR(t){return{x:t.x||0,y:t.y||0,rotation:t.rotation||0}}function RR(t,e,n){var i=e.get("z"),r=e.get("zlevel");t&&t.traverse((function(t){"group"!==t.type&&(null!=i&&(t.z=i),null!=r&&(t.zlevel=r),t.silent=n)}))}function NR(t){var e,n=t.get("type"),i=t.getModel(n+"Style");return"line"===n?(e=i.getLineStyle()).fill=null:"shadow"===n&&((e=i.getAreaStyle()).stroke=null),e}function ER(t,e,n,i,r){var o=zR(n.get("value"),e.axis,e.ecModel,n.get("seriesDataIndices"),{precision:n.get(["label","precision"]),formatter:n.get(["label","formatter"])}),a=n.getModel("label"),s=ip(a.get("padding")||0),l=a.getFont(),u=cr(o,l),h=r.position,c=u.width+s[1]+s[3],p=u.height+s[0]+s[2],d=r.align;"right"===d&&(h[0]-=c),"center"===d&&(h[0]-=c/2);var f=r.verticalAlign;"bottom"===f&&(h[1]-=p),"middle"===f&&(h[1]-=p/2),function(t,e,n,i){var r=i.getWidth(),o=i.getHeight();t[0]=Math.min(t[0]+e,r)-e,t[1]=Math.min(t[1]+n,o)-n,t[0]=Math.max(t[0],0),t[1]=Math.max(t[1],0)}(h,c,p,i);var g=a.get("backgroundColor");g&&"auto"!==g||(g=e.get(["axisLine","lineStyle","color"])),t.label={x:h[0],y:h[1],style:Uh(a,{text:o,font:l,fill:a.getTextColor(),padding:s,backgroundColor:g}),z2:10}}function zR(t,e,n,i,r){t=e.scale.parse(t);var o=e.scale.getLabel({value:t},{precision:r.precision}),a=r.formatter;if(a){var s={value:s_(e,{value:t}),axisDimension:e.dim,axisIndex:e.index,seriesData:[]};E(i,(function(t){var e=n.getSeriesByIndex(t.seriesIndex),i=t.dataIndexInside,r=e&&e.getDataParams(i);r&&s.seriesData.push(r)})),X(a)?o=a.replace("{value}",o):U(a)&&(o=a(s))}return o}function VR(t,e,n){var i=[1,0,0,1,0,0];return zi(i,i,n.rotation),Ei(i,i,n.position),Th([t.dataToCoord(e),(n.labelOffset||0)+(n.labelDirection||1)*(n.labelMargin||0)],i)}function BR(t,e,n,i,r,o){var a=GM.innerTextLayout(n.rotation,0,n.labelDirection);n.labelMargin=r.get(["label","margin"]),ER(e,i,r,o,{position:VR(i.axis,t,n),align:a.textAlign,verticalAlign:a.textVerticalAlign})}function FR(t,e,n){return{x1:t[n=n||0],y1:t[1-n],x2:e[n],y2:e[1-n]}}function GR(t,e,n){return{x:t[n=n||0],y:t[1-n],width:e[n],height:e[1-n]}}function WR(t,e,n,i,r,o){return{cx:t,cy:e,r0:n,r:i,startAngle:r,endAngle:o,clockwise:!0}}var HR=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.makeElOption=function(t,e,n,i,r){var o=n.axis,a=o.grid,s=i.get("type"),l=YR(a,o).getOtherAxis(o).getGlobalExtent(),u=o.toGlobalCoord(o.dataToCoord(e,!0));if(s&&"none"!==s){var h=NR(i),c=UR[s](o,u,l);c.style=h,t.graphicKey=c.type,t.pointer=c}BR(e,t,LM(a.model,n),n,i,r)},e.prototype.getHandleTransform=function(t,e,n){var i=LM(e.axis.grid.model,e,{labelInside:!1});i.labelMargin=n.get(["handle","margin"]);var r=VR(e.axis,t,i);return{x:r[0],y:r[1],rotation:i.rotation+(i.labelDirection<0?Math.PI:0)}},e.prototype.updateHandleTransform=function(t,e,n,i){var r=n.axis,o=r.grid,a=r.getGlobalExtent(!0),s=YR(o,r).getOtherAxis(r).getGlobalExtent(),l="x"===r.dim?0:1,u=[t.x,t.y];u[l]+=e[l],u[l]=Math.min(a[1],u[l]),u[l]=Math.max(a[0],u[l]);var h=(s[1]+s[0])/2,c=[h,h];c[l]=u[l];return{x:u[0],y:u[1],rotation:t.rotation,cursorPoint:c,tooltipOption:[{verticalAlign:"middle"},{align:"center"}][l]}},e}(AR);function YR(t,e){var n={};return n[e.dim+"AxisIndex"]=e.index,t.getCartesian(n)}var UR={line:function(t,e,n){return{type:"Line",subPixelOptimize:!0,shape:FR([e,n[0]],[e,n[1]],XR(t))}},shadow:function(t,e,n){var i=Math.max(1,t.getBandWidth()),r=n[1]-n[0];return{type:"Rect",shape:GR([e-i/2,n[0]],[i,r],XR(t))}}};function XR(t){return"x"===t.dim?0:1}var ZR=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.type="axisPointer",e.defaultOption={show:"auto",z:50,type:"line",snap:!1,triggerTooltip:!0,value:null,status:null,link:[],animation:null,animationDurationUpdate:200,lineStyle:{color:"#B9BEC9",width:1,type:"dashed"},shadowStyle:{color:"rgba(210,219,238,0.2)"},label:{show:!0,formatter:null,precision:"auto",margin:3,color:"#fff",padding:[5,7,5,7],backgroundColor:"auto",borderColor:null,borderWidth:0,borderRadius:3},handle:{show:!1,icon:"M10.7,11.9v-1.3H9.3v1.3c-4.9,0.3-8.8,4.4-8.8,9.4c0,5,3.9,9.1,8.8,9.4h1.3c4.9-0.3,8.8-4.4,8.8-9.4C19.5,16.3,15.6,12.2,10.7,11.9z M13.3,24.4H6.7v-1.2h6.6z M13.3,22H6.7v-1.2h6.6z M13.3,19.6H6.7v-1.2h6.6z",size:45,margin:50,color:"#333",shadowBlur:3,shadowColor:"#aaa",shadowOffsetX:0,shadowOffsetY:2,throttle:40}},e}(Tp),jR=So(),qR=E;function KR(t,e,n){if(!r.node){var i=e.getZr();jR(i).records||(jR(i).records={}),function(t,e){if(jR(t).initialized)return;function n(n,i){t.on(n,(function(n){var r=function(t){var e={showTip:[],hideTip:[]},n=function(i){var r=e[i.type];r?r.push(i):(i.dispatchAction=n,t.dispatchAction(i))};return{dispatchAction:n,pendings:e}}(e);qR(jR(t).records,(function(t){t&&i(t,n,r.dispatchAction)})),function(t,e){var n,i=t.showTip.length,r=t.hideTip.length;i?n=t.showTip[i-1]:r&&(n=t.hideTip[r-1]);n&&(n.dispatchAction=null,e.dispatchAction(n))}(r.pendings,e)}))}jR(t).initialized=!0,n("click",H(JR,"click")),n("mousemove",H(JR,"mousemove")),n("globalout",$R)}(i,e),(jR(i).records[t]||(jR(i).records[t]={})).handler=n}}function $R(t,e,n){t.handler("leave",null,n)}function JR(t,e,n,i){e.handler(t,n,i)}function QR(t,e){if(!r.node){var n=e.getZr();(jR(n).records||{})[t]&&(jR(n).records[t]=null)}}var tN=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n){var i=e.getComponent("tooltip"),r=t.get("triggerOn")||i&&i.get("triggerOn")||"mousemove|click";KR("axisPointer",n,(function(t,e,n){"none"!==r&&("leave"===t||r.indexOf(t)>=0)&&n({type:"updateAxisPointer",currTrigger:t,x:e&&e.offsetX,y:e&&e.offsetY})}))},e.prototype.remove=function(t,e){QR("axisPointer",e)},e.prototype.dispose=function(t,e){QR("axisPointer",e)},e.type="axisPointer",e}(gg);function eN(t,e){var n,i=[],r=t.seriesIndex;if(null==r||!(n=e.getSeriesByIndex(r)))return{point:[]};var o=n.getData(),a=wo(o,t);if(null==a||a<0||Y(a))return{point:[]};var s=o.getItemGraphicEl(a),l=n.coordinateSystem;if(n.getTooltipPosition)i=n.getTooltipPosition(a)||[];else if(l&&l.dataToPoint)if(t.isStacked){var u=l.getBaseAxis(),h=l.getOtherAxis(u).dim,c=u.dim,p="x"===h||"radius"===h?1:0,d=o.mapDimension(c),f=[];f[p]=o.get(d,a),f[1-p]=o.get(o.getCalculationInfo("stackResultDimension"),a),i=l.dataToPoint(f)||[]}else i=l.dataToPoint(o.getValues(z(l.dimensions,(function(t){return o.mapDimension(t)})),a))||[];else if(s){var g=s.getBoundingRect().clone();g.applyTransform(s.transform),i=[g.x+g.width/2,g.y+g.height/2]}return{point:i,el:s}}var nN=So();function iN(t,e,n){var i=t.currTrigger,r=[t.x,t.y],o=t,a=t.dispatchAction||W(n.dispatchAction,n),s=e.getComponent("axisPointer").coordSysAxesInfo;if(s){lN(r)&&(r=eN({seriesIndex:o.seriesIndex,dataIndex:o.dataIndex},e).point);var l=lN(r),u=o.axesInfo,h=s.axesInfo,c="leave"===i||lN(r),p={},d={},f={list:[],map:{}},g={showPointer:H(oN,d),showTooltip:H(aN,f)};E(s.coordSysMap,(function(t,e){var n=l||t.containPoint(r);E(s.coordSysAxesInfo[e],(function(t,e){var i=t.axis,o=function(t,e){for(var n=0;n<(t||[]).length;n++){var i=t[n];if(e.axis.dim===i.axisDim&&e.axis.model.componentIndex===i.axisIndex)return i}}(u,t);if(!c&&n&&(!u||o)){var a=o&&o.value;null!=a||l||(a=i.pointToData(r)),null!=a&&rN(t,a,g,!1,p)}}))}));var y={};return E(h,(function(t,e){var n=t.linkGroup;n&&!d[e]&&E(n.axesInfo,(function(e,i){var r=d[i];if(e!==t&&r){var o=r.value;n.mapper&&(o=t.axis.scale.parse(n.mapper(o,sN(e),sN(t)))),y[t.key]=o}}))})),E(y,(function(t,e){rN(h[e],t,g,!0,p)})),function(t,e,n){var i=n.axesInfo=[];E(e,(function(e,n){var r=e.axisPointerModel.option,o=t[n];o?(!e.useHandle&&(r.status="show"),r.value=o.value,r.seriesDataIndices=(o.payloadBatch||[]).slice()):!e.useHandle&&(r.status="hide"),"show"===r.status&&i.push({axisDim:e.axis.dim,axisIndex:e.axis.model.componentIndex,value:r.value})}))}(d,h,p),function(t,e,n,i){if(lN(e)||!t.list.length)return void i({type:"hideTip"});var r=((t.list[0].dataByAxis[0]||{}).seriesDataIndices||[])[0]||{};i({type:"showTip",escapeConnect:!0,x:e[0],y:e[1],tooltipOption:n.tooltipOption,position:n.position,dataIndexInside:r.dataIndexInside,dataIndex:r.dataIndex,seriesIndex:r.seriesIndex,dataByCoordSys:t.list})}(f,r,t,a),function(t,e,n){var i=n.getZr(),r="axisPointerLastHighlights",o=nN(i)[r]||{},a=nN(i)[r]={};E(t,(function(t,e){var n=t.axisPointerModel.option;"show"===n.status&&E(n.seriesDataIndices,(function(t){var e=t.seriesIndex+" | "+t.dataIndex;a[e]=t}))}));var s=[],l=[];E(o,(function(t,e){!a[e]&&l.push(t)})),E(a,(function(t,e){!o[e]&&s.push(t)})),l.length&&n.dispatchAction({type:"downplay",escapeConnect:!0,notBlur:!0,batch:l}),s.length&&n.dispatchAction({type:"highlight",escapeConnect:!0,notBlur:!0,batch:s})}(h,0,n),p}}function rN(t,e,n,i,r){var o=t.axis;if(!o.scale.isBlank()&&o.containData(e))if(t.involveSeries){var a=function(t,e){var n=e.axis,i=n.dim,r=t,o=[],a=Number.MAX_VALUE,s=-1;return E(e.seriesModels,(function(e,l){var u,h,c=e.getData().mapDimensionsAll(i);if(e.getAxisTooltipData){var p=e.getAxisTooltipData(c,t,n);h=p.dataIndices,u=p.nestestValue}else{if(!(h=e.getData().indicesOfNearest(c[0],t,"category"===n.type?.5:null)).length)return;u=e.getData().get(c[0],h[0])}if(null!=u&&isFinite(u)){var d=t-u,f=Math.abs(d);f<=a&&((f=0&&s<0)&&(a=f,s=d,r=u,o.length=0),E(h,(function(t){o.push({seriesIndex:e.seriesIndex,dataIndexInside:t,dataIndex:e.getData().getRawIndex(t)})})))}})),{payloadBatch:o,snapToValue:r}}(e,t),s=a.payloadBatch,l=a.snapToValue;s[0]&&null==r.seriesIndex&&A(r,s[0]),!i&&t.snap&&o.containData(l)&&null!=l&&(e=l),n.showPointer(t,e,s),n.showTooltip(t,a,l)}else n.showPointer(t,e)}function oN(t,e,n,i){t[e.key]={value:n,payloadBatch:i}}function aN(t,e,n,i){var r=n.payloadBatch,o=e.axis,a=o.model,s=e.axisPointerModel;if(e.triggerTooltip&&r.length){var l=e.coordSys.model,u=JM(l),h=t.map[u];h||(h=t.map[u]={coordSysId:l.id,coordSysIndex:l.componentIndex,coordSysType:l.type,coordSysMainType:l.mainType,dataByAxis:[]},t.list.push(h)),h.dataByAxis.push({axisDim:o.dim,axisIndex:a.componentIndex,axisType:a.type,axisId:a.id,value:i,valueLabelOpt:{precision:s.get(["label","precision"]),formatter:s.get(["label","formatter"])},seriesDataIndices:r.slice()})}}function sN(t){var e=t.axis.model,n={},i=n.axisDim=t.axis.dim;return n.axisIndex=n[i+"AxisIndex"]=e.componentIndex,n.axisName=n[i+"AxisName"]=e.name,n.axisId=n[i+"AxisId"]=e.id,n}function lN(t){return!t||null==t[0]||isNaN(t[0])||null==t[1]||isNaN(t[1])}function uN(t){tI.registerAxisPointerClass("CartesianAxisPointer",HR),t.registerComponentModel(ZR),t.registerComponentView(tN),t.registerPreprocessor((function(t){if(t){(!t.axisPointer||0===t.axisPointer.length)&&(t.axisPointer={});var e=t.axisPointer.link;e&&!Y(e)&&(t.axisPointer.link=[e])}})),t.registerProcessor(t.PRIORITY.PROCESSOR.STATISTIC,(function(t,e){t.getComponent("axisPointer").coordSysAxesInfo=ZM(t,e)})),t.registerAction({type:"updateAxisPointer",event:"updateAxisPointer",update:":updateAxisPointer"},iN)}var hN=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.makeElOption=function(t,e,n,i,r){var o=n.axis;"angle"===o.dim&&(this.animationThreshold=Math.PI/18);var a=o.polar,s=a.getOtherAxis(o).getExtent(),l=o.dataToCoord(e),u=i.get("type");if(u&&"none"!==u){var h=NR(i),c=cN[u](o,a,l,s);c.style=h,t.graphicKey=c.type,t.pointer=c}var p=function(t,e,n,i,r){var o=e.axis,a=o.dataToCoord(t),s=i.getAngleAxis().getExtent()[0];s=s/180*Math.PI;var l,u,h,c=i.getRadiusAxis().getExtent();if("radius"===o.dim){var p=[1,0,0,1,0,0];zi(p,p,s),Ei(p,p,[i.cx,i.cy]),l=Th([a,-r],p);var d=e.getModel("axisLabel").get("rotate")||0,f=GM.innerTextLayout(s,d*Math.PI/180,-1);u=f.textAlign,h=f.textVerticalAlign}else{var g=c[1];l=i.coordToPoint([g+r,a]);var y=i.cx,v=i.cy;u=Math.abs(l[0]-y)/g<.3?"center":l[0]>y?"left":"right",h=Math.abs(l[1]-v)/g<.3?"middle":l[1]>v?"top":"bottom"}return{position:l,align:u,verticalAlign:h}}(e,n,0,a,i.get(["label","margin"]));ER(t,n,i,r,p)},e}(AR);var cN={line:function(t,e,n,i){return"angle"===t.dim?{type:"Line",shape:FR(e.coordToPoint([i[0],n]),e.coordToPoint([i[1],n]))}:{type:"Circle",shape:{cx:e.cx,cy:e.cy,r:n}}},shadow:function(t,e,n,i){var r=Math.max(1,t.getBandWidth()),o=Math.PI/180;return"angle"===t.dim?{type:"Sector",shape:WR(e.cx,e.cy,i[0],i[1],(-n-r/2)*o,(r/2-n)*o)}:{type:"Sector",shape:WR(e.cx,e.cy,n-r/2,n+r/2,0,2*Math.PI)}}},pN=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.findAxisModel=function(t){var e;return this.ecModel.eachComponent(t,(function(t){t.getCoordSysModel()===this&&(e=t)}),this),e},e.type="polar",e.dependencies=["radiusAxis","angleAxis"],e.defaultOption={z:0,center:["50%","50%"],radius:"80%"},e}(Tp),dN=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.getCoordSysModel=function(){return this.getReferringComponents("polar",Co).models[0]},e.type="polarAxis",e}(Tp);R(dN,p_);var fN=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.type="angleAxis",e}(dN),gN=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.type="radiusAxis",e}(dN),yN=function(t){function e(e,n){return t.call(this,"radius",e,n)||this}return n(e,t),e.prototype.pointToData=function(t,e){return this.polar.pointToData(t,e)["radius"===this.dim?0:1]},e}(H_);yN.prototype.dataToRadius=H_.prototype.dataToCoord,yN.prototype.radiusToData=H_.prototype.coordToData;var vN=So(),mN=function(t){function e(e,n){return t.call(this,"angle",e,n||[0,360])||this}return n(e,t),e.prototype.pointToData=function(t,e){return this.polar.pointToData(t,e)["radius"===this.dim?0:1]},e.prototype.calculateCategoryInterval=function(){var t=this,e=t.getLabelModel(),n=t.scale,i=n.getExtent(),r=n.count();if(i[1]-i[0]<1)return 0;var o=i[0],a=t.dataToCoord(o+1)-t.dataToCoord(o),s=Math.abs(a),l=cr(null==o?"":o+"",e.getFont(),"center","top"),u=Math.max(l.height,7)/s;isNaN(u)&&(u=1/0);var h=Math.max(0,Math.floor(u)),c=vN(t.model),p=c.lastAutoInterval,d=c.lastTickCount;return null!=p&&null!=d&&Math.abs(p-h)<=1&&Math.abs(d-r)<=1&&p>h?h=p:(c.lastTickCount=r,c.lastAutoInterval=h),h},e}(H_);mN.prototype.dataToAngle=H_.prototype.dataToCoord,mN.prototype.angleToData=H_.prototype.coordToData;var xN=["radius","angle"],_N=function(){function t(t){this.dimensions=xN,this.type="polar",this.cx=0,this.cy=0,this._radiusAxis=new yN,this._angleAxis=new mN,this.axisPointerEnabled=!0,this.name=t||"",this._radiusAxis.polar=this._angleAxis.polar=this}return t.prototype.containPoint=function(t){var e=this.pointToCoord(t);return this._radiusAxis.contain(e[0])&&this._angleAxis.contain(e[1])},t.prototype.containData=function(t){return this._radiusAxis.containData(t[0])&&this._angleAxis.containData(t[1])},t.prototype.getAxis=function(t){return this["_"+t+"Axis"]},t.prototype.getAxes=function(){return[this._radiusAxis,this._angleAxis]},t.prototype.getAxesByScale=function(t){var e=[],n=this._angleAxis,i=this._radiusAxis;return n.scale.type===t&&e.push(n),i.scale.type===t&&e.push(i),e},t.prototype.getAngleAxis=function(){return this._angleAxis},t.prototype.getRadiusAxis=function(){return this._radiusAxis},t.prototype.getOtherAxis=function(t){var e=this._angleAxis;return t===e?this._radiusAxis:e},t.prototype.getBaseAxis=function(){return this.getAxesByScale("ordinal")[0]||this.getAxesByScale("time")[0]||this.getAngleAxis()},t.prototype.getTooltipAxes=function(t){var e=null!=t&&"auto"!==t?this.getAxis(t):this.getBaseAxis();return{baseAxes:[e],otherAxes:[this.getOtherAxis(e)]}},t.prototype.dataToPoint=function(t,e){return this.coordToPoint([this._radiusAxis.dataToRadius(t[0],e),this._angleAxis.dataToAngle(t[1],e)])},t.prototype.pointToData=function(t,e){var n=this.pointToCoord(t);return[this._radiusAxis.radiusToData(n[0],e),this._angleAxis.angleToData(n[1],e)]},t.prototype.pointToCoord=function(t){var e=t[0]-this.cx,n=t[1]-this.cy,i=this.getAngleAxis(),r=i.getExtent(),o=Math.min(r[0],r[1]),a=Math.max(r[0],r[1]);i.inverse?o=a-360:a=o+360;var s=Math.sqrt(e*e+n*n);e/=s,n/=s;for(var l=Math.atan2(-n,e)/Math.PI*180,u=la;)l+=360*u;return[s,l]},t.prototype.coordToPoint=function(t){var e=t[0],n=t[1]/180*Math.PI;return[Math.cos(n)*e+this.cx,-Math.sin(n)*e+this.cy]},t.prototype.getArea=function(){var t=this.getAngleAxis(),e=this.getRadiusAxis().getExtent().slice();e[0]>e[1]&&e.reverse();var n=t.getExtent(),i=Math.PI/180;return{cx:this.cx,cy:this.cy,r0:e[0],r:e[1],startAngle:-n[0]*i,endAngle:-n[1]*i,clockwise:t.inverse,contain:function(t,e){var n=t-this.cx,i=e-this.cy,r=n*n+i*i-1e-4,o=this.r,a=this.r0;return r<=o*o&&r>=a*a}}},t.prototype.convertToPixel=function(t,e,n){return bN(e)===this?this.dataToPoint(n):null},t.prototype.convertFromPixel=function(t,e,n){return bN(e)===this?this.pointToData(n):null},t}();function bN(t){var e=t.seriesModel,n=t.polarModel;return n&&n.coordinateSystem||e&&e.coordinateSystem}function wN(t,e){var n=this,i=n.getAngleAxis(),r=n.getRadiusAxis();if(i.scale.setExtent(1/0,-1/0),r.scale.setExtent(1/0,-1/0),t.eachSeries((function(t){if(t.coordinateSystem===n){var e=t.getData();E(c_(e,"radius"),(function(t){r.scale.unionExtentFromData(e,t)})),E(c_(e,"angle"),(function(t){i.scale.unionExtentFromData(e,t)}))}})),r_(i.scale,i.model),r_(r.scale,r.model),"category"===i.type&&!i.onBand){var o=i.getExtent(),a=360/i.scale.count();i.inverse?o[1]+=a:o[1]-=a,i.setExtent(o[0],o[1])}}function SN(t,e){if(t.type=e.get("type"),t.scale=o_(e),t.onBand=e.get("boundaryGap")&&"category"===t.type,t.inverse=e.get("inverse"),function(t){return"angleAxis"===t.mainType}(e)){t.inverse=t.inverse!==e.get("clockwise");var n=e.get("startAngle");t.setExtent(n,n+(t.inverse?-360:360))}e.axis=t,t.model=e}var MN={dimensions:xN,create:function(t,e){var n=[];return t.eachComponent("polar",(function(t,i){var r=new _N(i+"");r.update=wN;var o=r.getRadiusAxis(),a=r.getAngleAxis(),s=t.findAxisModel("radiusAxis"),l=t.findAxisModel("angleAxis");SN(o,s),SN(a,l),function(t,e,n){var i=e.get("center"),r=n.getWidth(),o=n.getHeight();t.cx=Er(i[0],r),t.cy=Er(i[1],o);var a=t.getRadiusAxis(),s=Math.min(r,o)/2,l=e.get("radius");null==l?l=[0,"100%"]:Y(l)||(l=[0,l]);var u=[Er(l[0],s),Er(l[1],s)];a.inverse?a.setExtent(u[1],u[0]):a.setExtent(u[0],u[1])}(r,t,e),n.push(r),t.coordinateSystem=r,r.model=t})),t.eachSeries((function(t){if("polar"===t.get("coordinateSystem")){var e=t.getReferringComponents("polar",Co).models[0];0,t.coordinateSystem=e.coordinateSystem}})),n}},IN=["axisLine","axisLabel","axisTick","minorTick","splitLine","minorSplitLine","splitArea"];function TN(t,e,n){e[1]>e[0]&&(e=e.slice().reverse());var i=t.coordToPoint([e[0],n]),r=t.coordToPoint([e[1],n]);return{x1:i[0],y1:i[1],x2:r[0],y2:r[1]}}function CN(t){return t.getRadiusAxis().inverse?0:1}function DN(t){var e=t[0],n=t[t.length-1];e&&n&&Math.abs(Math.abs(e.coord-n.coord)-360)<1e-4&&t.pop()}var AN=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.axisPointerClass="PolarAxisPointer",n}return n(e,t),e.prototype.render=function(t,e){if(this.group.removeAll(),t.get("show")){var n=t.axis,i=n.polar,r=i.getRadiusAxis().getExtent(),o=n.getTicksCoords(),a=n.getMinorTicksCoords(),s=z(n.getViewLabels(),(function(t){t=T(t);var e=n.scale,i="ordinal"===e.type?e.getRawOrdinalNumber(t.tickValue):t.tickValue;return t.coord=n.dataToCoord(i),t}));DN(s),DN(o),E(IN,(function(e){!t.get([e,"show"])||n.scale.isBlank()&&"axisLine"!==e||kN[e](this.group,t,i,o,a,r,s)}),this)}},e.type="angleAxis",e}(tI),kN={axisLine:function(t,e,n,i,r,o){var a,s=e.getModel(["axisLine","lineStyle"]),l=CN(n),u=l?0:1;(a=0===o[u]?new hu({shape:{cx:n.cx,cy:n.cy,r:o[l]},style:s.getLineStyle(),z2:1,silent:!0}):new Au({shape:{cx:n.cx,cy:n.cy,r:o[l],r0:o[u]},style:s.getLineStyle(),z2:1,silent:!0})).style.fill=null,t.add(a)},axisTick:function(t,e,n,i,r,o){var a=e.getModel("axisTick"),s=(a.get("inside")?-1:1)*a.get("length"),l=o[CN(n)],u=z(i,(function(t){return new zu({shape:TN(n,[l,l+s],t.coord)})}));t.add(wh(u,{style:k(a.getModel("lineStyle").getLineStyle(),{stroke:e.get(["axisLine","lineStyle","color"])})}))},minorTick:function(t,e,n,i,r,o){if(r.length){for(var a=e.getModel("axisTick"),s=e.getModel("minorTick"),l=(a.get("inside")?-1:1)*s.get("length"),u=o[CN(n)],h=[],c=0;cf?"left":"right",v=Math.abs(d[1]-g)/p<.3?"middle":d[1]>g?"top":"bottom";if(s&&s[c]){var m=s[c];q(m)&&m.textStyle&&(a=new dc(m.textStyle,l,l.ecModel))}var x=new ks({silent:GM.isLabelSilent(e),style:Uh(a,{x:d[0],y:d[1],fill:a.getTextColor()||e.get(["axisLine","lineStyle","color"]),text:i.formattedLabel,align:y,verticalAlign:v})});if(t.add(x),h){var _=GM.makeAxisEventDataBase(e);_.targetType="axisLabel",_.value=i.rawLabel,Hs(x).eventData=_}}),this)},splitLine:function(t,e,n,i,r,o){var a=e.getModel("splitLine").getModel("lineStyle"),s=a.get("color"),l=0;s=s instanceof Array?s:[s];for(var u=[],h=0;h=0?"p":"n",T=_;m&&(i[s][M]||(i[s][M]={p:_,n:_}),T=i[s][M][I]);var C=void 0,D=void 0,A=void 0,k=void 0;if("radius"===c.dim){var L=c.dataToCoord(S)-_,P=o.dataToCoord(M);Math.abs(L)=k})}}}))}var VN={startAngle:90,clockwise:!0,splitNumber:12,axisLabel:{rotate:0}},BN={splitNumber:5},FN=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.type="polar",e}(gg);function GN(t,e){e=e||{};var n=t.coordinateSystem,i=t.axis,r={},o=i.position,a=i.orient,s=n.getRect(),l=[s.x,s.x+s.width,s.y,s.y+s.height],u={horizontal:{top:l[2],bottom:l[3]},vertical:{left:l[0],right:l[1]}};r.position=["vertical"===a?u.vertical[o]:l[0],"horizontal"===a?u.horizontal[o]:l[3]];r.rotation=Math.PI/2*{horizontal:0,vertical:1}[a];r.labelDirection=r.tickDirection=r.nameDirection={top:-1,bottom:1,right:1,left:-1}[o],t.get(["axisTick","inside"])&&(r.tickDirection=-r.tickDirection),it(e.labelInside,t.get(["axisLabel","inside"]))&&(r.labelDirection=-r.labelDirection);var h=e.rotate;return null==h&&(h=t.get(["axisLabel","rotate"])),r.labelRotation="top"===o?-h:h,r.z2=1,r}var WN=["axisLine","axisTickLabel","axisName"],HN=["splitArea","splitLine"],YN=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.axisPointerClass="SingleAxisPointer",n}return n(e,t),e.prototype.render=function(e,n,i,r){var o=this.group;o.removeAll();var a=this._axisGroup;this._axisGroup=new Cr;var s=GN(e),l=new GM(e,s);E(WN,l.add,l),o.add(this._axisGroup),o.add(l.getGroup()),E(HN,(function(t){e.get([t,"show"])&&UN[t](this,this.group,this._axisGroup,e)}),this),Ah(a,this._axisGroup,e),t.prototype.render.call(this,e,n,i,r)},e.prototype.remove=function(){iI(this)},e.type="singleAxis",e}(tI),UN={splitLine:function(t,e,n,i){var r=i.axis;if(!r.scale.isBlank()){var o=i.getModel("splitLine"),a=o.getModel("lineStyle"),s=a.get("color");s=s instanceof Array?s:[s];for(var l=i.coordinateSystem.getRect(),u=r.isHorizontal(),h=[],c=0,p=r.getTicksCoords({tickModel:o}),d=[],f=[],g=0;g=e.y&&t[1]<=e.y+e.height:n.contain(n.toLocalCoord(t[1]))&&t[0]>=e.y&&t[0]<=e.y+e.height},t.prototype.pointToData=function(t){var e=this.getAxis();return[e.coordToData(e.toLocalCoord(t["horizontal"===e.orient?0:1]))]},t.prototype.dataToPoint=function(t){var e=this.getAxis(),n=this.getRect(),i=[],r="horizontal"===e.orient?0:1;return t instanceof Array&&(t=t[0]),i[r]=e.toGlobalCoord(e.dataToCoord(+t)),i[1-r]=0===r?n.y+n.height/2:n.x+n.width/2,i},t.prototype.convertToPixel=function(t,e,n){return KN(e)===this?this.dataToPoint(n):null},t.prototype.convertFromPixel=function(t,e,n){return KN(e)===this?this.pointToData(n):null},t}();function KN(t){var e=t.seriesModel,n=t.singleAxisModel;return n&&n.coordinateSystem||e&&e.coordinateSystem}var $N={create:function(t,e){var n=[];return t.eachComponent("singleAxis",(function(i,r){var o=new qN(i,t,e);o.name="single_"+r,o.resize(i,e),i.coordinateSystem=o,n.push(o)})),t.eachSeries((function(t){if("singleAxis"===t.get("coordinateSystem")){var e=t.getReferringComponents("singleAxis",Co).models[0];t.coordinateSystem=e&&e.coordinateSystem}})),n},dimensions:jN},JN=["x","y"],QN=["width","height"],tE=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.makeElOption=function(t,e,n,i,r){var o=n.axis,a=o.coordinateSystem,s=iE(a,1-nE(o)),l=a.dataToPoint(e)[0],u=i.get("type");if(u&&"none"!==u){var h=NR(i),c=eE[u](o,l,s);c.style=h,t.graphicKey=c.type,t.pointer=c}BR(e,t,GN(n),n,i,r)},e.prototype.getHandleTransform=function(t,e,n){var i=GN(e,{labelInside:!1});i.labelMargin=n.get(["handle","margin"]);var r=VR(e.axis,t,i);return{x:r[0],y:r[1],rotation:i.rotation+(i.labelDirection<0?Math.PI:0)}},e.prototype.updateHandleTransform=function(t,e,n,i){var r=n.axis,o=r.coordinateSystem,a=nE(r),s=iE(o,a),l=[t.x,t.y];l[a]+=e[a],l[a]=Math.min(s[1],l[a]),l[a]=Math.max(s[0],l[a]);var u=iE(o,1-a),h=(u[1]+u[0])/2,c=[h,h];return c[a]=l[a],{x:l[0],y:l[1],rotation:t.rotation,cursorPoint:c,tooltipOption:{verticalAlign:"middle"}}},e}(AR),eE={line:function(t,e,n){return{type:"Line",subPixelOptimize:!0,shape:FR([e,n[0]],[e,n[1]],nE(t))}},shadow:function(t,e,n){var i=t.getBandWidth(),r=n[1]-n[0];return{type:"Rect",shape:GR([e-i/2,n[0]],[i,r],nE(t))}}};function nE(t){return t.isHorizontal()?0:1}function iE(t,e){var n=t.getRect();return[n[JN[e]],n[JN[e]]+n[QN[e]]]}var rE=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.type="single",e}(gg);var oE=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.init=function(e,n,i){var r=Sp(e);t.prototype.init.apply(this,arguments),aE(e,r)},e.prototype.mergeOption=function(e){t.prototype.mergeOption.apply(this,arguments),aE(this.option,e)},e.prototype.getCellSize=function(){return this.option.cellSize},e.type="calendar",e.defaultOption={z:2,left:80,top:60,cellSize:20,orient:"horizontal",splitLine:{show:!0,lineStyle:{color:"#000",width:1,type:"solid"}},itemStyle:{color:"#fff",borderWidth:1,borderColor:"#ccc"},dayLabel:{show:!0,firstDay:0,position:"start",margin:"50%",color:"#000"},monthLabel:{show:!0,position:"start",margin:5,align:"center",formatter:null,color:"#000"},yearLabel:{show:!0,position:null,margin:30,formatter:null,color:"#ccc",fontFamily:"sans-serif",fontWeight:"bolder",fontSize:20}},e}(Tp);function aE(t,e){var n,i=t.cellSize;1===(n=Y(i)?i:t.cellSize=[i,i]).length&&(n[1]=n[0]);var r=z([0,1],(function(t){return function(t,e){return null!=t[yp[e][0]]||null!=t[yp[e][1]]&&null!=t[yp[e][2]]}(e,t)&&(n[t]="auto"),null!=n[t]&&"auto"!==n[t]}));wp(t,e,{type:"box",ignoreSize:r})}var sE=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n){var i=this.group;i.removeAll();var r=t.coordinateSystem,o=r.getRangeInfo(),a=r.getOrient(),s=e.getLocaleModel();this._renderDayRect(t,o,i),this._renderLines(t,o,a,i),this._renderYearText(t,o,a,i),this._renderMonthText(t,s,a,i),this._renderWeekText(t,s,o,a,i)},e.prototype._renderDayRect=function(t,e,n){for(var i=t.coordinateSystem,r=t.getModel("itemStyle").getItemStyle(),o=i.getCellWidth(),a=i.getCellHeight(),s=e.start.time;s<=e.end.time;s=i.getNextNDay(s,1).time){var l=i.dataToRect([s],!1).tl,u=new Cs({shape:{x:l[0],y:l[1],width:o,height:a},cursor:"default",style:r});n.add(u)}},e.prototype._renderLines=function(t,e,n,i){var r=this,o=t.coordinateSystem,a=t.getModel(["splitLine","lineStyle"]).getLineStyle(),s=t.get(["splitLine","show"]),l=a.lineWidth;this._tlpoints=[],this._blpoints=[],this._firstDayOfMonth=[],this._firstDayPoints=[];for(var u=e.start,h=0;u.time<=e.end.time;h++){p(u.formatedDate),0===h&&(u=o.getDateInfo(e.start.y+"-"+e.start.m));var c=u.date;c.setMonth(c.getMonth()+1),u=o.getDateInfo(c)}function p(e){r._firstDayOfMonth.push(o.getDateInfo(e)),r._firstDayPoints.push(o.dataToRect([e],!1).tl);var l=r._getLinePointsOfOneWeek(t,e,n);r._tlpoints.push(l[0]),r._blpoints.push(l[l.length-1]),s&&r._drawSplitline(l,a,i)}p(o.getNextNDay(e.end.time,1).formatedDate),s&&this._drawSplitline(r._getEdgesPoints(r._tlpoints,l,n),a,i),s&&this._drawSplitline(r._getEdgesPoints(r._blpoints,l,n),a,i)},e.prototype._getEdgesPoints=function(t,e,n){var i=[t[0].slice(),t[t.length-1].slice()],r="horizontal"===n?0:1;return i[0][r]=i[0][r]-e/2,i[1][r]=i[1][r]+e/2,i},e.prototype._drawSplitline=function(t,e,n){var i=new Ru({z2:20,shape:{points:t},style:e});n.add(i)},e.prototype._getLinePointsOfOneWeek=function(t,e,n){for(var i=t.coordinateSystem,r=i.getDateInfo(e),o=[],a=0;a<7;a++){var s=i.getNextNDay(r.time,a),l=i.dataToRect([s.time],!1);o[2*s.day]=l.tl,o[2*s.day+1]=l["horizontal"===n?"bl":"tr"]}return o},e.prototype._formatterLabel=function(t,e){return X(t)&&t?(n=t,E(e,(function(t,e){n=n.replace("{"+e+"}",i?ap(t):t)})),n):U(t)?t(e):e.nameMap;var n,i},e.prototype._yearTextPositionControl=function(t,e,n,i,r){var o=e[0],a=e[1],s=["center","bottom"];"bottom"===i?(a+=r,s=["center","top"]):"left"===i?o-=r:"right"===i?(o+=r,s=["center","top"]):a-=r;var l=0;return"left"!==i&&"right"!==i||(l=Math.PI/2),{rotation:l,x:o,y:a,style:{align:s[0],verticalAlign:s[1]}}},e.prototype._renderYearText=function(t,e,n,i){var r=t.getModel("yearLabel");if(r.get("show")){var o=r.get("margin"),a=r.get("position");a||(a="horizontal"!==n?"top":"left");var s=[this._tlpoints[this._tlpoints.length-1],this._blpoints[0]],l=(s[0][0]+s[1][0])/2,u=(s[0][1]+s[1][1])/2,h="horizontal"===n?0:1,c={top:[l,s[h][1]],bottom:[l,s[1-h][1]],left:[s[1-h][0],u],right:[s[h][0],u]},p=e.start.y;+e.end.y>+e.start.y&&(p=p+"-"+e.end.y);var d=r.get("formatter"),f={start:e.start.y,end:e.end.y,nameMap:p},g=this._formatterLabel(d,f),y=new ks({z2:30,style:Uh(r,{text:g})});y.attr(this._yearTextPositionControl(y,c[a],n,a,o)),i.add(y)}},e.prototype._monthTextPositionControl=function(t,e,n,i,r){var o="left",a="top",s=t[0],l=t[1];return"horizontal"===n?(l+=r,e&&(o="center"),"start"===i&&(a="bottom")):(s+=r,e&&(a="middle"),"start"===i&&(o="right")),{x:s,y:l,align:o,verticalAlign:a}},e.prototype._renderMonthText=function(t,e,n,i){var r=t.getModel("monthLabel");if(r.get("show")){var o=r.get("nameMap"),a=r.get("margin"),s=r.get("position"),l=r.get("align"),u=[this._tlpoints,this._blpoints];o&&!X(o)||(o&&(e=Mc(o)||e),o=e.get(["time","monthAbbr"])||[]);var h="start"===s?0:1,c="horizontal"===n?0:1;a="start"===s?-a:a;for(var p="center"===l,d=0;d=i.start.time&&n.timea.end.time&&t.reverse(),t},t.prototype._getRangeInfo=function(t){var e,n=[this.getDateInfo(t[0]),this.getDateInfo(t[1])];n[0].time>n[1].time&&(e=!0,n.reverse());var i=Math.floor(n[1].time/lE)-Math.floor(n[0].time/lE)+1,r=new Date(n[0].time),o=r.getDate(),a=n[1].date.getDate();r.setDate(o+i-1);var s=r.getDate();if(s!==a)for(var l=r.getTime()-n[1].time>0?1:-1;(s=r.getDate())!==a&&(r.getTime()-n[1].time)*l>0;)i-=l,r.setDate(s-l);var u=Math.floor((i+n[0].day+6)/7),h=e?1-u:u-1;return e&&n.reverse(),{range:[n[0].formatedDate,n[1].formatedDate],start:n[0],end:n[1],allDay:i,weeks:u,nthWeek:h,fweek:n[0].day,lweek:n[1].day}},t.prototype._getDateByWeeksAndDay=function(t,e,n){var i=this._getRangeInfo(n);if(t>i.weeks||0===t&&ei.lweek)return null;var r=7*(t-1)-i.fweek+e,o=new Date(i.start.time);return o.setDate(+i.start.d+r),this.getDateInfo(o)},t.create=function(e,n){var i=[];return e.eachComponent("calendar",(function(r){var o=new t(r,e,n);i.push(o),r.coordinateSystem=o})),e.eachSeries((function(t){"calendar"===t.get("coordinateSystem")&&(t.coordinateSystem=i[t.get("calendarIndex")||0])})),i},t.dimensions=["time","value"],t}();function hE(t){var e=t.calendarModel,n=t.seriesModel;return e?e.coordinateSystem:n?n.coordinateSystem:null}function cE(t,e){var n;return E(e,(function(e){null!=t[e]&&"auto"!==t[e]&&(n=!0)})),n}var pE=["transition","enterFrom","leaveTo"],dE=pE.concat(["enterAnimation","updateAnimation","leaveAnimation"]);function fE(t,e,n){if(n&&(!t[n]&&e[n]&&(t[n]={}),t=t[n],e=e[n]),t&&e)for(var i=n?pE:dE,r=0;r=0;l--){var p,d,f;if(f=null!=(d=xo((p=n[l]).id,null))?r.get(d):null){var g=f.parent,y=(c=vE(g),{}),v=_p(f,p,g===i?{width:o,height:a}:{width:c.width,height:c.height},null,{hv:p.hv,boundingMode:p.bounding},y);if(!vE(f).isNew&&v){for(var m=p.transition,x={},_=0;_=0)?x[b]=w:f[b]=w}rh(f,x,t,0)}else f.attr(y)}}},e.prototype._clear=function(){var t=this,e=this._elMap;e.each((function(n){bE(n,vE(n).option,e,t._lastGraphicModel)})),this._elMap=ft()},e.prototype.dispose=function(){this._clear()},e.type="graphic",e}(gg);function xE(t){var e=mt(yE,t)?yE[t]:mh(t);var n=new e({});return vE(n).type=t,n}function _E(t,e,n,i){var r=xE(n);return e.add(r),i.set(t,r),vE(r).id=t,vE(r).isNew=!0,r}function bE(t,e,n,i){t&&t.parent&&("group"===t.type&&t.traverse((function(t){bE(t,e,n,i)})),BO(t,e,i),n.removeKey(vE(t).id))}function wE(t,e,n,i){t.isGroup||E([["cursor",da.prototype.cursor],["zlevel",i||0],["z",n||0],["z2",0]],(function(n){var i=n[0];mt(e,i)?t[i]=rt(e[i],n[1]):null==t[i]&&(t[i]=n[1])})),E(G(e),(function(n){if(0===n.indexOf("on")){var i=e[n];t[n]=U(i)?i:null}})),mt(e,"draggable")&&(t.draggable=e.draggable),null!=e.name&&(t.name=e.name),null!=e.id&&(t.id=e.id)}var SE=["x","y","radius","angle","single"],ME=["cartesian2d","polar","singleAxis"];function IE(t){return t+"Axis"}function TE(t,e){var n,i=ft(),r=[],o=ft();t.eachComponent({mainType:"dataZoom",query:e},(function(t){o.get(t.uid)||s(t)}));do{n=!1,t.eachComponent("dataZoom",a)}while(n);function a(t){!o.get(t.uid)&&function(t){var e=!1;return t.eachTargetAxis((function(t,n){var r=i.get(t);r&&r[n]&&(e=!0)})),e}(t)&&(s(t),n=!0)}function s(t){o.set(t.uid,!0),r.push(t),t.eachTargetAxis((function(t,e){(i.get(t)||i.set(t,[]))[e]=!0}))}return r}function CE(t){var e=t.ecModel,n={infoList:[],infoMap:ft()};return t.eachTargetAxis((function(t,i){var r=e.getComponent(IE(t),i);if(r){var o=r.getCoordSysModel();if(o){var a=o.uid,s=n.infoMap.get(a);s||(s={model:o,axisModels:[]},n.infoList.push(s),n.infoMap.set(a,s)),s.axisModels.push(r)}}})),n}var DE=function(){function t(){this.indexList=[],this.indexMap=[]}return t.prototype.add=function(t){this.indexMap[t]||(this.indexList.push(t),this.indexMap[t]=!0)},t}(),AE=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n._autoThrottle=!0,n._noTarget=!0,n._rangePropMode=["percent","percent"],n}return n(e,t),e.prototype.init=function(t,e,n){var i=kE(t);this.settledOption=i,this.mergeDefaultAndTheme(t,n),this._doInit(i)},e.prototype.mergeOption=function(t){var e=kE(t);C(this.option,t,!0),C(this.settledOption,e,!0),this._doInit(e)},e.prototype._doInit=function(t){var e=this.option;this._setDefaultThrottle(t),this._updateRangeUse(t);var n=this.settledOption;E([["start","startValue"],["end","endValue"]],(function(t,i){"value"===this._rangePropMode[i]&&(e[t[0]]=n[t[0]]=null)}),this),this._resetTarget()},e.prototype._resetTarget=function(){var t=this.get("orient",!0),e=this._targetAxisInfoMap=ft();this._fillSpecifiedTargetAxis(e)?this._orient=t||this._makeAutoOrientByTargetAxis():(this._orient=t||"horizontal",this._fillAutoTargetAxisByOrient(e,this._orient)),this._noTarget=!0,e.each((function(t){t.indexList.length&&(this._noTarget=!1)}),this)},e.prototype._fillSpecifiedTargetAxis=function(t){var e=!1;return E(SE,(function(n){var i=this.getReferringComponents(IE(n),Do);if(i.specified){e=!0;var r=new DE;E(i.models,(function(t){r.add(t.componentIndex)})),t.set(n,r)}}),this),e},e.prototype._fillAutoTargetAxisByOrient=function(t,e){var n=this.ecModel,i=!0;if(i){var r="vertical"===e?"y":"x";o(n.findComponents({mainType:r+"Axis"}),r)}i&&o(n.findComponents({mainType:"singleAxis",filter:function(t){return t.get("orient",!0)===e}}),"single");function o(e,n){var r=e[0];if(r){var o=new DE;if(o.add(r.componentIndex),t.set(n,o),i=!1,"x"===n||"y"===n){var a=r.getReferringComponents("grid",Co).models[0];a&&E(e,(function(t){r.componentIndex!==t.componentIndex&&a===t.getReferringComponents("grid",Co).models[0]&&o.add(t.componentIndex)}))}}}i&&E(SE,(function(e){if(i){var r=n.findComponents({mainType:IE(e),filter:function(t){return"category"===t.get("type",!0)}});if(r[0]){var o=new DE;o.add(r[0].componentIndex),t.set(e,o),i=!1}}}),this)},e.prototype._makeAutoOrientByTargetAxis=function(){var t;return this.eachTargetAxis((function(e){!t&&(t=e)}),this),"y"===t?"vertical":"horizontal"},e.prototype._setDefaultThrottle=function(t){if(t.hasOwnProperty("throttle")&&(this._autoThrottle=!1),this._autoThrottle){var e=this.ecModel.option;this.option.throttle=e.animation&&e.animationDurationUpdate>0?100:20}},e.prototype._updateRangeUse=function(t){var e=this._rangePropMode,n=this.get("rangeMode");E([["start","startValue"],["end","endValue"]],(function(i,r){var o=null!=t[i[0]],a=null!=t[i[1]];o&&!a?e[r]="percent":!o&&a?e[r]="value":n?e[r]=n[r]:o&&(e[r]="percent")}))},e.prototype.noTarget=function(){return this._noTarget},e.prototype.getFirstTargetAxisModel=function(){var t;return this.eachTargetAxis((function(e,n){null==t&&(t=this.ecModel.getComponent(IE(e),n))}),this),t},e.prototype.eachTargetAxis=function(t,e){this._targetAxisInfoMap.each((function(n,i){E(n.indexList,(function(n){t.call(e,i,n)}))}))},e.prototype.getAxisProxy=function(t,e){var n=this.getAxisModel(t,e);if(n)return n.__dzAxisProxy},e.prototype.getAxisModel=function(t,e){var n=this._targetAxisInfoMap.get(t);if(n&&n.indexMap[e])return this.ecModel.getComponent(IE(t),e)},e.prototype.setRawRange=function(t){var e=this.option,n=this.settledOption;E([["start","startValue"],["end","endValue"]],(function(i){null==t[i[0]]&&null==t[i[1]]||(e[i[0]]=n[i[0]]=t[i[0]],e[i[1]]=n[i[1]]=t[i[1]])}),this),this._updateRangeUse(t)},e.prototype.setCalculatedRange=function(t){var e=this.option;E(["start","startValue","end","endValue"],(function(n){e[n]=t[n]}))},e.prototype.getPercentRange=function(){var t=this.findRepresentativeAxisProxy();if(t)return t.getDataPercentWindow()},e.prototype.getValueRange=function(t,e){if(null!=t||null!=e)return this.getAxisProxy(t,e).getDataValueWindow();var n=this.findRepresentativeAxisProxy();return n?n.getDataValueWindow():void 0},e.prototype.findRepresentativeAxisProxy=function(t){if(t)return t.__dzAxisProxy;for(var e,n=this._targetAxisInfoMap.keys(),i=0;i=0}(e)){var n=IE(this._dimName),i=e.getReferringComponents(n,Co).models[0];i&&this._axisIndex===i.componentIndex&&t.push(e)}}),this),t},t.prototype.getAxisModel=function(){return this.ecModel.getComponent(this._dimName+"Axis",this._axisIndex)},t.prototype.getMinMaxSpan=function(){return T(this._minMaxSpan)},t.prototype.calculateDataWindow=function(t){var e,n=this._dataExtent,i=this.getAxisModel().axis.scale,r=this._dataZoomModel.getRangePropMode(),o=[0,100],a=[],s=[];RE(["start","end"],(function(l,u){var h=t[l],c=t[l+"Value"];"percent"===r[u]?(null==h&&(h=o[u]),c=i.parse(Nr(h,o,n))):(e=!0,h=Nr(c=null==c?n[u]:i.parse(c),n,o)),s[u]=c,a[u]=h})),NE(s),NE(a);var l=this._minMaxSpan;function u(t,e,n,r,o){var a=o?"Span":"ValueSpan";lk(0,t,n,"all",l["min"+a],l["max"+a]);for(var s=0;s<2;s++)e[s]=Nr(t[s],n,r,!0),o&&(e[s]=i.parse(e[s]))}return e?u(s,a,n,o,!1):u(a,s,o,n,!0),{valueWindow:s,percentWindow:a}},t.prototype.reset=function(t){if(t===this._dataZoomModel){var e=this.getTargetSeriesModels();this._dataExtent=function(t,e,n){var i=[1/0,-1/0];RE(n,(function(t){!function(t,e,n){e&&E(c_(e,n),(function(n){var i=e.getApproximateExtent(n);i[0]t[1]&&(t[1]=i[1])}))}(i,t.getData(),e)}));var r=t.getAxisModel(),o=e_(r.axis.scale,r,i).calculate();return[o.min,o.max]}(this,this._dimName,e),this._updateMinMaxSpan();var n=this.calculateDataWindow(t.settledOption);this._valueWindow=n.valueWindow,this._percentWindow=n.percentWindow,this._setAxisModel()}},t.prototype.filterData=function(t,e){if(t===this._dataZoomModel){var n=this._dimName,i=this.getTargetSeriesModels(),r=t.get("filterMode"),o=this._valueWindow;"none"!==r&&RE(i,(function(t){var e=t.getData(),i=e.mapDimensionsAll(n);if(i.length){if("weakFilter"===r){var a=e.getStore(),s=z(i,(function(t){return e.getDimensionIndex(t)}),e);e.filterSelf((function(t){for(var e,n,r,l=0;lo[1];if(h&&!c&&!p)return!0;h&&(r=!0),c&&(e=!0),p&&(n=!0)}return r&&e&&n}))}else RE(i,(function(n){if("empty"===r)t.setData(e=e.map(n,(function(t){return function(t){return t>=o[0]&&t<=o[1]}(t)?t:NaN})));else{var i={};i[n]=o,e.selectRange(i)}}));RE(i,(function(t){e.setApproximateExtent(o,t)}))}}))}},t.prototype._updateMinMaxSpan=function(){var t=this._minMaxSpan={},e=this._dataZoomModel,n=this._dataExtent;RE(["min","max"],(function(i){var r=e.get(i+"Span"),o=e.get(i+"ValueSpan");null!=o&&(o=this.getAxisModel().axis.scale.parse(o)),null!=o?r=Nr(n[0]+o,n,[0,100],!0):null!=r&&(o=Nr(r,[0,100],n,!0)-n[0]),t[i+"Span"]=r,t[i+"ValueSpan"]=o}),this)},t.prototype._setAxisModel=function(){var t=this.getAxisModel(),e=this._percentWindow,n=this._valueWindow;if(e){var i=Gr(n,[0,500]);i=Math.min(i,20);var r=t.axis.scale.rawExtentInfo;0!==e[0]&&r.setDeterminedMinMax("min",+n[0].toFixed(i)),100!==e[1]&&r.setDeterminedMinMax("max",+n[1].toFixed(i)),r.freeze()}},t}();var zE={getTargetSeries:function(t){function e(e){t.eachComponent("dataZoom",(function(n){n.eachTargetAxis((function(i,r){var o=t.getComponent(IE(i),r);e(i,r,o,n)}))}))}e((function(t,e,n,i){n.__dzAxisProxy=null}));var n=[];e((function(e,i,r,o){r.__dzAxisProxy||(r.__dzAxisProxy=new EE(e,i,o,t),n.push(r.__dzAxisProxy))}));var i=ft();return E(n,(function(t){E(t.getTargetSeriesModels(),(function(t){i.set(t.uid,t)}))})),i},overallReset:function(t,e){t.eachComponent("dataZoom",(function(t){t.eachTargetAxis((function(e,n){t.getAxisProxy(e,n).reset(t)})),t.eachTargetAxis((function(n,i){t.getAxisProxy(n,i).filterData(t,e)}))})),t.eachComponent("dataZoom",(function(t){var e=t.findRepresentativeAxisProxy();if(e){var n=e.getDataPercentWindow(),i=e.getDataValueWindow();t.setCalculatedRange({start:n[0],end:n[1],startValue:i[0],endValue:i[1]})}}))}};var VE=!1;function BE(t){VE||(VE=!0,t.registerProcessor(t.PRIORITY.PROCESSOR.FILTER,zE),function(t){t.registerAction("dataZoom",(function(t,e){E(TE(e,t),(function(e){e.setRawRange({start:t.start,end:t.end,startValue:t.startValue,endValue:t.endValue})}))}))}(t),t.registerSubTypeDefaulter("dataZoom",(function(){return"slider"})))}function FE(t){t.registerComponentModel(LE),t.registerComponentView(OE),BE(t)}var GE=function(){},WE={};function HE(t,e){WE[t]=e}function YE(t){return WE[t]}var UE=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.optionUpdated=function(){t.prototype.optionUpdated.apply(this,arguments);var e=this.ecModel;E(this.option.feature,(function(t,n){var i=YE(n);i&&(i.getDefaultOption&&(i.defaultOption=i.getDefaultOption(e)),C(t,i.defaultOption))}))},e.type="toolbox",e.layoutMode={type:"box",ignoreSize:!0},e.defaultOption={show:!0,z:6,orient:"horizontal",left:"right",top:"top",backgroundColor:"transparent",borderColor:"#ccc",borderRadius:0,borderWidth:0,padding:5,itemSize:15,itemGap:8,showTitle:!0,iconStyle:{borderColor:"#666",color:"none"},emphasis:{iconStyle:{borderColor:"#3E98C5"}},tooltip:{show:!1,position:"bottom"}},e}(Tp);function XE(t,e){var n=ip(e.get("padding")),i=e.getItemStyle(["color","opacity"]);return i.fill=e.get("backgroundColor"),t=new Cs({shape:{x:t.x-n[3],y:t.y-n[0],width:t.width+n[1]+n[3],height:t.height+n[0]+n[2],r:e.get("borderRadius")},style:i,silent:!0,z2:-1})}var ZE=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.render=function(t,e,n,i){var r=this.group;if(r.removeAll(),t.get("show")){var o=+t.get("itemSize"),a="vertical"===t.get("orient"),s=t.get("feature")||{},l=this._features||(this._features={}),u=[];E(s,(function(t,e){u.push(e)})),new Im(this._featureNames||[],u).add(h).update(h).remove(H(h,null)).execute(),this._featureNames=u,function(t,e,n){var i=e.getBoxLayoutParams(),r=e.get("padding"),o={width:n.getWidth(),height:n.getHeight()},a=xp(i,o,r);mp(e.get("orient"),t,e.get("itemGap"),a.width,a.height),_p(t,i,o,r)}(r,t,n),r.add(XE(r.getBoundingRect(),t)),a||r.eachChild((function(t){var e=t.__title,i=t.ensureState("emphasis"),a=i.textConfig||(i.textConfig={}),s=t.getTextContent(),l=s&&s.ensureState("emphasis");if(l&&!U(l)&&e){var u=l.style||(l.style={}),h=cr(e,ks.makeFont(u)),c=t.x+r.x,p=!1;t.y+r.y+o+h.height>n.getHeight()&&(a.position="top",p=!0);var d=p?-5-h.height:o+10;c+h.width/2>n.getWidth()?(a.position=["100%",d],u.align="right"):c-h.width/2<0&&(a.position=[0,d],u.align="left")}}))}function h(h,c){var p,d=u[h],f=u[c],g=s[d],y=new dc(g,t,t.ecModel);if(i&&null!=i.newTitle&&i.featureName===d&&(g.title=i.newTitle),d&&!f){if(function(t){return 0===t.indexOf("my")}(d))p={onclick:y.option.onclick,featureName:d};else{var v=YE(d);if(!v)return;p=new v}l[d]=p}else if(!(p=l[f]))return;p.uid=gc("toolbox-feature"),p.model=y,p.ecModel=e,p.api=n;var m=p instanceof GE;d||!f?!y.get("show")||m&&p.unusable?m&&p.remove&&p.remove(e,n):(!function(i,s,l){var u,h,c=i.getModel("iconStyle"),p=i.getModel(["emphasis","iconStyle"]),d=s instanceof GE&&s.getIcons?s.getIcons():i.get("icon"),f=i.get("title")||{};X(d)?(u={})[l]=d:u=d;X(f)?(h={})[l]=f:h=f;var g=i.iconPaths={};E(u,(function(l,u){var d=Ph(l,{},{x:-o/2,y:-o/2,width:o,height:o});d.setStyle(c.getItemStyle()),d.ensureState("emphasis").style=p.getItemStyle();var f=new ks({style:{text:h[u],align:p.get("textAlign"),borderRadius:p.get("textBorderRadius"),padding:p.get("textPadding"),fill:null},ignore:!0});d.setTextContent(f),Eh({el:d,componentModel:t,itemName:u,formatterParamsExtra:{title:h[u]}}),d.__title=h[u],d.on("mouseover",(function(){var e=p.getItemStyle(),i=a?null==t.get("right")&&"right"!==t.get("left")?"right":"left":null==t.get("bottom")&&"bottom"!==t.get("top")?"bottom":"top";f.setStyle({fill:p.get("textFill")||e.fill||e.stroke||"#000",backgroundColor:p.get("textBackgroundColor")}),d.setTextConfig({position:p.get("textPosition")||i}),f.ignore=!t.get("showTitle"),n.enterEmphasis(this)})).on("mouseout",(function(){"emphasis"!==i.get(["iconStatus",u])&&n.leaveEmphasis(this),f.hide()})),("emphasis"===i.get(["iconStatus",u])?_l:bl)(d),r.add(d),d.on("click",W(s.onclick,s,e,n,u)),g[u]=d}))}(y,p,d),y.setIconStatus=function(t,e){var n=this.option,i=this.iconPaths;n.iconStatus=n.iconStatus||{},n.iconStatus[t]=e,i[t]&&("emphasis"===e?_l:bl)(i[t])},p instanceof GE&&p.render&&p.render(y,e,n,i)):m&&p.dispose&&p.dispose(e,n)}},e.prototype.updateView=function(t,e,n,i){E(this._features,(function(t){t instanceof GE&&t.updateView&&t.updateView(t.model,e,n,i)}))},e.prototype.remove=function(t,e){E(this._features,(function(n){n instanceof GE&&n.remove&&n.remove(t,e)})),this.group.removeAll()},e.prototype.dispose=function(t,e){E(this._features,(function(n){n instanceof GE&&n.dispose&&n.dispose(t,e)}))},e.type="toolbox",e}(gg);var jE=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.onclick=function(t,e){var n=this.model,i=n.get("name")||t.get("title.0.text")||"echarts",o="svg"===e.getZr().painter.getType(),a=o?"svg":n.get("type",!0)||"png",s=e.getConnectedDataURL({type:a,backgroundColor:n.get("backgroundColor",!0)||t.get("backgroundColor")||"#fff",connectedBackgroundColor:n.get("connectedBackgroundColor"),excludeComponents:n.get("excludeComponents"),pixelRatio:n.get("pixelRatio")}),l=r.browser;if(U(MouseEvent)&&(l.newEdge||!l.ie&&!l.edge)){var u=document.createElement("a");u.download=i+"."+a,u.target="_blank",u.href=s;var h=new MouseEvent("click",{view:document.defaultView,bubbles:!0,cancelable:!1});u.dispatchEvent(h)}else if(window.navigator.msSaveOrOpenBlob||o){var c=s.split(","),p=c[0].indexOf("base64")>-1,d=o?decodeURIComponent(c[1]):c[1];p&&(d=window.atob(d));var f=i+"."+a;if(window.navigator.msSaveOrOpenBlob){for(var g=d.length,y=new Uint8Array(g);g--;)y[g]=d.charCodeAt(g);var v=new Blob([y]);window.navigator.msSaveOrOpenBlob(v,f)}else{var m=document.createElement("iframe");document.body.appendChild(m);var x=m.contentWindow,_=x.document;_.open("image/svg+xml","replace"),_.write(d),_.close(),x.focus(),_.execCommand("SaveAs",!0,f),document.body.removeChild(m)}}else{var b=n.get("lang"),w='',S=window.open();S.document.write(w),S.document.title=i}},e.getDefaultOption=function(t){return{show:!0,icon:"M4.7,22.9L29.3,45.5L54.7,23.4M4.6,43.6L4.6,58L53.8,58L53.8,43.6M29.2,45.1L29.2,0",title:t.getLocaleModel().get(["toolbox","saveAsImage","title"]),type:"png",connectedBackgroundColor:"#fff",name:"",excludeComponents:["toolbox"],lang:t.getLocaleModel().get(["toolbox","saveAsImage","lang"])}},e}(GE),qE="__ec_magicType_stack__",KE=[["line","bar"],["stack"]],$E=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.getIcons=function(){var t=this.model,e=t.get("icon"),n={};return E(t.get("type"),(function(t){e[t]&&(n[t]=e[t])})),n},e.getDefaultOption=function(t){return{show:!0,type:[],icon:{line:"M4.1,28.9h7.1l9.3-22l7.4,38l9.7-19.7l3,12.8h14.9M4.1,58h51.4",bar:"M6.7,22.9h10V48h-10V22.9zM24.9,13h10v35h-10V13zM43.2,2h10v46h-10V2zM3.1,58h53.7",stack:"M8.2,38.4l-8.4,4.1l30.6,15.3L60,42.5l-8.1-4.1l-21.5,11L8.2,38.4z M51.9,30l-8.1,4.2l-13.4,6.9l-13.9-6.9L8.2,30l-8.4,4.2l8.4,4.2l22.2,11l21.5-11l8.1-4.2L51.9,30z M51.9,21.7l-8.1,4.2L35.7,30l-5.3,2.8L24.9,30l-8.4-4.1l-8.3-4.2l-8.4,4.2L8.2,30l8.3,4.2l13.9,6.9l13.4-6.9l8.1-4.2l8.1-4.1L51.9,21.7zM30.4,2.2L-0.2,17.5l8.4,4.1l8.3,4.2l8.4,4.2l5.5,2.7l5.3-2.7l8.1-4.2l8.1-4.2l8.1-4.1L30.4,2.2z"},title:t.getLocaleModel().get(["toolbox","magicType","title"]),option:{},seriesIndex:{}}},e.prototype.onclick=function(t,e,n){var i=this.model,r=i.get(["seriesIndex",n]);if(JE[n]){var o,a={series:[]};E(KE,(function(t){P(t,n)>=0&&E(t,(function(t){i.setIconStatus(t,"normal")}))})),i.setIconStatus(n,"emphasis"),t.eachComponent({mainType:"series",query:null==r?null:{seriesIndex:r}},(function(t){var e=t.subType,r=t.id,o=JE[n](e,r,t,i);o&&(k(o,t.option),a.series.push(o));var s=t.coordinateSystem;if(s&&"cartesian2d"===s.type&&("line"===n||"bar"===n)){var l=s.getAxesByScale("ordinal")[0];if(l){var u=l.dim+"Axis",h=t.getReferringComponents(u,Co).models[0].componentIndex;a[u]=a[u]||[];for(var c=0;c<=h;c++)a[u][h]=a[u][h]||{};a[u][h].boundaryGap="bar"===n}}}));var s=n;"stack"===n&&(o=C({stack:i.option.title.tiled,tiled:i.option.title.stack},i.option.title),"emphasis"!==i.get(["iconStatus",n])&&(s="tiled")),e.dispatchAction({type:"changeMagicType",currentType:s,newOption:a,newTitle:o,featureName:"magicType"})}},e}(GE),JE={line:function(t,e,n,i){if("bar"===t)return C({id:e,type:"line",data:n.get("data"),stack:n.get("stack"),markPoint:n.get("markPoint"),markLine:n.get("markLine")},i.get(["option","line"])||{},!0)},bar:function(t,e,n,i){if("line"===t)return C({id:e,type:"bar",data:n.get("data"),stack:n.get("stack"),markPoint:n.get("markPoint"),markLine:n.get("markLine")},i.get(["option","bar"])||{},!0)},stack:function(t,e,n,i){var r=n.get("stack")===qE;if("line"===t||"bar"===t)return i.setIconStatus("stack",r?"normal":"emphasis"),C({id:e,stack:r?"":qE},i.get(["option","stack"])||{},!0)}};cm({type:"changeMagicType",event:"magicTypeChanged",update:"prepareAndUpdate"},(function(t,e){e.mergeOption(t.newOption)}));var QE=new Array(60).join("-"),tz="\t";function ez(t){return t.replace(/^\s\s*/,"").replace(/\s\s*$/,"")}var nz=new RegExp("[\t]+","g");function iz(t,e){var n=t.split(new RegExp("\n*"+QE+"\n*","g")),i={series:[]};return E(n,(function(t,n){if(function(t){if(t.slice(0,t.indexOf("\n")).indexOf(tz)>=0)return!0}(t)){var r=function(t){for(var e=t.split(/\n+/g),n=[],i=z(ez(e.shift()).split(nz),(function(t){return{name:t,data:[]}})),r=0;r=0)&&t(r,i._targetInfoList)}))}return t.prototype.setOutputRanges=function(t,e){return this.matchOutputRanges(t,e,(function(t,e,n){if((t.coordRanges||(t.coordRanges=[])).push(e),!t.coordRange){t.coordRange=e;var i=vz[t.brushType](0,n,e);t.__rangeOffset={offset:xz[t.brushType](i.values,t.range,[1,1]),xyMinMax:i.xyMinMax}}})),t},t.prototype.matchOutputRanges=function(t,e,n){E(t,(function(t){var i=this.findTargetInfo(t,e);i&&!0!==i&&E(i.coordSyses,(function(i){var r=vz[t.brushType](1,i,t.range,!0);n(t,r.values,i,e)}))}),this)},t.prototype.setInputRanges=function(t,e){E(t,(function(t){var n,i,r,o,a,s=this.findTargetInfo(t,e);if(t.range=t.range||[],s&&!0!==s){t.panelId=s.panelId;var l=vz[t.brushType](0,s.coordSys,t.coordRange),u=t.__rangeOffset;t.range=u?xz[t.brushType](l.values,u.offset,(n=l.xyMinMax,i=u.xyMinMax,r=bz(n),o=bz(i),a=[r[0]/o[0],r[1]/o[1]],isNaN(a[0])&&(a[0]=1),isNaN(a[1])&&(a[1]=1),a)):l.values}}),this)},t.prototype.makePanelOpts=function(t,e){return z(this._targetInfoList,(function(n){var i=n.getPanelRect();return{panelId:n.panelId,defaultBrushType:e?e(n):null,clipPath:hL(i),isTargetByCursor:pL(i,t,n.coordSysModel),getLinearBrushOtherExtent:cL(i)}}))},t.prototype.controlSeries=function(t,e,n){var i=this.findTargetInfo(t,n);return!0===i||i&&P(i.coordSyses,e.coordinateSystem)>=0},t.prototype.findTargetInfo=function(t,e){for(var n=this._targetInfoList,i=dz(e,t),r=0;rt[1]&&t.reverse(),t}function dz(t,e){return Io(t,e,{includeMainTypes:hz})}var fz={grid:function(t,e){var n=t.xAxisModels,i=t.yAxisModels,r=t.gridModels,o=ft(),a={},s={};(n||i||r)&&(E(n,(function(t){var e=t.axis.grid.model;o.set(e.id,e),a[e.id]=!0})),E(i,(function(t){var e=t.axis.grid.model;o.set(e.id,e),s[e.id]=!0})),E(r,(function(t){o.set(t.id,t),a[t.id]=!0,s[t.id]=!0})),o.each((function(t){var r=t.coordinateSystem,o=[];E(r.getCartesians(),(function(t,e){(P(n,t.getAxis("x").model)>=0||P(i,t.getAxis("y").model)>=0)&&o.push(t)})),e.push({panelId:"grid--"+t.id,gridModel:t,coordSysModel:t,coordSys:o[0],coordSyses:o,getPanelRect:yz.grid,xAxisDeclared:a[t.id],yAxisDeclared:s[t.id]})})))},geo:function(t,e){E(t.geoModels,(function(t){var n=t.coordinateSystem;e.push({panelId:"geo--"+t.id,geoModel:t,coordSysModel:t,coordSys:n,coordSyses:[n],getPanelRect:yz.geo})}))}},gz=[function(t,e){var n=t.xAxisModel,i=t.yAxisModel,r=t.gridModel;return!r&&n&&(r=n.axis.grid.model),!r&&i&&(r=i.axis.grid.model),r&&r===e.gridModel},function(t,e){var n=t.geoModel;return n&&n===e.geoModel}],yz={grid:function(){return this.coordSys.master.getRect().clone()},geo:function(){var t=this.coordSys,e=t.getBoundingRect().clone();return e.applyTransform(Ih(t)),e}},vz={lineX:H(mz,0),lineY:H(mz,1),rect:function(t,e,n,i){var r=t?e.pointToData([n[0][0],n[1][0]],i):e.dataToPoint([n[0][0],n[1][0]],i),o=t?e.pointToData([n[0][1],n[1][1]],i):e.dataToPoint([n[0][1],n[1][1]],i),a=[pz([r[0],o[0]]),pz([r[1],o[1]])];return{values:a,xyMinMax:a}},polygon:function(t,e,n,i){var r=[[1/0,-1/0],[1/0,-1/0]];return{values:z(n,(function(n){var o=t?e.pointToData(n,i):e.dataToPoint(n,i);return r[0][0]=Math.min(r[0][0],o[0]),r[1][0]=Math.min(r[1][0],o[1]),r[0][1]=Math.max(r[0][1],o[0]),r[1][1]=Math.max(r[1][1],o[1]),o})),xyMinMax:r}}};function mz(t,e,n,i){var r=n.getAxis(["x","y"][t]),o=pz(z([0,1],(function(t){return e?r.coordToData(r.toLocalCoord(i[t]),!0):r.toGlobalCoord(r.dataToCoord(i[t]))}))),a=[];return a[t]=o,a[1-t]=[NaN,NaN],{values:o,xyMinMax:a}}var xz={lineX:H(_z,0),lineY:H(_z,1),rect:function(t,e,n){return[[t[0][0]-n[0]*e[0][0],t[0][1]-n[0]*e[0][1]],[t[1][0]-n[1]*e[1][0],t[1][1]-n[1]*e[1][1]]]},polygon:function(t,e,n){return z(t,(function(t,i){return[t[0]-n[0]*e[i][0],t[1]-n[1]*e[i][1]]}))}};function _z(t,e,n,i){return[e[0]-i[t]*n[0],e[1]-i[t]*n[1]]}function bz(t){return t?[t[0][1]-t[0][0],t[1][1]-t[1][0]]:[NaN,NaN]}var wz,Sz,Mz=E,Iz=uo+"toolbox-dataZoom_",Tz=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.render=function(t,e,n,i){this._brushController||(this._brushController=new Ok(n.getZr()),this._brushController.on("brush",W(this._onBrush,this)).mount()),function(t,e,n,i,r){var o=n._isZoomActive;i&&"takeGlobalCursor"===i.type&&(o="dataZoomSelect"===i.key&&i.dataZoomSelectActive);n._isZoomActive=o,t.setIconStatus("zoom",o?"emphasis":"normal");var a=new cz(Dz(t),e,{include:["grid"]}).makePanelOpts(r,(function(t){return t.xAxisDeclared&&!t.yAxisDeclared?"lineX":!t.xAxisDeclared&&t.yAxisDeclared?"lineY":"rect"}));n._brushController.setPanels(a).enableBrush(!(!o||!a.length)&&{brushType:"auto",brushStyle:t.getModel("brushStyle").getItemStyle()})}(t,e,this,i,n),function(t,e){t.setIconStatus("back",function(t){return lz(t).length}(e)>1?"emphasis":"normal")}(t,e)},e.prototype.onclick=function(t,e,n){Cz[n].call(this)},e.prototype.remove=function(t,e){this._brushController&&this._brushController.unmount()},e.prototype.dispose=function(t,e){this._brushController&&this._brushController.dispose()},e.prototype._onBrush=function(t){var e=t.areas;if(t.isEnd&&e.length){var n={},i=this.ecModel;this._brushController.updateCovers([]),new cz(Dz(this.model),i,{include:["grid"]}).matchOutputRanges(e,i,(function(t,e,n){if("cartesian2d"===n.type){var i=t.brushType;"rect"===i?(r("x",n,e[0]),r("y",n,e[1])):r({lineX:"x",lineY:"y"}[i],n,e)}})),function(t,e){var n=lz(t);az(e,(function(e,i){for(var r=n.length-1;r>=0&&!n[r][i];r--);if(r<0){var o=t.queryComponents({mainType:"dataZoom",subType:"select",id:i})[0];if(o){var a=o.getPercentRange();n[0][i]={dataZoomId:i,start:a[0],end:a[1]}}}})),n.push(e)}(i,n),this._dispatchZoomAction(n)}function r(t,e,r){var o=e.getAxis(t),a=o.model,s=function(t,e,n){var i;return n.eachComponent({mainType:"dataZoom",subType:"select"},(function(n){n.getAxisModel(t,e.componentIndex)&&(i=n)})),i}(t,a,i),l=s.findRepresentativeAxisProxy(a).getMinMaxSpan();null==l.minValueSpan&&null==l.maxValueSpan||(r=lk(0,r.slice(),o.scale.getExtent(),0,l.minValueSpan,l.maxValueSpan)),s&&(n[s.id]={dataZoomId:s.id,startValue:r[0],endValue:r[1]})}},e.prototype._dispatchZoomAction=function(t){var e=[];Mz(t,(function(t,n){e.push(T(t))})),e.length&&this.api.dispatchAction({type:"dataZoom",from:this.uid,batch:e})},e.getDefaultOption=function(t){return{show:!0,filterMode:"filter",icon:{zoom:"M0,13.5h26.9 M13.5,26.9V0 M32.1,13.5H58V58H13.5 V32.1",back:"M22,1.4L9.9,13.5l12.3,12.3 M10.3,13.5H54.9v44.6 H10.3v-26"},title:t.getLocaleModel().get(["toolbox","dataZoom","title"]),brushStyle:{borderWidth:0,color:"rgba(210,219,238,0.2)"}}},e}(GE),Cz={zoom:function(){var t=!this._isZoomActive;this.api.dispatchAction({type:"takeGlobalCursor",key:"dataZoomSelect",dataZoomSelectActive:t})},back:function(){this._dispatchZoomAction(function(t){var e=lz(t),n=e[e.length-1];e.length>1&&e.pop();var i={};return az(n,(function(t,n){for(var r=e.length-1;r>=0;r--)if(t=e[r][n]){i[n]=t;break}})),i}(this.ecModel))}};function Dz(t){var e={xAxisIndex:t.get("xAxisIndex",!0),yAxisIndex:t.get("yAxisIndex",!0),xAxisId:t.get("xAxisId",!0),yAxisId:t.get("yAxisId",!0)};return null==e.xAxisIndex&&null==e.xAxisId&&(e.xAxisIndex="all"),null==e.yAxisIndex&&null==e.yAxisId&&(e.yAxisIndex="all"),e}wz="dataZoom",Sz=function(t){var e=t.getComponent("toolbox",0),n=["feature","dataZoom"];if(e&&null!=e.get(n)){var i=e.getModel(n),r=[],o=Io(t,Dz(i));return Mz(o.xAxisModels,(function(t){return a(t,"xAxis","xAxisIndex")})),Mz(o.yAxisModels,(function(t){return a(t,"yAxis","yAxisIndex")})),r}function a(t,e,n){var o=t.componentIndex,a={type:"select",$fromToolbox:!0,filterMode:i.get("filterMode",!0)||"filter",id:Iz+e+o};a[n]=o,r.push(a)}},lt(null==jp.get(wz)&&Sz),jp.set(wz,Sz);var Az=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.type="tooltip",e.dependencies=["axisPointer"],e.defaultOption={z:60,show:!0,showContent:!0,trigger:"item",triggerOn:"mousemove|click",alwaysShowContent:!1,displayMode:"single",renderMode:"auto",confine:null,showDelay:0,hideDelay:100,transitionDuration:.4,enterable:!1,backgroundColor:"#fff",shadowBlur:10,shadowColor:"rgba(0, 0, 0, .2)",shadowOffsetX:1,shadowOffsetY:2,borderRadius:4,borderWidth:1,padding:null,extraCssText:"",axisPointer:{type:"line",axis:"auto",animation:"auto",animationDurationUpdate:200,animationEasingUpdate:"exponentialOut",crossStyle:{color:"#999",width:1,type:"dashed",textStyle:{}}},textStyle:{color:"#666",fontSize:14}},e}(Tp);function kz(t){var e=t.get("confine");return null!=e?!!e:"richText"===t.get("renderMode")}function Lz(t){if(r.domSupported)for(var e=document.documentElement.style,n=0,i=t.length;n-1?(u+="top:50%",h+="translateY(-50%) rotate("+(a="left"===s?-225:-45)+"deg)"):(u+="left:50%",h+="translateX(-50%) rotate("+(a="top"===s?225:45)+"deg)");var c=a*Math.PI/180,p=l+r,d=p*Math.abs(Math.cos(c))+p*Math.abs(Math.sin(c)),f=e+" solid "+r+"px;";return'
'}(n,i,r)),X(t))o.innerHTML=t+a;else if(t){o.innerHTML="",Y(t)||(t=[t]);for(var s=0;s=0?this._tryShow(n,i):"leave"===e&&this._hide(i))}),this))},e.prototype._keepShow=function(){var t=this._tooltipModel,e=this._ecModel,n=this._api,i=t.get("triggerOn");if(null!=this._lastX&&null!=this._lastY&&"none"!==i&&"click"!==i){var r=this;clearTimeout(this._refreshUpdateTimeout),this._refreshUpdateTimeout=setTimeout((function(){!n.isDisposed()&&r.manuallyShowTip(t,e,n,{x:r._lastX,y:r._lastY,dataByCoordSys:r._lastDataByCoordSys})}))}},e.prototype.manuallyShowTip=function(t,e,n,i){if(i.from!==this.uid&&!r.node&&n.getDom()){var o=jz(i,n);this._ticket="";var a=i.dataByCoordSys,s=function(t,e,n){var i=To(t).queryOptionMap,r=i.keys()[0];if(!r||"series"===r)return;var o,a=Ao(e,r,i.get(r),{useDefault:!1,enableAll:!1,enableNone:!1}).models[0];if(!a)return;if(n.getViewOfComponentModel(a).group.traverse((function(e){var n=Hs(e).tooltipConfig;if(n&&n.name===t.name)return o=e,!0})),o)return{componentMainType:r,componentIndex:a.componentIndex,el:o}}(i,e,n);if(s){var l=s.el.getBoundingRect().clone();l.applyTransform(s.el.transform),this._tryShow({offsetX:l.x+l.width/2,offsetY:l.y+l.height/2,target:s.el,position:i.position,positionDefault:"bottom"},o)}else if(i.tooltip&&null!=i.x&&null!=i.y){var u=Uz;u.x=i.x,u.y=i.y,u.update(),Hs(u).tooltipConfig={name:null,option:i.tooltip},this._tryShow({offsetX:i.x,offsetY:i.y,target:u},o)}else if(a)this._tryShow({offsetX:i.x,offsetY:i.y,position:i.position,dataByCoordSys:a,tooltipOption:i.tooltipOption},o);else if(null!=i.seriesIndex){if(this._manuallyAxisShowTip(t,e,n,i))return;var h=eN(i,e),c=h.point[0],p=h.point[1];null!=c&&null!=p&&this._tryShow({offsetX:c,offsetY:p,target:h.el,position:i.position,positionDefault:"bottom"},o)}else null!=i.x&&null!=i.y&&(n.dispatchAction({type:"updateAxisPointer",x:i.x,y:i.y}),this._tryShow({offsetX:i.x,offsetY:i.y,position:i.position,target:n.getZr().findHover(i.x,i.y).target},o))}},e.prototype.manuallyHideTip=function(t,e,n,i){var r=this._tooltipContent;!this._alwaysShowContent&&this._tooltipModel&&r.hideLater(this._tooltipModel.get("hideDelay")),this._lastX=this._lastY=this._lastDataByCoordSys=null,i.from!==this.uid&&this._hide(jz(i,n))},e.prototype._manuallyAxisShowTip=function(t,e,n,i){var r=i.seriesIndex,o=i.dataIndex,a=e.getComponent("axisPointer").coordSysAxesInfo;if(null!=r&&null!=o&&null!=a){var s=e.getSeriesByIndex(r);if(s)if("axis"===Zz([s.getData().getItemModel(o),s,(s.coordinateSystem||{}).model],this._tooltipModel).get("trigger"))return n.dispatchAction({type:"updateAxisPointer",seriesIndex:r,dataIndex:o,position:i.position}),!0}},e.prototype._tryShow=function(t,e){var n=t.target;if(this._tooltipModel){this._lastX=t.offsetX,this._lastY=t.offsetY;var i=t.dataByCoordSys;if(i&&i.length)this._showAxisTooltip(i,t);else if(n){var r,o;this._lastDataByCoordSys=null,xy(n,(function(t){return null!=Hs(t).dataIndex?(r=t,!0):null!=Hs(t).tooltipConfig?(o=t,!0):void 0}),!0),r?this._showSeriesItemTooltip(t,r,e):o?this._showComponentItemTooltip(t,o,e):this._hide(e)}else this._lastDataByCoordSys=null,this._hide(e)}},e.prototype._showOrMove=function(t,e){var n=t.get("showDelay");e=W(e,this),clearTimeout(this._showTimout),n>0?this._showTimout=setTimeout(e,n):e()},e.prototype._showAxisTooltip=function(t,e){var n=this._ecModel,i=this._tooltipModel,r=[e.offsetX,e.offsetY],o=Zz([e.tooltipOption],i),a=this._renderMode,s=[],l=Xf("section",{blocks:[],noHeader:!0}),u=[],h=new ig;E(t,(function(t){E(t.dataByAxis,(function(t){var e=n.getComponent(t.axisDim+"Axis",t.axisIndex),r=t.value;if(e&&null!=r){var o=zR(r,e.axis,n,t.seriesDataIndices,t.valueLabelOpt),c=Xf("section",{header:o,noHeader:!ut(o),sortBlocks:!0,blocks:[]});l.blocks.push(c),E(t.seriesDataIndices,(function(l){var p=n.getSeriesByIndex(l.seriesIndex),d=l.dataIndexInside,f=p.getDataParams(d);if(!(f.dataIndex<0)){f.axisDim=t.axisDim,f.axisIndex=t.axisIndex,f.axisType=t.axisType,f.axisId=t.axisId,f.axisValue=s_(e.axis,{value:r}),f.axisValueLabel=o,f.marker=h.makeTooltipMarker("item",pp(f.color),a);var g=uf(p.formatTooltip(d,!0,null)),y=g.frag;if(y){var v=Zz([p],i).get("valueFormatter");c.blocks.push(v?A({valueFormatter:v},y):y)}g.text&&u.push(g.text),s.push(f)}}))}}))})),l.blocks.reverse(),u.reverse();var c=e.position,p=o.get("order"),d=Jf(l,h,a,p,n.get("useUTC"),o.get("textStyle"));d&&u.unshift(d);var f="richText"===a?"\n\n":"
",g=u.join(f);this._showOrMove(o,(function(){this._updateContentNotChangedOnAxis(t,s)?this._updatePosition(o,c,r[0],r[1],this._tooltipContent,s):this._showTooltipContent(o,g,s,Math.random()+"",r[0],r[1],c,null,h)}))},e.prototype._showSeriesItemTooltip=function(t,e,n){var i=this._ecModel,r=Hs(e),o=r.seriesIndex,a=i.getSeriesByIndex(o),s=r.dataModel||a,l=r.dataIndex,u=r.dataType,h=s.getData(u),c=this._renderMode,p=t.positionDefault,d=Zz([h.getItemModel(l),s,a&&(a.coordinateSystem||{}).model],this._tooltipModel,p?{position:p}:null),f=d.get("trigger");if(null==f||"item"===f){var g=s.getDataParams(l,u),y=new ig;g.marker=y.makeTooltipMarker("item",pp(g.color),c);var v=uf(s.formatTooltip(l,!1,u)),m=d.get("order"),x=d.get("valueFormatter"),_=v.frag,b=_?Jf(x?A({valueFormatter:x},_):_,y,c,m,i.get("useUTC"),d.get("textStyle")):v.text,w="item_"+s.name+"_"+l;this._showOrMove(d,(function(){this._showTooltipContent(d,b,g,w,t.offsetX,t.offsetY,t.position,t.target,y)})),n({type:"showTip",dataIndexInside:l,dataIndex:h.getRawIndex(l),seriesIndex:o,from:this.uid})}},e.prototype._showComponentItemTooltip=function(t,e,n){var i=Hs(e),r=i.tooltipConfig.option||{};if(X(r)){r={content:r,formatter:r}}var o=[r],a=this._ecModel.getComponent(i.componentMainType,i.componentIndex);a&&o.push(a),o.push({formatter:r.content});var s=t.positionDefault,l=Zz(o,this._tooltipModel,s?{position:s}:null),u=l.get("content"),h=Math.random()+"",c=new ig;this._showOrMove(l,(function(){var n=T(l.get("formatterParams")||{});this._showTooltipContent(l,u,n,h,t.offsetX,t.offsetY,t.position,e,c)})),n({type:"showTip",from:this.uid})},e.prototype._showTooltipContent=function(t,e,n,i,r,o,a,s,l){if(this._ticket="",t.get("showContent")&&t.get("show")){var u=this._tooltipContent;u.setEnterable(t.get("enterable"));var h=t.get("formatter");a=a||t.get("position");var c=e,p=this._getNearestPoint([r,o],n,t.get("trigger"),t.get("borderColor")).color;if(h)if(X(h)){var d=t.ecModel.get("useUTC"),f=Y(n)?n[0]:n;c=h,f&&f.axisType&&f.axisType.indexOf("time")>=0&&(c=Vc(f.axisValue,c,d)),c=hp(c,n,!0)}else if(U(h)){var g=W((function(e,i){e===this._ticket&&(u.setContent(i,l,t,p,a),this._updatePosition(t,a,r,o,u,n,s))}),this);this._ticket=i,c=h(n,i,g)}else c=h;u.setContent(c,l,t,p,a),u.show(t,p),this._updatePosition(t,a,r,o,u,n,s)}},e.prototype._getNearestPoint=function(t,e,n,i){return"axis"===n||Y(e)?{color:i||("html"===this._renderMode?"#fff":"none")}:Y(e)?void 0:{color:i||e.color||e.borderColor}},e.prototype._updatePosition=function(t,e,n,i,r,o,a){var s=this._api.getWidth(),l=this._api.getHeight();e=e||t.get("position");var u=r.getSize(),h=t.get("align"),c=t.get("verticalAlign"),p=a&&a.getBoundingRect().clone();if(a&&p.applyTransform(a.transform),U(e)&&(e=e([n,i],o,r.el,p,{viewSize:[s,l],contentSize:u.slice()})),Y(e))n=Er(e[0],s),i=Er(e[1],l);else if(q(e)){var d=e;d.width=u[0],d.height=u[1];var f=xp(d,{width:s,height:l});n=f.x,i=f.y,h=null,c=null}else if(X(e)&&a){var g=function(t,e,n,i){var r=n[0],o=n[1],a=Math.ceil(Math.SQRT2*i)+8,s=0,l=0,u=e.width,h=e.height;switch(t){case"inside":s=e.x+u/2-r/2,l=e.y+h/2-o/2;break;case"top":s=e.x+u/2-r/2,l=e.y-o-a;break;case"bottom":s=e.x+u/2-r/2,l=e.y+h+a;break;case"left":s=e.x-r-a,l=e.y+h/2-o/2;break;case"right":s=e.x+u+a,l=e.y+h/2-o/2}return[s,l]}(e,p,u,t.get("borderWidth"));n=g[0],i=g[1]}else{g=function(t,e,n,i,r,o,a){var s=n.getSize(),l=s[0],u=s[1];null!=o&&(t+l+o+2>i?t-=l+o:t+=o);null!=a&&(e+u+a>r?e-=u+a:e+=a);return[t,e]}(n,i,r,s,l,h?null:20,c?null:20);n=g[0],i=g[1]}if(h&&(n-=qz(h)?u[0]/2:"right"===h?u[0]:0),c&&(i-=qz(c)?u[1]/2:"bottom"===c?u[1]:0),kz(t)){g=function(t,e,n,i,r){var o=n.getSize(),a=o[0],s=o[1];return t=Math.min(t+a,i)-a,e=Math.min(e+s,r)-s,t=Math.max(t,0),e=Math.max(e,0),[t,e]}(n,i,r,s,l);n=g[0],i=g[1]}r.moveTo(n,i)},e.prototype._updateContentNotChangedOnAxis=function(t,e){var n=this._lastDataByCoordSys,i=this._cbParamsList,r=!!n&&n.length===t.length;return r&&E(n,(function(n,o){var a=n.dataByAxis||[],s=(t[o]||{}).dataByAxis||[];(r=r&&a.length===s.length)&&E(a,(function(t,n){var o=s[n]||{},a=t.seriesDataIndices||[],l=o.seriesDataIndices||[];(r=r&&t.value===o.value&&t.axisType===o.axisType&&t.axisId===o.axisId&&a.length===l.length)&&E(a,(function(t,e){var n=l[e];r=r&&t.seriesIndex===n.seriesIndex&&t.dataIndex===n.dataIndex})),i&&E(t.seriesDataIndices,(function(t){var n=t.seriesIndex,o=e[n],a=i[n];o&&a&&a.data!==o.data&&(r=!1)}))}))})),this._lastDataByCoordSys=t,this._cbParamsList=e,!!r},e.prototype._hide=function(t){this._lastDataByCoordSys=null,t({type:"hideTip",from:this.uid})},e.prototype.dispose=function(t,e){!r.node&&e.getDom()&&(kg(this,"_updatePosition"),this._tooltipContent.dispose(),QR("itemTooltip",e))},e.type="tooltip",e}(gg);function Zz(t,e,n){var i,r=e.ecModel;n?(i=new dc(n,r,r),i=new dc(e.option,i,r)):i=e;for(var o=t.length-1;o>=0;o--){var a=t[o];a&&(a instanceof dc&&(a=a.get("tooltip",!0)),X(a)&&(a={formatter:a}),a&&(i=new dc(a,i,r)))}return i}function jz(t,e){return t.dispatchAction||W(e.dispatchAction,e)}function qz(t){return"center"===t||"middle"===t}var Kz=["rect","polygon","keep","clear"];function $z(t,e){var n=ho(t?t.brush:[]);if(n.length){var i=[];E(n,(function(t){var e=t.hasOwnProperty("toolbox")?t.toolbox:[];e instanceof Array&&(i=i.concat(e))}));var r=t&&t.toolbox;Y(r)&&(r=r[0]),r||(r={feature:{}},t.toolbox=[r]);var o=r.feature||(r.feature={}),a=o.brush||(o.brush={}),s=a.type||(a.type=[]);s.push.apply(s,i),function(t){var e={};E(t,(function(t){e[t]=1})),t.length=0,E(e,(function(e,n){t.push(n)}))}(s),e&&!s.length&&s.push.apply(s,Kz)}}var Jz=E;function Qz(t){if(t)for(var e in t)if(t.hasOwnProperty(e))return!0}function tV(t,e,n){var i={};return Jz(e,(function(e){var r,o=i[e]=((r=function(){}).prototype.__hidden=r.prototype,new r);Jz(t[e],(function(t,i){if(iD.isValidType(i)){var r={type:i,visual:t};n&&n(r,e),o[i]=new iD(r),"opacity"===i&&((r=T(r)).type="colorAlpha",o.__hidden.__alphaForOpacity=new iD(r))}}))})),i}function eV(t,e,n){var i;E(n,(function(t){e.hasOwnProperty(t)&&Qz(e[t])&&(i=!0)})),i&&E(n,(function(n){e.hasOwnProperty(n)&&Qz(e[n])?t[n]=T(e[n]):delete t[n]}))}var nV={lineX:iV(0),lineY:iV(1),rect:{point:function(t,e,n){return t&&n.boundingRect.contain(t[0],t[1])},rect:function(t,e,n){return t&&n.boundingRect.intersect(t)}},polygon:{point:function(t,e,n){return t&&n.boundingRect.contain(t[0],t[1])&&y_(n.range,t[0],t[1])},rect:function(t,e,n){var i=n.range;if(!t||i.length<=1)return!1;var r=t.x,o=t.y,a=t.width,s=t.height,l=i[0];return!!(y_(i,r,o)||y_(i,r+a,o)||y_(i,r,o+s)||y_(i,r+a,o+s)||sr.create(t).contain(l[0],l[1])||Oh(r,o,r+a,o,i)||Oh(r,o,r,o+s,i)||Oh(r+a,o,r+a,o+s,i)||Oh(r,o+s,r+a,o+s,i))||void 0}}};function iV(t){var e=["x","y"],n=["width","height"];return{point:function(e,n,i){if(e){var r=i.range;return rV(e[t],r)}},rect:function(i,r,o){if(i){var a=o.range,s=[i[e[t]],i[e[t]]+i[n[t]]];return s[1]e[0][1]&&(e[0][1]=o[0]),o[1]e[1][1]&&(e[1][1]=o[1])}return e&&dV(e)}};function dV(t){return new sr(t[0][0],t[1][0],t[0][1]-t[0][0],t[1][1]-t[1][0])}var fV=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.init=function(t,e){this.ecModel=t,this.api=e,this.model,(this._brushController=new Ok(e.getZr())).on("brush",W(this._onBrush,this)).mount()},e.prototype.render=function(t,e,n,i){this.model=t,this._updateController(t,e,n,i)},e.prototype.updateTransform=function(t,e,n,i){lV(e),this._updateController(t,e,n,i)},e.prototype.updateVisual=function(t,e,n,i){this.updateTransform(t,e,n,i)},e.prototype.updateView=function(t,e,n,i){this._updateController(t,e,n,i)},e.prototype._updateController=function(t,e,n,i){(!i||i.$from!==t.id)&&this._brushController.setPanels(t.brushTargetManager.makePanelOpts(n)).enableBrush(t.brushOption).updateCovers(t.areas.slice())},e.prototype.dispose=function(){this._brushController.dispose()},e.prototype._onBrush=function(t){var e=this.model.id,n=this.model.brushTargetManager.setOutputRanges(t.areas,this.ecModel);(!t.isEnd||t.removeOnClick)&&this.api.dispatchAction({type:"brush",brushId:e,areas:T(n),$from:e}),t.isEnd&&this.api.dispatchAction({type:"brushEnd",brushId:e,areas:T(n),$from:e})},e.type="brush",e}(gg),gV=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.areas=[],n.brushOption={},n}return n(e,t),e.prototype.optionUpdated=function(t,e){var n=this.option;!e&&eV(n,t,["inBrush","outOfBrush"]);var i=n.inBrush=n.inBrush||{};n.outOfBrush=n.outOfBrush||{color:"#ddd"},i.hasOwnProperty("liftZ")||(i.liftZ=5)},e.prototype.setAreas=function(t){t&&(this.areas=z(t,(function(t){return yV(this.option,t)}),this))},e.prototype.setBrushOption=function(t){this.brushOption=yV(this.option,t),this.brushType=this.brushOption.brushType},e.type="brush",e.dependencies=["geo","grid","xAxis","yAxis","parallel","series"],e.defaultOption={seriesIndex:"all",brushType:"rect",brushMode:"single",transformable:!0,brushStyle:{borderWidth:1,color:"rgba(210,219,238,0.3)",borderColor:"#D2DBEE"},throttleType:"fixRate",throttleDelay:0,removeOnClick:!0,z:1e4},e}(Tp);function yV(t,e){return C({brushType:t.brushType,brushMode:t.brushMode,transformable:t.transformable,brushStyle:new dc(t.brushStyle).getItemStyle(),removeOnClick:t.removeOnClick,z:t.z},e,!0)}var vV=["rect","polygon","lineX","lineY","keep","clear"],mV=function(t){function e(){return null!==t&&t.apply(this,arguments)||this}return n(e,t),e.prototype.render=function(t,e,n){var i,r,o;e.eachComponent({mainType:"brush"},(function(t){i=t.brushType,r=t.brushOption.brushMode||"single",o=o||!!t.areas.length})),this._brushType=i,this._brushMode=r,E(t.get("type",!0),(function(e){t.setIconStatus(e,("keep"===e?"multiple"===r:"clear"===e?o:e===i)?"emphasis":"normal")}))},e.prototype.updateView=function(t,e,n){this.render(t,e,n)},e.prototype.getIcons=function(){var t=this.model,e=t.get("icon",!0),n={};return E(t.get("type",!0),(function(t){e[t]&&(n[t]=e[t])})),n},e.prototype.onclick=function(t,e,n){var i=this._brushType,r=this._brushMode;"clear"===n?(e.dispatchAction({type:"axisAreaSelect",intervals:[]}),e.dispatchAction({type:"brush",command:"clear",areas:[]})):e.dispatchAction({type:"takeGlobalCursor",key:"brush",brushOption:{brushType:"keep"===n?i:i!==n&&n,brushMode:"keep"===n?"multiple"===r?"single":"multiple":r}})},e.getDefaultOption=function(t){return{show:!0,type:vV.slice(),icon:{rect:"M7.3,34.7 M0.4,10V-0.2h9.8 M89.6,10V-0.2h-9.8 M0.4,60v10.2h9.8 M89.6,60v10.2h-9.8 M12.3,22.4V10.5h13.1 M33.6,10.5h7.8 M49.1,10.5h7.8 M77.5,22.4V10.5h-13 M12.3,31.1v8.2 M77.7,31.1v8.2 M12.3,47.6v11.9h13.1 M33.6,59.5h7.6 M49.1,59.5 h7.7 M77.5,47.6v11.9h-13",polygon:"M55.2,34.9c1.7,0,3.1,1.4,3.1,3.1s-1.4,3.1-3.1,3.1 s-3.1-1.4-3.1-3.1S53.5,34.9,55.2,34.9z M50.4,51c1.7,0,3.1,1.4,3.1,3.1c0,1.7-1.4,3.1-3.1,3.1c-1.7,0-3.1-1.4-3.1-3.1 C47.3,52.4,48.7,51,50.4,51z M55.6,37.1l1.5-7.8 M60.1,13.5l1.6-8.7l-7.8,4 M59,19l-1,5.3 M24,16.1l6.4,4.9l6.4-3.3 M48.5,11.6 l-5.9,3.1 M19.1,12.8L9.7,5.1l1.1,7.7 M13.4,29.8l1,7.3l6.6,1.6 M11.6,18.4l1,6.1 M32.8,41.9 M26.6,40.4 M27.3,40.2l6.1,1.6 M49.9,52.1l-5.6-7.6l-4.9-1.2",lineX:"M15.2,30 M19.7,15.6V1.9H29 M34.8,1.9H40.4 M55.3,15.6V1.9H45.9 M19.7,44.4V58.1H29 M34.8,58.1H40.4 M55.3,44.4 V58.1H45.9 M12.5,20.3l-9.4,9.6l9.6,9.8 M3.1,29.9h16.5 M62.5,20.3l9.4,9.6L62.3,39.7 M71.9,29.9H55.4",lineY:"M38.8,7.7 M52.7,12h13.2v9 M65.9,26.6V32 M52.7,46.3h13.2v-9 M24.9,12H11.8v9 M11.8,26.6V32 M24.9,46.3H11.8v-9 M48.2,5.1l-9.3-9l-9.4,9.2 M38.9-3.9V12 M48.2,53.3l-9.3,9l-9.4-9.2 M38.9,62.3V46.4",keep:"M4,10.5V1h10.3 M20.7,1h6.1 M33,1h6.1 M55.4,10.5V1H45.2 M4,17.3v6.6 M55.6,17.3v6.6 M4,30.5V40h10.3 M20.7,40 h6.1 M33,40h6.1 M55.4,30.5V40H45.2 M21,18.9h62.9v48.6H21V18.9z",clear:"M22,14.7l30.9,31 M52.9,14.7L22,45.7 M4.7,16.8V4.2h13.1 M26,4.2h7.8 M41.6,4.2h7.8 M70.3,16.8V4.2H57.2 M4.7,25.9v8.6 M70.3,25.9v8.6 M4.7,43.2v12.6h13.1 M26,55.8h7.8 M41.6,55.8h7.8 M70.3,43.2v12.6H57.2"},title:t.getLocaleModel().get(["toolbox","brush","title"])}},e}(GE);var xV=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.layoutMode={type:"box",ignoreSize:!0},n}return n(e,t),e.type="title",e.defaultOption={z:6,show:!0,text:"",target:"blank",subtext:"",subtarget:"blank",left:0,top:0,backgroundColor:"rgba(0,0,0,0)",borderColor:"#ccc",borderWidth:0,padding:5,itemGap:10,textStyle:{fontSize:18,fontWeight:"bold",color:"#464646"},subtextStyle:{fontSize:12,color:"#6E7079"}},e}(Tp),_V=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.render=function(t,e,n){if(this.group.removeAll(),t.get("show")){var i=this.group,r=t.getModel("textStyle"),o=t.getModel("subtextStyle"),a=t.get("textAlign"),s=rt(t.get("textBaseline"),t.get("textVerticalAlign")),l=new ks({style:Uh(r,{text:t.get("text"),fill:r.getTextColor()},{disableBox:!0}),z2:10}),u=l.getBoundingRect(),h=t.get("subtext"),c=new ks({style:Uh(o,{text:h,fill:o.getTextColor(),y:u.height+t.get("itemGap"),verticalAlign:"top"},{disableBox:!0}),z2:10}),p=t.get("link"),d=t.get("sublink"),f=t.get("triggerEvent",!0);l.silent=!p&&!f,c.silent=!d&&!f,p&&l.on("click",(function(){dp(p,"_"+t.get("target"))})),d&&c.on("click",(function(){dp(d,"_"+t.get("subtarget"))})),Hs(l).eventData=Hs(c).eventData=f?{componentType:"title",componentIndex:t.componentIndex}:null,i.add(l),h&&i.add(c);var g=i.getBoundingRect(),y=t.getBoxLayoutParams();y.width=g.width,y.height=g.height;var v=xp(y,{width:n.getWidth(),height:n.getHeight()},t.get("padding"));a||("middle"===(a=t.get("left")||t.get("right"))&&(a="center"),"right"===a?v.x+=v.width:"center"===a&&(v.x+=v.width/2)),s||("center"===(s=t.get("top")||t.get("bottom"))&&(s="middle"),"bottom"===s?v.y+=v.height:"middle"===s&&(v.y+=v.height/2),s=s||"top"),i.x=v.x,i.y=v.y,i.markRedraw();var m={align:a,verticalAlign:s};l.setStyle(m),c.setStyle(m),g=i.getBoundingRect();var x=v.margin,_=t.getItemStyle(["color","opacity"]);_.fill=t.get("backgroundColor");var b=new Cs({shape:{x:g.x-x[3],y:g.y-x[0],width:g.width+x[1]+x[3],height:g.height+x[0]+x[2],r:t.get("borderRadius")},style:_,subPixelOptimize:!0,silent:!0});i.add(b)}},e.type="title",e}(gg);var bV=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.layoutMode="box",n}return n(e,t),e.prototype.init=function(t,e,n){this.mergeDefaultAndTheme(t,n),this._initData()},e.prototype.mergeOption=function(e){t.prototype.mergeOption.apply(this,arguments),this._initData()},e.prototype.setCurrentIndex=function(t){null==t&&(t=this.option.currentIndex);var e=this._data.count();this.option.loop?t=(t%e+e)%e:(t>=e&&(t=e-1),t<0&&(t=0)),this.option.currentIndex=t},e.prototype.getCurrentIndex=function(){return this.option.currentIndex},e.prototype.isIndexMax=function(){return this.getCurrentIndex()>=this._data.count()-1},e.prototype.setPlayState=function(t){this.option.autoPlay=!!t},e.prototype.getPlayState=function(){return!!this.option.autoPlay},e.prototype._initData=function(){var t,e=this.option,n=e.data||[],i=e.axisType,r=this._names=[];"category"===i?(t=[],E(n,(function(e,n){var i,o=xo(fo(e),"");q(e)?(i=T(e)).value=n:i=n,t.push(i),r.push(o)}))):t=n;var o={category:"ordinal",time:"time",value:"number"}[i]||"number";(this._data=new qm([{name:"value",type:o}],this)).initData(t,r)},e.prototype.getData=function(){return this._data},e.prototype.getCategories=function(){if("category"===this.get("axisType"))return this._names.slice()},e.type="timeline",e.defaultOption={z:4,show:!0,axisType:"time",realtime:!0,left:"20%",top:null,right:"20%",bottom:0,width:null,height:40,padding:5,controlPosition:"left",autoPlay:!1,rewind:!1,loop:!0,playInterval:2e3,currentIndex:0,itemStyle:{},label:{color:"#000"},data:[]},e}(Tp),wV=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.type="timeline.slider",e.defaultOption=yc(bV.defaultOption,{backgroundColor:"rgba(0,0,0,0)",borderColor:"#ccc",borderWidth:0,orient:"horizontal",inverse:!1,tooltip:{trigger:"item"},symbol:"circle",symbolSize:12,lineStyle:{show:!0,width:2,color:"#DAE1F5"},label:{position:"auto",show:!0,interval:"auto",rotate:0,color:"#A4B1D7"},itemStyle:{color:"#A4B1D7",borderWidth:1},checkpointStyle:{symbol:"circle",symbolSize:15,color:"#316bf3",borderColor:"#fff",borderWidth:2,shadowBlur:2,shadowOffsetX:1,shadowOffsetY:1,shadowColor:"rgba(0, 0, 0, 0.3)",animation:!0,animationDuration:300,animationEasing:"quinticInOut"},controlStyle:{show:!0,showPlayBtn:!0,showPrevBtn:!0,showNextBtn:!0,itemSize:24,itemGap:12,position:"left",playIcon:"path://M31.6,53C17.5,53,6,41.5,6,27.4S17.5,1.8,31.6,1.8C45.7,1.8,57.2,13.3,57.2,27.4S45.7,53,31.6,53z M31.6,3.3 C18.4,3.3,7.5,14.1,7.5,27.4c0,13.3,10.8,24.1,24.1,24.1C44.9,51.5,55.7,40.7,55.7,27.4C55.7,14.1,44.9,3.3,31.6,3.3z M24.9,21.3 c0-2.2,1.6-3.1,3.5-2l10.5,6.1c1.899,1.1,1.899,2.9,0,4l-10.5,6.1c-1.9,1.1-3.5,0.2-3.5-2V21.3z",stopIcon:"path://M30.9,53.2C16.8,53.2,5.3,41.7,5.3,27.6S16.8,2,30.9,2C45,2,56.4,13.5,56.4,27.6S45,53.2,30.9,53.2z M30.9,3.5C17.6,3.5,6.8,14.4,6.8,27.6c0,13.3,10.8,24.1,24.101,24.1C44.2,51.7,55,40.9,55,27.6C54.9,14.4,44.1,3.5,30.9,3.5z M36.9,35.8c0,0.601-0.4,1-0.9,1h-1.3c-0.5,0-0.9-0.399-0.9-1V19.5c0-0.6,0.4-1,0.9-1H36c0.5,0,0.9,0.4,0.9,1V35.8z M27.8,35.8 c0,0.601-0.4,1-0.9,1h-1.3c-0.5,0-0.9-0.399-0.9-1V19.5c0-0.6,0.4-1,0.9-1H27c0.5,0,0.9,0.4,0.9,1L27.8,35.8L27.8,35.8z",nextIcon:"M2,18.5A1.52,1.52,0,0,1,.92,18a1.49,1.49,0,0,1,0-2.12L7.81,9.36,1,3.11A1.5,1.5,0,1,1,3,.89l8,7.34a1.48,1.48,0,0,1,.49,1.09,1.51,1.51,0,0,1-.46,1.1L3,18.08A1.5,1.5,0,0,1,2,18.5Z",prevIcon:"M10,.5A1.52,1.52,0,0,1,11.08,1a1.49,1.49,0,0,1,0,2.12L4.19,9.64,11,15.89a1.5,1.5,0,1,1-2,2.22L1,10.77A1.48,1.48,0,0,1,.5,9.68,1.51,1.51,0,0,1,1,8.58L9,.92A1.5,1.5,0,0,1,10,.5Z",prevBtnSize:18,nextBtnSize:18,color:"#A4B1D7",borderColor:"#A4B1D7",borderWidth:1},emphasis:{label:{show:!0,color:"#6f778d"},itemStyle:{color:"#316BF3"},controlStyle:{color:"#316BF3",borderColor:"#316BF3",borderWidth:2}},progress:{lineStyle:{color:"#316BF3"},itemStyle:{color:"#316BF3"},label:{color:"#6f778d"}},data:[]}),e}(bV);R(wV,lf.prototype);var SV=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.type="timeline",e}(gg),MV=function(t){function e(e,n,i,r){var o=t.call(this,e,n,i)||this;return o.type=r||"value",o}return n(e,t),e.prototype.getLabelModel=function(){return this.model.getModel("label")},e.prototype.isHorizontal=function(){return"horizontal"===this.model.get("orient")},e}(H_),IV=Math.PI,TV=So(),CV=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.init=function(t,e){this.api=e},e.prototype.render=function(t,e,n){if(this.model=t,this.api=n,this.ecModel=e,this.group.removeAll(),t.get("show",!0)){var i=this._layout(t,n),r=this._createGroup("_mainGroup"),o=this._createGroup("_labelGroup"),a=this._axis=this._createAxis(i,t);t.formatTooltip=function(t){return Xf("nameValue",{noName:!0,value:a.scale.getLabel({value:t})})},E(["AxisLine","AxisTick","Control","CurrentPointer"],(function(e){this["_render"+e](i,r,a,t)}),this),this._renderAxisLabel(i,o,a,t),this._position(i,t)}this._doPlayStop(),this._updateTicksStatus()},e.prototype.remove=function(){this._clearTimer(),this.group.removeAll()},e.prototype.dispose=function(){this._clearTimer()},e.prototype._layout=function(t,e){var n,i,r,o,a=t.get(["label","position"]),s=t.get("orient"),l=function(t,e){return xp(t.getBoxLayoutParams(),{width:e.getWidth(),height:e.getHeight()},t.get("padding"))}(t,e),u={horizontal:"center",vertical:(n=null==a||"auto"===a?"horizontal"===s?l.y+l.height/2=0||"+"===n?"left":"right"},h={horizontal:n>=0||"+"===n?"top":"bottom",vertical:"middle"},c={horizontal:0,vertical:IV/2},p="vertical"===s?l.height:l.width,d=t.getModel("controlStyle"),f=d.get("show",!0),g=f?d.get("itemSize"):0,y=f?d.get("itemGap"):0,v=g+y,m=t.get(["label","rotate"])||0;m=m*IV/180;var x=d.get("position",!0),_=f&&d.get("showPlayBtn",!0),b=f&&d.get("showPrevBtn",!0),w=f&&d.get("showNextBtn",!0),S=0,M=p;"left"===x||"bottom"===x?(_&&(i=[0,0],S+=v),b&&(r=[S,0],S+=v),w&&(o=[M-g,0],M-=v)):(_&&(i=[M-g,0],M-=v),b&&(r=[0,0],S+=v),w&&(o=[M-g,0],M-=v));var I=[S,M];return t.get("inverse")&&I.reverse(),{viewRect:l,mainLength:p,orient:s,rotation:c[s],labelRotation:m,labelPosOpt:n,labelAlign:t.get(["label","align"])||u[s],labelBaseline:t.get(["label","verticalAlign"])||t.get(["label","baseline"])||h[s],playPosition:i,prevBtnPosition:r,nextBtnPosition:o,axisExtent:I,controlSize:g,controlGap:y}},e.prototype._position=function(t,e){var n=this._mainGroup,i=this._labelGroup,r=t.viewRect;if("vertical"===t.orient){var o=[1,0,0,1,0,0],a=r.x,s=r.y+r.height;Ei(o,o,[-a,-s]),zi(o,o,-IV/2),Ei(o,o,[a,s]),(r=r.clone()).applyTransform(o)}var l=y(r),u=y(n.getBoundingRect()),h=y(i.getBoundingRect()),c=[n.x,n.y],p=[i.x,i.y];p[0]=c[0]=l[0][0];var d,f=t.labelPosOpt;null==f||X(f)?(v(c,u,l,1,d="+"===f?0:1),v(p,h,l,1,1-d)):(v(c,u,l,1,d=f>=0?0:1),p[1]=c[1]+f);function g(t){t.originX=l[0][0]-t.x,t.originY=l[1][0]-t.y}function y(t){return[[t.x,t.x+t.width],[t.y,t.y+t.height]]}function v(t,e,n,i,r){t[i]+=n[i][r]-e[i][r]}n.setPosition(c),i.setPosition(p),n.rotation=i.rotation=t.rotation,g(n),g(i)},e.prototype._createAxis=function(t,e){var n=e.getData(),i=e.get("axisType"),r=function(t,e){if(e=e||t.get("type"))switch(e){case"category":return new vx({ordinalMeta:t.getCategories(),extent:[1/0,-1/0]});case"time":return new Rx({locale:t.ecModel.getLocaleModel(),useUTC:t.ecModel.get("useUTC")});default:return new xx}}(e,i);r.getTicks=function(){return n.mapArray(["value"],(function(t){return{value:t}}))};var o=n.getDataExtent("value");r.setExtent(o[0],o[1]),r.calcNiceTicks();var a=new MV("value",r,t.axisExtent,i);return a.model=e,a},e.prototype._createGroup=function(t){var e=this[t]=new Cr;return this.group.add(e),e},e.prototype._renderAxisLine=function(t,e,n,i){var r=n.getExtent();if(i.get(["lineStyle","show"])){var o=new zu({shape:{x1:r[0],y1:0,x2:r[1],y2:0},style:A({lineCap:"round"},i.getModel("lineStyle").getLineStyle()),silent:!0,z2:1});e.add(o);var a=this._progressLine=new zu({shape:{x1:r[0],x2:this._currentPointer?this._currentPointer.x:r[0],y1:0,y2:0},style:k({lineCap:"round",lineWidth:o.style.lineWidth},i.getModel(["progress","lineStyle"]).getLineStyle()),silent:!0,z2:1});e.add(a)}},e.prototype._renderAxisTick=function(t,e,n,i){var r=this,o=i.getData(),a=n.scale.getTicks();this._tickSymbols=[],E(a,(function(t){var a=n.dataToCoord(t.value),s=o.getItemModel(t.value),l=s.getModel("itemStyle"),u=s.getModel(["emphasis","itemStyle"]),h=s.getModel(["progress","itemStyle"]),c={x:a,y:0,onclick:W(r._changeTimeline,r,t.value)},p=DV(s,l,e,c);p.ensureState("emphasis").style=u.getItemStyle(),p.ensureState("progress").style=h.getItemStyle(),Ol(p);var d=Hs(p);s.get("tooltip")?(d.dataIndex=t.value,d.dataModel=i):d.dataIndex=d.dataModel=null,r._tickSymbols.push(p)}))},e.prototype._renderAxisLabel=function(t,e,n,i){var r=this;if(n.getLabelModel().get("show")){var o=i.getData(),a=n.getViewLabels();this._tickLabels=[],E(a,(function(i){var a=i.tickValue,s=o.getItemModel(a),l=s.getModel("label"),u=s.getModel(["emphasis","label"]),h=s.getModel(["progress","label"]),c=n.dataToCoord(i.tickValue),p=new ks({x:c,y:0,rotation:t.labelRotation-t.rotation,onclick:W(r._changeTimeline,r,a),silent:!1,style:Uh(l,{text:i.formattedLabel,align:t.labelAlign,verticalAlign:t.labelBaseline})});p.ensureState("emphasis").style=Uh(u),p.ensureState("progress").style=Uh(h),e.add(p),Ol(p),TV(p).dataIndex=a,r._tickLabels.push(p)}))}},e.prototype._renderControl=function(t,e,n,i){var r=t.controlSize,o=t.rotation,a=i.getModel("controlStyle").getItemStyle(),s=i.getModel(["emphasis","controlStyle"]).getItemStyle(),l=i.getPlayState(),u=i.get("inverse",!0);function h(t,n,l,u){if(t){var h=gr(rt(i.get(["controlStyle",n+"BtnSize"]),r),r),c=function(t,e,n,i){var r=i.style,o=Ph(t.get(["controlStyle",e]),i||{},new sr(n[0],n[1],n[2],n[3]));r&&o.setStyle(r);return o}(i,n+"Icon",[0,-h/2,h,h],{x:t[0],y:t[1],originX:r/2,originY:0,rotation:u?-o:0,rectHover:!0,style:a,onclick:l});c.ensureState("emphasis").style=s,e.add(c),Ol(c)}}h(t.nextBtnPosition,"next",W(this._changeTimeline,this,u?"-":"+")),h(t.prevBtnPosition,"prev",W(this._changeTimeline,this,u?"+":"-")),h(t.playPosition,l?"stop":"play",W(this._handlePlayClick,this,!l),!0)},e.prototype._renderCurrentPointer=function(t,e,n,i){var r=i.getData(),o=i.getCurrentIndex(),a=r.getItemModel(o).getModel("checkpointStyle"),s=this,l={onCreate:function(t){t.draggable=!0,t.drift=W(s._handlePointerDrag,s),t.ondragend=W(s._handlePointerDragend,s),AV(t,s._progressLine,o,n,i,!0)},onUpdate:function(t){AV(t,s._progressLine,o,n,i)}};this._currentPointer=DV(a,a,this._mainGroup,{},this._currentPointer,l)},e.prototype._handlePlayClick=function(t){this._clearTimer(),this.api.dispatchAction({type:"timelinePlayChange",playState:t,from:this.uid})},e.prototype._handlePointerDrag=function(t,e,n){this._clearTimer(),this._pointerChangeTimeline([n.offsetX,n.offsetY])},e.prototype._handlePointerDragend=function(t){this._pointerChangeTimeline([t.offsetX,t.offsetY],!0)},e.prototype._pointerChangeTimeline=function(t,e){var n=this._toAxisCoord(t)[0],i=Vr(this._axis.getExtent().slice());n>i[1]&&(n=i[1]),n=0&&(a[o]=+a[o].toFixed(c)),[a,h]}var FV={min:H(BV,"min"),max:H(BV,"max"),average:H(BV,"average"),median:H(BV,"median")};function GV(t,e){var n=t.getData(),i=t.coordinateSystem;if(e&&!function(t){return!isNaN(parseFloat(t.x))&&!isNaN(parseFloat(t.y))}(e)&&!Y(e.coord)&&i){var r=i.dimensions,o=WV(e,n,i,t);if((e=T(e)).type&&FV[e.type]&&o.baseAxis&&o.valueAxis){var a=P(r,o.baseAxis.dim),s=P(r,o.valueAxis.dim),l=FV[e.type](n,o.baseDataDim,o.valueDataDim,a,s);e.coord=l[0],e.value=l[1]}else{for(var u=[null!=e.xAxis?e.xAxis:e.radiusAxis,null!=e.yAxis?e.yAxis:e.angleAxis],h=0;h<2;h++)FV[u[h]]&&(u[h]=UV(n,n.mapDimension(r[h]),u[h]));e.coord=u}}return e}function WV(t,e,n,i){var r={};return null!=t.valueIndex||null!=t.valueDim?(r.valueDataDim=null!=t.valueIndex?e.getDimension(t.valueIndex):t.valueDim,r.valueAxis=n.getAxis(function(t,e){var n=t.getData().getDimensionInfo(e);return n&&n.coordDim}(i,r.valueDataDim)),r.baseAxis=n.getOtherAxis(r.valueAxis),r.baseDataDim=e.mapDimension(r.baseAxis.dim)):(r.baseAxis=i.getBaseAxis(),r.valueAxis=n.getOtherAxis(r.baseAxis),r.baseDataDim=e.mapDimension(r.baseAxis.dim),r.valueDataDim=e.mapDimension(r.valueAxis.dim)),r}function HV(t,e){return!(t&&t.containData&&e.coord&&!VV(e))||t.containData(e.coord)}function YV(t,e){return t?function(t,n,i,r){return df(r<2?t.coord&&t.coord[r]:t.value,e[r])}:function(t,n,i,r){return df(t.value,e[r])}}function UV(t,e,n){if("average"===n){var i=0,r=0;return t.each(e,(function(t,e){isNaN(t)||(i+=t,r++)})),i/r}return"median"===n?t.getMedian(e):t.getDataExtent(e)["max"===n?1:0]}var XV=So(),ZV=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.init=function(){this.markerGroupMap=ft()},e.prototype.render=function(t,e,n){var i=this,r=this.markerGroupMap;r.each((function(t){XV(t).keep=!1})),e.eachSeries((function(t){var r=EV.getMarkerModelFromSeries(t,i.type);r&&i.renderSeries(t,r,e,n)})),r.each((function(t){!XV(t).keep&&i.group.remove(t.group)}))},e.prototype.markKeep=function(t){XV(t).keep=!0},e.prototype.toggleBlurSeries=function(t,e){var n=this;E(t,(function(t){var i=EV.getMarkerModelFromSeries(t,n.type);i&&i.getData().eachItemGraphicEl((function(t){t&&(e?wl(t):Sl(t))}))}))},e.type="marker",e}(gg);function jV(t,e,n){var i=e.coordinateSystem;t.each((function(r){var o,a=t.getItemModel(r),s=Er(a.get("x"),n.getWidth()),l=Er(a.get("y"),n.getHeight());if(isNaN(s)||isNaN(l)){if(e.getMarkerPosition)o=e.getMarkerPosition(t.getValues(t.dimensions,r));else if(i){var u=t.get(i.dimensions[0],r),h=t.get(i.dimensions[1],r);o=i.dataToPoint([u,h])}}else o=[s,l];isNaN(s)||(o[0]=s),isNaN(l)||(o[1]=l),t.setItemLayout(r,o)}))}var qV=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.updateTransform=function(t,e,n){e.eachSeries((function(t){var e=EV.getMarkerModelFromSeries(t,"markPoint");e&&(jV(e.getData(),t,n),this.markerGroupMap.get(t.id).updateLayout())}),this)},e.prototype.renderSeries=function(t,e,n,i){var r=t.coordinateSystem,o=t.id,a=t.getData(),s=this.markerGroupMap,l=s.get(o)||s.set(o,new qw),u=function(t,e,n){var i;i=t?z(t&&t.dimensions,(function(t){return A(A({},e.getData().getDimensionInfo(e.getData().mapDimension(t))||{}),{name:t,ordinalMeta:null})})):[{name:"value",type:"float"}];var r=new qm(i,n),o=z(n.get("data"),H(GV,e));t&&(o=B(o,H(HV,t)));var a=YV(!!t,i);return r.initData(o,null,a),r}(r,t,e);e.setData(u),jV(e.getData(),t,i),u.each((function(t){var n=u.getItemModel(t),i=n.getShallow("symbol"),r=n.getShallow("symbolSize"),o=n.getShallow("symbolRotate"),s=n.getShallow("symbolOffset"),l=n.getShallow("symbolKeepAspect");if(U(i)||U(r)||U(o)||U(s)){var h=e.getRawValue(t),c=e.getDataParams(t);U(i)&&(i=i(h,c)),U(r)&&(r=r(h,c)),U(o)&&(o=o(h,c)),U(s)&&(s=s(h,c))}var p=n.getModel("itemStyle").getItemStyle(),d=gy(a,"color");p.fill||(p.fill=d),u.setItemVisual(t,{symbol:i,symbolSize:r,symbolRotate:o,symbolOffset:s,symbolKeepAspect:l,style:p})})),l.updateData(u),this.group.add(l.group),u.eachItemGraphicEl((function(t){t.traverse((function(t){Hs(t).dataModel=e}))})),this.markKeep(l),l.group.silent=e.get("silent")||t.get("silent")},e.type="markPoint",e}(ZV);var KV=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.createMarkerModelFromSeries=function(t,n,i){return new e(t,n,i)},e.type="markLine",e.defaultOption={z:5,symbol:["circle","arrow"],symbolSize:[8,16],symbolOffset:0,precision:2,tooltip:{trigger:"item"},label:{show:!0,position:"end",distance:5},lineStyle:{type:"dashed"},emphasis:{label:{show:!0},lineStyle:{width:3}},animationEasing:"linear"},e}(EV),$V=So(),JV=function(t,e,n,i){var r,o=t.getData();if(Y(i))r=i;else{var a=i.type;if("min"===a||"max"===a||"average"===a||"median"===a||null!=i.xAxis||null!=i.yAxis){var s=void 0,l=void 0;if(null!=i.yAxis||null!=i.xAxis)s=e.getAxis(null!=i.yAxis?"y":"x"),l=it(i.yAxis,i.xAxis);else{var u=WV(i,o,e,t);s=u.valueAxis,l=UV(o,ix(o,u.valueDataDim),a)}var h="x"===s.dim?0:1,c=1-h,p=T(i),d={coord:[]};p.type=null,p.coord=[],p.coord[c]=-1/0,d.coord[c]=1/0;var f=n.get("precision");f>=0&&j(l)&&(l=+l.toFixed(Math.min(f,20))),p.coord[h]=d.coord[h]=l,r=[p,d,{type:a,valueIndex:i.valueIndex,value:l}]}else r=[]}var g=[GV(t,r[0]),GV(t,r[1]),A({},r[2])];return g[2].type=g[2].type||null,C(g[2],g[0]),C(g[2],g[1]),g};function QV(t){return!isNaN(t)&&!isFinite(t)}function tB(t,e,n,i){var r=1-t,o=i.dimensions[t];return QV(e[r])&&QV(n[r])&&e[t]===n[t]&&i.getAxis(o).containData(e[t])}function eB(t,e){if("cartesian2d"===t.type){var n=e[0].coord,i=e[1].coord;if(n&&i&&(tB(1,n,i,t)||tB(0,n,i,t)))return!0}return HV(t,e[0])&&HV(t,e[1])}function nB(t,e,n,i,r){var o,a=i.coordinateSystem,s=t.getItemModel(e),l=Er(s.get("x"),r.getWidth()),u=Er(s.get("y"),r.getHeight());if(isNaN(l)||isNaN(u)){if(i.getMarkerPosition)o=i.getMarkerPosition(t.getValues(t.dimensions,e));else{var h=a.dimensions,c=t.get(h[0],e),p=t.get(h[1],e);o=a.dataToPoint([c,p])}if(uS(a,"cartesian2d")){var d=a.getAxis("x"),f=a.getAxis("y");h=a.dimensions;QV(t.get(h[0],e))?o[0]=d.toGlobalCoord(d.getExtent()[n?0:1]):QV(t.get(h[1],e))&&(o[1]=f.toGlobalCoord(f.getExtent()[n?0:1]))}isNaN(l)||(o[0]=l),isNaN(u)||(o[1]=u)}else o=[l,u];t.setItemLayout(e,o)}var iB=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.updateTransform=function(t,e,n){e.eachSeries((function(t){var e=EV.getMarkerModelFromSeries(t,"markLine");if(e){var i=e.getData(),r=$V(e).from,o=$V(e).to;r.each((function(e){nB(r,e,!0,t,n),nB(o,e,!1,t,n)})),i.each((function(t){i.setItemLayout(t,[r.getItemLayout(t),o.getItemLayout(t)])})),this.markerGroupMap.get(t.id).updateLayout()}}),this)},e.prototype.renderSeries=function(t,e,n,i){var r=t.coordinateSystem,o=t.id,a=t.getData(),s=this.markerGroupMap,l=s.get(o)||s.set(o,new gA);this.group.add(l.group);var u=function(t,e,n){var i;i=t?z(t&&t.dimensions,(function(t){return A(A({},e.getData().getDimensionInfo(e.getData().mapDimension(t))||{}),{name:t,ordinalMeta:null})})):[{name:"value",type:"float"}];var r=new qm(i,n),o=new qm(i,n),a=new qm([],n),s=z(n.get("data"),H(JV,e,t,n));t&&(s=B(s,H(eB,t)));var l=YV(!!t,i);return r.initData(z(s,(function(t){return t[0]})),null,l),o.initData(z(s,(function(t){return t[1]})),null,l),a.initData(z(s,(function(t){return t[2]}))),a.hasItemOption=!0,{from:r,to:o,line:a}}(r,t,e),h=u.from,c=u.to,p=u.line;$V(e).from=h,$V(e).to=c,e.setData(p);var d=e.get("symbol"),f=e.get("symbolSize"),g=e.get("symbolRotate"),y=e.get("symbolOffset");function v(e,n,r){var o=e.getItemModel(n);nB(e,n,r,t,i);var s=o.getModel("itemStyle").getItemStyle();null==s.fill&&(s.fill=gy(a,"color")),e.setItemVisual(n,{symbolKeepAspect:o.get("symbolKeepAspect"),symbolOffset:rt(o.get("symbolOffset",!0),y[r?0:1]),symbolRotate:rt(o.get("symbolRotate",!0),g[r?0:1]),symbolSize:rt(o.get("symbolSize"),f[r?0:1]),symbol:rt(o.get("symbol",!0),d[r?0:1]),style:s})}Y(d)||(d=[d,d]),Y(f)||(f=[f,f]),Y(g)||(g=[g,g]),Y(y)||(y=[y,y]),u.from.each((function(t){v(h,t,!0),v(c,t,!1)})),p.each((function(t){var e=p.getItemModel(t).getModel("lineStyle").getLineStyle();p.setItemLayout(t,[h.getItemLayout(t),c.getItemLayout(t)]),null==e.stroke&&(e.stroke=h.getItemVisual(t,"style").fill),p.setItemVisual(t,{fromSymbolKeepAspect:h.getItemVisual(t,"symbolKeepAspect"),fromSymbolOffset:h.getItemVisual(t,"symbolOffset"),fromSymbolRotate:h.getItemVisual(t,"symbolRotate"),fromSymbolSize:h.getItemVisual(t,"symbolSize"),fromSymbol:h.getItemVisual(t,"symbol"),toSymbolKeepAspect:c.getItemVisual(t,"symbolKeepAspect"),toSymbolOffset:c.getItemVisual(t,"symbolOffset"),toSymbolRotate:c.getItemVisual(t,"symbolRotate"),toSymbolSize:c.getItemVisual(t,"symbolSize"),toSymbol:c.getItemVisual(t,"symbol"),style:e})})),l.updateData(p),u.line.eachItemGraphicEl((function(t){Hs(t).dataModel=e,t.traverse((function(t){Hs(t).dataModel=e}))})),this.markKeep(l),l.group.silent=e.get("silent")||t.get("silent")},e.type="markLine",e}(ZV);var rB=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.createMarkerModelFromSeries=function(t,n,i){return new e(t,n,i)},e.type="markArea",e.defaultOption={z:1,tooltip:{trigger:"item"},animation:!1,label:{show:!0,position:"top"},itemStyle:{borderWidth:0},emphasis:{label:{show:!0,position:"top"}}},e}(EV),oB=So(),aB=function(t,e,n,i){var r=GV(t,i[0]),o=GV(t,i[1]),a=r.coord,s=o.coord;a[0]=it(a[0],-1/0),a[1]=it(a[1],-1/0),s[0]=it(s[0],1/0),s[1]=it(s[1],1/0);var l=D([{},r,o]);return l.coord=[r.coord,o.coord],l.x0=r.x,l.y0=r.y,l.x1=o.x,l.y1=o.y,l};function sB(t){return!isNaN(t)&&!isFinite(t)}function lB(t,e,n,i){var r=1-t;return sB(e[r])&&sB(n[r])}function uB(t,e){var n=e.coord[0],i=e.coord[1],r={coord:n,x:e.x0,y:e.y0},o={coord:i,x:e.x1,y:e.y1};return uS(t,"cartesian2d")?!(!n||!i||!lB(1,n,i)&&!lB(0,n,i))||function(t,e,n){return!(t&&t.containZone&&e.coord&&n.coord&&!VV(e)&&!VV(n))||t.containZone(e.coord,n.coord)}(t,r,o):HV(t,r)||HV(t,o)}function hB(t,e,n,i,r){var o,a=i.coordinateSystem,s=t.getItemModel(e),l=Er(s.get(n[0]),r.getWidth()),u=Er(s.get(n[1]),r.getHeight());if(isNaN(l)||isNaN(u)){if(i.getMarkerPosition)o=i.getMarkerPosition(t.getValues(n,e));else{var h=[d=t.get(n[0],e),f=t.get(n[1],e)];a.clampData&&a.clampData(h,h),o=a.dataToPoint(h,!0)}if(uS(a,"cartesian2d")){var c=a.getAxis("x"),p=a.getAxis("y"),d=t.get(n[0],e),f=t.get(n[1],e);sB(d)?o[0]=c.toGlobalCoord(c.getExtent()["x0"===n[0]?0:1]):sB(f)&&(o[1]=p.toGlobalCoord(p.getExtent()["y0"===n[1]?0:1]))}isNaN(l)||(o[0]=l),isNaN(u)||(o[1]=u)}else o=[l,u];return o}var cB=[["x0","y0"],["x1","y0"],["x1","y1"],["x0","y1"]],pB=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.updateTransform=function(t,e,n){e.eachSeries((function(t){var e=EV.getMarkerModelFromSeries(t,"markArea");if(e){var i=e.getData();i.each((function(e){var r=z(cB,(function(r){return hB(i,e,r,t,n)}));i.setItemLayout(e,r),i.getItemGraphicEl(e).setShape("points",r)}))}}),this)},e.prototype.renderSeries=function(t,e,n,i){var r=t.coordinateSystem,o=t.id,a=t.getData(),s=this.markerGroupMap,l=s.get(o)||s.set(o,{group:new Cr});this.group.add(l.group),this.markKeep(l);var u=function(t,e,n){var i,r,o=["x0","y0","x1","y1"];if(t){var a=z(t&&t.dimensions,(function(t){var n=e.getData();return A(A({},n.getDimensionInfo(n.mapDimension(t))||{}),{name:t,ordinalMeta:null})}));r=z(o,(function(t,e){return{name:t,type:a[e%2].type}})),i=new qm(r,n)}else i=new qm(r=[{name:"value",type:"float"}],n);var s=z(n.get("data"),H(aB,e,t,n));t&&(s=B(s,H(uB,t)));var l=t?function(t,e,n,i){return df(t.coord[Math.floor(i/2)][i%2],r[i])}:function(t,e,n,i){return df(t.value,r[i])};return i.initData(s,null,l),i.hasItemOption=!0,i}(r,t,e);e.setData(u),u.each((function(e){var n=z(cB,(function(n){return hB(u,e,n,t,i)})),o=r.getAxis("x").scale,s=r.getAxis("y").scale,l=o.getExtent(),h=s.getExtent(),c=[o.parse(u.get("x0",e)),o.parse(u.get("x1",e))],p=[s.parse(u.get("y0",e)),s.parse(u.get("y1",e))];Vr(c),Vr(p);var d=!!(l[0]>c[1]||l[1]p[1]||h[1]=0},e.prototype.getOrient=function(){return"vertical"===this.get("orient")?{index:1,name:"vertical"}:{index:0,name:"horizontal"}},e.type="legend.plain",e.dependencies=["series"],e.defaultOption={z:4,show:!0,orient:"horizontal",left:"center",top:0,align:"auto",backgroundColor:"rgba(0,0,0,0)",borderColor:"#ccc",borderRadius:0,borderWidth:0,padding:5,itemGap:10,itemWidth:25,itemHeight:14,symbolRotate:"inherit",symbolKeepAspect:!0,inactiveColor:"#ccc",inactiveBorderColor:"#ccc",inactiveBorderWidth:"auto",itemStyle:{color:"inherit",opacity:"inherit",borderColor:"inherit",borderWidth:"auto",borderCap:"inherit",borderJoin:"inherit",borderDashOffset:"inherit",borderMiterLimit:"inherit"},lineStyle:{width:"auto",color:"inherit",inactiveColor:"#ccc",inactiveWidth:2,opacity:"inherit",type:"inherit",cap:"inherit",join:"inherit",dashOffset:"inherit",miterLimit:"inherit"},textStyle:{color:"#333"},selectedMode:!0,selector:!1,selectorLabel:{show:!0,borderRadius:10,padding:[3,5,3,5],fontSize:12,fontFamily:"sans-serif",color:"#666",borderWidth:1,borderColor:"#666"},emphasis:{selectorLabel:{show:!0,color:"#eee",backgroundColor:"#666"}},selectorPosition:"auto",selectorItemGap:7,selectorButtonGap:10,tooltip:{show:!1}},e}(Tp),fB=H,gB=E,yB=Cr,vB=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.newlineDisabled=!1,n}return n(e,t),e.prototype.init=function(){this.group.add(this._contentGroup=new yB),this.group.add(this._selectorGroup=new yB),this._isFirstRender=!0},e.prototype.getContentGroup=function(){return this._contentGroup},e.prototype.getSelectorGroup=function(){return this._selectorGroup},e.prototype.render=function(t,e,n){var i=this._isFirstRender;if(this._isFirstRender=!1,this.resetInner(),t.get("show",!0)){var r=t.get("align"),o=t.get("orient");r&&"auto"!==r||(r="right"===t.get("left")&&"vertical"===o?"right":"left");var a=t.get("selector",!0),s=t.get("selectorPosition",!0);!a||s&&"auto"!==s||(s="horizontal"===o?"end":"start"),this.renderInner(r,t,e,n,a,o,s);var l=t.getBoxLayoutParams(),u={width:n.getWidth(),height:n.getHeight()},h=t.get("padding"),c=xp(l,u,h),p=this.layoutInner(t,r,c,i,a,s),d=xp(k({width:p.width,height:p.height},l),u,h);this.group.x=d.x-p.x,this.group.y=d.y-p.y,this.group.markRedraw(),this.group.add(this._backgroundEl=XE(p,t))}},e.prototype.resetInner=function(){this.getContentGroup().removeAll(),this._backgroundEl&&this.group.remove(this._backgroundEl),this.getSelectorGroup().removeAll()},e.prototype.renderInner=function(t,e,n,i,r,o,a){var s=this.getContentGroup(),l=ft(),u=e.get("selectedMode"),h=[];n.eachRawSeries((function(t){!t.get("legendHoverLink")&&h.push(t.id)})),gB(e.getData(),(function(r,o){var a=r.get("name");if(!this.newlineDisabled&&(""===a||"\n"===a)){var c=new yB;return c.newline=!0,void s.add(c)}var p=n.getSeriesByName(a)[0];if(!l.get(a)){if(p){var d=p.getData(),f=d.getVisual("legendLineStyle")||{},g=d.getVisual("legendIcon"),y=d.getVisual("style");this._createItem(p,a,o,r,e,t,f,y,g,u,i).on("click",fB(mB,a,null,i,h)).on("mouseover",fB(_B,p.name,null,i,h)).on("mouseout",fB(bB,p.name,null,i,h)),l.set(a,!0)}else n.eachRawSeries((function(n){if(!l.get(a)&&n.legendVisualProvider){var s=n.legendVisualProvider;if(!s.containName(a))return;var c=s.indexOfName(a),p=s.getItemVisual(c,"style"),d=s.getItemVisual(c,"legendIcon"),f=bn(p.fill);f&&0===f[3]&&(f[3]=.2,p=A(A({},p),{fill:kn(f,"rgba")})),this._createItem(n,a,o,r,e,t,{},p,d,u,i).on("click",fB(mB,null,a,i,h)).on("mouseover",fB(_B,null,a,i,h)).on("mouseout",fB(bB,null,a,i,h)),l.set(a,!0)}}),this);0}}),this),r&&this._createSelector(r,e,i,o,a)},e.prototype._createSelector=function(t,e,n,i,r){var o=this.getSelectorGroup();gB(t,(function(t){var i=t.type,r=new ks({style:{x:0,y:0,align:"center",verticalAlign:"middle"},onclick:function(){n.dispatchAction({type:"all"===i?"legendAllSelect":"legendInverseSelect"})}});o.add(r),Hh(r,{normal:e.getModel("selectorLabel"),emphasis:e.getModel(["emphasis","selectorLabel"])},{defaultText:t.title}),Ol(r)}))},e.prototype._createItem=function(t,e,n,i,r,o,a,s,l,u,h){var c=t.visualDrawType,p=r.get("itemWidth"),d=r.get("itemHeight"),f=r.isSelected(e),g=i.get("symbolRotate"),y=i.get("symbolKeepAspect"),v=i.get("icon"),m=function(t,e,n,i,r,o,a){function s(t,e){"auto"===t.lineWidth&&(t.lineWidth=e.lineWidth>0?2:0),gB(t,(function(n,i){"inherit"===t[i]&&(t[i]=e[i])}))}var l=e.getModel("itemStyle"),u=l.getItemStyle(),h=0===t.lastIndexOf("empty",0)?"fill":"stroke",c=l.getShallow("decal");u.decal=c&&"inherit"!==c?rv(c,a):i.decal,"inherit"===u.fill&&(u.fill=i[r]);"inherit"===u.stroke&&(u.stroke=i[h]);"inherit"===u.opacity&&(u.opacity=("fill"===r?i:n).opacity);s(u,i);var p=e.getModel("lineStyle"),d=p.getLineStyle();if(s(d,n),"auto"===u.fill&&(u.fill=i.fill),"auto"===u.stroke&&(u.stroke=i.fill),"auto"===d.stroke&&(d.stroke=i.fill),!o){var f=e.get("inactiveBorderWidth"),g=u[h];u.lineWidth="auto"===f?i.lineWidth>0&&g?2:0:u.lineWidth,u.fill=e.get("inactiveColor"),u.stroke=e.get("inactiveBorderColor"),d.stroke=p.get("inactiveColor"),d.lineWidth=p.get("inactiveWidth")}return{itemStyle:u,lineStyle:d}}(l=v||l||"roundRect",i,a,s,c,f,h),x=new yB,_=i.getModel("textStyle");if(!U(t.getLegendIcon)||v&&"inherit"!==v){var b="inherit"===v&&t.getData().getVisual("symbol")?"inherit"===g?t.getData().getVisual("symbolRotate"):g:0;x.add(function(t){var e=t.icon||"roundRect",n=Ly(e,0,0,t.itemWidth,t.itemHeight,t.itemStyle.fill,t.symbolKeepAspect);n.setStyle(t.itemStyle),n.rotation=(t.iconRotate||0)*Math.PI/180,n.setOrigin([t.itemWidth/2,t.itemHeight/2]),e.indexOf("empty")>-1&&(n.style.stroke=n.style.fill,n.style.fill="#fff",n.style.lineWidth=2);return n}({itemWidth:p,itemHeight:d,icon:l,iconRotate:b,itemStyle:m.itemStyle,lineStyle:m.lineStyle,symbolKeepAspect:y}))}else x.add(t.getLegendIcon({itemWidth:p,itemHeight:d,icon:l,iconRotate:g,itemStyle:m.itemStyle,lineStyle:m.lineStyle,symbolKeepAspect:y}));var w="left"===o?p+5:-5,S=o,M=r.get("formatter"),I=e;X(M)&&M?I=M.replace("{name}",null!=e?e:""):U(M)&&(I=M(e));var T=i.get("inactiveColor");x.add(new ks({style:Uh(_,{text:I,x:w,y:d/2,fill:f?_.getTextColor():T,align:S,verticalAlign:"middle"})}));var C=new Cs({shape:x.getBoundingRect(),invisible:!0}),D=i.getModel("tooltip");return D.get("show")&&Eh({el:C,componentModel:r,itemName:e,itemTooltipOption:D.option}),x.add(C),x.eachChild((function(t){t.silent=!0})),C.silent=!u,this.getContentGroup().add(x),Ol(x),x.__legendDataIndex=n,x},e.prototype.layoutInner=function(t,e,n,i,r,o){var a=this.getContentGroup(),s=this.getSelectorGroup();mp(t.get("orient"),a,t.get("itemGap"),n.width,n.height);var l=a.getBoundingRect(),u=[-l.x,-l.y];if(s.markRedraw(),a.markRedraw(),r){mp("horizontal",s,t.get("selectorItemGap",!0));var h=s.getBoundingRect(),c=[-h.x,-h.y],p=t.get("selectorButtonGap",!0),d=t.getOrient().index,f=0===d?"width":"height",g=0===d?"height":"width",y=0===d?"y":"x";"end"===o?c[d]+=l[f]+p:u[d]+=h[f]+p,c[1-d]+=l[g]/2-h[g]/2,s.x=c[0],s.y=c[1],a.x=u[0],a.y=u[1];var v={x:0,y:0};return v[f]=l[f]+p+h[f],v[g]=Math.max(l[g],h[g]),v[y]=Math.min(0,h[y]+c[1-d]),v}return a.x=u[0],a.y=u[1],this.group.getBoundingRect()},e.prototype.remove=function(){this.getContentGroup().removeAll(),this._isFirstRender=!0},e.type="legend.plain",e}(gg);function mB(t,e,n,i){bB(t,e,n,i),n.dispatchAction({type:"legendToggleSelect",name:null!=t?t:e}),_B(t,e,n,i)}function xB(t){for(var e,n=t.getZr().storage.getDisplayList(),i=0,r=n.length;in[r],f=[-c.x,-c.y];e||(f[i]=l[s]);var g=[0,0],y=[-p.x,-p.y],v=rt(t.get("pageButtonGap",!0),t.get("itemGap",!0));d&&("end"===t.get("pageButtonPosition",!0)?y[i]+=n[r]-p[r]:g[i]+=p[r]+v);y[1-i]+=c[o]/2-p[o]/2,l.setPosition(f),u.setPosition(g),h.setPosition(y);var m={x:0,y:0};if(m[r]=d?n[r]:c[r],m[o]=Math.max(c[o],p[o]),m[a]=Math.min(0,p[a]+y[1-i]),u.__rectSize=n[r],d){var x={x:0,y:0};x[r]=Math.max(n[r]-p[r]-v,0),x[o]=m[o],u.setClipPath(new Cs({shape:x})),u.__rectSize=x[r]}else h.eachChild((function(t){t.attr({invisible:!0,silent:!0})}));var _=this._getPageInfo(t);return null!=_.pageIndex&&rh(l,{x:_.contentPosition[0],y:_.contentPosition[1]},d?t:null),this._updatePageInfoView(t,_),m},e.prototype._pageGo=function(t,e,n){var i=this._getPageInfo(e)[t];null!=i&&n.dispatchAction({type:"legendScroll",scrollDataIndex:i,legendId:e.id})},e.prototype._updatePageInfoView=function(t,e){var n=this._controllerGroup;E(["pagePrev","pageNext"],(function(i){var r=null!=e[i+"DataIndex"],o=n.childOfName(i);o&&(o.setStyle("fill",r?t.get("pageIconColor",!0):t.get("pageIconInactiveColor",!0)),o.cursor=r?"pointer":"default")}));var i=n.childOfName("pageText"),r=t.get("pageFormatter"),o=e.pageIndex,a=null!=o?o+1:0,s=e.pageCount;i&&r&&i.setStyle("text",X(r)?r.replace("{current}",null==a?"":a+"").replace("{total}",null==s?"":s+""):r({current:a,total:s}))},e.prototype._getPageInfo=function(t){var e=t.get("scrollDataIndex",!0),n=this.getContentGroup(),i=this._containerGroup.__rectSize,r=t.getOrient().index,o=DB[r],a=AB[r],s=this._findTargetItemIndex(e),l=n.children(),u=l[s],h=l.length,c=h?1:0,p={contentPosition:[n.x,n.y],pageCount:c,pageIndex:c-1,pagePrevDataIndex:null,pageNextDataIndex:null};if(!u)return p;var d=m(u);p.contentPosition[r]=-d.s;for(var f=s+1,g=d,y=d,v=null;f<=h;++f)(!(v=m(l[f]))&&y.e>g.s+i||v&&!x(v,g.s))&&(g=y.i>g.i?y:v)&&(null==p.pageNextDataIndex&&(p.pageNextDataIndex=g.i),++p.pageCount),y=v;for(f=s-1,g=d,y=d,v=null;f>=-1;--f)(v=m(l[f]))&&x(y,v.s)||!(g.i=e&&t.s<=e+i}},e.prototype._findTargetItemIndex=function(t){return this._showController?(this.getContentGroup().eachChild((function(i,r){var o=i.__legendDataIndex;null==n&&null!=o&&(n=r),o===t&&(e=r)})),null!=e?e:n):0;var e,n},e.type="legend.scroll",e}(vB);function LB(t){wm(MB),t.registerComponentModel(IB),t.registerComponentView(kB),function(t){t.registerAction("legendScroll","legendscroll",(function(t,e){var n=t.scrollDataIndex;null!=n&&e.eachComponent({mainType:"legend",subType:"scroll",query:t},(function(t){t.setScrollDataIndex(n)}))}))}(t)}var PB=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.type="dataZoom.inside",e.defaultOption=yc(AE.defaultOption,{disabled:!1,zoomLock:!1,zoomOnMouseWheel:!0,moveOnMouseMove:!0,moveOnMouseWheel:!1,preventDefaultMouseMove:!0}),e}(AE),OB=So();function RB(t,e,n){OB(t).coordSysRecordMap.each((function(t){var i=t.dataZoomInfoMap.get(e.uid);i&&(i.getRange=n)}))}function NB(t,e){if(e){t.removeKey(e.model.uid);var n=e.controller;n&&n.dispose()}}function EB(t,e){t.isDisposed()||t.dispatchAction({type:"dataZoom",animation:{easing:"cubicOut",duration:100},batch:e})}function zB(t,e,n,i){return t.coordinateSystem.containPoint([n,i])}function VB(t){t.registerProcessor(t.PRIORITY.PROCESSOR.FILTER,(function(t,e){var n=OB(e),i=n.coordSysRecordMap||(n.coordSysRecordMap=ft());i.each((function(t){t.dataZoomInfoMap=null})),t.eachComponent({mainType:"dataZoom",subType:"inside"},(function(t){E(CE(t).infoList,(function(n){var r=n.model.uid,o=i.get(r)||i.set(r,function(t,e){var n={model:e,containsPoint:H(zB,e),dispatchAction:H(EB,t),dataZoomInfoMap:null,controller:null},i=n.controller=new kI(t.getZr());return E(["pan","zoom","scrollMove"],(function(t){i.on(t,(function(e){var i=[];n.dataZoomInfoMap.each((function(r){if(e.isAvailableBehavior(r.model.option)){var o=(r.getRange||{})[t],a=o&&o(r.dzReferCoordSysInfo,n.model.mainType,n.controller,e);!r.model.get("disabled",!0)&&a&&i.push({dataZoomId:r.model.id,start:a[0],end:a[1]})}})),i.length&&n.dispatchAction(i)}))})),n}(e,n.model));(o.dataZoomInfoMap||(o.dataZoomInfoMap=ft())).set(t.uid,{dzReferCoordSysInfo:n,model:t,getRange:null})}))})),i.each((function(t){var e,n=t.controller,r=t.dataZoomInfoMap;if(r){var o=r.keys()[0];null!=o&&(e=r.get(o))}if(e){var a=function(t){var e,n="type_",i={type_true:2,type_move:1,type_false:0,type_undefined:-1},r=!0;return t.each((function(t){var o=t.model,a=!o.get("disabled",!0)&&(!o.get("zoomLock",!0)||"move");i[n+a]>i[n+e]&&(e=a),r=r&&o.get("preventDefaultMouseMove",!0)})),{controlType:e,opt:{zoomOnMouseWheel:!0,moveOnMouseMove:!0,moveOnMouseWheel:!0,preventDefaultMouseMove:!!r}}}(r);n.enable(a.controlType,a.opt),n.setPointerChecker(t.containsPoint),Ag(t,"dispatchAction",e.model.get("throttle",!0),"fixRate")}else NB(i,t)}))}))}var BB=function(t){function e(){var e=null!==t&&t.apply(this,arguments)||this;return e.type="dataZoom.inside",e}return n(e,t),e.prototype.render=function(e,n,i){t.prototype.render.apply(this,arguments),e.noTarget()?this._clear():(this.range=e.getPercentRange(),RB(i,e,{pan:W(FB.pan,this),zoom:W(FB.zoom,this),scrollMove:W(FB.scrollMove,this)}))},e.prototype.dispose=function(){this._clear(),t.prototype.dispose.apply(this,arguments)},e.prototype._clear=function(){!function(t,e){for(var n=OB(t).coordSysRecordMap,i=n.keys(),r=0;r0?s.pixelStart+s.pixelLength-s.pixel:s.pixel-s.pixelStart)/s.pixelLength*(o[1]-o[0])+o[0],u=Math.max(1/i.scale,0);o[0]=(o[0]-l)*u+l,o[1]=(o[1]-l)*u+l;var h=this.dataZoomModel.findRepresentativeAxisProxy().getMinMaxSpan();return lk(0,o,[0,100],0,h.minSpan,h.maxSpan),this.range=o,r[0]!==o[0]||r[1]!==o[1]?o:void 0}},pan:GB((function(t,e,n,i,r,o){var a=WB[i]([o.oldX,o.oldY],[o.newX,o.newY],e,r,n);return a.signal*(t[1]-t[0])*a.pixel/a.pixelLength})),scrollMove:GB((function(t,e,n,i,r,o){return WB[i]([0,0],[o.scrollDelta,o.scrollDelta],e,r,n).signal*(t[1]-t[0])*o.scrollDelta}))};function GB(t){return function(e,n,i,r){var o=this.range,a=o.slice(),s=e.axisModels[0];if(s)return lk(t(a,s,e,n,i,r),a,[0,100],"all"),this.range=a,o[0]!==a[0]||o[1]!==a[1]?a:void 0}}var WB={grid:function(t,e,n,i,r){var o=n.axis,a={},s=r.model.coordinateSystem.getRect();return t=t||[0,0],"x"===o.dim?(a.pixel=e[0]-t[0],a.pixelLength=s.width,a.pixelStart=s.x,a.signal=o.inverse?1:-1):(a.pixel=e[1]-t[1],a.pixelLength=s.height,a.pixelStart=s.y,a.signal=o.inverse?-1:1),a},polar:function(t,e,n,i,r){var o=n.axis,a={},s=r.model.coordinateSystem,l=s.getRadiusAxis().getExtent(),u=s.getAngleAxis().getExtent();return t=t?s.pointToCoord(t):[0,0],e=s.pointToCoord(e),"radiusAxis"===n.mainType?(a.pixel=e[0]-t[0],a.pixelLength=l[1]-l[0],a.pixelStart=l[0],a.signal=o.inverse?1:-1):(a.pixel=e[1]-t[1],a.pixelLength=u[1]-u[0],a.pixelStart=u[0],a.signal=o.inverse?-1:1),a},singleAxis:function(t,e,n,i,r){var o=n.axis,a=r.model.coordinateSystem.getRect(),s={};return t=t||[0,0],"horizontal"===o.orient?(s.pixel=e[0]-t[0],s.pixelLength=a.width,s.pixelStart=a.x,s.signal=o.inverse?1:-1):(s.pixel=e[1]-t[1],s.pixelLength=a.height,s.pixelStart=a.y,s.signal=o.inverse?-1:1),s}};function HB(t){BE(t),t.registerComponentModel(PB),t.registerComponentView(BB),VB(t)}var YB=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.type="dataZoom.slider",e.layoutMode="box",e.defaultOption=yc(AE.defaultOption,{show:!0,right:"ph",top:"ph",width:"ph",height:"ph",left:null,bottom:null,borderColor:"#d2dbee",borderRadius:3,backgroundColor:"rgba(47,69,84,0)",dataBackground:{lineStyle:{color:"#d2dbee",width:.5},areaStyle:{color:"#d2dbee",opacity:.2}},selectedDataBackground:{lineStyle:{color:"#8fb0f7",width:.5},areaStyle:{color:"#8fb0f7",opacity:.2}},fillerColor:"rgba(135,175,274,0.2)",handleIcon:"path://M-9.35,34.56V42m0-40V9.5m-2,0h4a2,2,0,0,1,2,2v21a2,2,0,0,1-2,2h-4a2,2,0,0,1-2-2v-21A2,2,0,0,1-11.35,9.5Z",handleSize:"100%",handleStyle:{color:"#fff",borderColor:"#ACB8D1"},moveHandleSize:7,moveHandleIcon:"path://M-320.9-50L-320.9-50c18.1,0,27.1,9,27.1,27.1V85.7c0,18.1-9,27.1-27.1,27.1l0,0c-18.1,0-27.1-9-27.1-27.1V-22.9C-348-41-339-50-320.9-50z M-212.3-50L-212.3-50c18.1,0,27.1,9,27.1,27.1V85.7c0,18.1-9,27.1-27.1,27.1l0,0c-18.1,0-27.1-9-27.1-27.1V-22.9C-239.4-41-230.4-50-212.3-50z M-103.7-50L-103.7-50c18.1,0,27.1,9,27.1,27.1V85.7c0,18.1-9,27.1-27.1,27.1l0,0c-18.1,0-27.1-9-27.1-27.1V-22.9C-130.9-41-121.8-50-103.7-50z",moveHandleStyle:{color:"#D2DBEE",opacity:.7},showDetail:!0,showDataShadow:"auto",realtime:!0,zoomLock:!1,textStyle:{color:"#6E7079"},brushSelect:!0,brushStyle:{color:"rgba(135,175,274,0.15)"},emphasis:{handleStyle:{borderColor:"#8FB0F7"},moveHandleStyle:{color:"#8FB0F7"}}}),e}(AE),UB=Cs,XB="horizontal",ZB="vertical",jB=["line","bar","candlestick","scatter"],qB={easing:"cubicOut",duration:100,delay:0},KB=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n._displayables={},n}return n(e,t),e.prototype.init=function(t,e){this.api=e,this._onBrush=W(this._onBrush,this),this._onBrushEnd=W(this._onBrushEnd,this)},e.prototype.render=function(e,n,i,r){if(t.prototype.render.apply(this,arguments),Ag(this,"_dispatchZoomAction",e.get("throttle"),"fixRate"),this._orient=e.getOrient(),!1!==e.get("show")){if(e.noTarget())return this._clear(),void this.group.removeAll();r&&"dataZoom"===r.type&&r.from===this.uid||this._buildView(),this._updateView()}else this.group.removeAll()},e.prototype.dispose=function(){this._clear(),t.prototype.dispose.apply(this,arguments)},e.prototype._clear=function(){kg(this,"_dispatchZoomAction");var t=this.api.getZr();t.off("mousemove",this._onBrush),t.off("mouseup",this._onBrushEnd)},e.prototype._buildView=function(){var t=this.group;t.removeAll(),this._brushing=!1,this._displayables.brushRect=null,this._resetLocation(),this._resetInterval();var e=this._displayables.sliderGroup=new Cr;this._renderBackground(),this._renderHandle(),this._renderDataShadow(),t.add(e),this._positionGroup()},e.prototype._resetLocation=function(){var t=this.dataZoomModel,e=this.api,n=t.get("brushSelect")?7:0,i=this._findCoordRect(),r={width:e.getWidth(),height:e.getHeight()},o=this._orient===XB?{right:r.width-i.x-i.width,top:r.height-30-7-n,width:i.width,height:30}:{right:7,top:i.y,width:30,height:i.height},a=Sp(t.option);E(["right","top","width","height"],(function(t){"ph"===a[t]&&(a[t]=o[t])}));var s=xp(a,r);this._location={x:s.x,y:s.y},this._size=[s.width,s.height],this._orient===ZB&&this._size.reverse()},e.prototype._positionGroup=function(){var t=this.group,e=this._location,n=this._orient,i=this.dataZoomModel.getFirstTargetAxisModel(),r=i&&i.get("inverse"),o=this._displayables.sliderGroup,a=(this._dataShadowInfo||{}).otherAxisInverse;o.attr(n!==XB||r?n===XB&&r?{scaleY:a?1:-1,scaleX:-1}:n!==ZB||r?{scaleY:a?-1:1,scaleX:-1,rotation:Math.PI/2}:{scaleY:a?-1:1,scaleX:1,rotation:Math.PI/2}:{scaleY:a?1:-1,scaleX:1});var s=t.getBoundingRect([o]);t.x=e.x-s.x,t.y=e.y-s.y,t.markRedraw()},e.prototype._getViewExtent=function(){return[0,this._size[0]]},e.prototype._renderBackground=function(){var t=this.dataZoomModel,e=this._size,n=this._displayables.sliderGroup,i=t.get("brushSelect");n.add(new UB({silent:!0,shape:{x:0,y:0,width:e[0],height:e[1]},style:{fill:t.get("backgroundColor")},z2:-40}));var r=new UB({shape:{x:0,y:0,width:e[0],height:e[1]},style:{fill:"transparent"},z2:0,onclick:W(this._onClickPanel,this)}),o=this.api.getZr();i?(r.on("mousedown",this._onBrushStart,this),r.cursor="crosshair",o.on("mousemove",this._onBrush),o.on("mouseup",this._onBrushEnd)):(o.off("mousemove",this._onBrush),o.off("mouseup",this._onBrushEnd)),n.add(r)},e.prototype._renderDataShadow=function(){var t=this._dataShadowInfo=this._prepareDataShadowInfo();if(this._displayables.dataShadowSegs=[],t){var e=this._size,n=this._shadowSize||[],i=t.series,r=i.getRawData(),o=i.getShadowDim?i.getShadowDim():t.otherDim;if(null!=o){var a=this._shadowPolygonPts,s=this._shadowPolylinePts;if(r!==this._shadowData||o!==this._shadowDim||e[0]!==n[0]||e[1]!==n[1]){var l=r.getDataExtent(o),u=.3*(l[1]-l[0]);l=[l[0]-u,l[1]+u];var h,c=[0,e[1]],p=[0,e[0]],d=[[e[0],0],[0,0]],f=[],g=p[1]/(r.count()-1),y=0,v=Math.round(r.count()/e[0]);r.each([o],(function(t,e){if(v>0&&e%v)y+=g;else{var n=null==t||isNaN(t)||""===t,i=n?0:Nr(t,l,c,!0);n&&!h&&e?(d.push([d[d.length-1][0],0]),f.push([f[f.length-1][0],0])):!n&&h&&(d.push([y,0]),f.push([y,0])),d.push([y,i]),f.push([y,i]),y+=g,h=n}})),a=this._shadowPolygonPts=d,s=this._shadowPolylinePts=f}this._shadowData=r,this._shadowDim=o,this._shadowSize=[e[0],e[1]];for(var m=this.dataZoomModel,x=0;x<3;x++){var _=b(1===x);this._displayables.sliderGroup.add(_),this._displayables.dataShadowSegs.push(_)}}}function b(t){var e=m.getModel(t?"selectedDataBackground":"dataBackground"),n=new Cr,i=new Pu({shape:{points:a},segmentIgnoreThreshold:1,style:e.getModel("areaStyle").getAreaStyle(),silent:!0,z2:-20}),r=new Ru({shape:{points:s},segmentIgnoreThreshold:1,style:e.getModel("lineStyle").getLineStyle(),silent:!0,z2:-19});return n.add(i),n.add(r),n}},e.prototype._prepareDataShadowInfo=function(){var t=this.dataZoomModel,e=t.get("showDataShadow");if(!1!==e){var n,i=this.ecModel;return t.eachTargetAxis((function(r,o){E(t.getAxisProxy(r,o).getTargetSeriesModels(),(function(t){if(!(n||!0!==e&&P(jB,t.get("type"))<0)){var a,s=i.getComponent(IE(r),o).axis,l={x:"y",y:"x",radius:"angle",angle:"radius"}[r],u=t.coordinateSystem;null!=l&&u.getOtherAxis&&(a=u.getOtherAxis(s).inverse),l=t.getData().mapDimension(l),n={thisAxis:s,series:t,thisDim:r,otherDim:l,otherAxisInverse:a}}}),this)}),this),n}},e.prototype._renderHandle=function(){var t=this.group,e=this._displayables,n=e.handles=[null,null],i=e.handleLabels=[null,null],r=this._displayables.sliderGroup,o=this._size,a=this.dataZoomModel,s=this.api,l=a.get("borderRadius")||0,u=a.get("brushSelect"),h=e.filler=new UB({silent:u,style:{fill:a.get("fillerColor")},textConfig:{position:"inside"}});r.add(h),r.add(new UB({silent:!0,subPixelOptimize:!0,shape:{x:0,y:0,width:o[0],height:o[1],r:l},style:{stroke:a.get("dataBackgroundColor")||a.get("borderColor"),lineWidth:1,fill:"rgba(0,0,0,0)"}})),E([0,1],(function(e){var o=a.get("handleIcon");!Dy[o]&&o.indexOf("path://")<0&&o.indexOf("image://")<0&&(o="path://"+o);var s=Ly(o,-1,0,2,2,null,!0);s.attr({cursor:$B(this._orient),draggable:!0,drift:W(this._onDragMove,this,e),ondragend:W(this._onDragEnd,this),onmouseover:W(this._showDataInfo,this,!0),onmouseout:W(this._showDataInfo,this,!1),z2:5});var l=s.getBoundingRect(),u=a.get("handleSize");this._handleHeight=Er(u,this._size[1]),this._handleWidth=l.width/l.height*this._handleHeight,s.setStyle(a.getModel("handleStyle").getItemStyle()),s.style.strokeNoScale=!0,s.rectHover=!0,s.ensureState("emphasis").style=a.getModel(["emphasis","handleStyle"]).getItemStyle(),Ol(s);var h=a.get("handleColor");null!=h&&(s.style.fill=h),r.add(n[e]=s);var c=a.getModel("textStyle");t.add(i[e]=new ks({silent:!0,invisible:!0,style:Uh(c,{x:0,y:0,text:"",verticalAlign:"middle",align:"center",fill:c.getTextColor(),font:c.getFont()}),z2:10}))}),this);var c=h;if(u){var p=Er(a.get("moveHandleSize"),o[1]),d=e.moveHandle=new Cs({style:a.getModel("moveHandleStyle").getItemStyle(),silent:!0,shape:{r:[0,0,2,2],y:o[1]-.5,height:p}}),f=.8*p,g=e.moveHandleIcon=Ly(a.get("moveHandleIcon"),-f/2,-f/2,f,f,"#fff",!0);g.silent=!0,g.y=o[1]+p/2-.5,d.ensureState("emphasis").style=a.getModel(["emphasis","moveHandleStyle"]).getItemStyle();var y=Math.min(o[1]/2,Math.max(p,10));(c=e.moveZone=new Cs({invisible:!0,shape:{y:o[1]-y,height:p+y}})).on("mouseover",(function(){s.enterEmphasis(d)})).on("mouseout",(function(){s.leaveEmphasis(d)})),r.add(d),r.add(g),r.add(c)}c.attr({draggable:!0,cursor:$B(this._orient),drift:W(this._onDragMove,this,"all"),ondragstart:W(this._showDataInfo,this,!0),ondragend:W(this._onDragEnd,this),onmouseover:W(this._showDataInfo,this,!0),onmouseout:W(this._showDataInfo,this,!1)})},e.prototype._resetInterval=function(){var t=this._range=this.dataZoomModel.getPercentRange(),e=this._getViewExtent();this._handleEnds=[Nr(t[0],[0,100],e,!0),Nr(t[1],[0,100],e,!0)]},e.prototype._updateInterval=function(t,e){var n=this.dataZoomModel,i=this._handleEnds,r=this._getViewExtent(),o=n.findRepresentativeAxisProxy().getMinMaxSpan(),a=[0,100];lk(e,i,r,n.get("zoomLock")?"all":t,null!=o.minSpan?Nr(o.minSpan,a,r,!0):null,null!=o.maxSpan?Nr(o.maxSpan,a,r,!0):null);var s=this._range,l=this._range=Vr([Nr(i[0],r,a,!0),Nr(i[1],r,a,!0)]);return!s||s[0]!==l[0]||s[1]!==l[1]},e.prototype._updateView=function(t){var e=this._displayables,n=this._handleEnds,i=Vr(n.slice()),r=this._size;E([0,1],(function(t){var i=e.handles[t],o=this._handleHeight;i.attr({scaleX:o/2,scaleY:o/2,x:n[t]+(t?-1:1),y:r[1]/2-o/2})}),this),e.filler.setShape({x:i[0],y:0,width:i[1]-i[0],height:r[1]});var o={x:i[0],width:i[1]-i[0]};e.moveHandle&&(e.moveHandle.setShape(o),e.moveZone.setShape(o),e.moveZone.getBoundingRect(),e.moveHandleIcon&&e.moveHandleIcon.attr("x",o.x+o.width/2));for(var a=e.dataShadowSegs,s=[0,i[0],i[1],r[0]],l=0;le[0]||n[1]<0||n[1]>e[1])){var i=this._handleEnds,r=(i[0]+i[1])/2,o=this._updateInterval("all",n[0]-r);this._updateView(),o&&this._dispatchZoomAction(!1)}},e.prototype._onBrushStart=function(t){var e=t.offsetX,n=t.offsetY;this._brushStart=new Ji(e,n),this._brushing=!0,this._brushStartTime=+new Date},e.prototype._onBrushEnd=function(t){if(this._brushing){var e=this._displayables.brushRect;if(this._brushing=!1,e){e.attr("ignore",!0);var n=e.shape;if(!(+new Date-this._brushStartTime<200&&Math.abs(n.width)<5)){var i=this._getViewExtent(),r=[0,100];this._range=Vr([Nr(n.x,i,r,!0),Nr(n.x+n.width,i,r,!0)]),this._handleEnds=[n.x,n.x+n.width],this._updateView(),this._dispatchZoomAction(!1)}}}},e.prototype._onBrush=function(t){this._brushing&&(se(t.event),this._updateBrushRect(t.offsetX,t.offsetY))},e.prototype._updateBrushRect=function(t,e){var n=this._displayables,i=this.dataZoomModel,r=n.brushRect;r||(r=n.brushRect=new UB({silent:!0,style:i.getModel("brushStyle").getItemStyle()}),n.sliderGroup.add(r)),r.attr("ignore",!1);var o=this._brushStart,a=this._displayables.sliderGroup,s=a.transformCoordToLocal(t,e),l=a.transformCoordToLocal(o.x,o.y),u=this._size;s[0]=Math.max(Math.min(u[0],s[0]),0),r.setShape({x:l[0],y:0,width:s[0]-l[0],height:u[1]})},e.prototype._dispatchZoomAction=function(t){var e=this._range;this.api.dispatchAction({type:"dataZoom",from:this.uid,dataZoomId:this.dataZoomModel.id,animation:t?qB:null,start:e[0],end:e[1]})},e.prototype._findCoordRect=function(){var t,e=CE(this.dataZoomModel).infoList;if(!t&&e.length){var n=e[0].model.coordinateSystem;t=n.getRect&&n.getRect()}if(!t){var i=this.api.getWidth(),r=this.api.getHeight();t={x:.2*i,y:.2*r,width:.6*i,height:.6*r}}return t},e.type="dataZoom.slider",e}(PE);function $B(t){return"vertical"===t?"ns-resize":"ew-resize"}function JB(t){t.registerComponentModel(YB),t.registerComponentView(KB),BE(t)}var QB=function(t,e,n){var i=T((tF[t]||{})[e]);return n&&Y(i)?i[i.length-1]:i},tF={color:{active:["#006edd","#e0ffff"],inactive:["rgba(0,0,0,0)"]},colorHue:{active:[0,360],inactive:[0,0]},colorSaturation:{active:[.3,1],inactive:[0,0]},colorLightness:{active:[.9,.5],inactive:[0,0]},colorAlpha:{active:[.3,1],inactive:[0,0]},opacity:{active:[.3,1],inactive:[0,0]},symbol:{active:["circle","roundRect","diamond"],inactive:["none"]},symbolSize:{active:[10,50],inactive:[0,0]}},eF=iD.mapVisual,nF=iD.eachVisual,iF=Y,rF=E,oF=Vr,aF=Nr,sF=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n.stateList=["inRange","outOfRange"],n.replacableOptionKeys=["inRange","outOfRange","target","controller","color"],n.layoutMode={type:"box",ignoreSize:!0},n.dataBound=[-1/0,1/0],n.targetVisuals={},n.controllerVisuals={},n}return n(e,t),e.prototype.init=function(t,e,n){this.mergeDefaultAndTheme(t,n)},e.prototype.optionUpdated=function(t,e){var n=this.option;!e&&eV(n,t,this.replacableOptionKeys),this.textStyleModel=this.getModel("textStyle"),this.resetItemSize(),this.completeVisualOption()},e.prototype.resetVisual=function(t){var e=this.stateList;t=W(t,this),this.controllerVisuals=tV(this.option.controller,e,t),this.targetVisuals=tV(this.option.target,e,t)},e.prototype.getItemSymbol=function(){return null},e.prototype.getTargetSeriesIndices=function(){var t=this.option.seriesIndex,e=[];return null==t||"all"===t?this.ecModel.eachSeries((function(t,n){e.push(n)})):e=ho(t),e},e.prototype.eachTargetSeries=function(t,e){E(this.getTargetSeriesIndices(),(function(n){var i=this.ecModel.getSeriesByIndex(n);i&&t.call(e,i)}),this)},e.prototype.isTargetSeries=function(t){var e=!1;return this.eachTargetSeries((function(n){n===t&&(e=!0)})),e},e.prototype.formatValueText=function(t,e,n){var i,r=this.option,o=r.precision,a=this.dataBound,s=r.formatter;n=n||["<",">"],Y(t)&&(t=t.slice(),i=!0);var l=e?t:i?[u(t[0]),u(t[1])]:u(t);return X(s)?s.replace("{value}",i?l[0]:l).replace("{value2}",i?l[1]:l):U(s)?i?s(t[0],t[1]):s(t):i?t[0]===a[0]?n[0]+" "+l[1]:t[1]===a[1]?n[1]+" "+l[0]:l[0]+" - "+l[1]:l;function u(t){return t===a[0]?"min":t===a[1]?"max":(+t).toFixed(Math.min(o,20))}},e.prototype.resetExtent=function(){var t=this.option,e=oF([t.min,t.max]);this._dataExtent=e},e.prototype.getDataDimensionIndex=function(t){var e=this.option.dimension;if(null!=e)return t.getDimensionIndex(e);for(var n=t.dimensions,i=n.length-1;i>=0;i--){var r=n[i],o=t.getDimensionInfo(r);if(!o.isCalculationCoord)return o.storeDimIndex}},e.prototype.getExtent=function(){return this._dataExtent.slice()},e.prototype.completeVisualOption=function(){var t=this.ecModel,e=this.option,n={inRange:e.inRange,outOfRange:e.outOfRange},i=e.target||(e.target={}),r=e.controller||(e.controller={});C(i,n),C(r,n);var o=this.isCategory();function a(n){iF(e.color)&&!n.inRange&&(n.inRange={color:e.color.slice().reverse()}),n.inRange=n.inRange||{color:t.get("gradientColor")}}a.call(this,i),a.call(this,r),function(t,e,n){var i=t[e],r=t[n];i&&!r&&(r=t[n]={},rF(i,(function(t,e){if(iD.isValidType(e)){var n=QB(e,"inactive",o);null!=n&&(r[e]=n,"color"!==e||r.hasOwnProperty("opacity")||r.hasOwnProperty("colorAlpha")||(r.opacity=[0,0]))}})))}.call(this,i,"inRange","outOfRange"),function(t){var e=(t.inRange||{}).symbol||(t.outOfRange||{}).symbol,n=(t.inRange||{}).symbolSize||(t.outOfRange||{}).symbolSize,i=this.get("inactiveColor"),r=this.getItemSymbol()||"roundRect";rF(this.stateList,(function(a){var s=this.itemSize,l=t[a];l||(l=t[a]={color:o?i:[i]}),null==l.symbol&&(l.symbol=e&&T(e)||(o?r:[r])),null==l.symbolSize&&(l.symbolSize=n&&T(n)||(o?s[0]:[s[0],s[0]])),l.symbol=eF(l.symbol,(function(t){return"none"===t?r:t}));var u=l.symbolSize;if(null!=u){var h=-1/0;nF(u,(function(t){t>h&&(h=t)})),l.symbolSize=eF(u,(function(t){return aF(t,[0,h],[0,s[0]],!0)}))}}),this)}.call(this,r)},e.prototype.resetItemSize=function(){this.itemSize=[parseFloat(this.get("itemWidth")),parseFloat(this.get("itemHeight"))]},e.prototype.isCategory=function(){return!!this.option.categories},e.prototype.setSelected=function(t){},e.prototype.getSelected=function(){return null},e.prototype.getValueState=function(t){return null},e.prototype.getVisualMeta=function(t){return null},e.type="visualMap",e.dependencies=["series"],e.defaultOption={show:!0,z:4,seriesIndex:"all",min:0,max:200,left:0,right:null,top:null,bottom:0,itemWidth:null,itemHeight:null,inverse:!1,orient:"vertical",backgroundColor:"rgba(0,0,0,0)",borderColor:"#ccc",contentColor:"#5793f3",inactiveColor:"#aaa",borderWidth:0,padding:5,textGap:10,precision:0,textStyle:{color:"#333"}},e}(Tp),lF=[20,140],uF=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.optionUpdated=function(e,n){t.prototype.optionUpdated.apply(this,arguments),this.resetExtent(),this.resetVisual((function(t){t.mappingMethod="linear",t.dataExtent=this.getExtent()})),this._resetRange()},e.prototype.resetItemSize=function(){t.prototype.resetItemSize.apply(this,arguments);var e=this.itemSize;(null==e[0]||isNaN(e[0]))&&(e[0]=lF[0]),(null==e[1]||isNaN(e[1]))&&(e[1]=lF[1])},e.prototype._resetRange=function(){var t=this.getExtent(),e=this.option.range;!e||e.auto?(t.auto=1,this.option.range=t):Y(e)&&(e[0]>e[1]&&e.reverse(),e[0]=Math.max(e[0],t[0]),e[1]=Math.min(e[1],t[1]))},e.prototype.completeVisualOption=function(){t.prototype.completeVisualOption.apply(this,arguments),E(this.stateList,(function(t){var e=this.option.controller[t].symbolSize;e&&e[0]!==e[1]&&(e[0]=e[1]/3)}),this)},e.prototype.setSelected=function(t){this.option.range=t.slice(),this._resetRange()},e.prototype.getSelected=function(){var t=this.getExtent(),e=Vr((this.get("range")||[]).slice());return e[0]>t[1]&&(e[0]=t[1]),e[1]>t[1]&&(e[1]=t[1]),e[0]=n[1]||t<=e[1])?"inRange":"outOfRange"},e.prototype.findTargetDataIndices=function(t){var e=[];return this.eachTargetSeries((function(n){var i=[],r=n.getData();r.each(this.getDataDimensionIndex(r),(function(e,n){t[0]<=e&&e<=t[1]&&i.push(n)}),this),e.push({seriesId:n.id,dataIndex:i})}),this),e},e.prototype.getVisualMeta=function(t){var e=hF(this,"outOfRange",this.getExtent()),n=hF(this,"inRange",this.option.range.slice()),i=[];function r(e,n){i.push({value:e,color:t(e,n)})}for(var o=0,a=0,s=n.length,l=e.length;at[1])break;n.push({color:this.getControllerVisual(o,"color",e),offset:r/100})}return n.push({color:this.getControllerVisual(t[1],"color",e),offset:1}),n},e.prototype._createBarPoints=function(t,e){var n=this.visualMapModel.itemSize;return[[n[0]-e[0],t[0]],[n[0],t[0]],[n[0],t[1]],[n[0]-e[1],t[1]]]},e.prototype._createBarGroup=function(t){var e=this._orient,n=this.visualMapModel.get("inverse");return new Cr("horizontal"!==e||n?"horizontal"===e&&n?{scaleX:"bottom"===t?-1:1,rotation:-Math.PI/2}:"vertical"!==e||n?{scaleX:"left"===t?1:-1}:{scaleX:"left"===t?1:-1,scaleY:-1}:{scaleX:"bottom"===t?1:-1,rotation:Math.PI/2})},e.prototype._updateHandle=function(t,e){if(this._useHandle){var n=this._shapes,i=this.visualMapModel,r=n.handleThumbs,o=n.handleLabels,a=i.itemSize,s=i.getExtent();yF([0,1],(function(l){var u=r[l];u.setStyle("fill",e.handlesColor[l]),u.y=t[l];var h=gF(t[l],[0,a[1]],s,!0),c=this.getControllerVisual(h,"symbolSize");u.scaleX=u.scaleY=c/a[0],u.x=a[0]-c/2;var p=Th(n.handleLabelPoints[l],Ih(u,this.group));o[l].setStyle({x:p[0],y:p[1],text:i.formatValueText(this._dataInterval[l]),verticalAlign:"middle",align:"vertical"===this._orient?this._applyTransform("left",n.mainGroup):"center"})}),this)}},e.prototype._showIndicator=function(t,e,n,i){var r=this.visualMapModel,o=r.getExtent(),a=r.itemSize,s=[0,a[1]],l=this._shapes,u=l.indicator;if(u){u.attr("invisible",!1);var h=this.getControllerVisual(t,"color",{convertOpacityToAlpha:!0}),c=this.getControllerVisual(t,"symbolSize"),p=gF(t,o,s,!0),d=a[0]-c/2,f={x:u.x,y:u.y};u.y=p,u.x=d;var g=Th(l.indicatorLabelPoint,Ih(u,this.group)),y=l.indicatorLabel;y.attr("invisible",!1);var v=this._applyTransform("left",l.mainGroup),m="horizontal"===this._orient;y.setStyle({text:(n||"")+r.formatValueText(e),verticalAlign:m?v:"middle",align:m?"center":v});var x={x:d,y:p,style:{fill:h}},_={style:{x:g[0],y:g[1]}};if(r.ecModel.isAnimationEnabled()&&!this._firstShowIndicator){var b={duration:100,easing:"cubicInOut",additive:!0};u.x=f.x,u.y=f.y,u.animateTo(x,b),y.animateTo(_,b)}else u.attr(x),y.attr(_);this._firstShowIndicator=!1;var w=this._shapes.handleLabels;if(w)for(var S=0;Sr[1]&&(u[1]=1/0),e&&(u[0]===-1/0?this._showIndicator(l,u[1],"< ",a):u[1]===1/0?this._showIndicator(l,u[0],"> ",a):this._showIndicator(l,l,"≈ ",a));var h=this._hoverLinkDataIndices,c=[];(e||bF(n))&&(c=this._hoverLinkDataIndices=n.findTargetDataIndices(u));var p=function(t,e){var n={},i={};return r(t||[],n),r(e||[],i,n),[o(n),o(i)];function r(t,e,n){for(var i=0,r=t.length;i=0&&(r.dimension=o,i.push(r))}})),t.getData().setVisual("visualMeta",i)}}];function TF(t,e,n,i){for(var r=e.targetVisuals[i],o=iD.prepareVisualTypes(r),a={color:gy(t.getData(),"color")},s=0,l=o.length;s0:t.splitNumber>0)&&!t.calculable?"piecewise":"continuous"})),t.registerAction(SF,MF),E(IF,(function(e){t.registerVisual(t.PRIORITY.VISUAL.COMPONENT,e)})),t.registerPreprocessor(DF))}function PF(t){t.registerComponentModel(uF),t.registerComponentView(xF),LF(t)}var OF=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n._pieceList=[],n}return n(e,t),e.prototype.optionUpdated=function(e,n){t.prototype.optionUpdated.apply(this,arguments),this.resetExtent();var i=this._mode=this._determineMode();this._pieceList=[],RF[this._mode].call(this,this._pieceList),this._resetSelected(e,n);var r=this.option.categories;this.resetVisual((function(t,e){"categories"===i?(t.mappingMethod="category",t.categories=T(r)):(t.dataExtent=this.getExtent(),t.mappingMethod="piecewise",t.pieceList=z(this._pieceList,(function(t){return t=T(t),"inRange"!==e&&(t.visual=null),t})))}))},e.prototype.completeVisualOption=function(){var e=this.option,n={},i=iD.listVisualTypes(),r=this.isCategory();function o(t,e,n){return t&&t[e]&&t[e].hasOwnProperty(n)}E(e.pieces,(function(t){E(i,(function(e){t.hasOwnProperty(e)&&(n[e]=1)}))})),E(n,(function(t,n){var i=!1;E(this.stateList,(function(t){i=i||o(e,t,n)||o(e.target,t,n)}),this),!i&&E(this.stateList,(function(t){(e[t]||(e[t]={}))[n]=QB(n,"inRange"===t?"active":"inactive",r)}))}),this),t.prototype.completeVisualOption.apply(this,arguments)},e.prototype._resetSelected=function(t,e){var n=this.option,i=this._pieceList,r=(e?n:t).selected||{};if(n.selected=r,E(i,(function(t,e){var n=this.getSelectedMapKey(t);r.hasOwnProperty(n)||(r[n]=!0)}),this),"single"===n.selectedMode){var o=!1;E(i,(function(t,e){var n=this.getSelectedMapKey(t);r[n]&&(o?r[n]=!1:o=!0)}),this)}},e.prototype.getItemSymbol=function(){return this.get("itemSymbol")},e.prototype.getSelectedMapKey=function(t){return"categories"===this._mode?t.value+"":t.index+""},e.prototype.getPieceList=function(){return this._pieceList},e.prototype._determineMode=function(){var t=this.option;return t.pieces&&t.pieces.length>0?"pieces":this.option.categories?"categories":"splitNumber"},e.prototype.setSelected=function(t){this.option.selected=T(t)},e.prototype.getValueState=function(t){var e=iD.findPieceIndex(t,this._pieceList);return null!=e&&this.option.selected[this.getSelectedMapKey(this._pieceList[e])]?"inRange":"outOfRange"},e.prototype.findTargetDataIndices=function(t){var e=[],n=this._pieceList;return this.eachTargetSeries((function(i){var r=[],o=i.getData();o.each(this.getDataDimensionIndex(o),(function(e,i){iD.findPieceIndex(e,n)===t&&r.push(i)}),this),e.push({seriesId:i.id,dataIndex:r})}),this),e},e.prototype.getRepresentValue=function(t){var e;if(this.isCategory())e=t.value;else if(null!=t.value)e=t.value;else{var n=t.interval||[];e=n[0]===-1/0&&n[1]===1/0?0:(n[0]+n[1])/2}return e},e.prototype.getVisualMeta=function(t){if(!this.isCategory()){var e=[],n=["",""],i=this,r=this._pieceList.slice();if(r.length){var o=r[0].interval[0];o!==-1/0&&r.unshift({interval:[-1/0,o]}),(o=r[r.length-1].interval[1])!==1/0&&r.push({interval:[o,1/0]})}else r.push({interval:[-1/0,1/0]});var a=-1/0;return E(r,(function(t){var e=t.interval;e&&(e[0]>a&&s([a,e[0]],"outOfRange"),s(e.slice()),a=e[1])}),this),{stops:e,outerColors:n}}function s(r,o){var a=i.getRepresentValue({interval:r});o||(o=i.getValueState(a));var s=t(a,o);r[0]===-1/0?n[0]=s:r[1]===1/0?n[1]=s:e.push({value:r[0],color:s},{value:r[1],color:s})}},e.type="visualMap.piecewise",e.defaultOption=yc(sF.defaultOption,{selected:null,minOpen:!1,maxOpen:!1,align:"auto",itemWidth:20,itemHeight:14,itemSymbol:"roundRect",pieces:null,categories:null,splitNumber:5,selectedMode:"multiple",itemGap:10,hoverLink:!0}),e}(sF),RF={splitNumber:function(t){var e=this.option,n=Math.min(e.precision,20),i=this.getExtent(),r=e.splitNumber;r=Math.max(parseInt(r,10),1),e.splitNumber=r;for(var o=(i[1]-i[0])/r;+o.toFixed(n)!==o&&n<5;)n++;e.precision=n,o=+o.toFixed(n),e.minOpen&&t.push({interval:[-1/0,i[0]],close:[0,0]});for(var a=0,s=i[0];a","≥"][e[0]]];t.text=t.text||this.formatValueText(null!=t.value?t.value:t.interval,!1,n)}),this)}};function NF(t,e){var n=t.inverse;("vertical"===t.orient?!n:n)&&e.reverse()}var EF=function(t){function e(){var n=null!==t&&t.apply(this,arguments)||this;return n.type=e.type,n}return n(e,t),e.prototype.doRender=function(){var t=this.group;t.removeAll();var e=this.visualMapModel,n=e.get("textGap"),i=e.textStyleModel,r=i.getFont(),o=i.getTextColor(),a=this._getItemAlign(),s=e.itemSize,l=this._getViewData(),u=l.endsText,h=it(e.get("showLabel",!0),!u);u&&this._renderEndsText(t,u[0],s,h,a),E(l.viewPieceList,(function(i){var l=i.piece,u=new Cr;u.onclick=W(this._onItemClick,this,l),this._enableHoverLink(u,i.indexInModelPieceList);var c=e.getRepresentValue(l);if(this._createItemSymbol(u,c,[0,0,s[0],s[1]]),h){var p=this.visualMapModel.getValueState(c);u.add(new ks({style:{x:"right"===a?-n:s[0]+n,y:s[1]/2,text:l.text,verticalAlign:"middle",align:a,font:r,fill:o,opacity:"outOfRange"===p?.5:1}}))}t.add(u)}),this),u&&this._renderEndsText(t,u[1],s,h,a),mp(e.get("orient"),t,e.get("itemGap")),this.renderBackground(t),this.positionGroup(t)},e.prototype._enableHoverLink=function(t,e){var n=this;t.on("mouseover",(function(){return i("highlight")})).on("mouseout",(function(){return i("downplay")}));var i=function(t){var i=n.visualMapModel;i.option.hoverLink&&n.api.dispatchAction({type:t,batch:fF(i.findTargetDataIndices(e),i)})}},e.prototype._getItemAlign=function(){var t=this.visualMapModel,e=t.option;if("vertical"===e.orient)return dF(t,this.api,t.itemSize);var n=e.align;return n&&"auto"!==n||(n="left"),n},e.prototype._renderEndsText=function(t,e,n,i,r){if(e){var o=new Cr,a=this.visualMapModel.textStyleModel;o.add(new ks({style:Uh(a,{x:i?"right"===r?n[0]:0:n[0]/2,y:n[1]/2,verticalAlign:"middle",align:i?r:"center",text:e})})),t.add(o)}},e.prototype._getViewData=function(){var t=this.visualMapModel,e=z(t.getPieceList(),(function(t,e){return{piece:t,indexInModelPieceList:e}})),n=t.get("text"),i=t.get("orient"),r=t.get("inverse");return("horizontal"===i?r:!r)?e.reverse():n&&(n=n.slice().reverse()),{viewPieceList:e,endsText:n}},e.prototype._createItemSymbol=function(t,e,n){t.add(Ly(this.getControllerVisual(e,"symbol"),n[0],n[1],n[2],n[3],this.getControllerVisual(e,"color")))},e.prototype._onItemClick=function(t){var e=this.visualMapModel,n=e.option,i=n.selectedMode;if(i){var r=T(n.selected),o=e.getSelectedMapKey(t);"single"===i||!0===i?(r[o]=!0,E(r,(function(t,e){r[e]=e===o}))):r[o]=!r[o],this.api.dispatchAction({type:"selectDataRange",from:this.uid,visualMapId:this.visualMapModel.id,selected:r})}},e.type="visualMap.piecewise",e}(cF);function zF(t){t.registerComponentModel(OF),t.registerComponentView(EF),LF(t)}var VF={label:{enabled:!0},decal:{show:!1}},BF=So(),FF={};function GF(t,e){var n=t.getModel("aria");if(n.get("enabled")){var i=T(VF);C(i.label,t.getLocaleModel().get("aria"),!1),C(n.option,i,!1),function(){if(n.getModel("decal").get("show")){var e=ft();t.eachSeries((function(t){if(!t.isColorBySeries()){var n=e.get(t.type);n||(n={},e.set(t.type,n)),BF(t).scope=n}})),t.eachRawSeries((function(e){if(!t.isSeriesFiltered(e))if(U(e.enableAriaDecal))e.enableAriaDecal();else{var n=e.getData();if(e.isColorBySeries()){var i=ed(e.ecModel,e.name,FF,t.getSeriesCount()),r=n.getVisual("decal");n.setVisual("decal",u(r,i))}else{var o=e.getRawData(),a={},s=BF(e).scope;n.each((function(t){var e=n.getRawIndex(t);a[e]=t}));var l=o.count();o.each((function(t){var i=a[t],r=o.getName(t)||t+"",h=ed(e.ecModel,r,s,l),c=n.getItemVisual(i,"decal");n.setItemVisual(i,"decal",u(c,h))}))}}function u(t,e){var n=t?A(A({},e),t):e;return n.dirty=!0,n}}))}}(),function(){var i=t.getLocaleModel().get("aria"),o=n.getModel("label");if(o.option=k(o.option,i),!o.get("enabled"))return;var a=e.getZr().dom;if(o.get("description"))return void a.setAttribute("aria-label",o.get("description"));var s,l=t.getSeriesCount(),u=o.get(["data","maxCount"])||10,h=o.get(["series","maxCount"])||10,c=Math.min(l,h);if(l<1)return;var p=function(){var e=t.get("title");e&&e.length&&(e=e[0]);return e&&e.text}();if(p){var d=o.get(["general","withTitle"]);s=r(d,{title:p})}else s=o.get(["general","withoutTitle"]);var f=[],g=l>1?o.get(["series","multiple","prefix"]):o.get(["series","single","prefix"]);s+=r(g,{seriesCount:l}),t.eachSeries((function(e,n){if(n1?o.get(["series","multiple",a]):o.get(["series","single",a]),{seriesId:e.seriesIndex,seriesName:e.get("name"),seriesType:(x=e.subType,t.getLocaleModel().get(["series","typeNames"])[x]||"自定义图")});var s=e.getData();if(s.count()>u)i+=r(o.get(["data","partialData"]),{displayCnt:u});else i+=o.get(["data","allData"]);for(var h=o.get(["data","separator","middle"]),p=o.get(["data","separator","end"]),d=[],g=0;g":"gt",">=":"gte","=":"eq","!=":"ne","<>":"ne"},YF=function(){function t(t){if(null==(this._condVal=X(t)?new RegExp(t):et(t)?t:null)){var e="";0,ao(e)}}return t.prototype.evaluate=function(t){var e=typeof t;return X(e)?this._condVal.test(t):!!j(e)&&this._condVal.test(t+"")},t}(),UF=function(){function t(){}return t.prototype.evaluate=function(){return this.value},t}(),XF=function(){function t(){}return t.prototype.evaluate=function(){for(var t=this.children,e=0;e2&&l.push(e),e=[t,n]}function f(t,n,i,r){oG(t,i)&&oG(n,r)||e.push(t,n,i,r,i,r)}function g(t,n,i,r,o,a){var s=Math.abs(n-t),l=4*Math.tan(s/4)/3,u=nM:C2&&l.push(e),l}function sG(t,e,n,i,r,o,a,s,l,u){if(oG(t,n)&&oG(e,i)&&oG(r,a)&&oG(o,s))l.push(a,s);else{var h=2/u,c=h*h,p=a-t,d=s-e,f=Math.sqrt(p*p+d*d);p/=f,d/=f;var g=n-t,y=i-e,v=r-a,m=o-s,x=g*g+y*y,_=v*v+m*m;if(x=0&&_-w*w=0)l.push(a,s);else{var S=[],M=[];Ze(t,n,r,a,.5,S),Ze(e,i,o,s,.5,M),sG(S[0],M[0],S[1],M[1],S[2],M[2],S[3],M[3],l,u),sG(S[4],M[4],S[5],M[5],S[6],M[6],S[7],M[7],l,u)}}}}function lG(t,e,n){var i=t[e],r=t[1-e],o=Math.abs(i/r),a=Math.ceil(Math.sqrt(o*n)),s=Math.floor(n/a);0===s&&(s=1,a=n);for(var l=[],u=0;u0)for(u=0;uMath.abs(u),c=lG([l,u],h?0:1,e),p=(h?s:u)/c.length,d=0;d1?null:new Ji(d*l+t,d*u+e)}function pG(t,e,n){var i=new Ji;Ji.sub(i,n,e),i.normalize();var r=new Ji;return Ji.sub(r,t,e),r.dot(i)}function dG(t,e){var n=t[t.length-1];n&&n[0]===e[0]&&n[1]===e[1]||t.push(e)}function fG(t){var e=t.points,n=[],i=[];Ma(e,n,i);var r=new sr(n[0],n[1],i[0]-n[0],i[1]-n[1]),o=r.width,a=r.height,s=r.x,l=r.y,u=new Ji,h=new Ji;return o>a?(u.x=h.x=s+o/2,u.y=l,h.y=l+a):(u.y=h.y=l+a/2,u.x=s,h.x=s+o),function(t,e,n){for(var i=t.length,r=[],o=0;or,a=lG([i,r],o?0:1,e),s=o?"width":"height",l=o?"height":"width",u=o?"x":"y",h=o?"y":"x",c=t[s]/a.length,p=0;p0)for(var b=i/n,w=-i/2;w<=i/2;w+=b){var S=Math.sin(w),M=Math.cos(w),I=0;for(x=0;x0;l/=2){var u=0,h=0;(t&l)>0&&(u=1),(e&l)>0&&(h=1),s+=l*l*(3*u^h),0===h&&(1===u&&(t=l-1-t,e=l-1-e),a=t,t=e,e=a)}return s}function LG(t){var e=1/0,n=1/0,i=-1/0,r=-1/0,o=z(t,(function(t){var o=t.getBoundingRect(),a=t.getComputedTransform(),s=o.x+o.width/2+(a?a[4]:0),l=o.y+o.height/2+(a?a[5]:0);return e=Math.min(s,e),n=Math.min(l,n),i=Math.max(s,i),r=Math.max(l,r),[s,l]}));return z(o,(function(o,a){return{cp:o,z:kG(o[0],o[1],e,n,i,r),path:t[a]}})).sort((function(t,e){return t.z-e.z})).map((function(t){return t.path}))}function PG(t){return vG(t.path,t.count)}function OG(t){return Y(t[0])}function RG(t,e){for(var n=[],i=t.length,r=0;r=0;r--)if(!n[r].many.length){var l=n[s].many;if(l.length<=1){if(!s)return n;s=0}o=l.length;var u=Math.ceil(o/2);n[r].many=l.slice(u,o),n[s].many=l.slice(0,u),s++}return n}var NG={clone:function(t){for(var e=[],n=1-Math.pow(1-t.path.style.opacity,1/t.count),i=0;i0){var s,l,u=i.getModel("universalTransition").get("delay"),h=Object.assign({setToFinal:!0},a);OG(t)&&(s=t,l=e),OG(e)&&(s=e,l=t);for(var c=s?s===t:t.length>e.length,p=s?RG(l,s):RG(c?e:t,[c?t:e]),d=0,f=0;f1e4))for(var i=n.getIndices(),r=function(t){for(var e=t.dimensions,n=0;n0&&i.group.traverse((function(t){t instanceof gs&&!t.animators.length&&t.animateFrom({style:{opacity:0}},r)}))}))}function UG(t){var e=t.getModel("universalTransition").get("seriesKey");return e||t.id}function XG(t){return Y(t)?t.sort().join(","):t}function ZG(t){if(t.hostModel)return t.hostModel.getModel("universalTransition").get("divideShape")}function jG(t,e){for(var n=0;n=0&&r.push({data:e.oldData[n],divide:ZG(e.oldData[n]),dim:t.dimension})})),E(ho(t.to),(function(t){var e=jG(n.updatedSeries,t);if(e>=0){var i=n.updatedSeries[e].getData();o.push({data:i,divide:ZG(i),dim:t.dimension})}})),r.length>0&&o.length>0&&YG(r,o,i)}(t,i,n,e)}));else{var o=function(t,e){var n=ft(),i=ft(),r=ft();return E(t.oldSeries,(function(e,n){var o=t.oldData[n],a=UG(e),s=XG(a);i.set(s,o),Y(a)&&E(a,(function(t){r.set(t,{data:o,key:s})}))})),E(e.updatedSeries,(function(t){if(t.isUniversalTransitionEnabled()&&t.isAnimationEnabled()){var e=t.getData(),o=UG(t),a=XG(o),s=i.get(a);if(s)n.set(a,{oldSeries:[{divide:ZG(s),data:s}],newSeries:[{divide:ZG(e),data:e}]});else if(Y(o)){var l=[];E(o,(function(t){var e=i.get(t);e&&l.push({divide:ZG(e),data:e})})),l.length&&n.set(a,{oldSeries:l,newSeries:[{data:e,divide:ZG(e)}]})}else{var u=r.get(o);if(u){var h=n.get(u.key);h||(h={oldSeries:[{data:u.data,divide:ZG(u.data)}],newSeries:[]},n.set(u.key,h)),h.newSeries.push({data:e,divide:ZG(e)})}}}})),n}(i,n);E(o.keys(),(function(t){var n=o.get(t);YG(n.oldSeries,n.newSeries,e)}))}E(n.updatedSeries,(function(t){t.__universalTransitionEnabled&&(t.__universalTransitionEnabled=!1)}))}for(var a=t.getSeries(),s=i.oldSeries=[],l=i.oldData=[],u=0;u { + return ctx.createCircularGradient(...args); + }; + } + _initEvent() { + this.event = {}; + const eventNames = [ + { + wxName: 'touchStart', + ecName: 'mousedown' + }, + { + wxName: 'touchMove', + ecName: 'mousemove' + }, + { + wxName: 'touchEnd', + ecName: 'mouseup' + }, + { + wxName: 'touchEnd', + ecName: 'click' + } + ]; + eventNames.forEach((name) => { + this.event[name.wxName] = (e) => { + const touch = e.touches[0]; + this.chart.getZr().handler.dispatch(name.ecName, { + zrX: name.wxName === 'tap' ? touch.clientX : touch.x, + zrY: name.wxName === 'tap' ? touch.clientY : touch.y, + preventDefault: () => {}, + stopImmediatePropagation: () => {}, + stopPropagation: () => {} + }); + }; + }); + } + set width(w) { + if (this.canvasNode) { + this.canvasNode.width = w; + } + } + set height(h) { + if (this.canvasNode) { + this.canvasNode.height = h; + } + } + get width() { + if (this.canvasNode) { + return this.canvasNode.width; + } + return 0; + } + get height() { + if (this.canvasNode) { + return this.canvasNode.height; + } + return 0; + } +} diff --git a/packages/tdesign-uniapp-chat/components/chat-list/_example/hook-component/index.vue b/packages/tdesign-uniapp-chat/components/chat-list/_example/hook-component/index.vue new file mode 100644 index 000000000..e8f92ba62 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-list/_example/hook-component/index.vue @@ -0,0 +1,337 @@ + + + + diff --git a/packages/tdesign-uniapp-chat/components/chat-list/_example/image/index.vue b/packages/tdesign-uniapp-chat/components/chat-list/_example/image/index.vue new file mode 100644 index 000000000..85ef4b11e --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-list/_example/image/index.vue @@ -0,0 +1,460 @@ + + + + diff --git a/packages/tdesign-uniapp-chat/components/chat-list/_example/utils.ts b/packages/tdesign-uniapp-chat/components/chat-list/_example/utils.ts new file mode 100644 index 000000000..e0fd4abf8 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-list/_example/utils.ts @@ -0,0 +1,28 @@ +/** + * 获取导航栏高度,包括状态栏和标题栏 + */ +export const getNavigationBarHeight = () => { + try { + const systemInfo = uni.getWindowInfo ? uni.getWindowInfo() : uni.getSystemInfoSync(); + + // 获取状态栏高度 + const statusBarHeight = systemInfo.statusBarHeight || 0; + + // 获取胶囊按钮位置信息 + const menuButtonInfo = uni.getMenuButtonBoundingClientRect?.(); + + if (menuButtonInfo) { + // 计算导航栏高度:胶囊按钮底部位置 + 胶囊按钮与底部的间距 + const navigationBarHeight = menuButtonInfo.bottom + (menuButtonInfo.top - statusBarHeight); + return navigationBarHeight; + } + // 如果无法获取胶囊按钮信息,使用默认计算方式 + // 一般情况下,导航栏高度 = 状态栏高度 + 44px(标准导航栏高度) + const navigationBarHeight = statusBarHeight + 44; + + return navigationBarHeight; + } catch (error) { + console.error('获取导航栏高度失败:', error); + return 44; + } +}; diff --git a/packages/tdesign-uniapp-chat/components/chat-list/chat-list.less b/packages/tdesign-uniapp-chat/components/chat-list/chat-list.less new file mode 100644 index 000000000..fdc70380e --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-list/chat-list.less @@ -0,0 +1,35 @@ +@import 'tdesign-uniapp/common/style/base.less'; + +@chat-list: ~'@{prefix}-chat-list'; + +@chat-text-color: @text-color-primary; + +.@{chat-list} { + display: flex; + flex-direction: column; + height: 100%; + width: 100%; + color: @chat-text-color; + + &__content { + flex: 1; + overflow-y: auto; + overflow-x: hidden; + width: 100%; + + &--reverse { + display: flex; + flex-direction: column; + transform: scaleY(-1); + + &::-webkit-scrollbar { + transform: scaleY(-1); + } + } + + .placeholder { + flex-grow: 1; + flex-shrink: 1; + } + } +} diff --git a/packages/tdesign-uniapp-chat/components/chat-list/chat-list.vue b/packages/tdesign-uniapp-chat/components/chat-list/chat-list.vue new file mode 100644 index 000000000..811488676 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-list/chat-list.vue @@ -0,0 +1,177 @@ + + + diff --git a/packages/tdesign-uniapp-chat/components/chat-list/props.ts b/packages/tdesign-uniapp-chat/components/chat-list/props.ts new file mode 100644 index 000000000..884c57179 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-list/props.ts @@ -0,0 +1,41 @@ +/* eslint-disable */ + +/** + * 该文件为脚本自动生成文件,请勿随意修改。如需修改请联系 PMC + * */ + +import type { TdChatListProps } from './type'; +export default { + /** 动画效果,支持「渐变加载动画」,「闪烁加载动画」, 「骨架屏」三种 */ + animation: { + type: String, + default: 'skeleton' as TdChatListProps['animation'], + validator(val: TdChatListProps['animation']): boolean { + if (!val) return true; + return ['skeleton', 'moving', 'gradient', 'dot'].includes(val); + }, + }, + /** 对话列表的数据 */ + data: { + type: Array, + }, + /** 对话布局形式,支持两侧对齐与左对齐。使用插槽自定义对话内容时不生效,得用`t-chat-message`的`placement`属性 */ + layout: { + type: String, + default: 'both' as TdChatListProps['layout'], + validator(val: TdChatListProps['layout']): boolean { + if (!val) return true; + return ['both', 'single'].includes(val); + }, + }, + /** 是否表现为倒序 */ + reverse: { + type: Boolean, + default: true, + }, + /** 滚动事件的回调 */ + onScroll: { + type: Function, + default: () => ({}), + }, +}; diff --git a/packages/tdesign-uniapp-chat/components/chat-list/type.ts b/packages/tdesign-uniapp-chat/components/chat-list/type.ts new file mode 100644 index 000000000..1f00357ed --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-list/type.ts @@ -0,0 +1,40 @@ +/* eslint-disable */ + +/** + * 该文件为脚本自动生成文件,请勿随意修改。如需修改请联系 PMC + * */ + +export interface TdChatListProps { + /** + * 动画效果,支持「渐变加载动画」,「闪烁加载动画」, 「骨架屏」三种 + * @default skeleton + */ + animation?: 'skeleton' | 'moving' | 'gradient' | 'dot'; + /** + * 对话列表的数据 + */ + data?: Array; + /** + * 对话布局形式,支持两侧对齐与左对齐。使用插槽自定义对话内容时不生效,得用`t-chat-message`的`placement`属性 + * @default both + */ + layout?: 'both' | 'single'; + /** + * 是否表现为倒序 + * @default true + */ + reverse?: boolean; + /** + * 滚动事件的回调 + */ + onScroll?: (context: { scrollLeft; scrollTop; scrollHeight; scrollWidth; deltaX; deltaY }) => void; +} + +export interface TdChatItemMeta { + avatar?: string; + name?: string; + role?: string; + datetime?: string; + content?: string; + status?: string; +} diff --git a/packages/tdesign-uniapp-chat/components/chat-loading/README.en-US.md b/packages/tdesign-uniapp-chat/components/chat-loading/README.en-US.md new file mode 100644 index 000000000..1adc61e4a --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-loading/README.en-US.md @@ -0,0 +1,11 @@ +:: BASE_DOC :: + +## API + +### ChatLoading Props + +name | type | default | description | required +-- | -- | -- | -- | -- +custom-style | Object | - | CSS(Cascading Style Sheets) | N +animation | String | moving | options: skeleton/moving/gradient/dot | N +text | String | - | text of chat loading | N diff --git a/packages/tdesign-uniapp-chat/components/chat-loading/README.md b/packages/tdesign-uniapp-chat/components/chat-loading/README.md new file mode 100644 index 000000000..06e6b9161 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-loading/README.md @@ -0,0 +1,34 @@ +--- +title: ChatLoading 对话加载 +description: 用于对话场景中的加载状态组件。 +spline: base +isComponent: true +--- + +## 引入 + +可在 `main.ts` 或在需要使用的页面或组件中引入。 + +```js +import TChatLoading from 'tdesign-uniapp-chat/chat-loading/chat-loading.vue'; +``` + +### 01 组件类型 + +支持多种加载中动效类型,包括 gradient、moving、dots + +{{ base }} + +#### 带文案描述的加载组件 + +{{ text }} + +## API + +### ChatLoading Props + +名称 | 类型 | 默认值 | 描述 | 必传 +-- | -- | -- | -- | -- +custom-style | Object | - | 自定义样式 | N +animation | String | moving | 加载的状态形式。可选项:skeleton/moving/gradient/dot | N +text | String | - | 加载过程展示的文字内容 | N diff --git a/packages/tdesign-uniapp-chat/components/chat-loading/_example/base/index.vue b/packages/tdesign-uniapp-chat/components/chat-loading/_example/base/index.vue new file mode 100644 index 000000000..ec575eee9 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-loading/_example/base/index.vue @@ -0,0 +1,43 @@ + + + + diff --git a/packages/tdesign-uniapp-chat/components/chat-loading/_example/chat-loading.less b/packages/tdesign-uniapp-chat/components/chat-loading/_example/chat-loading.less new file mode 100644 index 000000000..e69de29bb diff --git a/packages/tdesign-uniapp-chat/components/chat-loading/_example/chat-loading.vue b/packages/tdesign-uniapp-chat/components/chat-loading/_example/chat-loading.vue new file mode 100644 index 000000000..a020f6ee3 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-loading/_example/chat-loading.vue @@ -0,0 +1,61 @@ + + + + diff --git a/packages/tdesign-uniapp-chat/components/chat-loading/_example/text/index.vue b/packages/tdesign-uniapp-chat/components/chat-loading/_example/text/index.vue new file mode 100644 index 000000000..daa2b4ff6 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-loading/_example/text/index.vue @@ -0,0 +1,30 @@ + + + + diff --git a/packages/tdesign-uniapp-chat/components/chat-loading/chat-loading.less b/packages/tdesign-uniapp-chat/components/chat-loading/chat-loading.less new file mode 100644 index 000000000..9567af149 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-loading/chat-loading.less @@ -0,0 +1,171 @@ +@import 'tdesign-uniapp/common/style/base.less'; + +@chat-loading: ~'@{prefix}-chat-loading'; + +@chat-loading-animation-duration: 0.6s; + +.@{chat-loading} { + display: flex; + align-items: center; + + &::before, + &::after { + box-sizing: border-box; + } + + &__icon { + &--with-padding { + padding: 6rpx; + box-sizing: border-box; + } + + .@{chat-loading}__skeleton{ + width: 100% + } + } + + &__text { + color: @text-color-placeholder; + font-size: @font-size-base; + + &:not(:empty) { + margin-left: @spacer; + } + } + + &__moving { + position: relative; + width: 28rpx; + height: 28rpx; + + &--top, + &--left, + &--right { + position: absolute; + width: 14rpx; + height: 14rpx; + border-radius: 50%; + background-color: @brand-color; + } + + &--top { + top: -6rpx; + left: 7rpx; + animation: dot-moving-top @chat-loading-animation-duration ease-in-out alternate infinite; + } + + &--left { + bottom: -6rpx; + left: -6rpx; + animation: dot-moving-left @chat-loading-animation-duration ease-in-out alternate infinite; + } + + &--right { + bottom: -6rpx; + right: -6rpx; + animation: dot-moving-right @chat-loading-animation-duration ease-in-out alternate infinite; + } + } + + &__gradient { + width: 28rpx; + height: 28rpx; + background-color: transparent; + border-radius: 50%; + border: 3rpx solid @brand-color; + animation: border-gradient-color @chat-loading-animation-duration ease-in-out alternate infinite; + box-sizing: border-box; + padding: 0 6rpx; + } + + &__dots { + width: 100%; + height: 100%; + display: flex; + align-items: center; + justify-content: center; + } + + &__skeleton { + width: 100%; + } +} + +@keyframes dot-moving-top { + 0% { + transform: scale(1); + top: -6rpx; + } + to { + transform: scale(2); + top: 7rpx; + } +} + +@keyframes dot-moving-left { + 0% { + transform: scale(1); + bottom: -6rpx; + left: -6rpx; + } + to { + transform: scale(2); + bottom: 7rpx; + left: 7rpx; + } +} + +@keyframes dot-moving-right { + 0% { + transform: scale(1); + bottom: -6rpx; + right: -6rpx; + } + to { + transform: scale(2); + bottom: 7rpx; + right: 7rpx; + } +} + +@keyframes border-gradient-color { + 0% { + border-color: @brand-color; + border-width: 1.5px; + } + 50% { + border-color: @brand-color-active; + border-width: 3px; + } + 100% { + border-color: @primary-color-6; + border-width: 4px; + } +} + +@keyframes a_tick { + 0% { + width: 0; + } + 100% { + width: 14rpx; + } +} + +@keyframes a_tick-1 { + 0% { + transform: rotate(45deg) scale(0, 1); + } + 100% { + transform: rotate(45deg) scale(1, 1); + } +} + +@keyframes a_tick-2 { + 0% { + transform: rotate(-45deg) scale(0, 1); + } + 100% { + transform: rotate(-45deg) scale(1, 1); + } +} diff --git a/packages/tdesign-uniapp-chat/components/chat-loading/chat-loading.vue b/packages/tdesign-uniapp-chat/components/chat-loading/chat-loading.vue new file mode 100644 index 000000000..3e1318d28 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-loading/chat-loading.vue @@ -0,0 +1,91 @@ + + + diff --git a/packages/tdesign-uniapp-chat/components/chat-loading/props.ts b/packages/tdesign-uniapp-chat/components/chat-loading/props.ts new file mode 100644 index 000000000..19c5ea466 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-loading/props.ts @@ -0,0 +1,23 @@ +/* eslint-disable */ + +/** + * 该文件为脚本自动生成文件,请勿随意修改。如需修改请联系 PMC + * */ + +import type { TdChatLoadingProps } from './type'; +export default { + /** 加载的状态形式 */ + animation: { + type: String, + default: 'moving' as TdChatLoadingProps['animation'], + validator(val: TdChatLoadingProps['animation']): boolean { + if (!val) return true; + return ['skeleton', 'moving', 'gradient', 'dot'].includes(val); + }, + }, + /** 加载过程展示的文字内容 */ + text: { + type: String, + default: '', + }, +}; diff --git a/packages/tdesign-uniapp-chat/components/chat-loading/type.ts b/packages/tdesign-uniapp-chat/components/chat-loading/type.ts new file mode 100644 index 000000000..3aca3d565 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-loading/type.ts @@ -0,0 +1,18 @@ +/* eslint-disable */ + +/** + * 该文件为脚本自动生成文件,请勿随意修改。如需修改请联系 PMC + * */ + +export interface TdChatLoadingProps { + /** + * 加载的状态形式 + * @default moving + */ + animation?: 'skeleton' | 'moving' | 'gradient' | 'dot'; + /** + * 加载过程展示的文字内容 + * @default '' + */ + text?: string; +} diff --git a/packages/tdesign-uniapp-chat/components/chat-markdown-code/chat-markdown-code.less b/packages/tdesign-uniapp-chat/components/chat-markdown-code/chat-markdown-code.less new file mode 100644 index 000000000..c379bac69 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-markdown-code/chat-markdown-code.less @@ -0,0 +1,96 @@ +@import 'tdesign-uniapp/common/style/base.less'; + +@chat-markdown-code: ~'@{prefix}-chat-markdown-code'; + +@chat-markdown-code-block-margin: 16rpx; +@chat-markdown-code-block-radius: 8rpx; +@chat-markdown-code-block-bg-light: #f6f8fa; +@chat-markdown-code-block-bg-dark: #161b22; +@chat-markdown-code-block-bg-white: #ffffff; +@chat-markdown-code-block-border-light: #e1e4e8; +@chat-markdown-code-block-border-dark: #30363d; +@chat-markdown-code-block-border-white: #d0d7de; + +@chat-markdown-code-header-padding: 8rpx 16rpx; +@chat-markdown-code-header-bg-light: #e1e4e8; +@chat-markdown-code-header-bg-dark: #21262d; +@chat-markdown-code-header-bg-white: #f6f8fa; +@chat-markdown-code-header-border-light: #d0d7de; +@chat-markdown-code-header-border-dark: #30363d; +@chat-markdown-code-header-border-white: #d0d7de; + +@chat-markdown-code-lang-font-size: 24rpx; +@chat-markdown-code-lang-color-light: #656d76; +@chat-markdown-code-lang-color-dark: #7d8590; +@chat-markdown-code-lang-font-weight: 500; + +@chat-markdown-code-content-padding: 16rpx; + +@chat-markdown-code-text-font-family: 'SF Mono', Monaco, 'Cascadia Code', 'Roboto Mono', Consolas, 'Courier New', + monospace; +@chat-markdown-code-text-font-size: 28rpx; +@chat-markdown-code-text-line-height: 1.6; +@chat-markdown-code-text-color-light: #24292f; +@chat-markdown-code-text-color-dark: #e6edf3; + +.@{chat-markdown-code} { + // 代码块容器 + margin: @chat-markdown-code-block-margin 0; + border-radius: @chat-markdown-code-block-radius; + background-color: @chat-markdown-code-block-bg-light; + border: 1rpx solid @chat-markdown-code-block-border-light; + overflow: hidden; + + // 代码语言标签 + &__header { + padding: @chat-markdown-code-header-padding; + background-color: @chat-markdown-code-header-bg-light; + border-bottom: 1rpx solid @chat-markdown-code-header-border-light; + } + + // 语言标签文本 + &__lang { + font-size: @chat-markdown-code-lang-font-size; + color: @chat-markdown-code-lang-color-light; + font-weight: @chat-markdown-code-lang-font-weight; + } + + // 代码内容区域 + &__content { + padding: @chat-markdown-code-content-padding; + overflow-x: auto; + overflow-y: hidden; + -webkit-overflow-scrolling: touch; + white-space: nowrap; + height: auto; + } + + // 代码文本 + &__text { + font-family: @chat-markdown-code-text-font-family; + font-size: @chat-markdown-code-text-font-size; + line-height: @chat-markdown-code-text-line-height; + color: @chat-markdown-code-text-color-light; + /* 关键设置:防止换行 */ + white-space: pre; + word-wrap: normal; + word-break: normal; + overflow-wrap: normal; + display: inline-block; + vertical-align: top; + min-width: 100%; + } + + // 浅色主题 + &-light { + .@{chat-markdown-code}-block { + background-color: @chat-markdown-code-block-bg-white; + border-color: @chat-markdown-code-block-border-white; + } + + .@{chat-markdown-code}-header { + background-color: @chat-markdown-code-header-bg-white; + border-bottom-color: @chat-markdown-code-header-border-white; + } + } +} diff --git a/packages/tdesign-uniapp-chat/components/chat-markdown-code/chat-markdown-code.vue b/packages/tdesign-uniapp-chat/components/chat-markdown-code/chat-markdown-code.vue new file mode 100644 index 000000000..b0e2e5313 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-markdown-code/chat-markdown-code.vue @@ -0,0 +1,58 @@ + + + + diff --git a/packages/tdesign-uniapp-chat/components/chat-markdown-node/chat-markdown-node.less b/packages/tdesign-uniapp-chat/components/chat-markdown-node/chat-markdown-node.less new file mode 100644 index 000000000..e69de29bb diff --git a/packages/tdesign-uniapp-chat/components/chat-markdown-node/chat-markdown-node.vue b/packages/tdesign-uniapp-chat/components/chat-markdown-node/chat-markdown-node.vue new file mode 100644 index 000000000..4ed50b7db --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-markdown-node/chat-markdown-node.vue @@ -0,0 +1,292 @@ + + + + diff --git a/packages/tdesign-uniapp-chat/components/chat-markdown-table/chat-markdown-table.less b/packages/tdesign-uniapp-chat/components/chat-markdown-table/chat-markdown-table.less new file mode 100644 index 000000000..5237c3219 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-markdown-table/chat-markdown-table.less @@ -0,0 +1,68 @@ +@import 'tdesign-uniapp/common/style/base.less'; + +@chat-markdown-table: ~'@{prefix}-chat-markdown-table'; + +.@{chat-markdown-table} { + width: 100%; + overflow-y: hidden; + overflow-x: auto; + border: 1rpx solid @component-border; + + &__container { + display: table; + min-width: 100%; + max-width: max-content; + border-collapse: collapse; + white-space: nowrap; + } + + &__thead { + display: table-header-group; + } + + &__tbody { + display: table-row-group; + } + + &__tr { + display: table-row; + border-bottom: 1rpx solid @component-border; + + &:last-child { + border-bottom: none; + } + + /* 斑马条纹样式 */ + &:nth-child(2n + 1) { + background-color: @bg-color-container; + } + + &:nth-child(2n) { + background-color: @bg-color-secondarycontainer; + } + } + + &__th { + display: table-cell; + vertical-align: middle; + background-color: @bg-color-secondarycontainer; + padding: 5rpx 10rpx; + color: @text-color-secondary; + border-right: 1rpx solid @component-border; + + &:last-child { + border-right: none; + } + } + + &__td { + display: table-cell; + vertical-align: middle; + padding: 5rpx 10rpx; + border-right: 1rpx solid @component-border; + + &:last-child { + border-right: none; + } + } +} diff --git a/packages/tdesign-uniapp-chat/components/chat-markdown-table/chat-markdown-table.vue b/packages/tdesign-uniapp-chat/components/chat-markdown-table/chat-markdown-table.vue new file mode 100644 index 000000000..1bd2be9a8 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-markdown-table/chat-markdown-table.vue @@ -0,0 +1,80 @@ + + + + diff --git a/packages/tdesign-uniapp-chat/components/chat-markdown/README.en-US.md b/packages/tdesign-uniapp-chat/components/chat-markdown/README.en-US.md new file mode 100644 index 000000000..5f6a23d47 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-markdown/README.en-US.md @@ -0,0 +1,17 @@ +:: BASE_DOC :: + +## API + +### ChatMarkdown Props + +name | type | default | description | required +-- | -- | -- | -- | -- +custom-style | Object | - | CSS(Cascading Style Sheets) | N +content | String | - | required | Y +options | Object | () => ({ gfm: true, pedantic: false, breaks: true }) | Typescript: `TdChatContentMDOptions ` `interface TdChatContentMDOptions {gfm?: boolean; pedantic?: boolean; smartLists?: boolean; breaks?: boolean}`。[see more ts definition](https://github.com/novlan1/tdesign-uniapp/blob/develop/packages/tdesign-uniapp-chat/chat-markdown/type.ts) | N + +### ChatMarkdown Events + +name | params | description +-- | -- | -- +click | `(context: {detail:{event, node}, currentTarget, target})` | \- diff --git a/packages/tdesign-uniapp-chat/components/chat-markdown/README.md b/packages/tdesign-uniapp-chat/components/chat-markdown/README.md new file mode 100644 index 000000000..0d0113228 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-markdown/README.md @@ -0,0 +1,60 @@ +--- +title: ChatMarkdown Markdown内容 +description: 用于聊天场景中渲染 Markdown 格式文本的组件,内置 marked 解析器,支持多种 Markdown 语法和配置选项。 +spline: base +isComponent: true +--- + +## 引入 + +可在 `main.ts` 或在需要使用的页面或组件中引入。 + +```js +import TChatMarkdown from 'tdesign-uniapp-chat/chat-markdown/chat-markdown.vue'; +``` + +### 01 基础 Markdown 样式 + +#### 标题与文本 + +{{ base }} + +#### 列表 + +{{ list }} + +### 02 代码块与表格 + +#### 代码块 + +{{ code }} + +#### 表格 + +{{ sheet }} + +### 03 图片与超链接 + +支持监听链接的点击事件 + +{{ url }} + +### 04 引用 + +{{ refer }} + +## API + +### ChatMarkdown Props + +名称 | 类型 | 默认值 | 描述 | 必传 +-- | -- | -- | -- | -- +custom-style | Object | - | 自定义样式 | N +content | String | - | 必需。markdown 内容文本 | Y +options | Object | () => ({ gfm: true, pedantic: false, breaks: true }) | Markdown 解析器基础配置。TS 类型:`TdChatContentMDOptions ` `interface TdChatContentMDOptions {gfm?: boolean; pedantic?: boolean; smartLists?: boolean; breaks?: boolean}`。[详细类型定义](https://github.com/novlan1/tdesign-uniapp/blob/develop/packages/tdesign-uniapp-chat/chat-markdown/type.ts) | N + +### ChatMarkdown Events + +名称 | 参数 | 描述 +-- | -- | -- +click | `(context: {detail:{event, node}, currentTarget, target})` | 点击链接时触发 diff --git a/packages/tdesign-uniapp-chat/components/chat-markdown/_example/base/index.vue b/packages/tdesign-uniapp-chat/components/chat-markdown/_example/base/index.vue new file mode 100644 index 000000000..6e730b97c --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-markdown/_example/base/index.vue @@ -0,0 +1,60 @@ + + + + diff --git a/packages/tdesign-uniapp-chat/components/chat-markdown/_example/base/mock2.js b/packages/tdesign-uniapp-chat/components/chat-markdown/_example/base/mock2.js new file mode 100644 index 000000000..03033fb0e --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-markdown/_example/base/mock2.js @@ -0,0 +1,104 @@ +const mockMarkdownData = `# Markdown功能测试 (H1标题) + +## 基础语法测试 (H2标题) + +### 文字样式 (H3标题) + +#### 文字样式 (H4标题) + +##### 文字样式 (H5标题) + +###### 文字样式 (H6标题) + +我是很长的一段文字,我是很长的一段文字,我是很长的一段文字,我是很长的一段文字,我是很长的一段文字,我是很长的一段文字,我是很长的一段文字,我是很长的一段文字,我是很长的一段文字,我是很长的一段文字,我是很长的一段文字,我是很长的一段文字,我是很长的一段文字,我是很长的一段文字,我是很长的一段文字,我是很长的一段文字, + +**加粗文字** +_斜体文字_ +~~删除线~~ +**_加粗且斜体_** +行内代码: \`console.log('Hello')\` + +### 代码块测试 + +\`\`\`javascript +// JavaScript 代码块 +const express = require('express') +const app = express() +const port = 3000 + +app.get('/', (req, res) => { + res.send('Hello World') +}) + +app.listen(port, () => { + console.log(\`http://localhost:\${port}\`) +}) + +function greet(name) { + console.log(\`Hello, \${name}!\`); +} +greet('Markdown'); +\`\`\` + +\`\`\`python +# Python 代码块 +def hello(): + print("Markdown 示例") +\`\`\` + +### 列表测试 + +- 无序列表项1 +- 无序列表项2 + - 嵌套列表项 + - 嵌套列表项 + +1. 有序列表项1 +2. 有序列表项2 + +### 表格测试 + +| 左对齐 | 居中对齐 | 右对齐 | 内容 | +| :--------- | :------: | -----: | ----- | +| 单元格 | 单元格 | 单元格 | 单元格 | +| 长文本示例| 长文本示例长文本示例长文本示例 | $100 | 文本内容 | +| 文本示例 | 文本内容 | $100 | 文本内容 | + +![示例](https://tdesign.gtimg.com/demo/demo-image-1.png "示例") + +### 其他元素 + +> 引用文本块 +> 多行引用内容 + +--- + +分割线测试(上方) + +块级公式 +$$ +E=mc^2 +$$ + +行内公式 $\\sqrt{3x-1}+(1+x)^2$ + +脚注测试[^1] + +[^1]: 这里是脚注内容 + +这是一个链接 [Markdown语法](https://markdown.com.cn)。 + +✅ 任务列表: + +- [ ] 未完成任务 +- [x] 已完成任务 + +HTML混合测试: +
(需要开启html选项) +辅助文字 + +特殊符号测试 + +🌼👏🌟📷🌳💧😜❄⚠☔❌🌿👥⚠💎 +`; +export default mockMarkdownData; diff --git a/packages/tdesign-uniapp-chat/components/chat-markdown/_example/chat-markdown.less b/packages/tdesign-uniapp-chat/components/chat-markdown/_example/chat-markdown.less new file mode 100644 index 000000000..06ad5ded2 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-markdown/_example/chat-markdown.less @@ -0,0 +1,17 @@ +.demo-block { + margin-bottom: 32rpx; + padding: 0; +} + +.demo-block__title { + font-size: 32rpx; + font-weight: bold; + color: #333; + margin-bottom: 0; + padding-bottom: 16rpx; + border-bottom: 1rpx solid #e7e7e7; +} + +.demo-block__content { + min-height: 200rpx; +} diff --git a/packages/tdesign-uniapp-chat/components/chat-markdown/_example/chat-markdown.vue b/packages/tdesign-uniapp-chat/components/chat-markdown/_example/chat-markdown.vue new file mode 100644 index 000000000..6e4f1cf7e --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-markdown/_example/chat-markdown.vue @@ -0,0 +1,68 @@ + + + + diff --git a/packages/tdesign-uniapp-chat/components/chat-markdown/_example/code/index.vue b/packages/tdesign-uniapp-chat/components/chat-markdown/_example/code/index.vue new file mode 100644 index 000000000..abf29f115 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-markdown/_example/code/index.vue @@ -0,0 +1,47 @@ + + + + diff --git a/packages/tdesign-uniapp-chat/components/chat-markdown/_example/list/index.vue b/packages/tdesign-uniapp-chat/components/chat-markdown/_example/list/index.vue new file mode 100644 index 000000000..1bc7cd061 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-markdown/_example/list/index.vue @@ -0,0 +1,50 @@ + + + + diff --git a/packages/tdesign-uniapp-chat/components/chat-markdown/_example/refer/index.vue b/packages/tdesign-uniapp-chat/components/chat-markdown/_example/refer/index.vue new file mode 100644 index 000000000..21cc7e0cf --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-markdown/_example/refer/index.vue @@ -0,0 +1,46 @@ + + + + diff --git a/packages/tdesign-uniapp-chat/components/chat-markdown/_example/sheet/index.vue b/packages/tdesign-uniapp-chat/components/chat-markdown/_example/sheet/index.vue new file mode 100644 index 000000000..ae4c95056 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-markdown/_example/sheet/index.vue @@ -0,0 +1,46 @@ + + + + diff --git a/packages/tdesign-uniapp-chat/components/chat-markdown/_example/url/index.vue b/packages/tdesign-uniapp-chat/components/chat-markdown/_example/url/index.vue new file mode 100644 index 000000000..c545f5bf6 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-markdown/_example/url/index.vue @@ -0,0 +1,50 @@ + + + + diff --git a/packages/tdesign-uniapp-chat/components/chat-markdown/chat-markdown.less b/packages/tdesign-uniapp-chat/components/chat-markdown/chat-markdown.less new file mode 100644 index 000000000..978a69004 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-markdown/chat-markdown.less @@ -0,0 +1,192 @@ +@import 'tdesign-uniapp/common/style/base.less'; + +@chat-markdown: ~'@{prefix}-chat-markdown'; +@chat-markdown-table: ~'@{prefix}-chat-markdown-table'; + +@chat-markdown-color: @text-color-primary; +@chat-markdown-line-height: 1.75; +@chat-markdown-h1: 2em; +@chat-markdown-h2: 1.75em; +@chat-markdown-h3: 1.5em; +@chat-markdown-h4: 1.25em; +@chat-markdown-h5: 1em; +@chat-markdown-h6: 0.75em; +@chat-markdown-blockquote-color: @text-color-primary; +@chat-markdown-blockquote-bg-color: @bg-color-secondarycontainer; +@chat-markdown-blockquote-border: 4rpx solid @component-border; +@chat-markdown-blockquote-padding: 0 0.75em; +@chat-markdown-hr-height: 6rpx; +@chat-markdown-link-color: @brand-color; +@chat-markdown-codespan-bg-color: @bg-color-page; +@chat-markdown-codespan-font-size: 0.8em; +@chat-markdown-table-header-bg-color: @bg-color-component; +@chat-markdown-table-padding: 5rpx 10rpx; + +.@{chat-markdown} { + color: @chat-markdown-color; + word-wrap: break-word; + word-break: break-word; + line-height: @chat-markdown-line-height; + + // 内联样式 + &-inline { + display: inline; + } + + // 段落样式 + &-p { + -webkit-margin-before: @spacer-1; + margin-block-start: @spacer-1; + -webkit-margin-after: @spacer-1; + margin-block-end: @spacer-1; + + &:first-child { + -webkit-margin-before: 0; + margin-block-start: 0; + } + + &:last-child { + -webkit-margin-after: 0; + margin-block-end: 0; + } + } + + // 引用块样式 + &-blockquote { + padding: @chat-markdown-blockquote-padding; + color: @chat-markdown-blockquote-color; + background-color: @chat-markdown-blockquote-bg-color; + border-left: @chat-markdown-blockquote-border; + margin-bottom: @spacer-1; + } + + // 标题样式 + &-h { + font-size: @chat-markdown-h5; + margin: @spacer-1 0; + font-weight: bold; + + // 各级标题 + &1 { + font-size: @chat-markdown-h1; + } + + &2 { + font-size: @chat-markdown-h2; + } + + &3 { + font-size: @chat-markdown-h3; + } + + &4 { + font-size: @chat-markdown-h4; + } + + &5 { + font-size: @chat-markdown-h5; + } + + &6 { + font-size: @chat-markdown-h6; + } + } + + // 强调样式 + &-em { + font-style: italic; + } + + // 加粗样式 + &-strong { + font-weight: bold; + } + + // 分割线样式 + &-hr { + height: @chat-markdown-hr-height; + padding: 0; + margin: @spacer-1 0; + background-color: @component-border; + border: 0; + } + + // 列表样式 + &-list { + display: block; + padding: 0; + margin: 0 0 @spacer 1.5em;; + + // 有序列表 + &__decimal { + list-style-type: decimal; + } + } + + // 列表项样式 + &-list-item { + display: list-item; + margin-bottom: @spacer-1; + } + + // 链接样式 + &-link { + color: @chat-markdown-link-color; + } + + // 删除线样式 + &-del { + text-decoration: line-through; + } + + // 代码样式 + &-codespan { + padding: 4rpx 8rpx; + margin: 0 4rpx; + border-radius: 8rpx; + font-size: @chat-markdown-codespan-font-size; + overflow-x: auto; + background-color: @chat-markdown-codespan-bg-color; + border: 1rpx solid @component-border; + } + + // 表格样式 + .@{chat-markdown-table}__container { + display: table; + width: 100%; + border-collapse: collapse; + + // 表头组 + &-thead { + display: table-header-group; + } + + // 表体组 + &-tbody { + display: table-row-group; + } + + // 表格行 + &-tr { + display: table-row; + } + + // 表头单元格 + &-th { + display: table-cell; + vertical-align: middle; + background-color: @chat-markdown-table-header-bg-color; + font-weight: bold; + padding: @chat-markdown-table-padding; + border: 1rpx solid @component-border; + } + + // 表格单元格 + &-td { + display: table-cell; + vertical-align: middle; + padding: @chat-markdown-table-padding; + border: 1rpx solid @component-border; + } + } +} diff --git a/packages/tdesign-uniapp-chat/components/chat-markdown/chat-markdown.vue b/packages/tdesign-uniapp-chat/components/chat-markdown/chat-markdown.vue new file mode 100644 index 000000000..fd7b98a62 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-markdown/chat-markdown.vue @@ -0,0 +1,80 @@ + + + diff --git a/packages/tdesign-uniapp-chat/components/chat-markdown/props.ts b/packages/tdesign-uniapp-chat/components/chat-markdown/props.ts new file mode 100644 index 000000000..4eaccdcdd --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-markdown/props.ts @@ -0,0 +1,24 @@ +/* eslint-disable */ + +/** + * 该文件为脚本自动生成文件,请勿随意修改。如需修改请联系 PMC + * */ + +export default { + /** markdown 内容文本 */ + content: { + type: String, + default: '', + required: true, + }, + /** Markdown 解析器基础配置 */ + options: { + type: Object, + default: () => ({ gfm: true, pedantic: false, breaks: true }), + }, + /** 点击链接时触发 */ + onClick: { + type: Function, + default: () => ({}), + }, +}; diff --git a/packages/tdesign-uniapp-chat/components/chat-markdown/type.ts b/packages/tdesign-uniapp-chat/components/chat-markdown/type.ts new file mode 100644 index 000000000..de0a82116 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-markdown/type.ts @@ -0,0 +1,29 @@ +/* eslint-disable */ + +/** + * 该文件为脚本自动生成文件,请勿随意修改。如需修改请联系 PMC + * */ + +export interface TdChatMarkdownProps { + /** + * markdown 内容文本 + * @default '' + */ + content: string; + /** + * Markdown 解析器基础配置 + * @default () => ({ gfm: true, pedantic: false, breaks: true }) + */ + options?: TdChatContentMDOptions; + /** + * 点击链接时触发 + */ + onClick?: (context: { detail: { event; node }; currentTarget; target }) => void; +} + +export interface TdChatContentMDOptions { + gfm?: boolean; + pedantic?: boolean; + smartLists?: boolean; + breaks?: boolean; +} diff --git a/packages/tdesign-uniapp-chat/components/chat-message/README.en-US.md b/packages/tdesign-uniapp-chat/components/chat-message/README.en-US.md new file mode 100644 index 000000000..6f6e26ed7 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-message/README.en-US.md @@ -0,0 +1,31 @@ + +## API + +### ChatMessage Props + +name | type | default | description | required +-- | -- | -- | -- | -- +custom-style | Object | - | CSS(Cascading Style Sheets) | N +animation | String | skeleton | options: skeleton/moving/gradient/dots | N +avatar | String | - | \- | N +chat-content-props | Object | - | Typescript: `ChatContentProps`,[ChatContent API Documents](./chat-content?tab=api)。[see more ts definition](https://github.com/novlan1/tdesign-uniapp/blob/develop/packages/tdesign-uniapp-chat/chat-message/type.ts) | N +chat-id | String | - | \- | N +content | Array | - | Typescript: `ChatMessageContent[] ` `type ChatMessageContent = TextContent \| MarkdownContent \| ThinkingContent \| AttachmentContent` ` type AttachmentContent = ChatBaseContent<'attachment', FileItem[]>` `type ThinkingContent = ChatBaseContent<'thinking', ThinkingContentData>` `type MarkdownContent = ChatBaseContent<'markdown', string>` `type TextContent = ChatBaseContent<'text', string>` `interface ThinkingContentData {title?: string; text: string}` `interface ChatBaseContent {type: T; data: TData}` `type ChatMessageStatus = 'pending' \| 'streaming' \| 'complete' \| 'stop' \| 'error'` `type ChatContentType = \| 'text' \| 'markdown' \| 'thinking' \| 'attachment'`,[Attachments API Documents](./attachments?tab=api)。[see more ts definition](https://github.com/novlan1/tdesign-uniapp/blob/develop/packages/tdesign-uniapp-chat/chat-message/type.ts) | N +datetime | String | - | \- | N +name | String | - | \- | N +placement | String | - | options: left/right | N +role | String | user | options: user/assistant/system | N +status | String | - | options: pending/streaming/complete/stop/error | N +variant | String | base | options: base/outline/text | N + +### ChatMessage Events + +name | params | description +-- | -- | -- +longpress | `(context: { e: MouseEvent, id: string })` | \- + +### ChatMessage Slots + +name | \- +avatar | \- +datetime | \- diff --git a/packages/tdesign-uniapp-chat/components/chat-message/README.md b/packages/tdesign-uniapp-chat/components/chat-message/README.md new file mode 100644 index 000000000..f6f6a2fbd --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-message/README.md @@ -0,0 +1,79 @@ +--- +title: ChatMessage 对话消息体 +description: 用于在聊天对话中显示单个消息项。它可以展示用户的头像、昵称、时间、聊天内容,支持多种消息状态和样式变体。 +spline: base +isComponent: true +--- + +## 引入 + +可在 `main.ts` 或在需要使用的页面或组件中引入。 + +```js +import TChatMessage from 'tdesign-uniapp-chat/chat-message/chat-message.vue'; +``` + +### 01 组件类型 + +#### 基础类型 + +{{ base }} + +#### 可配置昵称、头像、对齐方式 + +{{ configure }} + +#### 配置消息属性 + +支持`avatar`,`name`,`datetime`,`content`插槽自定义, `content`插槽使用建议:渲染聊天消息统一用 `t-chat-content`;仅在需要“单独使用 Markdown 组件”时使用 `t-chat-markdown`。也支持别的 markdown 渲染组件,选择其他 markdown 渲染库由用户自行安装。 + +{{ content }} + +### 02 组件状态 + +#### 加载状态 + +{{ status }} + +#### 出错状态 + +{{ error }} + +### 03 组件样式 + +#### 气泡样式 + +{{ style }} + +## API + +### ChatMessage Props + +名称 | 类型 | 默认值 | 描述 | 必传 +-- | -- | -- | -- | -- +custom-style | Object | - | 自定义样式 | N +animation | String | skeleton | 动画效果。可选项:skeleton/moving/gradient/dots | N +avatar | String | - | 自定义的头像配置 | N +chat-content-props | Object | - | 聊天内容组件的属性。TS 类型:`ChatContentProps`,[ChatContent API Documents](./chat-content?tab=api)。[详细类型定义](https://github.com/novlan1/tdesign-uniapp/blob/develop/packages/tdesign-uniapp-chat/chat-message/type.ts) | N +chat-id | String | - | 聊天消息的唯一标识 | N +content | Array | - | 消息内容,数组中的每一项为一个消息内容对象。TS 类型:`ChatMessageContent[] ` `type ChatMessageContent = TextContent \| MarkdownContent \| ThinkingContent \| AttachmentContent` ` type AttachmentContent = ChatBaseContent<'attachment', FileItem[]>` `type ThinkingContent = ChatBaseContent<'thinking', ThinkingContentData>` `type MarkdownContent = ChatBaseContent<'markdown', string>` `type TextContent = ChatBaseContent<'text', string>` `interface ThinkingContentData {title?: string; text: string}` `interface ChatBaseContent {type: T; data: TData}` `type ChatMessageStatus = 'pending' \| 'streaming' \| 'complete' \| 'stop' \| 'error'` `type ChatContentType = \| 'text' \| 'markdown' \| 'thinking' \| 'attachment'`,[Attachments API Documents](./attachments?tab=api)。[详细类型定义](https://github.com/novlan1/tdesign-uniapp/blob/develop/packages/tdesign-uniapp-chat/chat-message/type.ts) | N +datetime | String | - | 对话单元的时间配置 | N +name | String | - | 自定义的昵称 | N +placement | String | - | 消息显示位置。可选项:left/right | N +role | String | user | 消息角色。可选项:user/assistant/system | N +status | String | - | 消息状态。可选项:pending/streaming/complete/stop/error | N +variant | String | base | 气泡框样式,支持基础、线框、文字三种类型。可选项:base/outline/text | N + +### ChatMessage Events + +名称 | 参数 | 描述 +-- | -- | -- +longpress | `(context: { e: MouseEvent, id: string })` | \- + +### ChatMessage Slots + +名称 | 描述 +-- | -- +avatar | 自定义 `avatar` 显示内容 +datetime | 自定义 `datetime` 显示内容 +name | 自定义 `name` 显示内容 diff --git a/packages/tdesign-uniapp-chat/components/chat-message/_example/base/index.vue b/packages/tdesign-uniapp-chat/components/chat-message/_example/base/index.vue new file mode 100644 index 000000000..9364a2330 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-message/_example/base/index.vue @@ -0,0 +1,52 @@ + + + + diff --git a/packages/tdesign-uniapp-chat/components/chat-message/_example/chat-message.less b/packages/tdesign-uniapp-chat/components/chat-message/_example/chat-message.less new file mode 100644 index 000000000..6cc02a933 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-message/_example/chat-message.less @@ -0,0 +1,7 @@ +.t-button { + margin-right: 32rpx; +} + +.t-button:last-child { + margin-right: 0; +} diff --git a/packages/tdesign-uniapp-chat/components/chat-message/_example/chat-message.vue b/packages/tdesign-uniapp-chat/components/chat-message/_example/chat-message.vue new file mode 100644 index 000000000..8e075b2e9 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-message/_example/chat-message.vue @@ -0,0 +1,70 @@ + + + + diff --git a/packages/tdesign-uniapp-chat/components/chat-message/_example/configure/index.vue b/packages/tdesign-uniapp-chat/components/chat-message/_example/configure/index.vue new file mode 100644 index 000000000..7e193277d --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-message/_example/configure/index.vue @@ -0,0 +1,70 @@ + + + + diff --git a/packages/tdesign-uniapp-chat/components/chat-message/_example/content/index.vue b/packages/tdesign-uniapp-chat/components/chat-message/_example/content/index.vue new file mode 100644 index 000000000..097ec4c32 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-message/_example/content/index.vue @@ -0,0 +1,244 @@ + + + + diff --git a/packages/tdesign-uniapp-chat/components/chat-message/_example/error/index.vue b/packages/tdesign-uniapp-chat/components/chat-message/_example/error/index.vue new file mode 100644 index 000000000..9fe16b8be --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-message/_example/error/index.vue @@ -0,0 +1,51 @@ + + + + diff --git a/packages/tdesign-uniapp-chat/components/chat-message/_example/status/index.vue b/packages/tdesign-uniapp-chat/components/chat-message/_example/status/index.vue new file mode 100644 index 000000000..ad198b276 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-message/_example/status/index.vue @@ -0,0 +1,62 @@ + + + + diff --git a/packages/tdesign-uniapp-chat/components/chat-message/_example/style/index.vue b/packages/tdesign-uniapp-chat/components/chat-message/_example/style/index.vue new file mode 100644 index 000000000..e6038a61a --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-message/_example/style/index.vue @@ -0,0 +1,69 @@ + + + + diff --git a/packages/tdesign-uniapp-chat/components/chat-message/chat-message.less b/packages/tdesign-uniapp-chat/components/chat-message/chat-message.less new file mode 100644 index 000000000..03cbce877 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-message/chat-message.less @@ -0,0 +1,252 @@ +@import 'tdesign-uniapp/common/style/base.less'; + +@chat-list: ~'@{prefix}-chat-list'; +@chat-content-pure: ~'@{prefix}-chat-content'; +@chat-content: ~':deep(.@{chat-content-pure})'; +@chat-message: ~'@{prefix}-chat-message'; +@chat-thinking: ~'@{prefix}-chat-thinking'; +@attachments: ~'@{prefix}-attachments'; + +@chat-message-content-padding: 24rpx 32rpx; +@chat-message-height: 44rpx; + +// 反向列表样式 +.@{chat-list}__content--reverse { + .@{chat-message} { + -webkit-transform: scaleY(-1); + transform: scaleY(-1); + } +} + +:deep(.@{attachments} + @{chat-content-pure}:not(:empty)), +:deep(.@{chat-thinking} + @{chat-content-pure}:not(:empty)){ + margin-top: 24rpx; +} + +.@{chat-message} { + display: flex; + margin-bottom: @spacer-2; + + // 头像样式 + .@{chat-message}__avatar { + flex: 0 0 auto; + padding-top: 0rpx; + } + + // 内容容器样式 + .@{chat-message}__content { + flex: 1 1 auto; + width: 1%; + } + + // 基础内容样式 + .@{chat-message}__content--base { + padding-top: @spacer-3; + } + + // 详情容器样式 + .@{chat-message}__detail { + max-width: 100%; + box-sizing: border-box; + display: contents; + } + + // 有头部时的样式 + &__header { + .@{chat-message}__avatar { + padding-top: calc(@chat-message-height + @spacer); + } + } + + // 用户消息样式 + &.user { + .@{chat-message}__base { + padding-right: @spacer-2; + } + + @{chat-content} { + max-width: 90%; + } + } + + // 助手消息样式 + &.assistant { + .@{chat-message}__base { + padding-left: @spacer-2; + } + } + + // 错误消息样式 + &.error { + .@{chat-message}__base { + padding-left: @spacer-2; + } + .@{chat-message}__text--error { + color: @error-color-6; + } + } + + // 左侧布局样式 + &.left { + display: flex; + flex-direction: row; + + .@{chat-message}__content { + align-items: flex-start; + } + + .@{chat-message}__base { + padding-left: @spacer-2; + } + } + + // 右侧布局样式 + &.right { + display: flex; + flex-direction: row-reverse; + + .@{chat-message}__content { + align-items: flex-end; + } + + .@{chat-message}__base { + padding-right: @spacer-2; + } + + .@{chat-message}__avatar { + margin-left: @spacer-1; + margin-right: 0; + } + } + + // 头像样式 + &__avatar { + flex-shrink: 0; + cursor: pointer; + display: flex; + margin-right: @spacer-1; + padding-top: calc(@chat-message-height + @spacer); + + &-image { + width: @spacer-4; + height: @spacer-4; + border-radius: @radius-circle; + } + } + + // 内容容器样式 + &__content { + display: flex; + flex-direction: column; + align-items: flex-start; + justify-content: center; + font-size: @font-size-m; + line-height: 48rpx; + font-family: @font-family; + + .t-skeleton { + width: 100%; + // padding: @spacer-2; + } + } + + // 基础信息样式 + &__base { + display: flex; + justify-content: flex-start; + align-items: center; + height: @chat-message-height; + font-size: @font-size-base; + line-height: @chat-message-height; + font-family: @font-family; + color: @text-color-placeholder; + // padding-left: @spacer-2; + margin-bottom: @spacer; + } + + // 名称样式 + &__name { + padding-right: @spacer; + cursor: pointer; + } + + // 气泡框样式:纯文本 + &--text { + @{chat-content} { + &__user, + &__assistant { + color: @text-color-secondary; + } + } + } + + // 气泡框样式:基础 + &--base { + @{chat-content} { + padding: @chat-message-content-padding; + background-color: @bg-color-secondarycontainer; + border-radius: 0 @radius-extraLarge @radius-extraLarge @radius-extraLarge; + } + + &.assistant @{chat-content} { + border-radius: 0 @radius-extraLarge @radius-extraLarge @radius-extraLarge; + background-color: transparent; + padding: 0; + } + + &.user @{chat-content} { + border-radius: 0 @radius-extraLarge @radius-extraLarge @radius-extraLarge; + } + + &.left @{chat-content} { + border-radius: 0 @radius-extraLarge @radius-extraLarge @radius-extraLarge; + } + + &.right @{chat-content} { + border-radius: @radius-extraLarge 0 @radius-extraLarge @radius-extraLarge; + } + } + + // 气泡框样式:线框 + &--outline { + @{chat-content} { + padding: @chat-message-content-padding; + border: 1rpx solid @component-border; + border-radius: 0 @radius-extraLarge @radius-extraLarge @radius-extraLarge; + } + + &.assistant @{chat-content} { + border-radius: 0 @radius-extraLarge @radius-extraLarge @radius-extraLarge; + } + + &.user @{chat-content} { + border-radius: 0 @radius-extraLarge @radius-extraLarge @radius-extraLarge; + } + + &.left @{chat-content} { + border-radius: 0 @radius-extraLarge @radius-extraLarge @radius-extraLarge; + } + + &.right @{chat-content} { + border-radius: @radius-extraLarge 0 @radius-extraLarge @radius-extraLarge; + } + } + + &--base, + &--outline, + &--text { + &.right { + :deep(.@{attachments}__scrollable) { + justify-content: flex-end; + } + } + } + + &__actionbar { + --chat-actionbar-padding: @spacer-1 0 0 0; + + &:empty { + display: none; + } + } +} diff --git a/packages/tdesign-uniapp-chat/components/chat-message/chat-message.vue b/packages/tdesign-uniapp-chat/components/chat-message/chat-message.vue new file mode 100644 index 000000000..c8f054fa3 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-message/chat-message.vue @@ -0,0 +1,176 @@ + + + diff --git a/packages/tdesign-uniapp-chat/components/chat-message/props.ts b/packages/tdesign-uniapp-chat/components/chat-message/props.ts new file mode 100644 index 000000000..48afd3ce1 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-message/props.ts @@ -0,0 +1,82 @@ +/* eslint-disable */ + +/** + * 该文件为脚本自动生成文件,请勿随意修改。如需修改请联系 PMC + * */ + +import type { TdChatMessageProps } from './type'; +export default { + /** 动画效果 */ + animation: { + type: String, + default: 'skeleton' as TdChatMessageProps['animation'], + validator(val: TdChatMessageProps['animation']): boolean { + if (!val) return true; + return ['skeleton', 'moving', 'gradient', 'dots'].includes(val); + }, + }, + /** 自定义的头像配置 */ + avatar: { + type: String, + }, + /** 聊天内容组件的属性 */ + chatContentProps: { + type: Object, + }, + /** 聊天消息的唯一标识 */ + chatId: { + type: String, + default: '', + }, + /** 消息内容,数组中的每一项为一个消息内容对象 */ + content: { + type: Array, + }, + /** 对话单元的时间配置 */ + datetime: { + type: String, + }, + /** 自定义的昵称 */ + name: { + type: String, + }, + /** 消息显示位置 */ + placement: { + type: String, + validator(val: TdChatMessageProps['placement']): boolean { + if (!val) return true; + return ['left', 'right'].includes(val); + }, + }, + /** 消息角色 */ + role: { + type: String, + default: 'user' as TdChatMessageProps['role'], + validator(val: TdChatMessageProps['role']): boolean { + if (!val) return true; + return ['user', 'assistant', 'system'].includes(val); + }, + }, + /** 消息状态 */ + status: { + type: String, + validator(val: TdChatMessageProps['status']): boolean { + if (!val) return true; + return ['pending', 'streaming', 'complete', 'stop', 'error'].includes(val); + }, + }, + /** 气泡框样式,支持基础、线框、文字三种类型 */ + variant: { + type: String, + default: 'base' as TdChatMessageProps['variant'], + validator(val: TdChatMessageProps['variant']): boolean { + if (!val) return true; + return ['base', 'outline', 'text'].includes(val); + }, + }, + /** null */ + onLongpress: { + type: Function, + default: () => ({}), + }, +}; diff --git a/packages/tdesign-uniapp-chat/components/chat-message/type.ts b/packages/tdesign-uniapp-chat/components/chat-message/type.ts new file mode 100644 index 000000000..e39efcaee --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-message/type.ts @@ -0,0 +1,87 @@ +/* eslint-disable */ + +/** + * 该文件为脚本自动生成文件,请勿随意修改。如需修改请联系 PMC + * */ + +import type { TdChatContentProps as ChatContentProps } from '../chat-content/type'; +import type { FileItem } from '../attachments/type'; + +export interface TdChatMessageProps { + /** + * 动画效果 + * @default skeleton + */ + animation?: 'skeleton' | 'moving' | 'gradient' | 'dots'; + /** + * 自定义的头像配置 + */ + avatar?: string; + /** + * 聊天内容组件的属性 + */ + chatContentProps?: ChatContentProps; + /** + * 聊天消息的唯一标识 + * @default '' + */ + chatId?: string; + /** + * 消息内容,数组中的每一项为一个消息内容对象 + */ + content?: ChatMessageContent[]; + /** + * 对话单元的时间配置 + */ + datetime?: string; + /** + * 自定义的昵称 + */ + name?: string; + /** + * 消息显示位置 + */ + placement?: 'left' | 'right'; + /** + * 消息角色 + * @default user + */ + role?: 'user' | 'assistant' | 'system'; + /** + * 消息状态 + */ + status?: 'pending' | 'streaming' | 'complete' | 'stop' | 'error'; + /** + * 气泡框样式,支持基础、线框、文字三种类型 + * @default base + */ + variant?: 'base' | 'outline' | 'text'; + /** + * null + */ + onLongpress?: (context: { e: MouseEvent; id: string }) => void; +} + +export type ChatMessageContent = TextContent | MarkdownContent | ThinkingContent | AttachmentContent; + +export type AttachmentContent = ChatBaseContent<'attachment', FileItem[]>; + +export type ThinkingContent = ChatBaseContent<'thinking', ThinkingContentData>; + +export type MarkdownContent = ChatBaseContent<'markdown', string>; + +export type TextContent = ChatBaseContent<'text', string>; + +export interface ThinkingContentData { + title?: string; + text: string; +} + +export interface ChatBaseContent { + type: T; + data: TData; +} + +export type ChatMessageStatus = 'pending' | 'streaming' | 'complete' | 'stop' | 'error'; + +export type ChatContentType = 'text' | 'markdown' | 'thinking' | 'attachment'; diff --git a/packages/tdesign-uniapp-chat/components/chat-sender/README.en-US.md b/packages/tdesign-uniapp-chat/components/chat-sender/README.en-US.md new file mode 100644 index 000000000..ef58a0ad7 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-sender/README.en-US.md @@ -0,0 +1,39 @@ +:: BASE_DOC :: + +## API + +### ChatSender Props + +name | type | default | description | required +-- | -- | -- | -- | -- +custom-style | Object | - | CSS(Cascading Style Sheets) | N +adjust-position | Boolean | false | \- | N +attachments-props | Object | - | Typescript: `AttachmentsProps`,[Attachments API Documents](./attachments?tab=api)。[see more ts definition](https://github.com/novlan1/tdesign-uniapp/blob/develop/packages/tdesign-uniapp-chat/chat-sender/type.ts) | N +auto-rise-with-keyboard | Boolean | false | \- | N +disabled | Boolean | false | \- | N +file-list | Array | [] | Typescript: `FileItem[]` | N +loading | Boolean | false | \- | N +placeholder | String | 请输入消息... | \- | N +render-presets | Array | [{name: 'upload', presets: ['uploadCamera', 'uploadImage', 'uploadAttachment'], status: ''},{ name: 'send', type: 'icon'}] | Typescript: `ChatActionButtons` `type ChatActionButtons = Array` `type ChatActionButton = UploadButton \| SendButton` `interface UploadButton { name: 'upload'; presets: string[]; status?: string; }` `interface SendButton { name: 'send'; type: 'icon' \| 'text';}`。[see more ts definition](https://github.com/novlan1/tdesign-uniapp/blob/develop/packages/tdesign-uniapp-chat/chat-sender/type.ts) | N +textarea-props | Boolean / Object | { autosize: { maxHeight: 264, minHeight: 48 } } | \- | N +value | String | - | input value | N +visible | Boolean | false | \- | N + +### ChatSender Events + +name | params | description +-- | -- | -- +blur | `(value:string, context: { e: FocusEvent })` | \- +change | `(value:string, context: { e: InputEvent \| MouseEvent \| KeyboardEvent })` | \- +file-add | \- | \- +file-change | `(file:FileItem)` | \- +file-click | `(file:FileItem)` | \- +file-delete | `(file:FileItem)` | \- +file-select | `(context: {files: FileList, name: UploadActionType})` | [see more ts definition](https://github.com/novlan1/tdesign-uniapp/blob/develop/packages/tdesign/chat-sender/type.ts)。
`type UploadActionType = 'uploadAttachment' \| 'uploadImage'`
+focus | `(value:string, context: { e: FocusEvent }) ` | \- +keyboardheightchange | `(context: {height: number, duration: number})` | \- +send | `(value:string, context: { e: MouseEvent \| KeyboardEvent })` | \- +stop | `(value:string, context: { e: MouseEvent })` | \- +update-value | `(value: boolean)` | \- +update-visible | `(value: boolean)` | \- +upload-click | \- | \- diff --git a/packages/tdesign-uniapp-chat/components/chat-sender/README.md b/packages/tdesign-uniapp-chat/components/chat-sender/README.md new file mode 100644 index 000000000..12e38d68f --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-sender/README.md @@ -0,0 +1,76 @@ +--- +title: ChatSender 对话输入 +description: 用于聊天对话的输入框,可以扩展模型、多模态等能力。 +spline: base +isComponent: true +--- + + +## 引入 + +可在 `main.ts` 或在需要使用的页面或组件中引入。 + +```js +import TChatSender from 'tdesign-uniapp-chat/chat-sender/chat-sender.vue'; +``` + +### 01 组件类型 + +#### 基础类型 + +{{ base }} + +#### 上传文件 + +支持选择附件及展示附件列表,受控进行文件数据管理,示例中模拟了文件上传流程 + +{{ attachments }} + +#### 内容引用 +输入框顶部区域 `header` ,输入框底部左侧区域 `footer-prefix` ,输入框底部操作区域 `suffix` + +{{ content-citation }} + +#### 文件引用 + +输入框顶部区域 `header` ,输入框底部左侧区域 `footer-prefix` ,输入框底部操作区域 `suffix` + +{{ file-citation }} + +## API + +### ChatSender Props + +名称 | 类型 | 默认值 | 描述 | 必传 +-- | -- | -- | -- | -- +custom-style | Object | - | 自定义样式 | N +adjust-position | Boolean | false | 默认键盘弹起不会把页面顶起来 | N +attachments-props | Object | - | 附件列表属性。TS 类型:`AttachmentsProps`,[Attachments API Documents](./attachments?tab=api)。[详细类型定义](https://github.com/novlan1/tdesign-uniapp/blob/develop/packages/tdesign-uniapp-chat/chat-sender/type.ts) | N +auto-rise-with-keyboard | Boolean | false | 键盘弹起时自动顶起来输入框 | N +disabled | Boolean | false | 是否禁用输入框 | N +file-list | Array | [] | 附件文件列表。TS 类型:`FileItem[]` | N +loading | Boolean | false | 发送按钮是否处于加载状态 | N +placeholder | String | 请输入消息... | 输入框默认文案 | N +render-presets | Array | [{name: 'upload', presets: ['uploadCamera', 'uploadImage', 'uploadAttachment'], status: ''},{ name: 'send', type: 'icon'}] | 预设发送区渲染配置,用于灵活配置发送区的上传入口和发送按钮,支持自定义类型、顺序、样式。TS 类型:`ChatActionButtons` `type ChatActionButtons = Array` `type ChatActionButton = UploadButton \| SendButton` `interface UploadButton { name: 'upload'; presets: string[]; status?: string; }` `interface SendButton { name: 'send'; type: 'icon' \| 'text';}`。[详细类型定义](https://github.com/novlan1/tdesign-uniapp/blob/develop/packages/tdesign-uniapp-chat/chat-sender/type.ts) | N +textarea-props | Boolean / Object | { autosize: { maxHeight: 264, minHeight: 48 } } | 透传给 Textarea 组件的属性,autosize数值单位为 rpx | N +value | String | - | 输入框的值 | N +visible | Boolean | false | 上传面板是否可见 | N + +### ChatSender Events + +名称 | 参数 | 描述 +-- | -- | -- +blur | `(value:string, context: { e: FocusEvent })` | 输入框聚焦时触发 +change | `(value:string, context: { e: InputEvent \| MouseEvent \| KeyboardEvent })` | 输入框值发生变化时触发 +file-add | \- | 添加附件时触发 +file-change | `(file:FileItem)` | 附件列表变化时触发 +file-click | `(file:FileItem)` | 点击附件时触发 +file-delete | `(file:FileItem)` | 删除附件时触发 +file-select | `(context: {files: FileList, name: UploadActionType})` | 选择文件(图片/微信文件)时触发。[详细类型定义](https://github.com/novlan1/tdesign-uniapp/blob/develop/packages/tdesign/chat-sender/type.ts)。
`type UploadActionType = 'uploadAttachment' \| 'uploadImage'`
+focus | `(value:string, context: { e: FocusEvent }) ` | 输入框聚焦时触发 +keyboardheightchange | `(context: {height: number, duration: number})` | 选择文件(图片/微信文件)时触发 +send | `(value:string, context: { e: MouseEvent \| KeyboardEvent })` | 点击消息发送的回调方法 +stop | `(value:string, context: { e: MouseEvent })` | 点击消息终止的回调方法 +update-value | `(value: boolean)` | 输入框值发生变化时触发 +update-visible | `(value: boolean)` | 上传面板可见性发生变化时触发 +upload-click | \- | 【实验】点击上传按钮时触发 diff --git a/packages/tdesign-uniapp-chat/components/chat-sender/_example/attachments/index.vue b/packages/tdesign-uniapp-chat/components/chat-sender/_example/attachments/index.vue new file mode 100644 index 000000000..00ac5395b --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-sender/_example/attachments/index.vue @@ -0,0 +1,425 @@ + + + + diff --git a/packages/tdesign-uniapp-chat/components/chat-sender/_example/base/index.vue b/packages/tdesign-uniapp-chat/components/chat-sender/_example/base/index.vue new file mode 100644 index 000000000..057484b86 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-sender/_example/base/index.vue @@ -0,0 +1,366 @@ + + + + diff --git a/packages/tdesign-uniapp-chat/components/chat-sender/_example/chat-sender.less b/packages/tdesign-uniapp-chat/components/chat-sender/_example/chat-sender.less new file mode 100644 index 000000000..5c121e907 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-sender/_example/chat-sender.less @@ -0,0 +1,17 @@ +:deep(.chat-sender-placeholder) { + --demo-chat-sender-placeholder: rgba(0, 0, 0, 0.1); +} + +@media (prefers-color-scheme: dark) { + :deep(.chat-sender-placeholder) { + --demo-chat-sender-placeholder: rgba(255, 255, 255, 0.1); + } +} + +.t-button { + margin-right: 32rpx; +} + +.t-button:last-child { + margin-right: 0; +} diff --git a/packages/tdesign-uniapp-chat/components/chat-sender/_example/chat-sender.vue b/packages/tdesign-uniapp-chat/components/chat-sender/_example/chat-sender.vue new file mode 100644 index 000000000..5232838e3 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-sender/_example/chat-sender.vue @@ -0,0 +1,55 @@ + + + + diff --git a/packages/tdesign-uniapp-chat/components/chat-sender/_example/content-citation/index.vue b/packages/tdesign-uniapp-chat/components/chat-sender/_example/content-citation/index.vue new file mode 100644 index 000000000..45964201f --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-sender/_example/content-citation/index.vue @@ -0,0 +1,430 @@ + + + + diff --git a/packages/tdesign-uniapp-chat/components/chat-sender/_example/file-citation/index.vue b/packages/tdesign-uniapp-chat/components/chat-sender/_example/file-citation/index.vue new file mode 100644 index 000000000..dfaf2861b --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-sender/_example/file-citation/index.vue @@ -0,0 +1,445 @@ + + + + diff --git a/packages/tdesign-uniapp-chat/components/chat-sender/_example/theme/index.vue b/packages/tdesign-uniapp-chat/components/chat-sender/_example/theme/index.vue new file mode 100644 index 000000000..b94c49872 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-sender/_example/theme/index.vue @@ -0,0 +1,112 @@ + + + + diff --git a/packages/tdesign-uniapp-chat/components/chat-sender/chat-sender.less b/packages/tdesign-uniapp-chat/components/chat-sender/chat-sender.less new file mode 100644 index 000000000..3907e0cd7 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-sender/chat-sender.less @@ -0,0 +1,284 @@ +@import 'tdesign-uniapp/common/style/base.less'; + +@chat-sender: ~'@{prefix}-chat-sender'; + +@chat-sender-border-radius: 32rpx; +@chat-sender-padding: 22rpx 0; +@chat-sender-margin: 24rpx 24rpx 80rpx 24rpx; +@chat-sender-border-width: 2rpx; +@chat-sender-border-color: @component-border; +@chat-sender-shadow: @shadow-3; +@chat-sender-margin-bottom-transition: margin-bottom 0.3s ease; + +@chat-sender-header-padding-bottom: 16rpx; +@chat-sender-attachments-padding: 0 24rpx; +@chat-sender-attachments-gap: 20rpx; +@chat-sender-attachments-item-size: 128rpx; +@chat-sender-attachments-item-radius: 8rpx; + +@chat-sender-textarea-gap: 10rpx; +@chat-sender-textarea-padding: 0 24rpx; +@chat-sender-textarea-hook-padding-bottom: 16rpx; +@chat-sender-textarea-hook-max-height: 280rpx; + +@chat-sender-input-max-height: 264rpx; +@chat-sender-input-font-size: @font-size-m; +@chat-sender-input-line-height: 48rpx; +@chat-sender-input-color: @text-color-primary; +@chat-sender-input-caret-color: @brand-color; +@chat-sender-input-font-family: 'PingFang SC', 'Helvetica Neue', Arial, sans-serif; +@chat-sender-input-letter-spacing: 5%; + +@chat-sender-placeholder-color: @text-color-disabled; +@chat-sender-placeholder-transition: opacity 0.25s linear; + +@chat-sender-icon-size: 32rpx; +@chat-sender-footer-z-index: 2; +@chat-sender-send-btn-size: 64rpx; +@chat-sender-send-btn-margin-left: 16rpx; +@chat-sender-send-btn-bg-color: @brand-color; +@chat-sender-send-btn-bg-color-disabled: @bg-color-secondarycomponent; +@chat-sender-send-btn-text-color: @brand-color; +@chat-sender-send-btn-text-color-disabled: @text-color-disabled; +@chat-sender-send-btn-transition: all 0.3s ease; + +@chat-sender-upload-margin-top: -40rpx; +@chat-sender-upload-margin-bottom: 24rpx; +@chat-sender-upload-item-margin-right: 24rpx; +@chat-sender-upload-item-icon-size: 96rpx; +@chat-sender-upload-item-icon-radius: 12rpx; +@chat-sender-upload-item-icon-bg: @bg-color-secondarycontainer; +@chat-sender-upload-item-icon-margin-bottom: 16rpx; +@chat-sender-upload-item-text-font-size: 28rpx; +@chat-sender-upload-item-text-line-height: 44rpx; + +@chat-sender-btn-func-size: 58rpx; +@chat-sender-btn-func-bg: @bg-color-container; +@chat-sender-btn-func-border: 2rpx solid @component-border; +@chat-sender-btn-func-disabled-bg: #c9ccd2; +@chat-sender-btn-func-disabled-opacity: 0.24; + +@chat-sender-menu-top: -24rpx; +@chat-sender-menu-padding: 0 24rpx; +@chat-sender-menu-radius: 16rpx; +@chat-sender-menu-bg: #ffffff; +@chat-sender-menu-shadow: 0 16rpx 16rpx 0 rgba(0, 119, 254, 0.08); +@chat-sender-menu-item-width: 172rpx; +@chat-sender-menu-item-padding: 24rpx 8rpx; +@chat-sender-menu-item-border: 1rpx solid #ebedf0; +@chat-sender-menu-item-icon-margin-right: 24rpx; +@chat-sender-menu-item-text-color: #535d6d; +@chat-sender-menu-item-text-font-size: 28rpx; +@chat-sender-menu-item-text-font-weight: 500; +@chat-sender-menu-item-text-line-height: 36rpx; +@chat-sender-menu-item-text-letter-spacing: 1rpx; + +@chat-sender-bg-color: var(--td-bg-color-specialcomponent, #fff); + +.@{chat-sender} { + position: relative; + border-radius: @chat-sender-border-radius; + padding: @chat-sender-padding; + border: @chat-sender-border-width solid @chat-sender-border-color; + box-sizing: border-box; + margin: @chat-sender-margin; + box-shadow: @chat-sender-shadow; + transition: @chat-sender-margin-bottom-transition; + background-color: @chat-sender-bg-color; + + // 头部区域 + &__header { + padding-bottom: @chat-sender-header-padding-bottom; + width: 100%; + overflow: hidden; + + &:empty { + display: none; + } + } + + // 附件区域 + &__attachments { + padding: @chat-sender-attachments-padding; + } + + // 文本输入区域 + &__actions { + position: relative; + display: flex; + flex-direction: column; + // gap: @chat-sender-textarea-gap; + padding: @chat-sender-textarea-padding; + } + + // 输入框容器 + &__textarea { + position: relative; + flex: 1; + padding-bottom: @chat-sender-textarea-hook-padding-bottom; + max-height: @chat-sender-textarea-hook-max-height; + + // 输入框 + &--control { + max-height: @chat-sender-input-max-height; + display: block; + width: 100%; + color: @chat-sender-input-color; + font-size: @chat-sender-input-font-size; + line-height: @chat-sender-input-line-height; + word-break: break-word; + caret-color: @chat-sender-input-caret-color; + font-family: @chat-sender-input-font-family; + font-weight: 400; + letter-spacing: @chat-sender-input-letter-spacing; + padding-bottom: @chat-sender-textarea-hook-padding-bottom; + } + + // 占位符 + &--placeholder { + color: @chat-sender-placeholder-color; + font-size: @chat-sender-input-font-size; + position: absolute; + left: 0; + top: 0; + transform: translateY(1%); + z-index: 1; + pointer-events: none; + opacity: 1; + transition: @chat-sender-placeholder-transition; + + &.hide { + opacity: 0; + } + } + } + + // 底部区域 + &__footer { + display: flex; + justify-content: space-between; + position: relative; + z-index: @chat-sender-footer-z-index; + } + + // 上传区域 + &__upload { + display: flex; + margin-top: @chat-sender-upload-margin-top; + margin-bottom: @chat-sender-upload-margin-bottom; + align-items: center; + justify-content: flex-start; + transition: @chat-sender-send-btn-transition; + + // 上传项 + &-item { + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + border-radius: @chat-sender-attachments-item-radius; + flex-shrink: 0; + // margin-right: @chat-sender-upload-item-margin-right; + flex-grow: 1; + color: @text-color-primary; + + // 上传项图标 + &__icon { + width: @chat-sender-upload-item-icon-size; + height: @chat-sender-upload-item-icon-size; + border-radius: @chat-sender-upload-item-icon-radius; + margin-bottom: @chat-sender-upload-item-icon-margin-bottom; + background-color: @chat-sender-upload-item-icon-bg; + display: flex; + align-items: center; + justify-content: center; + } + + // 上传项文本 + &__text { + font-size: @chat-sender-upload-item-text-font-size; + line-height: @chat-sender-upload-item-text-line-height; + } + } + } + + // 按钮区域 + &__sendbtn { + display: flex; + align-items: center; + justify-content: center; + + // 发送按钮默认状态 + &--default { + display: flex; + align-items: center; + justify-content: center; + + .plus-btn { + color: @text-color-primary; + + .btn-icon { + display: block; + } + + &.disabled { + pointer-events: none; + opacity: @chat-sender-btn-func-disabled-opacity; + + .btn-func:after { + background: @chat-sender-btn-func-disabled-bg; + } + } + } + + .send-btn-text { + color: @chat-sender-send-btn-text-color; + + &.disabled { + color: @chat-sender-send-btn-text-color-disabled; + } + } + + .send-btn-icon { + color: @bg-color-container; + width: @chat-sender-send-btn-size; + height: @chat-sender-send-btn-size; + margin-left: @chat-sender-send-btn-margin-left; + border-radius: 999rpx; + background-color: @chat-sender-send-btn-bg-color; + display: flex; + align-items: center; + justify-content: center; + transform: rotate(-90deg); + transition: @chat-sender-send-btn-transition; + + &.active { + color: @text-color-anti; + } + + &.disabled { + background-color: @chat-sender-send-btn-bg-color-disabled; + color: @bg-color-container; + } + + &.stop { + // 停止按钮样式 + } + } + } + } + + // 功能按钮 + .btn-func { + width: @chat-sender-btn-func-size; + height: @chat-sender-btn-func-size; + position: relative; + z-index: @chat-sender-footer-z-index; + background-color: @chat-sender-btn-func-bg; + border-radius: 999rpx; + border: @chat-sender-btn-func-border; + display: flex; + justify-content: center; + align-items: center; + } +} diff --git a/packages/tdesign-uniapp-chat/components/chat-sender/chat-sender.vue b/packages/tdesign-uniapp-chat/components/chat-sender/chat-sender.vue new file mode 100644 index 000000000..0dadd3e15 --- /dev/null +++ b/packages/tdesign-uniapp-chat/components/chat-sender/chat-sender.vue @@ -0,0 +1,464 @@ +