summaryrefslogtreecommitdiffstats
path: root/grid
diff options
context:
space:
mode:
authorivarlovlie <git@ivarlovlie.no>2020-11-17 22:33:03 +0100
committerivarlovlie <git@ivarlovlie.no>2020-11-17 22:33:03 +0100
commitef513ab232e6a6a738da64ad65febbf099e438a3 (patch)
tree73b507fbb1f93873068121b6474565b13ee1fbb6 /grid
parent90dee7245e89de3f8cf60d816e976781fd9425d9 (diff)
downloadweb-components-ef513ab232e6a6a738da64ad65febbf099e438a3.tar.xz
web-components-ef513ab232e6a6a738da64ad65febbf099e438a3.zip
more versatile css class configuration
Diffstat (limited to 'grid')
-rw-r--r--grid/src/grid.ts19
1 files changed, 14 insertions, 5 deletions
diff --git a/grid/src/grid.ts b/grid/src/grid.ts
index 374f6ca..794e49b 100644
--- a/grid/src/grid.ts
+++ b/grid/src/grid.ts
@@ -7,7 +7,7 @@ interface GridProps {
columns: Array<GridColumn>;
pageSize?: number;
search?: SearchConfiguration;
- tableClassName?: string;
+ classes?: GridClasses;
}
interface GridConfiguration {
@@ -17,7 +17,12 @@ interface GridConfiguration {
columns: Array<GridColumn>;
pageSize: number;
search: SearchConfiguration;
- tableClassName: string;
+ classes: GridClasses;
+}
+
+interface GridClasses {
+ table: string;
+ thead: string;
}
interface SearchConfiguration {
@@ -41,7 +46,10 @@ export default class Grid {
columns: [],
data: [],
pageSize: 0,
- tableClassName: "table",
+ classes: {
+ table: "table",
+ thead: "table-light",
+ },
search: {
dataIds: [],
},
@@ -71,7 +79,7 @@ export default class Grid {
this.configuration.id = props.id ?? this.defaultOptions.id;
this.configuration.debug = props.debug ?? this.defaultOptions.debug;
this.configuration.pageSize = props.pageSize ?? this.defaultOptions.pageSize;
- this.configuration.tableClassName = props.tableClassName ?? this.defaultOptions.tableClassName;
+ this.configuration.classes = props.classes ?? this.defaultOptions.classes;
this.configuration.search = props.search ?? this.defaultOptions.search;
}
@@ -141,7 +149,8 @@ export default class Grid {
const table = document.createElement("table");
const thead = document.createElement("thead");
const tbody = document.createElement("tbody");
- table.className = this.configuration.tableClassName;
+ table.className = this.configuration.classes.table;
+ thead.className = this.configuration.classes.thead;
table.appendChild(thead);
table.appendChild(tbody);
wrapper.appendChild(table);