Commit Graph

67 Commits

Author SHA1 Message Date
David Luzar 813f9b702e
feat: merge search sidebar back to default sidebar (#8497) 2024-09-11 19:26:01 +02:00
David Luzar 72b7c937b1
feat: smarter zooming when scrolling to match & only match on search/switch (#8488) 2024-09-10 21:26:01 +02:00
Ryan Di 6959a363f0
feat: canvas search (#8438)
Co-authored-by: dwelle <5153846+dwelle@users.noreply.github.com>
2024-09-09 17:12:07 +02:00
Márk Tolmács f4dd23fc31
chore: Unify math types, utils and functions (#8389)
Co-authored-by: dwelle <5153846+dwelle@users.noreply.github.com>
2024-09-02 22:23:38 +00:00
Marcel Mraz ee30225062
feat: subset font glyphs for SVG export (#8384)
Co-authored-by: dwelle <5153846+dwelle@users.noreply.github.com>
2024-08-30 22:26:06 +02:00
Márk Tolmács ea7c702cfc
feat: Visual debugger (#8344)
Add visual debugger to the Excalidraw app (only).
2024-08-27 19:46:00 +02:00
spc-28 26d2296578
fix: fixed copy to clipboard button (#8426)
Co-authored-by: dwelle <5153846+dwelle@users.noreply.github.com>
2024-08-27 00:27:44 +02:00
Ryan Di 5e1ff7cafe
perf: improve new element drawing (#8340)
Co-authored-by: dwelle <5153846+dwelle@users.noreply.github.com>
2024-08-23 20:27:57 +02:00
David Luzar b5d7f5b4ba
feat: rewrite d2c to not require token (#8269) 2024-08-20 18:06:22 +02:00
David Luzar 97981804d7
feat: Stats popup style tweaks (#8361) 2024-08-11 19:33:44 +02:00
David Luzar f19ce30dfe
chore: bump `@testing-library/react` `12.1.5` -> `16.0.0` (#8322) 2024-08-06 15:17:42 +02:00
Márk Tolmács 8d530cf102
fix: Docker build in CI (#8312)
* Fix Docker build CI
* Bump nginx-alpine version to 1.27
2024-08-06 13:21:20 +02:00
Márk Tolmács c641860cb1
fix: CVE-2023-45133 (#7988)
* Upgrade @babel/* versions to 7.24 to ensure non-vulnerable Babel versions
* Pinning React version to 18.2.0 exactly, avoiding test-utils type version clashes
* Fix warning message on yarn start
* Moving react to peer dependencies
* Moving app dependencies from workspace into app
* Bump vitest to 1.6.0 to fix history.test.tsx breaking

---------

Signed-off-by: Mark Tolmacs <mark@lazycat.hu>
2024-08-02 14:44:38 +02:00
Marcel Mraz 230d0edc44
feat: multiple fonts fallbacks (#8286) 2024-07-30 10:34:40 +02:00
Marcel Mraz 62228e0bbb
feat: introduce font picker (#8012)
Co-authored-by: dwelle <5153846+dwelle@users.noreply.github.com>
2024-07-25 18:55:55 +02:00
DDDDD12138 4c5408263c
chore: Correct Typos in Code Comments (#8268)
chore: correct typos

Co-authored-by: wuzhiqing <wuzhiqing@linklogis.com>
2024-07-23 14:26:55 +05:30
David Luzar e52c2cd0b6
fix: log allowed events (#8224) 2024-07-09 12:16:14 +02:00
David Luzar 148b895f46
feat: smarter preferred lang detection (#8205) 2024-07-04 17:55:35 +02:00
DDDDD12138 d9258a736b
chore: Consolidate i18n import in LanguageList component (#8201) 2024-07-04 17:34:16 +02:00
Ryan Di d2f67e619f
feat: editable element stats (#6382)
Co-authored-by: dwelle <5153846+dwelle@users.noreply.github.com>
2024-06-12 19:49:46 +02:00
David Luzar 1ed98f9c93
fix: lp plus url (#8056) 2024-05-24 09:10:14 +00:00
David Luzar a71bb63d1f
fix: fix twitter og image (#8050) 2024-05-23 11:52:37 +02:00
David Luzar 301e83805d
feat: add install-PWA to command palette (#7935) 2024-05-08 22:02:28 +02:00
Aakansha Doshi 1ed53b153c
build: enable consistent type imports eslint rule (#7992)
* build: enable consistent type imports eslint rule

* change to warn

* fix the warning in example and excalidraw-app

* fix packages

* enable type annotations and throw error for the rule
2024-05-08 14:21:50 +05:30
David Luzar d1f37cc64f
feat: tweak a few icons & add line editor button to side panel (#7990) 2024-05-07 13:18:39 +02:00
Marcel Mraz 1bd2b1fe55
feat: export reconciliation (#7917) 2024-04-22 17:27:57 +02:00
Marcel Mraz 015b46ab23
feat: expose `StoreAction` in relation to multiplayer history (#7898)
Improved Store API and improved handling of actions to eliminate potential concurrency issues
2024-04-22 09:22:25 +00:00
Marcel Mraz 530617be90
feat: multiplayer undo / redo (#7348) 2024-04-17 14:01:24 +02:00
johnd99 f92f04c13c
fix: Correct unit from 'eg' to 'deg' (#7891) 2024-04-15 11:11:27 +02:00
David Luzar f597bd3e01
fix: command palette tweaks and fixes (#7876) 2024-04-11 11:39:19 +02:00
David Luzar 8a162a4cb4
fix: import (#7869) 2024-04-08 16:59:03 +02:00
David Luzar c6a045d092
fix: theme toggle shortcut `event.code` (#7868) 2024-04-08 16:55:33 +02:00
Arnost Pleskot cd50aa719f
feat: add system mode to the theme selector (#7853)
Co-authored-by: dwelle <5153846+dwelle@users.noreply.github.com>
2024-04-08 16:46:24 +02:00
David Luzar 92bc08207c
fix: remove incorrect check from index.html (#7867) 2024-04-08 16:42:00 +02:00
Ryan Di 32df5502ae
feat: fractional indexing (#7359)
* Introducing fractional indices as part of `element.index`

* Ensuring invalid fractional indices are always synchronized with the array order

* Simplifying reconciliation based on the fractional indices

* Moving reconciliation inside the `@excalidraw/excalidraw` package

---------

Co-authored-by: Marcel Mraz <marcel@excalidraw.com>
Co-authored-by: dwelle <5153846+dwelle@users.noreply.github.com>
2024-04-04 13:51:11 +01:00
Ryan Di 550a388b2b
feat: command palette (#7804)
Co-authored-by: dwelle <5153846+dwelle@users.noreply.github.com>
2024-03-28 16:16:32 +00:00
David Luzar 6b523563d8
fix: ejs support in html files (#7822) 2024-03-28 14:58:47 +01:00
David Luzar 068895db0e
feat: expose more collaborator status icons (#7777) 2024-03-18 10:20:07 +01:00
dwelle 6a385d6663 feat: change LibraryPersistenceAdapter `load()` `source` -> `priority`
to clarify the semantics
2024-03-11 09:40:51 +01:00
David Luzar 2382fad4f6
feat: store library to IndexedDB & support storage adapters (#7655) 2024-03-08 22:29:19 +01:00
Ryan Di 160440b860
feat: improve collab error notification (#7741)
* identify cause

* toast after dialog for error messages in collab

* remove comment

* shake tooltip instead for repeating collab errors

* clear collab error

* empty commit

* simplify & fix reset race condition

---------

Co-authored-by: dwelle <5153846+dwelle@users.noreply.github.com>
2024-03-04 20:43:44 +08:00
Aakansha Doshi f5ab3e4e12
fix: remove dependency of t from clipboard and image (#7712)
* fix: remove dependency of t from clipboard and image

* pass errorMessage to copyTextToSystemClipboard where needed

* wrap copyTextToSystemClipboard and rethrow translated error in caller

* review fix

* typo
2024-02-21 19:45:33 +05:30
Aakansha Doshi 73bf50e8a8
fix: remove t from getDefaultAppState and allow name to be nullable (#7666)
* fix: remove t and allow name to be nullable

* pass name as required prop

* remove Unnamed

* pass name to excalidrawPlus as well for better type safe

* render once we have excalidrawAPI to avoid defaulting

* rename `getAppName` -> `getName` (temporary)

* stop preventing editing filenames when `props.name` supplied

* keep `name` as optional param for export functions

* keep `appState.name` on `props.name` state separate

* fix lint

* assertive first

* fix lint

* Add TODO

---------

Co-authored-by: dwelle <5153846+dwelle@users.noreply.github.com>
2024-02-15 11:11:18 +05:30
David Luzar 0513b647ec
feat: change collab trigger & add share dialog (#7647) 2024-02-03 14:04:23 +00:00
David Luzar a289c42830
feat: add loading state to FilledButton (#7650) 2024-02-03 14:53:31 +01:00
Milos Vetesnik d426cc968d
refactor: remove portal as it is no longer needed (#7623)
Co-authored-by: dwelle <5153846+dwelle@users.noreply.github.com>
2024-01-29 16:37:09 +01:00
Aakansha Doshi 65047cc2cb
fix: decouple react and react-dom imports from utils and make it treeshakeable (#7527)
fix: decouple react and react-dom imports from utils and make it tree-shakeable
2024-01-08 21:01:47 +05:30
Aakansha Doshi 4249b7dec8
chore: add version for excalidraw-app workspace (#7514) 2024-01-04 13:53:19 +05:30
Aakansha Doshi a8064ba3ee
build: Welcome ESM and Bye Bye UMD (#7441)
* 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
2024-01-01 20:18:44 +05:30
David Luzar 57ea4e61d1
fix: mixing clientId & socketId in UserList (#7461) 2023-12-18 18:21:57 +01:00