diff --git a/package.json b/package.json index 8980f6f1..2526e693 100644 --- a/package.json +++ b/package.json @@ -11,6 +11,7 @@ }, "type": "module", "dependencies": { + "@fontsource/roboto": "5.0.12", "@json-layout/core": "^0.9.3", "@json-layout/vocabulary": "^0.9.1", "@koumoul/vjsf": "^3.0.0-beta.3", @@ -28,8 +29,6 @@ "markdown-it": "^14.0.0", "pinia": "^2.1.7", "register-service-worker": "^1.7.2", - "roboto-fontface": "*", - "unplugin-fonts": "^1.1.1", "vue": "^3.4.19", "vue-class-component": "^7.2.6", "vue-property-decorator": "^9.1.2", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 5862ee0b..bf6faf04 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -5,6 +5,9 @@ settings: excludeLinksFromLockfile: false dependencies: + '@fontsource/roboto': + specifier: 5.0.12 + version: 5.0.12 '@json-layout/core': specifier: ^0.9.3 version: 0.9.3 @@ -56,12 +59,6 @@ dependencies: register-service-worker: specifier: ^1.7.2 version: 1.7.2 - roboto-fontface: - specifier: '*' - version: 0.10.0 - unplugin-fonts: - specifier: ^1.1.1 - version: 1.1.1(vite@5.0.11) vue: specifier: ^3.4.19 version: 3.4.19(typescript@5.3.3) @@ -383,6 +380,10 @@ packages: engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} dev: true + /@fontsource/roboto@5.0.12: + resolution: {integrity: sha512-x0o17jvgoSSbS9OZnUX2+xJmVRvVCfeaYJjkS7w62iN7CuJWtMf5vJj8LqgC7ibqIkitOHVW+XssRjgrcHn62g==} + dev: false + /@humanwhocodes/config-array@0.11.14: resolution: {integrity: sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==} engines: {node: '>=10.10.0'} @@ -462,10 +463,12 @@ packages: dependencies: '@nodelib/fs.stat': 2.0.5 run-parallel: 1.2.0 + dev: true /@nodelib/fs.stat@2.0.5: resolution: {integrity: sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==} engines: {node: '>= 8'} + dev: true /@nodelib/fs.walk@1.2.8: resolution: {integrity: sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==} @@ -473,6 +476,7 @@ packages: dependencies: '@nodelib/fs.scandir': 2.1.5 fastq: 1.15.0 + dev: true /@rollup/plugin-commonjs@25.0.7: resolution: {integrity: sha512-nEvcR+LRjEjsaSsc4x3XZfCCvZIaSMenZu/OiwOKGN2UhQpAYI7ru7czFvyWbErlpoGjnSX3D5Ch5FcMA3kRWQ==} @@ -1119,12 +1123,6 @@ packages: hasBin: true dev: true - /acorn@8.11.3: - resolution: {integrity: sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg==} - engines: {node: '>=0.4.0'} - hasBin: true - dev: false - /ajv-errors@3.0.0(ajv@8.12.0): resolution: {integrity: sha512-V3wD15YHfHz6y0KdhYFjyy9vWtEVALT9UrxfN3zqlI6dMioHnJrqOYfyPKol3oqrnCM9uwkcdCwkJ0WUcbLMTQ==} peerDependencies: @@ -1285,21 +1283,6 @@ packages: optionalDependencies: fsevents: 2.3.3 - /chokidar@3.6.0: - resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==} - engines: {node: '>= 8.10.0'} - dependencies: - anymatch: 3.1.3 - braces: 3.0.2 - glob-parent: 5.1.2 - is-binary-path: 2.1.0 - is-glob: 4.0.3 - normalize-path: 3.0.0 - readdirp: 3.6.0 - optionalDependencies: - fsevents: 2.3.3 - dev: false - /color-convert@2.0.1: resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} engines: {node: '>=7.0.0'} @@ -1592,6 +1575,7 @@ packages: glob-parent: 5.1.2 merge2: 1.4.1 micromatch: 4.0.5 + dev: true /fast-json-stable-stringify@2.1.0: resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} @@ -1605,6 +1589,7 @@ packages: resolution: {integrity: sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==} dependencies: reusify: 1.0.4 + dev: true /file-entry-cache@6.0.1: resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==} @@ -2022,6 +2007,7 @@ packages: /merge2@1.4.1: resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} engines: {node: '>= 8'} + dev: true /micromatch@4.0.5: resolution: {integrity: sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA==} @@ -2029,6 +2015,7 @@ packages: dependencies: braces: 3.0.2 picomatch: 2.3.1 + dev: true /minimatch@3.1.2: resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} @@ -2229,6 +2216,7 @@ packages: /queue-microtask@1.2.3: resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} + dev: true /readdirp@3.6.0: resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} @@ -2270,6 +2258,7 @@ packages: /reusify@1.0.4: resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} engines: {iojs: '>=1.0.0', node: '>=0.10.0'} + dev: true /rimraf@3.0.2: resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} @@ -2278,10 +2267,6 @@ packages: glob: 7.2.3 dev: true - /roboto-fontface@0.10.0: - resolution: {integrity: sha512-OlwfYEgA2RdboZohpldlvJ1xngOins5d7ejqnIBWr9KaMxsnBqotpptRXTyfNRLnFpqzX6sTDt+X+a+6udnU8g==} - dev: false - /rollup@4.9.3: resolution: {integrity: sha512-JnchF0ZGFiqGpAPjg3e89j656Ne4tTtCY1VZc1AxtoQcRIxjTu9jyYHBAtkDXE+X681n4un/nX9SU52AroSRzg==} engines: {node: '>=18.0.0', npm: '>=8.0.0'} @@ -2308,6 +2293,7 @@ packages: resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} dependencies: queue-microtask: 1.2.3 + dev: true /sass@1.69.7: resolution: {integrity: sha512-rzj2soDeZ8wtE2egyLXgOOHQvaC2iosZrkF6v3EUG+tBwEvhqUCzm0VP3k9gHF9LXbSrRhT5SksoI56Iw8NPnQ==} @@ -2436,30 +2422,6 @@ packages: /undici-types@5.26.5: resolution: {integrity: sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==} - /unplugin-fonts@1.1.1(vite@5.0.11): - resolution: {integrity: sha512-/Aw/rL9D2aslGGM0vi+2R2aG508RSwawLnnBuo+JDSqYc4cHJO1R1phllhN6GysEhBp/6a4B6+vSFPVapWyAAw==} - peerDependencies: - '@nuxt/kit': ^3.0.0 - vite: ^2.0.0 || ^3.0.0 || ^4.0.0 || ^5.0.0 - peerDependenciesMeta: - '@nuxt/kit': - optional: true - dependencies: - fast-glob: 3.3.2 - unplugin: 1.9.0 - vite: 5.0.11(@types/node@20.10.6)(sass@1.69.7) - dev: false - - /unplugin@1.9.0: - resolution: {integrity: sha512-14PslvMY3gNbXnQtNIRB566Q057L5Fe7f5LDEamxVi0QQVxoz5hrveBwwZLcKyHtZ09ysmipxRRj5Lv+BGz2Iw==} - engines: {node: '>=14.0.0'} - dependencies: - acorn: 8.11.3 - chokidar: 3.6.0 - webpack-sources: 3.2.3 - webpack-virtual-modules: 0.6.1 - dev: false - /upath@2.0.1: resolution: {integrity: sha512-1uEe95xksV1O0CYKXo8vQvN1JEbtJp7lb7C5U9HMsIp6IVwntkH/oNUzyVNQSd4S1sYk2FpSSW44FqMc8qee5w==} engines: {node: '>=4'} @@ -2653,15 +2615,6 @@ packages: vite-plugin-vuetify: 2.0.1(vite@5.0.11)(vue@3.4.19)(vuetify@3.5.5) vue: 3.4.19(typescript@5.3.3) - /webpack-sources@3.2.3: - resolution: {integrity: sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==} - engines: {node: '>=10.13.0'} - dev: false - - /webpack-virtual-modules@0.6.1: - resolution: {integrity: sha512-poXpCylU7ExuvZK8z+On3kX+S8o/2dQ/SVYueKA0D4WEMXROXgY8Ez50/bQEUmvoSMMrWcrJqCHuhAbsiwg7Dg==} - dev: false - /which-typed-array@1.1.13: resolution: {integrity: sha512-P5Nra0qjSncduVPEAr7xhoF5guty49ArDTwzJ/yNuPIbZppyRxFQsRCWrocxIY+CnMVG+qfbU2FmDKyvSGClow==} engines: {node: '>= 0.4'} diff --git a/src/main.ts b/src/main.ts index 644f7a1b..a4641663 100644 --- a/src/main.ts +++ b/src/main.ts @@ -2,6 +2,7 @@ // Copyright 2020 - 2022 Pionix GmbH and Contributors to EVerest import "@mdi/font/css/materialdesignicons.css"; +import "@fontsource/roboto/index.css"; import Vue from "vue"; import {createApp} from "vue"; import "./registerServiceWorker"; diff --git a/vite.config.ts b/vite.config.ts index 7017824e..92f0d75d 100644 --- a/vite.config.ts +++ b/vite.config.ts @@ -1,7 +1,6 @@ import Vue from '@vitejs/plugin-vue'; import Vuetify, {transformAssetUrls} from 'vite-plugin-vuetify'; import {defineConfig, loadEnv} from "vite"; -import ViteFonts from 'unplugin-fonts/vite'; import {commonjsDeps} from '@koumoul/vjsf/utils/build'; import {fileURLToPath} from "node:url"; import commonjs from "@rollup/plugin-commonjs"; @@ -10,40 +9,30 @@ export default defineConfig(({ mode}) => { loadEnv(mode, process.cwd(), ''); return { base: mode === 'pages' ? `/everest-admin-panel/${process.env.SUBDIR}` : '', - optimizeDeps: { + optimizeDeps: { + include: commonjsDeps, + }, + build: { + commonjsOptions: { include: commonjsDeps, + } + }, + plugins: [ + commonjs(), + Vue({ + template: { transformAssetUrls } + }), + Vuetify({ + autoImport: true, + }), + ], + resolve: { + alias: { + '@': fileURLToPath(new URL('./src', import.meta.url)) }, - build: { - commonjsOptions: { - include: commonjsDeps, - } - }, - plugins: [ - commonjs(), - Vue({ - template: { transformAssetUrls } - }), - Vuetify({ - autoImport: true, - }), - ViteFonts({ - google: { - families: [ { - name: 'Roboto', - styles: 'wght@100;300;400;500;700;900', - }], - }, - }) - ], - resolve: { - alias: { - '@': fileURLToPath(new URL('./src', import.meta.url)) - }, - extensions: ['.mjs', '.js', '.ts', '.jsx', '.tsx', '.json'], - }, - server: { - port: 8080, - }, - - } + extensions: ['.mjs', '.js', '.ts', '.jsx', '.tsx', '.json'], + }, + server: { + port: 8080, + },} });