summaryrefslogtreecommitdiff
path: root/apps/web/src
Commit message (Collapse)AuthorAgeFilesLines
* chore: remove unused middleware fileMaze Winther2026-03-291-18/+0
|
* fix(security): replace new Function() with safe math expression parser (#753)Rayan Salhab2026-03-292-115/+396
| | | | | | | | | | | | | | | | | | | | | | | | | | | * fix(security): replace new Function() with safe math expression parser Replace the dangerous new Function() constructor in evaluateMathExpression() with a recursive descent parser that safely evaluates basic arithmetic expressions. The Function constructor is a security anti-pattern that could enable arbitrary code execution if the validation regex is ever bypassed or relaxed. The new parser: - Only supports numbers, +, -, *, /, parentheses, and whitespace - Has no eval-like functionality that could execute arbitrary code - Maintains backward compatibility with existing expressions - Handles operator precedence and parentheses correctly Fixes #725 * Apply suggestion from @coderabbitai[bot] Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com> --------- Co-authored-by: Maze <167211895+mazeincoding@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
* refactor: move packages sub-folders into web appMaze Winther2026-03-2918-3105/+3593
|
* feat: add published status to changelog entriesMaze Winther2026-03-294-26/+33
|
* refactor: clean up number formatting and step handling in property tabsMaze Winther2026-03-298-34/+114
|
* chore: remove dead songs tabMaze Winther2026-03-291-11/+0
|
* chore: rename proxy to middlewareMaze Winther2026-03-291-18/+18
|
* chore: normalize line endingsMaze Winther2026-03-29392-45699/+45860
|
* fix: resolve typescript/lint errorsMaze Winther2026-03-2914-112/+127
|
* feat: masks, properties refactor, shaders, storage migrations, and moreMaze Winther2026-03-29396-8357/+24783
|
* fix: assets having unreasonable widths and heightsMaze Winther2026-03-292-3/+3
|
* Fix transcription sample-rate handling (#740)kcfancher2026-03-283-3/+13
| | | | | Fix for #703. Adds an optional sampleRate parameter to the decodeAudioToFloat32() function. The caption transcriber passes in a value of 16000 to prepare audio in the format Whisper expects.
* fix blog build when marble cms isn't availableMaze Winther2026-03-242-8/+64
|
* fix: fallback to opus codecMaze Winther2026-03-091-1/+14
|
* dialog: decrease gapMaze Winther2026-03-041-1/+1
|
* refactor: remove foreground variant from button, make it defaultMaze Winther2026-03-046-12/+5
|
* add context menu (w/ brand options) to header logoMaze Winther2026-03-041-10/+56
| | | | allows downloading brand assets directly from the logo in the header
* fix: auto scroll on linkMaze Winther2026-03-041-1/+9
|
* checker pattern for brand asset cards (branding page)Maze Winther2026-03-041-22/+39
|
* rename branding page to brandMaze Winther2026-03-042-2/+2
|
* feat: branding pageMaze Winther2026-03-042-1/+247
|
* fix: outline button stylingMaze Winther2026-03-031-1/+1
|
* feat: add changelog link to footerMaze Winther2026-03-031-0/+1
|
* button colorMaze Winther2026-03-031-14/+16
|
* fix: invert logos in /sponsors when dark modeMaze Winther2026-03-032-1/+8
|
* close effects after last effect removal + spacingMaze Winther2026-03-021-3/+7
|
* changelog open graph imageMaze Winther2026-03-021-1/+15
|
* Merge branch 'dev'Maze Winther2026-03-022-25/+25
|\
| * fix inconsistency in blur intensityMaze Winther2026-03-021-24/+24
| |
| * fix effects button in light modeMaze Winther2026-03-021-1/+1
| |
* | Merge branch 'main' of https://github.com/OpenCut-app/OpenCutMaze Winther2026-03-021-140/+212
|\ \ | |/ |/|
| * feat(projects): add right-click context menu to project cards (#711)Malthe Hartmann2026-02-281-140/+212
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * feat(projects): add right-click context menu to project cards - Add context menu with Rename, Duplicate, Info, Delete actions - Works in both grid and list view - Uses existing Radix UI ContextMenu components - Mirrors actions from the existing ProjectMenu dropdown Co-authored-by: Cursor <cursoragent@cursor.com> * refactor(projects): lift dialog state out of ProjectMenu and context menu --------- Co-authored-by: Cursor <cursoragent@cursor.com> Co-authored-by: Maze Winther <mazewinther@gmail.com>
* | style: hover of copy markdown buttonMaze Winther2026-03-021-1/+1
| |
* | feat: copy changelog release as markdownMaze Winther2026-03-022-6/+81
| |
* | disable react-scan in prodMaze Winther2026-03-021-5/+7
| |
* | fix linterMaze Winther2026-03-021-1/+1
| |
* | remove z-indexMaze Winther2026-03-021-8/+8
| |
* | clcik to seek on keyframesMaze Winther2026-03-022-22/+35
| |
* | feat: wire ui to have keyframes for: opacity, text color, and all background ↵Maze Winther2026-03-0213-251/+652
| | | | | | | | properties
* | fix: selecting multiple effects didn't workMaze Winther2026-03-021-14/+15
| |
* | feat: implement keyframe support for more properties at the core (no ui yet)Maze Winther2026-03-027-19/+108
| |
* | fix: keyframe drag bugMaze Winther2026-03-021-22/+31
| |
* | fix: keyframe placementMaze Winther2026-03-021-1/+1
| |
* | feat: ripple support for element resizeMaze Winther2026-03-023-18/+57
| |
* | feat: Clip effects, asset sorting, and timeline improvementsMaze Winther2026-03-0265-1330/+3659
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Major features and improvements: * **Clip Effects**: * Added UI in Properties Panel to manage effects on video/image clips (add, remove, toggle, reorder). * Implemented dynamic parameter fields for effects. * Added support for keyframing effect parameters. * **Assets Panel**: * Added sorting options: Name, Type, Duration, and File Size. * Persisted view preferences (grid/list mode, sort order) to local storage. * Refactored media item rendering and drag interactions. * **Timeline & Interaction**: * **Keyframe Dragging**: Added ability to drag keyframes directly on the timeline element. * **Resizing**: Improved resize logic to respect neighboring clips (prevents overlaps). * **Visuals**: Implemented tiled background rendering for video/image clips on the timeline. * **Shortcuts**: Added "Deselect All" action bound to the `Escape` key. * **Fixes**: Corrected drag-and-drop coordinate calculations when the timeline track area is scrolled. * **Text Elements**: * Refactored text background storage to use an explicit `enabled` flag. * Added `V8toV9` storage migration to update existing projects. * **Architecture**: * Moved export state management to `ProjectManager` for better lifecycle handling. * Refactored `PropertiesPanel` sections to be more composable (custom headers, borders).
* | fix button colorMaze Winther2026-03-021-1/+1
| |
* | feat: mobile gateMaze Winther2026-03-022-9/+86
| |
* | feat: add roadmap link to headerMaze Winther2026-03-021-0/+4
| |
* | feat: add react-scanMaze Winther2026-03-021-0/+5
| |
* | fix: global.cssMaze Winther2026-03-021-6/+2
| |