disable cursor rules

This commit is contained in:
Maze Winther
2026-03-01 21:48:37 +01:00
parent 51234e673b
commit 9a00e8ac5b
7 changed files with 2521 additions and 2409 deletions
+122 -2
View File
@@ -1,5 +1,5 @@
---
alwaysApply: true
alwaysApply: false
---
# video-editor-oss Codebase Index
@@ -11,6 +11,7 @@ Updated in real-time by Twiggy. Use this to discover existing utilities and avoi
## How to Use
When implementing new features:
1. Check if similar functionality already exists
2. Reuse existing types and utilities
3. Understand the API surface of your codebase
@@ -213,9 +214,13 @@ use-sound-search.ts
use-transform-handles.ts
export function useTransformHandles({
canvasRef,
}: {
canvasRef: React.RefObject<HTMLCanvasElement | null>;
})
## apps/web/src/hooks/actions
@@ -254,10 +259,15 @@ use-bookmark-drag.ts
currentTime: number
}
export function useBookmarkDrag({
zoomLevel,
scrollRef,
snappingEnabled,
onSnapPointChange,
}: UseBookmarkDragProps)
use-edge-auto-scroll.ts
@@ -929,57 +939,103 @@ element-bounds.ts
hit-test.ts
export function hitTest({
canvasX,
canvasY,
elementsWithBounds,
}: {
canvasX: number;
canvasY: number;
elementsWithBounds: ElementWithBounds[];
}): ElementWithBounds | null
preview-coords.ts
export function screenToCanvas({
clientX,
clientY,
canvas,
}: {
clientX: number;
clientY: number;
canvas: HTMLCanvasElement;
}): { x: number; y: number }
export function canvasToOverlay({
canvasX,
canvasY,
canvasRect,
containerRect,
canvasSize,
}: {
canvasX: number;
canvasY: number;
canvasRect: DOMRect;
containerRect: DOMRect;
canvasSize: { width: number; height: number };
}): { x: number; y: number }
export function positionToOverlay({
positionX,
positionY,
canvasRect,
containerRect,
canvasSize,
}: {
positionX: number;
positionY: number;
canvasRect: DOMRect;
containerRect: DOMRect;
canvasSize: { width: number; height: number };
}): { x: number; y: number }
export function getDisplayScale({
canvasRect,
canvasSize,
}: {
canvasRect: DOMRect;
canvasSize: { width: number; height: number };
}): { x: number; y: number }
preview-snap.ts
@@ -993,39 +1049,63 @@ preview-snap.ts
activeLines: SnapLine[]
}
export function snapPosition({
proposedPosition,
canvasSize,
elementSize,
}: {
proposedPosition: { x: number; y: number };
canvasSize: { width: number; height: number };
elementSize: { width: number; height: number };
}): SnapResult
export interface ScaleSnapResult {
snappedScale: number
activeLines: SnapLine[]
}
export function snapScale({
proposedScale,
position,
baseWidth,
baseHeight,
canvasSize,
}: {
proposedScale: number;
position: { x: number; y: number };
baseWidth: number;
baseHeight: number;
canvasSize: { width: number; height: number };
}): ScaleSnapResult
export interface RotationSnapResult {
snappedRotation: number
isSnapped: boolean
}
export function snapRotation({
proposedRotation,
}: {
proposedRotation: number;
}): RotationSnapResult
## apps/web/src/lib/stickers
@@ -1181,15 +1261,25 @@ bookmarks.ts
drag-utils.ts
export function getMouseTimeFromClientX({
clientX,
containerRect,
zoomLevel,
scrollLeft,
}: {
clientX: number;
containerRect: DOMRect;
zoomLevel: number;
scrollLeft: number;
}): number
drop-utils.ts
@@ -1955,11 +2045,17 @@ project.ts
rendering.ts
export type BlendMode = | "normal"
| "darken"
| "multiply"
| "color-burn"
| "lighten"
| "screen"
| "plus-ligh...
sounds.ts
@@ -2259,34 +2355,58 @@ color.ts
export type ColorFormat = "hex" | "rgb" | "hsl" | "hsv"
export function hexToHsv({ hex }: { hex: string }): [number, number, number]
export function hsvToHex({
h,
s,
v,
}: { h: number; s: number; v: number }): string
export function parseHexAlpha({ hex }: { hex: string }): {
rgb: string;
alpha: number;
}
export function appendAlpha({
rgbHex,
alpha,
}: { rgbHex: string; alpha: number }): string
export function extractColorFromText({
text,
}: { text: string }): string | null
export function formatColorValue({
hex,
format,
}: {
hex: string;
format: ColorFormat;
}): string
export function parseColorInput({
input,
format,
}: {
input: string;
format: ColorFormat;
}): string | null
date.ts
@@ -2392,4 +2512,4 @@ ui.tsx
---
*Generated and maintained by [Twiggy](https://github.com/twiggy-tools/Twiggy)*
_Generated and maintained by [Twiggy](https://github.com/twiggy-tools/Twiggy)_
+1 -2
View File
@@ -1,7 +1,6 @@
---
alwaysApply: true
alwaysApply: false
---
# Comment Guidelines
## Good Comments (Human-style)
+1 -2
View File
@@ -1,7 +1,6 @@
---
alwaysApply: true
alwaysApply: false
---
# Handling Uncertainty
## Principle
+1 -2
View File
@@ -1,7 +1,6 @@
---
alwaysApply: true
alwaysApply: false
---
# Readability First
Optimize code for AI agents to understand and modify.
+1 -2
View File
@@ -1,7 +1,6 @@
---
alwaysApply: true
alwaysApply: false
---
# Separation of Concerns
## Core Principle
+1 -4
View File
@@ -1,9 +1,6 @@
---
description: Ultracite Rules - AI-Ready Formatter and Linter
globs: "**/*.{ts,tsx,js,jsx}"
alwaysApply: true
alwaysApply: false
---
# Project Context
Ultracite enforces strict type safety, accessibility standards, and consistent code quality for JavaScript/TypeScript projects using Biome's formatter.
+1 -2
View File
@@ -1,7 +1,6 @@
---
alwaysApply: true
alwaysApply: false
---
# Scannable Code Guidelines/Separating Concerns.
## Core Principle