51 Commits

Author SHA1 Message Date
Andrés Moya
3cd9bfa9de
✨ Add sync with design tokens in external libraries (#10293)
* ✨ Auto link tokens when adding external libraries (provisional)

* 🔧 Refactor tokens-lib initialization

* 🔧 Add separated TokenStatus to store status apart of TokensLib

* 🔧 Make all status operations use the new data structure

* 🔧 Normalize status helper functions and access token sets by id

* 🔧 Rename :tokens-file to :tokens-source

* 🎉 Allow the user to choose the tokens-source of a file

* 🎉 Make tokens library readonly when it's in an external file

* 🎉 Show tokens in library summaries

* 🎉 Show source info in sidebar

* 🔧 Fix integration tests

* 🐛 Propagate changes of token values in external library

* 🎉 Layout updates

* 🔧 Refactor tokens source calculations

* 🔧 Add harder checks for nil or empty values in everything

* 🐛 Fix some integration tests

* 🔧 Add integration tests for tokens in external libs

* 🔧 Validate and repair missing tokens status

* 🎉 Make ui changes optional with config flag

* 🐛 Propagate tokens after synchronizing components in ext library

* 🐛 Propagate tokens after creating new instances

* 🐛 Propagate tokens after synchronizing tokens in ext library

* 🐛 Add a tokens source icon to libraries section (#11439)

* 🐛 Add a tokens source icon to libraries section

* 🐛 Fix ellipsis on library names

* ♻️ Remove code under flag on legacy component

* 🐛 Fix token theme name on inspect tab

* 🎉 Add changes notification (#11476)

* 🎉 Add changes notification

* ♻️ Change fn names

* 🐛 Fix tokens source label truncation and missing translations (#11533)

* 🐛 Fix tokens source label truncation and missing translations

The tokens source file name always showed, even for the current file,
and long names wrapped onto a second line instead of truncating
because the header used flex-wrap and overflow-wrap: break-word
instead of single-line ellipsis.

Show the source row unconditionally (it now displays "This file" when
the source is the current file, matching the connected-library case),
truncate the file name to one line with an ellipsis, and only attach a
tooltip with the full name when the text is actually truncated.

Replace the hardcoded UI strings with translated ones and add their
English and Spanish entries.

AI-assisted-by: claude-sonnet-5

* 🐛 Remove redundant effect dependency in tokens source

file-name-truncated? was listed as a dependency of the with-effect
that checks and observes label truncation, even though it isn't
read inside the effect body. Since the effect itself flips that
state via check-file-name-truncated, including it as a dependency
caused the ResizeObserver to be needlessly disconnected and
reconnected on every truncation change.

AI-assisted-by: claude-sonnet-5

* 🐛 Fix small visual error

* 🐛 Fix problem with plugins

* 🐛 Fix playwright tests

---------

Co-authored-by: Eva Marco <evamarcod@gmail.com>
Co-authored-by: Eva Marco <eva.marco@kaleidos.net>
Co-authored-by: alonso.torres <alonso.torres@kaleidos.net>
2026-09-21 15:37:45 +02:00
Alonso Torres
217284b1e1
✨ Improve path operations and edition (#10807)
* ✨ Improve path operations and edition

* 🐛 Fix floating-point equality issues in path editing

Replace exact equality checks with tolerance-based comparisons
in path editing functions to handle floating-point rounding
differences after transforms, rotations, or curve fitting.

Changes:
- distribute-content: Round coordinates to 0.1 precision before
  grouping to ensure coincident nodes move together
- separate-node: Use gpt/close? instead of exact equality to
  find nodes with floating-point imprecision
- collision-step: Use mth/close? for tolerance-based comparison
  to detect paste collisions correctly
- resolve-edit-fills: Add cycle detection to prevent infinite
  loops with corrupted parent chains

Made collision-step, available-offset-step, and resolve-edit-fills
public for better testability.

Added comprehensive tests for all fixes covering both exact and
floating-point coordinate scenarios.

AI-assisted-by: qwen3.7-plus

* 🐛 Fix path editor code review findings

Fix issues identified during code review of path editor enhancements:

- Fix unused binding lint warning in distribute-content that blocked CI
- Fix collision-step floor comparison to use round instead of floor,
  correctly detecting collisions when coordinates drift slightly below
  integer boundaries
- Fix resolve-edit-fills to recurse through empty parent groups when
  searching for inherited fills in nested group hierarchies
- Fix expand-coincident-node-indices to use fuzzy comparison (gpt/close?)
  instead of exact equality, handling floating-point divergence after
  transforms or rotations
- Remove unreachable dead code in path-point* on-pointer-down handler
- Add tests for collision-step boundary cases, nested group fill
  inheritance, and coincident node alignment/flipping

AI-assisted-by: mimo-v2.5-pro

---------

Co-authored-by: Andrey Antukh <niwi@niwi.nz>
2026-08-27 10:51:10 +02:00
Luis de Dios
e5d3ea14d1
🐛 Fix size badge shows "x" instead of dimensions when creating a path (#10550) 2026-07-03 14:58:43 +02:00
Luis de Dios
d795a1f110
✨ Manage rotation and color of selection size badge (#10393)
* ✨ Rotate and move size badge when shape is rotated

* 🐛 Fix wrong text color in selection size badge

* ✨ Add tests

* ♻️ Extract common constants
2026-07-02 14:59:33 +02:00
Aitor Moreno
d0f6d5b3a1
♻️ Refactor render pipeline (#9891)
* ♻️ Refactor viewbox

* 🎉 Add draw_atlas alternative to draw tiles

* 🐛 Fix minor glitches

* ♻️ Change how process_animation_frame works

* ♻️ Refactor document atlas

* ♻️ Refactor max texture size

* ♻️ Refactor entrypoints and dead_code
2026-06-02 09:38:52 +02:00
Andrey Antukh
4a8fb5af53 Merge remote-tracking branch 'origin/staging' into develop 2026-06-01 13:15:57 +02:00
Luis de Dios
0b56fd2f77
🐛 Fix locked flex and grid elements cannot be selected in viewer role (#9865)
* 🐛 Fix locked flex and grid elements cannot be selected in viewer role

* ✨ Add playwright test
2026-06-01 08:30:27 +02:00
Belén Albeza
0dd40776f8
🐛 Fix default path stroke thickness 2026-05-27 14:47:11 +02:00
BitToby
6aeccb1208
🎉 Add selection size badge below bounding box (#9210)
* 🎉 Add selection size badge below bounding box

Signed-off-by: bittoby <218712309+bittoby@users.noreply.github.com>

* 💄 Address review comments

Signed-off-by: bittoby <218712309+bittoby@users.noreply.github.com>

* 💄 Move selection size badge text styles to SCSS class

---------

Signed-off-by: bittoby <218712309+bittoby@users.noreply.github.com>
Signed-off-by: BitToby <218712309+bittoby@users.noreply.github.com>
Co-authored-by: Andrey Antukh <niwi@niwi.nz>
2026-05-08 14:20:24 +02:00
alonso.torres
a5d908629b 🐛 Fix problems with z-index 2026-03-25 15:56:56 +01:00
Andrey Antukh
2b130c7e52 Merge branch 'staging' into staging-render 2026-02-17 21:54:23 +01:00
Andrey Antukh
f00b222262
Revert "♻️ Replace some components with DS ones" (#8384)
* Revert "♻️ Replace some components with DS ones"

This reverts commit 6879f54e5da45b38173c3e2660d88b4ea6939bb0.

* 📎 Restore missing styles

* 📎 Fix tests

---------

Co-authored-by: Luis de Dios <luis.dedios@kaleidos.net>
2026-02-17 16:23:04 +01:00
Belén Albeza
cd4b9ddd47 ✨ Add regression test for bug 13415 2026-02-17 14:32:09 +01:00
Belén Albeza
834b513562
🔧 Fix typo in workspace spec (#8272) 2026-02-04 17:05:49 +01:00
Alejandro Alonso
485005477e 🐛 Fix WasmWorkspacePage import 2026-02-04 14:02:38 +01:00
Alejandro Alonso
86ca260ea2 Merge remote-tracking branch 'origin/staging-render' into develop 2026-02-04 13:50:13 +01:00
Belén Albeza
e3b97638b4 🔧 Fix broken / flaky tests 2026-02-02 16:16:58 +01:00
Belén Albeza
daedc660b9 🔧 Migrate workspace tests to user the wasm viewport 2026-02-02 16:16:58 +01:00
Belén Albeza
560a0d09d5 🐛 Fix hiding avatar when we have 3 active users 2026-01-21 16:01:20 +01:00
Luis de Dios
6879f54e5d ♻️ Replace some components with DS ones 2026-01-08 14:52:25 +01:00
Andrey Antukh
3136096123 🔧 Add general improvements to integration tests
This commit marks as skip (temporal) several flaky/randomly-failing
tests.

It also moves the integration test execution from circleci to github
actions.
2025-11-19 18:23:44 +01:00
Luis de Dios
544bedf7c2
🎉 Reorder properties for a component (#7429)
* 🎉 Reorder properties when a component with variants is selected

* 🎉 Reorder properties when a single variant is selected

* ♻️ Refactor SCSS and component structure

* 📚 Update changelog

* 📎 PR changes (styling)

* 📎 PR changes (functionality)
2025-10-08 11:27:01 +02:00
Belén Albeza
f363d6a801 ✨ Add integration test for Flatten menu option 2025-09-04 07:13:16 +02:00
Eva Marco
a2abaea637
♻️ Update button-icon with tooltip component (#6539)
* 🐛 Add tooltip to base icon button

* 🎉 Update id prop

* 🐛 Fix test
2025-06-05 10:18:56 +02:00
Marina López
b8b3cc641a 🎉 Consolidate when workspace empty, board tool selected 2025-03-06 13:31:12 +01:00
Eva Marco
5e3b47e455
🎉 Add integration test for bug (#5875) 2025-02-17 16:29:28 +01:00
Alonso Torres
8fe1271690
🐛 Fix problem opening url when page-id didn't exist (#5833)
Co-authored-by: Andrey Antukh <niwi@niwi.nz>
2025-02-12 14:36:05 +01:00
Aitor Moreno
dbf7b94651
🐛 Fix zoom to fit all didn't fit all (#5673) 2025-02-04 11:00:46 +01:00
Alejandro
ea6c679b21
🐛 Fix click on the project name goes to blank dashboard from workspace (#5668) 2025-01-27 12:16:52 +01:00
Andrey Antukh
71560c0a53
✨ Backport and merge migrations from staging (#5681) 2025-01-24 19:11:03 +01:00
alonso.torres
714a274789 ✨ Copy/paste properties an CSS 2025-01-14 16:09:42 +01:00
Pablo Alba
3a7d187110 ✨ Add integration tests to viewer role 2024-11-19 16:38:21 +01:00
alonso.torres
cd586c81ee 🐛 Fix problem with swap components on grid 2024-10-22 16:14:14 +02:00
Eva Marco
9a587c91a8 🐛 Fix arrow key movement on tabs 2024-09-17 16:36:44 +02:00
Belén Albeza
ecbedf847f 💄 Reformat affected JS files 2024-07-01 10:29:57 +02:00
Belén Albeza
16d0b925fa 🐛 Fix workspace 'make group' test on Mac 2024-06-26 17:02:24 +02:00
Alejandro Alonso
0d23f4ab5d 🐛 Workspace-palette items stay hidden when opening with keyboard-shortcut 2024-06-14 00:06:08 +02:00
Alejandro Alonso
c15c3b14ee ✨ Add e2e tests for fix color palette default library 2024-06-13 10:47:22 +02:00
Eva Marco
232cfea709 🐛 Fix move scrollbar create a selection rectangle 2024-06-13 06:28:26 +02:00
Alejandro Alonso
740a872231 🐛 Toolbar keeps toggling on and off on spacebar press 2024-06-12 16:41:06 +02:00
Belén Albeza
7719cd8d0b ♻️ Move libraries test to sidebar spec file 2024-06-12 09:23:30 +02:00
Belén Albeza
04f341ce1d 🐛 Fix layers tree not expanding towards the bottom edge 2024-06-12 09:23:30 +02:00
Alejandro Alonso
c5bf2a775e 🐛 Fix group automatically selected after creation 2024-06-11 10:38:03 +02:00
Alejandro Alonso
edfc47d3de ✨ Add e2e tests for fix color palette default library 2024-06-10 09:29:58 +02:00
Belén Albeza
d43458ee89 🐛 Fix mocking websockets when running multiple tests 2024-05-14 16:36:54 +02:00
Belén Albeza
575873eba7 🐛 Fix workspace rect drawing test 2024-05-13 17:41:00 +02:00
AzazelN28
d8c60aa770 ⏪ Skip failing test 2024-05-13 12:19:12 +02:00
Belén Albeza
00430d63eb ✨ Add test for drawing a shape in the workspace 2024-05-09 13:45:06 +02:00
Belén Albeza
e28d56e670 ✨ Add WorkspacePage POM for playwright testing 2024-05-09 13:45:02 +02:00
Belén Albeza
9fd9e0178e ♻️ Refactor LoginPage POM 2024-05-08 12:17:53 +02:00