⬆ Upgrades many dependencies, resolves many security warnings

This commit is contained in:
Alicia Sykes 2026-03-08 20:13:40 +00:00
parent 70f0ed1e13
commit c02e23211f
8 changed files with 3302 additions and 5382 deletions

View file

@ -21,7 +21,7 @@
"dependency-audit": "npx improved-yarn-audit --ignore-dev-deps"
},
"dependencies": {
"@babel/core": "^7.0.0",
"@babel/core": "^7.26.0",
"@formschema/native": "^2.0.0-beta.6",
"@sentry/tracing": "^7.102.1",
"@sentry/vue": "^7.102.1",
@ -29,7 +29,7 @@
"axios": "^1.12.0",
"connect-history-api-fallback": "^1.6.0",
"crypto-js": "^4.2.0",
"express": "^4.17.2",
"express": "^4.21.0",
"express-basic-auth": "^1.2.1",
"frappe-charts": "^1.6.2",
"js-yaml": "^4.1.0",
@ -54,24 +54,24 @@
"vuex": "^3.6.2"
},
"devDependencies": {
"@babel/preset-env": "^7.17.10",
"@babel/preset-env": "^7.26.0",
"@vitest/ui": "^1.6.0",
"@vue/cli-plugin-babel": "^4.5.15",
"@vue/cli-plugin-eslint": "^4.5.15",
"@vue/cli-plugin-pwa": "^4.5.15",
"@vue/cli-plugin-babel": "^5.0.8",
"@vue/cli-plugin-eslint": "^5.0.8",
"@vue/cli-plugin-pwa": "^5.0.8",
"@vue/cli-plugin-typescript": "^5.0.8",
"@vue/cli-service": "^4.5.19",
"@vue/cli-service": "^5.0.8",
"@babel/eslint-parser": "^7.25.0",
"@vue/eslint-config-standard": "^4.0.0",
"@vue/test-utils": "^1.3.6",
"babel-eslint": "^10.0.1",
"copy-webpack-plugin": "6.4.0",
"eslint": "^6.8.0",
"eslint": "^7.32.0",
"eslint-config-airbnb": "^18.0.1",
"eslint-plugin-vue": "^7.9.0",
"happy-dom": "^14.12.0",
"happy-dom": "^17.4.0",
"npm-run-all": "^4.1.5",
"sass": "^1.38.0",
"sass-loader": "^7.1.0",
"sass": "^1.77.0",
"sass-loader": "^12.0.0",
"typescript": "^5.4.4",
"vite-plugin-vue2": "^2.0.3",
"vitest": "^1.6.0",
@ -99,7 +99,7 @@
"no-else-return": 0
},
"parserOptions": {
"parser": "babel-eslint"
"parser": "@babel/eslint-parser"
},
"overrides": [
{
@ -115,7 +115,7 @@
},
"babel": {
"presets": [
"@vue/app",
"@vue/cli-plugin-babel/preset",
"@babel/preset-env"
]
},
@ -127,5 +127,18 @@
"browserslist": [
"> 1%",
"last 2 versions"
]
],
"resolutions": {
"ejs": "^3.1.10",
"loader-utils": "^2.0.4",
"minimatch": "^3.1.2",
"braces": "^3.0.3",
"micromatch": "^4.0.8",
"serialize-javascript": "^6.0.2",
"node-forge": "^1.3.1",
"nth-check": "^2.1.1",
"ip": "^2.0.1",
"postcss": "^8.4.31",
"tar": "^6.2.1"
}
}

View file

@ -12,6 +12,7 @@
<link rel="icon" type="image/png" sizes="16x16" href="web-icons/favicon-16x16.png">
<link rel="icon" type="image/png" href="/favicon.ico" />
<link rel="stylesheet" type="text/css" href="/loading-screen.css" />
<link rel="stylesheet" type="text/css" href="/theme-fonts.css" media="print" onload="this.media='all'" />
<!-- Default Page Title -->
<title>Dashy</title>
</head>

44
public/theme-fonts.css Normal file
View file

@ -0,0 +1,44 @@
/* Optional fonts for specific themes, served statically from public/ */
@font-face {
font-family: 'Cutive Mono';
src: url('/fonts/CutiveMono-Regular.ttf');
}
@font-face {
font-family: 'Francois One';
src: url('/fonts/FrancoisOne-Regular.ttf');
}
@font-face {
font-family: 'Podkova';
src: url('/fonts/Podkova-Medium.ttf');
}
@font-face {
font-family: 'Roboto';
src: url('/fonts/Roboto-Light.ttf');
}
@font-face {
font-family: 'Sniglet';
src: url('/fonts/Sniglet-Regular.ttf');
}
@font-face {
font-family: 'VT323';
src: url('/fonts/VT323-Regular.ttf');
}
@font-face {
font-family: 'Audiowide';
src: url('/fonts/Audiowide-Regular.ttf');
}
@font-face {
font-family: 'Shrikhand';
src: url('/fonts/Shrikhand-Regular.ttf');
}
@font-face {
font-family: 'Digital';
src: url('/fonts/Digital-Regular.ttf');
}
@font-face {
font-family: 'OpenWeatherIcons';
src: url('/widget-resources/WeatherIcons.woff2');
font-style: normal;
font-weight: 400;
}

View file

@ -85,10 +85,6 @@ export default {
</script>
<style scoped lang="scss">
@font-face {
font-family: 'Digital';
src: url('/fonts/Digital-Regular.ttf');
}
.clock {
padding: 0.5rem 0;

View file

@ -41,37 +41,3 @@ html {
font-weight: normal;
}
}
/* Optional fonts for specific themes */
/* These fonts are loaded from ./public so not bundled within dist */
@font-face { // Used by body text in Matrix and Hacker themes. Credit to the late Vernon Adams, RIP
font-family: 'Cutive Mono';
src: url('/fonts/CutiveMono-Regular.ttf');
}
@font-face { // Heading text in Material and Material Dark. Credit to Vernon Adams
font-family: 'Francois One';
src: url('/fonts/FrancoisOne-Regular.ttf');
}
@font-face { // Heading text in Colorful theme. Credit to Cyreal
font-family: 'Podkova';
src: url('/fonts/Podkova-Medium.ttf');
}
@font-face { // Standard body text in material original. Credit to Christian Robertson
font-family: 'Roboto';
src: url('/fonts/Roboto-Light.ttf');
}
@font-face { // Heading text in Jam, Bee and Tiger themes. Credit to Haley Fiege
font-family: 'Sniglet';
src: url('/fonts/Sniglet-Regular.ttf');
}
@font-face { // Used by heading text in Matrix and Hacker themes. Credit to Peter Hull
font-family: 'VT323';
src: url('/fonts/VT323-Regular.ttf');
}
@font-face { // Used by cyberpunk theme. Credit to Astigmatic
font-family: 'Audiowide';
src: url('/fonts/Audiowide-Regular.ttf');
}
@font-face { // Used by Dracula, Lissy themes. Credit to Jonny Pinhorn
font-family: 'Shrikhand';
src: url('/fonts/Shrikhand-Regular.ttf');
}

View file

@ -4,12 +4,7 @@ Based on https://github.com/isneezy/open-weather-icons
Licensed under MIT - Copyright (c) 2017 Ivan Vilanculo
**/
@font-face {
font-family: 'OpenWeatherIcons';
src: url('/widget-resources/WeatherIcons.woff2');
font-style: normal;
font-weight: 400;
}
/* OpenWeatherIcons font-face is loaded via public/theme-fonts.css */
i.owi {
display: inline-block;

View file

@ -62,6 +62,15 @@ const configureWebpack = {
},
],
},
resolve: {
fallback: {
http: false,
https: false,
url: false,
timers: false,
stream: false,
},
},
performance: {
maxEntrypointSize: 10000000,
maxAssetSize: 10000000,
@ -69,18 +78,19 @@ const configureWebpack = {
};
// Development server config
const userDataDir = path.join(__dirname, process.env.USER_DATA_DIR || 'user-data');
const devServer = {
contentBase: [
path.join(__dirname, 'public'),
path.join(__dirname, process.env.USER_DATA_DIR || 'user-data'),
],
watchContentBase: true,
publicPath: '/',
static: {
directory: path.join(__dirname, 'public'),
},
watchFiles: {
paths: [userDataDir],
},
};
// Application pages
const pages = {
dashy: {
index: {
entry: 'src/main.js',
filename: 'index.html',
},

8527
yarn.lock

File diff suppressed because it is too large Load diff