UNPKG

winbox-ui-next

Version:

We Design Vue 2.0: A Vue.js 3 UI Library

302 lines (301 loc) 6.76 kB
/******** borderSize *******/ /******** borderStyle *******/ /******** radius *******/ /******** shadow distance *******/ /******** size *******/ /******** spacing *******/ /******** shadow *******/ /******** opacity *******/ /******** fontSize *******/ /******** fontWeight ********/ /******** radius *******/ /******** Primary *******/ /******** success *******/ /******** warning *******/ /******** danger *******/ /******** link *******/ /******** radius *******/ /********* icon hover *********/ /******* icon ******/ .w-icon-hover.w-tree-node-icon-hover::before { width: 16px; height: 16px; } .w-tree-node-switcher { position: relative; display: flex; flex-shrink: 0; align-items: center; width: 12px; height: 36px; margin-right: 6px; color: var(--color-text-2); font-size: 12px; cursor: pointer; user-select: none; } .w-tree-node-switcher-icon { position: relative; margin: 0 auto; } .w-tree-node-switcher-icon svg { position: relative; transform: rotate(-90deg); transition: transform 0.2s cubic-bezier(0.34, 0.69, 0.1, 1); } .w-tree-node-expanded .w-tree-node-switcher-icon svg, .w-tree-node-is-leaf .w-tree-node-switcher-icon svg { transform: rotate(0); } .w-tree-node-drag-icon { margin-left: 120px; color: rgb(var(--primary-6)); opacity: 0; } .w-tree-node-custom-icon { margin-right: 10px; font-size: inherit; line-height: 1; cursor: pointer; user-select: none; } .w-tree-node .w-icon-loading { color: rgb(var(--primary-6)); } .w-tree-node-minus-icon, .w-tree-node-plus-icon { position: relative; display: block; width: 14px; height: 14px; background: var(--color-fill-2); border-radius: var(--border-radius-small); cursor: pointer; } .w-tree-node-minus-icon::after, .w-tree-node-plus-icon::after { position: absolute; top: 50%; left: 50%; display: block; width: 6px; height: 2px; margin-top: -1px; margin-left: -3px; color: var(--color-text-2); background-color: var(--color-text-2); border-radius: 0.5px; content: ''; } .w-tree-node-plus-icon::before { position: absolute; top: 50%; left: 50%; display: block; width: 2px; height: 6px; margin-top: -3px; margin-left: -1px; color: var(--color-text-2); background-color: var(--color-text-2); border-radius: 0.5px; content: ''; } /******* tree ***********/ .w-tree { color: var(--color-text-1); } .w-tree .w-checkbox { margin-right: 10px; padding-left: 0; line-height: 36px; } .w-tree-node { position: relative; display: flex; flex-wrap: nowrap; align-items: center; padding-left: 2px; color: var(--color-text-1); line-height: 1.5715; cursor: pointer; } .w-tree-node:hover { background-color: var(--color-fill-2); } .w-tree-node-selected { background-color: var(--color-fill-2); } .w-tree-node-disabled-selectable .w-tree-node-title, .w-tree-node-disabled .w-tree-node-title, .w-tree-node-disabled-selectable .w-tree-node-title:hover, .w-tree-node-disabled .w-tree-node-title:hover { color: var(--color-text-4); background: none; cursor: not-allowed; } .w-tree-node-disabled.w-tree-node-selected .w-tree-node-title { color: var(--color-primary-light-3); } .w-tree-node-title-block { flex: 1; box-sizing: content-box; } .w-tree-node-title-block .w-tree-node-drag-icon { position: absolute; right: 12px; } .w-tree-node-indent { position: relative; flex-shrink: 0; align-self: stretch; } .w-tree-node-indent-block { position: relative; display: inline-block; width: 12px; height: 100%; margin-right: 6px; } .w-tree-node-draggable { margin-top: 1px; } .w-tree-node-title { position: relative; display: flex; align-items: center; margin-left: -4px; padding: 7px 0; padding-right: 4px; padding-left: 4px; font-size: 14px; border-radius: var(--border-radius-small); } .w-tree-node-title:hover .w-tree-node-drag-icon { opacity: 1; } .w-tree-node-title-draggable::before { position: absolute; top: -1px; right: 0; left: 0; display: block; height: 1px; border-radius: 0.5px; content: ''; } .w-tree-node-title-gap-bottom::before { top: unset; bottom: -1px; background-color: rgb(var(--primary-6)); } .w-tree-node-title-highlight { color: var(--color-text-1); background-color: var(--color-primary-light-1); } .w-tree-node-title-dragging, .w-tree-node-title-dragging:hover { color: var(--color-text-4); background-color: var(--color-fill-1); } .w-tree-show-line { padding-left: 1px; } .w-tree-show-line .w-tree-node-switcher { width: 14px; text-align: center; } .w-tree-show-line .w-tree-node-switcher .w-tree-node-icon-hover { width: 100%; } .w-tree-show-line .w-tree-node-indent-block { width: 14px; } .w-tree-show-line .w-tree-node-indent-block::before { position: absolute; left: 50%; box-sizing: border-box; width: 1px; border-left: 1px solid var(--color-neutral-3); transform: translateX(-50%); content: ''; top: -7px; bottom: -7px; } .w-tree-show-line .w-tree-node-is-leaf:not(.w-tree-node-is-tail) .w-tree-node-indent::after { position: absolute; right: -7px; box-sizing: border-box; width: 1px; border-left: 1px solid var(--color-neutral-3); transform: translateX(50%); content: ''; top: 29px; bottom: -7px; } .w-tree-show-line .w-tree-node-indent-block-lineless:before { display: none; } /******** size *******/ .w-tree-size-mini .w-tree-node-switcher { height: 20px; } .w-tree-size-mini .w-checkbox { line-height: 20px; } .w-tree-size-mini .w-tree-node-title { padding-top: 0px; padding-bottom: 0px; font-size: 12px; line-height: 1.667; } .w-tree-size-mini .w-tree-node-indent-block::before { top: 21px; bottom: 0; } .w-tree-size-mini .w-tree-node-is-leaf:not(.w-tree-node-is-tail) .w-tree-node-indent::after { top: 1px; bottom: 0; } .w-tree-size-small .w-tree-node-switcher { height: 24px; } .w-tree-size-small .w-checkbox { line-height: 24px; } .w-tree-size-small .w-tree-node-title { padding-top: 1px; padding-bottom: 1px; font-size: 14px; } .w-tree-size-small .w-tree-node-indent-block::before { top: 23px; bottom: -1px; } .w-tree-size-small .w-tree-node-is-leaf:not(.w-tree-node-is-tail) .w-tree-node-indent::after { top: -1px; bottom: -1px; } .w-tree-size-medium .w-tree-node-switcher { height: 28px; } .w-tree-size-medium .w-checkbox { line-height: 28px; } .w-tree-size-medium .w-tree-node-title { padding-top: 3px; padding-bottom: 3px; font-size: 14px; } .w-tree-size-medium .w-tree-node-indent-block::before { top: 25px; bottom: -3px; } .w-tree-size-medium .w-tree-node-is-leaf:not(.w-tree-node-is-tail) .w-tree-node-indent::after { top: -3px; bottom: -3px; } .w-tree-node-list { overflow: hidden; transition: height 0.2s cubic-bezier(0.34, 0.69, 0.1, 1); }