Commit Graph
463 Commits
Author SHA1 Message Date
Martin BrennanandRégis Hanol d9805c8635 WIP: Additional simplified category improvements (#37338)
* Change the simplified category upcoming change to Experimental so
admins can try it out
* Delete unused preview-related code for the category UI
* Preserve category permissions when switching between public & private
access toggle

<img width="329" height="245" alt="image"
src="https://github.com/user-attachments/assets/729ba0f9-5e1c-4e71-8b4f-8c26d59bae45"
/>

---------

Co-authored-by: Régis Hanol <regis@hanol.fr>
2026-01-29 09:44:32 +10:00
af3e686989 FEATURE: Simplify category creation, hide settings (#36998)
This commit introduces a new simplified category creation and editing
form, hidden behind a `enable_simplified_category_creation` upcoming
change in the "conceptual" status
right now.

The simplified form allows users to toggle between simple + advanced
mode:

<img width="1106" height="641" alt="image"
src="https://github.com/user-attachments/assets/2ff70db7-280b-4edf-a119-bbb6554a1408"
/>

<img width="1116" height="694" alt="image"
src="https://github.com/user-attachments/assets/79e7e7d7-f7a8-49ee-80de-06f4dcb8a93f"
/>



The aim here is to make it faster for admins to create new categories,
which can be a fairly convoluted process right now. Our future aim
is to have different "types" of category creation flows.

In addition, all other forms in the other category tabs have been
converted
to use FormKit.

---------

Co-authored-by: Martin Brennan <martin@discourse.org>
Co-authored-by: Régis Hanol <regis@hanol.fr>
2026-01-27 14:51:30 +10:00
Derek Rushforth f5b01bc02a UX: New brand styles on wizard (#37229)
This PR aligns the wizard page styles with our latest brand updates.

## Before
<img width="1065" height="1034" alt="Screenshot 2026-01-22 at 11 51
16 AM"
src="https://github.com/user-attachments/assets/cb64346f-6136-46f3-8c5e-f1ddbac29144"
/>


## After
<img width="989" height="1101" alt="Screenshot 2026-01-22 at 11 48
48 AM"
src="https://github.com/user-attachments/assets/6ff7f7e9-6e7e-4422-a36e-0cef27757b39"
/>
2026-01-22 13:26:19 -07:00
Discourse Translator Bot bb8cfb8a65 I18N: Update translations (#37056) 2026-01-12 15:18:57 +01:00
Martin Brennan b2137390da FEATURE: Add floating dismiss on mobile upcoming change (#36747)
Adding "Floating dismiss topics on mobile" experiment.
2026-01-08 13:49:57 +10:00
Martin Brennan 74b9dab90f UX: Migrate experimental_rename_faq_to_guidelines to upcoming change (#36971)
This site setting was hidden anyway, so it is a good candidate to
move to testing upcoming changes. Admins will not see this still
until enable_upcoming_changes is turned on.
2026-01-07 10:55:10 +10:00
Keegan GeorgeandMartin Brennan 0e0e716e0d FEATURE: Ability to star chat channels (#36142)
## 🔍 Overview
This update adds the ability to star chat channels. Starred channels can
include DM channels or chat channels. Once a channel is starred it will
create a new section in the sidebar that can be collapsed/expanded. It
also adds a new tab to the mobile chat interface. Starring channels is a
user specific configuration and will be applied for the current user
rather than site wide.

At the moment this is enabled as an upcoming pre-alpha change by
toggling the settings for the respective groups in the upcoming changes
page:

<img width="986" height="141" alt="Screenshot 2025-11-28 at 14 45 07"
src="https://github.com/user-attachments/assets/1b297701-9135-4b6f-b36b-0805975a7872"/>

## 📹 Preview

### Desktop

https://github.com/user-attachments/assets/a0f84077-65a1-4f23-95f7-ac575c1387fa

### Mobile

https://github.com/user-attachments/assets/15ce190c-a647-4ae8-b552-c67686be56ea

---------

Co-authored-by: Martin Brennan <martin@discourse.org>
2025-12-03 09:25:08 -08:00
Discourse Translator Bot 8b9edc8829 Update translations (#35983) 2025-11-20 14:38:50 +01:00
Martin Brennan 2942ef375d DEV: System specs for image optimization in composer (#36060)
Followup 66cee823ab

Introduces a few basic system specs to verify that image optimization is
working as expected when uploading images via the composer. The specs
check
that images are optimized and that the optimization process completes
successfully
for both png and jpg images.

This PR also improves the formatting of optimization logs, including
adding
information about the original image size in bytes
2025-11-19 11:37:15 +10:00
David Taylor b21d317c64 DEV: Load magnific-popup via npm/webpack (#35250)
This removes our final vendored JS dependency 🎉
2025-10-08 08:28:06 +01:00
David Taylor 843f74e427 DEV: Load chartjs via npm/webpack (#35249) 2025-10-07 21:20:10 +01:00
David Taylor 782e0ea394 DEV: Replace 'squoosh' with jSquash for local media optimization (#35248)
A new webpack entrypoint is created for media-optimization, so that
webpack can take care of bundling up the dependencies. The main Worker
is still hosted in `public/javascripts`, since Workers must be
same-origin.
2025-10-07 19:31:21 +01:00
David Taylor 6c7baf3135 DEV: Stop vendoring pikaday (#35237)
Replace with Webpack-handled async import
2025-10-07 15:52:02 +01:00
Discourse Translator Bot 0bad5c6104 Update translations (#33746) 2025-07-23 00:13:58 +02:00
Discourse Translator Bot 59367ac03f Update translations (#33409) 2025-07-02 22:36:37 +02:00
Penar Musaraj f3c41af772 DEV: Refactor image compression for iOS (#32652) 2025-05-09 09:51:30 -04:00
Joffrey JAFFEUXandDavid Taylor d38acc5df1 DEV: discourse-emojis gem (#31408)
This commit moves most of emoji logic into the discourse-emojis gem:
https://github.com/discourse/discourse-emojis/

Most notably:
- images are now symlinked from the gem
- the gem provides path to the json files

Search aliases have also been made asynchronous and memoized. When you
will search for an emoji we will now load the aliases and store the list
for future use.

---------

Co-authored-by: David Taylor <david@taylorhq.com>
2025-03-03 13:09:08 +01:00
Discourse Translator Bot f0d6e9758d Update translations (#30898) 2025-01-21 15:55:30 +01:00
Discourse Translator Bot 838d7478c1 Update translations (#30062) 2024-12-04 11:59:28 +01:00
Discourse Translator Bot d7503a6153 Update translations (#29715) 2024-11-12 14:54:38 +01:00
Discourse Translator Bot 8a201c1e92 Update translations (#29595) 2024-11-05 16:55:45 +01:00
Jan Cernik b092ccbdc5 UX: Add progress bar to the registration flow (#27694) 2024-08-28 08:43:39 -03:00
Discourse Translator Bot 05e120a9f2 Update translations (#28246) 2024-08-13 16:31:24 +02:00
David Taylor ce3d91f422 DEV: Load @json-editor/json-editor using webpack async import (#27773) 2024-07-10 11:15:42 +01:00
David Taylor a461eaddc3 DEV: Refactor ace-editor loading and bump to latest version (#27772)
- Delete vendored copy
- Create a JS entrypoint under `static/` which imports all the modes/themes/extensions we need
- Create an async `load-ace-editor` entrypoint
- Update `<AceEditor` component to use the new entrypoint
- De-jquery-ify `<AceEditor`
- Bump `v1.4.13` -> `v1.35.2`
2024-07-09 10:09:30 +01:00
David Taylor eadda77edf DEV: Drop diffhtml dependency (#27695)
We switched to morphlex via:

- https://github.com/discourse/discourse/commit/c5f1fc3a08eff7d9df9d2caf3688d1035dbc15d7

- https://github.com/discourse/discourse-ai/commit/bc561eb3324bf7530a42f243450bfca93f6fcb61
2024-07-04 12:24:51 +10:00
Sam cb3456e18f FEATURE: add JavaScript mode to ace (#27586)
This allows plugins to use Ace Editor in JavaScript mode. This will be used in Discourse AI when defining custom tools.
2024-06-24 13:38:24 +10:00
Discourse Translator BotandGerhard Schlager 9d8044a2ee FEATURE: Add Uyghur language (#27183)
Co-authored-by: Gerhard Schlager <gerhard.schlager@discourse.org>
2024-05-27 09:58:18 +02:00
Discourse Translator Bot ec3d29a1fa Update translations (#26136) 2024-03-12 15:40:11 +01:00
Discourse Translator Bot eea7af09fd Update translations (#25914) 2024-02-27 20:50:30 +01:00
Discourse Translator Bot 8eab06cb2f Update translations (#25659) 2024-02-13 16:11:30 +01:00
Discourse Translator Bot 2e0ec679c5 Update translations (#25185) 2024-01-09 15:09:36 +01:00
Kris ec0e802d34 DEV: less generic SVG ids to avoid clash (#25003) 2024-01-05 17:08:31 -05:00
David Taylor fb95ab8e00 DEV: Use webpack to load table-builder dependencies (#25018)
This avoids the need to vendor the JS/CSS in our git repository
2024-01-02 10:47:47 +00:00
Discourse Translator Bot 7d0562f10e Update translations (#24848) 2023-12-12 14:23:51 +01:00
Keegan George d2b53ccac2 DEV: Port discourse-table-builder theme component to core (#24441) 2023-11-30 10:54:29 -08:00
David Taylor 9c01937ec6 FIX: Use correct location for wizard background image (#24183)
Files in `/assets/*` are given digests by sprockets, and we don't have any infrastructure for accessing those URLs in SCSS files. Instead, we should put this image with other similar images in the `public/images` directory, and then use the `absolute-image-url` helper so that it correctly uses the CDN where available.
2023-10-31 15:57:47 +00:00
Jarek RadoszandPenar Musaraj 1251757d48 DEV: Fix random typos (#23801)
Co-authored-by: Penar Musaraj <pmusaraj@gmail.com>
2023-10-05 20:40:53 +02:00
Bianca Nenciu e3d3e34e57 DEV: Update to diffHTML 1.0.0-beta.30 (#23729) 2023-10-03 10:15:17 +03:00
Discourse Translator Bot 93de8c8daa Update translations (#23538) 2023-09-12 15:27:48 +02:00
Bianca Nenciu 6a50d79044 DEV: Update diffhtml to 1.0.0-beta.29 again (#22365)
This reverts commit d40da76c8e.
2023-07-03 19:38:43 +03:00
Jarek Radosz d40da76c8e Revert "DEV: Update diffhtml from 1.0.0-beta.20 to 1.0.0-beta.29 (#22311)" (#22327) 2023-06-28 14:49:20 +02:00
Jarek Radosz 80bd7d7509 DEV: Update diffhtml from 1.0.0-beta.20 to 1.0.0-beta.29 (#22311)
It was already up to date in package.json but wasn't plugged in.
2023-06-28 10:27:42 +02:00
Jarek Radosz 3ceed88854 DEV: Update chartjs-plugin-datalabels from 2.0.0 to 2.2.0 (#22310)
It was already up to date in the package.json but it wasn't "plugged in"
2023-06-28 10:12:12 +02:00
Jarek Radosz d3facec7d0 DEV: Update @json-editor/json-editor (#22308)
Manually tried it out by editing a json_schema setting of a theme component
2023-06-27 23:01:58 +02:00
David Taylor 9c926ce645 PERF: Improve workbox loading strategy (#22019)
Previously workbox JS was vendored into our git repository, and would be loaded from the `public/javascripts` directory with a 1 day cache lifetime. The main aim of this commit is to add 'cachebuster' to the workbox URL so that the cache lifetime can be increased.

- Remove vendored copies of workbox.
- Use ember-cli/broccoli to collect workbox files from node_modules into assets/workbox-{digest}
- Add assets to sprockets manifest so that they're collected from the ember-cli output directory (and uploaded to s3 when configured)

Some of the sprockets-related changes in this commit are not ideal, but we hope to remove sprockets in the not-too-distant future.
2023-06-09 11:14:11 +01:00
Bianca Nenciu 96c6e535a6 FIX: Add removed image that may still be used (#21957)
This image is no longer referenced but existing forums may still
reference it in their welcome topics.
2023-06-07 18:49:44 +03:00
Discourse Translator Bot 791630f08b Update translations (#21583) 2023-05-16 19:40:01 +02:00
Bianca Nenciu b73a9a1faa UX: Various improvements to welcome topic CTA (#21010)
- Update welcome topic copy
- Edit the welcome topic automatically when the title or description changes
- Remove “Create your Welcome Topic” banner/CTA
- Add "edit welcome topic" user tip
2023-05-12 17:09:40 +03:00
Bianca Nenciu ccb345bd88 FEATURE: Update topic/comment embedding parameters (#20181)
This commit implements many changes to topic and comments embedding. It
deprecates the class_name field from EmbeddableHost and suggests using
the className parameter. discourse_username parameter has been
deprecated and it will fetch it from embedded site from the author or
discourse-username meta.

See the updated code sample from Admin > Customize > Embedding page.

* FEATURE: Add className parameter for Discourse embed

* DEV: Hide class_name from EmbeddableHost

* DEV: Deprecate class_name field of EmbeddableHost

* FEATURE: Use either author or discourse-username meta tag

* DEV: Deprecate discourse_username parameter

* DEV: Improve embed code sample
2023-02-28 14:31:59 +02:00