diff --git a/web/package-lock.json b/web/package-lock.json index 397d80e0..3cad293c 100644 --- a/web/package-lock.json +++ b/web/package-lock.json @@ -13,7 +13,6 @@ "@fullcalendar/interaction": "^6.1.15", "@fullcalendar/timegrid": "^6.1.15", "@fullcalendar/vue3": "^6.1.15", - "@mdi/font": "^7.4.47", "@types/underscore": "^1.13.0", "@vitejs/plugin-basic-ssl": "^1.2.0", "axios": "^1.7.9", @@ -36,6 +35,8 @@ "vuetify": "^3.7.5" }, "devDependencies": { + "@mdi/font": "^7.4.47", + "@mdi/js": "^7.4.47", "@typescript-eslint/eslint-plugin": "^8.17.0", "@typescript-eslint/parser": "^8.17.0", "@vitejs/plugin-vue": "^5.2.1", @@ -837,6 +838,14 @@ "version": "7.4.47", "resolved": "https://registry.npmjs.org/@mdi/font/-/font-7.4.47.tgz", "integrity": "sha512-43MtGpd585SNzHZPcYowu/84Vz2a2g31TvPMTm9uTiCSWzaheQySUcSyUH/46fPnuPQWof2yd0pGBtzee/IQWw==", + "dev": true, + "license": "Apache-2.0" + }, + "node_modules/@mdi/js": { + "version": "7.4.47", + "resolved": "https://registry.npmjs.org/@mdi/js/-/js-7.4.47.tgz", + "integrity": "sha512-KPnNOtm5i2pMabqZxpUz7iQf+mfrYZyKCZ8QNz85czgEt7cuHcGorWfdzUMWYA0SD+a6Hn4FmJ+YhzzzjkTZrQ==", + "dev": true, "license": "Apache-2.0" }, "node_modules/@nodelib/fs.scandir": { diff --git a/web/package.json b/web/package.json index 3c179b38..b504b04a 100644 --- a/web/package.json +++ b/web/package.json @@ -25,7 +25,6 @@ "@fullcalendar/interaction": "^6.1.15", "@fullcalendar/timegrid": "^6.1.15", "@fullcalendar/vue3": "^6.1.15", - "@mdi/font": "^7.4.47", "@types/underscore": "^1.13.0", "@vitejs/plugin-basic-ssl": "^1.2.0", "axios": "^1.7.9", @@ -48,6 +47,8 @@ "vuetify": "^3.7.5" }, "devDependencies": { + "@mdi/font": "^7.4.47", + "@mdi/js": "^7.4.47", "@typescript-eslint/eslint-plugin": "^8.17.0", "@typescript-eslint/parser": "^8.17.0", "@vitejs/plugin-vue": "^5.2.1", diff --git a/web/public/styles/WorkSans-Medium.ttf b/web/public/styles/WorkSans-Medium.ttf new file mode 100644 index 00000000..3c3a15a7 Binary files /dev/null and b/web/public/styles/WorkSans-Medium.ttf differ diff --git a/web/public/styles/WorkSans-Regular.ttf b/web/public/styles/WorkSans-Regular.ttf deleted file mode 100644 index 1954f4d7..00000000 Binary files a/web/public/styles/WorkSans-Regular.ttf and /dev/null differ diff --git a/web/public/styles/fonts.css b/web/public/styles/fonts.css index 5421545d..ea0b235a 100644 --- a/web/public/styles/fonts.css +++ b/web/public/styles/fonts.css @@ -1,9 +1,9 @@ @font-face { - font-family: 'WorkSans-Regular'; + font-family: 'WorkSans-Medium'; font-style: normal; - src: url('WorkSans-Regular.ttf') format('truetype'); + src: url('WorkSans-Medium.ttf') format('truetype'); } -html { - font-family: 'WorkSans-Regular', 'Work Sans', sans-serif; +* { + font-family: 'WorkSans-Medium', 'Work Sans', sans-serif; } diff --git a/web/src/main.ts b/web/src/main.ts index 2a3f60bb..66c1499d 100644 --- a/web/src/main.ts +++ b/web/src/main.ts @@ -1,5 +1,4 @@ import LoadingSpinner from '@components/LoadingSpinner.vue'; -import '@mdi/font/css/materialdesignicons.css'; import { createBootstrap } from 'bootstrap-vue-next'; import 'bootstrap-vue-next/dist/bootstrap-vue-next.css'; import 'bootstrap/dist/css/bootstrap.css'; diff --git a/web/src/plugins/vuetify.ts b/web/src/plugins/vuetify.ts index 4f1b20e9..310105b2 100644 --- a/web/src/plugins/vuetify.ts +++ b/web/src/plugins/vuetify.ts @@ -2,11 +2,19 @@ import { createVuetify } from 'vuetify'; import * as components from 'vuetify/components'; import { VBtn } from 'vuetify/components'; import * as directives from 'vuetify/directives'; +import { aliases, mdi } from 'vuetify/iconsets/mdi-svg'; import 'vuetify/styles'; // https://vuetifyjs.com/en/introduction/why-vuetify/#feature-guides export default createVuetify({ + icons: { + defaultSet: 'mdi', + aliases, + sets: { + mdi, + }, + }, components, directives, aliases: { @@ -14,6 +22,9 @@ export default createVuetify({ VBtnTertiary: VBtn, }, defaults: { + VContainer: { + fluid: true, + }, VBtn: { rounded: true, variant: 'flat', @@ -26,8 +37,20 @@ export default createVuetify({ }, VBtnTertiary: { rounded: true, - variant: 'outlined', class: 'text-none', + baseColor: '#183a4a', + }, + VSelect: { + bgColor: '#dae5f5', + rounded: true, + variant: 'solo', + clearable: true, + density: 'comfortable', + }, + VTextField: { + rounded: true, + dense: true, + variant: 'outlined', }, }, });