2304 Commits

Author SHA1 Message Date
Andrey Antukh
e9603f00b0 Merge remote-tracking branch 'origin/staging' into develop 2026-07-28 12:50:41 +02:00
Andrey Antukh
6c2b61e1ad
🐛 Fix several issues in RPC command handlers (#10670)
* 🐛 Fix several issues in RPC command handlers

- Reject circular library references in link-file-to-library
- Add explicit team permission check in search-files
- Constrain search-term max length to 250 chars
- Include :deleted-at in file ETag for COND caching
- Move storage I/O outside DB transaction in create-file-thumbnail

AI-assisted-by: deepseek-v4-pro

* 📎 Check perms before circular link checks

* 🐛 Handle circular library reference error

Catch :circular-library-reference error from backend when linking
files to libraries. Show user-friendly toast notification instead of
propagating unhandled error. Add English and Spanish translations.

AI-assisted-by: qwen3.7-plus
2026-07-28 10:59:16 +02:00
Marina López
3610b81e4b 🌐 Localize Nitrate subscription flows 2026-07-24 11:02:58 +02:00
Eva Marco
5de06e8f77
🎉 Add customizable shortcuts (#10237)
Co-authored-by: alonso.torres <alonso.torres@kaleidos.net>
2026-07-24 10:36:32 +02:00
Elena Torró
ef3511e519
Add basic individual strokes implementation (#10648) 2026-07-22 16:13:38 +02:00
Marina López
396d799c71 🐛 Redesign my penpot review 2026-07-22 14:45:14 +02:00
AK
b8e3089ae7
Make plugin API validation errors precise and crash-safe (#10667)
Schema validation reported a generic "Invalid data" message. Report the expected schema and the received value, with a bounded cycle-safe renderer so the error path cannot itself crash.

Fixes #10072

Signed-off-by: Akshit Nassa <akshitnassa412@gmail.com>
Co-authored-by: Akshit Nassa <akshitnassa412@gmail.com>
2026-07-22 09:29:19 +02:00
Juan de la Cruz
5dff551f31
🎉 Add page multi-selection in the workspace sitemap (#10581)
* 🎉 Add page multi-selection in the workspace sitemap

* ♻️ Simplify page selection state updates with single assoc

* 🐛 Fix SCSS issue

* ♻️ Update some components to new syntax

* ♻️ Adapt SCSS to the new guidelines

* ♻️ SCSS cleanup

---------

Co-authored-by: Luis de Dios <luis.dedios@kaleidos.net>
2026-07-21 14:26:03 +02:00
Juan de la Cruz
fa996ab240
Add list view toggle for dashboard files (#10692)
*  Add list view toggle for dashboard files

*  Add drop files visual feedback

* ♻️ Use radio buttons component from DS

* ♻️ Use hook to keep layout status

* ♻️ Refactor code and SCSS

---------

Co-authored-by: Luis de Dios <luis.dedios@kaleidos.net>
2026-07-21 13:16:10 +02:00
María Valderrama
792d88dc4f
🐛 Fix invalid org invitation show toast (#10693)
* 🐛 Fix invalid org invitation show toast

* 📎 Code review
2026-07-15 12:30:20 +02:00
Marina López
c119622ad9 🐛 Changed color and text from nitrate banners 2026-07-14 12:59:16 +02:00
Pablo Alba
95cfbf5f7c
Improve workspace debug sidebar workflow (#10678) 2026-07-14 12:42:19 +02:00
Marina López
3e2826de9e Redesign my penpot to my files 2026-07-07 12:22:58 +02:00
Alejandro Alonso
b82ab0c830 Merge remote-tracking branch 'origin/staging' into develop 2026-07-02 13:52:25 +02:00
Andrey Antukh
77a8677b60 Merge remote-tracking branch 'origin/main' into staging 2026-07-01 14:40:36 +02:00
Andrey Antukh
1006efc571 🐛 Fix translation strings 2026-07-01 14:38:08 +02:00
Eva Marco
04254c9fd1
🐛 Fix token tooltips (#10515) 2026-07-01 14:30:18 +02:00
Eva Marco
920c6d4e76
🐛 Fix token tooltips on numeric-input, color and typography (#10480) 2026-06-30 16:26:49 +02:00
Jack Storment
aedb7f9195
Add dedicated Line and Arrow drawing tools (#9146)
*  Add dedicated Line and Arrow drawing tools

Introduce a Line/Arrow toolbar option and a click-drag drawing
interaction that matches Figma's workflow: select the tool, press and
drag to define the line in one gesture, with Shift snapping to 15°
increments. Arrowhead style can be toggled on either endpoint via the
existing stroke-cap controls.

Signed-off-by: jack-stormentswe <crazycoder131@gmail.com>

* 💄 Fix formatting error

Signed-off-by: jack-stormentswe <crazycoder131@gmail.com>

* 🐛 Translate line and arrow tooltips in top toolbar

Signed-off-by: Luis de Dios <luis.dedios@kaleidos.net>

* 🐛 Add missing namespace

Signed-off-by: Luis de Dios <luis.dedios@kaleidos.net>

* 📚 Update copyright notice

Signed-off-by: Luis de Dios <luis.dedios@kaleidos.net>

* Add translations (EN) for toolbar elements

Signed-off-by: Luis de Dios <luis.dedios@kaleidos.net>

* Add translations (ES) for toolbar elements

Signed-off-by: Luis de Dios <luis.dedios@kaleidos.net>

* ♻️ Improve stroke-cap-end update for arrow handling

Signed-off-by: Luis de Dios <luis.dedios@kaleidos.net>

* 🐛 Fix shortcuts select tool but do not replace it in the toolbar

Refactor tool selection logic in top_toolbar.cljs

Signed-off-by: Luis de Dios <luis.dedios@kaleidos.net>

* ♻️ Remove unnecessary blank line

Signed-off-by: Luis de Dios <luis.dedios@kaleidos.net>

---------

Signed-off-by: jack-stormentswe <crazycoder131@gmail.com>
Signed-off-by: Jack Storment <88656337+jack-stormentswe@users.noreply.github.com>
Signed-off-by: Luis de Dios <luis.dedios@kaleidos.net>
Co-authored-by: Luis de Dios <luis.dedios@kaleidos.net>
2026-06-24 21:32:13 +02:00
Ricardo Sawir
121c76235f
🐛 Fix zh-CN boolean intersection label (#10381)
Update the Simplified Chinese translation for the boolean intersection menu item so it no longer duplicates the difference label.
2026-06-23 11:12:05 +02:00
Luis de Dios
a74aa10dc1
🐛 Fix correction of some margins, alignment and ensuring consistency (#10351) 2026-06-22 09:49:33 +02:00
Andrey Antukh
e3325dd3eb 🌐 Validate and rehash translation files 2026-06-22 09:33:10 +02:00
Alexis Morin
12fa25edf1
🌐 Add translations for: French (Canada)
Currently translated at 98.1% (2326 of 2369 strings)

Translation: Penpot/frontend
Translate-URL: https://hosted.weblate.org/projects/penpot/frontend/fr_CA/
2026-06-22 09:30:44 +02:00
VKing9
aeb63765c6
🌐 Add translations for: Hindi
Currently translated at 83.1% (1969 of 2369 strings)

Translation: Penpot/frontend
Translate-URL: https://hosted.weblate.org/projects/penpot/frontend/hi/
2026-06-22 09:30:43 +02:00
Henrik Allberg
823bef44e0
🌐 Add translations for: Swedish
Currently translated at 98.3% (2330 of 2369 strings)

Translation: Penpot/frontend
Translate-URL: https://hosted.weblate.org/projects/penpot/frontend/sv/
2026-06-22 09:30:42 +02:00
Црнобог
9bd0cd47a7
🌐 Add translations for: Serbian
Currently translated at 56.6% (1342 of 2369 strings)

Translation: Penpot/frontend
Translate-URL: https://hosted.weblate.org/projects/penpot/frontend/sr/
2026-06-22 09:30:41 +02:00
Alejandro Alonso
c9144a18fb
🌐 Add translations for: Yoruba
Currently translated at 48.4% (1148 of 2369 strings)

Translation: Penpot/frontend
Translate-URL: https://hosted.weblate.org/projects/penpot/frontend/yo/
2026-06-22 09:30:39 +02:00
Alejandro Alonso
a5cb53fcdf
🌐 Add translations for: Igbo
Currently translated at 20.6% (490 of 2369 strings)

Translation: Penpot/frontend
Translate-URL: https://hosted.weblate.org/projects/penpot/frontend/ig/
2026-06-22 09:30:38 +02:00
Revenant
afd2b75a25
🌐 Add translations for: Malay
Currently translated at 27.2% (646 of 2369 strings)

Translation: Penpot/frontend
Translate-URL: https://hosted.weblate.org/projects/penpot/frontend/ms/
2026-06-22 09:30:38 +02:00
Alejandro Alonso
50f6ce1c0a
🌐 Add translations for: Hausa
Currently translated at 51.2% (1214 of 2369 strings)

Translation: Penpot/frontend
Translate-URL: https://hosted.weblate.org/projects/penpot/frontend/ha/
2026-06-22 09:30:37 +02:00
Sebastiaan Pasma
af415dbc4d
🌐 Add translations for: Dutch
Currently translated at 85.1% (2017 of 2369 strings)

Translation: Penpot/frontend
Translate-URL: https://hosted.weblate.org/projects/penpot/frontend/nl/
2026-06-22 09:30:36 +02:00
Stephan Paternotte
5953e1d48b
🌐 Add translations for: Dutch
Currently translated at 85.1% (2017 of 2369 strings)

Translation: Penpot/frontend
Translate-URL: https://hosted.weblate.org/projects/penpot/frontend/nl/
2026-06-22 09:30:35 +02:00
Edgars Andersons
98084f55b3
🌐 Add translations for: Latvian
Currently translated at 77.9% (1846 of 2369 strings)

Translation: Penpot/frontend
Translate-URL: https://hosted.weblate.org/projects/penpot/frontend/lv/
2026-06-22 09:30:34 +02:00
deveronica
117600fc7a
🌐 Add translations for: Korean
Currently translated at 83.9% (1989 of 2369 strings)

Translation: Penpot/frontend
Translate-URL: https://hosted.weblate.org/projects/penpot/frontend/ko/
2026-06-22 09:30:33 +02:00
Denys Kisil
eb006d2bf2
🌐 Add translations for: Ukrainian (ukr_UA)
Currently translated at 84.4% (2001 of 2369 strings)

Translation: Penpot/frontend
Translate-URL: https://hosted.weblate.org/projects/penpot/frontend/ukr_UA/
2026-06-22 09:30:31 +02:00
Zvonimir Juranko
44f26b93a8
🌐 Add translations for: Croatian
Currently translated at 66.2% (1570 of 2369 strings)

Translation: Penpot/frontend
Translate-URL: https://hosted.weblate.org/projects/penpot/frontend/hr/
2026-06-22 09:30:30 +02:00
al0cam
aad8ec280e
🌐 Add translations for: Croatian
Currently translated at 66.2% (1570 of 2369 strings)

Translation: Penpot/frontend
Translate-URL: https://hosted.weblate.org/projects/penpot/frontend/hr/
2026-06-22 09:30:29 +02:00
Dário
6609018842
🌐 Add translations for: Portuguese (Portugal)
Currently translated at 65.0% (1542 of 2369 strings)

Translation: Penpot/frontend
Translate-URL: https://hosted.weblate.org/projects/penpot/frontend/pt_PT/
2026-06-22 09:30:28 +02:00
TheScientistPT
b644563e2a
🌐 Add translations for: Portuguese (Portugal)
Currently translated at 65.0% (1542 of 2369 strings)

Translation: Penpot/frontend
Translate-URL: https://hosted.weblate.org/projects/penpot/frontend/pt_PT/
2026-06-22 09:30:27 +02:00
Amerey.eu
dbc13f4cc4
🌐 Add translations for: Czech
Currently translated at 66.0% (1565 of 2369 strings)

Translation: Penpot/frontend
Translate-URL: https://hosted.weblate.org/projects/penpot/frontend/cs/
2026-06-22 09:30:26 +02:00
Mikel Larreategi
7c87e65577
🌐 Add translations for: Basque
Currently translated at 48.7% (1155 of 2369 strings)

Translation: Penpot/frontend
Translate-URL: https://hosted.weblate.org/projects/penpot/frontend/eu/
2026-06-22 09:30:24 +02:00
Radek Sawicki
3e7d52a709
🌐 Add translations for: Polish
Currently translated at 47.6% (1130 of 2369 strings)

Translation: Penpot/frontend
Translate-URL: https://hosted.weblate.org/projects/penpot/frontend/pl/
2026-06-22 09:30:23 +02:00
Jacopo Lodovico Trabia
26291aa007
🌐 Add translations for: Italian
Currently translated at 89.1% (2111 of 2369 strings)

Translation: Penpot/frontend
Translate-URL: https://hosted.weblate.org/projects/penpot/frontend/it/
2026-06-22 09:30:23 +02:00
Nicola Bortoletto
09a00edeb6
🌐 Add translations for: Italian
Currently translated at 89.1% (2111 of 2369 strings)

Translation: Penpot/frontend
Translate-URL: https://hosted.weblate.org/projects/penpot/frontend/it/
2026-06-22 09:30:22 +02:00
william chen
8cc38f2ba9
🌐 Add translations for: Chinese (Traditional Han script)
Currently translated at 66.2% (1569 of 2369 strings)

Translation: Penpot/frontend
Translate-URL: https://hosted.weblate.org/projects/penpot/frontend/zh_Hant/
2026-06-22 09:30:21 +02:00
Yaron Shahrabani
f2f98d43d3
🌐 Add translations for: Hebrew
Currently translated at 84.9% (2013 of 2369 strings)

Translation: Penpot/frontend
Translate-URL: https://hosted.weblate.org/projects/penpot/frontend/he/
2026-06-22 09:30:19 +02:00
Linerly
f2400ab5df
🌐 Add translations for: Indonesian
Currently translated at 70.4% (1668 of 2369 strings)

Translation: Penpot/frontend
Translate-URL: https://hosted.weblate.org/projects/penpot/frontend/id/
2026-06-22 09:30:18 +02:00
Youkho
c6c288033a
🌐 Add translations for: Arabic
Currently translated at 47.3% (1121 of 2369 strings)

Translation: Penpot/frontend
Translate-URL: https://hosted.weblate.org/projects/penpot/frontend/ar/
2026-06-22 09:30:17 +02:00
AlexTECPlayz
41ac7e3ec3
🌐 Add translations for: Romanian
Currently translated at 80.6% (1911 of 2369 strings)

Translation: Penpot/frontend
Translate-URL: https://hosted.weblate.org/projects/penpot/frontend/ro/
2026-06-22 09:30:12 +02:00
Stas Haas
4f1eca2500
🌐 Add translations for: German
Currently translated at 82.2% (1948 of 2369 strings)

Translation: Penpot/frontend
Translate-URL: https://hosted.weblate.org/projects/penpot/frontend/de/
2026-06-22 09:30:11 +02:00