Add reports page with sales analytics and UI components

Introduces comprehensive reports feature with interactive sales dashboard
Includes dynamic data tables, charts, and filtering capabilities
Enhances application with new statistics and reporting functionality
This commit is contained in:
Janus C. H. Knudsen 2026-01-21 21:37:09 +01:00
parent 6ef001e35f
commit 405dabeb34
15 changed files with 1909 additions and 212 deletions

View file

@ -1,49 +1,74 @@
<swp-profile-drawer id="profileDrawer">
<swp-drawer-header>
<swp-drawer-title>Profil</swp-drawer-title>
<swp-drawer-close id="closeProfileDrawer">
<swp-drawer-title localize="profile.title">Min profil</swp-drawer-title>
<swp-drawer-close id="drawerClose">
<i class="ph ph-x"></i>
</swp-drawer-close>
</swp-drawer-header>
<swp-drawer-content>
<swp-profile-section>
<swp-profile-avatar-large>MJ</swp-profile-avatar-large>
<swp-profile-name-large>Maria Jensen</swp-profile-name-large>
<swp-profile-email>maria@salon.dk</swp-profile-email>
</swp-profile-section>
<swp-drawer-profile>
<swp-drawer-avatar>MJ</swp-drawer-avatar>
<swp-drawer-name>Maria Jensen</swp-drawer-name>
<swp-drawer-role>Administrator</swp-drawer-role>
<swp-drawer-email>maria@salon.dk</swp-drawer-email>
</swp-drawer-profile>
<swp-drawer-divider></swp-drawer-divider>
<swp-drawer-section>
<swp-drawer-section-label localize="profile.account">Konto</swp-drawer-section-label>
<swp-drawer-item>
<i class="ph ph-user-circle"></i>
<swp-drawer-item-text localize="profile.editProfile">Rediger profil</swp-drawer-item-text>
<i class="ph ph-caret-right"></i>
</swp-drawer-item>
<swp-drawer-item>
<i class="ph ph-key"></i>
<swp-drawer-item-text localize="profile.changePassword">Skift adgangskode</swp-drawer-item-text>
<i class="ph ph-caret-right"></i>
</swp-drawer-item>
<swp-drawer-item id="openNotificationSettings">
<i class="ph ph-bell"></i>
<swp-drawer-item-text localize="profile.notifications">Notifikationer</swp-drawer-item-text>
<swp-drawer-item-hint>3 ulæste</swp-drawer-item-hint>
</swp-drawer-item>
<swp-drawer-item id="openTodoDrawer">
<i class="ph ph-check-square"></i>
<swp-drawer-item-text localize="profile.myTasks">Mine opgaver</swp-drawer-item-text>
<swp-drawer-item-hint>2 i dag</swp-drawer-item-hint>
</swp-drawer-item>
</swp-drawer-section>
<swp-drawer-menu>
<swp-drawer-menu-item>
<i class="ph ph-user"></i>
<span>Min profil</span>
</swp-drawer-menu-item>
<swp-drawer-menu-item>
<i class="ph ph-gear"></i>
<span>Indstillinger</span>
</swp-drawer-menu-item>
</swp-drawer-menu>
<swp-drawer-section>
<swp-drawer-section-label localize="profile.appearance">Udseende</swp-drawer-section-label>
<swp-theme-toggle id="themeToggleDrawer">
<swp-theme-option data-theme="light" title="Lyst tema">
<i class="ph ph-sun"></i>
</swp-theme-option>
<swp-theme-option data-theme="dark" class="active" title="Mørkt tema">
<i class="ph ph-moon"></i>
</swp-theme-option>
</swp-theme-toggle>
</swp-drawer-section>
<swp-drawer-divider></swp-drawer-divider>
<swp-theme-toggle>
<swp-theme-label>
<i class="ph ph-moon"></i>
<span>Mørk tilstand</span>
</swp-theme-label>
<swp-toggle-switch id="themeToggle">
<input type="checkbox" id="themeCheckbox">
<swp-toggle-track></swp-toggle-track>
</swp-toggle-switch>
</swp-theme-toggle>
<swp-drawer-section>
<swp-drawer-section-label localize="profile.support">Support</swp-drawer-section-label>
<swp-drawer-item>
<i class="ph ph-question"></i>
<swp-drawer-item-text localize="profile.helpSupport">Hjælp & Support</swp-drawer-item-text>
<i class="ph ph-caret-right"></i>
</swp-drawer-item>
<swp-drawer-item>
<i class="ph ph-info"></i>
<swp-drawer-item-text localize="profile.about">Om PlanTempus</swp-drawer-item-text>
<swp-drawer-item-hint>v2.1.0</swp-drawer-item-hint>
</swp-drawer-item>
</swp-drawer-section>
</swp-drawer-content>
<swp-drawer-footer>
<swp-drawer-action class="logout" id="logoutBtn">
<i class="ph ph-sign-out"></i>
<span>Log ud</span>
<span localize="profile.logout">Log ud</span>
</swp-drawer-action>
</swp-drawer-footer>
</swp-profile-drawer>