//
// @description :
// @author : Adarsh Pastakia
// @copyright : 2016
// @license : MIT
import {autoinject, bindable, containerless, customElement, inlineView} from "aurelia-framework";
@customElement('ui-filler')
@inlineView('')
export class UIFiller { }
@autoinject()
@customElement('ui-row')
@inlineView('')
export class UIRow {
constructor(public element: Element) {
if (element.hasAttribute('top')) element.classList.add('ui-align-top');
if (element.hasAttribute('middle')) element.classList.add('ui-align-middle');
if (element.hasAttribute('bottom')) element.classList.add('ui-align-bottom');
if (element.hasAttribute('stretch')) element.classList.add('ui-align-stretch');
if (element.hasAttribute('start')) element.classList.add('ui-align-start');
if (element.hasAttribute('center')) element.classList.add('ui-align-center');
if (element.hasAttribute('end')) element.classList.add('ui-align-end');
if (element.hasAttribute('spaced')) element.classList.add('ui-align-spaced');
}
}
@autoinject()
@customElement('ui-row-column')
@inlineView('')
export class UIColumnRow {
constructor(public element: Element) {
if (element.hasAttribute('top')) element.classList.add('ui-align-top');
if (element.hasAttribute('middle')) element.classList.add('ui-align-middle');
if (element.hasAttribute('bottom')) element.classList.add('ui-align-bottom');
if (element.hasAttribute('stretch')) element.classList.add('ui-align-stretch');
if (element.hasAttribute('start')) element.classList.add('ui-align-start');
if (element.hasAttribute('center')) element.classList.add('ui-align-center');
if (element.hasAttribute('end')) element.classList.add('ui-align-end');
if (element.hasAttribute('spaced')) element.classList.add('ui-align-spaced');
}
}
@autoinject()
@customElement('ui-column')
@inlineView('')
export class UIColumn {
constructor(public element: Element) {
if (element.hasAttribute('top')) element.classList.add('ui-align-top');
if (element.hasAttribute('middle')) element.classList.add('ui-align-middle');
if (element.hasAttribute('bottom')) element.classList.add('ui-align-bottom');
if (element.hasAttribute('stretch')) element.classList.add('ui-align-stretch');
if (element.hasAttribute('auto')) element.classList.add('ui-col-auto');
if (element.hasAttribute('fill')) element.classList.add('ui-col-fill');
if (element.hasAttribute('full')) element.classList.add('ui-col-full');
if (element.hasAttribute('scroll')) element.classList.add('ui-scroll');
if (element.hasAttribute('padded')) element.classList.add('ui-pad-all');
}
bind() {
for (var size of this.size.split(' ')) {
this.element.classList.add(`ui-col-${size}`);
}
if (this.width) this.element['style'].flexBasis = this.width;
}
@bindable() size = '';
@bindable() width = '';
}