Commit Graph

56948 Commits

Author SHA1 Message Date
Renato Atilio
4a5a499d94
DEV: refactor textarea from autocomplete (#29988)
Extracts the dependency we had on specifics of a textarea in our Autocomplete, this approach uses a TextareaTextManipulation, particularly the value getter, getCaretPosition, getCaretCoords, replaceText, and inCodeBlock.
2024-12-05 16:09:06 -03:00
Renato Atilio
e37952c9db
DEV: refactor placeholder handling from UppyComposerUpload (#29976)
Extracts the textual upload placeholder handle logic from UppyComposerUpload to a new TextareaPlaceholderHandler class, implicitly instantiated by TextareaTextManipulation.
2024-12-05 15:07:55 -03:00
Sérgio Saquetim
8ce6aa3e7d
DEV: Ensure composer opens properly when the post topic is not yet loaded (#30114)
This PR fixes an error that would be thrown in some edge cases where the composer is opened for a post instance without an associated topic model already loaded.

An example of such edge cases would be, a plugin trying to edit a post outside the topic view.

This was causing an error that would prevent the composer from being opened.
2024-12-05 14:21:29 -03:00
Mark VanLandingham
68e57190df
DEV: Allow freeze_original argument in topics controller & JS transformer (#30120)
PostMover has a new option called freeze_original implemented in this commit. It was previously unexposed in the controller. This PR permits the param in the controller, and passes it into PostMover.

Also, this applies a value transformer for move/merge payload options. In addition a plugin outlet in the move post modal. This allows plugins to add content to the modal, which can modify the payload (and use the freeze_original argument for example)
2024-12-05 08:31:05 -06:00
Juan David Martínez Cubillos
555ca4da55
DEV: Add plugin wrapper to avoid template override in plugins (#30004)
* DEV: Add plugin wrapper to avoid template override in plugins

* added plugin wrapper

* linter issues

* added suggested change

Co-authored-by: Jarek Radosz <jradosz@gmail.com>

* added suggested changes

---------

Co-authored-by: Jarek Radosz <jradosz@gmail.com>
2024-12-05 09:05:16 -05:00
Joffrey JAFFEUX
5ad09f7564
DEV: adds default option to form-kit select (#30126)
This commit will now show a "Select..." option when no value selected and a "None" option when a value is selected, as the first row. It ensures that people don't think a value is selected when it's actually just the html select showing the first available option.
2024-12-05 13:52:22 +01:00
Ella E.
c817a94c89
UX: Move revoked API key status to dedicated column (#30125)
* DEV: add table heading for status

* UX: Move revoked status to its own column with a badge; remove revoked icon

* UX: Increase text contrast for revoked rows
2024-12-05 04:24:01 -07:00
dependabot[bot]
59413e72d4
Build(deps-dev): Bump puppeteer-core from 23.10.0 to 23.10.1 (#30112)
Bumps [puppeteer-core](https://github.com/puppeteer/puppeteer) from 23.10.0 to 23.10.1.
- [Release notes](https://github.com/puppeteer/puppeteer/releases)
- [Changelog](https://github.com/puppeteer/puppeteer/blob/main/release-please-config.json)
- [Commits](https://github.com/puppeteer/puppeteer/compare/puppeteer-core-v23.10.0...puppeteer-core-v23.10.1)

---
updated-dependencies:
- dependency-name: puppeteer-core
  dependency-type: direct:development
  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-12-05 12:17:30 +01:00
dependabot[bot]
b4e95d7157
Build(deps): Bump @babel/standalone in the babel group (#30111)
Bumps the babel group with 1 update: [@babel/standalone](https://github.com/babel/babel/tree/HEAD/packages/babel-standalone).


Updates `@babel/standalone` from 7.26.2 to 7.26.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.26.3/packages/babel-standalone)

---
updated-dependencies:
- dependency-name: "@babel/standalone"
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: babel
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-12-05 12:17:14 +01:00
David Battersby
4e8a1487ca
UX: make channel name bold for unread threads (#30127)
Channels with unread threads should have a font weight of bold to match unread channels.
2024-12-05 14:17:31 +04:00
David Battersby
b3c94839ed
FIX: improve chat channel sorting for DMs (#30124)
This change sorts unread channels in descending order based on last message date, so channels with the latest activity will always appear at the top. It also adds some improvements for sorting channels with unread threads, now when multiple channels have unread threads, they will be sorted by last thread reply date to ensure more active channels rise to the top.

For DM channels, the order is now:

- Urgent (green badge) - unread messages, mentions and unread watched threads (most recent activity at top)
- Unread (blue badge) - unread tracked threads (most recent thread reply at top)
- Everything else (most recent message at top)
2024-12-05 13:33:55 +04:00
Kelv
1ca90c3070
DEV: update more deprecated font awesome icon names (#30123)
* update more deprecated font awesome icon names

* add migration to remove deprecated default for badges.icon
2024-12-05 15:20:02 +08:00
Martin Brennan
8a89a77248
FIX: Discard empty bundles for reviewables (#30121)
Followup c7e471d35a

It is currently possible to add a bundle (which is a collection
of actions used for a dropdown on the client) for a reviewable
via actions.add_bundle and then never add any actions to it.

This causes the client to explode, as seen in the referenced
commit, because of the way our store expects to resolve objects
referenced by ID that are passed down by the serializer, which
then causes Ember to have an unrecoverable render error.

Fixing this on the serializer level is not really possible because
of all the ActiveModel::Serializer magic that serializes
objects by ID reference when doing things like has_many.
`Reviewable#actions_for` is a better place to do this anyway,
because this is the main location where the bundles and actions
are built for every action via the serializer.
2024-12-05 15:41:13 +10:00
Kelv
dd0b4e26a7
DEV: update fa6 icons to drop fa prefix (#30100)
* remove fa- part of prefix from font awesome icon names
2024-12-05 10:00:41 +08:00
Gary Pendergast
bb2e9645f2
FIX: Move granted badges to the end of the post header. (#30095) 2024-12-05 09:22:03 +11:00
dependabot[bot]
111a922a69
Build(deps): Bump google-protobuf from 4.29.0 to 4.29.1 (#30119)
Bumps [google-protobuf](https://github.com/protocolbuffers/protobuf) from 4.29.0 to 4.29.1.
- [Release notes](https://github.com/protocolbuffers/protobuf/releases)
- [Changelog](https://github.com/protocolbuffers/protobuf/blob/main/protobuf_release.bzl)
- [Commits](https://github.com/protocolbuffers/protobuf/commits)

---
updated-dependencies:
- dependency-name: google-protobuf
  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-12-05 06:19:39 +08:00
dependabot[bot]
8d39830983
Build(deps): Bump useragent from 0.16.10 to 0.16.11 (#30117)
Bumps [useragent](https://github.com/gshutler/useragent) from 0.16.10 to 0.16.11.
- [Commits](https://github.com/gshutler/useragent/compare/v0.16.10...v0.16.11)

---
updated-dependencies:
- dependency-name: useragent
  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-12-05 06:19:25 +08:00
dependabot[bot]
3b27ef9bbd
Build(deps-dev): Bump @swc/core from 1.9.3 to 1.10.0 (#30113)
Bumps [@swc/core](https://github.com/swc-project/swc) from 1.9.3 to 1.10.0.
- [Release notes](https://github.com/swc-project/swc/releases)
- [Changelog](https://github.com/swc-project/swc/blob/main/CHANGELOG.md)
- [Commits](https://github.com/swc-project/swc/compare/v1.9.3...v1.10.0)

---
updated-dependencies:
- dependency-name: "@swc/core"
  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-12-05 06:18:46 +08:00
dependabot[bot]
c8c54bdc52
Build(deps): Bump minitest from 5.25.3 to 5.25.4 (#30115)
Bumps [minitest](https://github.com/minitest/minitest) from 5.25.3 to 5.25.4.
- [Changelog](https://github.com/minitest/minitest/blob/master/History.rdoc)
- [Commits](https://github.com/minitest/minitest/compare/v5.25.3...v5.25.4)

---
updated-dependencies:
- dependency-name: minitest
  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-12-05 06:18:19 +08:00
dependabot[bot]
a13eb7ce3c
Build(deps-dev): Bump sqlite3 from 2.3.1 to 2.4.0 (#30118)
Bumps [sqlite3](https://github.com/sparklemotion/sqlite3-ruby) from 2.3.1 to 2.4.0.
- [Release notes](https://github.com/sparklemotion/sqlite3-ruby/releases)
- [Changelog](https://github.com/sparklemotion/sqlite3-ruby/blob/main/CHANGELOG.md)
- [Commits](https://github.com/sparklemotion/sqlite3-ruby/compare/v2.3.1...v2.4.0)

---
updated-dependencies:
- dependency-name: sqlite3
  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-12-05 06:17:53 +08:00
Kris
19f530a827
UX: refactor title editing CSS to improve layout (#30109) 2024-12-04 16:30:48 -05:00
Régis Hanol
f75c43713b
FEATURE: bump DM limits from 20 to 50 (#30102)
So people who are having a **lot** of 1-1/group conversations in #chat can have even more 😅

Internal ref - t/143226/8
2024-12-04 16:34:28 +01:00
Kris
5c2e05cf5d
UX: fix topic map padding in low-content situations (#30101) 2024-12-04 09:39:14 -05:00
Joffrey JAFFEUX
3ddb1cfbad
FIX: ensures tabbing from trigger focus content (#30064)
`DMenu` is using in-element, which means the content is detached from the trigger, and pressing tab from the trigger is not going to jump into the content. This commit catches the tab event and attempts to focus the first focusable element of the content.
2024-12-04 12:46:02 +01:00
Régis Hanol
d2d8fbcf3b
FIX: properly quote videos (#30099)
Follow up to f294f984cf

All that was needed was a little fix to our markdown engine to use the
"image src" as the "video src" when the "data video src" was not
defined.

That way we can use the regular image markdown with the "|video" option
(?).
2024-12-04 12:39:38 +01:00
Régis Hanol
1ce12ae718
DEV: Deleted the "ChatComposerPresenceManager"... (#30098)
...since it was mostly duplicating the work the "ComposerPresenceManager" was doing.

So now the #chat composer uses the same "presence manager" as the composer, benefiting from the "hide presence" checks, with the only difference that the "keep alive" timeout is 5s for chat and 10s for topics/posts.
2024-12-04 12:21:55 +01:00
Discourse Translator Bot
838d7478c1
Update translations (#30062) 2024-12-04 11:59:28 +01:00
Régis Hanol
f294f984cf
FIX: unable to quote video (#30077)
This replaces the video container / thumbnail with a proper "<video>" element when quoting a video.

It's not the best UX, especially when "morphing" is disabled.

Needs more work.

Internal ref - t/143321
2024-12-04 11:56:28 +01:00
Régis Hanol
3e7f0867ea
FIX: whisper's presence channels (#30097)
In 0993273 we introduced the `whisper_allowed_group_ids` to allow whispers to more users than "staff".

The presence plugin hadn't been updated to account for this change.
2024-12-04 11:47:05 +01:00
Martin Brennan
ad7a64b983
DEV: Remove backtrace warning (#30093)
Followup aca6c462a6

Remove the warning message if DISCOURSE_INCLUDE_GEMS_IN_RSPEC_BACKTRACE
is not set for now while we decide whether we want to include
this or not, it's a little in-your-face.
2024-12-04 14:14:36 +10:00
Krzysztof Kotlarek
28b4ff6cb6
FIX: update flag reason message with default value (#30026)
Currently only system flags are translated. When we send message to the user that their post was deleted because of custom flag, we should default to custom flag name.
2024-12-04 14:46:52 +11:00
Martin Brennan
9c5eb7952e
UX: Improve error when trying to edit globally shadowed setting (#30092)
Previously when attempting to edit a globally shadowed setting, the
error message was not very helpful, it said "You are not allowed to
change hidden settings". This commit changes the error message to
reflect the actual problem, which is that the setting is shadowed by
a global setting via ENV var.
2024-12-04 13:41:32 +10:00
Selase Krakani
8e2505c0e0
FEATURE: Add --sql-only option to discourse backup (#30009)
This change allows backup CLI user to explicitly  exclude uploads from
the generated backup
2024-12-04 03:16:25 +00:00
Kris
60826162b5
A11Y: remove redundant alt text from github oneboxes (#30083) 2024-12-04 12:25:03 +11:00
dependabot[bot]
545cafe657
Build(deps): Bump @faker-js/faker from 9.2.0 to 9.3.0 (#30078) 2024-12-04 01:30:39 +01:00
dependabot[bot]
313eddec7f
Build(deps-dev): Bump qunit from 2.22.0 to 2.23.0 (#30079) 2024-12-04 01:30:03 +01:00
Juan David Martínez Cubillos
7b70905326
FIX: Sanitization issue when replacing default emoji with custom emoji that contains or ~/Discourse/discourse symbols (#30053) 2024-12-03 19:27:12 -05:00
Martin Brennan
45c9d1d81f
FIX: Remove some mandatory_values for reserved_usernames (#30089)
Followup 56df077931

This removes info, support, and community as mandatory
values for the reserved_usernames site setting. These
could arguably be useful for admins generally. The rest
can stay as-is as they are much more likely to be
confusing to members.

c.f. https://meta.discourse.org/t/default-reserved-usernames-can-not-be-deleted/336020
2024-12-04 10:19:15 +10:00
dependabot[bot]
216e73eb3b
Build(deps-dev): Bump rubocop from 1.69.0 to 1.69.1 (#30072) 2024-12-04 00:55:32 +01:00
Martin Brennan
aca6c462a6
DEV: Improve rspec gem backtrace exclusion ENV vars (#30056)
Followup:

* https://github.com/discourse/discourse/pull/28160
* https://github.com/discourse/discourse/pull/25921

In the previous PRs we added 2 environent variables
to control backtrace output for errors in rspec,
`RSPEC_EXCLUDE_NOISE_IN_BACKTRACE`, and
`RSPEC_EXCLUDE_GEMS_IN_BACKTRACE`

These largely do the same thing, and we want to enable
that behaviour by default.

This commit consolidates them into one env var,
`DISCOURSE_INCLUDE_GEMS_IN_RSPEC_BACKTRACE`, which is
disabled by default, meaning gem backtraces will not
be shown in rspec backtraces by default.

Also for the request spec use case with `RspecErrorTracker`,
we now show an indicator of how many lines were hidden from
the backtrace e.g. "...(21 framework line(s) excluded)",
and for this and the normal rspec backtrace exclusion we
show a warning if `DISCOURSE_INCLUDE_GEMS_IN_RSPEC_BACKTRACE`
is not enabled.
2024-12-04 09:54:11 +10:00
dependabot[bot]
9541c9bf18
Build(deps-dev): Bump puppeteer-core from 23.9.0 to 23.10.0 (#30080) 2024-12-04 00:53:22 +01:00
dependabot[bot]
92aff52266
Build(deps): Bump json from 2.8.2 to 2.9.0 (#30071) 2024-12-04 00:51:19 +01:00
dependabot[bot]
4a7ed8b9f8
Build(deps-dev): Bump rspec-support from 3.13.1 to 3.13.2 (#30075) 2024-12-04 00:49:59 +01:00
dependabot[bot]
9b87e688ef
Build(deps): Bump minitest from 5.25.2 to 5.25.3 (#30074) 2024-12-04 00:48:08 +01:00
dependabot[bot]
cb82d798ef
Build(deps-dev): Bump webpack from 5.96.1 to 5.97.0 (#30082) 2024-12-04 00:45:25 +01:00
Mark VanLandingham
a5636afb08
DEV: Add posts_moved DiscourseEvent in PostMover (#30066) 2024-12-03 13:16:20 -06:00
Kris
c67d3131aa
UX: adjust mobile chat text title alignment (#30065) 2024-12-03 14:11:33 -05:00
Jarek Radosz
94697467af
DEV: Add topic-list-item-class transformer (#30008) 2024-12-03 14:22:13 +01:00
Jarek Radosz
48323230a4
FIX: Stick to then/finally in history-store (#30061)
async/await doesn't play well with transitions (to be investigated… later)
2024-12-03 14:13:26 +01:00
David Taylor
c3e87b5036
UX: Only add user-badge-buttons wrapper when badges exist (#30060)
Followup to 2513339955
2024-12-03 13:12:44 +00:00