210a84dcf8
The crop frame had width:100% together with max-height, so the height was clamped while the width stayed - the frame lost the target aspect ratio and object-fit:fill stretched the picture into it. Measured at 390px: frame 0.843 instead of 0.778, picture 8.3% too wide. The width now follows from the allowed height and the ratio, and the image carries its own aspect-ratio instead of a second percentage, so it cannot stretch at all. Dragging was fine but felt dead: at fill zoom the crop sits at the stop in one axis. The editor now states which way it can move, double-tap zooms, arrow keys nudge, and the zoom slider shows its factor. Sizes: 41 -> 86 in ten groups, including US inch sizes, instant-film picture areas, cards, DIN A0-A7 and eleven aspect ratios as physical sizes. The tab is called Drucken now; /druck and /passbilder redirect there.
43 lines
1.1 KiB
JSON
43 lines
1.1 KiB
JSON
{
|
|
"name": "klarbild",
|
|
"type": "module",
|
|
"version": "0.1.0",
|
|
"private": true,
|
|
"scripts": {
|
|
"dev": "astro dev",
|
|
"build": "astro build",
|
|
"start": "node ./dist/server/entry.mjs",
|
|
"migrate": "node --loader tsx ./scripts/migrate.mjs",
|
|
"astro": "astro",
|
|
"test": "node --experimental-strip-types --test tests/*.test.ts"
|
|
},
|
|
"dependencies": {
|
|
"@astrojs/node": "^9.1.3",
|
|
"@astrojs/react": "^4.2.1",
|
|
"@aws-sdk/client-s3": "^3.700.0",
|
|
"@aws-sdk/s3-request-presigner": "^3.700.0",
|
|
"@fontsource/space-grotesk": "^5.1.0",
|
|
"@fontsource/space-mono": "^5.1.0",
|
|
"archiver": "^7.0.1",
|
|
"argon2": "^0.41.1",
|
|
"astro": "^5.5.0",
|
|
"basic-ftp": "^5.0.5",
|
|
"grammy": "^1.30.0",
|
|
"heic-convert": "^2.1.0",
|
|
"pdf-lib": "^1.17.1",
|
|
"pg": "^8.13.1",
|
|
"pg-boss": "^10.1.5",
|
|
"react": "^19.0.0",
|
|
"react-dom": "^19.0.0",
|
|
"sharp": "^0.33.5",
|
|
"ssh2-sftp-client": "^11.0.0"
|
|
},
|
|
"devDependencies": {
|
|
"@types/pg": "^8.11.10",
|
|
"@types/react": "^19.0.0",
|
|
"@types/react-dom": "^19.0.0",
|
|
"playwright": "^1.62.1",
|
|
"typescript": "^5.7.2"
|
|
}
|
|
}
|