mirror of
https://github.com/appwrite/console.git
synced 2026-06-06 19:27:48 +00:00
fix: hide empty segment.
This commit is contained in:
@@ -9,19 +9,31 @@
|
||||
*/
|
||||
export let maxSize: $$Props['maxSize'];
|
||||
|
||||
/**
|
||||
* Hides empty segments where size is < 0;
|
||||
*/
|
||||
export let hideEmptySegments: $$Props['hideEmptySegments'];
|
||||
|
||||
/**
|
||||
* The data for the progressbar
|
||||
*/
|
||||
export let data: $$Props['data'];
|
||||
|
||||
$: segments = hideEmptySegments ? data.filter((item) => item.size > 0) : data;
|
||||
|
||||
/**
|
||||
* The remaining value of the progressbar
|
||||
*/
|
||||
$: remainder = data.reduce((sum: number, item: ProgressbarData) => sum - item.size, maxSize);
|
||||
$: remainder = segments.reduce(
|
||||
(sum: number, item: ProgressbarData) => sum - item.size,
|
||||
maxSize
|
||||
);
|
||||
|
||||
$: segmentGap = segments.length > 1 ? '2px' : '0px';
|
||||
</script>
|
||||
|
||||
<section class="progressbar__container">
|
||||
{#each $$props.data as item}
|
||||
<section class="progressbar__container" style:--progressbar-segment-gap={segmentGap}>
|
||||
{#each segments as item}
|
||||
<Tooltip disabled={!item.tooltip} maxWidth="max-content">
|
||||
<div
|
||||
class="progressbar__content"
|
||||
@@ -64,7 +76,7 @@
|
||||
border-radius: var(--progressbar-border-radius);
|
||||
display: flex;
|
||||
flex-direction: row;
|
||||
gap: 2px;
|
||||
gap: var(--progressbar-segment-gap, 2px);
|
||||
margin-top: 1rem;
|
||||
overflow: hidden;
|
||||
}
|
||||
|
||||
@@ -11,6 +11,7 @@ export type ProgressbarData = {
|
||||
|
||||
export type ProgressbarProps = {
|
||||
maxSize: number;
|
||||
hideEmptySegments?: boolean;
|
||||
data: Array<ProgressbarData>;
|
||||
};
|
||||
|
||||
|
||||
+4
-1
@@ -145,7 +145,10 @@
|
||||
</span>
|
||||
</Tooltip>
|
||||
</Layout.Stack>
|
||||
<ProgressBar maxSize={bytesMax} data={getProgressData(bytesUsed, bytesMax, size)} />
|
||||
<ProgressBar
|
||||
hideEmptySegments
|
||||
maxSize={bytesMax}
|
||||
data={getProgressData(bytesUsed, bytesMax, size)} />
|
||||
{#if exceedsLimit}
|
||||
<Typography.Text variant="m-400" color="--fgcolor-danger">
|
||||
This column exceeds the remaining row space. Consider using text, mediumtext, or
|
||||
|
||||
Reference in New Issue
Block a user