primevue-mirror/components/lib/metergroup/style/MeterGroupStyle.js

123 lines
2.7 KiB
JavaScript
Raw Normal View History

2024-01-11 13:42:20 +00:00
import BaseStyle from 'primevue/base/style';
const theme = ({ dt }) => `
.p-metergroup {
display: flex;
gap: 1rem;
}
.p-metergroup-meters {
display: flex;
background: ${dt('metergroup.meters.background')};
border-radius: ${dt('rounded.base')};
}
.p-metergroup-meter {
border: 0 none;
}
.p-metergroup-label-list {
display: flex;
flex-wrap: wrap;
margin: 0;
padding: 0;
list-style-type: none;
}
.p-metergroup-label {
display: inline-flex;
align-items: center;
gap: 0.5rem;
}
.p-metergroup-label-marker {
display: inline-flex;
width: 0.5rem;
height: 0.5rem;
border-radius: 100%;
}
.p-metergroup-label-icon {
width: 1rem;
height: 1rem;
}
.p-metergroup-horizontal {
flex-direction: column;
}
.p-metergroup-label-list-horizontal {
gap: 1rem;
}
.p-metergroup-horizontal .p-metergroup-meters {
height: 0.5rem;
}
.p-metergroup-horizontal .p-metergroup-meter:first-of-type {
border-top-left-radius: ${dt('rounded.base')};
border-bottom-left-radius: ${dt('rounded.base')};
}
.p-metergroup-horizontal .p-metergroup-meter:last-of-type {
border-top-right-radius: ${dt('rounded.base')};
border-bottom-right-radius: ${dt('rounded.base')};
}
.p-metergroup-vertical {
flex-direction: row;
}
.p-metergroup-label-list-vertical {
flex-direction: column;
gap: 0.5rem;
}
.p-metergroup-vertical .p-metergroup-meters {
flex-direction: column;
width: 0.5rem;
height: 100%;
}
.p-metergroup-vertical .p-metergroup-label-list {
align-items: start;
}
.p-metergroup-vertical .p-metergroup-meter:first-of-type {
border-top-left-radius: ${dt('rounded.base')};
border-top-right-radius: ${dt('rounded.base')};
}
.p-metergroup-vertical .p-metergroup-meter:last-of-type {
border-bottom-left-radius: ${dt('rounded.base')};
border-bottom-right-radius: ${dt('rounded.base')};
}
`;
2024-01-11 13:42:20 +00:00
const classes = {
2024-01-18 12:53:33 +00:00
root: ({ props }) => [
2024-01-11 13:42:20 +00:00
'p-metergroup p-component',
{
2024-01-18 12:53:33 +00:00
'p-metergroup-horizontal': props.orientation === 'horizontal',
'p-metergroup-vertical': props.orientation === 'vertical'
2024-01-11 13:42:20 +00:00
}
],
2024-04-30 06:54:48 +00:00
meters: 'p-metergroup-meters',
2024-01-11 13:42:20 +00:00
meter: 'p-metergroup-meter',
2024-04-30 06:54:48 +00:00
labelList: ({ props }) => [
2024-04-08 11:13:22 +00:00
'p-metergroup-label-list',
2024-01-11 13:42:20 +00:00
{
2024-04-08 11:13:22 +00:00
'p-metergroup-label-list-vertical': props.labelOrientation === 'vertical',
'p-metergroup-label-list-horizontal': props.labelOrientation === 'horizontal'
2024-01-11 13:42:20 +00:00
}
],
2024-04-30 06:54:48 +00:00
label: 'p-metergroup-label',
labelIcon: 'p-metergroup-label-icon',
labelMarker: 'p-metergroup-label-marker',
labelText: 'p-metergroup-label-text'
2024-01-11 13:42:20 +00:00
};
export default BaseStyle.extend({
name: 'metergroup',
theme,
2024-01-11 13:42:20 +00:00
classes
});