257858a1f3
Add a 32px invisible strip on the left edge of the viewport that auto-opens the sidebar when the user drags a card and dwells near the edge for >=400ms. Removes the manual toggle step when moving cards to sidebar-located columns. - App.tsx: global mousemove listener while drag is active; 400ms hover timer; sets navOpen(true) when triggered; cancels on pointer leave or drag end. No auto-close on drag end (user keeps sidebar open). - dropzone.css: subtle inset blue glow with pulse animation while pointer is inside the strip and a drag is active. - KanbanColumn.tsx: add data-column-id and data-column-location to the Paper root for stable e2e selectors. - e2e/sidebar-dropzone.spec.ts: Playwright test driving a slow drag to the left edge, asserting the strip arms, sidebar opens, and the card moves to a sidebar column via /api/board. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
27 lines
825 B
TypeScript
27 lines
825 B
TypeScript
import "@mantine/core/styles.css";
|
|
import "@mantine/notifications/styles.css";
|
|
import "./styles/roulette.css";
|
|
import "./styles/dropzone.css";
|
|
import { MantineProvider, createTheme } from "@mantine/core";
|
|
import { ModalsProvider } from "@mantine/modals";
|
|
import { Notifications } from "@mantine/notifications";
|
|
import { createRoot } from "react-dom/client";
|
|
import { AuthProvider } from "./auth";
|
|
import { Root } from "./Root";
|
|
|
|
const theme = createTheme({
|
|
primaryColor: "blue",
|
|
fontFamily: "system-ui, -apple-system, sans-serif",
|
|
});
|
|
|
|
createRoot(document.getElementById("root")!).render(
|
|
<MantineProvider theme={theme} defaultColorScheme="dark">
|
|
<ModalsProvider>
|
|
<Notifications position="top-right" />
|
|
<AuthProvider>
|
|
<Root />
|
|
</AuthProvider>
|
|
</ModalsProvider>
|
|
</MantineProvider>
|
|
);
|