70 lines
1.2 KiB
JavaScript
70 lines
1.2 KiB
JavaScript
import BaseStyle from 'primevue/base/style';
|
|
|
|
const css = `
|
|
.p-virtualscroller {
|
|
position: relative;
|
|
overflow: auto;
|
|
contain: strict;
|
|
transform: translateZ(0);
|
|
will-change: scroll-position;
|
|
outline: 0 none;
|
|
}
|
|
|
|
.p-virtualscroller-content {
|
|
position: absolute;
|
|
top: 0;
|
|
left: 0;
|
|
/* contain: content; */
|
|
min-height: 100%;
|
|
min-width: 100%;
|
|
will-change: transform;
|
|
}
|
|
|
|
.p-virtualscroller-spacer {
|
|
position: absolute;
|
|
top: 0;
|
|
left: 0;
|
|
height: 1px;
|
|
width: 1px;
|
|
transform-origin: 0 0;
|
|
pointer-events: none;
|
|
}
|
|
|
|
.p-virtualscroller .p-virtualscroller-loader {
|
|
position: sticky;
|
|
top: 0;
|
|
left: 0;
|
|
width: 100%;
|
|
height: 100%;
|
|
}
|
|
|
|
.p-virtualscroller-loader.p-component-overlay {
|
|
display: flex;
|
|
align-items: center;
|
|
justify-content: center;
|
|
}
|
|
|
|
.p-virtualscroller-loading-icon {
|
|
font-size: 2rem;
|
|
}
|
|
|
|
.p-virtualscroller-loading-icon.p-icon {
|
|
width: 2rem;
|
|
height: 2rem;
|
|
}
|
|
|
|
.p-virtualscroller-horizontal > .p-virtualscroller-content {
|
|
display: flex;
|
|
}
|
|
|
|
/* Inline */
|
|
.p-virtualscroller-inline .p-virtualscroller-content {
|
|
position: static;
|
|
}
|
|
`;
|
|
|
|
export default BaseStyle.extend({
|
|
name: 'virtualscroller',
|
|
css
|
|
});
|