Android / Build, or is the channel already serving this? (push) Successful in 3s
CI & Build / Build now, or wait for Android? (push) Successful in 2s
CI & Build / TypeScript typecheck (push) Successful in 8s
CI & Build / Python lint (push) Successful in 2s
CI & Build / Python tests (push) Successful in 14s
Desktop (Tauri) / Build, or is the channel already serving this? (push) Successful in 3s
CI & Build / integration (push) Successful in 43s
CI & Build / Build & push image (push) Skipped
Desktop (Tauri) / Windows installer (cross-compiled) (push) Successful in 4m25s
Desktop (Tauri) / Tauri desktop (Linux) (push) Successful in 7m13s
Desktop (Tauri) / Update manifest (push) Successful in 8s
Android / Kotlin + Rust (APK) (push) Canceled after 11m42s
Step 5 of milestone 481. Replaces the linked-notes constellation, which had been stale since note links were dropped (alembic 0024). The colour scheme stays. packaging/icons.py draws the mark once and renders every variant from it: the rounded tile (web, desktop), the maskable full-bleed web icon, and the Android adaptive foreground. The detail (shaft, vane splits, glint) is cut out of the ink with a mask rather than painted on in yellow, because the Android foreground is now transparent and its alpha is also the themed-icon silhouette. The old foreground was the opaque maskable tile, which a themed icon would have drawn as a solid square. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
31 lines
1.5 KiB
XML
31 lines
1.5 KiB
XML
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512" role="img" aria-label="Inkwell">
|
|
<!-- Maskable variant: full-bleed background so platform masks (circle, squircle,
|
|
rounded-square) never clip the mark, which sits inside the central 80% safe
|
|
zone. Same mark as icon.svg. -->
|
|
<rect width="512" height="512" fill="#F5C518"/>
|
|
<g transform="translate(256 256) scale(0.8) translate(-262 -226)">
|
|
<defs>
|
|
<mask id="inkwell-cuts" maskUnits="userSpaceOnUse" x="0" y="0" width="512" height="512">
|
|
<rect width="512" height="512" fill="#fff"/>
|
|
<g stroke="#000" fill="none">
|
|
<g transform="translate(256 232) rotate(34)">
|
|
<path d="M1 -52 L3 -232" stroke-width="6" stroke-linecap="round"/>
|
|
<path d="M62 -128 L30 -108 M64 -176 L32 -152" stroke-width="8"/>
|
|
</g>
|
|
<path d="M170 344 C 172 318 188 300 214 292" stroke-width="10" stroke-linecap="round"/>
|
|
</g>
|
|
</mask>
|
|
</defs>
|
|
<g mask="url(#inkwell-cuts)">
|
|
<g transform="translate(256 232) rotate(34)">
|
|
<path d="M0 6 L0 -46" stroke="#18181b" stroke-width="12" stroke-linecap="round"/>
|
|
<path d="M0 -34 C 46 -78 58 -176 4 -252 C -34 -196 -40 -104 0 -34 Z" fill="#18181b"/>
|
|
</g>
|
|
<path fill="#18181b" d="M222 262 C 166 268 140 300 140 338 L140 374 C140 396 156 410 178 410
|
|
L334 410 C356 410 372 396 372 374 L372 338 C372 300 346 268 290 262 Z"/>
|
|
<rect x="214" y="236" width="84" height="34" rx="9" fill="#18181b"/>
|
|
<rect x="200" y="226" width="112" height="22" rx="11" fill="#18181b"/>
|
|
</g>
|
|
</g>
|
|
</svg>
|