Commit Graph

2790 Commits (720f468f39ff2c51f40d8084e79313dac5e6fea8)
 

Author SHA1 Message Date
Ryan Di 720f468f39
fix: improve solveQuadratic when a = 0 (#5618) 2 years ago
Ryan Di 33300d19f6
fix: add random tiny offsets to avoid linear elements from being clipped (#5615)
Co-authored-by: Ryan Di <ryandi@Ryans-MacBook-Pro.local>
2 years ago
Aakansha Doshi 5aed159991
docs: fix refs table (#5614)
* docs: fix refs table

* fix

* fix

* fix

* fix
2 years ago
Aakansha Doshi de1d221d1c
docs: add PR link (#5613)
docs:add PR link
2 years ago
Aakansha Doshi 9a68dbffe2
docs: update docs for param defaultStatus in loadLibraryFromBlob (#5612) 2 years ago
Aakansha Doshi 32d82219b1
refactor: Stats component (#5610)
refactor: stats component
2 years ago
Aakansha Doshi ba2c86fe1b
refactor: Move footer to its own component (#5609) 2 years ago
zsviczian f1ae37c84b
fix: Crash when adding a new point in the line editor #5602 (#5606)
Update linearElementEditor.ts
2 years ago
Aakansha Doshi ec350ba8b2
feat: Introduce ExcalidrawElements and ExcalidrawAppState provider (#5463)
* feat: Introduce ExcalidrawData provider so that app state and elements need not be passed to children

* fix

* fix zen mode

* Separate providers for data and elements

* pass appState and elements to layerUI

* pass appState and elements to selectedShapeActions

* pass appState and elements to MobileMenu

* pass appState to librarymenu

* rename

* rename to ExcalidrawAppState
2 years ago
Aakansha Doshi 46a61ad4df
feat: enable midpoint inside linear element editor (#5564)
* feat: enable midpoint inside linear element editor

* fix

* fix

* hack to set pointerDownState.hit.hasHitElementInside when mid point added

* remove hacks as not needed :)

* remove newline

* fix

* add doc
2 years ago
Excalidraw Bot f4b1a30bef
chore: Update translations from Crowdin (#5552) 2 years ago
Aakansha Doshi 32aa79164b
refactor: remove unused attribute hasHitElementInside from pointerDownState (#5591) 2 years ago
Aakansha Doshi b5fd904808
fix: allow box selection of points when inside editor (#5594) 2 years ago
David Luzar 8f8dd1105f
docs: changelog fixes (#5593) 2 years ago
David Luzar b914ad41fc
feat: support `ExcalidrawElement.customData` (#5592)
Co-authored-by: Aakansha Doshi <aakansha1216@gmail.com>
2 years ago
Aakansha Doshi 551c38f60b
fix: remove unnecessary conditions in pointerup for linear elements (#5575)
* fix: remove unnecessary conditions in pointerup for linear elements

* reset editingLinearElement when clicked inside bounding box
2 years ago
Aakansha Doshi 38e8ae46c9
fix: check if hitting link in handleSelectionOnPointerDown (#5589)
fix: check if hitting link in handleSelectionOnPoiinterDown
2 years ago
David Luzar ad0c4c4c78
fix: points not being normalized on single-elem resize (#5581) 2 years ago
Aakansha Doshi 27cf5ed17e
fix: deselect linear element when clicked inside bounding box outside editor (#5579) 2 years ago
Aakansha Doshi fd946adbae
refactor: cleanup renderScene (#5573)
* refactor: cleanup renderScene

* pass object instead of individual params
2 years ago
Caleb OLeary c37977af4b
docs: correct readme type typo (#5574) 2 years ago
Alex Kim a0d413ab4e
fix: resize multiple elements from center (#5560)
Co-authored-by: Ryan Di <ryan.weihao.di@gmail.com>
Co-authored-by: dwelle <luzar.david@gmail.com>
3 years ago
Aakansha Doshi b67a2b4f65
fix: call static methods via class instead of instance in linearElementEditor (#5561)
* fix: call getMidPoint via class instead of instance

* fix

* fix
3 years ago
Aakansha Doshi 5a8dbe8030
feat: show a mid point for linear elements (#5534)
* feat: Add a mid point for linear elements

* fix tests

* show mid point only on hover

* hacky fix :(

* don't add mid points if present and only add outside editor

* improve styling and always show phantom point instead of just on hover

* fix tests

* fix

* only add polyfill for test

* add hover state for phantom point

* fix tests

* fix

* Add Array.at polyfill

* reuse `centerPoint()` helper

* reuse `distance2d`

* use `Point` type

Co-authored-by: dwelle <luzar.david@gmail.com>
3 years ago
Aakansha Doshi 731093f631
fix: show bounding box for 3 or more linear point elements (#5554)
* fix: show bounding box for 3+ linear point elements

* refactor

* show bounding box for 3 points as well

* fix dragging bounding box for linear elements

* Increase margin/padding for linear elements

* fix cursor and keep bounding box same but offset resize handles

* introduce slight padding for selection border

* better

* add constant for spacing
3 years ago
Aakansha Doshi fe56975f19
fix: cleanup the condition for dragging elements (#5555) 3 years ago
David Luzar 2d800feeeb
fix: shareable links being merged with current scene data (#5547) 3 years ago
David Luzar 93cccd596a
fix: Scene lookup failing when looking up by id (#5542) 3 years ago
David Luzar 45b592227d
fix: remove rounding to fix jitter when shift-editing (#5543)
Co-authored-by: Ryan Di <ryan.weihao.di@gmail.com>
3 years ago
Ryan Di b818df1098
feat: lock angle when editing linear elements with shift pressed (#5527)
Co-authored-by: Ryan <diweihao@bytedance.com>
3 years ago
David Luzar 4359e2935d
fix: line deselected when shift-dragging point outside editor (#5540) 3 years ago
Aakansha Doshi 3d9d398378
fix: flip linear elements after redesign (#5538) 3 years ago
Aakansha Doshi 0a5da0269f
docs: migrate the example to React 18 (#5533) 3 years ago
Aakansha Doshi 08ce7c7fc3
feat: redesign linear elements 🎉 (#5501)
* feat: redesign arrows and lines

* set selectedLinearElement on pointerup

* fix tests

* fix lint

* set selectionLinearElement to null when element is not selected

* fix

* don't set selectedElementIds to empty object when linear element selected

* don't move arrows when clicked on bounding box

* don't consider bounding box when linear element selected

* better hitbox

* show pointer when over the points in linear elements

* highlight points when hovered

* tweak design whene editing linear element points

* tweak

* fix test

* fix multi point editing

* cleanup

* fix

* fix

* remove stroke when hovered

* account for zoom when hover

* review fix

* set selectedLinearElement to null when selectedElementIds doesn't contain the linear element

* remove hover affect when moved away from linear element

* don't set selectedLinearAElement if already set

* fix selection

* render reduced in test :p

* fix box selection for single linear element

* set selectedLinearElement when deselecting selected elements and linear element is selected

* don't show linear element handles when element locked

* selected linear element when only linear present and selected with selectAll

* don't set selectedLinearElement if already set

* store selectedLinearElement in browser to persist

* remove redundant checks

* test fix

* select linear element handles when user has finished multipoint editing

* fix snap

* add comments

* show bounding box for locked linear elements

* add stroke param to fillCircle and remove stroke when linear element point hovered

* set selectedLinearElement when thats the only element left when deselcting others

* skip tests instead of removing for rotation

* (un)bind on pointerUp when moving linear element points outside editor

* render bounding box for linear elements as a fallback on state mismatch

* simplify and remove type assertion

Co-authored-by: dwelle <luzar.david@gmail.com>
3 years ago
Excalidraw Bot fe7fbff7f6
chore: Update translations from Crowdin (#5507)
* New translations en.json (Czech)

* Auto commit: Calculate translation coverage

* New translations en.json (Japanese)

* Auto commit: Calculate translation coverage
3 years ago
David Luzar 501397cb61
fix: disable locking aspect ratio for box-selection (#5525) 3 years ago
Ryan Di 865d29388c
feat: cursor alignment when creating linear elements with shift pressed (#5518)
* feat: cursor alignment when creating linear elements

* feat: apply cursor alignment to multi-point linear elements

* refactor: rename size helper function
3 years ago
José dBruxelles 54c7ec416a
fix: Add `title` attribute to the modal close button (#5521)
Add `title` attribute to the modal close button
3 years ago
zsviczian aca284057d
fix: Context menu positioning when component has offsets (#5520)
Update Popover.tsx
3 years ago
Ryan Di 2820cd112e
feat: shift-clamp when creating multi-point lines/arrows (#5500)
Co-authored-by: Ryan <diweihao@bytedance.com>
3 years ago
Ryan Di 426b5d9537
feat: cursor alignment when creating generic elements (#5516)
Co-authored-by: Ryan <diweihao@bytedance.com>
3 years ago
David Luzar e7d34677c6
fix: resolve paths in prebuild.js script (#5498) 3 years ago
Aakansha Doshi 3d5356cb8e
fix: use flushSync when moving line editor since we need to read previous value after setting state (#5508)
* fix: use flushSync when moving line editor since we need to read previous value after setting state

* add comment
3 years ago
Aakansha Doshi 46f5ce5ce0
fix: useLayout effect cleanup in dev mode for charts (#5505) 3 years ago
Excalidraw Bot b00bd3d6c0
chore: Update translations from Crowdin (#5476)
* New translations en.json (French)

* New translations en.json (French)

* New translations en.json (French)

* New translations en.json (Basque)

* Auto commit: Calculate translation coverage

* New translations en.json (French)

* New translations en.json (Tamil)

* New translations en.json (Swedish)

* New translations en.json (Ukrainian)

* New translations en.json (Chinese Simplified)

* New translations en.json (Chinese Traditional)

* New translations en.json (Vietnamese)

* New translations en.json (Galician)

* New translations en.json (Portuguese, Brazilian)

* New translations en.json (Indonesian)

* New translations en.json (Persian)

* New translations en.json (Bengali)

* New translations en.json (Slovak)

* New translations en.json (Norwegian Nynorsk)

* New translations en.json (Kazakh)

* New translations en.json (Latvian)

* New translations en.json (Hindi)

* New translations en.json (Burmese)

* New translations en.json (Chinese Traditional, Hong Kong)

* New translations en.json (Sinhala)

* New translations en.json (Norwegian Bokmal)

* New translations en.json (Occitan)

* New translations en.json (Slovenian)

* New translations en.json (Russian)

* New translations en.json (Turkish)

* New translations en.json (German)

* New translations en.json (Marathi)

* New translations en.json (Basque)

* New translations en.json (Romanian)

* New translations en.json (Spanish)

* New translations en.json (Arabic)

* New translations en.json (Bulgarian)

* New translations en.json (Catalan)

* New translations en.json (Czech)

* New translations en.json (Danish)

* New translations en.json (Greek)

* New translations en.json (Portuguese)

* New translations en.json (Finnish)

* New translations en.json (Hebrew)

* New translations en.json (Hungarian)

* New translations en.json (Italian)

* New translations en.json (Japanese)

* New translations en.json (Korean)

* New translations en.json (Lithuanian)

* New translations en.json (Dutch)

* New translations en.json (Punjabi)

* New translations en.json (Polish)

* New translations en.json (Kabyle)

* Auto commit: Calculate translation coverage

Co-authored-by: dwelle <luzar.david@gmail.com>
3 years ago
Aakansha Doshi 91fc22182c
fix: revert browser toast for high/low zoom (#5495) 3 years ago
Aakansha Doshi 966ca2ffa6
refactor: rename docs to dev-docs (#5487) 3 years ago
Aakansha Doshi 2b049b4a65
docs: Integrate docusaraus for docs (#5482)
* feat:Integrate docusaraus for docs

* Update docs for Excalidraw

Co-authored-by: David Luzar <luzar.david@gmail.com>

* remove blogs

* remove blog authors

* get started docs

* typo

* add static assets

* change port number

* Add script to build docs only if docs updated

* dummy

* update script to be compatible with ignoreBuild in vercel

* remove script and dummy log

Co-authored-by: David Luzar <luzar.david@gmail.com>
3 years ago
Aakansha Doshi 339212e563
refactor: remove unnecessary if condition for linear element onKeyDown (#5486)
* refactor: remove unnecessary if condition for linear element onKeyDown

* fix
3 years ago
DanielJGeiger f8b4bb66b4
chore: Update peer dependencies to React 18 in `@excalidraw/excalidraw` (#5483)
* chore: Update peer dependencies to React 18 in `@excalidraw/excalidraw`

* Update src/packages/excalidraw/package.json

Co-authored-by: David Luzar <luzar.david@gmail.com>

Co-authored-by: David Luzar <luzar.david@gmail.com>
3 years ago