mirror of
https://github.com/excalidraw/excalidraw.git
synced 2025-09-19 07:20:21 +02:00

* build: Welcome ESM and Bye Bye UMD * remove package * create unbundled esm build * update script for example * fix typo * dummy commit * update autorelease script to build esm * revert dummy commit * move react, react-dom and testing library to dev dependencies * remove entry.js, publicPath and yarn install:deps script * fix * upgrade esbuild to fix glob import error for locales * remove webpack chunk names as thats not needed anymore * marking the code sideeffects free * make the library tree-shakeable and move fonts to fonts directory * allow side effects for css, scss files * remove tree-shaking * comment code for tree shaking * move to vite for example * bye bye webpack * ignore ts * separate build and output dir * use esbuild for creating bundle for example * update output dir * lint * create browser dev build with source maps and prod with minification * add dev and prod builds for bundler * lint * update script * remove await * load prod build * create minified build in dist * prod and dev builds using export field * remove import.meta * dummy * define import.meta prod and dev * fix * export types * add types field * typo * lint * Update scripts/buildPackage.js * move types inside export * newline
31 lines
915 B
TypeScript
31 lines
915 B
TypeScript
import { KEYS } from "../keys";
|
|
import { Excalidraw } from "../index";
|
|
import { API } from "./helpers/api";
|
|
import { Keyboard } from "./helpers/ui";
|
|
import { fireEvent, render, waitFor } from "./test-utils";
|
|
|
|
describe("shortcuts", () => {
|
|
it("Clear canvas shortcut should display confirm dialog", async () => {
|
|
await render(
|
|
<Excalidraw
|
|
initialData={{ elements: [API.createElement({ type: "rectangle" })] }}
|
|
handleKeyboardGlobally
|
|
/>,
|
|
);
|
|
|
|
expect(window.h.elements.length).toBe(1);
|
|
|
|
Keyboard.withModifierKeys({ ctrl: true }, () => {
|
|
Keyboard.keyDown(KEYS.DELETE);
|
|
});
|
|
const confirmDialog = document.querySelector(".confirm-dialog")!;
|
|
expect(confirmDialog).not.toBe(null);
|
|
|
|
fireEvent.click(confirmDialog.querySelector('[aria-label="Confirm"]')!);
|
|
|
|
await waitFor(() => {
|
|
expect(window.h.elements[0].isDeleted).toBe(true);
|
|
});
|
|
});
|
|
});
|