vue-devui 1.0.0-rc.8 → 1.0.1

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 (228) hide show
  1. package/README.md +188 -149
  2. package/alert/index.es.js +14 -9
  3. package/alert/index.umd.js +1 -1
  4. package/alert/style.css +1 -1
  5. package/auto-complete/index.es.js +8392 -418
  6. package/auto-complete/index.umd.js +29 -5
  7. package/auto-complete/style.css +1 -1
  8. package/avatar/index.es.js +59 -74
  9. package/avatar/index.umd.js +1 -1
  10. package/badge/index.es.js +10 -4
  11. package/badge/index.umd.js +1 -1
  12. package/badge/style.css +1 -1
  13. package/button/index.es.js +191 -53
  14. package/button/index.umd.js +17 -17
  15. package/button/style.css +1 -1
  16. package/card/index.es.js +7 -3
  17. package/card/index.umd.js +1 -1
  18. package/card/style.css +1 -1
  19. package/checkbox/index.es.js +8050 -241
  20. package/checkbox/index.umd.js +27 -1
  21. package/checkbox/style.css +1 -1
  22. package/{date-picker → collapse}/index.d.ts +0 -0
  23. package/collapse/index.es.js +213 -0
  24. package/collapse/index.umd.js +1 -0
  25. package/{date-picker → collapse}/package.json +1 -1
  26. package/collapse/style.css +1 -0
  27. package/countdown/index.es.js +56 -13
  28. package/countdown/index.umd.js +1 -1
  29. package/date-picker-pro/index.d.ts +7 -0
  30. package/date-picker-pro/index.es.js +12022 -0
  31. package/date-picker-pro/index.umd.js +27 -0
  32. package/date-picker-pro/package.json +7 -0
  33. package/date-picker-pro/style.css +1 -0
  34. package/drawer/index.es.js +24 -7
  35. package/drawer/index.umd.js +1 -1
  36. package/drawer/style.css +1 -1
  37. package/dropdown/index.es.js +190 -165
  38. package/dropdown/index.umd.js +1 -1
  39. package/dropdown/style.css +1 -1
  40. package/editable-select/index.es.js +785 -145
  41. package/editable-select/index.umd.js +1 -1
  42. package/editable-select/style.css +1 -1
  43. package/form/index.es.js +399 -300
  44. package/form/index.umd.js +16 -16
  45. package/form/style.css +1 -1
  46. package/fullscreen/index.es.js +2 -2
  47. package/fullscreen/index.umd.js +1 -1
  48. package/grid/index.es.js +8 -6
  49. package/grid/index.umd.js +1 -1
  50. package/icon/index.es.js +185 -23
  51. package/icon/index.umd.js +1 -1
  52. package/icon/style.css +1 -0
  53. package/image-preview/index.es.js +2 -2
  54. package/image-preview/index.umd.js +1 -1
  55. package/image-preview/style.css +1 -1
  56. package/input/index.es.js +8220 -45
  57. package/input/index.umd.js +27 -1
  58. package/input/style.css +1 -1
  59. package/input-number/index.es.js +279 -204
  60. package/input-number/index.umd.js +1 -1
  61. package/input-number/style.css +1 -1
  62. package/layout/index.es.js +3 -3
  63. package/layout/index.umd.js +1 -1
  64. package/loading/index.es.js +53 -53
  65. package/loading/index.umd.js +1 -1
  66. package/loading/style.css +1 -1
  67. package/mention/index.d.ts +7 -0
  68. package/mention/index.es.js +8319 -0
  69. package/mention/index.umd.js +36 -0
  70. package/mention/package.json +7 -0
  71. package/mention/style.css +1 -0
  72. package/menu/index.d.ts +7 -0
  73. package/menu/index.es.js +921 -0
  74. package/menu/index.umd.js +1 -0
  75. package/menu/package.json +7 -0
  76. package/menu/style.css +1 -0
  77. package/message/index.d.ts +7 -0
  78. package/message/index.es.js +539 -0
  79. package/message/index.umd.js +1 -0
  80. package/message/package.json +7 -0
  81. package/message/style.css +1 -0
  82. package/modal/index.es.js +451 -173
  83. package/modal/index.umd.js +1 -1
  84. package/modal/style.css +1 -1
  85. package/notification/index.es.js +212 -70
  86. package/notification/index.umd.js +1 -1
  87. package/notification/style.css +1 -1
  88. package/nuxt/components/CheckboxButton.js +3 -0
  89. package/nuxt/components/Collapse.js +3 -0
  90. package/nuxt/components/CollapseItem.js +3 -0
  91. package/nuxt/components/DRangeDatePickerPro.js +3 -0
  92. package/nuxt/components/DatePickerPro.js +3 -0
  93. package/nuxt/components/Icon.js +1 -0
  94. package/nuxt/components/IconGroup.js +3 -0
  95. package/nuxt/components/LABEL_DATA.js +3 -0
  96. package/nuxt/components/Mention.js +3 -0
  97. package/nuxt/components/Menu.js +3 -0
  98. package/nuxt/components/MenuItem.js +3 -0
  99. package/nuxt/components/Message.js +3 -0
  100. package/nuxt/components/Option.js +3 -0
  101. package/nuxt/components/OptionGroup.js +3 -0
  102. package/nuxt/components/RadioButton.js +3 -0
  103. package/nuxt/components/Step.js +3 -0
  104. package/nuxt/components/Steps.js +3 -0
  105. package/nuxt/components/SubMenu.js +3 -0
  106. package/nuxt/components/TABLE_TOKEN.js +3 -0
  107. package/nuxt/components/TimePicker.js +3 -0
  108. package/nuxt/components/TimeSelect.js +3 -0
  109. package/nuxt/components/animationInjectionKey.js +3 -0
  110. package/nuxt/components/collapseItemProps.js +3 -0
  111. package/nuxt/components/collapseProps.js +3 -0
  112. package/nuxt/components/datePickerProCommonProps.js +3 -0
  113. package/nuxt/components/datePickerProPanelProps.js +3 -0
  114. package/nuxt/components/datePickerProProps.js +3 -0
  115. package/nuxt/components/iconProps.js +1 -0
  116. package/nuxt/components/mentionProps.js +3 -0
  117. package/nuxt/components/messageProps.js +3 -0
  118. package/nuxt/components/paginationInjectionKey.js +3 -0
  119. package/nuxt/components/roundInjectionKey.js +3 -0
  120. package/nuxt/components/skeletonItemProps.js +3 -0
  121. package/nuxt/components/stepProps.js +3 -0
  122. package/nuxt/components/stepsProps.js +3 -0
  123. package/nuxt/components/svgIconProps.js +3 -0
  124. package/nuxt/components/tableProps.js +3 -0
  125. package/nuxt/components/timerPickerPanelProps.js +3 -0
  126. package/nuxt/components/treeNodeProps.js +3 -0
  127. package/overlay/index.es.js +89 -142
  128. package/overlay/index.umd.js +1 -1
  129. package/overlay/style.css +1 -1
  130. package/package.json +8 -4
  131. package/pagination/index.es.js +10180 -129
  132. package/pagination/index.umd.js +27 -1
  133. package/pagination/style.css +1 -1
  134. package/panel/index.es.js +4 -0
  135. package/panel/index.umd.js +1 -1
  136. package/panel/style.css +1 -1
  137. package/popover/index.es.js +262 -229
  138. package/popover/index.umd.js +15 -15
  139. package/popover/style.css +1 -1
  140. package/progress/index.es.js +2 -2
  141. package/progress/index.umd.js +2 -2
  142. package/progress/style.css +1 -1
  143. package/radio/index.es.js +7954 -156
  144. package/radio/index.umd.js +27 -1
  145. package/radio/style.css +1 -1
  146. package/rate/index.es.js +16 -8
  147. package/rate/index.umd.js +1 -1
  148. package/rate/style.css +1 -1
  149. package/result/index.es.js +170 -22
  150. package/result/index.umd.js +1 -1
  151. package/result/style.css +1 -1
  152. package/search/index.es.js +3829 -1042
  153. package/search/index.umd.js +18 -18
  154. package/search/style.css +1 -1
  155. package/select/index.es.js +9202 -495
  156. package/select/index.umd.js +27 -1
  157. package/select/style.css +1 -1
  158. package/skeleton/index.es.js +89 -263
  159. package/skeleton/index.umd.js +1 -1
  160. package/skeleton/style.css +1 -1
  161. package/slider/index.es.js +118 -145
  162. package/slider/index.umd.js +1 -1
  163. package/slider/style.css +1 -1
  164. package/splitter/index.es.js +454 -233
  165. package/splitter/index.umd.js +13 -13
  166. package/splitter/style.css +1 -1
  167. package/statistic/index.es.js +34 -16
  168. package/statistic/index.umd.js +1 -1
  169. package/statistic/style.css +1 -1
  170. package/status/index.es.js +6 -2
  171. package/status/index.umd.js +1 -1
  172. package/status/style.css +1 -1
  173. package/steps/index.d.ts +7 -0
  174. package/steps/index.es.js +387 -0
  175. package/steps/index.umd.js +1 -0
  176. package/steps/package.json +7 -0
  177. package/steps/style.css +1 -0
  178. package/style.css +1 -1
  179. package/switch/index.es.js +7787 -62
  180. package/switch/index.umd.js +27 -1
  181. package/switch/style.css +1 -1
  182. package/table/index.es.js +5225 -1726
  183. package/table/index.umd.js +18 -18
  184. package/table/style.css +1 -1
  185. package/tabs/index.es.js +303 -102
  186. package/tabs/index.umd.js +1 -1
  187. package/tabs/style.css +1 -1
  188. package/tag/index.es.js +11 -8
  189. package/tag/index.umd.js +1 -1
  190. package/tag/style.css +1 -1
  191. package/textarea/index.es.js +7876 -41
  192. package/textarea/index.umd.js +35 -1
  193. package/textarea/style.css +1 -1
  194. package/time-picker/index.d.ts +7 -0
  195. package/time-picker/index.es.js +9549 -0
  196. package/time-picker/index.umd.js +27 -0
  197. package/time-picker/package.json +7 -0
  198. package/time-picker/style.css +1 -0
  199. package/time-select/index.d.ts +7 -0
  200. package/time-select/index.es.js +9607 -0
  201. package/time-select/index.umd.js +27 -0
  202. package/time-select/package.json +7 -0
  203. package/time-select/style.css +1 -0
  204. package/timeline/index.es.js +170 -22
  205. package/timeline/index.umd.js +1 -1
  206. package/timeline/style.css +1 -1
  207. package/tooltip/index.es.js +286 -238
  208. package/tooltip/index.umd.js +14 -14
  209. package/tooltip/style.css +1 -1
  210. package/tree/index.es.js +11342 -793
  211. package/tree/index.umd.js +27 -1
  212. package/tree/style.css +1 -1
  213. package/upload/index.es.js +458 -102
  214. package/upload/index.umd.js +1 -1
  215. package/upload/style.css +1 -1
  216. package/vue-devui.es.js +20475 -11072
  217. package/vue-devui.umd.js +31 -24
  218. package/date-picker/index.es.js +0 -1097
  219. package/date-picker/index.umd.js +0 -1
  220. package/date-picker/style.css +0 -1
  221. package/nuxt/components/DatePicker.js +0 -3
  222. package/nuxt/components/FormControl.js +0 -3
  223. package/nuxt/components/FormLabel.js +0 -3
  224. package/nuxt/components/Loading.js +0 -3
  225. package/nuxt/components/StickSlider.js +0 -3
  226. package/nuxt/components/formControlProps.js +0 -3
  227. package/nuxt/components/overlayEmits.js +0 -3
  228. package/nuxt/components/overlayProps.js +0 -3
package/table/style.css CHANGED
@@ -1 +1 @@
1
- .sort-clickable{cursor:pointer;position:absolute;top:-16px;left:50%;transform:translate(-50%);padding:8px;line-height:20px}.sort-icon-default>svg g use{fill:var(--devui-dividing-line, #dfe1e6)}.sort-icon-default>svg g polygon{fill:var(--devui-icon-bg, #ffffff)}.sort-icon-default:hover>svg g use{fill:var(--devui-icon-fill-active-hover, #526ecc)}.sort-icon-asc>svg g use,.sort-icon-desc>svg g use{fill:var(--devui-icon-fill-active, #5e7ce0)}.sort-icon-asc>svg g polygon,.sort-icon-desc>svg g polygon{fill:var(--devui-icon-bg, #ffffff)}.sort-icon-asc:hover>svg g use,.sort-icon-desc:hover>svg g use{fill:var(--devui-icon-fill-active-hover, #526ecc)}.sort-icon-asc>svg g polygon:last-of-type{opacity:.3}.sort-icon-desc>svg g polygon:first-of-type{opacity:.3}@keyframes d-overlay-fade{0%{opacity:0}to{opacity:1}}.devui-overlay__fade-enter{opacity:0}.devui-overlay__fade-enter-active{animation-name:d-overlay-fade;animation-duration:.3s}.devui-overlay__fade-leave{opacity:1}.devui-overlay__fade-leave-active{animation-name:d-overlay-fade;animation-duration:.3s;animation-direction:reverse}.devui-overlay__background{position:fixed;top:0;left:0;height:100vh;width:100vw;display:flex}.devui-overlay__background--color{background:rgba(0,0,0,.4)}.devui-overlay__background .devui-overlay{position:relative;z-index:1000;pointer-events:auto}.devui-overlay__background--disabled{pointer-events:none}.devui-flexible-overlay{position:fixed;border-radius:var(--devui-border-radius, 2px);background-color:var(--devui-connected-overlay-bg, #ffffff);box-shadow:var(--devui-shadow-connected-overlay, 0 2px 8px 0) var(--devui-shadow, rgba(37, 43, 58, .2));z-index:1000}.devui-flexible-overlay__arrow{position:absolute;width:8px;height:8px;transform:rotate(45deg);background-color:inherit}.devui-dropdown__toggle{display:inline-block}.devui-dropdown span.icon-chevron-down,.devui-dropdown span.icon-select-arrow{display:inline-block;vertical-align:text-top}.devui-dropdown__menu-wrap .devui-dropdown-menu{width:100%}.devui-dropdown-animation span.icon-chevron-down,.devui-dropdown-animation span.icon-select-arrow{transition:transform var(--devui-animation-duration-slow, .3s) var(--devui-animation-ease-in-out-smooth, cubic-bezier(.645, .045, .355, 1))}.devui-dropdown.open span.icon-chevron-down,.devui-dropdown.open span.icon-select-arrow{transform:rotate(180deg)}.fade-in-top{animation:fadeInTop .2s cubic-bezier(.16,.75,.5,1)}.fade-in-bottom{animation:fadeInBottom .2s cubic-bezier(.16,.75,.5,1)}@keyframes fadeInTop{0%{opacity:.8;transform:scaleY(.8) translateY(4px)}to{opacity:1;transform:scaleY(.9999) translateY(0)}}@keyframes fadeInBottom{0%{opacity:.8;transform:scaleY(.8) translateY(-4px)}to{opacity:1;transform:scaleY(.9999) translateY(0)}}.devui-dropdown-fade-bottom-enter-from,.devui-dropdown-fade-bottom-leave-to{opacity:.8;transform:scaleY(.8) translateY(-4px)}.devui-dropdown-fade-bottom-enter-to,.devui-dropdown-fade-bottom-leave-from{opacity:1;transform:scaleY(.9999) translateY(0)}.devui-dropdown-fade-bottom-enter-active{transition:transform .2s cubic-bezier(.16,.75,.5,1),opacity .2s cubic-bezier(.16,.75,.5,1)}.devui-dropdown-fade-bottom-leave-active{transition:transform .2s cubic-bezier(.5,0,.84,.25),opacity .2s cubic-bezier(.5,0,.84,.25)}.devui-dropdown-fade-top-enter-from,.devui-dropdown-fade-top-leave-to{opacity:.8;transform:scaleY(.8) translateY(4px)}.devui-dropdown-fade-top-enter-to,.devui-dropdown-fade-top-leave-from{opacity:1;transform:scaleY(.9999) translateY(0)}.devui-dropdown-fade-top-enter-active{transition:transform .2s cubic-bezier(.16,.75,.5,1),opacity .2s cubic-bezier(.16,.75,.5,1)}.devui-dropdown-fade-top-leave-active{transition:transform .2s cubic-bezier(.5,0,.84,.25),opacity .2s cubic-bezier(.5,0,.84,.25)}@keyframes devui-busy-spinner-anim{0%{transform:rotate(0) scale(1)}50%{transform:rotate(180deg) scale(1.5)}to{transform:rotate(360deg) scale(1)}}.devui-loading__mask{position:absolute;left:0;right:0;bottom:0;top:0;background-color:var(--devui-line, #adb0b8);opacity:.3}.devui-loading__wrapper{text-align:center}.devui-loading--full{position:fixed;left:0;right:0;bottom:0;top:0;z-index:9999}.devui-loading--hidden{overflow:hidden}.devui-loading__text{margin-left:10px}.devui-loading__area{position:absolute;transform:translate(-50%,-50%);padding:12px 14px;background:var(--devui-base-bg, #ffffff);border-radius:var(--devui-border-radius-card, 6px)}.devui-loading__busy-default-spinner{position:relative;display:inline-block;width:15px;height:15px;animation:devui-busy-spinner-anim 1s linear infinite}.devui-loading__busy-default-spinner div{position:absolute;left:44.5%;top:37%;width:6px;height:6px;border-radius:50%}.devui-loading__busy-default-spinner .devui-loading__bar1{top:0;left:0;background:#5e7ce0;background:var(--devui-brand, #5e7ce0)}.devui-loading__busy-default-spinner .devui-loading__bar2{top:0;left:9px;background:#859bff;background:var(--devui-brand-foil, #859bff)}.devui-loading__busy-default-spinner .devui-loading__bar3{top:9px;left:0;background:#859bff;background:var(--devui-brand-foil, #859bff)}.devui-loading__busy-default-spinner .devui-loading__bar4{top:9px;left:9px;background:#5e7ce0;background:var(--devui-brand, #5e7ce0)}.devui-button{padding:0 20px;font-size:var(--devui-font-size-md, 12px);height:28px;line-height:1.5;border:none;border-radius:var(--devui-border-radius, 2px);border-width:1px;background-color:transparent}.devui-button:hover{cursor:pointer}.devui-button:disabled{cursor:not-allowed}.devui-button--is-loading{pointer-events:none}.devui-button--solid{color:var(--devui-light-text, #ffffff);min-width:64px}.devui-button--solid--secondary{color:var(--devui-text, #252b3a);background-color:var(--devui-dividing-line, #dfe1e6)}.devui-button--solid--secondary:hover{opacity:.8}.devui-button--solid--secondary:focus{opacity:.8}.devui-button--solid--secondary:active{opacity:.8}.devui-button--solid--secondary:disabled{opacity:.8}.devui-button--solid--primary{background-color:var(--devui-primary, #5e7ce0)}.devui-button--solid--primary:hover{background-color:var(--devui-primary-hover, #7693f5)}.devui-button--solid--primary:focus{background-color:var(--devui-primary-hover, #7693f5)}.devui-button--solid--primary:active{background-color:var(--devui-primary-active, #344899)}.devui-button--solid--primary:disabled{color:var(--devui-light-text, #ffffff);background:var(--devui-primary-disabled, #beccfa);border:none}.devui-button--solid--danger{background-color:var(--devui-contrast, #c7000b)}.devui-button--solid--danger:hover{background-color:var(--devui-contrast-hover, #d64a52)}.devui-button--solid--danger:focus{background-color:var(--devui-contrast-hover, #d64a52)}.devui-button--solid--danger:active{background-color:var(--devui-contrast-active, #b12220)}.devui-button--solid--danger:disabled{background-color:var(--devui-contrast-disabled, #ffbcba)}.devui-button--outline{background-color:var(--devui-block, #ffffff);border-style:solid}.devui-button--outline--secondary{color:var(--devui-text, #252b3a);border-color:var(--devui-line, #adb0b8)}.devui-button--outline--secondary:hover{color:var(--devui-brand-active, #526ecc);border-color:var(--devui-form-control-line-active, #5e7ce0)}.devui-button--outline--secondary:focus{color:var(--devui-brand-active, #526ecc);border-color:var(--devui-form-control-line-active, #5e7ce0)}.devui-button--outline--secondary:active{color:var(--devui-brand-active, #526ecc);border-color:var(--devui-form-control-line-active, #5e7ce0)}.devui-button--outline--secondary:disabled{color:var(--devui-disabled-text, #adb0b8);border-color:var(--devui-disabled-line, #dfe1e6);background-color:var(--devui-disabled-bg, #f5f5f6)}.devui-button--outline--primary{color:var(--devui-brand-active, #526ecc);border-color:var(--devui-form-control-line-active, #5e7ce0)}.devui-button--outline--primary:hover{color:var(--devui-brand-active-focus, #344899);border-color:var(--devui-form-control-line-active-hover, #344899)}.devui-button--outline--primary:focus{color:var(--devui-brand-active-focus, #344899);border-color:var(--devui-form-control-line-active-hover, #344899)}.devui-button--outline--primary:active{color:var(--devui-brand-active-focus, #344899);border-color:var(--devui-form-control-line-active-hover, #344899)}.devui-button--outline--primary:disabled{opacity:.8;color:var(--devui-brand-active, #526ecc);border-color:var(--devui-form-control-line-active, #5e7ce0)}.devui-button--outline--danger{color:var(--devui-contrast, #c7000b);border-color:var(--devui-contrast, #c7000b)}.devui-button--outline--danger:hover,.devui-button--outline--danger:focus,.devui-button--outline--danger:active,.devui-button--outline--danger:disabled{opacity:.8}.devui-button--text{padding:0}.devui-button--text--secondary{color:var(--devui-text, #252b3a)}.devui-button--text--secondary:hover{color:var(--devui-list-item-hover-text, #526ecc)}.devui-button--text--secondary:focus{color:var(--devui-list-item-hover-text, #526ecc)}.devui-button--text--secondary:active{color:var(--devui-list-item-hover-text, #526ecc)}.devui-button--text--secondary:disabled{color:var(--devui-disabled-text, #adb0b8)}.devui-button--text--primary{color:var(--devui-brand-active, #526ecc)}.devui-button--text--primary:hover{color:var(--devui-brand-active-focus, #344899)}.devui-button--text--primary:focus{color:var(--devui-brand-active-focus, #344899)}.devui-button--text--primary:active{color:var(--devui-brand-active-focus, #344899)}.devui-button--text--primary:disabled{opacity:.8}.devui-button--text--danger{color:var(--devui-contrast, #c7000b)}.devui-button--text--danger:hover,.devui-button--text--danger:focus,.devui-button--text--danger:active,.devui-button--text--danger:disabled{opacity:.8}.devui-button--xs{padding:0 4px;height:24px;font-size:var(--devui-font-size-sm, 12px);min-width:48px}.devui-button--sm{padding:0 16px;height:24px;font-size:var(--devui-font-size-sm, 12px);min-width:56px}.devui-button--lg{padding:0 24px;height:32px;font-size:var(--devui-font-size-lg, 14px);min-width:72px}.devui-button.devui-button__icon:not(.devui-button--solid):hover,.devui-button.devui-button__icon:not(.devui-button--solid):focus{border:1px solid var(--devui-list-item-hover-bg, #f2f5fc);background-color:var(--devui-list-item-hover-bg, #f2f5fc)}.devui-button.devui-button__icon:not(.devui-button--solid):disabled{background-color:var(--devui-disabled-bg, #f5f5f6)}.devui-button:not(:disabled).devui-button--text.devui-button__icon-wrap{color:var(--devui-text, #252b3a)}.devui-button:not(:disabled).devui-button--text.devui-button__icon-wrap .devui-button__icon-fix{color:var(--devui-text-weak, #575d6c)}.devui-button:not(:disabled).devui-button--text.devui-button__icon-wrap:hover{color:var(--devui-list-item-hover-text, #526ecc)}.devui-button:not(:disabled).devui-button--text.devui-button__icon-wrap:hover .devui-button__icon-fix{color:var(--devui-icon-fill-active, #5e7ce0)}.devui-button--circle{border-radius:100%}.devui-button--round{border-radius:20px}.devui-loading .devui-loading-default-spinner div{background-color:var(--devui-text, #252b3a)}.devui-button{transition:background-color var(--devui-animation-duration-slow, .3s) var(--devui-animation-ease-in-out-smooth, cubic-bezier(.645, .045, .355, 1)),border-color var(--devui-animation-duration-slow, .3s) var(--devui-animation-ease-in-out-smooth, cubic-bezier(.645, .045, .355, 1)),color var(--devui-animation-duration-slow, .3s) var(--devui-animation-ease-in-out-smooth, cubic-bezier(.645, .045, .355, 1));white-space:nowrap;display:inline-flex;align-items:center;justify-content:center}.devui-button.devui-button__icon{padding:8px;line-height:1em}.devui-button.devui-button__icon:not(.devui-button--circle){border:1px solid transparent}.devui-button.devui-button__icon.devui-button--xs,.devui-button.devui-button__icon.devui-button--sm{padding:4px;min-width:24px}.devui-button.devui-button__icon.devui-button--lg{min-width:32px}.devui-button.devui-button__icon.devui-button--lg .icon{font-size:var(--devui-font-size-icon, 16px)}.devui-button.devui-button__icon.devui-button--circle.devui-button--xs,.devui-button.devui-button__icon.devui-button--circle.devui-button--sm{width:24px}.devui-button.devui-button__icon.devui-button--circle.devui-button--md{min-width:28px;width:28px}.devui-button.devui-button__icon.devui-button--circle.devui-button--lg{width:32px}.devui-button:not(.devui-button__icon) .icon-fix{font-size:var(--devui-font-size-icon, 16px)}.devui-button__icon-fix{position:relative;font-size:var(--devui-font-size, 12px)}.button-content{display:inline-block;position:relative}.clear-right-5{margin-right:5px}.devui-button-group{display:flex}.devui-button-group>*{position:relative}.devui-button-group>*:not(:first-child),.devui-button-group>*:not(:first-child) .devui-button{border-top-left-radius:0;border-bottom-left-radius:0;margin-left:-1px}.devui-button-group>*:not(:last-child),.devui-button-group>*:not(:last-child) .devui-button{border-top-right-radius:0;border-bottom-right-radius:0}.devui-button-group>*:hover,.devui-button-group>*:active{z-index:1}.devui-button-group>*:focus-within{z-index:1}.devui-checkbox{position:relative;display:flex;display:-ms-flexbox;align-items:center;-ms-flex-align:center;height:100%;margin:0}.devui-checkbox .devui-checkbox__tick-wrap{position:absolute}.devui-checkbox .devui-checkbox__tick-wrap .devui-checkbox__tick{fill:var(--devui-light-text, #ffffff);stroke-dashoffset:50;opacity:0;transform:scale(0);transform-origin:50% 50%;transition:stroke-dashoffset .2s ease-in-out,opacity .2s ease-in-out,transform .2s ease-in-out}.devui-checkbox.active:not(.half-checked) .devui-checkbox__tick{opacity:1;stroke-dashoffset:0;transform:scale(1);transition:stroke-dashoffset .3s cubic-bezier(.755,.05,.855,.06),opacity .2s cubic-bezier(.755,.05,.855,.06)}.devui-checkbox.active:not(.disabled) .devui-checkbox__material:not(.custom-color),.devui-checkbox.half-checked:not(.disabled) .devui-checkbox__material:not(.custom-color){border-color:var(--devui-brand, #5e7ce0)}.devui-checkbox.active:not(.disabled) .devui-checkbox__material{background-size:100% 100%;transition:background-size .2s ease-in-out,border-color .2s ease-in-out}.devui-checkbox.unchecked:not(.disabled) .devui-checkbox__material:not(.custom-color){background-size:0% 0%;transition:background-size .2s ease-in-out,border-color .2s ease-in-out}.devui-checkbox.unchecked:not(.disabled) .devui-checkbox__material:not(.custom-color):hover{border-color:var(--devui-icon-fill-active, #5e7ce0)}.devui-checkbox.unchecked:not(.disabled) .devui-checkbox__material.custom-color{background-size:0% 0%;transition:background-size .2s ease-in-out,border-color .2s ease-in-out}.devui-checkbox.half-checked .devui-checkbox__material:not(.custom-color){background-color:var(--devui-brand, #5e7ce0)}.devui-checkbox.half-checked .devui-checkbox__material:not(.custom-color)>.devui-checkbox__halfchecked-bg{opacity:1;transform:scale(.4288);transition:transform .2s cubic-bezier(.755,.05,.855,.06);background-color:var(--devui-light-text, #ffffff)}.devui-checkbox.half-checked .devui-checkbox__material.custom-color>.devui-checkbox__halfchecked-bg{opacity:1;transform:scale(.4288);transition:transform .2s cubic-bezier(.755,.05,.855,.06);background-color:var(--devui-light-text, #ffffff)}.devui-checkbox .devui-checkbox__material{text-align:initial;height:14px;width:14px;position:relative;user-select:none;border:1px solid var(--devui-line, #adb0b8);border-radius:var(--devui-border-radius, 2px);background:linear-gradient(var(--devui-brand, #5e7ce0),var(--devui-brand, #5e7ce0)) no-repeat center/0%;margin-right:8px;vertical-align:text-bottom}.devui-checkbox .devui-checkbox__material.devui-checkbox__default-background{background-color:var(--devui-base-bg, #ffffff)}.devui-checkbox .devui-checkbox__material.devui-checkbox--no-label{margin-right:0}.devui-checkbox .devui-checkbox__material>.devui-checkbox__halfchecked-bg{display:inline-block;position:absolute;content:"";background-color:var(--devui-light-text, #ffffff);top:0;left:0;height:100%;width:100%;transform:scale(1);opacity:0}.devui-checkbox .devui-checkbox__material>svg{width:14px;height:14px}.devui-checkbox:not(.disabled).half-checked .devui-checkbox__material:not(.custom-color):focus,.devui-checkbox:not(.disabled).half-checked .devui-checkbox__material:not(.custom-color):active,.devui-checkbox:not(.disabled).half-checked .devui-checkbox__material:not(.custom-color):hover{background-color:var(--devui-icon-fill-active, #5e7ce0)}.devui-checkbox:not(.disabled).half-checked .devui-checkbox__material:not(.custom-color):active,.devui-checkbox:not(.disabled).half-checked .devui-checkbox__material:not(.custom-color):focus,.devui-checkbox:not(.disabled).half-checked .devui-checkbox__material:not(.custom-color):hover:active,.devui-checkbox:not(.disabled).half-checked .devui-checkbox__material:not(.custom-color):hover:focus{background-color:var(--devui-brand-active-focus, #344899)}.devui-checkbox__input{opacity:0;position:absolute;margin:0;z-index:-1;width:0;height:0;overflow:hidden;left:0;pointer-events:none}.devui-checkbox label{position:relative;font-weight:400;height:16px;line-height:16px;cursor:pointer;color:var(--devui-text, #252b3a);margin:0;display:block}.devui-checkbox label>span{display:inline-block;box-sizing:content-box;vertical-align:top}.devui-checkbox.disabled label{cursor:not-allowed;color:var(--devui-disabled-text, #adb0b8)}.devui-checkbox.disabled .devui-checkbox__material{border-color:var(--devui-icon-fill-active-disabled, #beccfa);background-color:var(--devui-icon-fill-active-disabled, #beccfa)}.devui-checkbox.disabled.unchecked .devui-checkbox__material{border-color:var(--devui-disabled-line, #dfe1e6);background-color:var(--devui-disabled-bg, #f5f5f6)}.devui-checkbox.disabled.half-checked .devui-checkbox__material{background-color:var(--devui-disabled-bg, #f5f5f6)}.devui-checkbox.disabled.half-checked .devui-checkbox__material .devui-checkbox__halfchecked-bg{transform:scale(.4288);background-color:var(--devui-disabled-text, #adb0b8);opacity:1}.devui-checkbox.disabled.active svg polygon{fill:var(--devui-light-text, #ffffff)}.devui-checkbox--no-animation{transition:none!important}.devui-checkbox__column-margin{height:28px;line-height:28px}.devui-checkbox__wrap .devui-checkbox label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}:host{display:block}.devui-checkbox-list-inline{min-height:28px;line-height:28px;display:flex;flex-wrap:wrap;justify-content:flex-start;align-items:center;margin:-8px 0 0}.devui-checkbox-list-inline div:not(:last-child){margin-right:20px}.devui-checkbox-list-inline>*{margin-top:8px}.devui-list{padding-bottom:4px;border-radius:var(--devui-border-radius, 2px);box-sizing:border-box;background-clip:padding-box;background-color:var(--devui-connected-overlay-bg, #ffffff);outline:none}.devui-list-item{display:flex;align-items:center;width:100%;height:36px;line-height:36px;padding:0 8px;color:var(--devui-text, #252b3a);box-sizing:border-box;cursor:pointer;transition:color var(--devui-animation-duration-fast, .1s) var(--devui-animation-ease-in-out-smooth, cubic-bezier(.645, .045, .355, 1)),background-color var(--devui-animation-duration-fast, .1s) var(--devui-animation-ease-in-out-smooth, cubic-bezier(.645, .045, .355, 1))}.devui-list-item:hover{color:var(--devui-list-item-hover-text, #526ecc);background-color:var(--devui-list-item-hover-bg, #f2f5fc)}.devui-list-item:active{color:var(--devui-list-item-active-text, #ffffff);background-color:var(--devui-list-item-active-bg, #5e7ce0)}.filter-wrapper{width:200px;background-color:var(--devui-connected-overlay-bg, #ffffff);border-radius:var(--devui-border-radius, 2px)}.filter-wrapper .filter-all-check{padding:0 8px 4px;border-bottom:1px solid var(--devui-dividing-line, #dfe1e6)}.filter-wrapper .filter-multiple-menu{width:100%;padding:4px 8px;border-bottom:1px solid var(--devui-dividing-line, #dfe1e6)}.filter-wrapper .filter-operation{display:flex;justify-content:center;align-items:center;padding:0 8px;height:26px}.filter-wrapper .filter-single-menu{width:100%}.filter-wrapper .filter-item{display:flex;align-items:center;height:30px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.filter-icon{display:inline-block;vertical-align:middle;cursor:pointer;height:16px;margin-top:-1px}.filter-icon>svg g{fill:var(--devui-dividing-line, #dfe1e6)}.filter-icon:hover>svg g{fill:var(--devui-icon-fill-active-hover, #526ecc)}.filter-item-active{background:var(--devui-list-item-active-bg, #5e7ce0);color:var(--devui-list-item-active-text, #ffffff)}.filter-icon-active{visibility:visible!important}.filter-icon-active>svg g{fill:var(--devui-icon-fill-active, #5e7ce0)}.filter-icon-active:hover>svg g{fill:var(--devui-icon-fill-active-hover, #526ecc)}.devui-table__thead tr{border:none;background-color:var(--devui-base-bg, #ffffff)}.devui-table__thead tr th{display:table-cell;text-align:left;padding:0 0 0 20px;border:none;border-bottom:1px solid var(--devui-line, #adb0b8)}.devui-table__thead tr .sort-active,.devui-table__thead tr .filter-active{background-color:var(--devui-list-item-hover-bg, #f2f5fc);border-radius:var(--devui-border-radius, 2px) 0 0 var(--devui-border-radius, 2px)}.devui-table__thead .header-container{position:relative;display:flex;align-items:center;padding-right:8px}.devui-table__thead .header-container .title{display:inline-block;width:calc(100% - 18px);font-size:var(--devui-font-size, 12px);color:var(--devui-text, #252b3a);font-weight:700;line-height:36px;vertical-align:middle;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;cursor:default}.devui-table--header-bg thead.devui-table__thead tr{background:var(--devui-list-item-hover-bg, #f2f5fc)}.devui-table__tbody tr{font-size:var(--devui-font-size, 12px);color:var(--devui-text, #252b3a);background-color:var(--devui-base-bg, #ffffff);border:none}.devui-table__tbody tr.hover-enabled:hover{background-color:var(--devui-list-item-hover-bg, #f2f5fc)}.devui-table__tbody tr td{background-clip:padding-box;vertical-align:middle;word-wrap:break-word;word-break:normal;line-height:24px;border:none;border-bottom:1px solid var(--devui-dividing-line, #dfe1e6)}.devui-table--sticky-cell{position:sticky;z-index:5;background-color:inherit}.devui-table--sticky-cell.left{box-shadow:#0000000d var(--devui-shadow-length-slide-right, 2px 0 8px 0)}.devui-table--sticky-cell.right{box-shadow:#0000000d var(--devui-shadow-length-slide-left, -2px 0 8px 0)}.devui-table{position:relative;width:100%;overflow-x:auto;padding-top:8px}.devui-table .hidden-columns{position:absolute;visibility:hidden;z-index:-1}.devui-table__view{display:table;table-layout:fixed;width:100%;border-spacing:0;border-collapse:collapse;border:none;margin:0;padding:0}.devui-table--striped tbody tr:nth-child(even){background-color:var(--devui-list-item-strip-bg, #f2f5fc)}.devui-table__empty{width:100%;font-size:var(--devui-font-size, 12px);text-align:center}.devui-table__fix-header{display:flex;flex-direction:column;position:relative;height:100%}.devui-table__scroll-view{flex:1;overflow:scroll}.devui-table--layout-auto{table-layout:auto}.devui-table--sm tbody>tr>td{padding:7px 20px 8px}.devui-table--sm tbody>tr>td.devui-table__checkable-cell{padding:8px}.devui-table--sm thead>tr>th.devui-table__checkable-cell{padding:8px}.devui-table--md tbody>tr>td{padding:11px 20px 12px}.devui-table--md thead>tr>th.devui-table__checkable-cell{padding:8px 20px}.devui-table--lg tbody>tr>td{padding:15px 20px 16px}.devui-table--lg thead>tr>th.devui-table__checkable-cell{padding:8px 20px}.devui-table--borderless tbody>tr>td{border-bottom:none}.devui-table--bordered tr{border-left:1px solid var(--devui-dividing-line, #dfe1e6)}.devui-table--bordered tr td{border-right:1px solid var(--devui-dividing-line, #dfe1e6)}.devui-table--bordered thead tr th:first-child{border-left:1px solid var(--devui-dividing-line, #dfe1e6)}.devui-table--bordered thead tr th{border-top:1px solid var(--devui-dividing-line, #dfe1e6);border-right:1px solid var(--devui-dividing-line, #dfe1e6)}
1
+ .devui-table__sort-clickable{flex:1;height:20px;line-height:20px;margin-left:8px;margin-right:4px;vertical-align:-.55em;cursor:pointer}.devui-table__sort-default>svg g use{fill:var(--devui-dividing-line, #f2f2f3)}.devui-table__sort-default>svg g polygon{fill:var(--devui-icon-bg, #ffffff)}.devui-table__sort-default:hover>svg g use{fill:var(--devui-icon-fill-active-hover, #252b3a)}.devui-table__sort-asc>svg g use,.devui-table__sort-desc>svg g use{fill:var(--devui-icon-fill-active, #252b3a)}.devui-table__sort-asc>svg g polygon,.devui-table__sort-desc>svg g polygon{fill:var(--devui-icon-bg, #ffffff)}.devui-table__sort-asc:hover>svg g use,.devui-table__sort-desc:hover>svg g use{fill:var(--devui-icon-fill-active-hover, #252b3a)}.devui-table__sort-asc>svg g polygon:last-of-type{opacity:.3}.devui-table__sort-desc>svg g polygon:first-of-type{opacity:.3}.devui-fixed-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background-color:var(--devui-shadow, rgba(37, 43, 58, .2));z-index:1050}.devui-fixed-overlay--fade-enter-active,.devui-fixed-overlay--fade-leave-active{transition:opacity .1s cubic-bezier(0,0,1,1)}.devui-fixed-overlay--fade-enter-from,.devui-fixed-overlay--fade-leave-to{opacity:0}.devui-flexible-overlay{position:fixed;border-radius:var(--devui-border-radius, 2px);background-color:var(--devui-connected-overlay-bg, #ffffff);box-shadow:var(--devui-shadow-length-connected-overlay, 0 4px 8px 0) var(--devui-shadow, rgba(37, 43, 58, .2));z-index:1000}.devui-flexible-overlay__arrow{position:absolute;width:8px;height:8px;transform:rotate(45deg);background-color:inherit}.devui-dropdown span.icon-chevron-down,.devui-dropdown span.icon-select-arrow{display:inline-block;vertical-align:text-top}.devui-dropdown__menu-wrap .devui-dropdown-menu{width:100%}.devui-dropdown-animation span.icon-chevron-down,.devui-dropdown-animation span.icon-select-arrow{transition:transform var(--devui-animation-duration-slow, .3s) var(--devui-animation-ease-in-out-smooth, cubic-bezier(.645, .045, .355, 1))}.devui-dropdown.open span.icon-chevron-down,.devui-dropdown.open span.icon-select-arrow{transform:rotate(180deg)}.fade-in-top{animation:fadeInTop .2s cubic-bezier(.16,.75,.5,1)}.fade-in-bottom{animation:fadeInBottom .2s cubic-bezier(.16,.75,.5,1)}@keyframes fadeInTop{0%{opacity:.8;transform:scaleY(.8) translateY(4px)}to{opacity:1;transform:scaleY(.9999) translateY(0)}}@keyframes fadeInBottom{0%{opacity:.8;transform:scaleY(.8) translateY(-4px)}to{opacity:1;transform:scaleY(.9999) translateY(0)}}.devui-dropdown--fade-bottom-enter-from,.devui-dropdown--fade-bottom-leave-to{opacity:.8;transform:scaleY(.8) translateY(-4px)}.devui-dropdown--fade-bottom-enter-to,.devui-dropdown--fade-bottom-leave-from{opacity:1;transform:scaleY(.9999) translateY(0)}.devui-dropdown--fade-bottom-enter-active{transition:transform .2s cubic-bezier(.16,.75,.5,1),opacity .2s cubic-bezier(.16,.75,.5,1)}.devui-dropdown--fade-bottom-leave-active{transition:transform .2s cubic-bezier(.5,0,.84,.25),opacity .2s cubic-bezier(.5,0,.84,.25)}.devui-dropdown--fade-top-enter-from,.devui-dropdown--fade-top-leave-to{opacity:.8;transform:scaleY(.8) translateY(4px)}.devui-dropdown--fade-top-enter-to,.devui-dropdown--fade-top-leave-from{opacity:1;transform:scaleY(.9999) translateY(0)}.devui-dropdown--fade-top-enter-active{transition:transform .2s cubic-bezier(.16,.75,.5,1),opacity .2s cubic-bezier(.16,.75,.5,1)}.devui-dropdown--fade-top-leave-active{transition:transform .2s cubic-bezier(.5,0,.84,.25),opacity .2s cubic-bezier(.5,0,.84,.25)}.devui-icon__container{display:inline-block;color:var(--devui-icon-fill, #71757f)}.devui-icon__container>*:not(:last-child){vertical-align:middle;margin-right:8px}.devui-icon__container i{vertical-align:middle;transition:all var(--devui-animation-duration-slow, .3s) var(--devui-animation-ease-in-out-smooth, cubic-bezier(.645, .045, .355, 1))}.devui-icon--no-slots i,.devui-icon--no-slots img{display:block}.devui-icon--disabled{color:var(--devui-disabled-text, #adb0b8);cursor:not-allowed}.devui-icon--disabled i{color:var(--devui-disabled-text, #adb0b8)}.devui-icon--operable:not(.devui-icon--disabled){cursor:pointer;transition:color var(--devui-animation-duration-slow, .3s) var(--devui-animation-ease-in-out-smooth, cubic-bezier(.645, .045, .355, 1))}.devui-icon--operable:not(.devui-icon--disabled) i{cursor:pointer}.devui-icon--operable:hover:not(.devui-icon--disabled){color:var(--devui-icon-fill-hover, #252b3a)}.devui-icon--operable:hover:not(.devui-icon--disabled).devui-icon__container{background-color:var(--devui-icon-background-hover, var(--devui-list-item-hover-bg, #f2f2f3))}.devui-icon--operable:hover:not(.devui-icon--disabled) i{color:var(--devui-icon-fill-hover, #252b3a)}.devui-icon--operable:active:not(.devui-icon--disabled){color:var(--devui-icon-active-color, var(--devui-icon-fill-active, #252b3a))}.devui-icon--operable:active:not(.devui-icon--disabled).devui-icon__container{background-color:var(--devui-icon-background-active, var(--devui-list-item-active-bg, #f2f5fc))}.devui-icon--operable:active:not(.devui-icon--disabled) i{color:var(--devui-icon-active-color, var(--devui-icon-fill-active, #252b3a))}.devui-icon--operable.devui-icon__container{height:32px;line-height:32px;padding:0 8px;margin-left:-8px;border-radius:var(--devui-border-radius, 2px);transition:all var(--devui-animation-duration-slow, .3s) var(--devui-animation-ease-in-out-smooth, cubic-bezier(.645, .045, .355, 1))}.devui-icon--spin{animation:iconSpin 2.5s linear infinite}.devui-svg-icon{vertical-align:middle}@keyframes iconSpin{0%{transform:rotate(0)}50%{transform:rotate(180deg)}to{transform:rotate(360deg)}}.devui-icon-group{display:inline-flex;align-items:center}.devui-icon-group>.devui-icon__container:not(.devui-icon--operable){padding:8px;margin-left:0}.devui-icon-group>.devui-icon__container:not(.devui-icon--operable):first-child{margin-left:-8px}.devui-icon-group>*:not(:first-child){margin-left:0}@keyframes devui-busy-spinner-anim{0%{transform:rotate(0) scale(1)}50%{transform:rotate(180deg) scale(1.5)}to{transform:rotate(360deg) scale(1)}}.devui-loading__mask{z-index:var(--devui-z-index-full-page-overlay, 1080);position:absolute;left:0;right:0;bottom:0;top:0;background-color:var(--devui-line, #d7d8da);opacity:.3}.devui-loading__wrapper{text-align:center}.devui-loading--full{position:fixed;left:0;right:0;bottom:0;top:0;z-index:var(--devui-z-index-full-page-overlay, 1080)}.devui-loading--hidden{overflow:hidden}.devui-loading__text{margin-left:10px}.devui-loading__area{position:absolute;transform:translate(-50%,-50%);padding:12px 14px;background:var(--devui-base-bg, #ffffff);border-radius:var(--devui-border-radius-card, 6px)}.devui-loading__busy-default-spinner{position:relative;display:inline-block;width:15px;height:15px;animation:devui-busy-spinner-anim 1s linear infinite}.devui-loading__busy-default-spinner div{position:absolute;left:44.5%;top:37%;width:6px;height:6px;border-radius:50%}.devui-loading__busy-default-spinner .devui-loading__bar1{top:0;left:0;background:#5e7ce0;background:var(--devui-brand, #5e7ce0)}.devui-loading__busy-default-spinner .devui-loading__bar2{top:0;left:9px;background:#859bff;background:var(--devui-brand-foil, #859bff)}.devui-loading__busy-default-spinner .devui-loading__bar3{top:9px;left:0;background:#859bff;background:var(--devui-brand-foil, #859bff)}.devui-loading__busy-default-spinner .devui-loading__bar4{top:9px;left:9px;background:#5e7ce0;background:var(--devui-brand, #5e7ce0)}.devui-button{padding:var(--devui-btn-padding, 0 20px);font-size:var(--devui-font-size-md, 14px);line-height:var(--devui-line-height-base, 1.5);border-radius:var(--devui-border-radius, 2px);border-width:1px;border-color:transparent;background-color:transparent}.devui-button:hover{cursor:pointer}.devui-button:disabled{cursor:not-allowed}.devui-button--is-loading{pointer-events:none}.devui-button--solid{color:var(--devui-light-text, #ffffff);min-width:64px}.devui-button--solid i{color:var(--devui-light-text, #ffffff)}.devui-button--solid--secondary{color:var(--devui-text, #252b3a);border-color:var(--devui-btn-common-border-color, var(--devui-line, #d7d8da));background-color:var(--devui-btn-common-bg, var(--devui-base-bg, #ffffff))}.devui-button--solid--secondary:hover{color:var(--devui-btn-common-color-hover, var(--devui-brand-active, #526ecc));border-color:var(--devui-btn-common-border-color-hover, var(--devui-form-control-line-active, #5e7ce0));background-color:var(--devui-btn-common-bg-hover, var(--devui-base-bg, #ffffff))}.devui-button--solid--secondary:focus{color:var(--devui-btn-common-color-active, var(--devui-brand-active, #526ecc));border-color:var(--devui-btn-common-border-color-active, var(--devui-form-control-line-active, #5e7ce0));background-color:var(--devui-btn-common-bg-hover, var(--devui-base-bg, #ffffff))}.devui-button--solid--secondary:active{color:var(--devui-btn-common-color-active, var(--devui-brand-active, #526ecc));border-color:var(--devui-btn-common-border-color-active, var(--devui-form-control-line-active, #5e7ce0));background-color:var(--devui-btn-common-bg-hover, var(--devui-base-bg, #ffffff))}.devui-button--solid--secondary:disabled{opacity:.8}.devui-button--solid--primary{background-color:var(--devui-primary, #5e7ce0)}.devui-button--solid--primary:hover{background-color:var(--devui-primary-hover, #7693f5)}.devui-button--solid--primary:focus{background-color:var(--devui-primary-hover, #7693f5)}.devui-button--solid--primary:active{background-color:var(--devui-primary-active, #344899)}.devui-button--solid--primary:disabled{color:var(--devui-light-text, #ffffff);background:var(--devui-primary-disabled, #beccfa);border:none}.devui-button--solid--danger{background-color:var(--devui-contrast, #c7000b)}.devui-button--solid--danger:hover{background-color:var(--devui-contrast-hover, #d64a52)}.devui-button--solid--danger:focus{background-color:var(--devui-contrast-hover, #d64a52)}.devui-button--solid--danger:active{background-color:var(--devui-contrast-active, #b12220)}.devui-button--solid--danger:disabled{background-color:var(--devui-contrast-disabled, #ffbcba)}.devui-button--outline{background-color:var(--devui-block, #ffffff);border-style:solid}.devui-button--outline--secondary{color:var(--devui-text, #252b3a);border-color:var(--devui-line, #d7d8da)}.devui-button--outline--secondary:hover{color:var(--devui-brand-active, #526ecc);border-color:var(--devui-form-control-line-active, #5e7ce0)}.devui-button--outline--secondary:focus{color:var(--devui-brand-active, #526ecc);border-color:var(--devui-form-control-line-active, #5e7ce0)}.devui-button--outline--secondary:active{color:var(--devui-brand-active, #526ecc);border-color:var(--devui-form-control-line-active, #5e7ce0)}.devui-button--outline--secondary:disabled{color:var(--devui-disabled-text, #adb0b8);border-color:var(--devui-disabled-line, #dfe1e6);background-color:var(--devui-disabled-bg, #f5f5f5)}.devui-button--outline--primary{color:var(--devui-brand-active, #526ecc);border-color:var(--devui-form-control-line-active, #5e7ce0)}.devui-button--outline--primary:hover{color:var(--devui-brand-active-focus, #344899);border-color:var(--devui-form-control-line-active-hover, #344899)}.devui-button--outline--primary:focus{color:var(--devui-brand-active-focus, #344899);border-color:var(--devui-form-control-line-active-hover, #344899)}.devui-button--outline--primary:active{color:var(--devui-brand-active-focus, #344899);border-color:var(--devui-form-control-line-active-hover, #344899)}.devui-button--outline--primary:disabled{opacity:.8;color:var(--devui-brand-active, #526ecc);border-color:var(--devui-form-control-line-active, #5e7ce0)}.devui-button--outline--danger{color:var(--devui-contrast, #c7000b);border-color:var(--devui-contrast, #c7000b)}.devui-button--outline--danger:hover,.devui-button--outline--danger:focus,.devui-button--outline--danger:active,.devui-button--outline--danger:disabled{opacity:.8}.devui-button--text{padding:0}.devui-button--text--secondary{color:var(--devui-text, #252b3a)}.devui-button--text--secondary:hover{color:var(--devui-list-item-hover-text, #252b3a)}.devui-button--text--secondary:focus{color:var(--devui-list-item-hover-text, #252b3a)}.devui-button--text--secondary:active{color:var(--devui-list-item-hover-text, #252b3a)}.devui-button--text--secondary:disabled{color:var(--devui-disabled-text, #adb0b8)}.devui-button--text--primary{color:var(--devui-brand-active, #526ecc)}.devui-button--text--primary:hover{color:var(--devui-link-active, #526ecc)}.devui-button--text--primary:focus{color:var(--devui-brand-active-focus, #344899)}.devui-button--text--primary:active{color:var(--devui-brand-active-focus, #344899)}.devui-button--text--primary:disabled{opacity:.8}.devui-button--text--danger{color:var(--devui-contrast, #c7000b)}.devui-button--text--danger:hover,.devui-button--text--danger:focus,.devui-button--text--danger:active,.devui-button--text--danger:disabled{opacity:.8}.devui-button--xs{padding:0 4px;height:24px;font-size:var(--devui-font-size-sm, 12px);min-width:48px}.devui-button--sm{padding:var(--devui-btn-sm-padding, 0 16px);height:24px;font-size:var(--devui-font-size-sm, 12px);min-width:56px}.devui-button--lg{padding:var(--devui-btn-lg-padding, 0 24px);height:40px;font-size:var(--devui-font-size-lg, 14px);min-width:72px}.devui-button.devui-button__icon:not(.devui-button--solid):hover,.devui-button.devui-button__icon:not(.devui-button--solid):focus{border:1px solid var(--devui-list-item-hover-bg, #f2f2f3);background-color:var(--devui-list-item-hover-bg, #f2f2f3)}.devui-button.devui-button__icon:not(.devui-button--solid):disabled{background-color:var(--devui-disabled-bg, #f5f5f5)}.devui-button:not(:disabled).devui-button--text.devui-button__icon-wrap{color:var(--devui-text, #252b3a)}.devui-button:not(:disabled).devui-button--text.devui-button__icon-wrap .devui-button__icon-fix{color:var(--devui-text-weak, #575d6c)}.devui-button:not(:disabled).devui-button--text.devui-button__icon-wrap:hover{color:var(--devui-list-item-hover-text, #252b3a)}.devui-button:not(:disabled).devui-button--text.devui-button__icon-wrap:hover .devui-button__icon-fix{color:var(--devui-icon-fill-active, #252b3a)}.devui-button:not(:disabled).devui-button--text.devui-button__icon-wrap:hover .button-content{color:var(--devui-brand, #5e7ce0)}.devui-button--circle{border-radius:100%}.devui-button--round{border-radius:20px}.devui-loading .devui-loading-default-spinner div{background-color:var(--devui-text, #252b3a)}.devui-button{transition:background-color var(--devui-animation-duration-slow, .3s) var(--devui-animation-ease-in-out-smooth, cubic-bezier(.645, .045, .355, 1)),border-color var(--devui-animation-duration-slow, .3s) var(--devui-animation-ease-in-out-smooth, cubic-bezier(.645, .045, .355, 1)),color var(--devui-animation-duration-slow, .3s) var(--devui-animation-ease-in-out-smooth, cubic-bezier(.645, .045, .355, 1));white-space:nowrap;display:inline-flex;align-items:center;justify-content:center;border-style:solid}.devui-button.devui-button__icon{padding:8px;line-height:1em;min-width:unset}.devui-button.devui-button__icon:not(.devui-button--circle){border:1px solid transparent}.devui-button.devui-button__icon.devui-button--xs,.devui-button.devui-button__icon.devui-button--sm{padding:4px;min-width:24px}.devui-button.devui-button__icon.devui-button--lg{min-width:32px}.devui-button.devui-button__icon.devui-button--lg .icon{font-size:var(--devui-font-size-icon, 16px)}.devui-button.devui-button__icon.devui-button--circle{width:32px}.devui-button.devui-button__icon.devui-button--circle.devui-button--xs,.devui-button.devui-button__icon.devui-button--circle.devui-button--sm{width:24px}.devui-button.devui-button__icon.devui-button--circle.devui-button--lg{width:40px}.devui-button:not(.devui-button__icon) .icon-fix{font-size:var(--devui-font-size-icon, 16px)}.devui-button__icon-fix{position:relative;font-size:var(--devui-font-size, 14px)}.button-content{display:inline-block;position:relative}.clear-right-5{margin-right:5px}.devui-button-group{display:flex}.devui-button-group>*{position:relative}.devui-button-group>*:not(:first-child),.devui-button-group>*:not(:first-child) .devui-button{border-top-left-radius:0;border-bottom-left-radius:0;margin-left:-1px}.devui-button-group>*:not(:first-child).devui-button--solid--primary,.devui-button-group>*:not(:first-child) .devui-button.devui-button--solid--primary{border-left:1px solid var(--devui-brand-hover, #7693f5);margin-left:0}.devui-button-group>*:not(:last-child),.devui-button-group>*:not(:last-child) .devui-button{border-top-right-radius:0;border-bottom-right-radius:0}.devui-button-group>*:hover,.devui-button-group>*:active{z-index:1}.devui-button-group>*:focus-within{z-index:1}.devui-popover__icon-wrap{width:16px;height:16px;margin-right:8px}.devui-popover__icon-wrap .devui-popover__icon.devui-popover__icon--success>g>path{fill:var(--devui-success, #50d4ab)}.devui-popover__icon-wrap .devui-popover__icon.devui-popover__icon--success>g>circle,.devui-popover__icon-wrap .devui-popover__icon.devui-popover__icon--success>g>polygon{fill:var(--devui-light-text, #ffffff)}.devui-popover__icon-wrap .devui-popover__icon.devui-popover__icon--warning>g>path{fill:var(--devui-warning, #fac20a)}.devui-popover__icon-wrap .devui-popover__icon.devui-popover__icon--warning>g>polygon{fill:var(--devui-light-text, #ffffff)}.devui-popover__icon-wrap .devui-popover__icon.devui-popover__icon--info>g>g{fill:var(--devui-info, #5e7ce0)}.devui-popover__icon-wrap .devui-popover__icon.devui-popover__icon--info>g>circle{fill:var(--devui-light-text, #ffffff)}.devui-popover__icon-wrap .devui-popover__icon.devui-popover__icon--error>g>path{fill:var(--devui-danger, #f66f6a)}.devui-popover__icon-wrap .devui-popover__icon.devui-popover__icon--error>g>circle{fill:var(--devui-light-text, #ffffff)}.devui-popover__content.devui-flexible-overlay{display:flex;flex-wrap:wrap;align-items:center;white-space:nowrap;padding:4px 12px;line-height:1.5;border-radius:var(--devui-border-radius-feedback, 4px);color:var(--devui-feedback-overlay-text, #dfe1e6);background-color:var(--devui-feedback-overlay-bg, #464d6e);font-size:var(--devui-font-size-sm, 12px)}.devui-popover__content.devui-flexible-overlay.is-icon{flex-wrap:nowrap}.devui-popover--fade-bottom-enter-from,.devui-popover--fade-bottom-leave-to,.devui-popover--fade-top-enter-from,.devui-popover--fade-top-leave-to{opacity:.8;transform:scaleY(.8)}.devui-popover--fade-bottom-enter-to,.devui-popover--fade-bottom-leave-from,.devui-popover--fade-top-enter-to,.devui-popover--fade-top-leave-from{opacity:1;transform:scaleY(1)}.devui-popover--fade-bottom-enter-active,.devui-popover--fade-top-enter-active{transition:transform .1s cubic-bezier(.16,.75,.5,1),opacity .1s cubic-bezier(.16,.75,.5,1)}.devui-popover--fade-bottom-leave-active,.devui-popover--fade-top-leave-active{transition:transform .1s cubic-bezier(.5,0,.84,.25),opacity .1s cubic-bezier(.5,0,.84,.25)}.devui-popover--fade-left-enter-from,.devui-popover--fade-left-leave-to,.devui-popover--fade-right-enter-from,.devui-popover--fade-right-leave-to{opacity:.8;transform:scaleX(.8)}.devui-popover--fade-left-enter-to,.devui-popover--fade-left-leave-from,.devui-popover--fade-right-enter-to,.devui-popover--fade-right-leave-from{opacity:1;transform:scaleX(1)}.devui-popover--fade-left-enter-active,.devui-popover--fade-right-enter-active{transition:transform .1s cubic-bezier(.16,.75,.5,1),opacity .1s cubic-bezier(.16,.75,.5,1)}.devui-popover--fade-left-leave-active,.devui-popover--fade-right-leave-active{transition:transform .1s cubic-bezier(.5,0,.84,.25),opacity .1s cubic-bezier(.5,0,.84,.25)}.devui-form__label{align-self:flex-start}.devui-form__label--vertical{padding-bottom:8px}.devui-form__label--sm{flex:0 0 80px}.devui-form__label--md{flex:0 0 100px}.devui-form__label--lg{flex:0 0 150px}.devui-form__label--start{text-align:left}.devui-form__label--center{text-align:center}.devui-form__label--end{text-align:end}.devui-form__label-span{display:inline-block;vertical-align:middle;color:var(--devui-text, #252b3a)}.devui-form__label--required:before{content:"*";color:red;display:inline-block;margin-right:8px;margin-left:-12px}.devui-form__label-help{position:relative;top:-.1em;display:inline-block;vertical-align:middle;margin-left:4px;cursor:pointer}.devui-form__control{flex:1 1 auto;position:relative;width:100%}.devui-form__control--horizontal{margin-left:16px}.devui-form__control .devui-star{color:red}.devui-form__control .devui-form__control-container{position:relative}.devui-form__control .devui-form__control-container--horizontal{display:flex;width:100%}.devui-form__control .devui-form__control-container--horizontal .devui-validate-tip{margin:0}.devui-form__control .devui-form__control-container .devui-form__feedback-icon{position:absolute;top:50%;right:0;z-index:1;width:32px;height:16px;text-align:center;visibility:visible;pointer-events:none;transform:translateY(-50%);display:flex;align-items:center;justify-content:center}.devui-form__control .devui-form__control-container .devui-form__feedback-icon--error svg circle{fill:var(--devui-danger, #f66f6a)}.devui-form__control .devui-form__control-container .devui-form__feedback-icon--error svg polygon{fill:var(--devui-base-bg, #ffffff)}.devui-form__control .devui-form__control-container .devui-form__feedback-icon--success svg circle{fill:var(--devui-success, #50d4ab)}.devui-form__control .devui-form__control-container .devui-form__feedback-icon--success svg polygon{fill:var(--devui-base-bg, #ffffff)}.devui-form__control .devui-form__control-container .devui-form__feedback-icon--pending svg{animation:loading-keyframes 1s infinite linear}.devui-form__control .devui-form__control-container .devui-form__feedback-icon--pending svg path{fill:var(--devui-brand, #5e7ce0)}.devui-form__control .devui-form__control-container--has-feedback{display:flex;align-items:center}.devui-form__control .devui-form__control-container--has-feedback input{padding-right:28px}.devui-form__control .devui-form__control-container--feedback-error{border:1px solid #f66f6a;border-radius:2px}.devui-form__control .devui-form__control-container--feedback-error input{background-color:#ffeeed;border-color:transparent}.devui-form__control .devui-form__control-container--feedback-error input:hover{border-color:transparent!important}.devui-form__control .devui-form__control-container--feedback-error input:focus{border-color:transparent!important}.devui-form__control .devui-form__control-container--feedback-error .devui-select-arrow{right:24px!important}.devui-form__control .devui-form__control-info{line-height:1}.devui-form__control .devui-form__control-info .error-message{display:inline-block;min-height:20px;line-height:1.5;font-size:var(--devui-font-size, 14px);color:var(--devui-danger, #f66f6a)}.devui-form__control .devui-form__control-info .devui-form__control-extra{font-size:var(--devui-font-size, 14px);color:var(--devui-aide-text, #71757f);min-height:20px;line-height:1.5;text-align:justify}@keyframes loading-keyframes{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.devui-form__item--horizontal{display:flex;align-items:center;margin-bottom:20px}.devui-form__item--vertical{display:flex;flex-direction:column;margin-bottom:20px}.devui-form__item--error{margin-bottom:0}.devui-form-operation .star{color:red}.devui-checkbox{position:relative;display:flex;display:-ms-flexbox;align-items:center;-ms-flex-align:center;height:100%;margin:0}.devui-checkbox .devui-checkbox__tick-wrap{position:absolute}.devui-checkbox .devui-checkbox__tick-wrap .devui-checkbox__tick{fill:var(--devui-light-text, #ffffff);stroke-dashoffset:50;opacity:0;transform:scale(0);transform-origin:50% 50%;transition:stroke-dashoffset .2s ease-in-out,opacity .2s ease-in-out,transform .2s ease-in-out}.devui-checkbox.active:not(.half-checked) .devui-checkbox__tick{opacity:1;stroke-dashoffset:0;transform:scale(1);transition:stroke-dashoffset .3s cubic-bezier(.755,.05,.855,.06),opacity .2s cubic-bezier(.755,.05,.855,.06)}.devui-checkbox.active:not(.disabled) .devui-checkbox__material:not(.custom-color),.devui-checkbox.half-checked:not(.disabled) .devui-checkbox__material:not(.custom-color){border-color:var(--devui-brand, #5e7ce0)}.devui-checkbox.active .devui-checkbox--bordered,.devui-checkbox.half-checked .devui-checkbox--bordered{border-color:var(--devui-brand, #5e7ce0)}.devui-checkbox.active:not(.disabled) .devui-checkbox__material{background-size:100% 100%;transition:background-size .2s ease-in-out,border-color .2s ease-in-out}.devui-checkbox.unchecked:not(.disabled) .devui-checkbox__material:not(.custom-color){background-size:0% 0%;transition:background-size .2s ease-in-out,border-color .2s ease-in-out}.devui-checkbox.unchecked:not(.disabled) .devui-checkbox__material:not(.custom-color):hover{border-color:var(--devui-icon-fill-active, #252b3a)}.devui-checkbox.unchecked:not(.disabled) .devui-checkbox__material.custom-color{background-size:0% 0%;transition:background-size .2s ease-in-out,border-color .2s ease-in-out}.devui-checkbox.half-checked .devui-checkbox__material:not(.custom-color){background-color:var(--devui-brand, #5e7ce0)}.devui-checkbox.half-checked .devui-checkbox__material:not(.custom-color)>.devui-checkbox__halfchecked-bg{opacity:1;transform:scale(.4288);transition:transform .2s cubic-bezier(.755,.05,.855,.06);background-color:var(--devui-light-text, #ffffff)}.devui-checkbox.half-checked .devui-checkbox__material.custom-color>.devui-checkbox__halfchecked-bg{opacity:1;transform:scale(.4288);transition:transform .2s cubic-bezier(.755,.05,.855,.06);background-color:var(--devui-light-text, #ffffff)}.devui-checkbox .devui-checkbox__material{text-align:initial;height:14px;width:14px;position:relative;user-select:none;border:1px solid var(--devui-line, #d7d8da);border-radius:var(--devui-border-radius, 2px);background:linear-gradient(var(--devui-brand, #5e7ce0),var(--devui-brand, #5e7ce0)) no-repeat 50%/0;margin-right:8px;vertical-align:text-bottom}.devui-checkbox .devui-checkbox__material.devui-checkbox__default-background{background-color:var(--devui-base-bg, #ffffff)}.devui-checkbox .devui-checkbox__material.devui-checkbox--no-label{margin-right:0}.devui-checkbox .devui-checkbox__material>.devui-checkbox__halfchecked-bg{display:inline-block;position:absolute;content:"";background-color:var(--devui-light-text, #ffffff);top:0;left:0;height:100%;width:100%;transform:scale(1);opacity:0}.devui-checkbox .devui-checkbox__material>svg{width:14px;height:14px}.devui-checkbox:not(.disabled).half-checked .devui-checkbox__material:not(.custom-color):focus,.devui-checkbox:not(.disabled).half-checked .devui-checkbox__material:not(.custom-color):active,.devui-checkbox:not(.disabled).half-checked .devui-checkbox__material:not(.custom-color):hover{background-color:var(--devui-icon-fill-active, #252b3a)}.devui-checkbox:not(.disabled).half-checked .devui-checkbox__material:not(.custom-color):active,.devui-checkbox:not(.disabled).half-checked .devui-checkbox__material:not(.custom-color):focus,.devui-checkbox:not(.disabled).half-checked .devui-checkbox__material:not(.custom-color):hover:active,.devui-checkbox:not(.disabled).half-checked .devui-checkbox__material:not(.custom-color):hover:focus{background-color:var(--devui-brand-active-focus, #344899)}.devui-checkbox__input{opacity:0;position:absolute;margin:0;z-index:-1;width:0;height:0;overflow:hidden;left:0;pointer-events:none}.devui-checkbox label{position:relative;font-weight:400;height:16px;line-height:16px;cursor:pointer;color:var(--devui-text, #252b3a);margin:0;display:block}.devui-checkbox label.devui-checkbox--lg{font-size:var(--devui-font-size-lg, 14px)}.devui-checkbox label.devui-checkbox--lg .devui-checkbox__material{width:16px;height:16px}.devui-checkbox label.devui-checkbox--lg .devui-checkbox__material>svg{width:16px;height:16px}.devui-checkbox label.devui-checkbox--lg.devui-checkbox--bordered{height:40px;line-height:40px;padding:0 15px 0 10px}.devui-checkbox label.devui-checkbox--md{font-size:var(--devui-font-size-lg, 14px)}.devui-checkbox label.devui-checkbox--md .devui-checkbox__material{width:16px;height:16px}.devui-checkbox label.devui-checkbox--md .devui-checkbox__material>svg{width:16px;height:16px}.devui-checkbox label.devui-checkbox--md.devui-checkbox--bordered{height:36px;line-height:36px;padding:0 15px 0 10px}.devui-checkbox label.devui-checkbox--sm{font-size:var(--devui-font-size-sm, 12px)}.devui-checkbox label.devui-checkbox--sm .devui-checkbox__material{width:14px;height:14px}.devui-checkbox label.devui-checkbox--sm .devui-checkbox__material>svg{width:14px;height:14px}.devui-checkbox label.devui-checkbox--sm.devui-checkbox--bordered{height:32px;line-height:32px;padding:0 15px 0 10px}.devui-checkbox label.devui-checkbox--xs{font-size:var(--devui-font-size-sm, 12px)}.devui-checkbox label.devui-checkbox--xs .devui-checkbox__material{width:14px;height:14px}.devui-checkbox label.devui-checkbox--xs .devui-checkbox__material>svg{width:14px;height:14px}.devui-checkbox label.devui-checkbox--xs.devui-checkbox--bordered{height:28px;line-height:28px;padding:0 15px 0 10px}.devui-checkbox label.devui-checkbox--bordered{border:1px solid var(--devui-disabled-line, #dfe1e6);border-radius:var(--devui-border-radius, 2px)}.devui-checkbox label>span{display:inline-block;box-sizing:content-box;vertical-align:top}.devui-checkbox.disabled label{cursor:not-allowed;color:var(--devui-disabled-text, #adb0b8)}.devui-checkbox.disabled .devui-checkbox__material{border-color:var(--devui-icon-fill-active-disabled, #beccfa);background-color:var(--devui-icon-fill-active-disabled, #beccfa)}.devui-checkbox.disabled.unchecked .devui-checkbox__material{border-color:var(--devui-disabled-line, #dfe1e6);background-color:var(--devui-disabled-bg, #f5f5f5)}.devui-checkbox.disabled.half-checked .devui-checkbox__material{background-color:var(--devui-disabled-bg, #f5f5f5)}.devui-checkbox.disabled.half-checked .devui-checkbox__material .devui-checkbox__halfchecked-bg{transform:scale(.4288);background-color:var(--devui-disabled-text, #adb0b8);opacity:1}.devui-checkbox.disabled.active svg polygon{fill:var(--devui-light-text, #ffffff)}.devui-checkbox--no-animation{transition:none!important}.devui-checkbox__column-margin{height:28px;line-height:28px}.devui-checkbox__wrap .devui-checkbox label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.devui-checkbox__group{display:inline-block}.devui-checkbox--list-inline{min-height:28px;line-height:28px;display:flex;flex-wrap:wrap;justify-content:flex-start;align-items:center;margin:-8px 0 0}.devui-checkbox--list-inline div:not(:last-child){margin-right:20px}.devui-checkbox--list-inline>*{margin-top:8px}.devui-checkbox-button{display:inline-block;position:relative}.devui-checkbox-button__input{opacity:0;position:absolute;margin:0;z-index:-1;width:0;height:0;overflow:hidden;left:0;pointer-events:none}.devui-checkbox-button__content{font-size:14px;color:var(--devui-text, #252b3a);padding:10px 20px;cursor:pointer;border:1px solid var(--devui-disabled-line, #dfe1e6);border-left:none;display:inline-block;line-height:1;user-select:none;box-shadow:-1px 0 0 0 var(--devui-disabled-line, #dfe1e6)}.devui-checkbox-button__content.devui-checkbox-button--lg{font-size:var(--devui-font-size-lg, 14px);padding:12px 20px}.devui-checkbox-button__content.devui-checkbox-button--md{font-size:var(--devui-font-size-lg, 14px);padding:10px 20px}.devui-checkbox-button__content.devui-checkbox-button--sm{font-size:var(--devui-font-size-sm, 12px);padding:9px 15px}.devui-checkbox-button__content.devui-checkbox-button--xs{font-size:var(--devui-font-size-sm, 12px);padding:7px 15px}.devui-checkbox-button.active .devui-checkbox-button__content{color:#fff;background-color:var(--devui-brand, #5e7ce0);border-color:var(--devui-brand, #5e7ce0)}.devui-checkbox-button.active.disabled .devui-checkbox-button__content{color:#fff;background-color:var(--devui-icon-fill-active-disabled, #beccfa);border-color:var(--devui-icon-fill-active-disabled, #beccfa)}.devui-checkbox-button.disabled .devui-checkbox-button__content{cursor:not-allowed;color:var(--devui-disabled-text, #adb0b8);background-color:#fff;border-color:var(--devui-disabled-line, #dfe1e6)}.devui-checkbox-button:first-child .devui-checkbox-button__content{border-top-left-radius:var(--devui-border-radius, 2px);border-bottom-left-radius:var(--devui-border-radius, 2px);border-left:1px solid var(--devui-disabled-line, #dfe1e6);box-shadow:none}.devui-checkbox-button:last-child .devui-checkbox-button__content{border-top-right-radius:var(--devui-border-radius, 2px);border-bottom-right-radius:var(--devui-border-radius, 2px)}.devui-list{padding-bottom:4px;border-radius:var(--devui-border-radius, 2px);box-sizing:border-box;background-clip:padding-box;background-color:var(--devui-connected-overlay-bg, #ffffff);outline:none}.devui-list-item{display:flex;align-items:center;width:100%;height:36px;line-height:36px;padding:0 8px;color:var(--devui-text, #252b3a);box-sizing:border-box;cursor:pointer;transition:color var(--devui-animation-duration-fast, .1s) var(--devui-animation-ease-in-out-smooth, cubic-bezier(.645, .045, .355, 1)),background-color var(--devui-animation-duration-fast, .1s) var(--devui-animation-ease-in-out-smooth, cubic-bezier(.645, .045, .355, 1))}.devui-list-item:hover{color:var(--devui-list-item-hover-text, #252b3a);background-color:var(--devui-list-item-hover-bg, #f2f2f3)}.devui-list-item:active{color:var(--devui-list-item-active-text, #252b3a);background-color:var(--devui-list-item-active-bg, #f2f5fc)}.filter-wrapper{width:200px;background-color:var(--devui-connected-overlay-bg, #ffffff);border-radius:var(--devui-border-radius, 2px)}.filter-wrapper .filter-all-check{padding:0 8px 4px;border-bottom:1px solid var(--devui-dividing-line, #f2f2f3)}.filter-wrapper .filter-multiple-menu{width:100%;padding:4px 8px;border-bottom:1px solid var(--devui-dividing-line, #f2f2f3)}.filter-wrapper .filter-operation{display:flex;justify-content:center;align-items:center;padding:0 8px;height:26px}.filter-wrapper .filter-single-menu{width:100%}.filter-wrapper .filter-item{display:flex;align-items:center;height:30px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.filter-icon{flex:1;display:block;height:16px;text-align:right;cursor:pointer}.filter-icon>svg g{fill:var(--devui-dividing-line, #f2f2f3)}.filter-icon:hover>svg g{fill:var(--devui-icon-fill-active-hover, #252b3a)}.filter-item-active{background:var(--devui-list-item-active-bg, #f2f5fc);color:var(--devui-list-item-active-text, #252b3a)}.filter-icon-active{visibility:visible!important}.filter-icon-active>svg g{fill:var(--devui-icon-fill-active, #252b3a)}.filter-icon-active:hover>svg g{fill:var(--devui-icon-fill-active-hover, #252b3a)}.devui-table__thead tr{border:none;background-color:var(--devui-base-bg, #ffffff)}.devui-table__thead tr th{display:table-cell;text-align:left;padding:0;border:none;border-bottom:1px solid var(--devui-line, #d7d8da);background-color:inherit}.devui-table__thead tr th.is-left{text-align:left}.devui-table__thead tr th.is-center{text-align:center}.devui-table__thead tr th.is-right{text-align:right}.devui-table__thead tr .operable:hover{background-color:var(--devui-list-item-hover-bg, #f2f2f3)}.devui-table__thead tr .resizeable:hover .resize-handle{border-right:1px solid var(--devui-line, #d7d8da)}.devui-table__thead tr .resizeable .resize-handle:hover{border-right:2px solid var(--devui-form-control-line-active, #5e7ce0)}.devui-table__thead tr .sort-active,.devui-table__thead tr .filter-active{background-color:var(--devui-list-item-hover-bg, #f2f2f3);border-radius:var(--devui-border-radius, 2px) 0 0 var(--devui-border-radius, 2px)}.devui-table__thead .header-container{position:relative;display:flex;align-items:center;padding-left:20px;padding-right:8px}.devui-table__thead .header-container .title{display:inline-block;max-width:calc(100% - 18px);font-size:var(--devui-font-size, 14px);color:var(--devui-text, #252b3a);font-weight:700;line-height:36px;vertical-align:middle;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.devui-table__thead .header-container .resize-handle{display:inline-block;position:absolute;right:0;top:0;bottom:0;width:5px;cursor:col-resize}.devui-table__thead .header-container .resize-overlay{position:absolute;display:block;top:0;left:0;bottom:0;right:0;z-index:1000}.devui-table__thead .devui-table__checkable-cell .header-container{padding-left:0}.devui-table--header-bg thead.devui-table__thead tr{background:var(--devui-list-item-hover-bg, #f2f5fc)}.devui-table__tbody tr{font-size:var(--devui-font-size, 14px);color:var(--devui-text, #252b3a);background-color:var(--devui-base-bg, #ffffff);border:none}.devui-table__tbody tr.hover-enabled:hover{background-color:var(--devui-list-item-hover-bg, #f2f2f3)}.devui-table__tbody tr.hover-enabled:hover .devui-table--last-sticky-left{background:linear-gradient(to left,transparent,var(--devui-list-item-hover-bg, #f2f2f3) 10px)}.devui-table__tbody tr.hover-enabled:hover .devui-table--first-sticky-right{background:linear-gradient(to right,transparent,var(--devui-list-item-hover-bg, #f2f2f3) 10px)}.devui-table__tbody tr td .icon-expand-row:hover{cursor:pointer}.devui-table__tbody tr.expanded td .icon-expand-row{transform:rotate(45deg)}.devui-table__tbody tr td{background-clip:padding-box;background-color:inherit;vertical-align:middle;line-height:24px;border:none;border-bottom:1px solid var(--devui-dividing-line, #f2f2f3)}.devui-table__tbody tr td.is-left{text-align:left}.devui-table__tbody tr td.is-center{text-align:center}.devui-table__tbody tr td.is-right{text-align:right}.devui-table__tbody tr td .editable-cell{position:relative;margin-left:-8px;padding-left:8px;cursor:pointer}.devui-table__tbody tr td .editable-cell:hover:after{content:"";display:block;position:absolute;width:100%;height:100%;top:0;left:0;border:1px solid var(--devui-line, #d7d8da);border-radius:var(--devui-border-radius, 2px);pointer-events:none}.devui-table__tbody tr td .devui-table__cell{width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.devui-table__tbody tr td .devui-table__cell .cell-text{height:32px;line-height:32px;overflow:hidden;text-overflow:ellipsis}.devui-table__tbody .is-hidden{display:none}.devui-table__lazy__flag{width:0;height:0}.devui-table--sticky-cell{position:sticky;z-index:5}.devui-table--scroll-middle .devui-table--last-sticky-left,.devui-table--scroll-right .devui-table--last-sticky-left{background:linear-gradient(to left,transparent,var(--devui-base-bg, #ffffff) 10px)}.devui-table--scroll-middle .devui-table--last-sticky-left:after,.devui-table--scroll-right .devui-table--last-sticky-left:after{content:"";position:absolute;top:0;right:0;bottom:0;width:10px;pointer-events:none;box-shadow:inset var(--devui-table-inset-shadow-left, 8px 0 8px -4px) var(--devui-light-shadow, rgba(37, 43, 58, .1))}.devui-table--scroll-middle .devui-table--first-sticky-right,.devui-table--scroll-left .devui-table--first-sticky-right{background:linear-gradient(to right,transparent,var(--devui-base-bg, #ffffff) 10px)}.devui-table--scroll-middle .devui-table--first-sticky-right:before,.devui-table--scroll-left .devui-table--first-sticky-right:before{content:"";position:absolute;top:0;left:0;bottom:0;width:10px;pointer-events:none;box-shadow:inset var(--devui-table-inset-shadow-right, -8px 0 8px -4px) var(--devui-light-shadow, rgba(37, 43, 58, .1))}.devui-tooltip{max-width:200px;min-height:26px;padding:4px 16px;font-size:var(--devui-font-size, 14px);color:var(--devui-feedback-overlay-text, #dfe1e6);letter-spacing:0;line-height:1.5;background:var(--devui-feedback-overlay-bg, #464d6e);box-shadow:none;overflow-wrap:break-word;word-break:break-word;word-wrap:break-word;text-align:start;border-radius:var(--devui-border-radius-feedback, 4px);font-style:normal;font-weight:400;line-break:auto;text-decoration:none;text-shadow:none;text-transform:none;word-spacing:normal;white-space:normal;opacity:1;z-index:var(--devui-z-index-pop-up, 1060)}.devui-tooltip--fade-bottom-enter-from,.devui-tooltip--fade-bottom-leave-to,.devui-tooltip--fade-top-enter-from,.devui-tooltip--fade-top-leave-to{opacity:.8;transform:scaleY(.8)}.devui-tooltip--fade-bottom-enter-to,.devui-tooltip--fade-bottom-leave-from,.devui-tooltip--fade-top-enter-to,.devui-tooltip--fade-top-leave-from{opacity:1;transform:scaleY(1)}.devui-tooltip--fade-bottom-enter-active,.devui-tooltip--fade-top-enter-active{transition:transform .1s cubic-bezier(.16,.75,.5,1),opacity .1s cubic-bezier(.16,.75,.5,1)}.devui-tooltip--fade-bottom-leave-active,.devui-tooltip--fade-top-leave-active{transition:transform .1s cubic-bezier(.5,0,.84,.25),opacity .1s cubic-bezier(.5,0,.84,.25)}.devui-tooltip--fade-left-enter-from,.devui-tooltip--fade-left-leave-to,.devui-tooltip--fade-right-enter-from,.devui-tooltip--fade-right-leave-to{opacity:.8;transform:scaleX(.8)}.devui-tooltip--fade-left-enter-to,.devui-tooltip--fade-left-leave-from,.devui-tooltip--fade-right-enter-to,.devui-tooltip--fade-right-leave-from{opacity:1;transform:scaleX(1)}.devui-tooltip--fade-left-enter-active,.devui-tooltip--fade-right-enter-active{transition:transform .1s cubic-bezier(.16,.75,.5,1),opacity .1s cubic-bezier(.16,.75,.5,1)}.devui-tooltip--fade-left-leave-active,.devui-tooltip--fade-right-leave-active{transition:transform .1s cubic-bezier(.5,0,.84,.25),opacity .1s cubic-bezier(.5,0,.84,.25)}.devui-table{position:relative;display:flex;width:100%;overflow-x:auto}.devui-table .hidden-columns{position:absolute;visibility:hidden;z-index:-1}.devui-table__container{flex:1;overflow:auto}.devui-table__view{display:table;table-layout:fixed;width:100%;border-spacing:0;border-collapse:collapse;border:none;margin:0;padding:0}.devui-table--striped tbody tr:nth-child(even){background-color:var(--devui-list-item-strip-bg, #f2f5fc)}.devui-table__empty{padding:40px 0;background-color:var(--devui-base-bg, #ffffff)}.devui-table__fix-header{display:flex;flex-direction:column;position:relative;height:100%;overflow:auto}.devui-table__fix-header>.devui-table__header-wrapper{position:sticky;top:0;z-index:10}.devui-table__scroll-view{flex:1}.devui-table--layout-auto{table-layout:auto}.devui-table--sm tbody>tr>td{font-size:var(--devui-font-size-sm, 12px);padding:7px 20px 8px}.devui-table--sm tbody>tr>td.devui-table__checkable-cell{padding:8px}.devui-table--sm thead>tr>th.devui-table__checkable-cell{padding:8px}.devui-table--md tbody>tr>td{font-size:var(--devui-font-size-md, 14px);padding:11px 20px 12px}.devui-table--md thead>tr>th.devui-table__checkable-cell{padding:8px 20px}.devui-table--lg tbody>tr>td{font-size:var(--devui-font-size-lg, 14px);padding:15px 20px 16px}.devui-table--lg thead>tr>th.devui-table__checkable-cell{padding:8px 20px}.devui-table--borderless tbody>tr>td{border-bottom:none}.devui-table--bordered tr{border-left:1px solid var(--devui-dividing-line, #f2f2f3)}.devui-table--bordered tr td{border-right:1px solid var(--devui-dividing-line, #f2f2f3)}.devui-table--bordered thead tr th:first-child{border-left:1px solid var(--devui-dividing-line, #f2f2f3)}.devui-table--bordered thead tr th{border-top:1px solid var(--devui-dividing-line, #f2f2f3);border-right:1px solid var(--devui-dividing-line, #f2f2f3)}.devui-table .resize-bar{display:none;position:absolute;top:0;bottom:0;width:2px;background-color:var(--devui-form-control-line-active, #5e7ce0);z-index:var(--devui-z-index-function-widget, 999);cursor:col-resize}.table-selector{user-select:none;cursor:col-resize}.devui-table__tbody tr .devui-table__tree-operate{padding-right:8px;cursor:pointer}.devui-table__tbody tr .devui-table__tree-operate>svg.svg-icon rect{stroke:var(--devui-disabled-text, #adb0b8)}.devui-table__tbody tr .devui-table__tree-operate>svg.svg-icon path{fill:var(--devui-disabled-text, #adb0b8)}.devui-table__tbody tr .devui-table__tree-operate>svg.svg-icon.svg-icon-close rect:last-child{fill:var(--devui-disabled-text, #adb0b8);stroke:none}.devui-table__tbody tr .devui-table__tree-operate:hover>svg.svg-icon rect{stroke:var(--devui-icon-fill-active, #252b3a)}.devui-table__tbody tr .devui-table__tree-operate:hover>svg.svg-icon path{fill:var(--devui-icon-fill-active, #252b3a)}.devui-table__tbody tr .devui-table__tree-operate:hover>svg.svg-icon.svg-icon-close rect:last-child{fill:var(--devui-icon-fill-active, #252b3a);stroke:none}.devui-table__tbody tr .devui-table__tree-operate .svg-icon{transform:translateY(20%)}
package/tabs/index.es.js CHANGED
@@ -1,4 +1,4 @@
1
- import { defineComponent, ref, reactive, provide, onUpdated, onBeforeMount, onMounted, createVNode, inject } from "vue";
1
+ import { toRefs, computed, defineComponent, shallowRef, reactive, inject, onUpdated, onBeforeMount, onMounted, watch, createVNode, resolveComponent, provide, mergeProps, getCurrentInstance, onUnmounted } from "vue";
2
2
  const tabsProps = {
3
3
  modelValue: {
4
4
  type: [String, Number],
@@ -12,10 +12,6 @@ const tabsProps = {
12
12
  type: Boolean,
13
13
  default: true
14
14
  },
15
- vertical: {
16
- type: Boolean,
17
- default: false
18
- },
19
15
  reactivable: {
20
16
  type: Boolean,
21
17
  default: true
@@ -31,6 +27,18 @@ const tabsProps = {
31
27
  beforeChange: {
32
28
  type: Function,
33
29
  default: null
30
+ },
31
+ closeable: {
32
+ type: Boolean,
33
+ default: false
34
+ },
35
+ addable: {
36
+ type: Boolean,
37
+ default: false
38
+ },
39
+ tabPosition: {
40
+ type: String,
41
+ default: "top"
34
42
  }
35
43
  };
36
44
  function createBem(namespace, element, modifier) {
@@ -43,8 +51,8 @@ function createBem(namespace, element, modifier) {
43
51
  }
44
52
  return cls;
45
53
  }
46
- function useNamespace(block) {
47
- const namespace = `devui-${block}`;
54
+ function useNamespace(block, needDot = false) {
55
+ const namespace = needDot ? `.devui-${block}` : `devui-${block}`;
48
56
  const b = () => createBem(namespace);
49
57
  const e = (element) => element ? createBem(namespace, element) : "";
50
58
  const m = (modifier) => modifier ? createBem(namespace, "", modifier) : "";
@@ -56,116 +64,293 @@ function useNamespace(block) {
56
64
  em
57
65
  };
58
66
  }
59
- var tabs = "";
60
- var Tabs = defineComponent({
61
- name: "DTabs",
62
- props: tabsProps,
63
- emits: ["update:modelValue", "active-tab-change"],
64
- setup(props, {
65
- emit,
66
- slots
67
- }) {
68
- const ns = useNamespace("tabs");
69
- const tabsEle = ref(null);
70
- const data = reactive({
71
- offsetLeft: 0,
72
- offsetWidth: 0,
73
- id: null
74
- });
75
- const state = reactive({
76
- data: [],
77
- active: props.modelValue,
78
- showContent: props.showContent,
79
- slots: []
80
- });
81
- provide("tabs", {
82
- state
83
- });
84
- const canChange = function(currentTab) {
85
- let changeResult = Promise.resolve(true);
86
- if (typeof props.beforeChange === "function") {
87
- const result = props.beforeChange(currentTab);
88
- if (typeof result !== "undefined") {
89
- if (result.then) {
90
- changeResult = result;
67
+ const ns$1 = useNamespace("tabs");
68
+ function useTabNavRender(props, data) {
69
+ const { cssClass, tabPosition, customWidth } = toRefs(props);
70
+ const ulClasses = computed(() => ({
71
+ [ns$1.e("nav")]: true,
72
+ [ns$1.em("nav", props.type)]: true,
73
+ [cssClass.value]: Boolean(cssClass.value),
74
+ [ns$1.em("nav", "top")]: tabPosition.value === "top",
75
+ [ns$1.em("nav", "right")]: tabPosition.value === "right",
76
+ [ns$1.em("nav", "bottom")]: tabPosition.value === "bottom",
77
+ [ns$1.em("nav", "left")]: tabPosition.value === "left"
78
+ }));
79
+ const aClasses = computed(() => ({
80
+ ["custom-width"]: Boolean(customWidth.value)
81
+ }));
82
+ const customStyle = {
83
+ width: props.customWidth ? props.customWidth : ""
84
+ };
85
+ const sliderAnimationStyle = computed(() => {
86
+ if (["top", "bottom"].includes(props.tabPosition)) {
87
+ return {
88
+ left: data.offsetLeft + "px",
89
+ width: data.offsetWidth + "px"
90
+ };
91
+ } else {
92
+ return {
93
+ top: data.offsetTop + "px",
94
+ height: data.offsetHeight + "px",
95
+ width: data.offsetWidth + "px"
96
+ };
97
+ }
98
+ });
99
+ return { ulClasses, aClasses, customStyle, sliderAnimationStyle };
100
+ }
101
+ function useTabNavFunction(props, tabs, tabsList, data, ctx, tabsEle) {
102
+ const update = () => {
103
+ if (props.type === "slider") {
104
+ setTimeout(() => {
105
+ var _a;
106
+ const tabEle = (_a = tabsEle.value) == null ? void 0 : _a.querySelector("#" + props.modelValue + ".active");
107
+ if (tabEle && tabsEle.value) {
108
+ if (["top", "bottom"].includes(props.tabPosition)) {
109
+ data.offsetLeft = tabEle.getBoundingClientRect().left - tabsEle.value.getBoundingClientRect().left;
91
110
  } else {
92
- changeResult = Promise.resolve(result);
111
+ data.offsetTop = tabEle.getBoundingClientRect().top - tabsEle.value.getBoundingClientRect().top;
112
+ data.offsetHeight = tabEle.getBoundingClientRect().height;
93
113
  }
114
+ data.offsetWidth = tabEle.getBoundingClientRect().width;
115
+ }
116
+ });
117
+ }
118
+ };
119
+ const canChange = (currentTab) => {
120
+ let changeResult = Promise.resolve(true);
121
+ if (typeof props.beforeChange === "function") {
122
+ const result = props.beforeChange(currentTab);
123
+ if (typeof result !== "undefined") {
124
+ if (result.then) {
125
+ changeResult = result;
126
+ } else {
127
+ changeResult = Promise.resolve(result);
94
128
  }
95
129
  }
96
- return changeResult;
97
- };
98
- const activeClick = function(item, tabEl) {
99
- if (!props.reactivable && props.modelValue === item.id) {
130
+ }
131
+ return changeResult;
132
+ };
133
+ const activeClick = (item, tabEl) => {
134
+ const id = item.props.id;
135
+ if (!props.reactivable && props.modelValue === id) {
136
+ return;
137
+ }
138
+ canChange(id).then((change) => {
139
+ if (!change) {
100
140
  return;
101
141
  }
102
- canChange(item.id).then((change) => {
103
- if (!change) {
104
- return;
105
- }
106
- const tab = state.data.find((itemOption) => itemOption.id === item.id);
107
- if (tab && !tab.disabled) {
108
- state.active = item.id;
109
- emit("update:modelValue", tab.id);
110
- if (props.type === "slider" && tabEl && tabsEle) {
111
- this.offsetLeft = tabEl.getBoundingClientRect().left - this.tabsEle.nativeElement.getBoundingClientRect().left;
112
- this.offsetWidth = tabEl.getBoundingClientRect().width;
142
+ const tab2 = tabsList.value.find((itemOption) => itemOption.props.id === id);
143
+ if (tabs && tab2 && !tab2.props.disabled) {
144
+ tabs.state.active = id;
145
+ if (props.type === "slider" && tabEl && tabsEle && tabsEle.value) {
146
+ if (["left", "right"].includes(props.tabPosition)) {
147
+ data.offsetLeft = tabEl.getBoundingClientRect().left - tabsEle.value.nativeElement.getBoundingClientRect().left;
148
+ } else {
149
+ data.offsetTop = tabEl.getBoundingClientRect().top - tabsEle.value.nativeElement.getBoundingClientRect().top;
150
+ data.offsetHeight = tabEl.getBoundingClientRect().height;
113
151
  }
114
- emit("active-tab-change", tab.id);
152
+ data.offsetWidth = tabEl.getBoundingClientRect().width;
115
153
  }
116
- });
117
- };
118
- const ulClass = [ns.em("nav", props.type)];
119
- props.cssClass && ulClass.push(props.cssClass);
120
- props.vertical && ulClass.push(ns.e("stacked"));
121
- onUpdated(() => {
122
- if (props.type === "slider") {
123
- setTimeout(() => {
124
- const tabEle = tabsEle.value.querySelector("#" + props.modelValue + ".active");
125
- if (tabEle) {
126
- data.offsetLeft = tabEle.getBoundingClientRect().left - tabsEle.value.getBoundingClientRect().left;
127
- data.offsetWidth = tabEle.getBoundingClientRect().width;
128
- }
129
- });
154
+ ctx.emit("active-tab-change", tab2.props.id);
130
155
  }
131
156
  });
132
- onBeforeMount(() => {
133
- if (props.type !== "slider" && props.modelValue === void 0 && state.data.length > 0) {
134
- activeClick(state.data[0]);
135
- }
157
+ };
158
+ const beforeMount = () => {
159
+ if (props.type !== "slider" && props.modelValue === void 0 && tabsList.value && tabsList.value.length > 0) {
160
+ activeClick(tabsList.value[0]);
161
+ }
162
+ };
163
+ const mounted = () => {
164
+ var _a;
165
+ if (props.type === "slider" && props.modelValue === void 0 && tabsList.value && tabsList.value.length > 0 && tabsList.value[0]) {
166
+ const tabsStateData = tabsList.value[0];
167
+ const dom = (_a = tabsStateData.tabsEle) == null ? void 0 : _a.value;
168
+ const ele = dom == null ? void 0 : dom.getElementById(tabsStateData.tabId);
169
+ activeClick(ele);
170
+ }
171
+ };
172
+ const tabCanClose = (item) => {
173
+ return (props.closeable || item.closeable) && !item.disabled;
174
+ };
175
+ return { update, activeClick, beforeMount, mounted, tabCanClose };
176
+ }
177
+ function useTabNavEvent(ctx) {
178
+ const onTabRemove = (item, ev) => {
179
+ ev.stopPropagation();
180
+ ctx.emit("tab-remove", item.props, ev);
181
+ ctx.emit("tab-change", item.props.id, "delete");
182
+ };
183
+ const onTabAdd = () => {
184
+ ctx.emit("tab-add");
185
+ ctx.emit("tab-change", void 0, "add");
186
+ };
187
+ return { onTabRemove, onTabAdd };
188
+ }
189
+ var tabNav = "";
190
+ var TabNav = defineComponent({
191
+ name: "DTabNav",
192
+ props: tabsProps,
193
+ emits: ["active-tab-change", "tab-remove", "tab-add", "tab-change"],
194
+ setup(props, ctx) {
195
+ const ns2 = useNamespace("tabs");
196
+ const tabsEle = shallowRef();
197
+ const data = reactive({
198
+ offsetLeft: 0,
199
+ offsetWidth: 0,
200
+ offsetTop: 0,
201
+ offsetHeight: 0,
202
+ id: null
136
203
  });
137
- onMounted(() => {
138
- if (props.type === "slider" && props.modelValue === void 0 && state.data.length > 0 && state.data[0]) {
139
- activeClick(state.data[0].tabsEle.value.getElementById(state.data[0].tabId));
204
+ const tabs = inject("tabs");
205
+ const tabsList = computed(() => Object.values((tabs == null ? void 0 : tabs.state.data) || {}));
206
+ const {
207
+ ulClasses,
208
+ aClasses,
209
+ customStyle,
210
+ sliderAnimationStyle
211
+ } = useTabNavRender(props, data);
212
+ const {
213
+ update,
214
+ beforeMount,
215
+ mounted,
216
+ activeClick,
217
+ tabCanClose
218
+ } = useTabNavFunction(props, tabs, tabsList, data, ctx, tabsEle);
219
+ const {
220
+ onTabRemove,
221
+ onTabAdd
222
+ } = useTabNavEvent(ctx);
223
+ onUpdated(() => update());
224
+ onBeforeMount(() => beforeMount());
225
+ onMounted(() => mounted());
226
+ watch(() => props.modelValue, () => {
227
+ const tab2 = tabsList.value.find((item) => item.props.id === props.modelValue);
228
+ if (tab2) {
229
+ activeClick(tab2);
140
230
  }
141
231
  });
142
232
  return () => {
143
- return createVNode("div", {
144
- "class": ns.b()
145
- }, [createVNode("ul", {
233
+ const closeIconEl = (item) => {
234
+ return tabCanClose(item) ? createVNode("span", {
235
+ "class": ns2.e("close-btn"),
236
+ "onClick": (ev) => onTabRemove(item, ev)
237
+ }, [createVNode(resolveComponent("d-icon"), {
238
+ "size": "12px",
239
+ "name": "error-o"
240
+ }, null)]) : null;
241
+ };
242
+ const newButton = props.addable ? createVNode("li", {
243
+ "class": ns2.e("new-tab"),
244
+ "onClick": onTabAdd
245
+ }, [createVNode(resolveComponent("d-icon"), {
246
+ "name": "add"
247
+ }, null)]) : null;
248
+ return createVNode("ul", {
146
249
  "ref": tabsEle,
147
250
  "role": "tablist",
148
- "class": [ns.e("nav"), ulClass.join(" ")]
149
- }, [state.data.map((item, i) => {
251
+ "class": ulClasses.value
252
+ }, [(tabsList.value || []).map((item) => {
150
253
  return createVNode("li", {
151
254
  "role": "presentation",
152
255
  "onClick": () => {
153
256
  activeClick(item);
154
257
  },
155
- "class": (props.modelValue === (item.id || item.tabId) ? "active" : "") + " " + (item.disabled ? "disabled" : ""),
156
- "id": item.id || item.tabId
258
+ "class": (props.modelValue === item.props.id ? "active" : "") + (item.props.disabled ? " disabled" : ""),
259
+ "id": item.props.id
260
+ }, [createVNode("span", {
261
+ "class": ns2.e("nav-content")
157
262
  }, [createVNode("a", {
158
263
  "role": "tab",
159
- "data-toggle": item.id,
160
- "aria-expanded": props.modelValue === (item.id || item.tabId)
161
- }, [state.slots[i] ? state.slots[i]() : createVNode("span", null, [item.title])])]);
162
- }), createVNode("div", {
163
- "class": ns.e(`nav-${props.type}-animation`),
164
- "style": {
165
- left: data.offsetLeft + "px",
166
- width: data.offsetWidth + "px"
167
- }
168
- }, null)]), slots.default()]);
264
+ "data-toggle": item.props.id,
265
+ "aria-expanded": props.modelValue === item.props.id,
266
+ "class": aClasses.value,
267
+ "style": customStyle
268
+ }, [item.slots.title ? item.slots.title() : createVNode("span", null, [item.props.title])]), closeIconEl(item)])]);
269
+ }), newButton, createVNode("div", {
270
+ "class": ns2.e(`nav-${props.type}-animation`),
271
+ "style": sliderAnimationStyle.value
272
+ }, null)]);
273
+ };
274
+ }
275
+ });
276
+ const ns = useNamespace("tabs");
277
+ function useTabsEvent(ctx) {
278
+ const onUpdateModelValue = (value) => {
279
+ ctx.emit("update:modelValue", value);
280
+ };
281
+ const onActiveTabChange = (value) => {
282
+ ctx.emit("active-tab-change", value);
283
+ };
284
+ const onTabRemove = (item, ev) => {
285
+ ctx.emit("tab-remove", item, ev);
286
+ };
287
+ const onTabAdd = () => {
288
+ ctx.emit("tab-add");
289
+ };
290
+ const onTabChange = (id, type) => {
291
+ ctx.emit("tab-change", id, type);
292
+ };
293
+ return { onUpdateModelValue, onActiveTabChange, onTabRemove, onTabAdd, onTabChange };
294
+ }
295
+ function useTabsRender(props) {
296
+ const tabsClasses = computed(() => ({
297
+ [ns.b()]: true,
298
+ [ns.m(props.tabPosition)]: true
299
+ }));
300
+ return { tabsClasses };
301
+ }
302
+ var Tabs = defineComponent({
303
+ name: "DTabs",
304
+ props: tabsProps,
305
+ emits: ["update:modelValue", "active-tab-change", "tab-remove", "tab-add", "tab-change"],
306
+ setup(props, ctx) {
307
+ const state = reactive({
308
+ data: {},
309
+ active: props.modelValue,
310
+ showContent: props.showContent
311
+ });
312
+ const addTab = (tabCtx) => {
313
+ if (tabCtx.uid) {
314
+ state.data[tabCtx.uid] = tabCtx;
315
+ }
316
+ };
317
+ const deleteTab = (uid) => {
318
+ if (uid) {
319
+ delete state.data[uid];
320
+ }
321
+ };
322
+ provide("tabs", {
323
+ state,
324
+ addTab,
325
+ deleteTab
326
+ });
327
+ const {
328
+ onUpdateModelValue,
329
+ onActiveTabChange,
330
+ onTabRemove,
331
+ onTabAdd,
332
+ onTabChange
333
+ } = useTabsEvent(ctx);
334
+ const {
335
+ tabsClasses
336
+ } = useTabsRender(props);
337
+ watch(() => state.active, () => {
338
+ onUpdateModelValue(state.active);
339
+ });
340
+ return () => {
341
+ var _a, _b;
342
+ const tabNav2 = createVNode(TabNav, mergeProps(props, {
343
+ "onActiveTabChange": onActiveTabChange,
344
+ "onTabRemove": onTabRemove,
345
+ "onTabAdd": onTabAdd,
346
+ "onTabChange": onTabChange
347
+ }), null);
348
+ const content = (_b = (_a = ctx.slots).default) == null ? void 0 : _b.call(_a);
349
+ return createVNode("div", {
350
+ "class": tabsClasses.value
351
+ }, [props.tabPosition === "bottom" ? [content, tabNav2] : [tabNav2, content], createVNode("div", {
352
+ "style": "clear: both"
353
+ }, null)]);
169
354
  };
170
355
  }
171
356
  });
@@ -181,27 +366,43 @@ const tabProps = {
181
366
  disabled: {
182
367
  type: Boolean,
183
368
  default: false
369
+ },
370
+ closeable: {
371
+ type: Boolean,
372
+ default: false
184
373
  }
185
374
  };
375
+ var tab = "";
186
376
  var Tab = defineComponent({
187
377
  name: "DTab",
188
378
  props: tabProps,
189
379
  setup(props, {
190
380
  slots
191
381
  }) {
192
- const tabs2 = inject("tabs");
193
- tabs2.state.slots.push(slots.title);
194
- tabs2.state.data.push(props);
195
- const ns = useNamespace("tab");
382
+ const tabs = inject("tabs");
383
+ const ns2 = useNamespace("tab");
384
+ const instance = getCurrentInstance();
385
+ const tabContext = reactive({
386
+ uid: instance == null ? void 0 : instance.uid,
387
+ slots,
388
+ props
389
+ });
390
+ onMounted(() => {
391
+ tabs == null ? void 0 : tabs.addTab(tabContext);
392
+ });
393
+ onUnmounted(() => {
394
+ tabs == null ? void 0 : tabs.deleteTab(tabContext.uid);
395
+ });
196
396
  return () => {
397
+ var _a;
197
398
  const {
198
399
  id
199
400
  } = props;
200
- const content = tabs2.state.showContent && tabs2.state.active === id ? createVNode("div", {
201
- "class": ns.e("content")
401
+ const content = (tabs == null ? void 0 : tabs.state.showContent) && tabs.state.active === id ? createVNode("div", {
402
+ "class": ns2.e("content")
202
403
  }, [createVNode("div", {
203
404
  "role": "tabpanel"
204
- }, [slots.default()])]) : null;
405
+ }, [(_a = slots.default) == null ? void 0 : _a.call(slots)])]) : null;
205
406
  return content;
206
407
  };
207
408
  }
@@ -209,7 +410,7 @@ var Tab = defineComponent({
209
410
  var index = {
210
411
  title: "Tabs \u9009\u9879\u5361",
211
412
  category: "\u5BFC\u822A",
212
- status: "60%",
413
+ status: "100%",
213
414
  install(app) {
214
415
  app.component(Tabs.name, Tabs);
215
416
  app.component(Tab.name, Tab);