@bulmil/core
Version:

76 lines (71 loc) • 4.69 kB
JavaScript
/*!
* Bulmil - MIT License
*/
import { HTMLElement, h, proxyCustomElement } from '@stencil/core/internal/client';
const tableCss = ".table-container:not(:last-child),.table:not(:last-child){margin-bottom:1.5rem}.table{background-color:white;color:#363636}.table td,.table th{border:1px solid #dbdbdb;border-width:0 0 1px;padding:0.5em 0.75em;vertical-align:top}.table td.is-white,.table th.is-white{background-color:white;border-color:white;color:#0a0a0a}.table td.is-black,.table th.is-black{background-color:#0a0a0a;border-color:#0a0a0a;color:white}.table td.is-light,.table th.is-light{background-color:whitesmoke;border-color:whitesmoke;color:rgba(0, 0, 0, 0.7)}.table td.is-dark,.table th.is-dark{background-color:#363636;border-color:#363636;color:#fff}.table td.is-primary,.table th.is-primary{background-color:#5851ff;border-color:#5851ff;color:#fff}.table td.is-link,.table th.is-link{background-color:#5851ff;border-color:#5851ff;color:#fff}.table td.is-info,.table th.is-info{background-color:#3e8ed0;border-color:#3e8ed0;color:#fff}.table td.is-success,.table th.is-success{background-color:#48c78e;border-color:#48c78e;color:#fff}.table td.is-warning,.table th.is-warning{background-color:#ffe08a;border-color:#ffe08a;color:rgba(0, 0, 0, 0.7)}.table td.is-danger,.table th.is-danger{background-color:#f14668;border-color:#f14668;color:#fff}.table td.is-narrow,.table th.is-narrow{white-space:nowrap;width:1%}.table td.is-selected,.table th.is-selected{background-color:#5851ff;color:#fff}.table td.is-selected a,.table td.is-selected strong,.table th.is-selected a,.table th.is-selected strong{color:currentColor}.table td.is-vcentered,.table th.is-vcentered{vertical-align:middle}.table th{color:#363636}.table th:not([align]){text-align:inherit}.table tr.is-selected{background-color:#5851ff;color:#fff}.table tr.is-selected a,.table tr.is-selected strong{color:currentColor}.table tr.is-selected td,.table tr.is-selected th{border-color:#fff;color:currentColor}.table thead{background-color:transparent}.table thead td,.table thead th{border-width:0 0 2px;color:#363636}.table tfoot{background-color:transparent}.table tfoot td,.table tfoot th{border-width:2px 0 0;color:#363636}.table tbody{background-color:transparent}.table tbody tr:last-child td,.table tbody tr:last-child th{border-bottom-width:0}.table.is-bordered td,.table.is-bordered th{border-width:1px}.table.is-bordered tr:last-child td,.table.is-bordered tr:last-child th{border-bottom-width:1px}.table.is-fullwidth{width:100%}.table.is-hoverable tbody tr:not(.is-selected):hover{background-color:#fafafa}.table.is-hoverable.is-striped tbody tr:not(.is-selected):hover{background-color:#fafafa}.table.is-hoverable.is-striped tbody tr:not(.is-selected):hover:nth-child(even){background-color:whitesmoke}.table.is-narrow td,.table.is-narrow th{padding:0.25em 0.5em}.table.is-striped tbody tr:not(.is-selected):nth-child(even){background-color:#fafafa}.table-container{-webkit-overflow-scrolling:touch;overflow:auto;overflow-y:hidden;max-width:100%}";
let Table = class extends HTMLElement {
constructor() {
super();
this.__registerHost();
/**
* Bordered
*/
this.isBordered = false;
/**
* Striped
*/
this.isStriped = false;
/**
* Scrollable
*/
this.isScrollable = false;
/**
* Narrow
*/
this.isNarrow = false;
/**
* Hoverable
*/
this.isHoverable = false;
/**
* Fullwidth
*/
this.isFullwidth = false;
}
render() {
const table = (h("table", { class: {
table: true,
'is-bordered': this.isBordered,
'is-striped': this.isStriped,
'is-narrow': this.isNarrow,
'is-hoverable': this.isHoverable,
'is-fullwidth': this.isFullwidth,
} }, h("slot", null)));
return this.isScrollable ? h("div", { class: "table-container" }, table) : table;
}
static get style() { return tableCss; }
};
Table = /*@__PURE__*/ proxyCustomElement(Table, [4, "bm-table", {
"isBordered": [4, "is-bordered"],
"isStriped": [4, "is-striped"],
"isScrollable": [4, "is-scrollable"],
"isNarrow": [4, "is-narrow"],
"isHoverable": [4, "is-hoverable"],
"isFullwidth": [4, "is-fullwidth"]
}]);
function defineCustomElement$1() {
if (typeof customElements === "undefined") {
return;
}
const components = ["bm-table"];
components.forEach(tagName => { switch (tagName) {
case "bm-table":
if (!customElements.get(tagName)) {
customElements.define(tagName, Table);
}
break;
} });
}
const BmTable = Table;
const defineCustomElement = defineCustomElement$1;
export { BmTable, defineCustomElement };