mirror of
https://github.com/gosticks/react-bootstrap-table2.git
synced 2025-10-16 11:55:39 +00:00
30 lines
884 B
JavaScript
30 lines
884 B
JavaScript
/* eslint no-return-assign: 0 */
|
|
import React from 'react';
|
|
import LoadingOverlay from 'react-loading-overlay';
|
|
|
|
export default options => (element, loading) =>
|
|
class TableLoadingOverlayWrapper extends React.Component {
|
|
componentDidMount() {
|
|
if (loading) {
|
|
const { wrapper } = this.overlay;
|
|
const masker = wrapper.firstChild;
|
|
const headerDOM = wrapper.parentElement.querySelector('thead');
|
|
const bodyDOM = wrapper.parentElement.querySelector('tbody');
|
|
masker.style.marginTop = window.getComputedStyle(headerDOM).height;
|
|
masker.style.height = window.getComputedStyle(bodyDOM).height;
|
|
}
|
|
}
|
|
|
|
render() {
|
|
return (
|
|
<LoadingOverlay
|
|
ref={ n => this.overlay = n }
|
|
{ ...options }
|
|
active={ loading }
|
|
>
|
|
{ element }
|
|
</LoadingOverlay>
|
|
);
|
|
}
|
|
};
|