diff --git a/src/components/cube.jsx b/src/components/cube.jsx
index 7a9e998d..11e3c355 100644
--- a/src/components/cube.jsx
+++ b/src/components/cube.jsx
@@ -22,7 +22,7 @@ import './cube.pcss';
// The component needs to be wrapped in `forwardRef` to give access to the
// ref object assigned using the `ref` prop.
const Cube = forwardRef(({
- app, tableData: { initialColumns }, closeOnClickOutside, id, isLocalStorage,
+ app, tableData: { initialColumns }, closeOnClickOutside, id, isLocalStorage, closeCube,
}, ref) => {
const selectableColumns = useColumnOptions(app);
const [columns, setColumns] = useState(initialColumns);
@@ -156,6 +156,11 @@ const Cube = forwardRef(({
if (isEmpty && addOpen.current) {
return popup;
}
+
+ if (isEmpty && closeCube) {
+ closeCube(id);
+ }
+
return (
{popup}
@@ -173,6 +178,7 @@ export default Cube;
Cube.defaultProps = {
closeOnClickOutside: () => true,
isLocalStorage: false,
+ closeCube: undefined,
};
Cube.propTypes = {
@@ -181,4 +187,5 @@ Cube.propTypes = {
closeOnClickOutside: PropTypes.func,
id: PropTypes.number.isRequired,
isLocalStorage: PropTypes.bool,
+ closeCube: PropTypes.func,
};
diff --git a/src/components/cube.pcss b/src/components/cube.pcss
index 1cbf531f..c0f7c684 100644
--- a/src/components/cube.pcss
+++ b/src/components/cube.pcss
@@ -33,9 +33,5 @@
.hypercube-table {
flex: 1 1 auto;
}
-
- .column-add-button.empty {
- border-right: 1px solid #d9d9d9;
- }
}
}
diff --git a/src/components/cubes.jsx b/src/components/cubes.jsx
index 5fc0cb3d..97ac8afc 100644
--- a/src/components/cubes.jsx
+++ b/src/components/cubes.jsx
@@ -100,7 +100,7 @@ export function Cubes({ app, closeOnClickOutside, isLocalStorage }) {
copyToClipboard(cube.id)} title="Copy hypercube def to clipboard" />
removeCube(cube.id)} title="Close cube" />
-
+
));
return (