From 8a13ce5f9116e8990eec5069b6c3f985c650001d Mon Sep 17 00:00:00 2001
From: elhombretecla <delacruzgarciajuan@gmail.com>
Date: Thu, 6 Feb 2025 14:17:32 +0100
Subject: [PATCH 01/12] :lipstick: Change email button styles (#5785)

---
 .../resources/app/email/comment-mention/en.html  |  2 +-
 .../resources/app/email/invite-to-team/en.html   |  8 ++++----
 backend/resources/app/email/join-team/en.html    |  8 ++++----
 .../app/email/password-recovery/en.html          |  8 ++++----
 backend/resources/app/email/register/en.html     |  8 ++++----
 .../request-file-access-yourpenpot-view/en.html  |  8 ++++----
 .../email/request-file-access-yourpenpot/en.html |  8 ++++----
 .../app/email/request-file-access/en.html        | 16 ++++++++--------
 .../app/email/request-team-access/en.html        |  8 ++++----
 9 files changed, 37 insertions(+), 37 deletions(-)

diff --git a/backend/resources/app/email/comment-mention/en.html b/backend/resources/app/email/comment-mention/en.html
index fa45cab25..d628c9699 100644
--- a/backend/resources/app/email/comment-mention/en.html
+++ b/backend/resources/app/email/comment-mention/en.html
@@ -203,7 +203,7 @@
                       <table border="0" cellpadding="0" cellspacing="0" role="presentation"
                         style="border-collapse:separate;line-height:100%;">
                         <tr>
-                          <td align="center" bgcolor="#6911d4#31EFB8" role="presentation"
+                          <td align="center" bgcolor="#6911d4" role="presentation"
                               style="border:none;border-radius:8px;cursor:auto;mso-padding-alt:10px 25px;background:#6911d4;"
                               valign="middle">
                             <a href="{{ comment-url }}"
diff --git a/backend/resources/app/email/invite-to-team/en.html b/backend/resources/app/email/invite-to-team/en.html
index 43bcbde67..5e61f1f67 100644
--- a/backend/resources/app/email/invite-to-team/en.html
+++ b/backend/resources/app/email/invite-to-team/en.html
@@ -195,12 +195,12 @@
                       <table border="0" cellpadding="0" cellspacing="0" role="presentation"
                         style="border-collapse:separate;line-height:100%;">
                         <tr>
-                          <td align="center" bgcolor="#31EFB8" role="presentation"
-                            style="border:none;border-radius:3px;cursor:auto;mso-padding-alt:10px 25px;background:#31EFB8;"
+                          <td align="center" bgcolor="#6911d4" role="presentation"
+                            style="border:none;border-radius:8px;cursor:auto;mso-padding-alt:10px 25px;background:#6911d4;"
                             valign="middle">
                             <a href="{{ public-uri }}/#/auth/verify-token?token={{token}}"
-                              style="display:inline-block;background:#31EFB8;color:#1F1F1F;font-family:Source Sans Pro, sans-serif;font-size:16px;font-weight:normal;line-height:120%;margin:0;text-decoration:none;text-transform:none;padding:10px 25px;mso-padding-alt:0px;border-radius:3px;"
-                              target="_blank"> Accept invite </a>
+                              style="display:inline-block;background:#6911d4;color:#FFFFFF;font-family:Source Sans Pro, sans-serif;font-size:16px;font-weight:normal;line-height:120%;margin:0;text-decoration:none;text-transform:none;padding:10px 25px;mso-padding-alt:0px;border-radius:8px;"
+                              target="_blank"> ACCEPT INVITE </a>
                           </td>
                         </tr>
                       </table>
diff --git a/backend/resources/app/email/join-team/en.html b/backend/resources/app/email/join-team/en.html
index 1a59e70ce..8f88a125b 100644
--- a/backend/resources/app/email/join-team/en.html
+++ b/backend/resources/app/email/join-team/en.html
@@ -196,12 +196,12 @@
                       <table border="0" cellpadding="0" cellspacing="0" role="presentation"
                         style="border-collapse:separate;line-height:100%;">
                         <tr>
-                          <td align="center" bgcolor="#31EFB8" role="presentation"
-                            style="border:none;border-radius:3px;cursor:auto;mso-padding-alt:10px 25px;background:#31EFB8;"
+                          <td align="center" bgcolor="#6911d4" role="presentation"
+                            style="border:none;border-radius:8px;cursor:auto;mso-padding-alt:10px 25px;background:#6911d4;"
                             valign="middle">
                             <a href="{{ public-uri }}/#/dashboard/team/{{team-id}}/projects"
-                              style="display:inline-block;background:#31EFB8;color:#1F1F1F;font-family:Source Sans Pro, sans-serif;font-size:16px;font-weight:normal;line-height:120%;margin:0;text-decoration:none;text-transform:none;padding:10px 25px;mso-padding-alt:0px;border-radius:3px;"
-                              target="_blank"> Go to the Team </a>
+                              style="display:inline-block;background:#6911d4;color:#FFFFFF;font-family:Source Sans Pro, sans-serif;font-size:16px;font-weight:normal;line-height:120%;margin:0;text-decoration:none;text-transform:none;padding:10px 25px;mso-padding-alt:0px;border-radius:8px;"
+                              target="_blank"> GO TO THE TEAM </a>
                           </td>
                         </tr>
                       </table>
diff --git a/backend/resources/app/email/password-recovery/en.html b/backend/resources/app/email/password-recovery/en.html
index 7770402b7..37693942d 100644
--- a/backend/resources/app/email/password-recovery/en.html
+++ b/backend/resources/app/email/password-recovery/en.html
@@ -196,12 +196,12 @@
                       <table border="0" cellpadding="0" cellspacing="0" role="presentation"
                         style="border-collapse:separate;line-height:100%;">
                         <tr>
-                          <td align="center" bgcolor="#31EFB8" role="presentation"
-                            style="border:none;border-radius:3px;cursor:auto;mso-padding-alt:10px 25px;background:#31EFB8;"
+                          <td align="center" bgcolor="#6911d4" role="presentation"
+                            style="border:none;border-radius:8px;cursor:auto;mso-padding-alt:10px 25px;background:#6911d4;"
                             valign="middle">
                             <a href="{{ public-uri }}/#/auth/recovery?token={{token}}"
-                              style="display:inline-block;background:#31EFB8;color:#1F1F1F;font-family:Source Sans Pro, sans-serif;font-size:16px;font-weight:normal;line-height:120%;margin:0;text-decoration:none;text-transform:none;padding:10px 25px;mso-padding-alt:0px;border-radius:3px;"
-                              target="_blank"> Reset password </a>
+                              style="display:inline-block;background:#6911d4;color:#FFFFFF;font-family:Source Sans Pro, sans-serif;font-size:16px;font-weight:normal;line-height:120%;margin:0;text-decoration:none;text-transform:none;padding:10px 25px;mso-padding-alt:0px;border-radius:8px;"
+                              target="_blank"> RESET PASSWORD </a>
                           </td>
                         </tr>
                       </table>
diff --git a/backend/resources/app/email/register/en.html b/backend/resources/app/email/register/en.html
index c5fb5bc3f..8ee3b855a 100644
--- a/backend/resources/app/email/register/en.html
+++ b/backend/resources/app/email/register/en.html
@@ -196,12 +196,12 @@
                       <table border="0" cellpadding="0" cellspacing="0" role="presentation"
                         style="border-collapse:separate;line-height:100%;">
                         <tr>
-                          <td align="center" bgcolor="#31EFB8" role="presentation"
-                            style="border:none;border-radius:3px;cursor:auto;mso-padding-alt:10px 25px;background:#31EFB8;"
+                          <td align="center" bgcolor="#6911d4" role="presentation"
+                            style="border:none;border-radius:8px;cursor:auto;mso-padding-alt:10px 25px;background:#6911d4;"
                             valign="middle">
                             <a href="{{ public-uri }}/#/auth/verify-token?token={{token}}"
-                              style="display:inline-block;background:#31EFB8;color:#1F1F1F;font-family:Source Sans Pro, sans-serif;font-size:16px;font-weight:normal;line-height:120%;margin:0;text-decoration:none;text-transform:none;padding:10px 25px;mso-padding-alt:0px;border-radius:3px;"
-                              target="_blank"> Verify email </a>
+                              style="display:inline-block;background:#6911d4;color:#FFFFFF;font-family:Source Sans Pro, sans-serif;font-size:16px;font-weight:normal;line-height:120%;margin:0;text-decoration:none;text-transform:none;padding:10px 25px;mso-padding-alt:0px;border-radius:8px;"
+                              target="_blank"> VERIFY EMAIL </a>
                           </td>
                         </tr>
                       </table>
diff --git a/backend/resources/app/email/request-file-access-yourpenpot-view/en.html b/backend/resources/app/email/request-file-access-yourpenpot-view/en.html
index 3146665f0..11f8b8dea 100644
--- a/backend/resources/app/email/request-file-access-yourpenpot-view/en.html
+++ b/backend/resources/app/email/request-file-access-yourpenpot-view/en.html
@@ -204,12 +204,12 @@
                       <table border="0" cellpadding="0" cellspacing="0" role="presentation"
                         style="border-collapse:separate;line-height:100%">
                         <tr>
-                          <td align="center" bgcolor="#31EFB8" role="presentation"
-                            style="border:none;border-radius:3px;cursor:auto;mso-padding-alt:10px 25px;background:#31EFB8;"
+                          <td align="center" bgcolor="#6911d4" role="presentation"
+                            style="border:none;border-radius:8px;cursor:auto;mso-padding-alt:10px 25px;background:#6911d4;"
                             valign="middle">
                             <a href="{{ public-uri }}/#/view/{{file-id}}?page-id={{page-id}}&section=interactions&index=0&share=true"
-                              style="display:inline-block;background:#31EFB8;color:#1F1F1F;font-family:Source Sans Pro, sans-serif;font-size:16px;font-weight:normal;line-height:120%;margin:0;text-decoration:none;text-transform:none;padding:10px 25px;mso-padding-alt:0px;border-radius:3px;"
-                              target="_blank"> Send a View-Only link </a>
+                              style="display:inline-block;background:#6911d4;color:#FFFFFF;font-family:Source Sans Pro, sans-serif;font-size:16px;font-weight:normal;line-height:120%;margin:0;text-decoration:none;text-transform:none;padding:10px 25px;mso-padding-alt:0px;border-radius:8px;"
+                              target="_blank"> SEND A VIEW-ONLY LINK </a>
                           </td>
                         </tr>
                       </table>
diff --git a/backend/resources/app/email/request-file-access-yourpenpot/en.html b/backend/resources/app/email/request-file-access-yourpenpot/en.html
index e32a1603f..72d8e4282 100644
--- a/backend/resources/app/email/request-file-access-yourpenpot/en.html
+++ b/backend/resources/app/email/request-file-access-yourpenpot/en.html
@@ -227,12 +227,12 @@
                       <table border="0" cellpadding="0" cellspacing="0" role="presentation"
                         style="border-collapse:separate;line-height:100%">
                         <tr>
-                          <td align="center" bgcolor="#31EFB8" role="presentation"
-                            style="border:none;border-radius:3px;cursor:auto;mso-padding-alt:10px 25px;background:#31EFB8;"
+                          <td align="center" bgcolor="#6911d4" role="presentation"
+                            style="border:none;border-radius:8px;cursor:auto;mso-padding-alt:10px 25px;background:#6911d4;"
                             valign="middle">
                             <a href="{{ public-uri }}/#/view/{{file-id}}?page-id={{page-id}}&section=interactions&index=0&share=true"
-                              style="display:inline-block;background:#31EFB8;color:#1F1F1F;font-family:Source Sans Pro, sans-serif;font-size:16px;font-weight:normal;line-height:120%;margin:0;text-decoration:none;text-transform:none;padding:10px 25px;mso-padding-alt:0px;border-radius:3px;"
-                              target="_blank"> Send a View-Only link </a>
+                              style="display:inline-block;background:#6911d4;color:#FFFFFF;font-family:Source Sans Pro, sans-serif;font-size:16px;font-weight:normal;line-height:120%;margin:0;text-decoration:none;text-transform:none;padding:10px 25px;mso-padding-alt:0px;border-radius:8px;"
+                              target="_blank"> SEND A VIEW-ONLY LINK </a>
                           </td>
                         </tr>
                       </table>
diff --git a/backend/resources/app/email/request-file-access/en.html b/backend/resources/app/email/request-file-access/en.html
index 370687e3f..4ea4acfcc 100644
--- a/backend/resources/app/email/request-file-access/en.html
+++ b/backend/resources/app/email/request-file-access/en.html
@@ -211,12 +211,12 @@
                       <table border="0" cellpadding="0" cellspacing="0" role="presentation"
                         style="border-collapse:separate;line-height:100%">
                         <tr>
-                          <td align="center" bgcolor="#31EFB8" role="presentation"
-                            style="border:none;border-radius:3px;cursor:auto;mso-padding-alt:10px 25px;background:#31EFB8;"
+                          <td align="center" bgcolor="#6911d4" role="presentation"
+                            style="border:none;border-radius:8px;cursor:auto;mso-padding-alt:10px 25px;background:#6911d4;"
                             valign="middle">
                             <a href="{{ public-uri }}/#/dashboard/team/{{team-id}}/members?invite-email={{requested-by-email|urlescape }}"
-                              style="display:inline-block;background:#31EFB8;color:#1F1F1F;font-family:Source Sans Pro, sans-serif;font-size:16px;font-weight:normal;line-height:120%;margin:0;text-decoration:none;text-transform:none;padding:10px 25px;mso-padding-alt:0px;border-radius:3px;"
-                              target="_blank"> Give access to “{{team-name|abbreviate:25}}” Team </a>
+                              style="display:inline-block;background:#6911d4;color:#FFFFFF;font-family:Source Sans Pro, sans-serif;font-size:16px;font-weight:normal;line-height:120%;margin:0;text-decoration:none;text-transform:none;padding:10px 25px;mso-padding-alt:0px;border-radius:8px;"
+                              target="_blank"> GIVE ACCESS TO “{{team-name|abbreviate:25}}” TEAM </a>
                           </td>
                         </tr>
                       </table>
@@ -244,12 +244,12 @@
                       <table border="0" cellpadding="0" cellspacing="0" role="presentation"
                         style="border-collapse:separate;line-height:100%">
                         <tr>
-                          <td align="center" bgcolor="#31EFB8" role="presentation"
-                            style="border:none;border-radius:3px;cursor:auto;mso-padding-alt:10px 25px;background:#31EFB8;"
+                          <td align="center" bgcolor="#6911d4" role="presentation"
+                            style="border:none;border-radius:8px;cursor:auto;mso-padding-alt:10px 25px;background:#6911d4;"
                             valign="middle">
                             <a href="{{ public-uri }}/#/view/{{file-id}}?page-id={{page-id}}&section=interactions&index=0&share=true"
-                              style="display:inline-block;background:#31EFB8;color:#1F1F1F;font-family:Source Sans Pro, sans-serif;font-size:16px;font-weight:normal;line-height:120%;margin:0;text-decoration:none;text-transform:none;padding:10px 25px;mso-padding-alt:0px;border-radius:3px;"
-                              target="_blank"> Send a View-Only link </a>
+                              style="display:inline-block;background:#6911d4;color:#FFFFFF;font-family:Source Sans Pro, sans-serif;font-size:16px;font-weight:normal;line-height:120%;margin:0;text-decoration:none;text-transform:none;padding:10px 25px;mso-padding-alt:0px;border-radius:8px;"
+                              target="_blank"> SEND A VIEW-ONLY LINK </a>
                           </td>
                         </tr>
                       </table>
diff --git a/backend/resources/app/email/request-team-access/en.html b/backend/resources/app/email/request-team-access/en.html
index 54a7dcc2a..2d9e26648 100644
--- a/backend/resources/app/email/request-team-access/en.html
+++ b/backend/resources/app/email/request-team-access/en.html
@@ -202,12 +202,12 @@
                       <table border="0" cellpadding="0" cellspacing="0" role="presentation"
                         style="border-collapse:separate;line-height:100%;">
                         <tr>
-                          <td align="center" bgcolor="#31EFB8" role="presentation"
-                            style="border:none;border-radius:3px;cursor:auto;mso-padding-alt:10px 25px;background:#31EFB8;"
+                          <td align="center" bgcolor="#6911d4" role="presentation"
+                            style="border:none;border-radius:8px;cursor:auto;mso-padding-alt:10px 25px;background:#6911d4;"
                             valign="middle">
                             <a href="{{ public-uri }}/#/dashboard/team/{{team-id}}/members?invite-email={{requested-by-email|urlescape}}"
-                              style="display:inline-block;background:#31EFB8;color:#1F1F1F;font-family:Source Sans Pro, sans-serif;font-size:16px;font-weight:normal;line-height:120%;margin:0;text-decoration:none;text-transform:none;padding:10px 25px;mso-padding-alt:0px;border-radius:3px;"
-                              target="_blank"> Give access to “{{team-name|abbreviate:25}}” </a>
+                              style="display:inline-block;background:#6911d4;color:#FFFFFF;font-family:Source Sans Pro, sans-serif;font-size:16px;font-weight:normal;line-height:120%;margin:0;text-decoration:none;text-transform:none;padding:10px 25px;mso-padding-alt:0px;border-radius:8px;"
+                              target="_blank"> GIVE ACCESS TO “{{team-name|abbreviate:25}}” TEAM </a>
                           </td>
                         </tr>
                       </table>

From 518ba0ebe789706c857c5d890d0fb2e03b59f7dc Mon Sep 17 00:00:00 2001
From: Andres Gonzalez <andres.gonzalez79@gmail.com>
Date: Wed, 5 Feb 2025 17:14:20 +0100
Subject: [PATCH 02/12] :books: Add info about import size limit at the user
 guide

---
 docs/user-guide/import-export/index.njk | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/docs/user-guide/import-export/index.njk b/docs/user-guide/import-export/index.njk
index 98d66b8f0..3d1dcdf02 100644
--- a/docs/user-guide/import-export/index.njk
+++ b/docs/user-guide/import-export/index.njk
@@ -38,7 +38,7 @@ title: 14· Import/export files
 <figure><img src="/img/import-export/export-libraries.webp" alt="Export penpot file" /></figure>
 
 <h2 id="files-import">Import Penpot files</h2>
-<p class="advice">Importing files from other tools and services is among the main priorities of the Penpot team. Related features are coming soon.</p>
+<p class="advice">The maximum file import size is currently limited to 1GB.</p>
 
 <p>The import option is at the projects menu. Press “Import files” and then select one or more .penpot files to import. You can import a .zip file as well.</p>
 <figure><img src="/img/import-export/import-menu.webp" alt="Import penpot file" /></figure>
@@ -50,7 +50,7 @@ title: 14· Import/export files
 <p>Unlike other design tools, <strong>Penpot's format is built on standard languages</strong>. The exported file is essentially a ZIP archive containing binary assets (such as bitmap and vector images) alongside a readable JSON structure. By avoiding proprietary formats, Penpot empowers users with autonomy from specific tools while enabling seamless third-party integrations.</p>
 
 <h3>Deprecated Penpot file formats</h3>
-<p class="advice">These formats can only be exported from version 2.3 or earlier versions, but can be imported to any Penpot version</p>
+<p class="advice">These formats can only be exported from version 2.3 or earlier versions, but can be imported to any Penpot version.</p>
 <p>There are two different deprecated Penpot file formats in which you can import/export Penpot files. A standard one and a binary one. You always have the chance to use both for any file.</p>
 <h4>[Deprecated] Penpot file (.penpot).</h4>
 <p>The fast one. Binary Penpot specific.</p>

From 00b0a59868b6a85c18108c95192d3da5b44779eb Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?luis=CE=B4=CE=BC?= <luis.dedios@kaleidos.net>
Date: Thu, 6 Feb 2025 14:24:30 +0100
Subject: [PATCH 03/12] :bug: Fix user unread comments appear in every
 workspace (#5786)

---
 frontend/src/app/main/data/comments.cljs | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/frontend/src/app/main/data/comments.cljs b/frontend/src/app/main/data/comments.cljs
index fd818b9a7..14f973af5 100644
--- a/frontend/src/app/main/data/comments.cljs
+++ b/frontend/src/app/main/data/comments.cljs
@@ -404,6 +404,10 @@
 (defn retrieve-comment-threads
   [file-id]
   (ptk/reify ::retrieve-comment-threads
+    ptk/UpdateEvent
+    (update [_ state]
+      (dissoc state :comment-threads))
+
     ptk/WatchEvent
     (watch [_ state _]
       (let [share-id (-> state :viewer-local :share-id)]

From ef9ead8072bbfebbaee92158c72bfc26530ba940 Mon Sep 17 00:00:00 2001
From: Eva Marco <eva.marco@kaleidos.net>
Date: Thu, 6 Feb 2025 17:42:15 +0100
Subject: [PATCH 04/12] :bug: Fix typo on integration test docs (#5796)

---
 CHANGES.md                                 | 2 +-
 docs/technical-guide/developer/frontend.md | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/CHANGES.md b/CHANGES.md
index f7796dab3..97d2b8e78 100644
--- a/CHANGES.md
+++ b/CHANGES.md
@@ -50,7 +50,7 @@ is a number of cores)
 - [COMMENTS] Notifications in Backend, Profile Section, and Mention Email Notification [Taiga #9233](https://tree.taiga.io/project/penpot/us/9233)
 
 ### :bug: Bugs fixed
-
+- Fix typo on integration tests docs [Taiga #10112](https://tree.taiga.io/project/penpot/issue/10112)
 - Fix problem with alt key measures being stuck [Taiga #9348](https://tree.taiga.io/project/penpot/issue/9348)
 - Fix error when reseting stroke cap
 - Fix problem with strokes not refreshing in Safari [Taiga #9040](https://tree.taiga.io/project/penpot/issue/9040)
diff --git a/docs/technical-guide/developer/frontend.md b/docs/technical-guide/developer/frontend.md
index 129105976..cfd87ad79 100644
--- a/docs/technical-guide/developer/frontend.md
+++ b/docs/technical-guide/developer/frontend.md
@@ -319,14 +319,14 @@ cd penpot/frontend
 3. Run the tests with <code class="language-bash">yarn</code>:
 
 ```bash
-yarn e2e:test
+yarn test:e2e
 ```
 
 > 💡 **TIP:** By default, the tests will _not_ run in parallel. You can set the amount of workers to run the tests with <code class="language-bash">--workers</code>. Note that, depending on your machine, this might make some tests flaky.
 
 ```bash
 # run in parallel with 4 workers
-yarn e2e:test --workers 4
+yarn test:e2e --workers 4
 ```
 
 #### Running the tests in Chromium

From 028a5ba596b93679fddc1937d0c2769a81d599bd Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?andr=C3=A9s=20gonz=C3=A1lez?= <andres.gonzalez79@gmail.com>
Date: Fri, 7 Feb 2025 09:04:56 +0100
Subject: [PATCH 05/12] :books: Remove the permissions table (#5795)

---
 docs/user-guide/teams/index.njk | 2 --
 1 file changed, 2 deletions(-)

diff --git a/docs/user-guide/teams/index.njk b/docs/user-guide/teams/index.njk
index 47920629d..ce9cb1e78 100644
--- a/docs/user-guide/teams/index.njk
+++ b/docs/user-guide/teams/index.njk
@@ -41,8 +41,6 @@ member is allowed to do depends on their permissions.</p>
   <li><strong>Admin:</strong> Admins have the same permissions as editors, with the added ability to change every other member's role except owners. They can invite members and update team settings.</strong></li>
   <li><strong>Owner:</strong> There's only one owner per team, the role is automatically assigned to the team creator. Owners have all the permissions of admins, with the additional ability to change any member's role, including transferring ownership. Owners can update team settings, invite members and delete teams.</strong></li>
 </ul>
-<figure><img src="/img/teams/teams-permissions.webp" alt="Team members" /></figure>
-<p class="advice">More team roles will be eventually available, as well as fine grained permissions management to control members access and actions.</p>
 
 <h3>Transfer ownership</h3>
 <p>An owner can transfer their ownership to another team member anytime and is requested to transfer it before leaving the team.</p>

From 87295eab76fd72b50d656f6cc61ded35118e1ad2 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?andr=C3=A9s=20gonz=C3=A1lez?= <andres.gonzalez79@gmail.com>
Date: Fri, 7 Feb 2025 09:05:12 +0100
Subject: [PATCH 06/12] :books: Add info about boards renaming (#5797)

---
 docs/img/objects/board-rename.webm | Bin 0 -> 21903 bytes
 docs/img/objects/board-rename.webp | Bin 0 -> 1104 bytes
 docs/user-guide/objects/index.njk  |  15 ++++++++++++++-
 3 files changed, 14 insertions(+), 1 deletion(-)
 create mode 100644 docs/img/objects/board-rename.webm
 create mode 100644 docs/img/objects/board-rename.webp

diff --git a/docs/img/objects/board-rename.webm b/docs/img/objects/board-rename.webm
new file mode 100644
index 0000000000000000000000000000000000000000..dfcd8a7476dd5569c49077a3bb6434d08a8e443e
GIT binary patch
literal 21903
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
IV-sT*0M9BHOaK4?

literal 0
HcmV?d00001

diff --git a/docs/img/objects/board-rename.webp b/docs/img/objects/board-rename.webp
new file mode 100644
index 0000000000000000000000000000000000000000..2e4d4f863a8095ad248032f96ffb8498002687f3
GIT binary patch
literal 1104
zcmWIYbaV4yVPFV%bqWXzu!!JdU|>)H;xmj4f{YBF&dvcR7=c^{#uFft#ejh!H?O29
z$lXaHA~H&W{Q(0b5Q0Hsa&ZBKg_Q)V`gRSX_OdQk75D`?Q&NkQfl59Au}Trpa-f?;
zfNYU;2wMZhPJ*y)K<x68f)b#b01&$<B*+=aP64tt(vjFnNbKZ-B9QtXpc<RpoKlco
zAOP|mPikIhFp%Z|Vi|^Fh9Cxa1}BjJfqWpyU&O#*@s)vrc>+Q#X(j{1_ErW4iCYLU
zl?4n8{4ER&+s-4z5Mfe~Sd<7h4j3B@OlfHh44;-WFz`k)FbH2@VBm@d%K-@-Zc_kC
z$pGDz4}|FqISi=`3JjhMc?`)6dO(&Dg8_pfgBdV}6{46J7y`5y<}zxXWfWqx%Qczl
zsiL%Kp;EyOj|Se(%)EzX8zm<H-In%}?Yr#PAIXgtBELV|{W-ti`287j8MZz3hB@-v
z_$>?9|F28GKlA%V8-sqQ$9KQ~Gim5QdPF0t`;5fP8M9xP{_ip<-Sz*dc=+#&3ZJJ-
z{ST>#*{R{motUHBx?!8xp&QX4W^9qqiED4N|KH9w<t{V*|9(OB$N4~0CmoLb(0nc?
z`!R3&A)rmG`s=_h)_$v8vL|tm>TDUA?Em*?z7EPb`<VBk>#vmpx;L)>-*)FizC=Ek
zLpsaCykq<Se&Gje`V^6ECs291w<dAT569<vrh)H|)&87cms-0dZ+ee;%jV?f-umC4
zZL@qOfhKG04^?8_E%pD~?RmV9fpPcm|Ne{r%4`q*ifjNz34{8@hFOu9=FD__rNCSl
zvt718Ep`8s%p~3&vhs#42QyPrOqupv_t?AZ0owuP`7akVEmTu~Y`ZM|eEN^z+3TnC
zu8|0tAYS)%@2|g)WETHC#Inl4<m*@W<dB6^-fUcvU1qkkRbp5DhR?s2ZjmhMym)zO
z-pQE1cb(&0rc`v^`^C>4{!ZdP$By`R`J6QeKTR<B#$4EFyRA6p>m`q%d%2=Nu6`Bw
z&pW;TY(;GHxnr}LD@3JKPVhKPX8+@}gDruZ@weMHXPKv4D?`q@um3gW`h`*!iAuF^
a-YeJUzn=HvKowVjdW49@5(flczyJUciiUUq

literal 0
HcmV?d00001

diff --git a/docs/user-guide/objects/index.njk b/docs/user-guide/objects/index.njk
index b8392712f..4ed50ca66 100644
--- a/docs/user-guide/objects/index.njk
+++ b/docs/user-guide/objects/index.njk
@@ -33,6 +33,20 @@ are shown by default at the <a href="/user-guide/view-mode">View mode</a>, actin
   </video>
 </figure>
 
+<h3>Rename boards</h3>
+<p>There several ways to rename boards:</p>
+<ul>
+  <li>Double click on the board name at the workspace viewport.</li>
+  <li>Double click on the board name at the layers panel.</li>
+  <li>Press <kbd>Alt/⌥</kbd> + <kbd>N</kbd> to rename the board at the layers panel.</li>
+  <li>Right click to show the menu and select "Rename".</li>
+</ul>
+<figure>
+  <video title="Rename board" muted="" playsinline="" controls="" width="auto" poster="/img/objects/board-rename.webp" height="auto">
+    <source src="/img/objects/board-rename.webm" type="video/webm">
+  </video>
+</figure>
+
 <h3>Set board as thumbnail</h3>
 <p>Select a specific board to be the file thumbnail that will be shown at <a href="/user-guide/the-interface/#dashboard-interface" target="_blank">the dashboard</a> in the file card.</p>
 <p>To set a custom thumbnail:</p>
@@ -171,7 +185,6 @@ You can choose to edit individual nodes or create new ones. Press <kbd>Esc</kbd>
   </video>
 </figure>
 
-
 <h2 id="images">Images</h2>
 <h3>Insert images</h3>
 <p>There are several options for inserting an image into a Penpot file:</p>

From a4e35ec713bfe149d16401ace8bd760e757dc63f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?andr=C3=A9s=20gonz=C3=A1lez?= <andres.gonzalez79@gmail.com>
Date: Fri, 7 Feb 2025 09:05:29 +0100
Subject: [PATCH 07/12] :books: Update FAQ about sharing plugins (#5794)

---
 docs/plugins/faq.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/docs/plugins/faq.md b/docs/plugins/faq.md
index 471818555..d883b39d6 100644
--- a/docs/plugins/faq.md
+++ b/docs/plugins/faq.md
@@ -61,7 +61,7 @@ Take a look at the Penpot Library methods in the <a target="_blank" href="https:
 
 ### Is there a place where I can share my plugin?
 
-You will be able to share your plugin with the <a target="_blank" href="https://community.penpot.app/">Penpot community</a>. In the future, we plan to create a place where we will publish the plugins we know about, but this is still something we have to define.
+<a target="_blank" href="https://penpot.app/penpothub">Penpot Hub</a> is where you can share plugins, templates and libraries all made possible through open-source collaboration. To add your plugin to our catalog, simply fill out <a target="_blank" href="https://penpot.app/penpothub/plugins/create-plugin">this form</a> with your plugin's details.
 
 ### My plugin works on my local machine, but I couldn’t install it on Penpot. What could be the problem?
 

From 5fa96315e39841ec67d56aa08d0a2a0060aa2357 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Marina=20L=C3=B3pez?= <marina.lopez.yap@gmail.com>
Date: Fri, 7 Feb 2025 09:51:25 +0100
Subject: [PATCH 08/12] :sparkles: Add event for A/B test first state project
 (#5791)

---
 frontend/src/app/main/ui/dashboard/placeholder.cljs | 12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)

diff --git a/frontend/src/app/main/ui/dashboard/placeholder.cljs b/frontend/src/app/main/ui/dashboard/placeholder.cljs
index 8af3d723b..d836fcf24 100644
--- a/frontend/src/app/main/ui/dashboard/placeholder.cljs
+++ b/frontend/src/app/main/ui/dashboard/placeholder.cljs
@@ -8,19 +8,29 @@
   (:require-macros [app.main.style :as stl])
   (:require
    [app.config :as cf]
+   [app.main.data.event :as ev]
+   [app.main.store :as st]
    [app.main.ui.dashboard.import :as udi]
    [app.main.ui.ds.product.empty-placeholder :refer [empty-placeholder*]]
    [app.main.ui.ds.product.loader :refer [loader*]]
    [app.main.ui.icons :as i]
    [app.util.dom :as dom]
    [app.util.i18n :as i18n :refer [tr]]
+   [potok.v2.core :as ptk]
    [rumext.v2 :as mf]))
 
 (mf/defc empty-placeholder-projects*
   {::mf/wrap-props false}
   [{:keys [on-create on-finish-import project-id] :as props}]
   (let [file-input       (mf/use-ref nil)
-        on-add-library   (mf/use-fn #(dom/open-new-window "https://penpot.app/penpothub/libraries-templates"))
+        on-add-library   (mf/use-fn
+                          (fn [event]
+                            (dom/prevent-default event)
+                            (dom/stop-propagation event)
+                            (st/emit! (ptk/event ::ev/event {::ev/name "explore-libraries-click"
+                                                             ::ev/origin "dashboard"
+                                                             :section "empty-placeholder-projects"}))
+                            (dom/open-new-window "https://penpot.app/penpothub/libraries-templates")))
         on-import-files  (mf/use-fn #(dom/click (mf/ref-val file-input)))]
 
     [:div {:class (stl/css :empty-project-container)}

From a98111f68d69c78308150e53ff010ab4ae2a3e21 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Marina=20L=C3=B3pez?= <marina.lopez.yap@gmail.com>
Date: Fri, 7 Feb 2025 11:07:47 +0100
Subject: [PATCH 09/12] :fire: Remove unnecessary prevent and stop (#5799)

---
 frontend/src/app/main/ui/dashboard/placeholder.cljs | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/frontend/src/app/main/ui/dashboard/placeholder.cljs b/frontend/src/app/main/ui/dashboard/placeholder.cljs
index d836fcf24..042c0815a 100644
--- a/frontend/src/app/main/ui/dashboard/placeholder.cljs
+++ b/frontend/src/app/main/ui/dashboard/placeholder.cljs
@@ -24,9 +24,7 @@
   [{:keys [on-create on-finish-import project-id] :as props}]
   (let [file-input       (mf/use-ref nil)
         on-add-library   (mf/use-fn
-                          (fn [event]
-                            (dom/prevent-default event)
-                            (dom/stop-propagation event)
+                          (fn [_]
                             (st/emit! (ptk/event ::ev/event {::ev/name "explore-libraries-click"
                                                              ::ev/origin "dashboard"
                                                              :section "empty-placeholder-projects"}))

From b991a946857c7b2de5dbae6e8efe2ea6a15c0e18 Mon Sep 17 00:00:00 2001
From: Eva Marco <eva.marco@kaleidos.net>
Date: Fri, 7 Feb 2025 12:32:44 +0100
Subject: [PATCH 10/12] :bug: Fix icon visualization on select component
 (#5801)

---
 CHANGES.md                                       | 1 +
 frontend/src/app/main/ui/ds/controls/select.cljs | 2 +-
 2 files changed, 2 insertions(+), 1 deletion(-)

diff --git a/CHANGES.md b/CHANGES.md
index 97d2b8e78..db26b4238 100644
--- a/CHANGES.md
+++ b/CHANGES.md
@@ -50,6 +50,7 @@ is a number of cores)
 - [COMMENTS] Notifications in Backend, Profile Section, and Mention Email Notification [Taiga #9233](https://tree.taiga.io/project/penpot/us/9233)
 
 ### :bug: Bugs fixed
+- Fix icon visualization on select component [Taiga #8889](https://tree.taiga.io/project/penpot/issue/8889)
 - Fix typo on integration tests docs [Taiga #10112](https://tree.taiga.io/project/penpot/issue/10112)
 - Fix problem with alt key measures being stuck [Taiga #9348](https://tree.taiga.io/project/penpot/issue/9348)
 - Fix error when reseting stroke cap
diff --git a/frontend/src/app/main/ui/ds/controls/select.cljs b/frontend/src/app/main/ui/ds/controls/select.cljs
index 38222441c..b74ac575d 100644
--- a/frontend/src/app/main/ui/ds/controls/select.cljs
+++ b/frontend/src/app/main/ui/ds/controls/select.cljs
@@ -198,7 +198,7 @@
         label]]
       [:> icon* {:icon-id i/arrow
                  :class (stl/css :arrow)
-                 :size "s"
+                 :size "m"
                  :aria-hidden true}]]
      (when open
        [:> options-dropdown* {:on-click on-option-click

From 92aa615da409595c8db7755c0d4073a4b26013bc Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?luis=CE=B4=CE=BC?= <luis.dedios@kaleidos.net>
Date: Fri, 7 Feb 2025 12:33:29 +0100
Subject: [PATCH 11/12] :bug: Fix users from another teams appear in mentions
 (#5789)

---
 frontend/src/app/main/ui/comments.cljs | 17 ++++++++++-------
 1 file changed, 10 insertions(+), 7 deletions(-)

diff --git a/frontend/src/app/main/ui/comments.cljs b/frontend/src/app/main/ui/comments.cljs
index aa5e0045e..ff93524e4 100644
--- a/frontend/src/app/main/ui/comments.cljs
+++ b/frontend/src/app/main/ui/comments.cljs
@@ -425,7 +425,9 @@
   []
   (let [mentions-s (mf/use-ctx mentions-context)
         profile    (mf/deref refs/profile)
-        profiles   (mf/deref refs/profiles)
+
+        team       (mf/deref refs/team)
+        members    (:members team)
 
         state*
         (mf/use-state
@@ -437,10 +439,8 @@
         (deref state*)
 
         mentions-users
-        (mf/with-memo [mention-filter]
-
-
-          (->> (vals profiles)
+        (mf/with-memo [mention-filter members]
+          (->> members
                (filter (fn [{:keys [id fullname email]}]
                          (and
                           (not= id (:id profile))
@@ -461,9 +461,12 @@
            (dom/stop-propagation event)
            (let [id (-> (dom/get-current-target event)
                         (dom/get-data "user-id")
-                        (uuid/uuid))]
+                        (uuid/uuid))
+
+                 user   (d/seek #(= (:id %) id) members)]
+
              (rx/push! mentions-s {:type :insert-mention
-                                   :data {:user (get profiles id)}}))))]
+                                   :data {:user user}}))))]
 
     (mf/with-effect [mentions-users selected]
       (let [sub

From debad85d6dc9b3fd79062c7e3dd684977bceb0c8 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?andr=C3=A9s=20gonz=C3=A1lez?= <andres.gonzalez79@gmail.com>
Date: Fri, 7 Feb 2025 16:41:04 +0100
Subject: [PATCH 12/12] :books: Add info about fit board to content (#5800)

---
 docs/img/objects/board-fit.webp   | Bin 0 -> 7346 bytes
 docs/user-guide/objects/index.njk |   6 ++++++
 2 files changed, 6 insertions(+)
 create mode 100644 docs/img/objects/board-fit.webp

diff --git a/docs/img/objects/board-fit.webp b/docs/img/objects/board-fit.webp
new file mode 100644
index 0000000000000000000000000000000000000000..561b819a6aeff6dc245153328041ef1b8f258958
GIT binary patch
literal 7346
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

literal 0
HcmV?d00001

diff --git a/docs/user-guide/objects/index.njk b/docs/user-guide/objects/index.njk
index 4ed50ca66..7946dd9f3 100644
--- a/docs/user-guide/objects/index.njk
+++ b/docs/user-guide/objects/index.njk
@@ -87,6 +87,12 @@ Penpot allows you to decide if the fill of an artboard will be shown in exports,
   <img src="/img/objects/board-fill.webp" alt="show board fill in exports">
 </figure>
 
+<h3>Resize board to fit to content</h3>
+<p>You can adjust the board size to fit its content by clicking the icon in the design sidebar.</p>
+<figure>
+  <img src="/img/objects/board-fit.webp" alt="Resize board to fit to content button">
+</figure>
+
 <h3>Board guides</h3>
 <p>You can set guides on boards that will assist with aligning objects.</p>
 <p>Read more about <a href="/user-guide/workspace-basics/#guides">guides</a>.</p>