diff --git a/package.json b/package.json index 805457c3..357e389a 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "@zerva/monorepo", "type": "module", - "version": "0.65.1", + "version": "0.65.2", "private": true, "engines": { "node": ">=20.0.0" @@ -24,15 +24,15 @@ "update": "pnpm -r update -i --latest" }, "devDependencies": { - "@antfu/eslint-config": "^3.13.0", + "@antfu/eslint-config": "^3.14.0", "@antfu/ni": "^23.2.0", "@types/bun": "^1.1.16", "@types/jest": "^29.5.14", - "@types/node": "^22.10.5", - "bumpp": "^9.10.0", - "eslint": "^9.17.0", + "@types/node": "^22.10.7", + "bumpp": "^9.10.1", + "eslint": "^9.18.0", "only-allow": "^1.2.1", - "sort-package-json": "^2.12.0", + "sort-package-json": "^2.14.0", "tsup": "^8.3.5", "typescript": "^5.7.3", "vite": "^6.0.7", diff --git a/zerva-bin/package.json b/zerva-bin/package.json index abc31591..15e8111b 100644 --- a/zerva-bin/package.json +++ b/zerva-bin/package.json @@ -46,7 +46,7 @@ "test": "echo todo" }, "dependencies": { - "@types/node": "^22.10.5", + "@types/node": "^22.10.7", "display-notification": "^3.0.0", "esbuild": "^0.24.2", "esbuild-plugin-yaml": "^0.0.1", diff --git a/zerva-core/package.json b/zerva-core/package.json index 0d857d37..92e0bd40 100644 --- a/zerva-core/package.json +++ b/zerva-core/package.json @@ -54,7 +54,7 @@ }, "devDependencies": { "@types/jest": "^29.5.14", - "@types/node": "^22.10.5", + "@types/node": "^22.10.7", "@zerva/bin": "workspace:*", "tsup": "^8.3.5", "typescript": "^5.7.3", diff --git a/zerva-email/package.json b/zerva-email/package.json index bb2b258e..107816cf 100644 --- a/zerva-email/package.json +++ b/zerva-email/package.json @@ -57,7 +57,7 @@ "zeed": "^0.27.1" }, "devDependencies": { - "@types/node": "^22.10.5", + "@types/node": "^22.10.7", "tsup": "^8.3.5" } } diff --git a/zerva-http/package.json b/zerva-http/package.json index 68b1d995..2c2ee9c8 100644 --- a/zerva-http/package.json +++ b/zerva-http/package.json @@ -1,7 +1,7 @@ { "name": "@zerva/http", "type": "module", - "version": "0.65.1", + "version": "0.65.2", "description": "🌱 Zerva Express HTTP", "author": { "name": "Dirk Holtwick", @@ -54,7 +54,7 @@ "@types/compressible": "^2.0.2", "@types/cors": "^2.8.17", "@types/express": "^5.0.0", - "@types/express-serve-static-core": "^5.0.4", + "@types/express-serve-static-core": "^5.0.5", "@types/negotiator": "^0.6.3", "@types/on-headers": "^1.0.3", "@types/vary": "^1.1.3", diff --git a/zerva-http/src/http.ts b/zerva-http/src/http.ts index 57b42b65..d9b00692 100644 --- a/zerva-http/src/http.ts +++ b/zerva-http/src/http.ts @@ -118,7 +118,11 @@ export function useHttp(config?: { if (postJson) { log(`Post JSON, limit=${postLimit}`) - app.use(express.json({ limit: postLimit })) + app.use(express.json({ limit: postLimit, + verify: (req, res, buf) => { + if (req) + (req as any).rawBody = buf + } })) } if (postText) { @@ -244,7 +248,7 @@ export function useHttp(config?: { } } catch (err) { - log.warn(`Problems handling reuest for ${path}`, err) + log.warn(`Problems handling request for ${path}`, err) } }) } diff --git a/zerva-http/src/status.ts b/zerva-http/src/status.ts index ab7241c6..aba07f35 100644 --- a/zerva-http/src/status.ts +++ b/zerva-http/src/status.ts @@ -1,5 +1,5 @@ -import { Logger } from 'zeed' import type { LoggerInterface } from 'zeed' +import { Logger } from 'zeed' const log: LoggerInterface = Logger('status') diff --git a/zerva-mqtt/package.json b/zerva-mqtt/package.json index 6ea7ae2b..78b310eb 100644 --- a/zerva-mqtt/package.json +++ b/zerva-mqtt/package.json @@ -55,7 +55,7 @@ "zeed": "^0.27.1" }, "devDependencies": { - "@types/node": "^22.10.5", + "@types/node": "^22.10.7", "tsup": "^8.3.5" } } diff --git a/zerva-rpc/package.json b/zerva-rpc/package.json index 6483e41b..c32fc59b 100644 --- a/zerva-rpc/package.json +++ b/zerva-rpc/package.json @@ -60,7 +60,7 @@ "zeed": "^0.27.1" }, "devDependencies": { - "@types/node": "^22.10.5", + "@types/node": "^22.10.7", "@zerva/bin": "workspace:*", "tsup": "^8.3.5", "typescript": "^5.7.3", diff --git a/zerva-sqlite-bun/src/table.ts b/zerva-sqlite-bun/src/table.ts index 8d4dcdb7..ed46c46c 100644 --- a/zerva-sqlite-bun/src/table.ts +++ b/zerva-sqlite-bun/src/table.ts @@ -1,6 +1,6 @@ -import { arrayMinus, arraySorted, getTimestamp, isArray, isBoolean, isNumber, isPrimitive, isString, Logger } from 'zeed' import type { Database as SqliteDatabase, Statement as SqliteStatement } from 'bun:sqlite' import type { Primitive } from 'zeed' +import { arrayMinus, arraySorted, getTimestamp, isArray, isBoolean, isNumber, isPrimitive, isString, Logger } from 'zeed' // import type { SqliteDatabase, SqliteRunResult, SqliteStatement } from './sqlite' export interface SqliteRunResult { diff --git a/zerva-sqlite/package.json b/zerva-sqlite/package.json index 18394256..312df0e0 100644 --- a/zerva-sqlite/package.json +++ b/zerva-sqlite/package.json @@ -48,7 +48,7 @@ "watch": "tsup src/index.ts --watch" }, "dependencies": { - "better-sqlite3": "^11.7.2", + "better-sqlite3": "<11.8.0", "zeed": "^0.27.1" }, "devDependencies": { diff --git a/zerva-sqlite/src/table-schema.ts b/zerva-sqlite/src/table-schema.ts index 0a6298c0..b58e5b32 100644 --- a/zerva-sqlite/src/table-schema.ts +++ b/zerva-sqlite/src/table-schema.ts @@ -1,8 +1,8 @@ -import { arrayMinus, arraySorted, getTimestamp, isArray, isBoolean, isPrimitive, Logger } from 'zeed' import type { Infer, Primitive, Type } from 'zeed' -import { mapSchemaTypeToField } from './_types' import type { OrderByMany, SqliteTableDefault } from './_types' import type { SqliteDatabase, SqliteRunResult, SqliteStatement } from './sqlite' +import { arrayMinus, arraySorted, getTimestamp, isArray, isBoolean, isPrimitive, Logger } from 'zeed' +import { mapSchemaTypeToField } from './_types' const log = Logger('sqlite:table') diff --git a/zerva-sqlite/src/table.ts b/zerva-sqlite/src/table.ts index f7df2bd7..6b18bede 100644 --- a/zerva-sqlite/src/table.ts +++ b/zerva-sqlite/src/table.ts @@ -1,7 +1,7 @@ -import { arrayMinus, arraySorted, getTimestamp, isArray, isBoolean, isPrimitive, Logger } from 'zeed' import type { Primitive } from 'zeed' import type { OrderByMany, SqliteTableDefault } from './_types' import type { SqliteDatabase, SqliteRunResult, SqliteStatement } from './sqlite' +import { arrayMinus, arraySorted, getTimestamp, isArray, isBoolean, isPrimitive, Logger } from 'zeed' const log = Logger('sqlite:table') diff --git a/zerva-vite/package.json b/zerva-vite/package.json index a43b7887..a0e51946 100644 --- a/zerva-vite/package.json +++ b/zerva-vite/package.json @@ -1,7 +1,7 @@ { "name": "@zerva/vite", "type": "module", - "version": "0.65.1", + "version": "0.65.2", "description": "🌱 Zerva and Vite", "author": { "name": "Dirk Holtwick", diff --git a/zerva-vite/src/module.ts b/zerva-vite/src/module.ts index c88f2adf..a4e02281 100644 --- a/zerva-vite/src/module.ts +++ b/zerva-vite/src/module.ts @@ -23,6 +23,7 @@ export function useVite(config?: { www?: string mode?: string // hmr?: boolean + cacheAssets?: boolean }) { const log = LoggerFromConfig(config?.log ?? true, moduleName, LogLevelInfo) log(`use ${moduleName} ${process.env.ZERVA}`) @@ -35,6 +36,7 @@ export function useVite(config?: { www = './dist_www', mode = (ZERVA_DEVELOPMENT ? 'development' : 'production'), // hmr = true, + cacheAssets = true, } = config ?? {} const rootPath = toPath(root) @@ -95,10 +97,15 @@ export function useVite(config?: { const multiInputCache: Record = {} // Cache static assets - app.get(/[^\/]assets\//, (req: any, res: any) => { - res.setHeader('Cache-Control', 'max-age=31536000, immutable') - // Cache-Control: max-age=31536000, immutable - }) + if (cacheAssets) { + app.use((req, res, next) => { + const path = req.path + if (path.includes('/assets/') || /.*\.(?:png|ico|svg|jpg|pdf|jpeg|mp4|mp3|woff2|ttf|tflite)$/.test(req.path)) { + res.setHeader('Cache-Control', 'max-age=31536000, immutable') + } + next() + }) + } // Map dynamic routes to index.html app?.get(/.*/, (req: any, res: any) => { diff --git a/zerva-websocket/package.json b/zerva-websocket/package.json index 8c3ed9ea..a86b8598 100644 --- a/zerva-websocket/package.json +++ b/zerva-websocket/package.json @@ -62,7 +62,7 @@ "zeed": "^0.27.1" }, "devDependencies": { - "@types/node": "^22.10.5", + "@types/node": "^22.10.7", "@zerva/bin": "workspace:*", "tsup": "^8.3.5", "typescript": "^5.7.3",