* Initial factoring out of parts of the LayerUI component

2360 → 2224 LOC

* Create a Section component

* Break up src/index.tsx

* Refactor actions to reduce duplication, fix CSS

Also consolidate icons

* Move scene/data.ts to its own directory

* Fix accidental reverts, banish further single-character variables

* ACTIVE_ELEM_COLOR → ACTIVE_ELEMENT_COLOR

* Further refactoring the icons file

* Log all errors

* Pointer Event polyfill to make the tests work

* add test hooks & fix tests

Co-authored-by: dwelle <luzar.david@gmail.com>
This commit is contained in:
Jed Fox 2020-03-07 10:20:38 -05:00 committed by GitHub
parent 1a6431a04a
commit c6a0cfc2b1
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
49 changed files with 3498 additions and 3372 deletions

View file

@ -1,4 +1,3 @@
import { Action } from "./types";
import {
isTextElement,
isExcalidrawElement,
@ -6,10 +5,11 @@ import {
} from "../element";
import { KEYS } from "../keys";
import { DEFAULT_FONT } from "../appState";
import { register } from "./register";
let copiedStyles: string = "{}";
export const actionCopyStyles: Action = {
export const actionCopyStyles = register({
name: "copyStyles",
perform: elements => {
const element = elements.find(el => el.isSelected);
@ -21,9 +21,9 @@ export const actionCopyStyles: Action = {
contextItemLabel: "labels.copyStyles",
keyTest: event => event[KEYS.META] && event.shiftKey && event.key === "C",
contextMenuOrder: 0,
};
});
export const actionPasteStyles: Action = {
export const actionPasteStyles = register({
name: "pasteStyles",
perform: elements => {
const pastedElement = JSON.parse(copiedStyles);
@ -57,4 +57,4 @@ export const actionPasteStyles: Action = {
contextItemLabel: "labels.pasteStyles",
keyTest: event => event[KEYS.META] && event.shiftKey && event.key === "V",
contextMenuOrder: 1,
};
});