UNPKG

rsuite

Version:

A suite of react components

562 lines (561 loc) 15.5 kB
:root, .rs-theme-light { --rs-gray-0: #fff; --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-500: #3498ff; --rs-border-primary: var(--rs-gray-200); --rs-tooltip-bg: var(--rs-gray-900); --rs-tooltip-text: var(--rs-gray-0); --rs-slider-bar: var(--rs-gray-100); --rs-slider-hover-bar: var(--rs-gray-200); --rs-slider-thumb-border: var(--rs-primary-500); --rs-slider-thumb-bg: #fff; --rs-slider-thumb-hover-shadow: 0 0 0 8px rgb(from var(--rs-gray-500) r g b / 25%); --rs-slider-progress: var(--rs-primary-500); } @supports not (color: rgb(from white r g b)) { :root, .rs-theme-light { --rs-slider-thumb-hover-shadow: 0 0 0 8px rgba(52, 152, 255, 0.25); } } .rs-theme-dark { --rs-gray-0: #fff; --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-500: #34c3ff; --rs-border-primary: var(--rs-gray-600); --rs-tooltip-bg: var(--rs-gray-500); --rs-tooltip-text: var(--rs-gray-0); --rs-slider-bar: var(--rs-gray-600); --rs-slider-hover-bar: var(--rs-gray-600); --rs-slider-thumb-border: var(--rs-primary-500); --rs-slider-thumb-bg: var(--rs-gray-700); --rs-slider-thumb-hover-shadow: 0 0 0 8px rgb(from var(--rs-primary-500) r g b / 25%); --rs-slider-progress: var(--rs-primary-500); } @supports not (color: rgb(from white r g b)) { .rs-theme-dark { --rs-slider-thumb-hover-shadow: 0 0 0 8px rgba(52, 195, 255, 0.25); } } .rs-theme-high-contrast { --rs-gray-0: #fff; --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-500: #ffff00; --rs-border-primary: var(--rs-gray-100); --rs-tooltip-bg: var(--rs-gray-800); --rs-tooltip-text: var(--rs-gray-0); --rs-slider-bar: var(--rs-gray-600); --rs-slider-hover-bar: var(--rs-gray-600); --rs-slider-thumb-border: var(--rs-primary-500); --rs-slider-thumb-bg: var(--rs-gray-700); --rs-slider-thumb-hover-shadow: 0 0 0 8px rgb(from var(--rs-primary-500) r g b / 25%); --rs-slider-progress: var(--rs-primary-500); } @supports not (color: rgb(from white r g b)) { .rs-theme-high-contrast { --rs-slider-thumb-hover-shadow: 0 0 0 8px rgba(255, 255, 0, 0.25); } } /* stylelint-disable */ *[class*='rs-'] { -webkit-box-sizing: border-box; box-sizing: border-box; } *[class*='rs-']::before, *[class*='rs-']::after { -webkit-box-sizing: border-box; box-sizing: border-box; } /* rtl:begin:ignore */ /* rtl:end:ignore */ .rs-tooltip { position: absolute; z-index: 1070; display: block; font-size: 12px; opacity: 0; line-height: 1.66666667; max-width: 250px; padding: 2px 10px; color: #fff; color: var(--rs-tooltip-text); background-color: #121212; background-color: var(--rs-tooltip-bg); border-radius: 4px; overflow-wrap: break-word; } .rs-tooltip.rs-anim-fade { -webkit-transition: opacity 0.1s linear, -webkit-transform 0.1s ease-out; transition: opacity 0.1s linear, -webkit-transform 0.1s ease-out; transition: opacity 0.1s linear, transform 0.1s ease-out; transition: opacity 0.1s linear, transform 0.1s ease-out, -webkit-transform 0.1s ease-out; } .rs-tooltip.rs-anim-in { opacity: 1; -webkit-transition: opacity 0.15s linear, -webkit-transform 0.15s ease-in; transition: opacity 0.15s linear, -webkit-transform 0.15s ease-in; transition: opacity 0.15s linear, transform 0.15s ease-in; transition: opacity 0.15s linear, transform 0.15s ease-in, -webkit-transform 0.15s ease-in; } .rs-tooltip-arrow::before, .rs-tooltip-arrow::after { content: ' '; display: block; position: absolute; width: 0; height: 0; border-color: transparent; border-style: solid; } .rs-tooltip-arrow::before { display: none; } .rs-theme-high-contrast .rs-tooltip { border: 1px solid #e5e5ea; border: 1px solid var(--rs-border-primary); } .rs-theme-high-contrast .rs-tooltip-arrow::before { display: block; } .rs-tooltip[class*='placement-top'] { margin-top: -8px; -webkit-transform: translate(0, 0); transform: translate(0, 0); } .rs-tooltip[class*='placement-top'].rs-anim-in { -webkit-transform: translate(0, -2px); transform: translate(0, -2px); } .rs-tooltip[class*='placement-top']::after { bottom: -6px; margin-left: -6px; border-width: 6px 6px 0; border-top-color: #121212; border-top-color: var(--rs-tooltip-bg); } @media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) { .rs-tooltip[class*='placement-top']::after { bottom: -7px; } } @supports (-ms-ime-align: auto) { .rs-tooltip[class*='placement-top']::after { bottom: -7px; } } .rs-theme-high-contrast .rs-tooltip[class*='placement-top']::before { bottom: -7px; margin-left: -7px; border-width: 7px 7px 0; border-top-color: var(--rs-tooltip-border); } @media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) { .rs-theme-high-contrast .rs-tooltip[class*='placement-top']::before { bottom: -8px; } } @supports (-ms-ime-align: auto) { .rs-theme-high-contrast .rs-tooltip[class*='placement-top']::before { bottom: -8px; } } .rs-tooltip[class*='placement-bottom'] { margin-top: 8px; -webkit-transform: translate(0, 0); transform: translate(0, 0); } .rs-tooltip[class*='placement-bottom'].rs-anim-in { -webkit-transform: translate(0, 2px); transform: translate(0, 2px); } .rs-tooltip[class*='placement-bottom']::after { top: -6px; margin-left: -6px; border-width: 0 6px 6px; border-bottom-color: #121212; border-bottom-color: var(--rs-tooltip-bg); } @media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) { .rs-tooltip[class*='placement-bottom']::after { top: -7px; } } @supports (-ms-ime-align: auto) { .rs-tooltip[class*='placement-bottom']::after { top: -7px; } } .rs-theme-high-contrast .rs-tooltip[class*='placement-bottom']::before { top: -7px; margin-left: -7px; border-width: 0 7px 7px; border-bottom-color: var(--rs-tooltip-border); } @media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) { .rs-theme-high-contrast .rs-tooltip[class*='placement-bottom']::before { top: -8px; } } @supports (-ms-ime-align: auto) { .rs-theme-high-contrast .rs-tooltip[class*='placement-bottom']::before { top: -8px; } } /* rtl:begin:ignore */ .rs-tooltip[class*='placement-right'] { margin-left: 8px; -webkit-transform: translate(0, 0); transform: translate(0, 0); } .rs-tooltip[class*='placement-right'].rs-anim-in { -webkit-transform: translate(2px, 0); transform: translate(2px, 0); } .rs-tooltip[class*='placement-right']::after { left: -6px; margin-top: -6px; border-width: 6px 6px 6px 0; border-right-color: #121212; border-right-color: var(--rs-tooltip-bg); } @media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) { .rs-tooltip[class*='placement-right']::after { left: -7px; } } @supports (-ms-ime-align: auto) { .rs-tooltip[class*='placement-right']::after { left: -7px; } } .rs-theme-high-contrast .rs-tooltip[class*='placement-right']::before { left: -7px; margin-top: -7px; border-width: 7px 7px 7px 0; border-right-color: var(--rs-tooltip-border); } @media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) { .rs-theme-high-contrast .rs-tooltip[class*='placement-right']::before { left: -8px; } } @supports (-ms-ime-align: auto) { .rs-theme-high-contrast .rs-tooltip[class*='placement-right']::before { left: -8px; } } .rs-tooltip[class*='placement-left'] { margin-left: -8px; -webkit-transform: translate(0, 0); transform: translate(0, 0); } .rs-tooltip[class*='placement-left'].rs-anim-in { -webkit-transform: translate(-2px, 0); transform: translate(-2px, 0); } .rs-tooltip[class*='placement-left']::after { right: -6px; margin-top: -6px; border-width: 6px 0 6px 6px; border-left-color: #121212; border-left-color: var(--rs-tooltip-bg); } @media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) { .rs-tooltip[class*='placement-left']::after { right: -7px; } } @supports (-ms-ime-align: auto) { .rs-tooltip[class*='placement-left']::after { right: -7px; } } .rs-theme-high-contrast .rs-tooltip[class*='placement-left']::before { right: -7px; margin-top: -7px; border-width: 7px 0 7px 7px; border-left-color: var(--rs-tooltip-border); } @media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) { .rs-theme-high-contrast .rs-tooltip[class*='placement-left']::before { right: -8px; } } @supports (-ms-ime-align: auto) { .rs-theme-high-contrast .rs-tooltip[class*='placement-left']::before { right: -8px; } } /* rtl:end:ignore */ .rs-tooltip.placement-bottom::before, .rs-tooltip.placement-top::before, .rs-tooltip.placement-bottom::after, .rs-tooltip.placement-top::after { left: 50%; } .rs-tooltip.placement-bottom-start::before, .rs-tooltip.placement-top-start::before, .rs-tooltip.placement-bottom-start::after, .rs-tooltip.placement-top-start::after { left: 10px; } .rs-tooltip.placement-bottom-end::before, .rs-tooltip.placement-top-end::before { right: 3px; } .rs-tooltip.placement-bottom-end::after, .rs-tooltip.placement-top-end::after { right: 4px; } .rs-tooltip.placement-right::before, .rs-tooltip.placement-left::before, .rs-tooltip.placement-right::after, .rs-tooltip.placement-left::after { top: 50%; } .rs-tooltip.placement-right-start::before, .rs-tooltip.placement-left-start::before, .rs-tooltip.placement-right-start::after, .rs-tooltip.placement-left-start::after { top: 10px; } .rs-tooltip.placement-right-end::before, .rs-tooltip.placement-left-end::before { bottom: 3px; } .rs-tooltip.placement-right-end::after, .rs-tooltip.placement-left-end::after { bottom: 4px; } .rs-slider { position: relative; } .rs-slider .rs-tooltip { display: none; } .rs-slider .rs-tooltip.rs-tooltip-placement-top .rs-tooltip::after { margin: auto; left: 0; right: 0; } .rs-slider-disabled { opacity: 0.5; cursor: not-allowed; } .rs-slider-disabled .rs-slider-bar, .rs-slider-disabled .rs-slider-handle::before { pointer-events: none; } .rs-slider-with-mark:not(.rs-slider-vertical) { margin-bottom: 29px; } .rs-slider-bar { height: 6px; border-radius: 3px; background-color: #f2f2f5; background-color: var(--rs-slider-bar); -webkit-transition: background-color ease-in-out 0.3s; transition: background-color ease-in-out 0.3s; cursor: pointer; } .rs-slider:hover .rs-slider-bar { background-color: #e5e5ea; background-color: var(--rs-slider-hover-bar); } .rs-slider-vertical .rs-slider-bar { height: 100%; width: 6px; } .rs-slider-handle { position: absolute; top: -50%; outline: none; } .rs-slider-handle::before { content: ''; position: absolute; width: 12px; height: 12px; border-radius: 50%; border: 2px solid #3498ff; border: 2px solid var(--rs-slider-thumb-border); background-color: #fff; background-color: var(--rs-slider-thumb-bg); margin-left: -6px; cursor: pointer; /* stylelint-disable */ -webkit-transition: background-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out, -webkit-transform 0.15s ease-in-out; transition: background-color 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out, -webkit-transform 0.15s ease-in-out; transition: box-shadow 0.15s ease-in-out, background-color 0.15s ease-in-out, transform 0.15s ease-in-out; transition: box-shadow 0.15s ease-in-out, background-color 0.15s ease-in-out, transform 0.15s ease-in-out, -webkit-box-shadow 0.15s ease-in-out, -webkit-transform 0.15s ease-in-out; /* stylelint-enable */ } .rs-slider-handle:hover::before, .rs-slider-handle:focus::before { -webkit-box-shadow: 0 0 0 8px rgb(from #939393 r g b / 25%); -webkit-box-shadow: var(--rs-slider-thumb-hover-shadow); box-shadow: 0 0 0 8px rgb(from #939393 r g b / 25%); box-shadow: var(--rs-slider-thumb-hover-shadow); } .rs-slider-handle:active::before, .rs-slider-handle.active::before { -webkit-transform: scale(1.2); transform: scale(1.2); } .rs-slider-vertical .rs-slider-handle { top: unset; } .rs-slider-vertical .rs-slider-handle::before { left: 3px; margin-top: -6px; } .rs-slider-handle:hover .rs-tooltip, .rs-slider-handle.active .rs-tooltip { display: block; opacity: 1; top: -30px; } .rs-slider-vertical .rs-slider-handle:hover .rs-tooltip, .rs-slider-vertical .rs-slider-handle.active .rs-tooltip { top: -33px; margin-left: 3px; } .rs-slider-mark { position: absolute; top: 15px; left: -2px; white-space: nowrap; } .rs-slider-mark-content { margin-left: -50%; } .rs-slider-mark-last { left: auto; right: -2px; } .rs-slider-mark-last .rs-slider-mark-content { margin-left: 50%; } .rs-slider-graduator { width: 100%; } .rs-slider-graduator ol, .rs-slider-graduator li { list-style: none; } .rs-slider-graduator > ol { display: -webkit-box; display: -ms-flexbox; display: flex; padding-left: 0; width: 100%; } .rs-slider-graduator > ol > li { -webkit-box-flex: 1; -ms-flex: 1 1 1%; flex: 1 1 1%; position: relative; } .rs-slider-graduator > ol > li:last-child::after, .rs-slider-graduator > ol > li::before { content: ''; display: block; position: absolute; width: 8px; height: 8px; border-radius: 50%; background-color: #fff; background-color: var(--rs-slider-thumb-bg); -webkit-box-sizing: border-box; box-sizing: border-box; border: 2px solid #f2f2f5; border: 2px solid var(--rs-slider-bar); margin-left: -4px; top: -1px; } .rs-slider-vertical .rs-slider-graduator > ol > li:last-child::after, .rs-slider-vertical .rs-slider-graduator > ol > li::before { top: unset; bottom: -4px; margin-left: -1px; } .rs-slider-graduator > ol > li:last-child::after { right: -4px; } .rs-slider-vertical .rs-slider-graduator > ol > li:last-child::after { left: 0; bottom: unset; top: -4px; } .rs-slider-graduator > ol > li.rs-slider-pass::before { border-color: #3498ff; border-color: var(--rs-slider-progress); } .rs-slider-graduator > ol > li.rs-slider-active::before { visibility: hidden; } .rs-slider-vertical .rs-slider-graduator { display: block; height: 100%; } .rs-slider-vertical .rs-slider-graduator > ol { width: 6px; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: reverse; -ms-flex-direction: column-reverse; flex-direction: column-reverse; height: 100%; padding: 0; } .rs-slider-vertical .rs-slider-graduator > ol > li { display: block; padding: 0; } .rs-slider-progress-bar { position: absolute; height: 6px; border-radius: 3px 0 0 3px; background-color: #3498ff; background-color: var(--rs-slider-progress); } .rs-slider-vertical .rs-slider-progress-bar { width: 6px; border-radius: 0 0 3px 3px; } .rs-slider-vertical { height: 100%; } .rs-slider-vertical .rs-slider-mark { top: unset; bottom: -8px; left: 15px; } .rs-slider-vertical .rs-slider-mark-content { margin-left: auto; } .rs-slider-vertical .rs-slider-mark-last { bottom: unset; top: -8px; }