excalidraw/dev-docs/src/initialData.js
zsviczian 1d5e865da1
update to latest master (#6286)
* fix: fonts not rendered on init if `loadingdone` not fired (#5923)

* fix: fonts not rendered on init if `loadingdone` not fired

* remove unnecessary check

* fix: Always bind to container selected by user (#5880)

* fix: Always bind to container selected by user

* Don't bind to container when using text tool

* adjust z-index for bound text

* fix

* Add spec

* Add test

* Allow double click on transparent container and add spec

* fix spec

* adjust z-index only when binding

* update index

* fix

* add index check

* Update src/scene/Scene.ts

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

* feat: changed text copy/paste behaviour (#5786)

Co-authored-by: dwelle <luzar.david@gmail.com>
Co-authored-by: Antonio Della Fortuna <a.dellafortuna00@gmail.com>

* feat: Don't add midpoint until dragged beyond a threshold (#5927)

* Don't add midpoint until dragged beyond a threshold

* remove unnecessary code

* fix tests

* fix

* add spec

* remove isMidpoint

* cleanup

* fix threshold for zoom

* split into shouldAddMidpoint and addMidpoint

* wrap in flushSync for synchronous updates

* remove threshold for line editor and add spec

* [unrelated] fix stack overflow state update

* fix tests

* don't drag arrow when dragging to add mid point

* add specs

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

* refactor: remove unnecessary code (#5933)

* fix: scale font correctly when using shift (#5935)

* fix: scale font correctly when using shift

* fix

* Empty-Commit

* Add spec

* fix

* fix: Dedupe boundElement ids when container duplicated with alt+drag  (#5938)

* Dedupe boundElement ids when container duplicated with alt+drag and add spec

* set to null by default

* fix: bindings do not survive history serialization (#5942)

* fix: don't allow whitespaces for bound text (#5939)

* fix: don't allow whitespaces for bound text

* fix

* remove

* remove empty else

* fix

* fix

* fix

* feat: Support labels for arrow 🔥 (#5723)

* feat: support arrow with text

* render arrow -> clear rect-> render text

* move bound text when linear elements move

* fix centering cursor when linear element rotated

* fix y coord when new line added and container has 3 points

* update text position when 2nd point moved

* support adding label on top of 2nd point when 3 points are present

* change linear element editor shortcut to cmd+enter and fix tests

* scale bound text points when resizing via bounding box

* ohh yeah rotation works :)

* fix coords when updating text properties

* calculate new position after rotation always from original position

* rotate the bound text by same angle as parent

* don't rotate text and make sure dimensions and coords are always calculated from original point

* hardcoding the text width for now

* Move the linear element when bound text hit

* Rotation working yaay

* consider text element angle when editing

* refactor

* update x2 coords if needed when text updated

* simplify

* consider bound text to be part of bounding box when hit

* show bounding box correctly when multiple element selected

* fix typo

* support rotating multiple elements

* support multiple element resizing

* shift bound text to mid point when odd points

* Always render linear element handles inside editor after element rendered so point is visible for bound text

* Delete bound text when point attached to it deleted

* move bound to mid segement mid point when points are even

* shift bound text when points nearby deleted and handle segment deletion

* Resize working :)

* more resize fixes

* don't update cache-its breaking delete points, look for better soln

* update mid point cache for bound elements when updated

* introduce wrapping when resizing

* wrap when resize for 2 pointer linear elements

* support adding text for linear elements with more than 3 points

* export to svg  working :)

* clip from nearest enclosing element with non transparent color if present when exporting and fill with correct color in canvas

* fix snap

* use visible elements

* Make export to svg work with Mask :)

* remove id

* mask canvas linear element area where label is added

* decide the position of bound text during render

* fix coords when editing

* fix multiple resize

* update cache when bound text version changes

* fix masking when rotated

* render text in correct position in preview

* remove unnecessary code

* fix masking when rotating linear element

* fix masking with zoom

* fix mask in preview for export

* fix offsets in export view

* fix coords on svg export

* fix mask when element rotated in svg

* enable double-click to enter text

* fix hint

* Position cursor correctly and text dimensiosn when height of element is negative

* don't allow 2 pointer linear element with bound text width to go beyond min width

* code cleanup

* fix freedraw

* Add padding

* don't show vertical align action for linear element containers

* Add specs for getBoundTextElementPosition

* more specs

* move some utils to linearElementEditor.ts

* remove only :p

* check absoulte coods in test

* Add test to hide vertical align for linear eleemnt with bound text

* improve export preview

* support labels only for arrows

* spec

* fix large texts

* fix tests

* fix zooming

* enter line editor with cmd+double click

* Allow points to move beyond min width/height for 2 pointer arrow with bound text

* fix hint for line editing

* attempt to fix arrow getting deselected

* fix hint and shortcut

* Add padding of 5px when creating bound text and add spec

* Wrap bound text when arrow binding containers moved

* Add spec

* remove

* set boundTextElementVersion to null if not present

* dont use cache when version mismatch

* Add a padding of 5px vertically when creating text

* Add box sizing content box

* Set bound elements when text element created to fix the padding

* fix zooming in editor

* fix zoom in export

* remove globalCompositeOperation and use clearRect instead of fillRect

* fix: repair element bindings on restore (#5956)

* fix: repair element bindings on restore

* fix dropping non-text bound elements

* be more conservative

* build: move release scripts to use release branch (#5958)

* fix: renderFooter styling (#5962)

* fix: `ExcalidrawArrowElement` rather than `ExcalidrawArrowEleement` (#5955)

* fix: Galego and Kurdî missing in languages plus two locale typos (#5954)

* fix: remove blank space (#5950)

* fix: remove editor onpaste handler (#5971)

* feat: better default radius sizes for rectangles (#5553)

Co-authored-by: Ryan <diweihao@bytedance.com>
Co-authored-by: dwelle <luzar.david@gmail.com>

* chore: add display name to context providers (#5974)

* chore: add display name to context providers

* fix typo

* fix: apply the right type of roundness when pasting styles (#5979)

* fix: only paste roundness when target and source elements are of the same type

* apply roundness when pasting across different types

* simplify

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

* feat: allow readonly actions to be used in viewMode (#5982)

* fix: chart pasting not working due to removing tab characters (#5987)

* fix: Avatar outline on safari & center (#5997)

* fix: not properly restoring element stroke and bg colors (#6002)

* fix: PWA not working after CRA@5 update (#6012)

* fix: PWA not working after CRA@5 update

* fix: fallback to default locale when fetch fails

* fix: resize sometimes throwing on missing null-checks (#6013)

* fix: showing `grabbing` cursor when holding `spacebar` (#6015)

* fix: don't push whitespace to next line when exceeding max width during wrapping and make sure to use same width of text editor on DOM when measuring dimensions (#5996)

* fix: don't push whitespace to next line when exceeding max width during wrapping

* add a helper function and never push empty line

* use width same as in text area so dimensions are same

* add tests

* make sure dom element has exact same width as text editor

* feat: render footer as a component instead of render prop (#5970)

* feat: render footer as a component instead of render prop

* Export FooterCenter as footer

* remove useDevice export

* revert some changes

* remove

* add spec

* update specs

* parse children into a dictionary

* factor app footer components into a single file

* Add docs

* split app footer components

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

* feat: move contextMenu into the component tree and control via appState (#6021)

* fix: ColorPicker getColor (#5949)

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

* chore: bump typescript @ 4.9.4 (#6024)

* feat: support shrinking text containers to original height when text removed (#6025)

* fix:cache bind text containers height so that it could autoshrink to original height when text deleted

* revert

* rename

* reset cache when resized

* safe check

* restore original containr height when text is unbind

* update cache when redrawing bounding box

* reset cache when unbind

* make type-safe

* add specs

* skip one test

* remoe mock

* fix

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

* fix: restoring deleted bindings (#6029)

* fix: restoring deleted bindings

* add tests

* add one more test

* merge restore tests files

* fix: use canvas measureText to calculate width in measureText (#6030)

* fix: use canvas measureText to calculate width in measureText

* calculate multiline width correctly using canvas measure text and rename functions

* set correct width when pasting in bound container

* take existing value + new pasted

* remove debugger :p

* fix snaps

* fix: remove background from wysiwyg when editing arrow label (#6033)

Co-authored-by: Aakansha Doshi <aakansha1216@gmail.com>

* fix: use displayName since name gets stripped off when uglifying/minifiyng in production (#6036)

fix: use displayName since name gets stripped off when uglifying/minifiy in production

* feat: Scroll using PageUp and PageDown (#6038)

* feat: Scroll using PageUp and PageDown

* support x-axis via `shift` & enable in viewMode

* tweak test

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

* chore: Update translations from Crowdin (#5807)

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

* fix: remove ga from docker build (#6059)

* fix: remove ga from docker build

* lint

* fix debug

* fix: show error message on collab save failure (#6063)

* fix: show error message on collab save failure

* comment

* feat: new Menu Component API (#6034)

* feat: new Menu Component API

* allow valid children types

* introduce menu group to group items

* Add lang footer

* use display name

* displayName

* define types inside

* fix default menu

* add json export to menu

* fix

* simplify expression

* put open menu into own compo to optimize perf

So that we don't rerun `useOutsideClickHook` (and rebind event listeners
all the time)

* naming tweaks

* rename MenuComponents->MenuDefaultItems and export default items from Menu.Items

* import Menu.scss in Menu.tsx

* move menu scss to excal app

* Don't filter children inside menu group

* move E+ out of socials

* support style prop for MenuItem and MenuGroup

* Support header in menu group and add Excalidraw links header for default items in social section

* rename header to title

* fix padding for lang

* render menu in mobile

* review fixes

* tweaks

* Export collaborators and show in mobile menu

* revert .env

* lint :p

* again lint

* show correct actions in view mode for mobile

* Whitelist Collaborators Comp

* mobile styling

* padding

* don't show nerds when menu open in mobile

* lint :(

* hide shortcuts

* refactor userlist to support mobile and keep a wrapper comp for excal app

* use only UserList

* render only on mobile for default items

* remove unused hooks

* Show collab button in menu when onCollabButtonClick present and hide export when UIOptions.canvasActions.export is false

* fix tests

* lint

* inject userlist inside menu on mobile

* revert userlist

* move menu socials to default menu

* fix collab

* use meny in library

* Make Menu generic and create hamburgemenu for public excal menu and use menu in library as well

* use appState.openMenu for mobile

* fix tests

* styling fixes and support style and class name in menu content

* fix test

* rename MenuDefaultItems->DefaultItems

* move footer css to its own comp

* rename HamburgerMenu -> MainMenu

* rename menu -> dropdownMenu and update classes, onClick->onToggle

* close main menu when dialog closes

* by bye filtering

* update docs

* fix lint

* update example, docs for useDevice and footer in mobile, rename menu ->DropDownMenu everywhere

* spec

* remove isMenuOpenAtom and set openMenu as canvas for main menu, render decreases in specs :)

* [temp] remove cyclic depenedency to fix build

* hack- update appstate to sync lang change

* Add more specs

* wip: rewrite MainMenu footer

* fix margin

* fix snaps

* not needed as lang list no more imported

* simplify custom footer rendering

* Add DropdownMenuItemLink and DropdownMenuItemCustom and update API, docs

* fix `MainMenu.ItemCustom`

* naming

* use onSelect and base class for custom items

* fix lint

* fix snap

* use custom item for lang

* update docs

* fix

* properly use `MainMenu.ItemCustom` for `LanguageList`

* add margin top to custom items

* flex

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

* fix: HelpDialog (#6072)

* chore: Update translations from Crowdin (#6052)

* New translations en.json (German)

* Auto commit: Calculate translation coverage

* New translations en.json (Hindi)

* New translations en.json (Marathi)

* New translations en.json (Hindi)

* Auto commit: Calculate translation coverage

* New translations en.json (Galician)

* Auto commit: Calculate translation coverage

* New translations en.json (Romanian)

* New translations en.json (French)

* 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 (German)

* New translations en.json (Greek)

* New translations en.json (Basque)

* 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 (Kurdish)

* New translations en.json (Lithuanian)

* New translations en.json (Dutch)

* New translations en.json (Punjabi)

* New translations en.json (Polish)

* New translations en.json (Portuguese)

* New translations en.json (Russian)

* New translations en.json (Slovak)

* New translations en.json (Slovenian)

* New translations en.json (Swedish)

* New translations en.json (Turkish)

* 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 (Tamil)

* New translations en.json (Bengali)

* New translations en.json (Marathi)

* 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 (Kabyle)

* Auto commit: Calculate translation coverage

* New translations en.json (Chinese Simplified)

* Auto commit: Calculate translation coverage

* New translations en.json (Chinese Traditional)

* New translations en.json (Chinese Traditional)

* New translations en.json (Norwegian Bokmal)

* Auto commit: Calculate translation coverage

* New translations en.json (Latvian)

* Auto commit: Calculate translation coverage

* New translations en.json (Romanian)

* Auto commit: Calculate translation coverage

* New translations en.json (Slovenian)

* Auto commit: Calculate translation coverage

* New translations en.json (Spanish)

* New translations en.json (Russian)

* Auto commit: Calculate translation coverage

* New translations en.json (German)

* Auto commit: Calculate translation coverage

* New translations en.json (Vietnamese)

* Auto commit: Calculate translation coverage

* New translations en.json (Hindi)

* Auto commit: Calculate translation coverage

* New translations en.json (Dutch)

* Auto commit: Calculate translation coverage

* New translations en.json (Marathi)

* Auto commit: Calculate translation coverage

* New translations en.json (Latvian)

* New translations en.json (French)

* Auto commit: Calculate translation coverage

* New translations en.json (French)

* Auto commit: Calculate translation coverage

* New translations en.json (Portuguese, Brazilian)

* Auto commit: Calculate translation coverage

* New translations en.json (Japanese)

* Auto commit: Calculate translation coverage

* build(deps): bump json5 from 2.2.1 to 2.2.3 in /src/packages/excalidraw (#6062)

Bumps [json5](https://github.com/json5/json5) from 2.2.1 to 2.2.3.
- [Release notes](https://github.com/json5/json5/releases)
- [Changelog](https://github.com/json5/json5/blob/main/CHANGELOG.md)
- [Commits](https://github.com/json5/json5/compare/v2.2.1...v2.2.3)

---
updated-dependencies:
- dependency-name: json5
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump json5 from 2.2.1 to 2.2.3 in /src/packages/utils (#6061)

Bumps [json5](https://github.com/json5/json5) from 2.2.1 to 2.2.3.
- [Release notes](https://github.com/json5/json5/releases)
- [Changelog](https://github.com/json5/json5/blob/main/CHANGELOG.md)
- [Commits](https://github.com/json5/json5/compare/v2.2.1...v2.2.3)

---
updated-dependencies:
- dependency-name: json5
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump json5 from 2.2.1 to 2.2.3 in /dev-docs (#6060)

Bumps [json5](https://github.com/json5/json5) from 2.2.1 to 2.2.3.
- [Release notes](https://github.com/json5/json5/releases)
- [Changelog](https://github.com/json5/json5/blob/main/CHANGELOG.md)
- [Commits](https://github.com/json5/json5/compare/v2.2.1...v2.2.3)

---
updated-dependencies:
- dependency-name: json5
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump decode-uri-component from 0.2.0 to 0.2.2 (#5963)

Bumps [decode-uri-component](https://github.com/SamVerschueren/decode-uri-component) from 0.2.0 to 0.2.2.
- [Release notes](https://github.com/SamVerschueren/decode-uri-component/releases)
- [Commits](https://github.com/SamVerschueren/decode-uri-component/compare/v0.2.0...v0.2.2)

---
updated-dependencies:
- dependency-name: decode-uri-component
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump json5 from 1.0.1 to 1.0.2 (#6076)

Bumps [json5](https://github.com/json5/json5) from 1.0.1 to 1.0.2.
- [Release notes](https://github.com/json5/json5/releases)
- [Changelog](https://github.com/json5/json5/blob/main/CHANGELOG.md)
- [Commits](https://github.com/json5/json5/compare/v1.0.1...v1.0.2)

---
updated-dependencies:
- dependency-name: json5
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump loader-utils from 2.0.3 to 2.0.4 (#5905)

Bumps [loader-utils](https://github.com/webpack/loader-utils) from 2.0.3 to 2.0.4.
- [Release notes](https://github.com/webpack/loader-utils/releases)
- [Changelog](https://github.com/webpack/loader-utils/blob/v2.0.4/CHANGELOG.md)
- [Commits](https://github.com/webpack/loader-utils/compare/v2.0.3...v2.0.4)

---
updated-dependencies:
- dependency-name: loader-utils
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* build(deps): bump loader-utils from 2.0.3 to 2.0.4 in /src/packages/excalidraw (#5892)

build(deps): bump loader-utils in /src/packages/excalidraw

Bumps [loader-utils](https://github.com/webpack/loader-utils) from 2.0.3 to 2.0.4.
- [Release notes](https://github.com/webpack/loader-utils/releases)
- [Changelog](https://github.com/webpack/loader-utils/blob/v2.0.4/CHANGELOG.md)
- [Commits](https://github.com/webpack/loader-utils/compare/v2.0.3...v2.0.4)

---
updated-dependencies:
- dependency-name: loader-utils
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* fix: stale appState of MainMenu defaultItems rendered from Actions (#6074)

* fix: png-exporting does not preserve angles correctly for flipped images (#6085)

* fix: png-exporting does not preserve angles correctly for flipped images

* refactor related code

* simplify further and comment

* fix: image horizontal flip fix + improved tests (#5799)

Co-authored-by: Antonio Della Fortuna <a.dellafortuna00@gmail.com>
Co-authored-by: dwelle <luzar.david@gmail.com>
fixes https://github.com/excalidraw/excalidraw/issues/5784

* fix: React.memo resolvers not accounting for all props (#6042)

* fix: use position absolute for mobile misc tools (#6099)

* feat: generic button export (#6092)

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

* feat: render unknown supplied children to UI (#6096)

* feat: support WelcomeScreen customization API (#6048)

* fix: renamed folder MainMenu->main-menu and support rest props (#6103)

* renamed folder MainMenu -> main-menu

* rename ariaLabel -> aria-label and dataTestId -> data-testid

* allow rest props

* fix

* lint

* add ts check

* ts for div

* fix

* fix

* fix

* feat: new Live Collaboration Component API (#6104)

* feat: new Live Collaboration Component API

* namespace export icons into `icons` dictionary and lowercase

* update readme and changelog

* review fixes

* fix

* fix

* update docs

* remove

* allow button rest props

* update docs

* docs

* add `WelcomeScreen.Center.MenuItemLiveCollaborationTrigger`

* fix lint

* update changelog

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

* fix: mobile tools positioning (#6107)

* fix: mobile tools positioning

* add var for padding

* use css var

* new line

* stupid mistake

* lint

* fix: remove overflow hidden from button (#6110)

remove overflow hidden from button

* docs: release @excalidraw/excalidraw@0.14.0  🎉 (#6109)

* docs: release @excalidraw/excalidraw@0.14.1 🎉 (#6112)

* build: temporarily disable pre-commit (#6132)

* chore: Update translations from Crowdin (#6077)

* feat: show copy-as-png export button on firefox and show steps how to enable it (#6125)

* feat: hide copy-as-png shortcut from help dialog if not supported

* fix: support firefox if clipboard.write supported

* show shrotcut in firefox and instead show error message how to enable the flag support

* widen to TypeError because minification

* show copy-as-png on firefox even if it will throw

* style: change in ExportButton style (#6147) (#6148)

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

* fix: button background and svg sizes (#6155)

* fix: button background color fallback

* fix svg width/height

* feat: add hand/panning tool (#6141)

* feat: add hand/panning tool

* move hand tool right of tool lock separator

* tweak i18n

* rename `panning` -> `hand`

* toggle between last tool and hand on `H` shortcut

* hide properties sidebar when `hand` active

* revert to rendering HandButton manually due to mobile toolbar

* feat: close MainMenu and Library dropdown on item select (#6152)

* fix: declare css variable for font in excalidraw so its available in host (#6160)

declar css variable for font in excalidraw so its available in host

* fix: 🐛 broken emojis when wrap text (#6153)

* fix: 🐛 broken emojis when wrap text

* refactor: Delete unnecessary "else" (reduce indentation)

* fix: remove code block that causes the emojis to disappear

* Apply suggestions from code review

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

* fix: 🚑 possibly undefined value

* Add spec

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

* fix: set the width correctly using measureText in editor (#6162)

* fix: quick typo fix (#6167)

* fix: add 1px width to the container to calculate more accurately (#6174)

* fix: add 1px width to the container to calculate accurately

* fix tests

* feat: rewrite public UI component rendering using tunnels (#6117)

* feat: rewrite public UI component rendering using tunnels

* factor out into components

* comments

* fix variable naming

* fix not hiding welcomeScreen

* factor out AppFooter and memoize components

* remove `UIOptions.welcomeScreen` and render only from host app

* factor out tunnels into own file

* update changelog. Keep `UIOptions.welcomeScreen` as deprecated

* update changelog

* lint

---------

Co-authored-by: Aakansha Doshi <aakansha1216@gmail.com>

* fix: make tunnels work in multi-instance scenarios (#6178)

* fix: make tunnels work in multi-instance scenarios

* factor tunnels out

* use tunnel-rat fork until upsteam updated

* fix: horizontal padding when aligning bound text containers (#6180)

* fix: horizontal padding when aligning bound text containers

* Add specs

* fix

* docs: release @excalidraw/excalidraw@0.14.2  🎉 (#6181)

* docs: migrating dev docs to docusaurus :) (#6073)

* docs: migrating existing docs to docosaraus :)

* log broken links

* lint :p

* fix

* divide the doc into diff categories

* fix

* order sidebars and more

* fix lint

* point to installation

* making docs better :)

* fix

* renaming git

* renaming git

* fix links

* fix

* update readme

* fix

* resolve duplicate url and make /docs as base url

* fix

* move main docs as well

* making docs better

* support mdx

* update og

* fix title

* upgrade docusarus to stable version

* use draculla theme

* fix

* make entire sidebar collapsable

* live editor for footer wohoo

* render excalidraw only on client to fix the prod build

* migrate MainMenu to live editor too :)

* lint :p

* cleanup integration and use live editor and tabs

* fix

* Add welcome screen doc

* Live Collaboration comp docs

* Add collaborator example

* Add example

* add more

* remove isCollaborating

* Rewrite ref and move to sidebar

* change color of links inside pre

* add initial data

* fix lint

* Add styling

* fix lint

* Add example for customizing styles

* fix lint

* fix

* fix lint

* Add link to livecollabtrigger

* fix

* rewrite UIOptions to sidebar

* move initialdata to sidebar

* move render props to sidebar and rewrite renderTopRightUI and renderCustomStats

* rewrite renderSidebar

* update og

* update url for testing

* fix url

* update readme

* fix style

* tweaks

* Add highlight comp to highlight text

* Add bash syntax highlight

* fix

* tweaks

* fix

* rewrite export utilities

* fix restore

* rewrite utils

* move constants to sidebar

* update readme

* add copyright

* fix links style

* Add linkedin

* tweaks

* rename package to @excalidraw/excalidraw

* enable algolia with dummy creds

* tweaks to integration doc

* tweak WelcomeScreen docs to reflect upcoming API changes

* tweak components intro

* tweak nomenclature

* fix admonition

* rename `components` sidebar item and change order of components list

* uncollapse package section in sidebar

* show level 4 haeadings in TOC

* remove algolia

* remove unused assets

* capitalize C

* tweak

* rename components to App

* rename components -> children-components in the routes

* move notable used tools to intro

* update MainMenu docs with `onSelect` preventDefault behavior

* change sidebar label for children components

* use code

* tweak README & docs intro

* tweak package development doc

* make scrollbar gutter stable

* tweak api intro

* add admonition for export utils

* use next

* wip

* wip

* make excalidraw examples use current color theme & prefer system

* fix welcomescreen docs

* use latest temp release

* fix component order

* revert wip changes

* use next

* tweak

* increase height to fix welcome screen hint

* tweak editor height

* update excal version

* wrap Excal with forwardRef to fix refs

* migrate contributing.md

* fix broken links

---------

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

* fix: edit link in docs (#6182)

* docs: show last updated time and author (#6183)

docs:show last updated time and author

* fix: hide welcome screen on mobile once user interacts (#6185)

* fix: hide welcome screen on mobile once started drawing

* Add specs

* fix: sort bound text elements to fix text duplication z-index error (#5130)

* fix: sort bound text elements to fix text duplication z-index error

* improve & sort groups & add tests

* fix backtracking and discontiguous groups

---------

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

* feat: disable canvas smoothing (antialiasing) for right-angled elements (#6186)Co-authored-by: Ignacio Cuadra <67276174+ignacio-cuadra@users.noreply.github.com>

* feat: disable canvas smoothing for text and other types

* disable smoothing for all right-angled elements

* Update src/renderer/renderElement.ts

Co-authored-by: Ignacio Cuadra <67276174+ignacio-cuadra@users.noreply.github.com>

* Update src/renderer/renderElement.ts

Co-authored-by: Ignacio Cuadra <67276174+ignacio-cuadra@users.noreply.github.com>

* fix lint

* always enable smoothing while zooming

---------

Co-authored-by: Ignacio Cuadra <67276174+ignacio-cuadra@users.noreply.github.com>

* chore: Update translations from Crowdin (#6150)

* feat: shortcut for clearCanvas confirmDialog (#6114)

Co-authored-by: dwelle <luzar.david@gmail.com>
resolve https://github.com/excalidraw/excalidraw/issues/5818

* feat: show error message when not connected to internet while collabo… (#6165)

Co-authored-by: dwelle <luzar.david@gmail.com>
Resolves https://github.com/excalidraw/excalidraw/issues/5994

* fix: docker build architecture:linux/amd64 error occur on linux/arm64 instance (#6197)

fix docker build
when in linux/arm64 use docker buildx plugin to build linux/amd64 image, a build error will occur causing the build to break

* refactor: Make the example React app reusable without duplication (#6188)

* fix: don't allow blank space in collab name (#6211)

* don't allow blank space in collab name

* add spec

* prevent blank

* docs: enable Algolia for search (#6230)

* feat: Make repair and refreshDimensions configurable in restoreElements (#6238)

* fix: don't repair during reconcilation

* Add opts to restoreElement and enable refreshDimensions and repair via config

* remove

* update changelog

* fix tests

* rename to repairBindings

* docs: Fixed broken codesandbox link in the dev-docs (#6229)

fixed broken link

* docs: new readme (#6240)

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

* docs: fix next.js example (#6241)

* docs: fix typo (#6252)

* feat: Bind text to container if double clicked on filled shape or stroke (#6250)

* feat: bind text to container when clicked on filled shape or element stroke

* Bind if double clicked on stroke as well

* remove

* specs

* remove

* shuffle

* fix

* back to normal

* docs: Fix outdated link in README.md (#6263)

* fix: improve text wrapping in ellipse and alignment (#6172)

* fix: improve text wrapping in ellipse

* compute height when font properties updated

* fix alignment

* fix alignment when resizing

* fix

* ad padding

* always compute height when redrawing bounding box and refactor

* lint

* fix specs

* fix

* redraw text bounding box when pasted or refreshed

* fix

* Add specs

* fix

* restore on font load

* add comments

* fix: improve text wrapping inside rhombus and more fixes (#6265)

* fix: improve text wrapping inside rhombus

* Add comments

* specs

* fix: shift resize and multiple element regression for ellipse and rhombus

* use container width for scaling font size

* fix

* fix multiple resize

* lint

* redraw on submit

* redraw only newly pasted elements

* no padding when center

* fix tests

* fix

* dont add padding in rhombus when aligning

* refactor

* fix

* move getMaxContainerHeight and getMaxContainerWidth to textElement.ts

* Add specs

* fix: indenting via `tab` clashing with IME compositor (#6258)

* chore: Update translations from Crowdin (#6191)

* fix: rerender i18n in host components on lang change (#6224)

* fix: fit mobile toolbar and make scrollable (#6270)

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

* feat: improve text measurements in bound containers (#6187)

* feat: move to canvas measureText

* calcualte height with better heuristic

* improve heuristic more

* remove vertical offset as its not needed

* lint

* calculate width of individual char and ceil to calculate width and remove adjustment factor

* push the word if equal to max width

* update height when text overflows for vertical alignment top/bottom

* remove the hack of updating height when line mismatch as its not needed

* remove scroll height and calculate the height instead

* remove unused code

* fix

* remove

* use math.ceil for whole width instead of individual chars

* fix tests

* fix

* fix

* redraw text bounding box instead when font loaded to fix alignment as well

* fix

* fix

* fix

* Add a 0.05px extra only for firefox

* Add spec

* stop taking ceil and increase firefox editor width by 0.05px

* Ad 0.05px in safari too

* lint

* lint

* remove baseline from measureFontSizeFromWH

* don't redraw on font load

* lint

* refactor name and signature

* fix: compute container height from bound text correctly (#6273)

* fix: compute container height from bound text correctly

* fix specs

* Add tests

* fix: svg text baseline (#6285

* fix: svg text baseline

* fix for multiline

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: David Luzar <luzar.david@gmail.com>
Co-authored-by: Aakansha Doshi <aakansha1216@gmail.com>
Co-authored-by: Antonio Della Fortuna <50418432+adarkforce@users.noreply.github.com>
Co-authored-by: Antonio Della Fortuna <a.dellafortuna00@gmail.com>
Co-authored-by: DanielJGeiger <1852529+DanielJGeiger@users.noreply.github.com>
Co-authored-by: Fer <63980689+1fbr@users.noreply.github.com>
Co-authored-by: fennghuang <89014758+fennghuang@users.noreply.github.com>
Co-authored-by: Ryan Di <ryan.weihao.di@gmail.com>
Co-authored-by: Ryan <diweihao@bytedance.com>
Co-authored-by: Excalidraw Bot <77840495+excalibot@users.noreply.github.com>
Co-authored-by: EternalWill43 <70084418+EternalWill43@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Barnabás Molnár <38168628+barnabasmolnar@users.noreply.github.com>
Co-authored-by: Nishant-l <61119157+Nishant-l@users.noreply.github.com>
Co-authored-by: Ignacio Cuadra <67276174+ignacio-cuadra@users.noreply.github.com>
Co-authored-by: JUNYI OU <49964599+Irvingouj@users.noreply.github.com>
Co-authored-by: Jang Min <jangmin.dev@gmail.com>
Co-authored-by: Matthieu Rossignon <51274353+Mattross45@users.noreply.github.com>
Co-authored-by: Dejavu Moe <jialong.vip@gmail.com>
Co-authored-by: Luka Hietala <95122845+LukaHietala@users.noreply.github.com>
Co-authored-by: Milos Vetesnik <maielo.mv@gmail.com>
Co-authored-by: Jan Klass <kissaki@posteo.de>
Co-authored-by: Hikaru Yoshino <57059705+osushicrusher@users.noreply.github.com>
Co-authored-by: Tengku Farhan <109069184+tfarhan00@users.noreply.github.com>
2023-02-26 20:48:47 +01:00

1231 lines
33 KiB
JavaScript

export const libraryItems = [
[
{
type: "line",
version: 1699,
versionNonce: 1813275999,
isDeleted: false,
id: "1OMHrnYMU3LJ3w3IaXU_R",
fillStyle: "hachure",
strokeWidth: 1,
strokeStyle: "solid",
roughness: 1,
opacity: 100,
angle: 0,
x: 209.72304760646858,
y: 338.83587294718825,
strokeColor: "#881fa3",
backgroundColor: "#be4bdb",
width: 116.42036295658873,
height: 103.65107323746608,
seed: 1445523839,
groupIds: [],
strokeSharpness: "sharp",
boundElementIds: [],
startBinding: null,
endBinding: null,
points: [
[-92.28090097254909, 7.105427357601002e-15],
[-154.72281841151394, 19.199290805487394],
[-155.45758928571422, 79.43840749607878],
[-99.89923520113778, 103.6510732374661],
[-40.317783799181804, 79.1587107641305],
[-39.037226329125524, 21.285677238400705],
[-92.28090097254909, 7.105427357601002e-15],
],
lastCommittedPoint: null,
startArrowhead: null,
endArrowhead: null,
},
],
[
{
type: "line",
version: 3901,
versionNonce: 540959103,
isDeleted: false,
id: "b-rwW8s76ztV_uTu1SHq1",
fillStyle: "solid",
strokeWidth: 1,
strokeStyle: "solid",
roughness: 1,
opacity: 100,
angle: 0,
x: -249.48446738689245,
y: 374.851387389359,
strokeColor: "#0a11d3",
backgroundColor: "#228be6",
width: 88.21658171083376,
height: 113.8575037534261,
seed: 1513238033,
groupIds: ["N2YAi9nU-wlRb0rDaDZoe"],
strokeSharpness: "round",
boundElementIds: [],
startBinding: null,
endBinding: null,
points: [
[-0.22814350714115691, -43.414939319563715],
[0.06274947619197979, 42.63794490105306],
[-0.21453039840335475, 52.43469208825097],
[4.315205554872581, 56.66774540453215],
[20.089784992984285, 60.25027917349701],
[46.7532926683984, 61.365826671969444],
[72.22851104292477, 59.584691681394986],
[85.76368213524371, 55.325139565662596],
[87.67263486434864, 51.7342924478499],
[87.94074036468018, 43.84700272879395],
[87.73030872197806, -36.195582644606276],
[87.2559282533682, -43.758132174307036],
[81.5915337527493, -47.984890854524416],
[69.66352776578219, -50.4328058257654],
[42.481213744224995, -52.49167708145666],
[20.68789182864576, -51.26396751574663],
[3.5475921483286084, -47.099726468136254],
[-0.2758413461535838, -43.46664538034193],
[-0.22814350714115691, -43.414939319563715],
],
lastCommittedPoint: null,
startArrowhead: null,
endArrowhead: null,
},
{
type: "line",
version: 1635,
versionNonce: 1383184881,
isDeleted: false,
id: "3CMZYj34FwjhgPB7jUC3f",
fillStyle: "solid",
strokeWidth: 1,
strokeStyle: "solid",
roughness: 1,
opacity: 100,
angle: 0,
x: -249.02524930453623,
y: 398.8804363713438,
strokeColor: "#0a11d3",
backgroundColor: "transparent",
width: 88.30808627974527,
height: 9.797916664247975,
seed: 683951089,
groupIds: ["N2YAi9nU-wlRb0rDaDZoe"],
strokeSharpness: "round",
boundElementIds: [],
startBinding: null,
endBinding: null,
points: [
[0, -2.1538602707609424],
[2.326538897826852, 1.751753055375216],
[12.359939318521995, 5.028526743934819],
[25.710950037209347, 7.012921076245119],
[46.6269757640547, 7.193749997581346],
[71.03526003420632, 5.930375670950649],
[85.2899738827162, 1.3342483900732343],
[88.30808627974527, -2.6041666666666288],
],
lastCommittedPoint: null,
startArrowhead: null,
endArrowhead: null,
},
{
type: "line",
version: 1722,
versionNonce: 303290783,
isDeleted: false,
id: "DX3fUhBWtlJwYyrBDhebG",
fillStyle: "solid",
strokeWidth: 1,
strokeStyle: "solid",
roughness: 1,
opacity: 100,
angle: 0,
x: -250.11899081659772,
y: 365.80628180927204,
strokeColor: "#0a11d3",
backgroundColor: "transparent",
width: 88.30808627974527,
height: 9.797916664247975,
seed: 1817746897,
groupIds: ["N2YAi9nU-wlRb0rDaDZoe"],
strokeSharpness: "round",
boundElementIds: [],
startBinding: null,
endBinding: null,
points: [
[0, -2.1538602707609424],
[2.326538897826852, 1.751753055375216],
[12.359939318521995, 5.028526743934819],
[25.710950037209347, 7.012921076245119],
[46.6269757640547, 7.193749997581346],
[71.03526003420632, 5.930375670950649],
[85.2899738827162, 1.3342483900732343],
[88.30808627974527, -2.6041666666666288],
],
lastCommittedPoint: null,
startArrowhead: null,
endArrowhead: null,
},
{
type: "ellipse",
version: 4738,
versionNonce: 753357777,
isDeleted: false,
id: "a-Snvp2FgqDYqSLylF44S",
fillStyle: "solid",
strokeWidth: 1,
strokeStyle: "solid",
roughness: 1,
opacity: 100,
angle: 0,
x: -251.23981350275943,
y: 323.4117518426986,
strokeColor: "#0a11d3",
backgroundColor: "#fff",
width: 87.65074610854188,
height: 17.72670397681366,
seed: 1409727409,
groupIds: ["N2YAi9nU-wlRb0rDaDZoe"],
strokeSharpness: "sharp",
boundElementIds: ["bxuMGTzXLn7H-uBCptINx"],
},
{
type: "ellipse",
version: 109,
versionNonce: 1992641983,
isDeleted: false,
id: "7-6c-JFuB2yGoNQRgb2WM",
fillStyle: "solid",
strokeWidth: 1,
strokeStyle: "solid",
roughness: 1,
opacity: 100,
angle: 0,
x: -179.73008120217884,
y: 347.98755471983213,
strokeColor: "#0a11d3",
backgroundColor: "#fff",
width: 12.846057046979809,
height: 13.941904362416096,
seed: 1073094033,
groupIds: ["N2YAi9nU-wlRb0rDaDZoe"],
strokeSharpness: "sharp",
boundElementIds: [],
},
{
type: "ellipse",
version: 158,
versionNonce: 1028567473,
isDeleted: false,
id: "150XitJtlKDhTPRCyzv56",
fillStyle: "solid",
strokeWidth: 1,
strokeStyle: "solid",
roughness: 1,
opacity: 100,
angle: 0,
x: -179.73008120217884,
y: 378.5900085788926,
strokeColor: "#0a11d3",
backgroundColor: "#fff",
width: 12.846057046979809,
height: 13.941904362416096,
seed: 526271345,
groupIds: ["N2YAi9nU-wlRb0rDaDZoe"],
strokeSharpness: "sharp",
boundElementIds: [],
},
{
type: "ellipse",
version: 212,
versionNonce: 158547423,
isDeleted: false,
id: "cmwAR3NBl1VqvSorrQN2W",
fillStyle: "solid",
strokeWidth: 1,
strokeStyle: "solid",
roughness: 1,
opacity: 100,
angle: 0,
x: -179.73008120217884,
y: 411.8508097533892,
strokeColor: "#0a11d3",
backgroundColor: "#fff",
width: 12.846057046979809,
height: 13.941904362416096,
seed: 243707217,
groupIds: ["N2YAi9nU-wlRb0rDaDZoe"],
strokeSharpness: "sharp",
boundElementIds: [],
},
],
[
{
type: "diamond",
version: 659,
versionNonce: 1294871039,
isDeleted: false,
id: "aDDArXRjZugwyEawdhCeZ",
fillStyle: "solid",
strokeWidth: 1,
strokeStyle: "solid",
roughness: 1,
opacity: 100,
angle: 0,
x: -109.55894395256101,
y: 381.22641397493356,
strokeColor: "#c92a2a",
backgroundColor: "#fd8888",
width: 112.64736525303451,
height: 36.77344700318558,
seed: 511870335,
groupIds: ["M6ByXuSmtHCr3RtPPKJQh"],
strokeSharpness: "sharp",
boundElementIds: [],
},
{
type: "diamond",
version: 700,
versionNonce: 60864881,
isDeleted: false,
id: "Hzx8zkeyDs3YicO2Tdv6G",
fillStyle: "solid",
strokeWidth: 1,
strokeStyle: "solid",
roughness: 1,
opacity: 100,
angle: 0,
x: -109.55894395256101,
y: 372.354634046675,
strokeColor: "#c92a2a",
backgroundColor: "#fd8888",
width: 112.64736525303451,
height: 36.77344700318558,
seed: 1283079231,
groupIds: ["M6ByXuSmtHCr3RtPPKJQh"],
strokeSharpness: "sharp",
boundElementIds: [],
},
{
type: "diamond",
version: 780,
versionNonce: 251040287,
isDeleted: false,
id: "PNzYhT295VNCT5EXmqvmw",
fillStyle: "solid",
strokeWidth: 1,
strokeStyle: "solid",
roughness: 1,
opacity: 100,
angle: 0,
x: -109.55894395256101,
y: 359.72407445196296,
strokeColor: "#c92a2a",
backgroundColor: "#fd8888",
width: 112.64736525303451,
height: 36.77344700318558,
seed: 996251633,
groupIds: ["M6ByXuSmtHCr3RtPPKJQh"],
strokeSharpness: "sharp",
boundElementIds: [],
},
{
type: "diamond",
version: 822,
versionNonce: 1862951761,
isDeleted: false,
id: "jiMMAhQF3__7bF-obgXc0",
fillStyle: "solid",
strokeWidth: 1,
strokeStyle: "solid",
roughness: 1,
opacity: 100,
angle: 0,
x: -109.55894395256101,
y: 347.1924021546656,
strokeColor: "#c92a2a",
backgroundColor: "#fd8888",
width: 112.64736525303451,
height: 36.77344700318558,
seed: 1764842481,
groupIds: ["M6ByXuSmtHCr3RtPPKJQh"],
strokeSharpness: "sharp",
boundElementIds: [],
},
],
[
{
type: "line",
version: 4766,
versionNonce: 2003030321,
isDeleted: false,
id: "BXfdLRoPYZ9MIumzzoA9-",
fillStyle: "hachure",
strokeWidth: 1,
strokeStyle: "solid",
roughness: 1,
opacity: 100,
angle: 1.5707963267948957,
x: -471.6208001976387,
y: 520.7681448415112,
strokeColor: "#087f5b",
backgroundColor: "#40c057",
width: 52.317507746132115,
height: 154.56722543646003,
seed: 1424381745,
groupIds: ["HSrtfEf-CssQTf160Fb6R"],
strokeSharpness: "round",
boundElementIds: [],
startBinding: null,
endBinding: null,
points: [
[-0.24755378372925183, -40.169554027464216],
[-0.07503751055611152, 76.6515171914404],
[-0.23948042713317108, 89.95108885873196],
[2.446913573036335, 95.69766931810295],
[11.802146636255692, 100.56113713047068],
[27.615140546177496, 102.07554835500338],
[42.72341054254274, 99.65756899883291],
[50.75054563137204, 93.87501510096598],
[51.88266441510958, 89.00026150397161],
[52.04166639997853, 78.29287333983132],
[51.916868330459295, -30.36891819848148],
[51.635533423123285, -40.63545540065934],
[48.27622163143906, -46.37349057843314],
[41.202227904674494, -49.69665692879073],
[25.081551986374073, -52.49167708145666],
[12.15685839679867, -50.825000270901],
[1.9916746648394732, -45.171835889467935],
[-0.2758413461535838, -40.23974757720194],
[-0.24755378372925183, -40.169554027464216],
],
lastCommittedPoint: null,
startArrowhead: null,
endArrowhead: null,
},
{
type: "line",
version: 2405,
versionNonce: 2120341087,
isDeleted: false,
id: "TYsYe2VvJ60T_yKa3kyOw",
fillStyle: "solid",
strokeWidth: 1,
strokeStyle: "solid",
roughness: 1,
opacity: 100,
angle: 1.5707963267948957,
x: -496.3957643857249,
y: 541.7241190920508,
strokeColor: "#087f5b",
backgroundColor: "transparent",
width: 50.7174766392476,
height: 12.698053371678215,
seed: 726657713,
groupIds: ["HSrtfEf-CssQTf160Fb6R"],
strokeSharpness: "round",
boundElementIds: [],
startBinding: null,
endBinding: null,
points: [
[0, -2.0205717204386002],
[1.3361877396713384, 3.0410845646550486],
[7.098613049589299, 7.287767671898479],
[14.766422451441104, 9.859533283467512],
[26.779003528407447, 10.093886705011586],
[40.79727342221974, 8.456559589697127],
[48.98410145879092, 2.500000505196364],
[50.7174766392476, -2.6041666666666288],
],
lastCommittedPoint: null,
startArrowhead: null,
endArrowhead: null,
},
{
type: "line",
version: 2538,
versionNonce: 1913946897,
isDeleted: false,
id: "VIuxhGjvYUBniitomEkKm",
fillStyle: "solid",
strokeWidth: 1,
strokeStyle: "solid",
roughness: 1,
opacity: 100,
angle: 1.5707963267948957,
x: -450.969983237283,
y: 542.1789894334747,
strokeColor: "#087f5b",
backgroundColor: "transparent",
width: 50.57247907260371,
height: 10.178760037658167,
seed: 1977326481,
groupIds: ["HSrtfEf-CssQTf160Fb6R"],
strokeSharpness: "round",
boundElementIds: [],
startBinding: null,
endBinding: null,
points: [
[0, -2.136356936862347],
[1.332367676378171, 1.9210669226078037],
[7.078318632616268, 5.325208253515953],
[14.724206326638113, 7.386735659885842],
[26.70244431044034, 7.574593370991538],
[40.68063699304561, 6.262111896696538],
[48.84405948536458, 1.4873339211608216],
[50.57247907260371, -2.6041666666666288],
],
lastCommittedPoint: null,
startArrowhead: null,
endArrowhead: null,
},
{
type: "ellipse",
version: 5503,
versionNonce: 1236644479,
isDeleted: false,
id: "1acGiqpJjntE3sr1JVnBP",
fillStyle: "solid",
strokeWidth: 1,
strokeStyle: "solid",
roughness: 1,
opacity: 100,
angle: 1.5707963267948957,
x: -404.36521010516793,
y: 534.1894365757241,
strokeColor: "#087f5b",
backgroundColor: "#fff",
width: 51.27812853552538,
height: 22.797152568995934,
seed: 1774660383,
groupIds: ["HSrtfEf-CssQTf160Fb6R"],
strokeSharpness: "sharp",
boundElementIds: ["bxuMGTzXLn7H-uBCptINx"],
},
],
[
{
type: "rectangle",
version: 4270,
versionNonce: 309922463,
isDeleted: false,
id: "SqGRpNqls7OV1QB2Eq-0m",
fillStyle: "solid",
strokeWidth: 2,
strokeStyle: "solid",
roughness: 1,
opacity: 100,
angle: 0,
x: -393.3000561423187,
y: 338.9742643666818,
strokeColor: "#000000",
backgroundColor: "#fff",
width: 70.67858069123133,
height: 107.25081879410921,
seed: 371096063,
groupIds: ["9ppmKFUbA4iKjt8FaDFox"],
strokeSharpness: "sharp",
boundElementIds: [
"CFu0B4Mw_1wC1Hbgx8Fs0",
"XIl_NhaFtRO00pX5Pq6VU",
"EndiSTFlx1AT7vcBVjgve",
],
},
{
type: "rectangle",
version: 4319,
versionNonce: 896119505,
isDeleted: false,
id: "fayss6b_GPh6LK1x4iX-q",
fillStyle: "solid",
strokeWidth: 2,
strokeStyle: "solid",
roughness: 1,
opacity: 100,
angle: 0,
x: -400.8474891780329,
y: 331.95417508096745,
strokeColor: "#000000",
backgroundColor: "#fff",
width: 70.67858069123133,
height: 107.25081879410921,
seed: 685932433,
groupIds: ["0RJwA-yKP5dqk5oMiSeot", "9ppmKFUbA4iKjt8FaDFox"],
strokeSharpness: "sharp",
boundElementIds: [
"CFu0B4Mw_1wC1Hbgx8Fs0",
"XIl_NhaFtRO00pX5Pq6VU",
"EndiSTFlx1AT7vcBVjgve",
],
},
{
type: "rectangle",
version: 4417,
versionNonce: 1968987839,
isDeleted: false,
id: "HgAnv2rwYhUpLiJiZAXv-",
fillStyle: "solid",
strokeWidth: 2,
strokeStyle: "solid",
roughness: 1,
opacity: 100,
angle: 0,
x: -410.24257846374826,
y: 323.7002688309677,
strokeColor: "#000000",
backgroundColor: "#fff",
width: 70.67858069123133,
height: 107.25081879410921,
seed: 58634943,
groupIds: ["9ppmKFUbA4iKjt8FaDFox"],
strokeSharpness: "sharp",
boundElementIds: [
"CFu0B4Mw_1wC1Hbgx8Fs0",
"XIl_NhaFtRO00pX5Pq6VU",
"EndiSTFlx1AT7vcBVjgve",
],
},
{
type: "draw",
version: 3541,
versionNonce: 1680683185,
isDeleted: false,
id: "12aO-Bs9HdALZN_-tuQTr",
fillStyle: "solid",
strokeWidth: 1,
strokeStyle: "solid",
roughness: 1,
opacity: 100,
angle: 0,
x: -398.2561518768373,
y: 371.84603609547054,
strokeColor: "#000000",
backgroundColor: "#fff",
width: 46.57983585730082,
height: 3.249953844290203,
seed: 1673003743,
groupIds: ["9ppmKFUbA4iKjt8FaDFox"],
strokeSharpness: "round",
boundElementIds: [],
points: [
[0, 0.6014697828497827],
[40.42449133807562, 0.7588628355182573],
[46.57983585730082, -2.491091008771946],
],
lastCommittedPoint: null,
startArrowhead: null,
endArrowhead: null,
},
{
type: "draw",
version: 3567,
versionNonce: 620768991,
isDeleted: false,
id: "Ck_Y0EVPh_fsY0qoRnGiD",
fillStyle: "solid",
strokeWidth: 1,
strokeStyle: "solid",
roughness: 1,
opacity: 100,
angle: 0,
x: -396.400899638823,
y: 340.9822185794818,
strokeColor: "#000000",
backgroundColor: "#fff",
width: 45.567415680676426,
height: 2.8032978840147194,
seed: 1821527807,
groupIds: ["9ppmKFUbA4iKjt8FaDFox"],
strokeSharpness: "round",
boundElementIds: [],
points: [
[0, 0],
[16.832548902953302, -2.8032978840147194],
[45.567415680676426, -0.3275477042019195],
],
lastCommittedPoint: null,
startArrowhead: null,
endArrowhead: null,
},
{
type: "draw",
version: 3592,
versionNonce: 1300624017,
isDeleted: false,
id: "a_7IZapEuD918VW1P8Ss_",
fillStyle: "solid",
strokeWidth: 1,
strokeStyle: "solid",
roughness: 1,
opacity: 100,
angle: 0,
x: -396.4774991551924,
y: 408.37659284983897,
strokeColor: "#000000",
backgroundColor: "#fff",
width: 48.33668263438425,
height: 4.280657518731036,
seed: 1485707039,
groupIds: ["9ppmKFUbA4iKjt8FaDFox"],
strokeSharpness: "round",
boundElementIds: [],
points: [
[0, 0],
[26.41225578429045, -0.2552319773002338],
[37.62000339651456, 2.3153712935189787],
[48.33668263438425, -1.9652862252120569],
],
lastCommittedPoint: null,
startArrowhead: null,
endArrowhead: null,
},
{
type: "draw",
version: 3629,
versionNonce: 737475327,
isDeleted: false,
id: "8io6FVNdFOLsQ266W8Lni",
fillStyle: "solid",
strokeWidth: 1,
strokeStyle: "solid",
roughness: 1,
opacity: 100,
angle: 0,
x: -399.6615463367227,
y: 419.61974125811776,
strokeColor: "#000000",
backgroundColor: "#fff",
width: 54.40694982784246,
height: 2.9096445412231735,
seed: 1042012991,
groupIds: ["9ppmKFUbA4iKjt8FaDFox"],
strokeSharpness: "round",
boundElementIds: [],
points: [
[0, 0],
[10.166093050596771, -1.166642430373031],
[16.130660965377448, -0.8422655250909383],
[46.26079588567538, 0.6125567455206506],
[54.40694982784246, -2.297087795702523],
],
lastCommittedPoint: null,
startArrowhead: null,
endArrowhead: null,
},
{
type: "draw",
version: 3594,
versionNonce: 1982560369,
isDeleted: false,
id: "LJI5kY6tg7UFAjPV3fKL-",
fillStyle: "solid",
strokeWidth: 1,
strokeStyle: "solid",
roughness: 1,
opacity: 100,
angle: 0,
x: -399.3767034411569,
y: 356.042820132743,
strokeColor: "#000000",
backgroundColor: "#fff",
width: 46.92865289294453,
height: 2.4757501798128,
seed: 295443295,
groupIds: ["9ppmKFUbA4iKjt8FaDFox"],
strokeSharpness: "round",
boundElementIds: [],
points: [
[0, 0],
[18.193786115221407, -0.5912874140789839],
[46.92865289294453, 1.884462765733816],
],
lastCommittedPoint: null,
startArrowhead: null,
endArrowhead: null,
},
{
type: "draw",
version: 3609,
versionNonce: 1857766175,
isDeleted: false,
id: "zCrZOHW-q8YWKLw6ltKxX",
fillStyle: "solid",
strokeWidth: 1,
strokeStyle: "solid",
roughness: 1,
opacity: 100,
angle: 0,
x: -399.26921524500654,
y: 390.5261491685826,
strokeColor: "#000000",
backgroundColor: "#fff",
width: 46.92865289294453,
height: 2.4757501798128,
seed: 1734301567,
groupIds: ["9ppmKFUbA4iKjt8FaDFox"],
strokeSharpness: "round",
boundElementIds: [],
points: [
[0, 0],
[8.093938105125233, 1.4279702913643746],
[18.193786115221407, -0.5912874140789839],
[46.92865289294453, 1.884462765733816],
],
lastCommittedPoint: null,
startArrowhead: null,
endArrowhead: null,
},
],
[
{
type: "rectangle",
version: 676,
versionNonce: 1841530687,
isDeleted: false,
id: "XOD3vRhtoLWoxC9wF9Sk8",
fillStyle: "solid",
strokeWidth: 1,
strokeStyle: "solid",
roughness: 1,
opacity: 100,
angle: 0,
x: -593.9896997899341,
y: 343.9798351106279,
strokeColor: "#000000",
backgroundColor: "transparent",
width: 127.88383573213892,
height: 76.53703389977764,
seed: 106569279,
groupIds: ["TC0RSM64Cxmu17MlE12-o"],
strokeSharpness: "sharp",
boundElementIds: [],
},
{
type: "line",
version: 462,
versionNonce: 1737150513,
isDeleted: false,
id: "WBkTga1PjKzYK-tcGjnjZ",
fillStyle: "solid",
strokeWidth: 1,
strokeStyle: "solid",
roughness: 1,
opacity: 100,
angle: 0,
x: -595.0652975408293,
y: 354.6963695028721,
strokeColor: "#000000",
backgroundColor: "transparent",
width: 128.84193229844433,
height: 0,
seed: 73916127,
groupIds: ["TC0RSM64Cxmu17MlE12-o"],
strokeSharpness: "round",
boundElementIds: [],
startBinding: null,
endBinding: null,
points: [
[0, 0],
[128.84193229844433, 0],
],
lastCommittedPoint: null,
startArrowhead: null,
endArrowhead: null,
},
{
type: "ellipse",
version: 282,
versionNonce: 1198409567,
isDeleted: false,
id: "FHX0ZsIzUUfYPJqrZ8Lso",
fillStyle: "solid",
strokeWidth: 1,
strokeStyle: "solid",
roughness: 0,
opacity: 100,
angle: 0,
x: -589.5016643209792,
y: 348.2514049106367,
strokeColor: "#000000",
backgroundColor: "#fa5252",
width: 5.001953125,
height: 5.001953125,
seed: 387857791,
groupIds: ["TC0RSM64Cxmu17MlE12-o"],
strokeSharpness: "sharp",
boundElementIds: [],
},
{
type: "ellipse",
version: 327,
versionNonce: 1661182481,
isDeleted: false,
id: "ugVRR0f_uDOjrllO10yAs",
fillStyle: "solid",
strokeWidth: 1,
strokeStyle: "solid",
roughness: 0,
opacity: 100,
angle: 0,
x: -579.2389690084792,
y: 348.2514049106367,
strokeColor: "#000000",
backgroundColor: "#fab005",
width: 5.001953125,
height: 5.001953125,
seed: 1486370207,
groupIds: ["TC0RSM64Cxmu17MlE12-o"],
strokeSharpness: "sharp",
boundElementIds: [],
},
{
type: "ellipse",
version: 385,
versionNonce: 2047607679,
isDeleted: false,
id: "SBzNA0Sn-ou4QGxotj0SB",
fillStyle: "solid",
strokeWidth: 1,
strokeStyle: "solid",
roughness: 0,
opacity: 100,
angle: 0,
x: -568.525552542133,
y: 348.7021260644829,
strokeColor: "#000000",
backgroundColor: "#40c057",
width: 5.001953125,
height: 5.001953125,
seed: 610150847,
groupIds: ["TC0RSM64Cxmu17MlE12-o"],
strokeSharpness: "sharp",
boundElementIds: [],
},
{
type: "ellipse",
version: 664,
versionNonce: 2135373809,
isDeleted: false,
id: "VKcfbELTVlyJ90m0bGsj0",
fillStyle: "solid",
strokeWidth: 1,
strokeStyle: "solid",
roughness: 1,
opacity: 90,
angle: 0,
x: -552.4984915525058,
y: 364.75449494249875,
strokeColor: "#000000",
backgroundColor: "#04aaf7",
width: 42.72020253937572,
height: 42.72020253937572,
seed: 144280593,
groupIds: ["TC0RSM64Cxmu17MlE12-o"],
strokeSharpness: "sharp",
boundElementIds: [],
},
{
type: "draw",
version: 1281,
versionNonce: 1708997535,
isDeleted: false,
id: "zWrJVrKnkF5K8iXNxi9Aa",
fillStyle: "solid",
strokeWidth: 1,
strokeStyle: "solid",
roughness: 0,
opacity: 100,
angle: 0,
x: -530.327851842306,
y: 378.9357912947449,
strokeColor: "#087f5b",
backgroundColor: "#40c057",
width: 28.226201983883442,
height: 24.44112284281997,
seed: 29167967,
groupIds: ["TC0RSM64Cxmu17MlE12-o"],
strokeSharpness: "round",
boundElementIds: [],
startBinding: null,
endBinding: null,
points: [
[4.907524351775825, 2.043055712211473],
[3.0769604829149455, 1.6284171290602836],
[-2.66472604008681, -4.228569719133945],
[-6.450168189798415, -2.304577297733668],
[-7.704241049212052, 4.416384506147983],
[-6.361372181234263, 8.783101300254884],
[-12.516984713388897, 10.9291595737194],
[-12.295677738198286, 15.686226498407976],
[-7.473371426945252, 15.393030178104425],
[-3.787654025313423, 11.5207568827343],
[1.2873793872375165, 19.910682356036197],
[4.492232250183542, 20.212553123686025],
[1.1302787567009416, 6.843494873631317],
[6.294108177816019, 6.390688722156585],
[8.070028349098962, 7.910451897221202],
[14.143675334886687, 7.910451897221202],
[15.709217270494545, 2.6780252579576427],
[9.128749989671498, 3.1533849725326517],
[10.393751588600717, -3.7167773257046695],
[7.380151667177483, -3.30213874255348],
[4.669824267311791, 1.1200945145694894],
[4.907524351775825, 2.043055712211473],
],
lastCommittedPoint: null,
startArrowhead: null,
endArrowhead: null,
},
{
type: "line",
version: 701,
versionNonce: 1583157713,
isDeleted: false,
id: "LX6kTl9A8K36ld2MEV4tI",
fillStyle: "solid",
strokeWidth: 1,
strokeStyle: "solid",
roughness: 1,
opacity: 90,
angle: 0,
x: -551.4394290784783,
y: 385.71736850567976,
strokeColor: "#000000",
backgroundColor: "#99bcff",
width: 42.095115772272244,
height: 0,
seed: 1443027377,
groupIds: ["TC0RSM64Cxmu17MlE12-o"],
strokeSharpness: "round",
boundElementIds: [],
startBinding: null,
endBinding: null,
points: [
[0, 0],
[42.095115772272244, 0],
],
lastCommittedPoint: null,
startArrowhead: null,
endArrowhead: null,
},
{
type: "line",
version: 2908,
versionNonce: 252866495,
isDeleted: false,
id: "SHmV_QtcwxIE-peI_QOX1",
fillStyle: "solid",
strokeWidth: 1,
strokeStyle: "solid",
roughness: 0,
opacity: 90,
angle: 0,
x: -546.3441000487039,
y: 372.6245229061568,
strokeColor: "#000000",
backgroundColor: "#99bcff",
width: 29.31860660384862,
height: 5.711199931375845,
seed: 244310513,
groupIds: ["TC0RSM64Cxmu17MlE12-o"],
strokeSharpness: "round",
boundElementIds: [],
startBinding: null,
endBinding: null,
points: [
[0, -2.341683327443203],
[0.7724193963150375, -0.06510358900749044],
[4.103544916365185, 1.84492589414448],
[8.536129150893453, 3.0016281808630056],
[15.480325949120388, 3.1070332647092163],
[23.583965316012858, 2.3706131055211244],
[28.316582284417855, -0.3084668090492442],
[29.31860660384862, -2.6041666666666288],
],
lastCommittedPoint: null,
startArrowhead: null,
endArrowhead: null,
},
{
type: "ellipse",
version: 725,
versionNonce: 1969008561,
isDeleted: false,
id: "PKRg6SqIetkWIgRqBAnDY",
fillStyle: "solid",
strokeWidth: 1,
strokeStyle: "solid",
roughness: 1,
opacity: 90,
angle: 0,
x: -538.2701841247845,
y: 363.37196531290607,
strokeColor: "#000000",
backgroundColor: "transparent",
width: 15.528434353116108,
height: 44.82230388130942,
seed: 683572113,
groupIds: ["TC0RSM64Cxmu17MlE12-o"],
strokeSharpness: "sharp",
boundElementIds: [],
},
{
type: "line",
version: 3113,
versionNonce: 533471199,
isDeleted: false,
id: "HrelUAgvfxi_4v8MyL_iT",
fillStyle: "solid",
strokeWidth: 1,
strokeStyle: "solid",
roughness: 0,
opacity: 90,
angle: 0,
x: -544.828148539078,
y: 402.0199316371545,
strokeColor: "#000000",
backgroundColor: "#99bcff",
width: 29.31860660384862,
height: 5.896061363392446,
seed: 318798801,
groupIds: ["TC0RSM64Cxmu17MlE12-o"],
strokeSharpness: "round",
boundElementIds: [],
startBinding: null,
endBinding: null,
points: [
[0, 0],
[4.103544916365185, -4.322122351104391],
[8.536129150893453, -5.516265043290966],
[15.480325949120388, -5.625081903117008],
[23.583965316012858, -4.8648251269605955],
[28.316582284417855, -2.0990281379671547],
[29.31860660384862, 0.2709794602754383],
],
lastCommittedPoint: null,
startArrowhead: null,
endArrowhead: null,
},
],
[
{
type: "rectangle",
version: 685,
versionNonce: 706399231,
isDeleted: false,
id: "dba8s5bDYEnF20oGn2a8b",
fillStyle: "solid",
strokeWidth: 1,
strokeStyle: "solid",
roughness: 1,
opacity: 100,
angle: 0,
x: -715.1043446306466,
y: 330.4231266309418,
strokeColor: "#000000",
backgroundColor: "#ced4da",
width: 70.81644178885557,
height: 108.30428902193904,
seed: 1914896753,
groupIds: ["GMZ-NW9lG7c1AtfBInZ0n"],
strokeSharpness: "sharp",
boundElementIds: [],
},
{
type: "rectangle",
version: 835,
versionNonce: 851916657,
isDeleted: false,
id: "3HxCT4mFZF-jJ6m9pyOCt",
fillStyle: "solid",
strokeWidth: 1,
strokeStyle: "solid",
roughness: 1,
opacity: 100,
angle: 0,
x: -706.996640540555,
y: 338.68030798133873,
strokeColor: "#000000",
backgroundColor: "#fff",
width: 55.801163535143246,
height: 82.83278895375764,
seed: 1306468145,
groupIds: ["GMZ-NW9lG7c1AtfBInZ0n"],
strokeSharpness: "sharp",
boundElementIds: [],
},
{
type: "ellipse",
version: 881,
versionNonce: 704574495,
isDeleted: false,
id: "xX9mcMHy_0Bn-D0UAMyCc",
fillStyle: "solid",
strokeWidth: 1,
strokeStyle: "solid",
roughness: 1,
opacity: 100,
angle: 0,
x: -684.8099707762028,
y: 425.0579911039235,
strokeColor: "#000000",
backgroundColor: "#fff",
width: 11.427824006438863,
height: 11.427824006438863,
seed: 93422161,
groupIds: ["GMZ-NW9lG7c1AtfBInZ0n"],
strokeSharpness: "sharp",
boundElementIds: [],
},
{
type: "rectangle",
version: 528,
versionNonce: 816914769,
isDeleted: false,
id: "h60d2h6UPYkopTlW_XEs4",
fillStyle: "cross-hatch",
strokeWidth: 1,
strokeStyle: "solid",
roughness: 1,
opacity: 100,
angle: 0,
x: -698.7169501405845,
y: 349.2244646574789,
strokeColor: "#000000",
backgroundColor: "#fab005",
width: 39.2417827352022,
height: 19.889460471185775,
seed: 11646495,
groupIds: ["GMZ-NW9lG7c1AtfBInZ0n"],
strokeSharpness: "sharp",
boundElementIds: [],
},
{
type: "rectangle",
version: 570,
versionNonce: 1198069823,
isDeleted: false,
id: "bZbx28BjXM33JV1UezMcH",
fillStyle: "cross-hatch",
strokeWidth: 1,
strokeStyle: "solid",
roughness: 1,
opacity: 100,
angle: 0,
x: -698.7169501405845,
y: 384.7822247024333,
strokeColor: "#000000",
backgroundColor: "#fab005",
width: 39.2417827352022,
height: 19.889460471185775,
seed: 291717649,
groupIds: ["GMZ-NW9lG7c1AtfBInZ0n"],
strokeSharpness: "sharp",
boundElementIds: [],
},
],
];
const initialData = {
libraryItems,
};
export default initialData;