Commit graph

1342 commits

Author SHA1 Message Date
David Sheldrick
5061240912
[chore] Bump nanoid (#1349)
I need to mock nanoid for the ephemeral state fuzz tests, to create
repeatable test runs. In order to do that properly it needs to have a
consistent version among all our packages.

At the same time I'm removing some old unused params in AppOptions

### Change Type

<!-- 💡 Indicate the type of change your pull request is. -->
<!-- 🤷‍♀️ If you're not sure, don't select anything -->
<!-- ✂️ Feel free to delete unselected options -->

<!-- To select one, put an x in the box: [x] -->

- [ ] `patch` — Bug Fix
- [ ] `minor` — New Feature
- [x] `major` — Breaking Change

- [ ] `dependencies` — Dependency Update (publishes a `patch` release,
for devDependencies use `internal`)

- [ ] `documentation` — Changes to the documentation only (will not
publish a new version)
- [ ] `tests` — Changes to any testing-related code only (will not
publish a new version)
- [ ] `internal` — Any other changes that don't affect the published
package (will not publish a new version)


### Release Notes

- Remove unused userId and instanceId props from AppOptions
2023-05-11 11:55:00 +00:00
Steve Ruiz
dfaa536370
[fix] tabs in text exports (#1323)
This PR fixes the appearance of tabs in labels and text when exporting
images.

This involved refactoring our CSS-text-to-multiline-SVG-text.

### Test Plan

1. Create a text or geo shape with a label that includes a tab character
at the beginning of a line (e.g. jsx)
2. Copy the image as SVG and paste

### Release Note

- Fixes a bug with trailing tab characters in text labels on image
export
2023-05-11 09:20:48 +00:00
Orange Mug
88e6f441b1
Fix "copy as png" in firefox when dom.events.asyncClipboard.clipboardItem is enabled (#1342)
Fixes the issue outlined in #1325.

### Test Plan
In firefox

1. Enable clipboard in firefox by going to `about:config` and enabling
`dom.events.asyncClipboard.clipboardItem` (remember to turn it off
afterwards)
2. Test that `copy-as -> PNG` copies the image

In other browsers

1. Test that `copy-as -> PNG` still copies the image

### Release Notes

- Fix "copy as png" in firefox when
`dom.events.asyncClipboard.clipboardItem` is enabled
2023-05-11 06:59:45 +00:00
alex
71aef1764d
Rework the assets package for strategy-specific imports (#1341)
The assets package now only exports esm-formatted .js files. There's one
for each strategy - import-based, and meta.url-based. These are directly
generated as .js and .d.ts files rather than generated as .ts and
converted to js/dts through other means.

As this package depends on esm-specific stuff to function, we don't
publish a cjs version any more.

### Change Type

<!-- 💡 Indicate the type of change your pull request is. -->
<!-- 🤷‍♀️ If you're not sure, don't select anything -->
<!-- ✂️ Feel free to delete unselected options -->

<!-- To select one, put an x in the box: [x] -->

- [ ] `patch` — Bug Fix
- [ ] `minor` — New Feature
- [x] `major` — Breaking Change

- [ ] `dependencies` — Dependency Update (publishes a `patch` release,
for devDependencies use `internal`)

- [ ] `documentation` — Changes to the documentation only (will not
publish a new version)
- [ ] `tests` — Changes to any testing-related code only (will not
publish a new version)
- [ ] `internal` — Any other changes that don't affect the published
package (will not publish a new version)

### Release Notes

- [dev] If you're using the `@tldraw/assets` package, you need to update
your code to `import { getAssetUrlsByImport } from
'@tldraw/assets/imports'` instead of `import { getBundlerAssetUrls }
from '@tldraw/assets`
2023-05-09 16:08:38 +00:00
David Sheldrick
67f5c25c73
[chore] move schema construction to tlschema package (#1334)
Our private tlsync package currently depends on the editor package,
which balloons the size of the cloudflare worker. It also makes it so
that any change to any package triggers a worker refresh, which makes
working on multiplayer stuff kinda miserable.

This is the first PR to fix that problem.

The second PR will need to resolve TLSyncClient's dependency on the
debugFlags somehow. Easiest would be to just remove the offending flag,
but we might want cross-bublic debug flags at some point in the future
so I'll try to find a low-cost way to make that happen while making
`tlsync` not depend on `editor`.

cc @TodePond since you added the flag in question
(`tldrawResetConnectionEveryPing`)

### Release Note

- internal moving stuff around
2023-05-09 14:40:58 +00:00
Steve Ruiz
bb96852b9d
[feature] check-box geo shape (#1330)
This PR adds a `check-box` geo shape. 

![Kapture 2023-05-08 at 15 31
49](https://user-images.githubusercontent.com/23072548/236853749-99ba786f-73a4-4b65-86ca-f2cdac61a903.gif)

It also improves some logic around the `onClick` shape util handler and
some surprisingly related fixes to point hit testing.

### Test Plan

1. Create a geo shape
2. Set it as a checkbox style
3. *easter egg* double click while holding alt to toggle between
check-box and rectangle

- [x] Unit Tests

### Release Note

- Adds checkbox geo shape.
2023-05-09 13:32:04 +00:00
Steve Ruiz
2a36d6342c
[tiny] rename show menu paste (#1332)
This PR renames `showUiPaste` to `showMenuPaste`, since we use
`MENU_PASTE` elsewhere.
2023-05-08 21:06:10 +01:00
Steve Ruiz
15b705800f
[fix] update useTransform.ts (#1327)
This PR fixes the way that rotation is handled in `useTransform`.

Before:
<img width="756" alt="image"
src="https://user-images.githubusercontent.com/23072548/236692574-7fcf94bd-76e2-4584-9ea0-4ea4aa6c7ffc.png">
After:
<img width="738" alt="image"
src="https://user-images.githubusercontent.com/23072548/236692585-f1970c9e-041c-470c-8bdb-af975ef48246.png">

### Test Plan

1. Select a bunch of shapes
2. Rotate the selection
3. The selection box should be correct
2023-05-07 18:24:06 +01:00
Steve Ruiz
aab47a1474
[improvement] dragging start distance on coarse pointer (#1220)
This PR slightly increases the distance needed to initiate a drag when
using a coarse pointer.
2023-05-05 14:48:49 +00:00
Steve Ruiz
f315ea2250
[fix] SVG export for arrows with labels but no arrowheads (#1229)
This PR fixes a bug where arrow shapes without arrowheads would not mask
their labels when exporting images.
2023-05-05 14:17:01 +00:00
Lu[ke] Wilson
dc16ae1b12
remove svg layer, html all the things, rs to tl (#1227)
This PR has been hijacked! 🗑️🦝🦝🦝

The <Canvas> component was previously split into an <SVGLayer> and an
<HTMLLayer>, mainly due to the complexity around translating SVGs.
However, this was done before we learned that SVGs can have overflow:
visible, so it turns out that we don't really need the SVGLayer at all.
This PR now refactors away SVG Layer.

It also updates the class name prefix in editor from `rs-` to `tl-` and
does a few other small changes.

---------

Co-authored-by: Steve Ruiz <steveruizok@gmail.com>
2023-05-05 14:14:42 +00:00
Lu[ke] Wilson
b1569c97e0
add docs for TLShapeUtil (#1215)
This PR adds docs for the methods in the TLShapeUtil class.
I think that it's a good page to have docs on, as it shows people what's
possible with the custom shape API.

Currently, our docs are not showing `@param` info for lots of methods,
including the ones added in this PR.
I'll do fix for that in a follow-up PR, so that it's easier to review.

---

Note: Moving forward, we probably want to consider **_where_** these
docs are shown, and how we achieve that.

For example, do we put the docs for these methods in:
* The docs page for the `TLShapeUtil` class?
* The docs pages for the handler types, eg:
[`OnResizeHandler`](http://localhost:3000/gen/editor/OnResizeHandler-type)?
* Both?

Right now, I opted for putting them in the the TLShapeUtil class, as it
keeps them all in one place, and it's what we already do for some
others.

We should consider both - what works best for the docs? and what works
best for code editors?

---

This PR also includes a fix to our pre-commit step that @SomeHats did.
2023-05-05 14:05:25 +00:00
alex
880f82e658
New vite-based examples app (#1226)
Right now this examples app looks exactly the same as our old examples
app, but there are a couple of tiny differences:
- We use `vite` instead of our own esbuild setup for development and
bundling
- We use `@tldraw/assets` for smart asset hashing instead of copying the
assets to a public folder

You can use `@tldraw/assets` with vite with a bunch of extra config, but
it (plus a bunch of other bundlers) also support a special syntax for
specifying asset urls: `new URL('./my/asset.svg',
import.meta.url).href`. This approach is more standards-complient, but
doesn't work with every bundler just yet. This diff also adds a
url-based version of `@tldraw/assets`, although I'd like to tweak the
entry point - right now you need to import from
`@tldraw/assets/lib/urls`, but i'd like to find a way to get this to
`@tldraw/assets/urls` or something at some point.

There are a couple other extra fixes in here:
- vscode builds were broken, they're fixed now!
- there's also a little tweak to the `getBundlerAssetUrls` API to allow
passing in a function instead of an object for URL formatting
- there are new internal-only functions for injecting asset urls
globally instead of passing them in via react props. this means we can
get the benefits of cacheable URLs without having to clutter our
examples by passing them in
2023-05-05 13:10:36 +00:00
Steve Ruiz
0d16942222 readmes 2023-05-04 13:47:56 +01:00
David Sheldrick
b63e871420
[fix] publish (#1222)
- fixes an invalid usage of process.env in the editor package
- fixes some bublic paths in the publishing infra code
2023-05-04 09:25:31 +00:00
David Sheldrick
f44f6e2c9f
[fix] typo in isFocusingInput (#1221)
Fixes
https://discord.com/channels/859816885297741824/1103050527731884082/1103052355110457354
2023-05-03 15:57:59 +00:00
David Sheldrick
00e3d20dc8
[feat] new LiveCollaborators behind feature flag (#1219)
In this PR I'm adding new versions of the `LiveCollaborators` and
`Collaborators` components for the ephemeral state work. They are behind
a feature flag for now.
2023-05-03 13:48:46 +00:00
Steve Ruiz
9fd0803428
[fix] collaborator render order (#1213)
This PR fixes a bug where collaborator cursors would appear below other
overlay content, such as selection boxes.
2023-05-03 08:29:04 +00:00
alex
14b1f24eb2
update @radix-ui/react-popover to 1.0.6-rc.5 (#1206)
Temporarily moving us to a prerelease of this dep. This resolves an
issue where the mobile style menu popover couldn't be closed by tapping
the style button again. See
https://github.com/radix-ui/primitives/issues/2105 for details
2023-05-03 08:28:55 +00:00
David Sheldrick
f5c5b05dc7
[chore] update lazyrepo (#1211) 2023-05-02 12:25:26 +00:00
Steve Ruiz
5ab93eef5f
[fix] pick a better default language (#1201)
This PR improves the language selection. 

Previously, we would miss the user's languages that included a locale.
For example, if a user's languages were `['en-US', 'fr'], then they
would get 'fr' because 'en-US' wasn't in our table—though 'en' was!

We were already doing the splitting elsewhere but now we do it here,
too.

### Release Note

- Improves default language

---------

Co-authored-by: Lu[ke] Wilson <l2wilson94@gmail.com>
2023-04-29 23:06:02 +00:00
Orange Mug
00d4648ef5
Use strokePathData for <ShapeFill/> path to avoid bugs in the inner path algo (#1207)
This avoids some bug with fills in the new inky path algo. This is a
temp fix as it reuses the outer path, but it's fairly broken at the
moment so probably a good hotfix.

Before (notice the background fill busting the bounds of the shape) 

<img width="575" alt="Screenshot 2023-04-27 at 16 54 53"
src="https://user-images.githubusercontent.com/235915/234921462-3f2d81a4-f209-427e-ba33-bfc6b919bba9.png">

After

<img width="575" alt="Screenshot 2023-04-27 at 16 55 24"
src="https://user-images.githubusercontent.com/235915/234921460-7f36ab3e-ec97-4c4a-8634-868bf8eec791.png">

This isn't perfect because we're filling it with this double fill shape,
which I assume has perf issues.

<img width="1058" alt="Screenshot 2023-04-27 at 17 08 28"
src="https://user-images.githubusercontent.com/235915/234921788-f400bac0-fd2c-469a-beec-3e0a0d2f309d.png">

---------

Co-authored-by: Steve Ruiz <steveruizok@gmail.com>
2023-04-29 22:58:18 +00:00
Orange Mug
77175a9dc4
Added pHYs to import/export of png images (#1200)
Added the following

 - Always export pngs with a pixel-ratio of `2`
- Added the `pHYs` png metadata chunk describing the pixel ratio so it
opens with the correct size
 - When importing PNGs read the `pHYs` chunk for the sizing info
 
All the exporting is done via just modifying the bytes from the browsers
native image handling.


https://user-images.githubusercontent.com/235915/234309015-19f39f3a-66ce-4ec2-b7d0-b34a07ed346b.mov

I've also added `ANALYZE=true` option to get the build metadata from
esbuild on boot of `yarn dev` which allow me to see the bundle size info
in https://esbuild.github.io/analyze/

![esbuild github
io_analyze_](https://user-images.githubusercontent.com/235915/234310302-c6fe8109-c82d-480a-8c65-c7638b09e71e.png)

You can see that `crc` adds about `4.4kb`

<img width="280" alt="Screenshot 2023-04-25 at 15 33 26"
src="https://user-images.githubusercontent.com/235915/234310669-99e3e787-ddca-4ad2-81cf-b4a541631d62.png">

---------

Co-authored-by: Steve Ruiz <steveruizok@gmail.com>
2023-04-29 22:10:01 +00:00
David Sheldrick
731da1bc77
derived presence state (#1204)
This PR adds

- A new `TLInstancePresence` record type, to collect info about the
presence state in a particular instance of the editor. This will
eventually be used to sync presence data instead of sending
instance-only state across the wire.
- **Record Scopes**

`RecordType` now has a `scope` property which can be one of three
things:
- `document`: the record belongs to the document and should be synced
and persisted freely. Currently: `TLDocument`, `TLPage`, `TLShape`, and
`TLAsset`
- `instance`: the record belongs to a single instance of the store and
should not be synced at all. It should not be persisted directly in most
cases, but rather compiled into a kind of 'instance configuration' to
store alongside the local document data so that when reopening the
associated document it can remember some of the previous instance state.
Currently: `TLInstance`, `TLInstancePageState`, `TLCamera`, `TLUser`,
`TLUserDocument`, `TLUserPresence`
- `presence`: the record belongs to a single instance of the store and
should not be persisted, but may be synced using the special presence
sync protocol. Currently just `TLInstancePresence`

This sets us up for the following changes, which are gonna be pretty
high-impact in terms of integrating tldraw into existing systems:

- Removing `instanceId` as a config option. Each instance gets a
randomly generated ID.
- We'd replace it with an `instanceConfig` option that has stuff like
selectedIds, camera positions, and so on. Then it's up to library users
to get and reinstate the instance config at persistence boundaries.
- Removing `userId` as config option, and removing the `TLUser` type
altogether.
- We might need to revisit when doing auth-enabled features like locking
shapes, but I suspect that will be separate.
2023-04-27 18:03:19 +00:00
Orange Mug
da613ea6ef
Fix to not ignore the userId option for <Tldraw/> component in @tldraw/tldraw (#1205)
The `userId` prop in the `<Tldraw/>` component from the `@tldraw/tldraw`
was previously ignored. This PR fixes that to make it operational again.
2023-04-27 10:03:21 +00:00
David Sheldrick
4c65cb8db4
[lite] upgrade lazyrepo (#1198)
* upgrade lazyrepo

* update lockfile + lazy.config
2023-04-25 14:32:17 +01:00
alex
29ed921c67 transfer-out: transfer out 2023-04-25 12:01:25 +01:00
alex
ec84f64e63 lite: delete all 2023-04-21 16:53:31 +01:00
Steve Ruiz
325d494a8a 1.29.2 2023-04-01 07:09:12 +01:00
Steve Ruiz
9967b281be
Update useKeyboardShortcuts.tsx (#1181) 2023-04-01 06:29:06 +01:00
alex
784b4503aa
alex/v2-file-notice: quick note when trying to open a v1 file (#1177) 2023-03-24 14:42:28 +00:00
Mark Eibes
bd124dc308
Update README.md (#1168) 2023-03-23 10:56:30 +00:00
alex
1051f4c28c
Add notice that tldraw will be down for maintenance (#1174)
* alex/offline-notice: offline notice

* alex/offline-notice: cleanup

* update copy

---------

Co-authored-by: Steve Ruiz <steveruizok@gmail.com>
2023-03-21 11:45:47 +00:00
Steve Ruiz
ef089bf0f6
Update StyleMenu.tsx (#1172) 2023-03-20 09:33:55 +00:00
Steve Ruiz
fd9200c200 1.29 2023-03-10 11:42:43 +00:00
Steve Ruiz
d0e265fc80
more user select (#1163) 2023-03-10 11:20:10 +00:00
Jang Min
257a7e750c
fix: add PreferencesMenu aria-label (#1131)
* Add aria-label

* Add DMCheckboxItemProps ariaLabel
2023-03-09 19:59:54 +00:00
Jang Min
967efd6b7f
test: aria-label check (#1133)
* Install jest-each

* Add accessibility.spec.tsx

It render App and click button to render context menu.
Then it check if aria-label exists.

* restore lock

* Delete package-lock.json

* Update accessibility.spec.tsx

---------

Co-authored-by: Steve Ruiz <steveruizok@gmail.com>
2023-03-09 19:59:31 +00:00
Jang Min
d00c06144d
Remove DropdownMenu.Root modal property (#1132) 2023-03-09 19:42:18 +00:00
Jang Min
80b4f5aedd
fix: copy and paste without selection occurs error (#1135)
* Add optional chaining

* dont allow empty clipboard data

---------

Co-authored-by: Steve Ruiz <steveruizok@gmail.com>
2023-03-09 19:41:23 +00:00
Steve Ruiz
a9f1a6ccc7
fix buttons, help button placement (#1145) 2023-02-10 13:51:30 +00:00
Karol Stawowski
b6dacdc1cd
fix: fix copy as png feature (#1143) 2023-02-10 13:42:25 +00:00
Steve Ruiz
3d1d329b6f 1.28.0 2023-02-06 14:26:40 +00:00
Jan Werder
0080a78bcd
Updated German translation (#1140) 2023-02-06 09:31:23 +00:00
Jang Min
d38f5a037b
feat: export menu accessibility (#1121)
* Move export submenu(Edit -> File)

* Add export menu to context menu with no selection

* Add export shortcuts
2023-02-02 16:14:39 +00:00
Jang Min
e02a5cb62e
Remove literals (#1114)
https://tldraw.com -> window.location.origin
2023-02-02 16:11:39 +00:00
Jang Min
34d06b17b3
Add aria-label to undo/redo buttons (#1115) 2023-02-02 16:10:42 +00:00
hiroshisuga
dd5c4ae66e
Update ja.json (#1126) 2023-02-02 16:09:13 +00:00
Mohammad Kazemi
0a6d35e8c2
Update Farsi language translation (#1128)
Added new words and translated them. Also edited and reviewed some of the old translation to make them more consistent.
2023-02-02 16:08:46 +00:00
JuanCasad0
7c688d52e0
Added Galician language + full spanish (#1122)
* Add files via upload

Added Galician translation and Spanish (completed)

* Update translations.ts

Added galician language (gl).

* Fixed identation

* Fixed identation
2023-02-02 16:07:25 +00:00
Simon Riisnæs Dagfinrud
6b7eb77846
Add/fix Norwegian translations (#1127)
* Add `nn-no` translation

* Correct `nb-no` translation

* Add Norwegian translations

* Fix typo
2023-02-02 16:06:41 +00:00
Kevin Park
e2a13d5992
Fix image export bug on multiplayer mode (#1130) 2023-02-02 16:06:09 +00:00
Steve Ruiz
55a8831a6b 1.27.0 2023-01-15 11:22:09 +00:00
KDSBrowne
6f87ff022a
add aria-labels to elements for screen readers (#1106) 2023-01-15 11:16:06 +00:00
Jang Min
60728e069a
fix(tooltip): add tooltips for undo/redo buttons (#1095)
* fix(tooltip): add lack tooltips for undo/redo buttons

* fix: change id of undo/redo buttons
2023-01-15 11:15:32 +00:00
Jang Min
33dde339aa
fix: change StyleMenu id(language-menu -> TD_StyleMenu) (#1102) 2023-01-15 11:14:58 +00:00
yashkumar barot
b5e2f00f6e
[bug] Zoom to 100% translated into Japanese should be 100%にズーム #1058 (#1105) 2023-01-15 11:14:29 +00:00
hiroshisuga
303b60c7e3
Update TldrawApp.ts (#1104) 2023-01-15 11:11:38 +00:00
Daniel Alberski
77943e6f85
fix: updated Polish translations (#1111) 2023-01-15 11:11:04 +00:00
Abedalrahman Shamia
b7d2254298
Add missing Arabic translations (#1113)
* add arabic missing translations

* fix image trans ar
2023-01-15 11:09:50 +00:00
Steve Ruiz
70ca73555b fix tests 2022-12-30 18:05:18 -06:00
Steve Ruiz
4208445a8c 1.26.4 2022-12-30 18:02:02 -06:00
Daniel Molkentin
065c3ddc4a
serve fonts locally via fontsource (#1091)
* [fix] serve fonts locally via fontsource (#1077)

* fix vscode extension build

Co-authored-by: zfgrnzfsberire <noreply@github.com>
2022-12-30 17:56:33 -06:00
Brian Hung
b74a6d71f1
create new ids for new shapes and map old ids to new ids (#1082)
* create new ids for new shapes and map old parent ids to new ids

* duplicate bindings and update shape handles

* spacing

Co-authored-by: Bruno <33330711+bybruno@users.noreply.github.com>

* Update duplicatePage.ts

* Update duplicatePage.ts

Co-authored-by: Bruno <33330711+bybruno@users.noreply.github.com>
Co-authored-by: Steve Ruiz <steveruizok@gmail.com>
2022-12-30 17:53:32 -06:00
hiroshisuga
9eb5e56319
Small translation change (#1088) 2022-12-30 16:19:40 -06:00
Cing Sian Dal
cd11fa4892
feat: added Myanmar (Burmese) translation (#1086) 2022-12-30 16:19:19 -06:00
hiroshisuga
ce09e0464a
translation fix (ja) (#1089) 2022-12-30 16:18:50 -06:00
Ahmad Saman
011ccb3052
feat: add kurdish language (#1078)
Co-authored-by: Steve Ruiz <steveruizok@gmail.com>
2022-12-16 18:10:39 +00:00
Kevin Park
737168a930
[Tranlation] update ko-kr translation (#1071) 2022-12-16 18:06:28 +00:00
Malte Janßen
b799b51674
Fix spelling mistake in packages/core README (#1070) 2022-12-16 18:06:02 +00:00
Steve Ruiz
24cad6959f 1.7.24 2022-12-03 14:12:31 +00:00
Steve Ruiz
cfa7f6e357
[fix] text export placement (#1066)
* Fix text export placement

* remove console.log

* Update getTextSvgElement.ts
2022-12-03 13:48:56 +00:00
Peng Xiao
8404528aa6
fix: wheel event handled twice issue (#1050) 2022-12-03 13:10:19 +00:00
Ricardo Crespo
d155ac5968
set pointer capture when the pointer is down so it can be checked on pointer move (#1054) 2022-12-03 13:09:41 +00:00
Steve Ruiz
7be4a27d59
add link to new beta (#1065) 2022-12-03 12:26:48 +00:00
Ricardo Crespo
412d4db618
avoid pointerUptime update before calculating isDoubleClick (#1055) 2022-12-03 12:03:22 +00:00
Kishore Chitrapu
73e87d8732
telugu translation files (#1064)
* telugu translation files

* changed language label to Telugu script
2022-12-03 12:02:22 +00:00
Steve Ruiz
c5ff2da775 1.25.2 2022-11-14 15:53:12 +00:00
Steve Ruiz
8feb565794
[fix] types in core (#1044)
* Fix types

* Update README.md
2022-11-14 15:48:56 +00:00
Peng Xiao
8c1195450c
fix: horizontal pan logic (#1040) 2022-11-14 15:43:42 +00:00
Steve Ruiz
0f2abaf286 1.26.1 2022-11-09 16:35:43 +00:00
Steve Ruiz
cde5f711a5
Fix editing blurs (#1037) 2022-11-09 16:32:13 +00:00
Steve Ruiz
6e275f09ef 1.26.0 2022-10-26 14:06:20 +01:00
kazu
6c7ee29625
update cusor component props (#1024)
* update cusor component props

* add metadata property

* add example

Co-authored-by: Steve Ruiz <steveruizok@gmail.com>
2022-10-26 13:59:12 +01:00
Thai Pangsakulyanont
a85e80961d
Add support for Microsoft Surface Pen eraser (#1009) 2022-10-26 13:55:53 +01:00
Anders Bech Mellson
586c320138
Updated danish translation (#1014) 2022-10-26 13:51:15 +01:00
James Vaughan
7e2395884e
Call onPointerUp on right pointer up (#1008)
* Call onPointerUp on right pointer up

* Set pointer capture on right point events on the canvas
2022-10-26 13:50:58 +01:00
Lucas
6bbff94464
Updated pt-br translation (#1023)
* Update pt-br translation

* Update packages/tldraw/src/translations/pt-br.json

Co-authored-by: Bruno <33330711+bybruno@users.noreply.github.com>

* Update packages/tldraw/src/translations/pt-br.json

Co-authored-by: Bruno <33330711+bybruno@users.noreply.github.com>

* Update packages/tldraw/src/translations/pt-br.json

Co-authored-by: Bruno <33330711+bybruno@users.noreply.github.com>

* Update packages/tldraw/src/translations/pt-br.json

Co-authored-by: Bruno <33330711+bybruno@users.noreply.github.com>

* Update packages/tldraw/src/translations/pt-br.json

Co-authored-by: Bruno <33330711+bybruno@users.noreply.github.com>

* Update packages/tldraw/src/translations/pt-br.json

Co-authored-by: Bruno <33330711+bybruno@users.noreply.github.com>

* Update packages/tldraw/src/translations/pt-br.json

Co-authored-by: Bruno <33330711+bybruno@users.noreply.github.com>

* Update packages/tldraw/src/translations/pt-br.json

Co-authored-by: Bruno <33330711+bybruno@users.noreply.github.com>

* Update packages/tldraw/src/translations/pt-br.json

Co-authored-by: Bruno <33330711+bybruno@users.noreply.github.com>

* Update packages/tldraw/src/translations/pt-br.json

Co-authored-by: Bruno <33330711+bybruno@users.noreply.github.com>

* Update packages/tldraw/src/translations/pt-br.json

Co-authored-by: Bruno <33330711+bybruno@users.noreply.github.com>

* fix: typos, articles and prepositions

Co-authored-by: Bruno <33330711+bybruno@users.noreply.github.com>
2022-10-26 13:50:05 +01:00
Steve Ruiz
0eebdddb5b 1.24.0 2022-10-04 13:08:31 +01:00
James Vaughan
84d78e4d56
Add documentation for the components prop (#1004)
* Add documentation for the components prop

* Add documentation for `hideCursors`
2022-10-04 12:56:54 +01:00
James Vaughan
c5bee7b1be
Call onRightPointCanvas in the canvas onPointerDown handler (#1001) 2022-10-03 11:56:13 +01:00
watchakorn-18k
a7618ff854
Add Thai language (#1002) 2022-10-03 11:55:37 +01:00
Steve Ruiz
e722fcdb4d
Update migrate.ts (#1000) 2022-09-30 15:28:55 +01:00
James Vaughan
d721ae6a2f
Add support for custom cursor components (#994)
* Add support for custom cursor components

* Add tests for the custom cursor props

* Make the main tldraw app take the components prop

* feat: add the ability to hide cursors

* Update cursor props

* Update imports

Co-authored-by: Judicael <46365844+judicaelandria@users.noreply.github.com>
Co-authored-by: Steve Ruiz <steveruizok@gmail.com>
2022-09-24 20:24:11 +01:00
Noah Shipley
b7c968e2aa
Feature/nospread use shape tree (#991)
* Improve useShapeTree performance by removing unneeded spread operation

* Update useShapeTree.tsx

Co-authored-by: Noah Shipley <nshipley@centricsoftware.com>
Co-authored-by: Steve Ruiz <steveruizok@gmail.com>
2022-09-24 20:04:03 +01:00
Steve Ruiz
6077ebdd90 Update TranslateSession.ts 2022-09-24 18:28:43 +01:00
Judicael
a128b7464a
fix: arrow binding id (#993)
* fix: arrow binding id

* add test for bindingId

* Fix arrows

Co-authored-by: Steve Ruiz <steveruizok@gmail.com>
2022-09-24 18:27:15 +01:00
Steve Ruiz
31f0f02adf
Update utils.ts (#989) 2022-09-19 16:54:53 +01:00
Alex Kim
0e8e000f79
fix scrolling menus (#977)
* attempt to fix scrolling menus

* add container to keyboard shortuts

Co-authored-by: Judicael <46365844+judicaelandria@users.noreply.github.com>
2022-09-19 09:27:18 +01:00
Alex Kim
8f2dba8311
remove white space in tldr files for prod (#985) 2022-09-19 09:25:35 +01:00
Judicael
4ea39a0263
fix: flipping and resizing arrows (#979)
* fix: flipping horizontal for arrows

* fix: horizontal flip

* fix return

* add test for flipping arrow

* visualize arc points

* adding test for vertically flipping

* remove arc points

Co-authored-by: Steve Ruiz <steveruizok@gmail.com>
2022-09-13 12:38:42 +01:00
Steve Ruiz
8e55e263bf 1.24.5 2022-09-09 09:54:48 +01:00
Steve Ruiz
254dfdfd77
Fix buttons (again) (#976) 2022-09-09 09:42:46 +01:00
Steve Ruiz
5e24e5a4cb 1.24.4 2022-09-08 13:36:08 +01:00
Steve Ruiz
3ffb9fcfd3 Update KeyboardShortcutDialog.tsx 2022-09-08 13:33:47 +01:00
Steve Ruiz
5fea5b4c69
fix (#968) 2022-09-08 13:33:04 +01:00
Steve Ruiz
0549660244 1.24.3 2022-09-08 11:33:57 +01:00
Steve Ruiz
00e17b65f3 hot fix 2022-09-08 11:13:29 +01:00
Steve Ruiz
b56a3a6982 1.24.1 2022-09-08 10:58:42 +01:00
Steve Ruiz
7774d00e74
[fix] Buttons (#964)
* fix buttons

* update dependencies
2022-09-08 10:45:08 +01:00
Steve Ruiz
760f6494e3 1.24.0 2022-09-08 09:48:50 +01:00
Steve Ruiz
d0cd924ca7
[chore] remove mobx (#961)
* remove mobx as dependency

* fix bugs
2022-09-08 09:38:28 +01:00
Steve Ruiz
c3ff5a51bf Update useCursor.ts 2022-09-07 16:56:29 +01:00
Steve Ruiz
34ce1ed68c 1.22.0 2022-09-07 15:25:47 +01:00
Judicael
ef613af788
fix: include assets when importing document (package tldraw) (#950)
* fix: include asset when importing document

* defensive tweak

* fixey back

Co-authored-by: Steve Ruiz <steveruizok@gmail.com>
2022-09-07 15:08:32 +01:00
Judicael
e1689d678e
feat: change cursor when panning (#939)
* feat: change icon when panning

* add support for panning with the middle mouse

* Remove state at top tldraw

* logic tweaks

* accept middle clicks on objects

* Update useCursor.ts

Co-authored-by: Steve Ruiz <steveruizok@gmail.com>
2022-09-07 14:58:32 +01:00
Anders Rex
bb9e7ee47c
Use id as assetId (#949) 2022-09-07 14:09:18 +01:00
Alex Kim
55ea729e3e
fix and complete russian traslation (#948) 2022-09-07 14:06:04 +01:00
Steve Ruiz
ca91e56b29
[improvement] faster svg paths (#959)
* improve svg paths

* split methods add tldraw 1.2.0
2022-09-07 14:05:30 +01:00
Judicael
3957282515
fix: fix text align in a shape on export (#952)
* fix: fix text align in a shape on export

* remove unused import

* fix text alignment
2022-09-07 13:47:34 +01:00
Alex Kim
b327f62bbe
prevent pasting while panning with the middle mouse button on linux (#953) 2022-09-07 13:07:51 +01:00
turkerdev
590aef15ec
Fix reversed zoom in and zoom out (#956)
Fixes #954
2022-09-07 13:07:07 +01:00
Judicael
1130525fdf
fix: draw and eraser direction when holding shift (#958) 2022-09-07 13:06:33 +01:00
Steve Ruiz
9dab372b81 1.22.1 2022-09-01 17:24:33 +01:00
Steve Ruiz
3cfae6278c
Remove share menu (#946)
* Remove share menu

* Delete ShareMenu.tsx

* Remove alert, etc
2022-09-01 16:19:22 +01:00
David Sheldrick
8351936321
Merge pull request #944 from judicaelandria/fix/url
fix: use location origin
2022-09-01 11:45:42 +01:00
David Sheldrick
759407e40c
Merge pull request #940 from judicaelandria/feat/save-project-as-support
feat: save project as (support for firefox and safari)
2022-09-01 11:23:43 +01:00
Judicael
f55a73f827 fix: use location origin 2022-09-01 12:45:17 +03:00
Steve Ruiz
f98310e5bf 1.22.0 2022-09-01 10:13:32 +01:00
Judicael
d816c4567f
Merge branch 'main' into feat/save-project-as-support 2022-09-01 11:18:20 +03:00
David Sheldrick
1be09d2204
Merge pull request #917 from judicaelandria/feat/share-via-link
feat: share via URL
2022-09-01 09:16:54 +01:00
Judicael
f03a79c5a9 add default value to file name, extension file 2022-08-30 17:06:29 +03:00
Judicael
e29e2e5924 generate new snapshot 2022-08-30 16:22:04 +03:00
Judicael
4ec151ba4f change function name, and useffect dep 2022-08-30 16:18:43 +03:00
Judicael
6079b3cb14 wait for the app to be ready and load docs 2022-08-30 13:35:10 +03:00
Judicael
0f79d4ea68 remove comment 2022-08-29 19:50:44 +03:00
Judicael
7efba8ea68 feat: add rename file dialog 2022-08-29 19:48:37 +03:00
Judicael
bd2fbe08c1 add default value for filename 2022-08-29 18:10:37 +03:00
Judicael
facd5fe4c7 feat: save project as (support for firefox and safari) 2022-08-29 16:32:19 +03:00
Steve Ruiz
a22124b3a7 1.21.1 2022-08-28 08:19:11 +01:00
Steve Ruiz
11c3d1ba27
[fix] text to svg (#936)
* rewrite export text logic

* Update tests

* Update getTextSvgElement.ts

* Update getTextSvgElement.ts

* improve line breaking

* labels + arrows

* small offset for padding

* Fix string bug
2022-08-28 07:07:07 +01:00
Judicael
e984acbd30 update alert dialog text 2022-08-25 18:22:04 +03:00
Judicael
c8a1dd41b7 use intl for description 2022-08-25 15:50:41 +03:00
Judicael
c8b839b43e add alert dialog for alert in share button 2022-08-25 15:49:55 +03:00
Judicael
e1861122f6
Merge branch 'main' into feat/share-via-link 2022-08-25 15:48:30 +03:00
Judicael
4285965fab
feat: use system theme by default (#932)
* feat: use system theme by default

* Move logic to default prop

Co-authored-by: Steve Ruiz <steveruizok@gmail.com>
2022-08-25 09:32:43 +01:00
moonrailgun
9fbf317046
Update translation label for chinese (#926) 2022-08-25 09:19:27 +01:00
Wes Lord
2ebeb01b8a
[chore] Assorted small improvements to docs (#928)
* Remove leftover references to removed Electron app

(Experimental Electron app was purged in #893)

* Correct thanking organization in CONTRIBUTING.md

* Remove reference to pressure (ease) in Vec.pointsBetween description

Used to have an "ease" param, removed in #163

* Make links to core examples from core/README.md more explicit
2022-08-25 09:18:53 +01:00
Wes Lord
2c8e202c1f
Change value of FontStyle.Serif from "erif" to "serif" (#929) 2022-08-25 09:18:10 +01:00
Marcus Stenbeck
cc3f06771f
fix: change Swedish translation (#933) 2022-08-25 09:17:36 +01:00
Hugo
4d51e7b23e
Create European Portuguese translation (#934) 2022-08-25 09:17:16 +01:00
David Sheldrick
aabeb17ea0
Merge pull request #922 from judicaelandria/fix/flip-group
Fix/flip group
2022-08-23 14:59:35 +01:00
Judicael
a5e2597681 feat: flip group shape 2022-08-23 16:27:19 +03:00
Judicael
0d923b4700 fix: undo, redo, add shape to tree 2022-08-23 14:32:59 +03:00
Judicael
49fc0a261e
fix: shape parent id on duplicate page (#920) 2022-08-21 09:49:45 +01:00
Rozstone
ae4a1b6fbe
dialog i18 support (#915) 2022-08-21 07:40:17 +01:00
Judicael
18e47ad56b move grouped shape when flipping 2022-08-19 21:29:53 +03:00
Judicael
ac9802570c fix: move group when flipping 2022-08-19 21:15:25 +03:00
Judicael
d0bcbbae69 use loadDocument for project link 2022-08-18 19:20:45 +03:00
Judicael
caba25e7f5 remove unused code 2022-08-18 16:17:18 +03:00
Judicael
26865a0a57 refix the load document from URL 2022-08-18 15:48:05 +03:00
Judicael
d6140aad8a fix load document 2022-08-18 15:22:18 +03:00
Judicael
7db8d0e825 fix message id 2022-08-18 08:40:59 +03:00
Judicael
5eb3dfc204 share project and current page 2022-08-18 08:11:26 +03:00
Judicael
f6073f3021 feat: share via link 2022-08-17 22:01:32 +03:00
Rozstone
56747e67a5
Pagename i18 support (#907)
* add i18 support for page

* add more cn translations
2022-08-15 22:52:33 +01:00
Judicael
97b0b52a6e
feat: replace window confirm with a dialog (#898)
* feat: replace window confirm with react dialog

* add dialog provider

* export func

* remove unused code

* changes

* Create file_open.tldr

* Update TldrawApp.ts

* clean, and add description

* add a custom container for alert dialog

* Fix fonts

* Fix logic for open project

* Style panel

* Improve styling

Co-authored-by: Steve Ruiz <steveruizok@gmail.com>
2022-08-15 22:45:48 +01:00
Judicael
6dccf26c43
exit dialog when pressing enter (#906) 2022-08-15 22:12:37 +01:00
Zachary Ho
1ea10ca865
Fix tooltips for buttons under ActionButton being partially covered by superseding buttons (#911)
* made Tooltip wrap ToolButton instead of the other way around for items in ActionButton

* removes unnecessary icon variant

* Add tooltips to align/distribute

Co-authored-by: Steve Ruiz <steveruizok@gmail.com>
2022-08-15 22:11:50 +01:00
Judicael
b54a217f13
fix: text align in a shape on export (#914)
* fix: text align in a shape on export

* force align type to Start for labels

Co-authored-by: Steve Ruiz <steveruizok@gmail.com>
2022-08-15 21:45:08 +01:00
Marcus Stenbeck
394dd87cd9
fix: more fitting translations (#900) 2022-08-11 08:58:49 +01:00
Thomas Steiner
c8badf8072
Another attempt at making use of the browser-fs-access npm package directly (#894)
* Fight with TypeScript

* Make TypeScript happy(?)

* Apply suggestions from code review

Co-authored-by: Mateusz Burzyński <mateuszburzynski@gmail.com>

* Update yarn.lock

* Fix favicons

Co-authored-by: Mateusz Burzyński <mateuszburzynski@gmail.com>
Co-authored-by: Steve Ruiz <steveruizok@gmail.com>
2022-08-11 08:41:50 +01:00
Marcus Stenbeck
564dcf7757
Create Swedish translation (#899)
* Create Swedish translation

* Add Swedish translation to translations.json

Co-authored-by: Steve Ruiz <steveruizok@gmail.com>
2022-08-11 07:26:43 +01:00
Gwenaël Gallon
25f39a65fc
Chore: update and optimize turbo (#885)
* Update turbo to latest

* Update turbo.json

* The --stream flag has been deprecated

* Remove unused start:all

* build:packages -> use new --filter

* build:apps -> use new --filter

* build:www -> use new --filter

* build:core -> use new --filter

* build -> fix tldraw-example dependencies

* Optimize test* and lint

* start & start:core -> use new --filter

* start:electron -> use new --filter

* Remove unused start:apps

* Update turbo.json

* Caching ESLint

See Pro Tip : https://turborepo.org/docs/core-concepts/caching#configuring-cache-outputs

* Optimize test:watch

* start:www -> use new filter

* start:vscode -> use new filter

* Update build:core

* Optimize start and start:core

* Clean build:core

* Remove unused command

* Revert "Merge branch 'main' into chore/update-turbo"

This reverts commit a481c242054504c9b8452822df8c452c24bcdfbd, reversing
changes made to a0f2f337b3d00974741effd4faae699ce493d3a2.

* Update start:electron

* Remove unused deploy in turbo.json

* Add start:extension

* Add package:electron and package:vscode

* Add publish:vscode

* Revet Revert: revert "Merge branch 'main' into chore/update-turbo"

* Update vscode extension build

* Clean tldraw-example tsconfig.json

* Uniform script commands

* Fix start for www

* remove mention of removed packages

* add build:core

* Add force to build step

Co-authored-by: Steve Ruiz <steveruizok@gmail.com>
2022-08-11 07:08:32 +01:00
Steve Ruiz
d5639f696a update yarn.lock, clean some deps 2022-08-10 01:00:42 +01:00
Rozstone
9923030a0a
More cn translations (#889)
* add more cn translations

* add i18 for 'Image' tooltip

* fix typo
2022-08-10 00:29:23 +01:00
Steve Ruiz
a0007142e0
[chore] epic purge (#893)
* remove extension / electron app

* switch examples to vite

* Update licenses

* Add script

* fix titles
2022-08-10 00:18:59 +01:00
Judicael
6b023ee596
fix: text shape in svg (#886) 2022-08-06 13:41:42 +01:00
Judicael
c527e0547b
fix pasting svg from clipboard (#884) 2022-08-04 21:43:57 +01:00
Judicael
7fce946428
fix: toggle focus click and kbd (#881) 2022-08-04 15:34:47 +01:00
Gwenaël Gallon
b7231d2bd5
Fix remove unused prop (#880) 2022-08-04 15:10:21 +01:00
Judicael
3570a790b2
Feat/flip group shape (#876)
* feat: flip group shape when it's only selected

* fix undefined object

* add test for flipping grouped shape

* fix conflict
2022-08-04 14:03:43 +01:00
Judicael
6a67ad758f
fix help icon size on mobile (#873)
* fix help icon size on mobile

* Fix menu closing on mobile

* Fix position of help button

* Remove variants

* Update HelpPanel.tsx

Co-authored-by: Steve Ruiz <steveruizok@gmail.com>
2022-08-02 15:15:16 +01:00
Gwenaël Gallon
e0e1373468
Chore: clean up sort imports with prettier (#870)
* Update prettier to latest

* Add format command

* Create .prettierignore

* Add prettier plugin sort imports

* Update prettier config

* Update prettier config

* Update .prettierignore

* Fix @babel/parser conflict

https://github.com/trivago/prettier-plugin-sort-imports/issues/156

* Revert "Update .prettierignore"

This reverts commit 282e5b838376f16b3df7f4c1f99f1106baaffea4.

* Revert change for apps/www/pages/v/[id].tsx

* Sort imports

Moves the third party imports to the top, "~" imports in middle, and "./" at last

* Sorting of the specifiers

in an import declarations

* [www] use path vs  "../"

* [core] use path "~" vs "../"

* [tldraw] use path "~" vs "../.../"

* [tldraw] use path "~" vs "../"

* [tldraw] Cleanup

* Update prettier config

* Last use path "~" vs "../.../"

* [www] Fix order of the third party imports

* Clean prettier config
2022-08-02 14:56:12 +01:00
Gwenaël Gallon
ecb4bfcc3b
Fix: no-unused-vars and remove eslint-disable in files (#862)
* Fix eslint no-unused-vars

* Remove eslint-disable in files
2022-07-30 08:28:48 +01:00
Gwenaël Gallon
3c2c26c11e
Fix: workflow failure with missing lint command and added lint for apps/examples (#866)
* Add turbo run lint

* Add lint to all apps and examples

* Update eslint with monorepo configuration

see: https://typescript-eslint.io/docs/linting/typed-linting/monorepos#one-tsconfigjson-per-package-and-an-optional-one-in-the-root

* Remove unused rules

* Exclude @tldraw/www from global eslint config

* Remove duplicated eslint

* Fix eslint prefer-const errors

* Fix eslint no-unused-vars warning

* Update package.json

* Fix eslint no-unused-vars warning

* bump eslint@^8.20.0

* Correct "Fix eslint no-unused-vars warning"

This reverts commit 0158a2585af84b623f2c5581412252c8471375ae.
2022-07-30 08:27:54 +01:00
with-heart
82f9278976
chore: remove typedoc and docs scripts (#864) 2022-07-29 15:22:08 +01:00
Gwenaël Gallon
37877ec787
Feat: update french translations (#863)
* [fr] Updated french translations

* [fr] Fix "export.background"

* [fr] Fix remove socials
2022-07-29 15:20:05 +01:00
Judicael
2c53fb3d57
fix: prevent deleting shape in session (#853) 2022-07-28 08:26:27 +01:00
with-heart
3d4544548b
chore: improve linting (#855)
* chore(lint): upgrade typescript-eslint

* chore(lint): add root "lint" script

* chore(turbo): remove build dependency from lint

* chore(lint): enable jest recommended rules

* chore(lint): resolve errors

* ci: add lint step

* prettier

Co-authored-by: Steve Ruiz <steveruizok@gmail.com>
2022-07-28 08:25:46 +01:00
with-heart
2e36dadfec
chore: clean up local dev tooling (#856)
* chore: clean up husky + lint-staged

* chore: format all files with prettier
2022-07-28 08:19:53 +01:00
Judicael
6267cefa1d
update radix ui primitives (#842) 2022-07-24 23:57:47 +01:00
Ali Alhaidary
a5bccedd3d
Update ar.json (#847)
* Update ar.json

* Update ar.json

* remove unnecessary translation

we don't need to translate github, twitter and discord

Co-authored-by: Judicael <46365844+judicaelandria@users.noreply.github.com>
2022-07-24 20:02:49 +01:00
Steve Ruiz
3e8f585049 1.20.0 2022-07-23 15:09:37 +01:00
Steve Ruiz
1cd86f6b29 fix icon bg 2022-07-23 15:06:32 +01:00
Steve Ruiz
f0f545806a
[improvement] Quality and UI cleanup (#846)
* remove sponsors, ui cleanup

* fix radius

* improve panel

* remove cursor spline animations

* migrate options

* Switch hrs to divider

* fix text color on menu dark mode

* Remove option for clone handles

* fix wheel

* remove unused translations
2022-07-23 15:05:48 +01:00
Steve Ruiz
014b07d417
[fix] mobile layout (#845)
* fix buttons on ios size

* Update ToolButton.tsx
2022-07-23 09:33:45 +01:00
Josh Stuve
aa5554df70
feat: export background config (#839)
Co-authored-by: JStuve <josh.stuve@gmail.com>
Co-authored-by: Judicael <46365844+judicaelandria@users.noreply.github.com>
2022-07-23 09:33:02 +01:00
Judicael
94cfa38e46
fix: translation key (#844) 2022-07-23 09:12:54 +01:00
Steve Ruiz
59cdc8386c
replace image icon with radix icon (#843) 2022-07-22 21:27:06 +01:00
Ali Alhaidary
5ba8fe6dd7
Update ar.json (#841) 2022-07-22 21:13:25 +01:00
Judicael
ae536d0be6
Add translation in keyboard shortcut (#838) 2022-07-22 18:29:37 +01:00
Gustavo Chico
18da1578cf
fix-spanish-translation (#840) 2022-07-22 18:28:56 +01:00
Judicael
7a353c7d9f
Feature/upload multiple media (#830) 2022-07-21 19:16:01 +01:00
Steve Ruiz
223391afe5
[fix] label (#836)
* fix label

* Update ArrowUtil.tsx
2022-07-21 17:03:31 +01:00
Judicael
bdd63443e0
fix: remove text label gap (#834) 2022-07-21 16:46:54 +01:00
Ali Alhaidary
cad534812b
Update ar.json (#831) 2022-07-21 14:42:36 +01:00
Steve Ruiz
5e9d3c6a45 Update Loading.tsx 2022-07-19 15:56:55 +01:00
Steve Ruiz
d8e7a0b804 Update Loading.tsx 2022-07-19 15:56:35 +01:00
Judicael
77337b1281
feat: add help panel (#816)
* feat: add help panel

* feat: added all the shortcuts and responsive

* improve help panel

* add modal for the shortcut

* add grid

* fix language menu

* add responsive grid

* Styling keyboard shortcuts / panel

* fix links ts issue

* Improve styling

* Fix translation bug

Co-authored-by: Steve Ruiz <steveruizok@gmail.com>
2022-07-19 10:04:38 +01:00
Gwenaël Gallon
240202bb81
feat: Added translation for "loading..." (#823)
* Added translation for "loading..."

* Resolve

Co-authored-by: Steve Ruiz <steveruizok@gmail.com>
2022-07-18 18:04:16 +01:00
Gwenaël Gallon
b32750c43d
[Fix] French translation (#825)
* Only the first letter in capital

* Spelling corrections

* Correction of wrong translations

* Best common translation

* Specify the direction of rotation

* Translate to French

* Better translation for this actions

* Revert to preferring the use of "zoom"

* It's better to know on what it acts

* Missing of hyphen

* Better for user focus

- It's better for the user focus to not use the same action verb for two opposite actions (to.front/to.back)
- Specifies the unit of motion for (forward/backward)

* Removes the direction of rotation

* Better alternative for copy/export as

Also, this indicates that we will be able to choose the file format when copying/exporting.
2022-07-18 18:01:50 +01:00
Steve Ruiz
54b66246d6
Fix flips (#829) 2022-07-18 18:01:15 +01:00
Gwenaël Gallon
b6c4059791
Fix broken link for the translation guide (#824) 2022-07-18 17:52:30 +01:00
Judicael
20d4de02c4
fix: paste unicode (#819)
* fix: paste unicode

* fix unicode

* use html element to unencode

* Move to insertContent

Co-authored-by: Steve Ruiz <steveruizok@gmail.com>
2022-07-14 19:30:03 +01:00
Gwenaël Gallon
cb00822404
feat: add new french translation (#820)
* [fr] add new translations

* Remove duplicate (page)
2022-07-14 13:06:34 +01:00
Ali Alhaidary
29fa3c54dc
Update ar.json (#821) 2022-07-14 13:06:22 +01:00
Gwenaël Gallon
6e5ba45ee5
feat: add "Back to content" missing translation (#809)
* feat: add "Back to content" missing translation

* fix: style

* reverted of translations except for main.json and fr

* Prefer declarative use with an html element
2022-07-13 14:18:59 +01:00
SiderealArt
7d6cc1f924
Create zh-tw.json (#811)
* Create zh-tw.json

* Update translations.ts

* new strings
2022-07-13 14:18:47 +01:00
Ali Alhaidary
8eabfa7a2b
Update ar.json (#815) 2022-07-13 14:18:19 +01:00
Judicael
e6d3074f90
fix browser zoom while editing text (#802) 2022-07-11 09:56:06 +01:00
Steve Ruiz
b0755d8def Restore fixes 2022-07-10 22:05:43 +01:00
Steve Ruiz
a4d980c290 Update ToolsPanel.tsx 2022-07-10 17:34:39 +01:00
Steve Ruiz
2352985e94
[feature] Iframe warning (#800) 2022-07-08 21:25:08 +01:00
Steve Ruiz
1e80d1ac21 1.19.1 2022-07-08 20:35:10 +01:00
Steve Ruiz
9785c1c924 Fix panel position on mobile 2022-07-08 20:03:53 +01:00
Steve Ruiz
167e5944fd Update main.json 2022-07-08 14:56:05 +01:00
Steve Ruiz
75e33d24cf Update utils.ts 2022-07-08 14:47:38 +01:00
Steve Ruiz
c95d52d077 Fix link 2022-07-08 14:46:45 +01:00
Steve Ruiz
7a2e8b1747 Update MultiplayerMenu.tsx 2022-07-08 14:39:43 +01:00
Steve Ruiz
47ba095c16 add dock position to migrate, cleanup code 2022-07-08 14:38:21 +01:00
Steve Ruiz
315112459c
1.20.0 (#797)
* Edit Farsi translations (#788)

* Add a Ukrainian translation (#786)

* Add a Ukrainian translation

* Clarify some strings in the Ukrainian translation

* feat: change dock position (#774)

* feat: change dock position

* fix grid row and column

* add top position

* fix responsive for the top position

* change content side

* fix overflowing menu

* [improvement] theme on body (#790)

* Update Tldraw.tsx

* Add theme on body, adjust dark page options dialog

* fix test

* Preparing for global integration (#775)

* Update translations.ts

* Create en.json

* Make main translation default

* Remove unused locale property of translation

Co-authored-by: Steve Ruiz <steveruizok@gmail.com>

* Fix language menu

* Update ar.json (#793)

* feature/add Hebrew translations (#792)

* hebrew translations

* pr fixes

Co-authored-by: Steve Ruiz <steveruizok@gmail.com>

* fix toolspanel item position (#791)

* fix toolspanel item position

* add translation

Co-authored-by: Steve Ruiz <steveruizok@gmail.com>

* Add remote caching

* Adds link to translation guide (#794)

* Update ar.json (#795)

* [feature] readonly link (#796)

* Copy readonly link

* Update [id].tsx

* Add readonly label

* update psuedohash

* Update utils.ts

Co-authored-by: Baahar Ebrahimi <108254874+Baahaarmast@users.noreply.github.com>
Co-authored-by: walking-octopus <46994949+walking-octopus@users.noreply.github.com>
Co-authored-by: Judicael <46365844+judicaelandria@users.noreply.github.com>
Co-authored-by: Ali Alhaidary <75235623+ali-alhaidary@users.noreply.github.com>
Co-authored-by: gadi246 <gadi246@gmail.com>
2022-07-08 14:09:08 +01:00
Steve Ruiz
5ac091339a 1.19.0 2022-07-07 12:06:30 +01:00
Steve Ruiz
88fbdacaea
1.19.0 (#789)
* Edit Farsi translations (#788)

* Add a Ukrainian translation (#786)

* Add a Ukrainian translation

* Clarify some strings in the Ukrainian translation

* feat: change dock position (#774)

* feat: change dock position

* fix grid row and column

* add top position

* fix responsive for the top position

* change content side

* fix overflowing menu

* [improvement] theme on body (#790)

* Update Tldraw.tsx

* Add theme on body, adjust dark page options dialog

* fix test

* Preparing for global integration (#775)

* Update translations.ts

* Create en.json

* Make main translation default

* Remove unused locale property of translation

Co-authored-by: Steve Ruiz <steveruizok@gmail.com>

* Fix language menu

* Update ar.json (#793)

* feature/add Hebrew translations (#792)

* hebrew translations

* pr fixes

Co-authored-by: Steve Ruiz <steveruizok@gmail.com>

* fix toolspanel item position (#791)

* fix toolspanel item position

* add translation

Co-authored-by: Steve Ruiz <steveruizok@gmail.com>

* Add remote caching

* Adds link to translation guide (#794)

Co-authored-by: Baahar Ebrahimi <108254874+Baahaarmast@users.noreply.github.com>
Co-authored-by: walking-octopus <46994949+walking-octopus@users.noreply.github.com>
Co-authored-by: Judicael <46365844+judicaelandria@users.noreply.github.com>
Co-authored-by: Ali Alhaidary <75235623+ali-alhaidary@users.noreply.github.com>
Co-authored-by: gadi246 <gadi246@gmail.com>
2022-07-07 11:59:47 +01:00
Enrico
4d900fb7fd
Implemented better page numbering (#779)
* Implemented better page numbering

* Added spanish and french translation

* Add tests, fix regex

* Improve page naming logic

Co-authored-by: Steve Ruiz <steveruizok@gmail.com>
2022-07-04 15:17:47 +01:00
walking-octopus
1de57cffc0
Revise the Russian translation (#784)
I'm sorry for not catching some unnatural-sounding strings in it earlier, but I guess it's better late than never.
2022-07-04 15:15:43 +01:00
walking-octopus
44e49197f2
Add a Russian translation (#777)
* Add Russian translation

* Update translations.ts

Co-authored-by: Steve Ruiz <steveruizok@gmail.com>
2022-07-04 13:06:13 +01:00
Baahar Ebrahimi
908e829c0b
Add Farsi translations (#778)
* Add Farsi translations

* fix translations.ts

* Update translations.ts

Co-authored-by: Saeed Alipoor <alipoor.sa@gmail.com>
Co-authored-by: Steve Ruiz <steveruizok@gmail.com>
2022-07-04 12:38:01 +01:00
Steve Ruiz
10b653c13e 1.18.3 2022-07-03 18:58:50 +01:00
Steve Ruiz
1c753b73ac prevent escape from undoing text change 2022-07-03 18:44:16 +01:00
Jan Bessler
671684a749
Translation german (#772)
* Translated to German

Translated the page to German.
There may be some inaccurate translations, because some phrases depend on context i.e. "to fit" or "binding handles", but it is comprehensible in German.

* Update de.json

* Update de.json

Updated some translations with respect to their context

Co-authored-by: Steve Ruiz <steveruizok@gmail.com>
2022-06-30 12:11:49 +01:00
Steve Ruiz
58195bd2ad Update PageMenu.tsx 2022-06-30 09:03:07 +01:00
Steve Ruiz
9ccec77634 1.18.2 2022-06-30 08:59:09 +01:00
Steve Ruiz
0a0536b438 Update PageMenu.tsx 2022-06-29 19:07:19 +01:00
Steve Ruiz
d27e7dc249 Update PageMenu.tsx 2022-06-29 19:06:56 +01:00
Steve Ruiz
80ed0bf27b fix bugs on page move
Update TldrawApp.ts
2022-06-29 19:05:47 +01:00
Jan Bessler
8b97e474d1
Translation german (#771)
* Translated to German

Translated the page to German.
There may be some inaccurate translations, because some phrases depend on context i.e. "to fit" or "binding handles", but it is comprehensible in German.

* Update de.json
2022-06-29 18:26:32 +01:00
Enrico
489b5a1001
Added page rearranging by dragging (desktop only) (#768)
* Added page rearranging by dragging (desktop only)

* Increment page names correctly, create drop indicator

Co-authored-by: Steve Ruiz <steveruizok@gmail.com>
2022-06-29 10:25:00 +01:00
Steve Ruiz
b9a4a6c36e
Update TldrawApp.ts (#766) 2022-06-28 17:55:50 +01:00
Anders Bech Mellson
639b6ced50
Added Danish translation (#765) 2022-06-28 17:41:43 +01:00
Victor Novais
2e70be511a
Added translations to Portuguese (pt-br) (#759)
* Added translations to Portuguese (pt-br)

* Update translations.ts

Co-authored-by: Steve Ruiz <steveruizok@gmail.com>
2022-06-28 08:17:01 +01:00
Juan Carlos Acosta Perabá
4bc0d8bb95
fix: correct translation term (#763)
* feat: spanish language

* Update translations.ts

* fix: correct translation term

Co-authored-by: Steve Ruiz <steveruizok@gmail.com>
2022-06-27 18:58:41 +01:00
Mark Ladyshau
141dd2672e
fix: add preventDefault (#764) 2022-06-27 18:55:47 +01:00
pramitmarattha
780da17540
Add Nepali translation (#760)
* Add nepali language json

* Add nepali translation
2022-06-27 16:24:04 +01:00
Steve Ruiz
0d3bfd4eeb
Update DrawSession.ts (#762) 2022-06-27 16:04:38 +01:00
Steve Ruiz
ff471e0d6d
Improve UX for renaming text fields (#761) 2022-06-27 10:21:39 +01:00
Steve Ruiz
dd873014f2 1.18.1 2022-06-26 21:20:29 +01:00
Daniel Alberski
5046147a41
Polish translations (#758)
* polish translations

* translations guide typo fix
2022-06-26 19:47:58 +01:00
Oğuzhan Durgut
5c8fd8ac14
Turkish Language (#754)
* Turkish Language Added

* Turkish changed to Türkçe

* Update translations.ts

Co-authored-by: Steve Ruiz <steveruizok@gmail.com>
2022-06-26 16:47:23 +01:00
Juan Carlos Acosta Perabá
5598143b59
feat: spanish language (#755)
* feat: spanish language

* Update translations.ts

Co-authored-by: Steve Ruiz <steveruizok@gmail.com>
2022-06-26 16:44:25 +01:00
Sigve Hansen
1a3cfa0c81
Add norwegian translation (#757)
* feat: add norwegian translation

* arrange text in alphabetical order

* sort by code

* rename en.json to main.json

Co-authored-by: Steve Ruiz <steveruizok@gmail.com>
2022-06-26 16:42:56 +01:00
Sugit
5e2e23e6ce
Japanese translation (#756)
* Japanese translation

* fix: replace empty string to space.

* fix: improve Japanese
2022-06-26 16:17:39 +01:00
Steve Ruiz
8869771400 rename translations 2022-06-26 16:14:11 +01:00
Steve Ruiz
026177a1e1 refactor translations 2022-06-26 08:27:26 +01:00
Steve Ruiz
93e774691d Add locked indicator 2022-06-26 08:11:00 +01:00
Steve Ruiz
3d936fd0a5 Fix bugs
- local server bug
- improve types for translations
- fix missing italian translation
- fix double ungroup label
2022-06-26 08:06:56 +01:00
cog25
13be05721e
chore: fix typo (#753) 2022-06-26 07:58:56 +01:00
cog25
1b7cea41a0
feat: add korean translation (#752)
* feat: add korean translation

* chore: fix typo
2022-06-26 07:34:18 +01:00
Steve Ruiz
3cba9712fd 1.18.0 2022-06-25 20:31:27 +01:00
Steve Ruiz
8d849719cf
add translation guide (#746) 2022-06-25 20:03:37 +01:00
Vincent Driessen
0acfd563fe
Upgrade Liveblocks to 0.17 (#738)
* Upgrade Liveblocks packages to 0.17

* Convert app to recommended Liveblocks 0.17 setup

* Convert multiplayer example to recommended Liveblocks 0.17 setup

* Convert multiplayer-with-images example to recommended Liveblocks 0.17 setup

* Fix React rendering issue for multiplayer app

This bug could manifest after _navigating_ internally to the Multiplayer
example app. Liveblocks Storage would seem to remain empty, but Presence
would still seem to work. In other words, you'd see cursors flying, but
no document contents.

This did not happen when doing a full page load.

This bug only occurs in React strict mode.

* update onPatch and onCommand

* "Add event callbacks for `onSessionStart` and `onSessionEnd`"

* Adds edit state

* Pass callbacks to app

* Remove console logs

* interpolate cursor only when not in session

* Update multiplayer icon

* Fix a few things

Co-authored-by: Steve Ruiz <steveruizok@gmail.com>
2022-06-25 15:38:43 +01:00
Steve Ruiz
6183c41c18
arrows ignore locked shapes (#745) 2022-06-25 12:48:41 +01:00
Steve Ruiz
70e3c8bd45
[fix] bug with images that have the same name (#743)
* add unique id to file names to avoid name clashes

* Add event callbacks for `onSessionStart` and `onSessionEnd`
2022-06-25 12:28:18 +01:00
Ali Alhaidary
c1f94a0928
Adding Arabic Language (#732)
* Create ar.json

* Update Tldraw.tsx

* Update types.ts

* Update LanguageMenu.tsx

* Update Tldraw.tsx

* Update LanguageMenu.tsx
2022-06-25 10:47:32 +01:00
Steve Ruiz
a104d5a094 1.17.2 2022-06-24 16:06:36 +01:00
Steve Ruiz
dc1f21bdc0 Update MultiplayerMenu.tsx 2022-06-24 15:47:53 +01:00
Steve Ruiz
f48ce9962d Update MultiplayerMenu.tsx 2022-06-24 15:45:50 +01:00
Steve Ruiz
7555c22632 Update Vec 2022-06-21 08:56:49 +01:00
Steve Ruiz
a17bd18ae2 1.7.2, add Vec.distanceTo / Vec.nearestPointOnBounds 2022-06-21 08:49:45 +01:00
Jack Bauer
7c0e098b12
fix clipboard.read error on Firefox (#729)
See more @ https://stackoverflow.com/questions/67440036/navigator-clipboard-readtext-is-not-working-in-js/67442777#67442777
2022-06-20 20:37:01 +01:00
Steve Ruiz
0a52b5c317
Add overwrite option to insertContent (#730) 2022-06-20 20:36:23 +01:00
Steve Ruiz
65ff5075f0 1.17.0 2022-06-19 14:52:06 +01:00
Steve Ruiz
6d91916804
[improvement] Add getContent and insertContent methods (#726)
* Add insertContent method, update copyJson

* Add more tests

* Update TldrawApp.spec.ts

* Adds option object for select, point, and uses in paste
2022-06-19 14:47:43 +01:00
Jack Bauer
0cfa44f4d2
fix mandatory unique key in LanguageMenu list (#722) 2022-06-16 14:36:31 +01:00
Steve Ruiz
702016a3ef Replace lask with lfg 2022-06-16 14:23:27 +01:00
Steve Ruiz
6608b07ab0 Update README, lask 2022-06-16 14:15:35 +01:00
Steve Ruiz
ef9d457a14
[fix] typescript types (#721)
* fix types

* Update .eslintrc.json
2022-06-16 09:09:48 +01:00
Judicael
e8459adc6b
feat: translate page name when creating new page (#720)
* feat: translate page name when creating new page

* Update createPage.ts

Co-authored-by: Steve Ruiz <steveruizok@gmail.com>
2022-06-15 18:54:03 +01:00
Akshay Birajdar
27e0b8d96e
fix: broken screenshot image (#717) 2022-06-15 13:39:15 +01:00
yyyanghj
d298c550cd
[Translation] add Simplified Chinese translation (#715)
* feat: add Simplified Chinese translations

* feat: improve translation

* feat: improve translation

* feat: improve translation
2022-06-15 13:38:00 +01:00
Steve Ruiz
f8e2ba5b3b
Update MultiplayerMenu.tsx (#719) 2022-06-15 13:34:53 +01:00
Steve Ruiz
8419d7d227 1.16.0 2022-06-09 18:06:17 +01:00
Steve Ruiz
d52d91b367
Enforce readonly mode (#714)
* Enforce readonly mode

* Fix test for React 18

* Move to dev
2022-06-09 16:00:47 +01:00
Judicael
d919bd273e
feat: add translation (#704)
* feat: add translation

* modal, left menu translation

* primary tools translation

* render with intl provider for testing

restore file

* french translation done

* context menu translation and test

* added italian

* Add menu to select language

* translation for the word language

* bump dev deps

Bump react on www

* Fix types

* update dependencies

* pre-release

* Delete lask.config.json

Co-authored-by: Enrico <franciscono.enry@gmail.com>
Co-authored-by: Steve Ruiz <steveruizok@gmail.com>
2022-06-09 15:33:35 +01:00
Steve Ruiz
8c2e22b334 1.15.1 2022-06-02 17:18:48 +01:00
Steve Ruiz
c959006144
Make eraser line scale to zoom (#710) 2022-06-02 17:14:27 +01:00
Peng Xiao
87692eb7fe
fix: vec min function (#702) 2022-06-01 18:49:16 +01:00
Peng Xiao
b47fb729ee
fix: Pointer position is incorrect if Tldraw is drawing in a scrolling g container (#706)
* fix: Pointer position is incorrect if Tldraw is drawing in a scrolling container

fix https://github.com/tldraw/tldraw/issues/661

* Add example for scrolling

Co-authored-by: Steve Ruiz <steveruizok@gmail.com>
2022-06-01 18:48:48 +01:00
Steve Ruiz
b3ad319518 1.15.0 2022-06-01 15:34:20 +01:00
Steve Ruiz
c126be5c50
[feature] add erase line (#708)
* Add erase line

* Fix erasing small dots

* bump perfect-freehand
2022-06-01 15:21:36 +01:00