nehan
Version:
Html layout engine for paged-media written in Typescript
31 lines • 1.11 kB
JavaScript
import { LogicalEdgeSize, LogicalEdgeDirections, CssText, } from "./public-api";
export class LogicalPadding extends LogicalEdgeSize {
static parseShorthand(css_text) {
let vs = CssText.getValue4D(css_text.value);
return [
{ prop: "padding-before", value: vs[0] },
{ prop: "padding-end", value: vs[1] },
{ prop: "padding-after", value: vs[2] },
{ prop: "padding-start", value: vs[3] }
];
}
static load(element) {
return new LogicalPadding(LogicalEdgeDirections.reduce((size, direction) => {
size[direction] = LogicalEdgeSize.loadDirection(element, `padding-${direction}`);
return size;
}, {}));
}
static get none() {
return new LogicalPadding(LogicalEdgeSize.zeroValue);
}
clone() {
return new LogicalPadding(this.values);
}
getPropByLogicalDirection(direction) {
return `padding-${direction}`;
}
acceptCssEvaluator(visitor) {
return visitor.visitLogicalMargin(this);
}
}
//# sourceMappingURL=logical-padding.js.map