diff --git a/src/resources/js/admin/routes.js b/src/resources/js/admin/routes.js --- a/src/resources/js/admin/routes.js +++ b/src/resources/js/admin/routes.js @@ -1,13 +1,18 @@ -import DashboardComponent from '../../vue/Admin/Dashboard' -import DistlistComponent from '../../vue/Admin/Distlist' -import DomainComponent from '../../vue/Admin/Domain' import LoginComponent from '../../vue/Login' import LogoutComponent from '../../vue/Logout' import PageComponent from '../../vue/Page' -import ResourceComponent from '../../vue/Admin/Resource' -import SharedFolderComponent from '../../vue/Admin/SharedFolder' -import StatsComponent from '../../vue/Admin/Stats' -import UserComponent from '../../vue/Admin/User' + +// Here's a list of lazy-loaded components +// Note: you can pack multiple components into the same chunk, webpackChunkName +// is also used to get a sensible file name instead of numbers + +const DashboardComponent = () => import(/* webpackChunkName: "../admin/pages" */ '../../vue/Admin/Dashboard') +const DistlistComponent = () => import(/* webpackChunkName: "../admin/pages" */ '../../vue/Admin/Distlist') +const DomainComponent = () => import(/* webpackChunkName: "../admin/pages" */ '../../vue/Admin/Domain') +const ResourceComponent = () => import(/* webpackChunkName: "../admin/pages" */ '../../vue/Admin/Resource') +const SharedFolderComponent = () => import(/* webpackChunkName: "../admin/pages" */ '../../vue/Admin/SharedFolder') +const StatsComponent = () => import(/* webpackChunkName: "../admin/pages" */ '../../vue/Admin/Stats') +const UserComponent = () => import(/* webpackChunkName: "../admin/pages" */ '../../vue/Admin/User') const routes = [ { diff --git a/src/resources/js/reseller/routes.js b/src/resources/js/reseller/routes.js --- a/src/resources/js/reseller/routes.js +++ b/src/resources/js/reseller/routes.js @@ -1,15 +1,20 @@ -import DashboardComponent from '../../vue/Reseller/Dashboard' -import DistlistComponent from '../../vue/Admin/Distlist' -import DomainComponent from '../../vue/Admin/Domain' -import InvitationsComponent from '../../vue/Reseller/Invitations' import LoginComponent from '../../vue/Login' import LogoutComponent from '../../vue/Logout' import PageComponent from '../../vue/Page' -import ResourceComponent from '../../vue/Admin/Resource' -import SharedFolderComponent from '../../vue/Admin/SharedFolder' -import StatsComponent from '../../vue/Reseller/Stats' -import UserComponent from '../../vue/Admin/User' -import WalletComponent from '../../vue/Wallet' + +// Here's a list of lazy-loaded components +// Note: you can pack multiple components into the same chunk, webpackChunkName +// is also used to get a sensible file name instead of numbers + +const DashboardComponent = () => import(/* webpackChunkName: "../reseller/pages" */ '../../vue/Reseller/Dashboard') +const DistlistComponent = () => import(/* webpackChunkName: "../reseller/pages" */ '../../vue/Admin/Distlist') +const DomainComponent = () => import(/* webpackChunkName: "../reseller/pages" */ '../../vue/Admin/Domain') +const InvitationsComponent = () => import(/* webpackChunkName: "../reseller/pages" */ '../../vue/Reseller/Invitations') +const ResourceComponent = () => import(/* webpackChunkName: "../reseller/pages" */ '../../vue/Admin/Resource') +const SharedFolderComponent = () => import(/* webpackChunkName: "../reseller/pages" */ '../../vue/Admin/SharedFolder') +const StatsComponent = () => import(/* webpackChunkName: "../reseller/pages" */ '../../vue/Reseller/Stats') +const UserComponent = () => import(/* webpackChunkName: "../reseller/pages" */ '../../vue/Admin/User') +const WalletComponent = () => import(/* webpackChunkName: "../reseller/pages" */ '../../vue/Wallet') const routes = [ { diff --git a/src/resources/js/user/routes.js b/src/resources/js/user/routes.js --- a/src/resources/js/user/routes.js +++ b/src/resources/js/user/routes.js @@ -1,28 +1,29 @@ -import DashboardComponent from '../../vue/Dashboard' -import DistlistInfoComponent from '../../vue/Distlist/Info' -import DistlistListComponent from '../../vue/Distlist/List' -import DomainInfoComponent from '../../vue/Domain/Info' -import DomainListComponent from '../../vue/Domain/List' import LoginComponent from '../../vue/Login' import LogoutComponent from '../../vue/Logout' -import MeetComponent from '../../vue/Rooms' import PageComponent from '../../vue/Page' import PasswordResetComponent from '../../vue/PasswordReset' -import ResourceInfoComponent from '../../vue/Resource/Info' -import ResourceListComponent from '../../vue/Resource/List' -import SharedFolderInfoComponent from '../../vue/SharedFolder/Info' -import SharedFolderListComponent from '../../vue/SharedFolder/List' import SignupComponent from '../../vue/Signup' -import UserInfoComponent from '../../vue/User/Info' -import UserListComponent from '../../vue/User/List' -import UserProfileComponent from '../../vue/User/Profile' -import UserProfileDeleteComponent from '../../vue/User/ProfileDelete' -import WalletComponent from '../../vue/Wallet' // Here's a list of lazy-loaded components // Note: you can pack multiple components into the same chunk, webpackChunkName // is also used to get a sensible file name instead of numbers -const RoomComponent = () => import(/* webpackChunkName: "room" */ '../../vue/Meet/Room.vue') + +const DashboardComponent = () => import(/* webpackChunkName: "../user/pages" */ '../../vue/Dashboard') +const DistlistInfoComponent = () => import(/* webpackChunkName: "../user/pages" */ '../../vue/Distlist/Info') +const DistlistListComponent = () => import(/* webpackChunkName: "../user/pages" */ '../../vue/Distlist/List') +const DomainInfoComponent = () => import(/* webpackChunkName: "../user/pages" */ '../../vue/Domain/Info') +const DomainListComponent = () => import(/* webpackChunkName: "../user/pages" */ '../../vue/Domain/List') +const MeetComponent = () => import(/* webpackChunkName: "../user/pages" */ '../../vue/Rooms') +const ResourceInfoComponent = () => import(/* webpackChunkName: "../user/pages" */ '../../vue/Resource/Info') +const ResourceListComponent = () => import(/* webpackChunkName: "../user/pages" */ '../../vue/Resource/List') +const SharedFolderInfoComponent = () => import(/* webpackChunkName: "../user/pages" */ '../../vue/SharedFolder/Info') +const SharedFolderListComponent = () => import(/* webpackChunkName: "../user/pages" */ '../../vue/SharedFolder/List') +const UserInfoComponent = () => import(/* webpackChunkName: "../user/pages" */ '../../vue/User/Info') +const UserListComponent = () => import(/* webpackChunkName: "../user/pages" */ '../../vue/User/List') +const UserProfileComponent = () => import(/* webpackChunkName: "../user/pages" */ '../../vue/User/Profile') +const UserProfileDeleteComponent = () => import(/* webpackChunkName: "../user/pages" */ '../../vue/User/ProfileDelete') +const WalletComponent = () => import(/* webpackChunkName: "../user/pages" */ '../../vue/Wallet') +const RoomComponent = () => import(/* webpackChunkName: "../user/meet" */ '../../vue/Meet/Room.vue') const routes = [ { diff --git a/src/resources/themes/app.scss b/src/resources/themes/app.scss --- a/src/resources/themes/app.scss +++ b/src/resources/themes/app.scss @@ -167,6 +167,13 @@ line-height: 1; padding: 0; } + + td { + & > svg + a, + & > svg + span { + margin-left: .4em; + } + } } .list-details { diff --git a/src/resources/themes/forms.scss b/src/resources/themes/forms.scss --- a/src/resources/themes/forms.scss +++ b/src/resources/themes/forms.scss @@ -100,6 +100,12 @@ margin-top: -0.25rem; } +.buttons { + & > button + button { + margin-left: .5em; + } +} + // Various improvements for mobile @include media-breakpoint-down(sm) { .row.mb-3 { diff --git a/src/resources/vue/Admin/Distlist.vue b/src/resources/vue/Admin/Distlist.vue --- a/src/resources/vue/Admin/Distlist.vue +++ b/src/resources/vue/Admin/Distlist.vue @@ -36,7 +36,7 @@ -
+
diff --git a/src/resources/vue/Admin/Domain.vue b/src/resources/vue/Admin/Domain.vue --- a/src/resources/vue/Admin/Domain.vue +++ b/src/resources/vue/Admin/Domain.vue @@ -24,7 +24,7 @@
-
+
diff --git a/src/resources/vue/Admin/User.vue b/src/resources/vue/Admin/User.vue --- a/src/resources/vue/Admin/User.vue +++ b/src/resources/vue/Admin/User.vue @@ -58,7 +58,7 @@
{{ user.external_email }} - +
@@ -75,7 +75,7 @@
-
+
@@ -147,7 +147,7 @@
{{ wallet.discount ? (wallet.discount + '% - ' + wallet.discount_description) : 'none' }} - +
@@ -172,7 +172,7 @@
-
+
@@ -230,7 +230,7 @@
¹ {{ $t('user.discount-hint') }}: {{ discount }}% - {{ discount_description }} -
+
diff --git a/src/resources/vue/PasswordReset.vue b/src/resources/vue/PasswordReset.vue --- a/src/resources/vue/PasswordReset.vue +++ b/src/resources/vue/PasswordReset.vue @@ -29,7 +29,7 @@
- +
@@ -49,18 +49,18 @@
-
+
- - + + - +
Second factor code is optional for users with no 2-Factor Authentication setup.
- +
diff --git a/src/resources/vue/Signup.vue b/src/resources/vue/Signup.vue --- a/src/resources/vue/Signup.vue +++ b/src/resources/vue/Signup.vue @@ -36,7 +36,7 @@ - + @@ -53,7 +53,7 @@ - + @@ -95,7 +95,7 @@ - + diff --git a/src/resources/vue/Wallet.vue b/src/resources/vue/Wallet.vue --- a/src/resources/vue/Wallet.vue +++ b/src/resources/vue/Wallet.vue @@ -32,7 +32,7 @@
{{ $t('wallet.auto-payment-inprogress') }}
-

+

diff --git a/src/resources/vue/Widgets/Menu.vue b/src/resources/vue/Widgets/Menu.vue --- a/src/resources/vue/Widgets/Menu.vue +++ b/src/resources/vue/Widgets/Menu.vue @@ -35,7 +35,7 @@