chore: merge executor worktree (worktree-agent-af89750bf86857964)
@@ -12,7 +12,8 @@
|
||||
"test": "vitest run",
|
||||
"test:e2e": "playwright test",
|
||||
"test:e2e:ui": "playwright test --ui",
|
||||
"test:e2e:headed": "playwright test --headed"
|
||||
"test:e2e:headed": "playwright test --headed",
|
||||
"pwa:icons": "pwa-assets-generator --config pwa-assets.config.ts && cp public/pwa-192x192.png public/icon-192.png && cp public/pwa-512x512.png public/icon-512.png && cp public/maskable-icon-512x512.png public/icon-maskable-512.png && cp public/apple-touch-icon-180x180.png public/apple-touch-icon.png && cp public/logo.svg public/favicon.svg"
|
||||
},
|
||||
"dependencies": {
|
||||
"@dnd-kit/core": "^6.3.1",
|
||||
@@ -36,14 +37,15 @@
|
||||
},
|
||||
"devDependencies": {
|
||||
"@playwright/test": "1.60.0",
|
||||
"mysql2": "3.22.4",
|
||||
"@testing-library/jest-dom": "^6.6.3",
|
||||
"@testing-library/react": "^16.3.0",
|
||||
"@types/node": "^22.19.19",
|
||||
"@types/react": "^19.0.0",
|
||||
"@types/react-dom": "^19.0.0",
|
||||
"@vite-pwa/assets-generator": "1.0.2",
|
||||
"@vitejs/plugin-react": "^4.3.0",
|
||||
"jsdom": "^26.1.0",
|
||||
"mysql2": "3.22.4",
|
||||
"typescript": "^5.5.0",
|
||||
"vite": "8.0.16",
|
||||
"vitest": "^4.1.8",
|
||||
|
||||
|
Before Width: | Height: | Size: 617 B After Width: | Height: | Size: 1.7 KiB |
|
After Width: | Height: | Size: 967 B |
@@ -0,0 +1,44 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" fill="none">
|
||||
<defs>
|
||||
<linearGradient id="bg" x1="0" y1="0" x2="0" y2="1">
|
||||
<stop offset="0" stop-color="#FFEFE0"/>
|
||||
<stop offset="1" stop-color="#FBD9BE"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="roof" x1="0" y1="0" x2="0" y2="1">
|
||||
<stop offset="0" stop-color="#EE9A5E"/>
|
||||
<stop offset="1" stop-color="#E2823F"/>
|
||||
</linearGradient>
|
||||
</defs>
|
||||
|
||||
<!-- Warm peach rounded-square background -->
|
||||
<rect width="512" height="512" rx="104" fill="url(#bg)"/>
|
||||
|
||||
<!-- Soft ground shadow under the house -->
|
||||
<ellipse cx="256" cy="420" rx="150" ry="16" fill="#E2823F" opacity="0.14"/>
|
||||
|
||||
<!-- House walls: bold white, rounded, high contrast on peach -->
|
||||
<rect x="150" y="250" width="212" height="166" rx="26" fill="#FFFFFF"/>
|
||||
|
||||
<!-- Roof: amber, overhangs the walls, friendly thick form -->
|
||||
<path d="M256 108 L96 256 a14 14 0 0 0 9.5 24.5 L406.5 280.5 a14 14 0 0 0 9.5 -24.5 Z" fill="url(#roof)"/>
|
||||
|
||||
<!-- Heart finial above the roof peak -->
|
||||
<path d="M256 70 c-9 -16 -34 -12 -34 8 c0 14 18 24 34 38 c16 -14 34 -24 34 -38 c0 -20 -25 -24 -34 -8 Z" fill="#F25C7A"/>
|
||||
|
||||
<!-- ===== Family of three, clearly spaced inside the home ===== -->
|
||||
|
||||
<!-- Parent (rose) -->
|
||||
<path d="M170 408 v-40 a26 26 0 0 1 52 0 v40 Z" fill="#F25C7A"/>
|
||||
<circle cx="196" cy="332" r="25" fill="#FFD8B8"/>
|
||||
<path d="M171 330 a25 25 0 0 1 50 0 a40 40 0 0 0 -50 0 Z" fill="#6F4A38"/>
|
||||
|
||||
<!-- Child (warm gold), smaller, centered -->
|
||||
<path d="M234 408 v-30 a22 22 0 0 1 44 0 v30 Z" fill="#F2A93C"/>
|
||||
<circle cx="256" cy="350" r="21" fill="#FFD8B8"/>
|
||||
<path d="M235 349 a21 21 0 0 1 42 0 a34 34 0 0 0 -42 0 Z" fill="#C97D4A"/>
|
||||
|
||||
<!-- Parent (blue) -->
|
||||
<path d="M290 408 v-40 a26 26 0 0 1 52 0 v40 Z" fill="#4A90D9"/>
|
||||
<circle cx="316" cy="332" r="25" fill="#FFD8B8"/>
|
||||
<path d="M291 330 a25 25 0 0 1 50 0 a40 40 0 0 0 -50 0 Z" fill="#3A2A22"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.9 KiB |
|
Before Width: | Height: | Size: 699 B After Width: | Height: | Size: 2.8 KiB |
|
Before Width: | Height: | Size: 4.0 KiB After Width: | Height: | Size: 12 KiB |
|
After Width: | Height: | Size: 8.4 KiB |
@@ -0,0 +1,44 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" fill="none">
|
||||
<defs>
|
||||
<linearGradient id="bg" x1="0" y1="0" x2="0" y2="1">
|
||||
<stop offset="0" stop-color="#FFEFE0"/>
|
||||
<stop offset="1" stop-color="#FBD9BE"/>
|
||||
</linearGradient>
|
||||
<linearGradient id="roof" x1="0" y1="0" x2="0" y2="1">
|
||||
<stop offset="0" stop-color="#EE9A5E"/>
|
||||
<stop offset="1" stop-color="#E2823F"/>
|
||||
</linearGradient>
|
||||
</defs>
|
||||
|
||||
<!-- Warm peach rounded-square background -->
|
||||
<rect width="512" height="512" rx="104" fill="url(#bg)"/>
|
||||
|
||||
<!-- Soft ground shadow under the house -->
|
||||
<ellipse cx="256" cy="420" rx="150" ry="16" fill="#E2823F" opacity="0.14"/>
|
||||
|
||||
<!-- House walls: bold white, rounded, high contrast on peach -->
|
||||
<rect x="150" y="250" width="212" height="166" rx="26" fill="#FFFFFF"/>
|
||||
|
||||
<!-- Roof: amber, overhangs the walls, friendly thick form -->
|
||||
<path d="M256 108 L96 256 a14 14 0 0 0 9.5 24.5 L406.5 280.5 a14 14 0 0 0 9.5 -24.5 Z" fill="url(#roof)"/>
|
||||
|
||||
<!-- Heart finial above the roof peak -->
|
||||
<path d="M256 70 c-9 -16 -34 -12 -34 8 c0 14 18 24 34 38 c16 -14 34 -24 34 -38 c0 -20 -25 -24 -34 -8 Z" fill="#F25C7A"/>
|
||||
|
||||
<!-- ===== Family of three, clearly spaced inside the home ===== -->
|
||||
|
||||
<!-- Parent (rose) -->
|
||||
<path d="M170 408 v-40 a26 26 0 0 1 52 0 v40 Z" fill="#F25C7A"/>
|
||||
<circle cx="196" cy="332" r="25" fill="#FFD8B8"/>
|
||||
<path d="M171 330 a25 25 0 0 1 50 0 a40 40 0 0 0 -50 0 Z" fill="#6F4A38"/>
|
||||
|
||||
<!-- Child (warm gold), smaller, centered -->
|
||||
<path d="M234 408 v-30 a22 22 0 0 1 44 0 v30 Z" fill="#F2A93C"/>
|
||||
<circle cx="256" cy="350" r="21" fill="#FFD8B8"/>
|
||||
<path d="M235 349 a21 21 0 0 1 42 0 a34 34 0 0 0 -42 0 Z" fill="#C97D4A"/>
|
||||
|
||||
<!-- Parent (blue) -->
|
||||
<path d="M290 408 v-40 a26 26 0 0 1 52 0 v40 Z" fill="#4A90D9"/>
|
||||
<circle cx="316" cy="332" r="25" fill="#FFD8B8"/>
|
||||
<path d="M291 330 a25 25 0 0 1 50 0 a40 40 0 0 0 -50 0 Z" fill="#3A2A22"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.9 KiB |
@@ -0,0 +1,10 @@
|
||||
import { defineConfig, minimal2023Preset } from '@vite-pwa/assets-generator/config'
|
||||
|
||||
export default defineConfig({
|
||||
preset: {
|
||||
...minimal2023Preset,
|
||||
},
|
||||
images: ['public/logo.svg'],
|
||||
// Do NOT set overrideManifestIcons: true — the manifest is maintained by hand
|
||||
// in vite.config.ts (plan 17-04); auto-override would stomp the explicit entries.
|
||||
})
|
||||