@sandlada/mdk
Version:
A JavaScript library based on Material Design 3, providing data such as color, shape, shadow level, etc.
60 lines (59 loc) • 2.59 kB
JavaScript
export class Space {
Key;
Value;
Unit;
toJSON() { return ({ Key: this.Key, Value: this.Value, Unit: this.Unit }); }
ToCSSDeclaration({ Semicolon = false } = {}) {
return `${this.Key}: ${this.Value}${this.Unit}${Semicolon ? ';' : ''}`;
}
ToCSSVariable() {
return `var(${this.Key}, ${this.Value}${this.Unit})`;
}
ToCSSValue() {
return `${this.Value}${this.Unit}`;
}
toString() { return this.ToCSSDeclaration(); }
constructor(Key, Value, Unit) {
this.Key = Key;
this.Value = Value;
this.Unit = Unit;
}
static Space0 = new Space('--md-sys-measurement-space0', 0, 'px');
static Space25 = new Space('--md-sys-measurement-space25', 2, 'px');
static Space50 = new Space('--md-sys-measurement-space50', 4, 'px');
static Space75 = new Space('--md-sys-measurement-space75', 6, 'px');
static Space100 = new Space('--md-sys-measurement-space100', 8, 'px');
static Space125 = new Space('--md-sys-measurement-space125', 10, 'px');
static Space150 = new Space('--md-sys-measurement-space150', 12, 'px');
static Space175 = new Space('--md-sys-measurement-space175', 14, 'px');
static Space200 = new Space('--md-sys-measurement-space200', 16, 'px');
static Space250 = new Space('--md-sys-measurement-space250', 20, 'px');
static Space300 = new Space('--md-sys-measurement-space300', 24, 'px');
static Space400 = new Space('--md-sys-measurement-space400', 32, 'px');
static Space450 = new Space('--md-sys-measurement-space450', 36, 'px');
static Space500 = new Space('--md-sys-measurement-space500', 40, 'px');
static Space600 = new Space('--md-sys-measurement-space600', 48, 'px');
static Space700 = new Space('--md-sys-measurement-space700', 56, 'px');
static Space800 = new Space('--md-sys-measurement-space800', 64, 'px');
static Space900 = new Space('--md-sys-measurement-space900', 72, 'px');
static AllEnums = {
Space0: Space.Space0,
Space25: Space.Space25,
Space50: Space.Space50,
Space75: Space.Space75,
Space100: Space.Space100,
Space125: Space.Space125,
Space150: Space.Space150,
Space175: Space.Space175,
Space200: Space.Space200,
Space250: Space.Space250,
Space300: Space.Space300,
Space400: Space.Space400,
Space450: Space.Space450,
Space500: Space.Space500,
Space600: Space.Space600,
Space700: Space.Space700,
Space800: Space.Space800,
Space900: Space.Space900
};
}