Commit Graph

59446 Commits

Author SHA1 Message Date
Sam
2261d3711b FEATURE: allow customizing default timezone for email. (#32964)
1. Changes default email format to llll (eg: Tue, May 8, 2018 2:00 AM)
from 2018-05-08T00:00:00Z UTC which is not nice on the eyes
2. Adds `discourse_local_dates_email_timezone` which allows configuring
default timezone in emails
3. Improved help text on site settings (format / timezone)

---------

Co-authored-by: Gary Pendergast <gary@pento.net>
2025-05-29 14:17:37 +10:00
0142d352a8 UX: Add hover state to theme cards (#32980)
Added a subtle hover border to theme cards for better visual feedback.
Cursor stays default since the card itself isn’t clickable.

### Before
Nada
<img width="591" alt="image"
src="https://github.com/user-attachments/assets/d1df6b46-0557-4dfa-af68-166b2b721595"
/>


### After
Applies `--tertiary-medium` on hover
<img width="585" alt="image"
src="https://github.com/user-attachments/assets/1e08f638-738f-40bc-948e-17912b634c0f"
/>
2025-05-28 21:53:25 -06:00
ce6e8a9809 FEATURE: Show language switcher for anons (#32965)
Related: 
- https://github.com/discourse/discourse-translator/pull/308
- https://github.com/discourse/discourse/pull/32920 (setting introduced)

Moving the switcher to core, as the setting is now in core.
2025-05-29 11:37:20 +08:00
09a457f2ab FIX: Topic timeline in mobile is not usable due to full height (#32986)
Bug introduced in 5cb19734e0
2025-05-29 10:23:51 +08:00
cafea26dc0 UX: add gap to sidebar items (#32981) 2025-05-28 14:52:02 -05:00
a868c8225f FIX: removes shift which is not necessary anymore (#32979) 2025-05-28 20:07:05 +02:00
ee4cb3915e FIX: Composite primary key output (#32972)
Ensure last column definition before a composite primary key definition
has a comma.
2025-05-28 17:45:48 +00:00
67b89fcebd UX: Decrease spacing between content sections in theme-card UI (#32977) 2025-05-28 11:54:12 -05:00
e147d2afe6 DEV: Added the ability to use users' names in group mention notifications and mentions shown in emails (#32848)
**Description**
This is part of a series of changes to allow customers to dsiplay users'
names instead of the users' username.

When a user belongs to a group that has been mentioned by another user.
It shows the name of the user that mentioned the group.

**Before**

![imagen](https://github.com/user-attachments/assets/b62224fb-9b69-4603-be00-e7aa61d9b33c)

**After**

![imagen](https://github.com/user-attachments/assets/8495cb63-6530-4d86-a51c-f0510d48f6c7)

When a email is sent to the user when mentioned in a post 

**Before**


![imagen](https://github.com/user-attachments/assets/94e674da-085a-41cb-8145-ba6fbe3636ce)

**After**

![imagen](https://github.com/user-attachments/assets/490cb365-bf85-4745-93b9-e47048b2f02e)
2025-05-28 10:07:06 -05:00
89d5cca2af UX: fix padding (#32973) 2025-05-28 08:44:36 -05:00
79ab714bd9 UX: Improve color descriptions (#32930)
This updates and adds short, human-friendly descriptions for commonly
used color variables in the color palette UI. Mostly cleaned up the
wording to make things easier to scan, so admins can quickly tell what
each color is used for.

Internal: /t/154624

---------

Co-authored-by: Jarek Radosz <jradosz@gmail.com>
2025-05-28 07:35:42 -06:00
55d59c523a DEV: Make curry-component available for themes/plugins (#32967) 2025-05-28 11:02:10 +01:00
3812db5d23 Build(deps): Bump the babel group with 2 updates (#32947)
Bumps the babel group with 2 updates:
[@babel/core](https://github.com/babel/babel/tree/HEAD/packages/babel-core)
and
[@babel/standalone](https://github.com/babel/babel/tree/HEAD/packages/babel-standalone).


Updates `@babel/core` from 7.27.1 to 7.27.3
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
-
[Commits](https://github.com/babel/babel/commits/v7.27.3/packages/babel-core)

Updates `@babel/standalone` from 7.27.2 to 7.27.3
- [Release notes](https://github.com/babel/babel/releases)
- [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md)
-
[Commits](https://github.com/babel/babel/commits/v7.27.3/packages/babel-standalone)

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Discourse CI <ci@ci.invalid>
2025-05-28 11:57:41 +02:00
ff04406a27 Build(deps): Bump terser from 5.39.2 to 5.40.0 (#32948)
Bumps [terser](https://github.com/terser/terser) from 5.39.2 to 5.40.0.
- [Changelog](https://github.com/terser/terser/blob/master/CHANGELOG.md)
- [Commits](https://github.com/terser/terser/compare/v5.39.2...v5.40.0)

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-28 11:46:07 +02:00
2faa467b29 DEV: Add tests for about page extra group ordering (#32959)
Adding tests for about page extra groups ordering.
2025-05-28 17:36:12 +08:00
f4d4f371e6 UX: fix border-radius on image upload inputs (#32935)
Noticed problems on themes that use border-radius (like Horizon), where
these get the button radius applied, which is too large since, despite
**functioning** like a button, they are essentially inputs and lean more
toward the input styling. Also removed `btn-default` as this element
couldn't be further from a default button if it tried.

| Before | After |
|--------|--------|
| ![CleanShot 2025-05-27 at 11 43
42@2x](https://github.com/user-attachments/assets/fa0aa793-e812-40ed-b142-f47158e2d01b)
| ![CleanShot 2025-05-27 at 11 42
01@2x](https://github.com/user-attachments/assets/bba289e7-3707-4725-925e-a993fec32da8)
|

---------

Co-authored-by: Ella <ella.estigoy@gmail.com>
2025-05-28 08:58:21 +02:00
435088f62c DEV: Add locale column to categories (#32962)
Previously we had omitted determining the locale of categories, as
unlike posts, categories are usually single words and are usually only
translated once.

Since there is no locale, a category called "Staff" would also have an
English translation. With LLMs that perform poorly, we see that
translating "Staff" to English may result in something entirely
different (like "Personnelle" or "Personal").

Thus adding locale support to categories can mitigate this issue due to
the uncertainty.
2025-05-28 13:49:26 +08:00
f99c17d52b Bump version to v3.5.0.beta6-dev 2025-05-28 12:34:15 +08:00
0db6f59383 Bump version to v3.5.0.beta5 v3.5.0.beta5 2025-05-28 12:34:14 +08:00
ec6239b594 Build(deps): Bump @csstools/postcss-light-dark-function from 2.0.8 to 2.0.9 (#32949)
Bumps
[@csstools/postcss-light-dark-function](https://github.com/csstools/postcss-plugins/tree/HEAD/plugins/postcss-light-dark-function)
from 2.0.8 to 2.0.9.
-
[Changelog](https://github.com/csstools/postcss-plugins/blob/main/plugins/postcss-light-dark-function/CHANGELOG.md)
-
[Commits](https://github.com/csstools/postcss-plugins/commits/HEAD/plugins/postcss-light-dark-function)

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Discourse CI <ci@ci.invalid>
2025-05-28 08:58:09 +08:00
8b15a8874c Build(deps-dev): Bump rspec-expectations from 3.13.4 to 3.13.5 (#32952)
[//]: # (dependabot-start)
⚠️  **Dependabot is rebasing this PR** ⚠️ 

Rebasing might not happen immediately, so don't worry if this takes some
time.

Note: if you make any changes to this PR yourself, they will take
precedence over the rebase.

---

[//]: # (dependabot-end)

Bumps [rspec-expectations](https://github.com/rspec/rspec) from 3.13.4
to 3.13.5.
-
[Changelog](https://github.com/rspec/rspec/blob/rspec-mocks-v3.13.5/rspec-expectations/Changelog.md)
-
[Commits](https://github.com/rspec/rspec/compare/rspec-expectations-v3.13.4...rspec-mocks-v3.13.5)

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-28 08:56:18 +08:00
64734610cb Build(deps-dev): Bump rspec-mocks from 3.13.4 to 3.13.5 (#32953)
Bumps [rspec-mocks](https://github.com/rspec/rspec) from 3.13.4 to
3.13.5.
-
[Changelog](https://github.com/rspec/rspec/blob/rspec-mocks-v3.13.5/rspec-mocks/Changelog.md)
-
[Commits](https://github.com/rspec/rspec/compare/rspec-mocks-v3.13.4...rspec-mocks-v3.13.5)

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-28 08:56:06 +08:00
a2dbf9392b Build(deps-dev): Bump rspec from 3.13.0 to 3.13.1 (#32955)
Bumps [rspec](https://github.com/rspec/rspec) from 3.13.0 to 3.13.1.
-
[Commits](https://github.com/rspec/rspec/compare/rspec-metagem-v3.13.0...rspec-v3.13.1)

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-28 08:55:53 +08:00
8f2283a5eb Build(deps-dev): Bump esbuild from 0.25.4 to 0.25.5 (#32950)
Bumps [esbuild](https://github.com/evanw/esbuild) from 0.25.4 to 0.25.5.
- [Release notes](https://github.com/evanw/esbuild/releases)
- [Changelog](https://github.com/evanw/esbuild/blob/main/CHANGELOG.md)
- [Commits](https://github.com/evanw/esbuild/compare/v0.25.4...v0.25.5)

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-28 08:55:45 +08:00
eb43f9425a Build(deps-dev): Bump mime-types-data from 3.2025.0520 to 3.2025.0527 (#32951)
Bumps [mime-types-data](https://github.com/mime-types/mime-types-data)
from 3.2025.0520 to 3.2025.0527.
-
[Changelog](https://github.com/mime-types/mime-types-data/blob/main/CHANGELOG.md)
-
[Commits](https://github.com/mime-types/mime-types-data/compare/v3.2025.0520...v3.2025.0527)

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-28 08:54:47 +08:00
4f142c9632 Build(deps-dev): Bump rspec-support from 3.13.3 to 3.13.4 (#32954)
[//]: # (dependabot-start)
⚠️  **Dependabot is rebasing this PR** ⚠️ 

Rebasing might not happen immediately, so don't worry if this takes some
time.

Note: if you make any changes to this PR yourself, they will take
precedence over the rebase.

---

[//]: # (dependabot-end)

Bumps [rspec-support](https://github.com/rspec/rspec) from 3.13.3 to
3.13.4.
-
[Changelog](https://github.com/rspec/rspec/blob/rspec-support-v3.13.4/rspec-support/Changelog.md)
-
[Commits](https://github.com/rspec/rspec/compare/rspec-support-v3.13.3...rspec-support-v3.13.4)

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-28 08:53:17 +08:00
69543bc4be Build(deps-dev): Bump rspec-core from 3.13.3 to 3.13.4 (#32956)
Bumps [rspec-core](https://github.com/rspec/rspec) from 3.13.3 to
3.13.4.
-
[Changelog](https://github.com/rspec/rspec/blob/rspec-core-v3.13.4/rspec-core/Changelog.md)
-
[Commits](https://github.com/rspec/rspec/compare/rspec-core-v3.13.3...rspec-core-v3.13.4)

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-05-28 08:52:46 +08:00
0b65360094 FIX: Make post created/edited automation trigger regexes more specific (#32944)
- For `with_images`, ignore `<img>` tags representing emoji or a quote
avatar
- For `with_links` and `with_uploads`, exclude tags starting with the
letter "a" other than `<a>` (like `<aside>`)
- For `with_code`, the `<pre>` tag wasn't being detected because it was
expecting an extra char before the ">"
2025-05-27 15:40:00 -05:00
90ee5cfadd DEV: Apply transformer for composer editor reply placeholder (#32943)
This adds an `applyValueTransformer` for the Composer textarea's placeholder text
2025-05-27 15:37:32 -05:00
ee14a81573 Update translations (#32939) 2025-05-27 22:11:24 +02:00
06d3d3f418 DEV: Import likes into user_actions table (#32921)
Likes given / likes received on user admin page were empty because of
this missing data. Also, a background job cleared the like stats from
`user_stats` table after some time because of this missing data.
2025-05-27 22:08:51 +02:00
e371e1b3cd FIX: Skip importing solved topics when plugin isn't installed (#32922) 2025-05-27 22:08:43 +02:00
aa94a71789 UX: Handle long URLs in theme grid with overflow-wrap (#32942)
Added `overflow-wrap: anywhere` to prevent long URLs from breaking the
layout

### Before
<img width="268" alt="image"
src="https://github.com/user-attachments/assets/2512b44e-7af3-42cb-b1c6-d7fcb7dd0535"
/>


### After
<img width="260" alt="image"
src="https://github.com/user-attachments/assets/9c5abf05-8f79-4434-bdb7-fc2b5fd2bd2e"
/>
2025-05-27 11:07:19 -06:00
af91b0433f DEV: Post localization improvements (#32869)
## 🔍 Overview
This update includes some small improvements to post localizations. In
particular:
- we only show add translation button if user is part of
`experimental_content_localization_allowed_groups` and
`SiteSetting.experimental_content_localization` is `true`
- we no longer load `post_localizations` on every post until the post
localization globe is clicked
- we move the post localization indicator to be an menu item in the
post-action-buttons instead of being in the post meta data
- we remove the `SiteSetting.content_localization_debug_allowed_groups`
in favor of using a single setting:
`experimental_content_localization_allowed_groups_map`

## 📷 Screenshots

![image](https://github.com/user-attachments/assets/fa239501-0dbc-43ba-8b70-d6899dd1554c)


![image](https://github.com/user-attachments/assets/8b3272b3-7483-4bb1-af36-8c8ad5d55d03)
2025-05-27 08:49:53 -07:00
2137f55b4d DEV: Add a path argument to withEventValue (#32924)
…to support `target.checked` cases
2025-05-27 17:06:59 +02:00
8adb6649fe UX: Improve UX when profiles are hidden from anon (#32938)
- Update `<UserLink>` to omit `href` entirely when profiles are
unavailable. Clicking now does nothing

- Restore the `.non-clickable` class which was accidentally dropped in
8b4730e5

- Update topic-list, topic-map and about page to use `UserLink`
component, so that they get the automatic unclickable behavior
2025-05-27 14:18:25 +01:00
fdc935b3b5 UX: add fallback width for modal (#32937)
Potentially due specificity changes in #32733 , the `max-modal-width` is
undefined when rendering mobile, resulting in:


![image](https://github.com/user-attachments/assets/8bd8551b-a52e-46a1-92cc-7a3e79db042d)

Despite my expecting the MQ to take preference, it doesn't:
![CleanShot 2025-05-27 at 12 16
08@2x](https://github.com/user-attachments/assets/a897564d-0173-4442-82df-8d5dbaa3411d)

This commit:
* Added a fallback 
* Increased specificity for good measure
* Fixed border-radius (should be zero, aligned with top and full-width)

![CleanShot 2025-05-27 at 12 23
56@2x](https://github.com/user-attachments/assets/9d43ce30-424a-4855-ad43-1b915d251f0d)
2025-05-27 14:31:22 +02:00
807e4c7004 FIX: Unblock social signup when name is required and `auth overrides… (#32923)
… name` is enabled

In the edge case when:
- Full Name is set to Required
- `auth overrides name` is enabled

we were previously showing the name input as disabled, which blocked the
signup process.
2025-05-27 08:26:38 -04:00
6d42d95341 DEV: update composer similar topics limit (#32934)
Updates the composer similar topics tips to return a maximum of 3 topic
results. We are phasing out the site setting in an effort to improve the
UX in the composer.

We will handle the migration to remove the site setting value from the
database in a follow up PR.
2025-05-27 14:06:31 +04:00
71412c0767 UX: update composer educational tips copy (#32933)
Updates the composer educational tips copy for the following:

- new topic
- new reply
- dominating topic
- don't feed the trolls
2025-05-27 12:24:42 +04:00
ad85ba0a77 FIX: Add missing about group ordering option (#32931)
We are missing one of the options for ordering of extra groups on the about page. This setting uses the exact order the groups are selected in the settings.
2025-05-27 12:10:28 +08:00
6f123c102f FIX: avoid infinite loop when synonym tag is self (#32932)
When tag synonym is tag itself, it should not redirect to prevent
infinite loop.
2025-05-27 11:48:51 +08:00
373a9adb3b DEV: Move some site settings from Navigation to Interface (#32929)
Moving three site settings from Navigation to Interface & layout.
2025-05-27 09:51:08 +08:00
8efd99da9e FEATURE: Improve emoji diversity rendering (#32909)
This change polishes the emoji diversity rendering behaviour in the emoji pickers. When a user changes their diversity setting, that setting will now be applied to favourites, chat default reactions, and in the  emoji picker section selectors.

If an emoji was previously stored with a skin tone in favourites or default reactions, the stored skin tone won't be overridden.
2025-05-27 11:34:24 +10:00
012b48db62 DEV: Migrate add-groups-to-about component settings to site settings (#32910)
We're moving the add-groups-to-about theme component into core. We have already added the logic and switchover in #32659.

This PR adds a data migration that maps the theme settings to the relevant site settings, then enables the core implementation.
2025-05-27 09:22:31 +08:00
1c1300d0e7 FIX: back to forum button should lead to forum and not chat (#32913)
Similar fix to https://github.com/discourse/discourse/pull/32911

Meta:
https://meta.discourse.org/t/doc-sub-category-back-to-forum-loop/367513/15
2025-05-27 08:43:47 +08:00
1de8960d2a FIX: Serve RTL CSS for themes and components (#32916)
Follow up to https://github.com/discourse/discourse/pull/32881

Stylesheet `<link>` tags for themes/components are aren't getting
included/rendered in the HTML document due to a missing check in
stylesheet manager. See
https://meta.discourse.org/t/ui-layout-broken-for-rtl-language-after-latest-update/367434?u=osama.
2025-05-27 03:15:05 +03:00
adc8dd29eb DEV: Update allowed supported locales in translation editor (#32920)
## 🔍 Overview
This update adds a new site setting:

```ruby
SiteSetting.experimental_content_localization_supported_locales
```

where admins can set the supported languages for content localizations,
which will populate the picker inside the translation composer editor.
The update also ensures the content localization settings are shown in
the site setting area: "localization"

## 📷 Screenshots

![Screenshot 2025-05-26 at 10 03
14](https://github.com/user-attachments/assets/62645e4d-4d7b-460c-a249-66b563d35a93)

![Screenshot 2025-05-26 at 10 04
08](https://github.com/user-attachments/assets/dd3ac5ea-e9be-4f8f-8488-2dedea15e833)
2025-05-26 11:40:19 -07:00
487f610fc1 DEV: add user email to chat summary mailer (#32917)
Pass user email rather than relying on enrichment when sending summary
emails.
2025-05-26 19:19:16 +04:00
5cb19734e0 FIX: Also show the toggle localization button on mobile (#32912)
In https://github.com/discourse/discourse/pull/32618, the button was
added to a place which does not show up on mobile.

When the feature was still in discourse-translator
(https://github.com/discourse/discourse-translator/pull/205), it was
added to the plugin outlet which would allow it to show up on both
mobile and desktop. This commit moves the button to be a neighbour of the
plugin outlet.
2025-05-26 21:54:34 +08:00