OpenCut/apps/web
Maze Winther 8b8d65b509 refactor: collapse mask definition registry to a single keyed registry
The freeform mask was assembled on every getMaskDefinition("freeform") call,
re-spreading params and injecting a wrong SquareIcon placeholder, with a type
cast to suppress the structural mismatch. Root cause: MasksRegistry was keyed
on BuiltinMaskType, so freeform had no entry.

- Re-key MasksRegistry from BuiltinMaskType to MaskType
- Register freeform alongside builtins in registerDefaultMasks, with
  PenToolAddIcon as its menu icon
- getMaskDefinition and getMaskDefinitionsForMenu become plain registry
  lookups with no branching, no manual spreading, no cast
- Rename RegisteredBuiltinMaskDefinition to RegisteredMaskDefinition and
  tighten computeParamUpdate return type to Partial<BaseMaskParams>

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-05-02 03:27:23 +02:00
..
migrations chore: normalize line endings 2026-03-29 15:56:48 +02:00
public chore: delete ffmpeg public assets 2026-04-21 13:00:26 +02:00
scripts chore: normalize line endings 2026-03-29 15:56:48 +02:00
src refactor: collapse mask definition registry to a single keyed registry 2026-05-02 03:27:23 +02:00
.env.example chore: remove transcription envs 2026-04-04 08:53:10 +02:00
.gitignore chore: update .gitignore 2026-03-29 18:55:56 +02:00
Dockerfile chore: remove transcription envs 2026-04-04 08:53:10 +02:00
components.json chore: normalize line endings 2026-03-29 15:56:48 +02:00
content-collections.ts feat: new-release notice and colocate changelog under domain 2026-04-15 02:05:41 +02:00
drizzle.config.ts fix: correct schema path in drizzle config 2026-04-15 06:04:29 +02:00
next.config.ts feat: migrate GPU renderer from WebGL to wgpu/WASM 2026-04-01 13:57:32 +02:00
open-next.config.ts chore: add missing open-next config 2026-03-29 15:58:46 +02:00
package.json chore: switch from biome to eslint + prettier; fix ton of lint issues 2026-05-02 03:27:23 +02:00
postcss.config.mjs feat: masks, properties refactor, shaders, storage migrations, and more 2026-03-29 15:48:22 +02:00
tsconfig.json chore: switch from biome to eslint + prettier; fix ton of lint issues 2026-05-02 03:27:23 +02:00
wrangler.jsonc chore: normalize line endings 2026-03-29 15:56:48 +02:00