petals-ui
Version:
Front-end UI components foundation
26 lines (25 loc) • 867 B
JavaScript
import { getComponentConfig, normalizeLooseSize, BaseHeadlessComponent } from '../../basic';
class ImageHeadlessComponent extends BaseHeadlessComponent {
getComponentName() {
return getComponentConfig('image', 'name') || 'Image';
}
getClassNames() {
const classNames = [this.getComponentName()];
if (this.needFit()) {
const fitType = this.sc.fit;
const fitModifier = `fit${fitType.charAt(0).toUpperCase()}${fitType.slice(1)}`;
classNames.push(this.getModifierClassName(fitModifier));
}
return classNames;
}
getWidth() {
return normalizeLooseSize(this.sc.width);
}
getHeight() {
return normalizeLooseSize(this.sc.height);
}
needFit() {
return this.sc.fit ? this.sc.fit !== 'none' : false;
}
}
export { ImageHeadlessComponent };