cy-element-ui 1.1.6 → 1.1.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (39) hide show
  1. package/README.md +54 -0
  2. package/lib/index.js +1 -1
  3. package/lib/theme-chalk/index.css +1 -1
  4. package/lib/theme-chalk/subTitle.css +0 -0
  5. package/lib/theme-chalk/tabDialog.css +0 -0
  6. package/lib/theme-chalk/treeSelect.css +0 -1
  7. package/lib/theme-cy/base.css +1 -0
  8. package/lib/theme-cy/element.css +1 -0
  9. package/lib/theme-cy/index.css +1 -0
  10. package/lib/theme-cy/subTitle.css +1 -0
  11. package/lib/theme-cy/tabDialog.css +1 -0
  12. package/lib/theme-cy/treeSelect.css +1 -0
  13. package/package.json +2 -2
  14. package/packages/subTitle/index.js +7 -0
  15. package/packages/subTitle/src/main.vue +36 -0
  16. package/packages/tabDialog/index.js +23 -0
  17. package/packages/tabDialog/src/dialog/drag.js +63 -0
  18. package/packages/tabDialog/src/dialog/dragHeight.js +34 -0
  19. package/packages/tabDialog/src/dialog/dragWidth.js +30 -0
  20. package/packages/tabDialog/src/main.vue +277 -0
  21. package/packages/theme-chalk/src/index.scss +2 -0
  22. package/packages/theme-chalk/src/subTitle.scss +0 -0
  23. package/packages/theme-chalk/src/tabDialog.scss +0 -0
  24. package/packages/theme-chalk/src/treeSelect.scss +0 -98
  25. package/packages/theme-cy/gulpfile.js +19 -0
  26. package/packages/theme-cy/lib/base.css +1 -0
  27. package/packages/theme-cy/lib/element.css +1 -0
  28. package/packages/theme-cy/lib/index.css +1 -0
  29. package/packages/theme-cy/lib/subTitle.css +1 -0
  30. package/packages/theme-cy/lib/tabDialog.css +1 -0
  31. package/packages/theme-cy/lib/treeSelect.css +1 -0
  32. package/packages/theme-cy/package.json +9 -0
  33. package/packages/theme-cy/src/base.scss +3 -0
  34. package/packages/theme-cy/src/element.scss +12 -0
  35. package/packages/theme-cy/src/index.scss +4 -0
  36. package/packages/theme-cy/src/subTitle.scss +26 -0
  37. package/packages/theme-cy/src/tabDialog.scss +43 -0
  38. package/packages/theme-cy/src/treeSelect.scss +131 -0
  39. package/src/index.js +15 -4
File without changes
File without changes
@@ -1 +0,0 @@
1
- .fade-in-linear-enter-active,.fade-in-linear-leave-active{-webkit-transition:opacity .2s linear;transition:opacity .2s linear}.fade-in-linear-enter,.fade-in-linear-leave,.fade-in-linear-leave-active{opacity:0}.el-fade-in-linear-enter-active,.el-fade-in-linear-leave-active{-webkit-transition:opacity .2s linear;transition:opacity .2s linear}.el-fade-in-linear-enter,.el-fade-in-linear-leave,.el-fade-in-linear-leave-active{opacity:0}.el-fade-in-enter-active,.el-fade-in-leave-active{-webkit-transition:all .3s cubic-bezier(.55,0,.1,1);transition:all .3s cubic-bezier(.55,0,.1,1)}.el-fade-in-enter,.el-fade-in-leave-active{opacity:0}.el-zoom-in-center-enter-active,.el-zoom-in-center-leave-active{-webkit-transition:all .3s cubic-bezier(.55,0,.1,1);transition:all .3s cubic-bezier(.55,0,.1,1)}.el-zoom-in-center-enter,.el-zoom-in-center-leave-active{opacity:0;-webkit-transform:scaleX(0);transform:scaleX(0)}.el-zoom-in-top-enter-active,.el-zoom-in-top-leave-active{opacity:1;-webkit-transform:scaleY(1);transform:scaleY(1);-webkit-transition:opacity .3s cubic-bezier(.23,1,.32,1),-webkit-transform .3s cubic-bezier(.23,1,.32,1);transition:opacity .3s cubic-bezier(.23,1,.32,1),-webkit-transform .3s cubic-bezier(.23,1,.32,1);transition:transform .3s cubic-bezier(.23,1,.32,1),opacity .3s cubic-bezier(.23,1,.32,1);transition:transform .3s cubic-bezier(.23,1,.32,1),opacity .3s cubic-bezier(.23,1,.32,1),-webkit-transform .3s cubic-bezier(.23,1,.32,1);-webkit-transform-origin:center top;transform-origin:center top}.el-zoom-in-top-enter,.el-zoom-in-top-leave-active{opacity:0;-webkit-transform:scaleY(0);transform:scaleY(0)}.el-zoom-in-bottom-enter-active,.el-zoom-in-bottom-leave-active{opacity:1;-webkit-transform:scaleY(1);transform:scaleY(1);-webkit-transition:opacity .3s cubic-bezier(.23,1,.32,1),-webkit-transform .3s cubic-bezier(.23,1,.32,1);transition:opacity .3s cubic-bezier(.23,1,.32,1),-webkit-transform .3s cubic-bezier(.23,1,.32,1);transition:transform .3s cubic-bezier(.23,1,.32,1),opacity .3s cubic-bezier(.23,1,.32,1);transition:transform .3s cubic-bezier(.23,1,.32,1),opacity .3s cubic-bezier(.23,1,.32,1),-webkit-transform .3s cubic-bezier(.23,1,.32,1);-webkit-transform-origin:center bottom;transform-origin:center bottom}.el-zoom-in-bottom-enter,.el-zoom-in-bottom-leave-active{opacity:0;-webkit-transform:scaleY(0);transform:scaleY(0)}.el-zoom-in-left-enter-active,.el-zoom-in-left-leave-active{opacity:1;-webkit-transform:scale(1,1);transform:scale(1,1);-webkit-transition:opacity .3s cubic-bezier(.23,1,.32,1),-webkit-transform .3s cubic-bezier(.23,1,.32,1);transition:opacity .3s cubic-bezier(.23,1,.32,1),-webkit-transform .3s cubic-bezier(.23,1,.32,1);transition:transform .3s cubic-bezier(.23,1,.32,1),opacity .3s cubic-bezier(.23,1,.32,1);transition:transform .3s cubic-bezier(.23,1,.32,1),opacity .3s cubic-bezier(.23,1,.32,1),-webkit-transform .3s cubic-bezier(.23,1,.32,1);-webkit-transform-origin:top left;transform-origin:top left}.el-zoom-in-left-enter,.el-zoom-in-left-leave-active{opacity:0;-webkit-transform:scale(.45,.45);transform:scale(.45,.45)}.collapse-transition{-webkit-transition:.3s height ease-in-out,.3s padding-top ease-in-out,.3s padding-bottom ease-in-out;transition:.3s height ease-in-out,.3s padding-top ease-in-out,.3s padding-bottom ease-in-out}.horizontal-collapse-transition{-webkit-transition:.3s width ease-in-out,.3s padding-left ease-in-out,.3s padding-right ease-in-out;transition:.3s width ease-in-out,.3s padding-left ease-in-out,.3s padding-right ease-in-out}.el-list-enter-active,.el-list-leave-active{-webkit-transition:all 1s;transition:all 1s}.el-list-enter,.el-list-leave-active{opacity:0;-webkit-transform:translateY(-30px);transform:translateY(-30px)}.el-opacity-transition{-webkit-transition:opacity .3s cubic-bezier(.55,0,.1,1);transition:opacity .3s cubic-bezier(.55,0,.1,1)}@font-face{font-family:element-icons;src:url(fonts/element-icons.woff) format("woff"),url(fonts/element-icons.ttf) format("truetype");font-weight:400;font-display:"auto";font-style:normal}[class*=" el-icon-"],[class^=el-icon-]{font-family:element-icons!important;speak:none;font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;vertical-align:baseline;display:inline-block;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.el-icon-ice-cream-round:before{content:"\e6a0"}.el-icon-ice-cream-square:before{content:"\e6a3"}.el-icon-lollipop:before{content:"\e6a4"}.el-icon-potato-strips:before{content:"\e6a5"}.el-icon-milk-tea:before{content:"\e6a6"}.el-icon-ice-drink:before{content:"\e6a7"}.el-icon-ice-tea:before{content:"\e6a9"}.el-icon-coffee:before{content:"\e6aa"}.el-icon-orange:before{content:"\e6ab"}.el-icon-pear:before{content:"\e6ac"}.el-icon-apple:before{content:"\e6ad"}.el-icon-cherry:before{content:"\e6ae"}.el-icon-watermelon:before{content:"\e6af"}.el-icon-grape:before{content:"\e6b0"}.el-icon-refrigerator:before{content:"\e6b1"}.el-icon-goblet-square-full:before{content:"\e6b2"}.el-icon-goblet-square:before{content:"\e6b3"}.el-icon-goblet-full:before{content:"\e6b4"}.el-icon-goblet:before{content:"\e6b5"}.el-icon-cold-drink:before{content:"\e6b6"}.el-icon-coffee-cup:before{content:"\e6b8"}.el-icon-water-cup:before{content:"\e6b9"}.el-icon-hot-water:before{content:"\e6ba"}.el-icon-ice-cream:before{content:"\e6bb"}.el-icon-dessert:before{content:"\e6bc"}.el-icon-sugar:before{content:"\e6bd"}.el-icon-tableware:before{content:"\e6be"}.el-icon-burger:before{content:"\e6bf"}.el-icon-knife-fork:before{content:"\e6c1"}.el-icon-fork-spoon:before{content:"\e6c2"}.el-icon-chicken:before{content:"\e6c3"}.el-icon-food:before{content:"\e6c4"}.el-icon-dish-1:before{content:"\e6c5"}.el-icon-dish:before{content:"\e6c6"}.el-icon-moon-night:before{content:"\e6ee"}.el-icon-moon:before{content:"\e6f0"}.el-icon-cloudy-and-sunny:before{content:"\e6f1"}.el-icon-partly-cloudy:before{content:"\e6f2"}.el-icon-cloudy:before{content:"\e6f3"}.el-icon-sunny:before{content:"\e6f6"}.el-icon-sunset:before{content:"\e6f7"}.el-icon-sunrise-1:before{content:"\e6f8"}.el-icon-sunrise:before{content:"\e6f9"}.el-icon-heavy-rain:before{content:"\e6fa"}.el-icon-lightning:before{content:"\e6fb"}.el-icon-light-rain:before{content:"\e6fc"}.el-icon-wind-power:before{content:"\e6fd"}.el-icon-baseball:before{content:"\e712"}.el-icon-soccer:before{content:"\e713"}.el-icon-football:before{content:"\e715"}.el-icon-basketball:before{content:"\e716"}.el-icon-ship:before{content:"\e73f"}.el-icon-truck:before{content:"\e740"}.el-icon-bicycle:before{content:"\e741"}.el-icon-mobile-phone:before{content:"\e6d3"}.el-icon-service:before{content:"\e6d4"}.el-icon-key:before{content:"\e6e2"}.el-icon-unlock:before{content:"\e6e4"}.el-icon-lock:before{content:"\e6e5"}.el-icon-watch:before{content:"\e6fe"}.el-icon-watch-1:before{content:"\e6ff"}.el-icon-timer:before{content:"\e702"}.el-icon-alarm-clock:before{content:"\e703"}.el-icon-map-location:before{content:"\e704"}.el-icon-delete-location:before{content:"\e705"}.el-icon-add-location:before{content:"\e706"}.el-icon-location-information:before{content:"\e707"}.el-icon-location-outline:before{content:"\e708"}.el-icon-location:before{content:"\e79e"}.el-icon-place:before{content:"\e709"}.el-icon-discover:before{content:"\e70a"}.el-icon-first-aid-kit:before{content:"\e70b"}.el-icon-trophy-1:before{content:"\e70c"}.el-icon-trophy:before{content:"\e70d"}.el-icon-medal:before{content:"\e70e"}.el-icon-medal-1:before{content:"\e70f"}.el-icon-stopwatch:before{content:"\e710"}.el-icon-mic:before{content:"\e711"}.el-icon-copy-document:before{content:"\e718"}.el-icon-full-screen:before{content:"\e719"}.el-icon-switch-button:before{content:"\e71b"}.el-icon-aim:before{content:"\e71c"}.el-icon-crop:before{content:"\e71d"}.el-icon-odometer:before{content:"\e71e"}.el-icon-time:before{content:"\e71f"}.el-icon-bangzhu:before{content:"\e724"}.el-icon-close-notification:before{content:"\e726"}.el-icon-microphone:before{content:"\e727"}.el-icon-turn-off-microphone:before{content:"\e728"}.el-icon-position:before{content:"\e729"}.el-icon-postcard:before{content:"\e72a"}.el-icon-message:before{content:"\e72b"}.el-icon-chat-line-square:before{content:"\e72d"}.el-icon-chat-dot-square:before{content:"\e72e"}.el-icon-chat-dot-round:before{content:"\e72f"}.el-icon-chat-square:before{content:"\e730"}.el-icon-chat-line-round:before{content:"\e731"}.el-icon-chat-round:before{content:"\e732"}.el-icon-set-up:before{content:"\e733"}.el-icon-turn-off:before{content:"\e734"}.el-icon-open:before{content:"\e735"}.el-icon-connection:before{content:"\e736"}.el-icon-link:before{content:"\e737"}.el-icon-cpu:before{content:"\e738"}.el-icon-thumb:before{content:"\e739"}.el-icon-female:before{content:"\e73a"}.el-icon-male:before{content:"\e73b"}.el-icon-guide:before{content:"\e73c"}.el-icon-news:before{content:"\e73e"}.el-icon-price-tag:before{content:"\e744"}.el-icon-discount:before{content:"\e745"}.el-icon-wallet:before{content:"\e747"}.el-icon-coin:before{content:"\e748"}.el-icon-money:before{content:"\e749"}.el-icon-bank-card:before{content:"\e74a"}.el-icon-box:before{content:"\e74b"}.el-icon-present:before{content:"\e74c"}.el-icon-sell:before{content:"\e6d5"}.el-icon-sold-out:before{content:"\e6d6"}.el-icon-shopping-bag-2:before{content:"\e74d"}.el-icon-shopping-bag-1:before{content:"\e74e"}.el-icon-shopping-cart-2:before{content:"\e74f"}.el-icon-shopping-cart-1:before{content:"\e750"}.el-icon-shopping-cart-full:before{content:"\e751"}.el-icon-smoking:before{content:"\e752"}.el-icon-no-smoking:before{content:"\e753"}.el-icon-house:before{content:"\e754"}.el-icon-table-lamp:before{content:"\e755"}.el-icon-school:before{content:"\e756"}.el-icon-office-building:before{content:"\e757"}.el-icon-toilet-paper:before{content:"\e758"}.el-icon-notebook-2:before{content:"\e759"}.el-icon-notebook-1:before{content:"\e75a"}.el-icon-files:before{content:"\e75b"}.el-icon-collection:before{content:"\e75c"}.el-icon-receiving:before{content:"\e75d"}.el-icon-suitcase-1:before{content:"\e760"}.el-icon-suitcase:before{content:"\e761"}.el-icon-film:before{content:"\e763"}.el-icon-collection-tag:before{content:"\e765"}.el-icon-data-analysis:before{content:"\e766"}.el-icon-pie-chart:before{content:"\e767"}.el-icon-data-board:before{content:"\e768"}.el-icon-data-line:before{content:"\e76d"}.el-icon-reading:before{content:"\e769"}.el-icon-magic-stick:before{content:"\e76a"}.el-icon-coordinate:before{content:"\e76b"}.el-icon-mouse:before{content:"\e76c"}.el-icon-brush:before{content:"\e76e"}.el-icon-headset:before{content:"\e76f"}.el-icon-umbrella:before{content:"\e770"}.el-icon-scissors:before{content:"\e771"}.el-icon-mobile:before{content:"\e773"}.el-icon-attract:before{content:"\e774"}.el-icon-monitor:before{content:"\e775"}.el-icon-search:before{content:"\e778"}.el-icon-takeaway-box:before{content:"\e77a"}.el-icon-paperclip:before{content:"\e77d"}.el-icon-printer:before{content:"\e77e"}.el-icon-document-add:before{content:"\e782"}.el-icon-document:before{content:"\e785"}.el-icon-document-checked:before{content:"\e786"}.el-icon-document-copy:before{content:"\e787"}.el-icon-document-delete:before{content:"\e788"}.el-icon-document-remove:before{content:"\e789"}.el-icon-tickets:before{content:"\e78b"}.el-icon-folder-checked:before{content:"\e77f"}.el-icon-folder-delete:before{content:"\e780"}.el-icon-folder-remove:before{content:"\e781"}.el-icon-folder-add:before{content:"\e783"}.el-icon-folder-opened:before{content:"\e784"}.el-icon-folder:before{content:"\e78a"}.el-icon-edit-outline:before{content:"\e764"}.el-icon-edit:before{content:"\e78c"}.el-icon-date:before{content:"\e78e"}.el-icon-c-scale-to-original:before{content:"\e7c6"}.el-icon-view:before{content:"\e6ce"}.el-icon-loading:before{content:"\e6cf"}.el-icon-rank:before{content:"\e6d1"}.el-icon-sort-down:before{content:"\e7c4"}.el-icon-sort-up:before{content:"\e7c5"}.el-icon-sort:before{content:"\e6d2"}.el-icon-finished:before{content:"\e6cd"}.el-icon-refresh-left:before{content:"\e6c7"}.el-icon-refresh-right:before{content:"\e6c8"}.el-icon-refresh:before{content:"\e6d0"}.el-icon-video-play:before{content:"\e7c0"}.el-icon-video-pause:before{content:"\e7c1"}.el-icon-d-arrow-right:before{content:"\e6dc"}.el-icon-d-arrow-left:before{content:"\e6dd"}.el-icon-arrow-up:before{content:"\e6e1"}.el-icon-arrow-down:before{content:"\e6df"}.el-icon-arrow-right:before{content:"\e6e0"}.el-icon-arrow-left:before{content:"\e6de"}.el-icon-top-right:before{content:"\e6e7"}.el-icon-top-left:before{content:"\e6e8"}.el-icon-top:before{content:"\e6e6"}.el-icon-bottom:before{content:"\e6eb"}.el-icon-right:before{content:"\e6e9"}.el-icon-back:before{content:"\e6ea"}.el-icon-bottom-right:before{content:"\e6ec"}.el-icon-bottom-left:before{content:"\e6ed"}.el-icon-caret-top:before{content:"\e78f"}.el-icon-caret-bottom:before{content:"\e790"}.el-icon-caret-right:before{content:"\e791"}.el-icon-caret-left:before{content:"\e792"}.el-icon-d-caret:before{content:"\e79a"}.el-icon-share:before{content:"\e793"}.el-icon-menu:before{content:"\e798"}.el-icon-s-grid:before{content:"\e7a6"}.el-icon-s-check:before{content:"\e7a7"}.el-icon-s-data:before{content:"\e7a8"}.el-icon-s-opportunity:before{content:"\e7aa"}.el-icon-s-custom:before{content:"\e7ab"}.el-icon-s-claim:before{content:"\e7ad"}.el-icon-s-finance:before{content:"\e7ae"}.el-icon-s-comment:before{content:"\e7af"}.el-icon-s-flag:before{content:"\e7b0"}.el-icon-s-marketing:before{content:"\e7b1"}.el-icon-s-shop:before{content:"\e7b4"}.el-icon-s-open:before{content:"\e7b5"}.el-icon-s-management:before{content:"\e7b6"}.el-icon-s-ticket:before{content:"\e7b7"}.el-icon-s-release:before{content:"\e7b8"}.el-icon-s-home:before{content:"\e7b9"}.el-icon-s-promotion:before{content:"\e7ba"}.el-icon-s-operation:before{content:"\e7bb"}.el-icon-s-unfold:before{content:"\e7bc"}.el-icon-s-fold:before{content:"\e7a9"}.el-icon-s-platform:before{content:"\e7bd"}.el-icon-s-order:before{content:"\e7be"}.el-icon-s-cooperation:before{content:"\e7bf"}.el-icon-bell:before{content:"\e725"}.el-icon-message-solid:before{content:"\e799"}.el-icon-video-camera:before{content:"\e772"}.el-icon-video-camera-solid:before{content:"\e796"}.el-icon-camera:before{content:"\e779"}.el-icon-camera-solid:before{content:"\e79b"}.el-icon-download:before{content:"\e77c"}.el-icon-upload2:before{content:"\e77b"}.el-icon-upload:before{content:"\e7c3"}.el-icon-picture-outline-round:before{content:"\e75f"}.el-icon-picture-outline:before{content:"\e75e"}.el-icon-picture:before{content:"\e79f"}.el-icon-close:before{content:"\e6db"}.el-icon-check:before{content:"\e6da"}.el-icon-plus:before{content:"\e6d9"}.el-icon-minus:before{content:"\e6d8"}.el-icon-help:before{content:"\e73d"}.el-icon-s-help:before{content:"\e7b3"}.el-icon-circle-close:before{content:"\e78d"}.el-icon-circle-check:before{content:"\e720"}.el-icon-circle-plus-outline:before{content:"\e723"}.el-icon-remove-outline:before{content:"\e722"}.el-icon-zoom-out:before{content:"\e776"}.el-icon-zoom-in:before{content:"\e777"}.el-icon-error:before{content:"\e79d"}.el-icon-success:before{content:"\e79c"}.el-icon-circle-plus:before{content:"\e7a0"}.el-icon-remove:before{content:"\e7a2"}.el-icon-info:before{content:"\e7a1"}.el-icon-question:before{content:"\e7a4"}.el-icon-warning-outline:before{content:"\e6c9"}.el-icon-warning:before{content:"\e7a3"}.el-icon-goods:before{content:"\e7c2"}.el-icon-s-goods:before{content:"\e7b2"}.el-icon-star-off:before{content:"\e717"}.el-icon-star-on:before{content:"\e797"}.el-icon-more-outline:before{content:"\e6cc"}.el-icon-more:before{content:"\e794"}.el-icon-phone-outline:before{content:"\e6cb"}.el-icon-phone:before{content:"\e795"}.el-icon-user:before{content:"\e6e3"}.el-icon-user-solid:before{content:"\e7a5"}.el-icon-setting:before{content:"\e6ca"}.el-icon-s-tools:before{content:"\e7ac"}.el-icon-delete:before{content:"\e6d7"}.el-icon-delete-solid:before{content:"\e7c9"}.el-icon-eleme:before{content:"\e7c7"}.el-icon-platform-eleme:before{content:"\e7ca"}.el-icon-loading{-webkit-animation:rotating 2s linear infinite;animation:rotating 2s linear infinite}.el-icon--right{margin-left:5px}.el-icon--left{margin-right:5px}@-webkit-keyframes rotating{0%{-webkit-transform:rotateZ(0);transform:rotateZ(0)}100%{-webkit-transform:rotateZ(360deg);transform:rotateZ(360deg)}}@keyframes rotating{0%{-webkit-transform:rotateZ(0);transform:rotateZ(0)}100%{-webkit-transform:rotateZ(360deg);transform:rotateZ(360deg)}}.cy-tree-select .el-popover__reference-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex}.cy-tree-select-select{width:217px;height:36px;line-height:34px;border:1px solid #DCDFE6;border-radius:4px;padding:0 29px 0 15px;cursor:pointer;overflow:hidden;position:relative;-webkit-transition:all .3s;transition:all .3s}.cy-tree-select-select .cy-tree-select-select-v{width:100%;color:#606266;font-size:14px;white-space:nowrap;overflow:auto}.cy-tree-select-select .cy-tree-select-select-v-placeholder{color:#c0c4cc}.cy-tree-select-select .cy-tree-select-select-v-icon{color:#C0C4CC;position:absolute;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);right:9px}.cy-tree-select-select .cy-tree-select-select-v-icon .cy-tree-select-select-v-arrow{-webkit-transform:rotateZ(0);transform:rotateZ(0);-webkit-transition:all .3s;transition:all .3s}.cy-tree-select-select .cy-tree-select-select-v-icon .cy-tree-select-select-v-arrow-show{-webkit-transform:rotateZ(-180deg);transform:rotateZ(-180deg)}.cy-tree-select-select.small{height:32px;line-height:30px}.cy-tree-select-select.small .cy-tree-select-select-v{font-size:13px}.cy-tree-select-select.mini{height:28px;line-height:26px}.cy-tree-select-select.mini .cy-tree-select-select-v{font-size:12px}.cy-tree-select-select:hover{border-color:#C0C4CC}.cy-tree-select-select-con-s{padding-bottom:8px}.cy-tree-select-select-con-t{padding-bottom:5px;margin-bottom:5px;border-bottom:1px solid #DCDFE6}.cy-tree-select-select-con-c{max-height:300px;overflow:auto}.el-form-item--medium .el-form-item--content .cy-tree-select{width:100%;height:36px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.el-form-item--medium .el-form-item--content .cy-tree-select>span{display:inline-block;width:100%}
@@ -0,0 +1 @@
1
+ *,::after,::before{-webkit-box-sizing:border-box;box-sizing:border-box}
@@ -0,0 +1 @@
1
+ @charset "UTF-8";.el-checkbox__input.is-disabled+span.el-checkbox__label,.el-input.is-disabled .el-input__inner,.el-radio__input.is-disabled+span.el-radio__label,.el-range-editor.is-disabled input,.el-textarea.is-disabled .el-textarea__inner{color:#888}.el-checkbox__input.is-disabled.is-checked .el-checkbox__inner::after,.el-radio__input.is-disabled.is-checked .el-radio__inner::after{border-color:#888}
@@ -0,0 +1 @@
1
+ .cy-tree-select .el-popover__reference-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex}.cy-tree-select-select{width:100%;height:40px;line-height:38px;border:1px solid #DCDFE6;border-radius:4px;padding:0 25px 0 15px;cursor:pointer;overflow:hidden;position:relative;-webkit-transition:all .3s;transition:all .3s;-webkit-box-sizing:border-box;box-sizing:border-box}.cy-tree-select-select .cy-tree-select-select-v{width:100%;color:#606266;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cy-tree-select-select .cy-tree-select-select-v-placeholder{color:#c0c4cc}.cy-tree-select-select .cy-tree-select-select-v-icon{color:#C0C4CC;position:absolute;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);right:10px}.cy-tree-select-select .cy-tree-select-select-v-icon .cy-tree-select-select-v-arrow{-webkit-transform:rotateZ(0);transform:rotateZ(0);-webkit-transition:all .3s;transition:all .3s}.cy-tree-select-select .cy-tree-select-select-v-icon .cy-tree-select-select-v-arrow-show{-webkit-transform:rotateZ(-180deg);transform:rotateZ(-180deg)}.cy-tree-select-select.small{height:32px;line-height:30px;padding:0 25px 0 10px}.cy-tree-select-select.small .cy-tree-select-select-v{font-size:13px}.cy-tree-select-select.mini{height:28px;line-height:26px;padding:0 25px 0 10px}.cy-tree-select-select.mini .cy-tree-select-select-v{font-size:12px}.cy-tree-select-select:hover{border-color:#C0C4CC}.cy-tree-select-select:focus{outline:0;border-color:#409EFF}.cy-tree-select-select-con-s{padding-bottom:8px}.cy-tree-select-select-con-t{padding-bottom:5px;margin-bottom:5px;border-bottom:1px solid #DCDFE6}.cy-tree-select-select-con-c{max-height:300px;overflow:auto}.el-form-item--medium .el-form-item__content .cy-tree-select{width:100%;height:40px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.el-form-item--medium .el-form-item__content .cy-tree-select>span{display:inline-block;width:100%}.el-form-item--small .el-form-item__content .cy-tree-select{width:100%;height:32px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.el-form-item--small .el-form-item__content .cy-tree-select>span{display:inline-block;width:100%}.el-form-item--mini .el-form-item__content .cy-tree-select{width:100%;height:28px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.el-form-item--mini .el-form-item__content .cy-tree-select>span{display:inline-block;width:100%}.cy-tab-dialog{line-height:0}.cy-tab-dialog-modal{position:absolute;top:0;bottom:0;left:0;right:0;opacity:.5;background:#000}.cy-tab-dialog .el-dialog__wrapper{position:absolute!important;line-height:18px}.cy-tab-dialog .el-dialog__wrapper .el-dialog{-webkit-box-shadow:0 2px 4px rgba(0,0,0,.12),0 0 6px rgba(0,0,0,.4);box-shadow:0 2px 4px rgba(0,0,0,.12),0 0 6px rgba(0,0,0,.4);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.cy-tab-dialog .el-dialog__wrapper .el-dialog .el-dialog__header{-ms-flex-negative:0;flex-shrink:0}.cy-tab-dialog .el-dialog__wrapper .el-dialog .el-dialog__body{height:100%}.cy-tab-dialog.cy-tab-dialog-fullscreen .el-dialog__wrapper{position:fixed!important}.cy-tab-dialog.cy-tab-dialog-fullscreen .el-dialog__wrapper .el-dialog{left:0!important;top:0}*,::after,::before{-webkit-box-sizing:border-box;box-sizing:border-box}.cy-sub-title{width:100%;font-size:17px;border-left:5px solid #1890ff;text-indent:10px;margin-bottom:15px;font-weight:700;color:#303133;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.cy-sub-title .left{width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cy-sub-title .right{-ms-flex-negative:0;flex-shrink:0;margin-left:20px}
@@ -0,0 +1 @@
1
+ *,::after,::before{-webkit-box-sizing:border-box;box-sizing:border-box}.cy-sub-title{width:100%;font-size:17px;border-left:5px solid #1890ff;text-indent:10px;margin-bottom:15px;font-weight:700;color:#303133;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.cy-sub-title .left{width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cy-sub-title .right{-ms-flex-negative:0;flex-shrink:0;margin-left:20px}
@@ -0,0 +1 @@
1
+ *,::after,::before{-webkit-box-sizing:border-box;box-sizing:border-box}.cy-tab-dialog{line-height:0}.cy-tab-dialog-modal{position:absolute;top:0;bottom:0;left:0;right:0;opacity:.5;background:#000}.cy-tab-dialog .el-dialog__wrapper{position:absolute!important;line-height:18px}.cy-tab-dialog .el-dialog__wrapper .el-dialog{-webkit-box-shadow:0 2px 4px rgba(0,0,0,.12),0 0 6px rgba(0,0,0,.4);box-shadow:0 2px 4px rgba(0,0,0,.12),0 0 6px rgba(0,0,0,.4);display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.cy-tab-dialog .el-dialog__wrapper .el-dialog .el-dialog__header{-ms-flex-negative:0;flex-shrink:0}.cy-tab-dialog .el-dialog__wrapper .el-dialog .el-dialog__body{height:100%}.cy-tab-dialog.cy-tab-dialog-fullscreen .el-dialog__wrapper{position:fixed!important}.cy-tab-dialog.cy-tab-dialog-fullscreen .el-dialog__wrapper .el-dialog{left:0!important;top:0}
@@ -0,0 +1 @@
1
+ *,::after,::before{-webkit-box-sizing:border-box;box-sizing:border-box}.cy-tree-select .el-popover__reference-wrapper{display:-webkit-box;display:-ms-flexbox;display:flex}.cy-tree-select-select{width:100%;height:40px;line-height:38px;border:1px solid #DCDFE6;border-radius:4px;padding:0 25px 0 15px;cursor:pointer;overflow:hidden;position:relative;-webkit-transition:all .3s;transition:all .3s;-webkit-box-sizing:border-box;box-sizing:border-box}.cy-tree-select-select .cy-tree-select-select-v{width:100%;color:#606266;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cy-tree-select-select .cy-tree-select-select-v-placeholder{color:#c0c4cc}.cy-tree-select-select .cy-tree-select-select-v-icon{color:#C0C4CC;position:absolute;top:50%;-webkit-transform:translateY(-50%);transform:translateY(-50%);right:10px}.cy-tree-select-select .cy-tree-select-select-v-icon .cy-tree-select-select-v-arrow{-webkit-transform:rotateZ(0);transform:rotateZ(0);-webkit-transition:all .3s;transition:all .3s}.cy-tree-select-select .cy-tree-select-select-v-icon .cy-tree-select-select-v-arrow-show{-webkit-transform:rotateZ(-180deg);transform:rotateZ(-180deg)}.cy-tree-select-select.small{height:32px;line-height:30px;padding:0 25px 0 10px}.cy-tree-select-select.small .cy-tree-select-select-v{font-size:13px}.cy-tree-select-select.mini{height:28px;line-height:26px;padding:0 25px 0 10px}.cy-tree-select-select.mini .cy-tree-select-select-v{font-size:12px}.cy-tree-select-select:hover{border-color:#C0C4CC}.cy-tree-select-select:focus{outline:0;border-color:#409EFF}.cy-tree-select-select-con-s{padding-bottom:8px}.cy-tree-select-select-con-t{padding-bottom:5px;margin-bottom:5px;border-bottom:1px solid #DCDFE6}.cy-tree-select-select-con-c{max-height:300px;overflow:auto}.el-form-item--medium .el-form-item__content .cy-tree-select{width:100%;height:40px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.el-form-item--medium .el-form-item__content .cy-tree-select>span{display:inline-block;width:100%}.el-form-item--small .el-form-item__content .cy-tree-select{width:100%;height:32px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.el-form-item--small .el-form-item__content .cy-tree-select>span{display:inline-block;width:100%}.el-form-item--mini .el-form-item__content .cy-tree-select{width:100%;height:28px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.el-form-item--mini .el-form-item__content .cy-tree-select>span{display:inline-block;width:100%}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "cy-element-ui",
3
- "version": "1.1.6",
3
+ "version": "1.1.8",
4
4
  "description": "A Component Library for Vue.js.",
5
5
  "main": "lib/index.js",
6
6
  "files": [
@@ -14,7 +14,7 @@
14
14
  "scripts": {
15
15
  "bootstrap": "yarn || npm i",
16
16
  "build:file": "node build/bin/iconInit.js & node build/bin/build-entry.js & node build/bin/i18n.js & node build/bin/version.js",
17
- "build:theme": "node build/bin/gen-cssfile && gulp build --gulpfile packages/theme-chalk/gulpfile.js && cp-cli packages/theme-chalk/lib lib/theme-chalk",
17
+ "build:theme": "node build/bin/gen-cssfile && gulp build --gulpfile packages/theme-chalk/gulpfile.js && cp-cli packages/theme-chalk/lib lib/theme-chalk && gulp build --gulpfile packages/theme-cy/gulpfile.js && cp-cli packages/theme-cy/lib lib/theme-cy",
18
18
  "build:utils": "cross-env BABEL_ENV=utils babel src --out-dir lib --ignore src/index.js",
19
19
  "build:umd": "node build/bin/build-locale.js",
20
20
  "clean": "rimraf lib && rimraf packages/*/lib && rimraf test/**/coverage",
@@ -0,0 +1,7 @@
1
+ import SubTitle from './src/main';
2
+
3
+ SubTitle.install = function(Vue) {
4
+ Vue.component(SubTitle.name, SubTitle);
5
+ };
6
+
7
+ export default SubTitle;
@@ -0,0 +1,36 @@
1
+ <template>
2
+ <div class="cy-sub-title" :style="lineStyle">
3
+ <div class="left">
4
+ <slot>{{ title }}</slot>
5
+ </div>
6
+ <div class="right">
7
+ <slot name="right"></slot>
8
+ </div>
9
+ </div>
10
+ </template>
11
+
12
+ <script>
13
+ export default {
14
+ name: 'CySubTitle',
15
+ props: {
16
+ title: {
17
+ type: String,
18
+ default: ''
19
+ },
20
+ lineColor: {
21
+ type: String,
22
+ default: ''
23
+ }
24
+ },
25
+ computed: {
26
+ lineStyle() {
27
+ if (this.lineColor) {
28
+ return {
29
+ borderLeftColor: this.lineColor
30
+ };
31
+ }
32
+ return {};
33
+ }
34
+ }
35
+ };
36
+ </script>
@@ -0,0 +1,23 @@
1
+ import TabDialog from './src/main';
2
+ import dialogDrag from './src/dialog/drag';
3
+ import dialogDragWidth from './src/dialog/dragWidth';
4
+ import dialogDragHeight from './src/dialog/dragHeight';
5
+
6
+ export const TabDialogDirective = (Vue) => {
7
+ // 注册指令
8
+ Vue.directive('dialogDrag', dialogDrag);
9
+ Vue.directive('dialogDragWidth', dialogDragWidth);
10
+ Vue.directive('dialogDragHeight', dialogDragHeight);
11
+ };
12
+
13
+ /* istanbul ignore next */
14
+ TabDialog.install = function(Vue) {
15
+ // 注册组件
16
+ Vue.component(TabDialog.name, TabDialog);
17
+ // 注册指令
18
+ Vue.directive('dialogDrag', dialogDrag);
19
+ Vue.directive('dialogDragWidth', dialogDragWidth);
20
+ Vue.directive('dialogDragHeight', dialogDragHeight);
21
+ };
22
+
23
+ export default TabDialog;
@@ -0,0 +1,63 @@
1
+ /**
2
+ * v-dialogDrag 弹窗拖拽
3
+ * Copyright (c) 2019 ruoyi
4
+ */
5
+
6
+ export default {
7
+ bind(el, binding, vnode, oldVnode) {
8
+ const value = binding.value;
9
+ if (value === false) return;
10
+ // 获取拖拽内容头部
11
+ const dialogHeaderEl = el.querySelector('.el-dialog__header');
12
+ const dragDom = el.querySelector('.el-dialog');
13
+ dialogHeaderEl.style.cursor = 'move';
14
+ // 获取原有属性 ie dom元素.currentStyle 火狐谷歌 window.getComputedStyle(dom元素, null);
15
+ const sty = dragDom.currentStyle || window.getComputedStyle(dragDom, null);
16
+ dragDom.style.position = 'absolute';
17
+ dragDom.style.marginTop = 0;
18
+ let width = dragDom.style.width;
19
+ if (width.includes('%')) {
20
+ width = +document.body.clientWidth * (+width.replace(/\%/g, '') / 100);
21
+ } else {
22
+ width = +width.replace(/\px/g, '');
23
+ }
24
+ dragDom.style.left = `${ (document.body.clientWidth - width) / 2 }px`;
25
+ // 鼠标按下事件
26
+ dialogHeaderEl.onmousedown = (e) => {
27
+ // 鼠标按下,计算当前元素距离可视区的距离 (鼠标点击位置距离可视窗口的距离)
28
+ const disX = e.clientX - dialogHeaderEl.offsetLeft;
29
+ const disY = e.clientY - dialogHeaderEl.offsetTop;
30
+
31
+ // 获取到的值带px 正则匹配替换
32
+ let styL, styT;
33
+
34
+ // 注意在ie中 第一次获取到的值为组件自带50% 移动之后赋值为px
35
+ if (sty.left.includes('%')) {
36
+ styL = +document.body.clientWidth * (+sty.left.replace(/\%/g, '') / 100);
37
+ styT = +document.body.clientHeight * (+sty.top.replace(/\%/g, '') / 100);
38
+ } else {
39
+ styL = +sty.left.replace(/\px/g, '');
40
+ styT = +sty.top.replace(/\px/g, '');
41
+ }
42
+
43
+ // 鼠标拖拽事件
44
+ document.onmousemove = function(e) {
45
+ // 通过事件委托,计算移动的距离 (开始拖拽至结束拖拽的距离)
46
+ const l = e.clientX - disX;
47
+ const t = e.clientY - disY;
48
+
49
+ let finallyL = l + styL;
50
+ let finallyT = t + styT;
51
+
52
+ // 移动当前元素
53
+ dragDom.style.left = `${ finallyL }px`;
54
+ dragDom.style.top = `${ finallyT }px`;
55
+ };
56
+
57
+ document.onmouseup = function(e) {
58
+ document.onmousemove = null;
59
+ document.onmouseup = null;
60
+ };
61
+ };
62
+ }
63
+ };
@@ -0,0 +1,34 @@
1
+ /**
2
+ * v-dialogDragWidth 可拖动弹窗高度(右下角)
3
+ * Copyright (c) 2019 ruoyi
4
+ */
5
+
6
+ export default {
7
+ bind(el) {
8
+ const dragDom = el.querySelector('.el-dialog');
9
+ const lineEl = document.createElement('div');
10
+ lineEl.style = 'width: 6px; background: inherit; height: 10px; position: absolute; right: 0; bottom: 0; margin: auto; z-index: 1; cursor: nwse-resize;';
11
+ lineEl.addEventListener('mousedown',
12
+ function(e) {
13
+ // 鼠标按下,计算当前元素距离可视区的距离
14
+ const disX = e.clientX - el.offsetLeft;
15
+ const disY = e.clientY - el.offsetTop;
16
+ // 当前宽度 高度
17
+ const curWidth = dragDom.offsetWidth;
18
+ const curHeight = dragDom.offsetHeight;
19
+ document.onmousemove = function(e) {
20
+ e.preventDefault(); // 移动时禁用默认事件
21
+ // 通过事件委托,计算移动的距离
22
+ const xl = e.clientX - disX;
23
+ const yl = e.clientY - disY;
24
+ dragDom.style.width = `${ curWidth + xl }px`;
25
+ dragDom.style.height = `${ curHeight + yl }px`;
26
+ };
27
+ document.onmouseup = function(e) {
28
+ document.onmousemove = null;
29
+ document.onmouseup = null;
30
+ };
31
+ }, false);
32
+ dragDom.appendChild(lineEl);
33
+ }
34
+ };
@@ -0,0 +1,30 @@
1
+ /**
2
+ * v-dialogDragWidth 可拖动弹窗宽度(右侧边)
3
+ * Copyright (c) 2019 ruoyi
4
+ */
5
+
6
+ export default {
7
+ bind(el) {
8
+ const dragDom = el.querySelector('.el-dialog');
9
+ const lineEl = document.createElement('div');
10
+ lineEl.style = 'width: 5px; background: inherit; height: 80%; position: absolute; right: 0; top: 0; bottom: 0; margin: auto; z-index: 1; cursor: w-resize;';
11
+ lineEl.addEventListener('mousedown',
12
+ function(e) {
13
+ // 鼠标按下,计算当前元素距离可视区的距离
14
+ const disX = e.clientX - el.offsetLeft;
15
+ // 当前宽度
16
+ const curWidth = dragDom.offsetWidth;
17
+ document.onmousemove = function(e) {
18
+ e.preventDefault(); // 移动时禁用默认事件
19
+ // 通过事件委托,计算移动的距离
20
+ const l = e.clientX - disX;
21
+ dragDom.style.width = `${ curWidth + l }px`;
22
+ };
23
+ document.onmouseup = function(e) {
24
+ document.onmousemove = null;
25
+ document.onmouseup = null;
26
+ };
27
+ }, false);
28
+ dragDom.appendChild(lineEl);
29
+ }
30
+ };
@@ -0,0 +1,277 @@
1
+ <template>
2
+ <div class="cy-tab-dialog">
3
+ <div
4
+ v-show="visible && modal"
5
+ contenteditable="false"
6
+ class="cy-tab-dialog-modal"
7
+ :style="{ zIndex: modelZIndex, height: modelHeight ? modelHeight : '100%' }"
8
+ @click="closeOnClickModal && handleClose"
9
+ ></div>
10
+
11
+ <el-dialog
12
+ :visible="visible"
13
+ :title="title"
14
+ :width="width"
15
+ :fullscreen="fullscreen"
16
+ :modal="false"
17
+ :modal-append-to-body="false"
18
+ :append-to-body="false"
19
+ :lock-scroll="true"
20
+ :custom-class="customClass"
21
+ :close-on-click-modal="appendToTagsView ? false : closeOnClickModal"
22
+ :close-on-press-escape="appendToTagsView ? false : closeOnPressEscape"
23
+ :show-close="showClose"
24
+ :center="center"
25
+ :destroy-on-close="destroyOnClose"
26
+ contenteditable="false"
27
+ v-dialog-drag="isDrag"
28
+ v-dialog-drag-width="isDrag"
29
+ v-dialog-drag-height="isDrag"
30
+ :before-close="beforeClose"
31
+ @open="handleOpen"
32
+ @opened="handleOpened"
33
+ @close="handleClose"
34
+ @closed="handleClosed"
35
+ >
36
+ <template v-if="$slots.title" slot="title">
37
+ <slot name="title"></slot>
38
+ </template>
39
+
40
+ <slot></slot>
41
+
42
+ <template v-if="$slots.footer" slot="footer">
43
+ <slot name="footer"></slot>
44
+ </template>
45
+ </el-dialog>
46
+ </div>
47
+ </template>
48
+
49
+ <script>
50
+ import ElDialog from '../../dialog';
51
+ import Vue from 'vue';
52
+
53
+ export default {
54
+ name: 'CyTabDialog',
55
+ components: {
56
+ ElDialog
57
+ },
58
+ props: {
59
+ // 是否显示 Dialog,支持 .sync 修饰符
60
+ visible: {
61
+ type: Boolean,
62
+ default: false
63
+ },
64
+ // Dialog 的标题,也可通过具名 slot
65
+ title: {
66
+ type: String,
67
+ default: ''
68
+ },
69
+ // Dialog 的宽度
70
+ width: {
71
+ type: String,
72
+ default: '50%'
73
+ },
74
+ // 是否为全屏 Dialog
75
+ fullscreen: {
76
+ type: Boolean,
77
+ default: false
78
+ },
79
+ // Dialog CSS 中的 margin-top 值
80
+ top: {
81
+ type: String,
82
+ default: '6vh'
83
+ },
84
+ // 是否需要遮罩层
85
+ modal: {
86
+ type: Boolean,
87
+ default: true
88
+ },
89
+ // 遮罩层是否插入至 body 元素上,若为 false,则遮罩层会插入至 Dialog 的父元素上
90
+ appendToBody: {
91
+ type: Boolean,
92
+ default: false
93
+ },
94
+ // 是否在 Dialog 出现时将 body或上层 滚动锁定
95
+ lockScroll: {
96
+ type: Boolean,
97
+ default: true
98
+ },
99
+ // Dialog 的自定义类名
100
+ customClass: {
101
+ type: String,
102
+ default: ''
103
+ },
104
+ // 是否可以通过点击 modal 关闭 Dialog
105
+ closeOnClickModal: {
106
+ type: Boolean,
107
+ default: false
108
+ },
109
+ // 是否可以通过按下 ESC 关闭 Dialog
110
+ closeOnPressEscape: {
111
+ type: Boolean,
112
+ default: true
113
+ },
114
+ // 是否显示关闭按钮
115
+ showClose: {
116
+ type: Boolean,
117
+ default: true
118
+ },
119
+ // 是否对头部和底部采用居中布局
120
+ center: {
121
+ type: Boolean,
122
+ default: false
123
+ },
124
+ // 关闭时销毁 Dialog 中的元素
125
+ destroyOnClose: {
126
+ type: Boolean,
127
+ default: false
128
+ },
129
+ // 是否放到tagsView中,即当前app-views下面,此属性true时,appendToBody无效
130
+ appendToTagsView: {
131
+ type: Boolean,
132
+ default: false
133
+ },
134
+ // 对话框是否可拖拽
135
+ isDrag: {
136
+ type: Boolean,
137
+ default: true
138
+ },
139
+ // 关闭前的回调,会暂停 Dialog 的关闭
140
+ beforeClose: {
141
+ type: Function
142
+ }
143
+ },
144
+ data() {
145
+ return {
146
+ // 判断dialog是否已经放到对应的div下
147
+ rendered: false,
148
+ modelZIndex: 1000,
149
+ modelHeight: 0,
150
+ // 当前app-views的dom元素
151
+ parentDom: null,
152
+ // 当前el-dialog的dom元素
153
+ elDialogDom: null
154
+ };
155
+ },
156
+ watch: {
157
+ visible: {
158
+ immediate: true,
159
+ handler(val) {
160
+ if (val) {
161
+ this.$emit('open');
162
+ Vue.nextTick(() => {
163
+ const dom = this.$el;
164
+ // 首次打开
165
+ if (!this.rendered) {
166
+ this.rendered = true;
167
+ if (this.appendToTagsView) {
168
+ // 将当前dialog挪到当前app-views里面 app-container
169
+ this.parentDom = dom.closest('.app-container');
170
+ if (!this.parentDom) this.parentDom = document.body;
171
+ this.parentDom.append(dom);
172
+ } else if (this.appendToBody) {
173
+ // 将当前dialog挪到当前body里面
174
+ this.parentDom = document.body;
175
+ this.parentDom.append(dom);
176
+ }
177
+ // 添加键盘监听事件
178
+ if (this.closeOnPressEscape) {
179
+ document.addEventListener('keydown', this.escKeyDown);
180
+ }
181
+ }
182
+
183
+ setTimeout(() => {
184
+ if (this.parentDom) this.modelHeight = this.parentDom.scrollHeight + 'px';
185
+ // 当前VDialog不在body中时
186
+ if (!this.parentDom || this.parentDom.tagName.toUpperCase() !== 'BODY') {
187
+ // 获取el-dialog的宽度,如果大于app-views的宽度,则el-dialog不居中显示
188
+ let elDialogWidth = dom.getElementsByClassName('el-dialog')[0].clientWidth;
189
+ if (!this.parentDom || elDialogWidth < this.parentDom.clientWidth) {
190
+ dom.getElementsByClassName('el-dialog')[0].style.left = '50%';
191
+ dom.getElementsByClassName('el-dialog')[0].style.transform = 'translateX(-50%)';
192
+ } else {
193
+ dom.getElementsByClassName('el-dialog')[0].style.left = '0';
194
+ }
195
+ }
196
+ dom.getElementsByClassName('el-dialog')[0].style.marginTop = this.top;
197
+ }, 50);
198
+
199
+ // 获取el-dialog的z-index,赋值给model,用于处理model的层级问题
200
+ this.elDialogDom = dom.children[1];
201
+ setTimeout(() => {
202
+ this.modelZIndex = this.elDialogDom.style.zIndex;
203
+ }, 50);
204
+ });
205
+ } else {
206
+ // immediate=true时,首次打开不需要触发close事件
207
+ if (this.rendered) this.$emit('close');
208
+ }
209
+ }
210
+ }
211
+ },
212
+ methods: {
213
+ handleOpen() {
214
+ this.$emit('open');
215
+ },
216
+
217
+ handleOpened() {
218
+ this.$emit('opened');
219
+ },
220
+
221
+ handleClose() {
222
+ this.$emit('update:visible', false);
223
+ this.$emit('close');
224
+ },
225
+
226
+ handleClosed() {
227
+ this.$emit('closed');
228
+ },
229
+
230
+ /**
231
+ * 监听esc键
232
+ */
233
+ escKeyDown(event) {
234
+ if (event.keyCode === 27) {
235
+ // 获取body下的直接子节点中的已打开的vDialog
236
+ let bodyVDialogDomArr = [];
237
+ let bodyChildrenArr = document.body.childNodes;
238
+ for (let i = 0; i < bodyChildrenArr.length; i++) {
239
+ let item = bodyChildrenArr[i];
240
+ if (item.tagName && item.tagName.toUpperCase() === 'DIV' && item.className && item.className.split(' ').includes('cy-tab-dialog-opened')) {
241
+ bodyVDialogDomArr.push(item);
242
+ }
243
+ }
244
+ // 判断body中是否有已打开的vDialog,如果有,优先关闭body下的vDialog
245
+ if (bodyVDialogDomArr.length > 0) {
246
+ // 获取当前cy-tab-dialog在当前body中的下标
247
+ let curDomIndex = [].indexOf.call(bodyVDialogDomArr, this.$el);
248
+ if (curDomIndex === bodyVDialogDomArr.length - 1) {
249
+ this.handleClose();
250
+ }
251
+ } else if (document.getElementById('tags-view-container') && this.parentDom.parentElement.getAttribute('include_name')) {
252
+ // 获取当前app-views对应的include_name值
253
+ let includeName = this.parentDom.parentElement.getAttribute('include_name');
254
+ // 根据includeName获取tagsView中的tag标签页
255
+ let tagDom = document.getElementById('tags-view-container').querySelectorAll(`[include_name=${ includeName }]`);
256
+ if (tagDom && tagDom[0]) {
257
+ // 判断此标签页是否为选中状态,只有选中状态中的vDialog才可以进行关闭
258
+ if (tagDom[0].className.split(' ').includes('active')) {
259
+ let vDialogList = this.parentDom.getElementsByClassName('cy-tab-dialog-opened');
260
+ // 获取当前cy-tab-dialog在当前app-views中的下标
261
+ let curDomIndex = [].indexOf.call(vDialogList, this.$el);
262
+ if (curDomIndex === vDialogList.length - 1) {
263
+ this.handleClose();
264
+ }
265
+ }
266
+ }
267
+ } else {
268
+ this.handleClose();
269
+ }
270
+ }
271
+ }
272
+ },
273
+ beforeDestroy() {
274
+ document.removeEventListener('keydown', this.escKeyDown);
275
+ }
276
+ };
277
+ </script>
@@ -86,3 +86,5 @@
86
86
  @import "./descriptions-item.scss";
87
87
  @import "./result.scss";
88
88
  @import "./treeSelect.scss";
89
+ @import "./tabDialog.scss";
90
+ @import "./subTitle.scss";
File without changes
File without changes