tethys.backend/resources/js/menu.ts
Arno Kaimbacher 36cd7a757b
All checks were successful
CI / container-job (push) Successful in 41s
feat: Integrate official drive_provider, update user profile features & UI improvements
- adonisrc.ts: Load official drive_provider and unload custom driver_provider.
- packages.json: Add @headlessui/vue dependency for tab components.
- AvatarController.ts: Rewrite avatar generation logic to always return the same avatar per user.
- auth/UserController.ts: Add profile and profileUpdate methods to support user profile editing.
- Submitter/datasetController.ts & app/models/file.ts: Adapt code to use the official drive_provider.
- app/models/user.ts: Introduce “isAdmin” getter.
- config/drive.ts: Create new configuration for the official drive_provider.
- providers/vinejs_provider.ts: Adapt allowedExtensions control to use provided options or database enabled extensions.
- resource/js/app.ts: Load default Head and Link components.
- resources/js/menu.ts: Add settings-profile.edit menu point.
- resources/js/Components/action-message.vue: Add new component for improved user feedback after form submissions.
- New avatar-input.vue component: Enable profile picture selection.
- Components/CardBox.vue: Alter layout to optionally show HeaderIcon in title bar.
- FormControl.vue: Define a readonly prop for textareas.
- Improve overall UI with updates to NavBar.vue, UserAvatar.vue, UserAvatarCurrentUser.vue, and add v-model support to password-meter.vue.
- Remove profile editing logic from AccountInfo.vue and introduce new profile components (show.vue, update-password-form.vue, update-profile-information.vue).
- app.edge: Modify page (add @inertiaHead tag) for better meta management.
- routes.ts: Add new routes for editing user profiles.
- General npm updates.
2025-02-27 16:24:25 +01:00

171 lines
4.2 KiB
TypeScript

import {
// mdiMonitor,
mdiGithub,
mdiAccountEye,
mdiAccountGroup,
mdiAccountEdit,
mdiPublish,
mdiAccountArrowUp,
mdiFormatListNumbered,
mdiLock,
mdiFormatListGroup,
mdiShieldCrownOutline,
mdiLicense,
mdiFileDocument,
} from '@mdi/js';
export default [
{
// route: 'dataset.create',
icon: mdiAccountEdit ,
label: 'Personal',
// roles: ['submitter'],
isOpen: true,
children: [
{
route: 'settings.user',
icon: mdiLock,
label: 'Security',
},
{
route: 'settings.profile.edit',
icon: mdiLock,
label: 'Profile',
},
// {
// route: 'dataset.create',
// icon: mdiPublish,
// label: 'Create Dataset',
// },
],
},
// {
// route: 'apps.dashboard',
// icon: mdiMonitor,
// label: 'Dashboard',
// },
// {
// route: 'permission.index',
// icon: mdiAccountKey,
// label: 'Permissions'
// },
// {
// route: 'role.index',
// icon: mdiAccountEye,
// label: 'Roles'
// },
{
icon: mdiShieldCrownOutline,
label: 'Administration',
roles: ['administrator'],
isOpen: true,
permanent: true,
children: [
{
route: 'settings.overview',
icon: mdiFormatListGroup,
label: 'Overview',
roles: ['administrator'],
},
{
route: 'settings.user.index',
icon: mdiAccountGroup,
label: 'Users',
roles: ['administrator'],
},
{
route: 'settings.role.index',
icon: mdiAccountEye,
label: 'Roles',
roles: ['administrator'],
},
{
route: 'settings.mimetype.index',
icon: mdiFileDocument,
label: 'Mime Types',
roles: ['administrator'],
},
{
route: 'settings.license.index',
icon: mdiLicense,
label: 'Licenses',
roles: ['administrator'],
},
],
},
{
// route: 'dataset.create',
icon: mdiAccountArrowUp,
label: 'Submitter',
roles: ['submitter'],
isOpen: false,
children: [
{
route: 'dataset.list',
icon: mdiFormatListNumbered,
label: 'All my datasets',
},
{
route: 'dataset.create',
icon: mdiPublish,
label: 'Create Dataset',
},
],
},
{
// route: 'dataset.create',
icon: mdiAccountEdit,
label: 'Editor',
roles: ['editor'],
isOpen: false,
children: [
{
route: 'editor.dataset.list',
icon: mdiFormatListNumbered,
label: 'All my datasets',
},
// {
// route: 'dataset.create',
// icon: mdiPublish,
// label: 'Create Dataset',
// },
],
},
{
// route: 'dataset.create',
icon: mdiAccountEdit,
label: 'Reviewer',
roles: ['reviewer'],
isOpen: false,
children: [
{
route: 'reviewer.dataset.list',
icon: mdiFormatListNumbered,
label: 'All my datasets',
},
// {
// route: 'dataset.create',
// icon: mdiPublish,
// label: 'Create Dataset',
// },
],
},
// {
// route: 'dataset.create',
// icon: mdiDatabasePlus,
// label: 'Create Dataset',
// },
{
href: 'https://gitea.geosphere.at/geolba/tethys.backend',
icon: mdiGithub,
label: 'Forgejo',
target: '_blank',
},
{
href: '/oai',
icon: mdiAccountEye,
label: 'OAI',
target: '_blank',
},
];