- ${this.viewTabs.map(
- (view) => html`
+ ${this.viewTabs.map((view) => {
+ const hasSubs = !!view.subViews?.length;
+ const groupActive = hasSubs && this.isGroupActive(view);
+ return html`
this.loadView(view)}
>
${view.iconName ? html`
@@ -575,9 +627,34 @@ export class DeesSimpleAppDash extends DeesElement {
`}
${view.name}
+ ${hasSubs ? html`
+
+ ` : ''}
- `
- )}
+ ${hasSubs && groupActive ? html`
+
+ ${view.subViews!.map(
+ (sub) => html`
+
{
+ e.stopPropagation();
+ this.loadView(sub);
+ }}
+ >
+ ${sub.iconName ? html`
+
+ ` : html`
+
+ `}
+ ${sub.name}
+
+ `
+ )}
+
+ ` : ''}
+ `;
+ })}