UNPKG

rsuite

Version:

A suite of react components

580 lines (570 loc) 16.6 kB
*[class*=rs-],*[class*=rs-]::before, *[class*=rs-]::after{ box-sizing:border-box; } html{ -webkit-tap-highlight-color:transparent; font-size:16px; } body{ font-family:var(--rs-font-family-base); font-size:var(--rs-font-size-sm); line-height:var(--rs-line-height-md); color:var(--rs-text-primary); background-color:var(--rs-body); } :root{ --rs-gray-0:#fff; --rs-gray-50:#f7f7fa; --rs-gray-100:#f2f2f5; --rs-gray-200:#e5e5ea; --rs-gray-500:#939393; --rs-gray-600:#717273; --rs-gray-700:#575757; --rs-gray-800:#343434; --rs-gray-900:#121212; --rs-primary-50:#F2FAFF; --rs-primary-500:#3498ff; --rs-body:var(--rs-gray-0); --rs-text-primary:var(--rs-gray-800); --rs-text-secondary:var(--rs-gray-600); --rs-border-secondary:var(--rs-gray-100); --rs-bg-card:var(--rs-gray-0); --rs-state-hover-bg:var(--rs-primary-50); --rs-loader-ring:rgb(from var(--rs-gray-50) r g b / 80%); --rs-loader-rotor:var(--rs-gray-500); --rs-loader-backdrop:rgb(from var(--rs-gray-0) r g b / 90%); --rs-table-border-color:var(--rs-border-secondary); --rs-table-shadow:rgba(9, 9, 9, 0.08); --rs-table-sort:var(--rs-primary-500); --rs-table-resize:var(--rs-primary-500); --rs-table-scrollbar-track:var(--rs-gray-200); --rs-table-scrollbar-thumb:var(--rs-gray-800); --rs-table-scrollbar-thumb-active:var(--rs-gray-900); --rs-table-scrollbar-vertical-track:rgb(from var(--rs-gray-200) r g b / 40%); } @supports not (color: rgb(from white r g b)){ :root{ --rs-loader-ring:rgba(247, 247, 250, 0.8); --rs-loader-backdrop:rgba(255, 255, 255, 0.9); --rs-table-scrollbar-vertical-track:rgba(229, 229, 234, 0.4); } } [data-theme=dark], .rs-theme-dark{ --rs-gray-0:#fff; --rs-gray-50:#e9ebf0; --rs-gray-100:#cbced4; --rs-gray-200:#a4a9b3; --rs-gray-500:#5c6066; --rs-gray-600:#3c3f43; --rs-gray-700:#292d33; --rs-gray-800:#1a1d24; --rs-gray-900:#0f131a; --rs-primary-50:#F2FCFF; --rs-primary-500:#34c3ff; --rs-body:var(--rs-gray-900); --rs-text-primary:var(--rs-gray-50); --rs-text-secondary:var(--rs-gray-200); --rs-border-secondary:var(--rs-gray-700); --rs-bg-card:var(--rs-gray-800); --rs-state-hover-bg:var(--rs-gray-600); --rs-loader-ring:rgb(from var(--rs-gray-50) r g b / 30%); --rs-loader-rotor:var(--rs-gray-0); --rs-loader-backdrop:rgb(from var(--rs-gray-900) r g b / 83%); --rs-table-border-color:var(--rs-border-secondary); --rs-table-shadow:rgba(9, 9, 9, 0.99); --rs-table-sort:var(--rs-primary-500); --rs-table-resize:var(--rs-primary-500); --rs-table-scrollbar-track:var(--rs-gray-700); --rs-table-scrollbar-thumb:var(--rs-gray-200); --rs-table-scrollbar-thumb-active:var(--rs-gray-100); --rs-table-scrollbar-vertical-track:var(--rs-gray-700); } @supports not (color: rgb(from white r g b)){ [data-theme=dark], .rs-theme-dark{ --rs-loader-ring:rgba(233, 235, 240, 0.3); --rs-loader-backdrop:rgba(15, 19, 26, 0.83); } } [data-theme=high-contrast], .rs-theme-high-contrast{ --rs-gray-0:#fff; --rs-gray-50:#e9ebf0; --rs-gray-100:#cbced4; --rs-gray-200:#a4a9b3; --rs-gray-500:#5c6066; --rs-gray-600:#3c3f43; --rs-gray-700:#292d33; --rs-gray-800:#1a1d24; --rs-gray-900:#0f131a; --rs-primary-50:#fffef2; --rs-primary-500:#ffff00; --rs-body:var(--rs-gray-900); --rs-text-primary:var(--rs-gray-50); --rs-text-secondary:var(--rs-gray-200); --rs-border-secondary:var(--rs-gray-700); --rs-bg-card:var(--rs-gray-800); --rs-state-hover-bg:var(--rs-gray-600); --rs-loader-ring:rgb(from var(--rs-gray-50) r g b / 30%); --rs-loader-rotor:var(--rs-gray-0); --rs-loader-backdrop:rgb(from var(--rs-gray-900) r g b / 83%); --rs-table-border-color:var(--rs-border-secondary); --rs-table-shadow:rgba(9, 9, 9, 0.99); --rs-table-sort:var(--rs-primary-500); --rs-table-resize:var(--rs-primary-500); --rs-table-scrollbar-track:var(--rs-gray-700); --rs-table-scrollbar-thumb:var(--rs-gray-200); --rs-table-scrollbar-thumb-active:var(--rs-gray-100); --rs-table-scrollbar-vertical-track:var(--rs-gray-700); } @supports not (color: rgb(from white r g b)){ [data-theme=high-contrast], .rs-theme-high-contrast{ --rs-loader-ring:rgba(233, 235, 240, 0.3); --rs-loader-backdrop:rgba(15, 19, 26, 0.83); } } :root{ --rs-font-family-base:-apple-system, BlinkMacSystemFont, Arial, Helvetica, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", STXihei, sans-serif; --rs-font-size-xs:0.75rem; --rs-font-size-sm:0.875rem; --rs-font-size-md:1rem; --rs-font-size-base:var(--rs-font-size-sm); --rs-line-height-sm:calc(20 / 12); --rs-line-height-md:calc(20 / 14); --rs-radius-sm:0.25rem; --rs-radius-full:62.5rem; --rs-loader-default-size:1.125rem; --rs-zindex-table-body-row-wrapper:0; --rs-zindex-table-header-row-wrapper:2; --rs-zindex-table-column-resize-spanner:3; --rs-zindex-table-cell-group-fixed:4; --rs-zindex-table-row-cell-group-shadow:5; --rs-zindex-table-mouse-area:6; } @media (max-width: calc(576px - 1px)){ [data-visible-from=xs]{ display:none !important; } } @media (min-width: 576px){ [data-hidden-from=xs]{ display:none !important; } } @media (max-width: calc(768px - 1px)){ [data-visible-from=sm]{ display:none !important; } } @media (min-width: 768px){ [data-hidden-from=sm]{ display:none !important; } } @media (max-width: calc(992px - 1px)){ [data-visible-from=md]{ display:none !important; } } @media (min-width: 992px){ [data-hidden-from=md]{ display:none !important; } } @media (max-width: calc(1200px - 1px)){ [data-visible-from=lg]{ display:none !important; } } @media (min-width: 1200px){ [data-hidden-from=lg]{ display:none !important; } } @media (max-width: calc(1400px - 1px)){ [data-visible-from=xl]{ display:none !important; } } @media (min-width: 1400px){ [data-hidden-from=xl]{ display:none !important; } } .rs-table{ --rs-loader-content-spin-spacing-horizontal:12px; --rs-table-scrollbar-width:10px; --rs-table-scrollbar-handle-width:8px; --rs-table-scrollbar-handle-gap:calc( (var(--rs-table-scrollbar-width) - var(--rs-table-scrollbar-handle-width)) / 2 ); --rs-table-scrollbar-timing-duration:0.1s; --rs-table-cell-hover-color:var(--rs-primary-500); --rs-table-cell-padding-y:13px; --rs-table-cell-padding-x:10px; --rs-table-header-padding:10px; --rs-table-header-line-height:var(--rs-line-height-sm); --rs-table-header-sort-margin-start:5px; position:relative; overflow:hidden; } .rs-table-column-resizing{ cursor:ew-resize; -webkit-user-select:none; -moz-user-select:none; user-select:none; } .rs-table-row{ overflow:hidden; position:absolute; height:36px; width:100%; top:0; } .rs-table-row.virtualized{ pointer-events:none; } .rs-table-row-expanded{ position:absolute; height:46px; bottom:0; width:100%; z-index:4; border-top:1px solid var(--rs-table-border-color); padding:10px; } .rs-table-row-expanded,.rs-table-hover .rs-table-row:hover .rs-table-cell-group,.rs-table-hover .rs-table-row:hover .rs-table-cell,.rs-table-row-header,.rs-table-row-header .rs-table-cell{ background-color:var(--rs-bg-card); } .rs-table-row-header .rs-table-cell-group-shadow{ z-index:var(--rs-zindex-table-row-cell-group-shadow); box-shadow:none; } .rs-table-hover .rs-table-row:not(.rs-table-row-header):hover, .rs-table-hover .rs-table-row:hover .rs-table-cell-group, .rs-table-hover .rs-table-row:hover .rs-table-cell{ background-color:var(--rs-state-hover-bg); } .rs-table-hover .rs-table-row-header:hover .rs-table-cell-group, .rs-table-hover .rs-table-row-header:hover .rs-table-cell{ background-color:var(--rs-bg-card); } .rs-table-header-row-wrapper{ z-index:var(--rs-zindex-table-header-row-wrapper); position:relative; font-size:var(--rs-font-size-xs); color:var(--rs-text-secondary); } .rs-table-affix-header{ z-index:calc(var(--rs-zindex-table-header-row-wrapper) + 1); visibility:hidden; } .rs-table-affix-header.fixed{ visibility:visible; } .rs-table-body-row-wrapper{ position:relative; overflow:hidden; z-index:var(--rs-zindex-table-body-row-wrapper); } .rs-table-body-info{ width:100%; text-align:center; top:50%; position:absolute; margin-top:-20px; line-height:40px; } .rs-table-body-info .icon{ margin:0 10px; } .rs-table-body-info-wheel-area,.rs-table-body-wheel-area{ width:100%; } .rs-table-loader-wrapper{ position:absolute; height:100%; width:100%; background-color:var(--rs-loader-backdrop); opacity:0; transition:opacity 0.2s ease-in; pointer-events:none; } .rs-table-loader{ width:100%; text-align:center; top:50%; position:absolute; margin-top:-20px; line-height:40px; } .rs-table-loader-icon{ display:inline-block; position:relative; margin-inline-end:var(--rs-loader-content-spin-spacing-horizontal); padding-top:3px; } .rs-table-loader-icon,.rs-table-loader-icon::before, .rs-table-loader-icon::after{ width:var(--rs-loader-default-size); height:var(--rs-loader-default-size); } .rs-table-loader-icon::before, .rs-table-loader-icon::after{ content:""; position:absolute; inset-inline-start:0; inset-inline-end:0; display:block; border-radius:var(--rs-radius-full); } .rs-table-loader-icon::before{ border:var(--rs-loader-spin-ring-width) solid var(--rs-loader-ring); } .rs-table-loader-icon::after{ border-width:var(--rs-loader-spin-ring-width); border-style:solid; border-color:var(--rs-loader-rotor) transparent transparent; animation:loaderSpin var(--rs-loader-duration-normal) infinite linear; } .rs-table-loading .rs-table-loader-wrapper{ visibility:visible; opacity:1; pointer-events:auto; z-index:1; } .rs-table-cell{ height:36px; display:block; overflow:hidden; position:absolute; white-space:normal; background-color:var(--rs-bg-card); border-bottom:1px solid var(--rs-table-border-color); } .rs-table-cell.first{ border-left-width:0; } .rs-table-cell-wrap1{ display:table; } .rs-table-cell-wrap2{ display:table-row; } .rs-table-cell-wrap3{ display:table-cell; vertical-align:middle; } .rs-table-cell-content{ padding-inline:var(--rs-table-cell-padding-x); padding-block:var(--rs-table-cell-padding-y); overflow:hidden; white-space:nowrap; text-overflow:ellipsis; width:100%; display:block; } .rs-table-cell-header{ background-color:var(--rs-table-header-bg); color:var(--rs-text-secondary); font-size:var(--rs-font-size-xs); line-height:var(--rs-table-header-line-height); } .rs-table-cell-header .rs-table-cell-content{ padding:var(--rs-table-header-padding); display:flex; align-items:center; } .rs-table-cell-header .rs-table-cell-sort-wrapper{ cursor:pointer; margin-inline-end:var(--rs-table-header-sort-margin-start); } .rs-table-cell-header-icon-sort{ font-size:var(--rs-font-size-base); line-height:var(--rs-table-header-line-height); display:flex; } .rs-table-cell-header-icon-sort:where([data-sort=asc]){ transform:rotate(180deg); } .rs-table-cell:where([aria-sort]) .rs-table-cell-header-icon-sort{ color:var(--rs-table-sort); } .rs-table-cell-header-sort-asc, .rs-table-cell-header-sort-desc{ color:var(--rs-text-primary); } .rs-table-cell-full-text:hover{ z-index:1 !important; width:auto !important; box-shadow:inset var(--rs-table-cell-hover-color) 0px 0px 2px; } .rs-table-cell-full-text:hover .rs-table-cell-content{ width:auto !important; } .rs-table-cell-header-sortable .rs-table-cell-content{ cursor:pointer; } .rs-table-column-resize-spanner{ height:36px; width:3px; z-index:var(--rs-zindex-table-column-resize-spanner); position:absolute; cursor:ew-resize !important; outline:none; box-sizing:content-box; } .rs-table-column-resize-spanner::after, .rs-table-column-resize-spanner::before{ content:" "; position:absolute; width:0; height:0; display:none; top:50%; margin-top:-3px; } .rs-table-column-resize-spanner::before{ border-style:dashed solid dashed dashed; border-color:transparent var(--rs-table-resize) transparent transparent; border-width:3px; inset-inline-end:4px; } .rs-table-column-resize-spanner::after{ border-style:dashed dashed dashed solid; border-color:transparent transparent transparent var(--rs-table-resize); border-width:3px; inset-inline-start:4px; } .rs-table:not(.rs-table-column-resizing) .rs-table-cell-header .rs-table-cell:hover ~ .rs-table-column-resize-spanner, .rs-table:not(.rs-table-column-resizing) .rs-table-column-resize-spanner:hover{ background-color:var(--rs-table-resize); } .rs-table:not(.rs-table-column-resizing) .rs-table-cell-header .rs-table-cell:hover ~ .rs-table-column-resize-spanner::before, .rs-table:not(.rs-table-column-resizing) .rs-table-cell-header .rs-table-cell:hover ~ .rs-table-column-resize-spanner::after, .rs-table:not(.rs-table-column-resizing) .rs-table-column-resize-spanner:hover::before, .rs-table:not(.rs-table-column-resizing) .rs-table-column-resize-spanner:hover::after{ display:block; } .rs-table-cell-group-fixed-right, .rs-table-cell-group-fixed-left{ position:absolute; z-index:var(--rs-zindex-table-cell-group-fixed); background-color:var(--rs-bg-card); } .rs-table-cell-group-shadow, .rs-table-cell-group-left-shadow{ box-shadow:3px 0 5px var(--rs-table-shadow); } .rs-table-cell-group-right-shadow{ box-shadow:-3px 0 5px var(--rs-table-shadow); } .rs-table-mouse-area{ display:none; inset-inline-start:-1px; top:0; width:1px; z-index:var(--rs-zindex-table-mouse-area); } .rs-table-mouse-area,.rs-table-mouse-area > span{ background-color:var(--rs-table-resize); position:absolute; } .rs-table-mouse-area > span{ height:36px; width:3px; z-index:var(--rs-zindex-table-column-resize-spanner); cursor:ew-resize !important; outline:none; inset-inline-start:-1.5px; } .rs-table-word-wrap .rs-table-cell-content{ white-space:normal; } .rs-table-bordered{ border:1px solid var(--rs-table-border-color); } .rs-table-cell-bordered .rs-table-cell{ border-right:1px solid var(--rs-table-border-color); } .rs-table-column-group{ position:absolute; inset-inline-start:0; inset-inline-end:0; top:0; width:100%; } .rs-table-column-group-header{ border-bottom:1px solid var(--rs-table-border-color); position:absolute; width:100%; } .rs-table-column-group-header-content{ display:table-cell; padding:10px; } .rs-table-column-group-cell{ position:absolute; border-right:1px solid var(--rs-table-border-color); } .rs-table:not(.rs-table-has-rowspan) .rs-table-row{ border-bottom:1px solid var(--rs-table-border-color); } .rs-table-cell-expand-wrapper{ margin-inline-end:10px; display:inline-block; cursor:pointer; } .rs-table-cell-expand-icon{ cursor:pointer; outline:none; font-size:var(--rs-font-size-md); transition:transform 0.3s ease; } .rs-table-cell-expand-icon:where([data-expanded=true]){ transform:rotate(90deg); } .rs-table-scrollbar{ background-color:var(--rs-table-scrollbar-track); position:absolute; transition:background var(--rs-table-scrollbar-timing-duration) linear, transform var(--rs-table-scrollbar-timing-duration) linear; opacity:0.6; z-index:1; } .rs-table-scrollbar-hide{ display:none; } .rs-table-scrollbar-handle{ position:absolute; background-color:var(--rs-table-scrollbar-thumb); border-radius:var(--rs-radius-sm); } .rs-table-scrollbar-pressed{ z-index:1; } .rs-table-scrollbar-pressed .rs-table-scrollbar-handle{ background-color:var(--rs-table-scrollbar-thumb-active); } .rs-table-scrollbar-horizontal{ width:100%; height:var(--rs-table-scrollbar-width); bottom:0; } .rs-table-scrollbar-horizontal.fixed{ position:fixed; } .rs-table-scrollbar-horizontal .rs-table-scrollbar-handle{ height:var(--rs-table-scrollbar-handle-width); left:0; top:var(--rs-table-scrollbar-handle-gap); } .rs-table-scrollbar-pressed.rs-table-scrollbar-horizontal:hover, .rs-table-scrollbar-horizontal:hover{ transform-origin:center bottom; transform:scaleY(1.3); } .rs-table-scrollbar-vertical{ top:0; inset-inline-end:0; width:var(--rs-table-scrollbar-width); bottom:var(--rs-table-scrollbar-width); background-color:var(--rs-table-scrollbar-vertical-track); } .rs-table-scrollbar-vertical .rs-table-scrollbar-handle{ min-height:20px; width:var(--rs-table-scrollbar-handle-width); top:0; inset-inline-start:var(--rs-table-scrollbar-handle-gap); } .rs-table-scrollbar-pressed.rs-table-scrollbar-vertical:hover, .rs-table-scrollbar-vertical:hover{ transform-origin:right center; transform:scaleX(1.3); }