* refactor device to editor interface and derive styles panel
* allow host app to control form factor and ui mode
* add editor interface event listener
* put new props inside UIOptions
* refactor: move related apis into one file
* expose getFormFactor
* privatize the setting of desktop mode and fix snapshots
* refactor and fix test
* remove unimplemented code
* export getFormFactor()
* replace `getFormFactor` with `getEditorInterface`
* remove dead & useless
* comment
* fix ts
---------
Co-authored-by: dwelle <5153846+dwelle@users.noreply.github.com>
* remove legacy openMenu=shape state and unused actions
* close menus/popups in applicable cases when opening a different one
* split ui z-indexes to account prefer different overlap
* make top canvas area clickable on mobile
* make mobile main menu closable by clicking outside and reduce width
* offset picker popups from viewport border on mobile
* reduce items gap in mobile main menu
* show top picks for canvas bg colors in all ui modes
* fix menu separator visibility on mobile
* fix command palette items not being filtered
* feat(utils): add support for search input type in isWritableElement
* feat(i18n): add search text
* feat(cmdp+lib): add search functionality for command pallete and lib menu items
* chore: fix formats, and whitespaces
* fix: opt to optimal code changes
* chore: fix for linting
* focus input on mount
* tweak placeholder
* design and UX changes
* tweak item hover/active/seletected states
* unrelated: move publish button above delete/clear to keep it more stable
* esc to clear search input / close sidebar
* refactor command pallete library stuff
* make library commands bigger
---------
Co-authored-by: dwelle <5153846+dwelle@users.noreply.github.com>
* 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
* 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