Commit Graph

55076 Commits

Author SHA1 Message Date
Joffrey JAFFEUX
654a42171a
DEV: migrates themes-list-item to gjs (#27870) 2024-07-11 14:36:50 +02:00
Loïc Guitaut
b0480dd34e DEV: Avoid instance variables in specs
Small followup of https://github.com/discourse/discourse/pull/27705
2024-07-11 14:31:20 +02:00
Joffrey JAFFEUX
797f659eed
DEV: removes unused text-overflow (#27865) 2024-07-11 13:45:16 +02:00
Joffrey JAFFEUX
5cdd6d7c37
DEV: migrates username-preference to gjs (#27864) 2024-07-11 13:28:49 +02:00
Joffrey JAFFEUX
015a38d014
DEV: migrates reviewable-claimed-topic to gjs (#27863) 2024-07-11 11:56:13 +02:00
Joffrey JAFFEUX
48f36e52a4
DEV: migrates user-badge to gjs (#27866)
Co-authored-by: Jarek Radosz <jarek@cvx.dev>
2024-07-11 11:55:42 +02:00
Joffrey JAFFEUX
b024e32e74
DEV: removes unused modal-tab (#27869) 2024-07-11 11:55:25 +02:00
Joffrey JAFFEUX
0614279b9d
DEV: migrates user-stat to gjs (#27867) 2024-07-11 11:55:20 +02:00
Joffrey JAFFEUX
6547f78ff8
DEV: migrates reviewable-created-by to gjs (#27862) 2024-07-11 11:54:35 +02:00
Joffrey JAFFEUX
38f80be810
DEV: migrates reviewable-created-by-name to gjs (#27861) 2024-07-11 11:54:17 +02:00
Joffrey JAFFEUX
7b91aff46f
DEV: migrates related-messages to gjs (#27860) 2024-07-11 11:53:55 +02:00
Joffrey JAFFEUX
da1a049144
DEV: migrates pwa-install-banner to gjs (#27859) 2024-07-11 11:53:39 +02:00
Joffrey JAFFEUX
478b096286
DEV: migrates private-message-glyph to gjs (#27858) 2024-07-11 11:53:24 +02:00
Joffrey JAFFEUX
d5dd5bfb55
DEV: migrates empty-state to gjs (#27857)
Technically there was a wrapping div here, but that shouldn't be necessary.
2024-07-11 11:53:05 +02:00
Joffrey JAFFEUX
11713518ef
DEV: removes unused disabled-icon (#27856) 2024-07-11 11:52:52 +02:00
Régis Hanol
8fe73ab404
DEV: better log around nil client_settings_json (#27868)
Internal ref t/132507
2024-07-11 11:30:53 +02:00
David Taylor
374279b93e
DEV: Cleanup ace-editor event listeners (#27844)
- set in constructor so they're guaranteed to be present, even if async-import hasn't finished yet
- ensure they're all cleaned up properly
- combine two cleanup methods into one
2024-07-11 10:14:01 +01:00
Loïc Guitaut
5ec227334a FIX: Don’t list values from disabled plugins
Currently, when a plugin registers a new reviewable type or extends a
list method (through `register_reviewble_type` and `extend_list_method`
respectively), the new array is statically computed and always returns
the same value. It will continue to return the same value even if the
plugin is disabled (it can be a problem in a multisite env too).

To address this issue, this patch changes how `extend_list_method`
works. It’s now using `DiscoursePluginRegistry.define_filtered_register`
to create a register on the fly and store the extra values from various
plugins. It then combines the original values with the ones from the
registry. The registry is already aware of disabled plugins, so when a
plugin is disabled, its registered values won’t be returned.
2024-07-11 10:51:48 +02:00
Alan Guo Xiang Tan
66878a9e80
DEV: Improve logging of Sidekiq errors when logstash logger is enabled (#27855)
This commit improves the logging of Sidekiq errors when
`ENABLE_LOGSTASH_LOGGER` is set to 1. Prior to this change, we would
only log the message and the backtrace. After this change, useful
information like `job.class`, `job.opts`, `job.problem_db`,
`exception.class` and `exception.message` are included in the log line
as well.
2024-07-11 14:17:18 +08:00
Martin Brennan
7b627dc14b
FIX: Office365/Outlook auth method for group SMTP (#27854)
Both office365 and outlook SMTP servers need LOGIN
SMTP authentication instead of PLAIN (which is what
we are using by default). This commit uses that
unconditionally for these servers, and also makes
sure to use STARTTLS for them too.
2024-07-11 16:16:54 +10:00
carson chang
9bb288604d
UX: Remove PluginOutlet spans (#27845) 2024-07-10 20:49:29 -07:00
Robert
d8d3d2184a
FIX: Poll: Show gear button only when there is more than one dropdown item (#27775)
During migration of Poll plugin from widget basis to glimmer, some functionality was inadvertently dropped:

- A single button should appear instead of the dropdown menu when there is only one valid "poll admin" action
- No button should appear when there are no valid "poll admin" actions for current user

This PR restores the original behaviour and adds test coverage (that didn't exist prior to migration, partly why it wasn't caught earlier)

relates to #27204

related meta topic:  https://meta.discourse.org/t/what-is-the-gear-button-under-the-poll-for/315477/2
2024-07-11 11:19:04 +08:00
锦心
8d6a2aad18
UX: Add missing title to notifications-button (#27837)
This commit adds the missing title for notifications-button. In the past, it was automatically fallbacked to the button's key.

Related meta topic: https://meta.discourse.org/t/tracking-toggle-text-on-hover-sometimes-not-translated/315727
2024-07-11 08:37:53 +08:00
dependabot[bot]
8c5553448a
Build(deps): Bump terser from 5.31.1 to 5.31.2 (#27852)
Bumps [terser](https://github.com/terser/terser) from 5.31.1 to 5.31.2.
- [Changelog](https://github.com/terser/terser/blob/master/CHANGELOG.md)
- [Commits](https://github.com/terser/terser/compare/v5.31.1...v5.31.2)

---
updated-dependencies:
- dependency-name: terser
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-11 00:56:45 +02:00
Kris
39187d9814
A11Y: improve notification panel layout for high zoom levels (#27848) 2024-07-10 15:50:34 -04:00
Jordan Vidrine
7439fc73b1
UX: modernize the header drop shadow (#27843) 2024-07-10 14:29:36 -05:00
Kris
c780e764d0
A11Y: usercard resizing for high zoom levels (#27846) 2024-07-10 14:51:56 -04:00
Kris
5b73322c41
A11Y: improve topic entrance aria-label, title (#27842)
Co-authored-by: Jarek Radosz <jradosz@gmail.com>
2024-07-10 14:15:14 -04:00
Kris
0e3ed7ea2a
A11Y: improve topic list table markup for screenreaders (#27808)
Co-authored-by: Jarek Radosz <jradosz@gmail.com>
2024-07-10 13:14:36 -04:00
chapoi
aedff155bd
UX: user page copy change responses -> replies (#27841) 2024-07-10 18:30:14 +02:00
Kris
0ac1a43fef
A11Y: aria-current="page" is more appropriate for navigation bar links (#27835) 2024-07-10 12:24:51 -04:00
Jarek Radosz
8fa61410aa
DEV: Add missing outlet args to glimmer topic list components (#27838) 2024-07-10 17:10:19 +02:00
Jarek Radosz
318dad23c4
DEV: Remove extra whitespace from render-glimmer-container (#27839) 2024-07-10 17:04:18 +02:00
Joffrey JAFFEUX
89bcf955c0
DEV: migrates groups-info to gjs (#27832)
Co-authored-by: Jarek Radosz <jarek@cvx.dev>
2024-07-10 16:14:04 +02:00
Joffrey JAFFEUX
52ea5c7eb0
DEV: migrates user-summary-section to gjs (#27834) 2024-07-10 16:13:33 +02:00
Régis Hanol
d2873d9775
DEV: wait a bit for chat message to persist (#27830)
Internal ref t/132745
2024-07-10 16:11:50 +02:00
Joffrey JAFFEUX
67c3f29486
DEV: removes hidden-details component (#27833)
Not used anywhere
2024-07-10 16:05:45 +02:00
dependabot[bot]
322db8adb5
Build(deps): Bump faraday from 2.9.2 to 2.10.0 (#27781)
Bumps [faraday](https://github.com/lostisland/faraday) from 2.9.2 to 2.10.0.
- [Release notes](https://github.com/lostisland/faraday/releases)
- [Changelog](https://github.com/lostisland/faraday/blob/main/CHANGELOG.md)
- [Commits](https://github.com/lostisland/faraday/compare/v2.9.2...v2.10.0)

---
updated-dependencies:
- dependency-name: faraday
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-10 14:50:14 +02:00
Jarek Radosz
a4309e5543
DEV: Add logger to default gems list (#27828)
…and sort both lists alphabetically

(unlocks #27781)
2024-07-10 14:36:13 +02:00
dependabot[bot]
3f2a0e26db
Build(deps): Bump @json-editor/json-editor from 2.10.0 to 2.15.1 (#27824)
Bumps [@json-editor/json-editor](https://github.com/json-editor/json-editor) from 2.10.0 to 2.15.1.
- [Changelog](https://github.com/json-editor/json-editor/blob/master/CHANGELOG.md)
- [Commits](https://github.com/json-editor/json-editor/compare/2.10.0...2.15.1)

---
updated-dependencies:
- dependency-name: "@json-editor/json-editor"
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-10 12:41:34 +01:00
dependabot[bot]
c4bc645717
Build(deps-dev): Bump ember-cli from 5.9.0 to 5.10.0 (#27776)
Bumps [ember-cli](https://github.com/ember-cli/ember-cli) from 5.9.0 to 5.10.0.
- [Release notes](https://github.com/ember-cli/ember-cli/releases)
- [Changelog](https://github.com/ember-cli/ember-cli/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ember-cli/ember-cli/compare/v5.9.0...v5.10.0)

---
updated-dependencies:
- dependency-name: ember-cli
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-10 12:28:45 +01:00
David Taylor
a4aebc83ac
DEV: Add simple test for json-schema-editor and remove extra await (#27827)
Followup to ce3d91f422
2024-07-10 12:22:31 +01:00
dependabot[bot]
55e5cd3b96
Build(deps-dev): Bump rubocop from 1.64.1 to 1.65.0 (#27825)
Bumps [rubocop](https://github.com/rubocop/rubocop) from 1.64.1 to 1.65.0.
- [Release notes](https://github.com/rubocop/rubocop/releases)
- [Changelog](https://github.com/rubocop/rubocop/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop/compare/v1.64.1...v1.65.0)

---
updated-dependencies:
- dependency-name: rubocop
  dependency-type: indirect
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-10 13:00:50 +02:00
dependabot[bot]
0cecb6c053
Build(deps-dev): Bump parser from 3.3.3.0 to 3.3.4.0 (#27826)
Bumps [parser](https://github.com/whitequark/parser) from 3.3.3.0 to 3.3.4.0.
- [Changelog](https://github.com/whitequark/parser/blob/master/CHANGELOG.md)
- [Commits](https://github.com/whitequark/parser/compare/v3.3.3.0...v3.3.4.0)

---
updated-dependencies:
- dependency-name: parser
  dependency-type: indirect
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-07-10 13:00:39 +02:00
David Taylor
ce3d91f422
DEV: Load @json-editor/json-editor using webpack async import (#27773) 2024-07-10 11:15:42 +01:00
Jarek Radosz
270a0d9e0f
DEV: Clean up package.json/yarn.lock (#27823)
* DEV: Remove msgf/core from the root package.json

* run yarn install

* yarn-deduplicate && yarn
2024-07-10 10:40:13 +01:00
Loïc Guitaut
ab99f31760 DEV: Fix the I18n integrity spec
Before Rails 7.1, the `config.i18n.raise_on_missing_translations` option
was raising only in controllers and views, now it’s anywhere in the app.
It means it raises each time `#description` is called for a setting that
is missing a proper description (and we have a ton of them). Most of the
time it’s fine, as those are usually settings that aren’t shown to the
user.

We can’t just let the code blow up every time there’s a setting with a
missing description, that’s why it’s currently returning an empty
string when the translation is missing.

However, this silently broke our I18n integrity spec that was relying on
the old “Translation missing” message to detect missing translations.

This patch addresses this issue by checking the description isn’t an
empty string. It caught a missing translation by the way.
2024-07-10 11:39:13 +02:00
Loïc Guitaut
8b067230ef DEV: Fix a missing dependency to @messageformat/core 2024-07-10 10:59:00 +02:00
Régis Hanol
758b9dd0ba
FEATURE: email attachments in a details (#27804)
This change how we present attachments from incoming emails to now be "hidden" in a "[details]" so they don't "hang" at the end of the post.

This is especially useful when using Discourse as a support tool where email is the main communication channel. For various reasons, images are often duplicated by email user agents, and hiding them behind the details block help keep the conversation focused on the isssue at hand.

Internal ref t/122333
2024-07-10 09:59:27 +02:00
Loïc Guitaut
301713ef96 DEV: Upgrade the MessageFormat library (JS)
This patch upgrades the MessageFormat library to version 3.3.0 from
0.1.5.

Our `I18n.messageFormat` method signature is unchanged, and now uses the
new API under the hood.

We don’t need dedicated locale files for handling pluralization rules
anymore as everything is now included by the library itself.

The compilation of the messages now happens through our
`messageformat-wrapper` gem. It then outputs an ES module that includes
all its needed dependencies.

Most of the changes happen in `JsLocaleHelper` and in the `ExtraLocales`
controller.

A new method called `.output_MF` has been introduced in
`JsLocaleHelper`. It handles all the fetching, compiling and
transpiling to generate the proper MF messages in JS. Overrides and
fallbacks are also handled directly in this method.

The other main change is that now the MF translations are served through
the `ExtraLocales` controller instead of being statically compiled in a
JS file, then having to patch the messages using overrides and
fallbacks. Now the MF translations are just another bundle that is
created on the fly and cached by the client.
2024-07-10 09:51:25 +02:00