Maze Winther
d23be079cc
Merge branch 'feature/track-placement'
2026-03-31 15:53:23 +02:00
Maze Winther
70a6d58b84
refactor: centralize track placement into its own module
2026-03-31 15:47:30 +02:00
Maze Winther
dcf54c1250
feat: migrate time utilities from typescript to rust WASM
2026-03-31 04:03:52 +02:00
Maze Winther
5cc6abc3a4
style: swap ripple icon
2026-03-29 22:31:26 +02:00
Maze Winther
77a14b1023
refactor: standardize icon component props
2026-03-29 22:30:11 +02:00
Maze Winther
1c3b22edec
feat: add keyframe graphs button
2026-03-29 21:48:33 +02:00
Maze Winther
41562baeb5
style: remove unnecessary margin from keyframe
2026-03-29 21:48:08 +02:00
Maze Winther
df207e0f83
refactor: name magic numbers and rename el in landing handlebars
2026-03-29 21:18:07 +02:00
Maze Winther
dc5956900e
fix: eliminate first-paint flicker in landing handlebars
2026-03-29 20:45:48 +02:00
Maze Winther
b095862cc0
fix: improve DATABASE_URL validation in web environment schema
2026-03-29 18:58:35 +02:00
Maze Winther
5a1d9ef3f4
chore: remove unused middleware file
2026-03-29 18:30:16 +02:00
Rayan Salhab
eb66e03f0e
fix(security): replace new Function() with safe math expression parser ( #753 )
...
* 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>
2026-03-29 18:27:05 +02:00
Maze Winther
220ec757d4
refactor: move packages sub-folders into web app
2026-03-29 15:58:46 +02:00
Maze Winther
585e28d49b
feat: add published status to changelog entries
2026-03-29 15:58:46 +02:00
Maze Winther
c34e01c63e
refactor: clean up number formatting and step handling in property tabs
2026-03-29 15:58:46 +02:00
Maze Winther
3e75852ffe
chore: remove dead songs tab
2026-03-29 15:58:46 +02:00
Maze Winther
f8a0390827
chore: rename proxy to middleware
2026-03-29 15:58:46 +02:00
Maze Winther
4d127a038b
chore: normalize line endings
2026-03-29 15:56:48 +02:00
Maze Winther
722dcdd88f
fix: resolve typescript/lint errors
2026-03-29 15:49:30 +02:00
Maze Winther
8db3bead13
feat: masks, properties refactor, shaders, storage migrations, and more
2026-03-29 15:48:22 +02:00
Maze Winther
b09635064a
fix: assets having unreasonable widths and heights
2026-03-29 15:41:10 +02:00
kcfancher
63496d05a2
Fix transcription sample-rate handling ( #740 )
...
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.
2026-03-28 19:06:40 +01:00
Maze Winther
f2eed05d36
fix blog build when marble cms isn't available
2026-03-24 14:18:39 +01:00
Maze Winther
26d523ebad
fix: fallback to opus codec
2026-03-09 00:10:31 +01:00
Maze Winther
0be9275a2d
dialog: decrease gap
2026-03-04 17:18:28 +01:00
Maze Winther
a2d08719f9
refactor: remove foreground variant from button, make it default
2026-03-04 17:16:01 +01:00
Maze Winther
ca3e5c98e6
add context menu (w/ brand options) to header logo
...
allows downloading brand assets directly from the logo in the header
2026-03-04 17:11:32 +01:00
Maze Winther
5ca2de25c6
fix: auto scroll on link
2026-03-04 16:53:04 +01:00
Maze Winther
ed8815c755
checker pattern for brand asset cards (branding page)
2026-03-04 16:45:03 +01:00
Maze Winther
24dac1232c
rename branding page to brand
2026-03-04 02:56:08 +01:00
Maze Winther
46e55674de
feat: branding page
2026-03-04 01:48:39 +01:00
Maze Winther
31dc78637f
fix: outline button styling
2026-03-03 14:39:17 +01:00
Maze Winther
705faea56f
feat: add changelog link to footer
2026-03-03 14:24:04 +01:00
Maze Winther
21f12ff763
button color
2026-03-03 14:22:14 +01:00
Maze Winther
719e0d4398
fix: invert logos in /sponsors when dark mode
2026-03-03 07:01:17 +01:00
Maze Winther
df518cbf4e
close effects after last effect removal + spacing
2026-03-02 21:00:28 +01:00
Maze Winther
5216f4398f
changelog open graph image
2026-03-02 18:37:04 +01:00
Maze Winther
a87b344ba5
Merge branch 'dev'
2026-03-02 17:48:39 +01:00
Maze Winther
a635ae9e14
fix inconsistency in blur intensity
2026-03-02 17:43:42 +01:00
Maze Winther
88bf59d6b4
fix effects button in light mode
2026-03-02 17:42:11 +01:00
Maze Winther
d62eb6aa9e
Merge branch 'main' of https://github.com/OpenCut-app/OpenCut
2026-03-02 17:33:01 +01:00
Maze Winther
fbb00cf9cc
style: hover of copy markdown button
2026-03-02 17:29:43 +01:00
Maze Winther
c7a00b6af1
feat: copy changelog release as markdown
2026-03-02 17:03:23 +01:00
Maze Winther
9b6a1f7973
disable react-scan in prod
2026-03-02 16:53:30 +01:00
Maze Winther
eee3233c97
fix linter
2026-03-02 16:50:55 +01:00
Maze Winther
14ae9b4f11
remove z-index
2026-03-02 16:43:43 +01:00
Maze Winther
565d2595da
clcik to seek on keyframes
2026-03-02 16:40:41 +01:00
Maze Winther
a526066b61
feat: wire ui to have keyframes for: opacity, text color, and all background properties
2026-03-02 16:36:10 +01:00
Maze Winther
b0165da764
fix: selecting multiple effects didn't work
2026-03-02 16:30:50 +01:00
Maze Winther
81e7a7fb32
feat: implement keyframe support for more properties at the core (no ui yet)
2026-03-02 15:08:21 +01:00