[feature] ui events (#1326)

This PR updates the editor events:
- adds types to the events emitted by the app (by `app.emit`)
- removes a few events emitted by the app (e.g. `move-to-page`,
`change-camera`)
- adds `onEvent` prop to the <TldrawUi> / <Tldraw> components
- call the `onEvent` when actions occur or tools are selected
- does some superficial cleanup on editor app APIs

### Release Note

- Fix layout bug in error dialog
- (ui) Add `TLEventMap` for types emitted from editor app
- (editor) Update `crash` event emitted from editor app to include error
- (editor) Update `change-history` event emitted from editor app
- (editor) Remove `change-camera` event from editor app
- (editor) Remove `move-to-page` event from editor app
- (ui) Add `onEvent` prop and events to <Tldraw> / <TldrawUi>
- (editor) Replace `app.openMenus` plain Set with computed value
- (editor) Add `addOpenMenu` method
- (editor) Add `removeOpenMenu` method
- (editor) Add `setFocusMode` method 
- (editor) Add `setToolLocked` method  
- (editor) Add `setSnapMode` method 
- (editor) Add `isSnapMode` method 
- (editor) Update `setGridMode` method return type to editor app
- (editor) Update `setReadOnly` method return type to editor app
- (editor) Update `setPenMode` method return type to editor app
- (editor) Update `selectNone` method return type to editor app
- (editor) Rename `backToContent` to `zoomToContent`
- (editor) Remove `TLReorderOperation` type

---------

Co-authored-by: Orange Mug <orangemug@users.noreply.github.com>
This commit is contained in:
Steve Ruiz 2023-05-11 23:14:58 +01:00 committed by GitHub
parent 5061240912
commit 3437ca89d9
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
50 changed files with 935 additions and 344 deletions

View file

@ -78,7 +78,7 @@ function ZoomMenuItem(props: {
label={actions[action].label}
kbd={actions[action].kbd}
data-wd={props['data-wd']}
onClick={actions[action].onSelect}
onClick={() => actions[action].onSelect('zoom-menu')}
noClose={noClose}
disabled={disabled}
/>