mirror of
https://github.com/OpenCut-app/OpenCut.git
synced 2026-07-13 21:52:53 +02:00
* feat: major editor overhaul (assets, properties, timeline, fonts) Refactor editor core systems to standardize UI architecture and improve performance. Assets & Properties: - Replace monolithic property items with composable `Section` architecture. - Add specialized sections for Transform, Blending, and Text. - Implement `NumberField` with scrubbing and math evaluation. - Add new ColorPicker with EyeDropper and multiple format support. - Standardize asset panels using new `PanelView` layout. Fonts & Stickers: - Implement custom font atlas/sprite system for high-performance previews. - Add virtualized FontPicker with search and favorites. - Refactor stickers to use a provider-based architecture (icons, emoji, flags, shapes). - Standardize sticker IDs to `provider:value` format. Timeline & Interaction: - Convert bookmarks to rich objects with notes, colors, and duration. - Refactor drag-and-drop to use Command pattern (enabling proper undo/redo). - Add Shift modifier to disable snapping during moves/resizes. - Add new overlays for layout guides and text editing. Renderer: - Add support for multi-line text, custom line-height, and letter-spacing. - Implement global composite operation (blend modes). - Update sticker node to resolve dynamic provider IDs. Infrastructure: - Add storage migrations (v3->v6) for text weights, sticker IDs, and bookmarks. - Update global styles and core UI components (Button, Input, Popover). * add ts-nocheck directive to settings-legacy.tsx to suppress TypeScript errors * fix: correct global composite operation assignment in TextNode to ensure proper blend mode handling * deleted shadcn components with errors * formatting * fix linter issues * migrate from next middleware to proxy * add missing component back * add breadcrumb back * chore: add @radix-ui/react-primitive deps * chore: more deps * chore: add missing env vars to bun-ci * next env
67 lines
1.8 KiB
YAML
67 lines
1.8 KiB
YAML
name: Bun CI
|
|
|
|
concurrency:
|
|
group: bun-ci-${{ github.ref }}
|
|
cancel-in-progress: true
|
|
|
|
on:
|
|
push:
|
|
branches: [main]
|
|
paths-ignore:
|
|
- "*.md"
|
|
pull_request:
|
|
branches: [main]
|
|
paths-ignore:
|
|
- "*.md"
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: ${{ matrix.os }}
|
|
strategy:
|
|
matrix:
|
|
os: [ubuntu-latest, windows-latest, macos-latest]
|
|
|
|
env:
|
|
DATABASE_URL: "postgresql://opencut:opencut@localhost:5432/opencut"
|
|
BETTER_AUTH_SECRET: "supersecret"
|
|
NEXT_PUBLIC_SITE_URL: "http://localhost:3000"
|
|
UPSTASH_REDIS_REST_URL: "https://your-upstash-redis-url"
|
|
UPSTASH_REDIS_REST_TOKEN: "your-upstash-redis-token"
|
|
NEXT_PUBLIC_MARBLE_API_URL: "https://placeholder.example.com"
|
|
MARBLE_WORKSPACE_KEY: "placeholder"
|
|
FREESOUND_CLIENT_ID: "placeholder"
|
|
FREESOUND_API_KEY: "placeholder"
|
|
CLOUDFLARE_ACCOUNT_ID: "placeholder"
|
|
R2_ACCESS_KEY_ID: "placeholder"
|
|
R2_SECRET_ACCESS_KEY: "placeholder"
|
|
R2_BUCKET_NAME: "placeholder"
|
|
MODAL_TRANSCRIPTION_URL: "https://placeholder.example.com"
|
|
|
|
steps:
|
|
- name: Checkout repository
|
|
uses: actions/checkout@v4
|
|
|
|
- name: Install Bun
|
|
uses: oven-sh/setup-bun@735343b667d3e6f658f44d0eca948eb6282f2b76
|
|
with:
|
|
bun-version: 1.2.18
|
|
|
|
- name: Cache Bun modules
|
|
uses: actions/cache@v4
|
|
with:
|
|
path: ~/.bun/install/cache
|
|
key: ${{ runner.os }}-bun-1.2.18-${{ hashFiles('apps/web/bun.lock') }}
|
|
|
|
- name: Install dependencies
|
|
working-directory: apps/web
|
|
run: bun install
|
|
|
|
- name: Build
|
|
working-directory: apps/web
|
|
run: bun run build
|
|
|
|
- name: Run tests
|
|
working-directory: apps/web
|
|
run: echo "No tests implemented yet"
|
|
continue-on-error: true
|