sl tab wrappers

This commit is contained in:
Ian Gulliver
2024-12-21 21:42:54 -08:00
parent e351828d07
commit 7af1112a73
11 changed files with 279 additions and 29 deletions

27
ts/sltabgroup.ts Normal file
View File

@@ -0,0 +1,27 @@
import { ElemWrapper } from "./elemwrapper";
import { SLTab } from "./sltab";
import { SLTabPanel } from "./sltabpanel";
export class SLTabGroup extends ElemWrapper {
constructor() {
super(document.createElement("sl-tab-group"));
}
addTab(panel: string): SLTab {
const tab = new SLTab(panel);
this.appendAfterLastChild("sl-tab", tab);
return tab;
}
addTabPanel(name: string): SLTabPanel {
const tabPanel = new SLTabPanel(name);
this.appendAfterLastChild("sl-tab-panel", tabPanel);
return tabPanel;
}
addTabSet(name: string): [SLTab, SLTabPanel] {
return [
this.addTab(name),
this.addTabPanel(name),
];
}
}