Commit Graph

56557 Commits

Author SHA1 Message Date
Martin Brennan c3f99c8634
DEV: Fix admin confirmation flaky spec (#29456) 2024-10-30 04:59:51 +10:00
Bianca Nenciu 9a80d71882
FEATURE: Add links to subcategories page on category page (#29474)
This applies only to the optimized category page style.
2024-10-29 20:47:46 +02:00
David Taylor 5cc531ed75
DEV: Update jsconfig, add glint config, add basic check in CI (#28667)
This switches us back to the 'unstable' version of Glint, which is 'Volar' under the covers. While it's still a work-in-progress, it already works much better for us than the 'stable' version of Glint.

The CI check makes sure that we don't re-introduce any ts/glint-incompatible changes in future (e.g. object literal property decorators).
2024-10-29 16:55:31 +00:00
Jan Cernik e5ac69fd65
DEV: Revert flaky specs fix attempts (#29472) 2024-10-29 13:37:37 -03:00
Ella E. 921e7b275b
UX: Move BackButton outside admin-config-area to prevent unintended wrapping (#29457) 2024-10-29 10:23:54 -06:00
Osama Sayegh 2ffe413b0b
FEATURE: Enable the new /about page for everyone (#29390)
This commit removes the feature flag for the new /about page, enabling it for all sites, and removes the code for old the /about page.

Internal topic: t/140413.
2024-10-29 18:40:11 +03:00
Jarek Radosz cc447a1ae3
DEV: Simplify TopicNotificationsButton (#29465) 2024-10-29 16:27:23 +01:00
dependabot[bot] 5a56f6fe01
Build(deps-dev): Bump lefthook from 1.8.1 to 1.8.2 (#29470)
Bumps [lefthook](https://github.com/evilmartians/lefthook) from 1.8.1 to 1.8.2.
- [Release notes](https://github.com/evilmartians/lefthook/releases)
- [Changelog](https://github.com/evilmartians/lefthook/blob/master/CHANGELOG.md)
- [Commits](https://github.com/evilmartians/lefthook/compare/v1.8.1...v1.8.2)

---
updated-dependencies:
- dependency-name: lefthook
  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-10-29 16:26:25 +01:00
David Taylor 1706e87e9d
DEV: clear asset cache when plugins add/remove client.*.yml files (#29468)
Our sprockets-based locale pipeline correctly `depends_on` client.*.yml files which already exist. But sprockets does not provide a way to watch for the creation of new files matching a certain path. This commit works around that limitation by adding the set of client.*.yml files to our global cache-clearing logic
2024-10-29 15:17:59 +00:00
Loïc Guitaut 2f334964f2 DEV: Remove hash-like access from service contracts
We decided to keep only one way to access values from a contract. This
patch thus removes the hash-like access from contracts.
2024-10-29 16:02:51 +01:00
Discourse Translator Bot 4d0ed2e146
Update translations (#29467) 2024-10-29 15:31:41 +01:00
David Battersby 35f441739c
UX: fix emoji alignment in chat members user status (#29466)
Improves layout of channel members list with user status emojis.
2024-10-29 17:18:09 +04:00
Loïc Guitaut c78211cf8d DEV: Make service contracts immutable
We decided to make contracts immutable once their validations have run.
Indeed, it doesn’t make a lot of sense to modify a contract value
outside the contract itself.

If processing is needed, then it should happen inside the contract
itself.
2024-10-29 12:23:35 +01:00
Jarek Radosz 6d918c6307
UX: Remove the admin menu button from expanded mobile timeline (#29464) 2024-10-29 12:12:00 +01:00
David Taylor b364a13ad3
DEV: Update dynamic component hbs syntax (#29445)
The block form of `{{#component` is not supported by Glint tooling. They recommend using this `{{#let`-based syntax to achieve the same result
2024-10-29 11:11:10 +00:00
David Taylor 336d98732d
DEV: Correct test following 7af72804 (#29463)
Looks like the test was previously asserting the broken behaviour 🤦‍♂️
2024-10-29 10:47:57 +00:00
Akshay Birajdar a1c9486e3f
FIX: Missing glimmer topic list focus actions on mobile (#29421) 2024-10-29 11:26:05 +01:00
Jarek Radosz a236e368e4
DEV: Use `helperFn` in d-presence (#29461) 2024-10-29 11:21:33 +01:00
Natalie Tay 7af728048c
FIX: Copy upon getting logged out (#29462) 2024-10-29 18:19:54 +08:00
Jarek Radosz ecdf199585
DEV: Refactor composer-/topic-presence-display (#29455)
Re-land #29262 as the d-shared-edits incompatibility has now been resolved. This reverts commit a59c07fc45.
2024-10-29 10:44:05 +01:00
Jarek Radosz ffd3500f0b
DEV: Remove unused component args (#29454) 2024-10-29 10:43:55 +01:00
chapoi 04aed79028
UX: lower copy link z-index (#29458) 2024-10-29 10:35:14 +01:00
David Battersby 7bcd46b87d
DEV: use service worker for chat sound (#29388)
This change makes use of service workers to determine if we should play chat sounds in the current browser tab. Since users can have multiple tabs open, we currently attempt to play sound across all active tabs.

With this change we iterate over all clients and check if client.focused is true (ie. the current tab/window we have open), if so we allow playing the audio in the current tab and for all other hidden tabs/windows we return false.

---------

Co-authored-by: Bianca Nenciu <nbianca@users.noreply.github.com>
2024-10-29 13:15:53 +04:00
Jordan Vidrine f902e0fdd7
UX: Look and feel changes (#29245)
This PR:

- Removes components from being displayed in the card
- Adds a DMenu to house previous footer actions
- Allows themes to be updated from this grid, with an animation and different border to show the update is happening
- Stops position of cards changing when default changes
- Fixes outline colour not changing when default changes
- Show a global notice on the page when previewing a theme
- Allows updating a theme from the grid, and showing an indicator of what theme needs to be updated
- Moves "Set as default" to the dropdown for the theme
- Show screenshot for theme if it is available
- Prevent page reloading when updating the theme
- Fixes theme install modal on grid page
- Temporarily remove sorting of default theme to the top
2024-10-29 12:25:17 +10:00
Sam 4d7f70b923
FEATURE: do not insert smart list if SHIFT+Enter is pressed (#29452)
A common pattern in the industry for bypassing smart lists is detection of
the shift key.

This information is not available in the "beforeinput" event but it always
fires afer keydown, so we track if shift is pressed on keydown.
2024-10-29 09:18:52 +10:00
Krzysztof Kotlarek 0839bce7b6
DEV: allow the plugin to register valid site setting areas (#29432)
In this PR, we defined the ability to group site settings by area - https://github.com/discourse/discourse/pull/28570

Plugins should be able to register in their own areas.
2024-10-29 09:40:31 +11:00
dependabot[bot] 4529b0614c
Build(deps-dev): Bump puppeteer-core from 23.6.0 to 23.6.1 (#29449)
Bumps [puppeteer-core](https://github.com/puppeteer/puppeteer) from 23.6.0 to 23.6.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.6.0...puppeteer-core-v23.6.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-10-28 23:23:30 +01:00
dependabot[bot] 0f669df43a
Build(deps): Bump nio4r from 2.7.3 to 2.7.4 (#29450)
Bumps [nio4r](https://github.com/socketry/nio4r) from 2.7.3 to 2.7.4.
- [Release notes](https://github.com/socketry/nio4r/releases)
- [Changelog](https://github.com/socketry/nio4r/blob/main/changes.md)
- [Commits](https://github.com/socketry/nio4r/compare/v2.7.3...v2.7.4)

---
updated-dependencies:
- dependency-name: nio4r
  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-10-28 23:22:32 +01:00
David Taylor 9230d4e7f2
DEV: Update remaining mixins to remove object-literal decorators (#29444)
These are unsupported by modern tooling (including ts/glint parsers), so we are working to remove them. The easiest path for mixins is to switch back to the mega-legacy EmberObject syntax for computed/on)
2024-10-28 19:38:52 +00:00
David Taylor 2aed7606a7
DEV: Remove final object-literal decorator from plugin-api-test (#29446) 2024-10-28 19:38:17 +00:00
Ella E. 311c042700
UX: Add description config area card (#29418)
* DEV: add a description to the config area card component

* UX: update strings and placeholders for your org config area card
2024-10-28 09:39:51 -06:00
David Taylor de16947b9b
DEV: Update emoji-picker.js to native class syntax (#29438) 2024-10-28 15:27:49 +00:00
Kris f371258b42
UX: Give ranked choice polls distinctive bullets in preview (#29439) 2024-10-28 11:10:37 -04:00
David Taylor 8ee00dcbd0
DEV: Update tests to remove/ignore classic-class uses (#29440)
In preparation for https://github.com/discourse/discourse/pull/28610
2024-10-28 15:04:29 +00:00
David Taylor 92a4b17ad8
DEV: Tweak uppy dependency config (#29436)
- Remove pnpm peerdep exception. We're now up-to-date, and the issue is resolved

- Configure Dependabot to group future updates
2024-10-28 14:18:33 +00:00
Kris ca693b53eb
UX: limit user-card focus ring to desktop (#29435) 2024-10-28 10:10:03 -04:00
David Taylor aa89acbda6
DEV: Upgrade Uppy to v4 (#29397)
Key changes include:

- `@uppy/aws-s3-multipart` is now part of `@uppy/aws-s3`, and controlled with a boolean

- Some minor changes/renames to Uppy APIs

- Uppy has removed batch signing from their S3 multipart implementation. This commit implements a batching system outside of Uppy to avoid needing one-signing-request-per-part

- Reduces concurrent part uploads to 6, because S3 uses HTTP/1.1 and browsers limit concurrent connections to 6-per-host.

- Upstream drop-target implementation has changed slightly, so we now need `pointer-events: none` on the hover element
2024-10-28 14:01:44 +00:00
dependabot[bot] 27c20eeacd
Build(deps): Bump the rails group with 6 updates (#29402)
Bumps the rails group with 6 updates:

| Package | From | To |
| --- | --- | --- |
| [actionmailer](https://github.com/rails/rails) | `7.1.4.1` | `7.1.4.2` |
| [actionpack](https://github.com/rails/rails) | `7.1.4.1` | `7.1.4.2` |
| [actionview](https://github.com/rails/rails) | `7.1.4.1` | `7.1.4.2` |
| [activerecord](https://github.com/rails/rails) | `7.1.4.1` | `7.1.4.2` |
| [activesupport](https://github.com/rails/rails) | `7.1.4.1` | `7.1.4.2` |
| [railties](https://github.com/rails/rails) | `7.1.4.1` | `7.1.4.2` |


Updates `actionmailer` from 7.1.4.1 to 7.1.4.2
- [Release notes](https://github.com/rails/rails/releases)
- [Changelog](https://github.com/rails/rails/blob/v7.2.1.2/actionmailer/CHANGELOG.md)
- [Commits](https://github.com/rails/rails/compare/v7.1.4.1...v7.1.4.2)

Updates `actionpack` from 7.1.4.1 to 7.1.4.2
- [Release notes](https://github.com/rails/rails/releases)
- [Changelog](https://github.com/rails/rails/blob/v7.2.1.2/actionpack/CHANGELOG.md)
- [Commits](https://github.com/rails/rails/compare/v7.1.4.1...v7.1.4.2)

Updates `actionview` from 7.1.4.1 to 7.1.4.2
- [Release notes](https://github.com/rails/rails/releases)
- [Changelog](https://github.com/rails/rails/blob/v7.2.1.2/actionview/CHANGELOG.md)
- [Commits](https://github.com/rails/rails/compare/v7.1.4.1...v7.1.4.2)

Updates `activerecord` from 7.1.4.1 to 7.1.4.2
- [Release notes](https://github.com/rails/rails/releases)
- [Changelog](https://github.com/rails/rails/blob/v7.2.1.2/activerecord/CHANGELOG.md)
- [Commits](https://github.com/rails/rails/compare/v7.1.4.1...v7.1.4.2)

Updates `activesupport` from 7.1.4.1 to 7.1.4.2
- [Release notes](https://github.com/rails/rails/releases)
- [Changelog](https://github.com/rails/rails/blob/v7.2.1.2/activesupport/CHANGELOG.md)
- [Commits](https://github.com/rails/rails/compare/v7.1.4.1...v7.1.4.2)

Updates `railties` from 7.1.4.1 to 7.1.4.2
- [Release notes](https://github.com/rails/rails/releases)
- [Changelog](https://github.com/rails/rails/blob/v7.2.1.2/railties/CHANGELOG.md)
- [Commits](https://github.com/rails/rails/compare/v7.1.4.1...v7.1.4.2)

---
updated-dependencies:
- dependency-name: actionmailer
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: rails
- dependency-name: actionpack
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: rails
- dependency-name: actionview
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: rails
- dependency-name: activerecord
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: rails
- dependency-name: activesupport
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: rails
- dependency-name: railties
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: rails
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-10-28 11:07:29 +00:00
Gary Pendergast fc51233a83
DEV: Update Gemfile.lock for MacOS 15 on x86 (#29433) 2024-10-28 11:06:41 +00:00
Martin Brennan 27bdfb6437
FEATURE: Add user preference to disable smart lists (#29434)
Followup 30fdd7738e

Adds a new site setting and corresponding user preference
to disable smart lists. By default they are enabled, because
this is a better experience for most users. A small number of
users would prefer to not have this enabled.

Smart lists automatically append new items to each
list started in the composer when enter is pressed. If
enter is pressed on an empty list item, it is cleared.

This setting will be removed when the new composer is complete.
2024-10-28 14:18:15 +10:00
Martin Brennan 456fbb1dbf
FEATURE: Allow themes to define screenshots (#29079)
This commit allows themes to define up to 2 screenshots
in about.json. These should be paths within the theme's
git repository, images with a 1MB max file size and max width 3840x2160.

These screenshots will be downloaded and stored against a theme
field, and we will use these in the redesigned theme grid UI.

These screenshots will be updated when the theme is updated
in the same way the additional theme files are.

For now this is gated behind a hidden `theme_download_screenshots`
site setting, to allow us to test this on a small number of sites without
making other sites make unnecessary uploads.

**Future considerations:**

* We may want to have a specialized naming system for screenshots. E.g. having light.png/dark.png/some_palette.png
* We may want to show more than one screenshot for the theme, maybe in a carousel or reacting to dark mode or color palette changes
* We may want to allow clicking on the theme screenshot to show a lightbox
* We may want to make an optimized thumbnail image for the theme grid

---------

Co-authored-by: Ted Johansson <ted@discourse.org>
2024-10-28 10:10:20 +10:00
Martin Brennan 77f63a45d3
FIX: Use site contact user + group for Revise... review action (#29271)
Followup 9762e65758

When we added the Revise... option for posts/new topics
in the review queue, which sends a PM to the user, we used
`SystemMessage.create_from_system_user`, which always sends
the PM from the system user. However, this makes it so if the
user replies to the PM, which they are encouraged to do,
no one will see it unless they actively monitor the system inbox.

This commit changes it so `SystemMessage.create` is used,
which uses the `site_contact_username` and `site_contact_group`
site settings as participants in the sent PM. Then, when the
user replies, it will send to that inbox instead.

If `site_contact_username` is blank, the system user is used.
2024-10-28 09:40:10 +10:00
dependabot[bot] 2db23fd871
Build(deps): Bump json from 2.7.3 to 2.7.4 (#29431)
Bumps [json](https://github.com/ruby/json) from 2.7.3 to 2.7.4.
- [Release notes](https://github.com/ruby/json/releases)
- [Changelog](https://github.com/ruby/json/blob/master/CHANGES.md)
- [Commits](https://github.com/ruby/json/compare/v2.7.3...v2.7.4)

---
updated-dependencies:
- dependency-name: json
  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-10-28 00:09:17 +01:00
dependabot[bot] 3ff453fdf1
Build(deps-dev): Bump @swc/core from 1.7.39 to 1.7.40 (#29424)
Bumps [@swc/core](https://github.com/swc-project/swc) from 1.7.39 to 1.7.40.
- [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.7.39...v1.7.40)

---
updated-dependencies:
- dependency-name: "@swc/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-10-28 00:09:10 +01:00
dependabot[bot] 49180d514f
Build(deps-dev): Bump jsuites from 5.6.5 to 5.6.6 (#29429)
Bumps [jsuites](https://github.com/jsuites/jsuites) from 5.6.5 to 5.6.6.
- [Release notes](https://github.com/jsuites/jsuites/releases)
- [Changelog](https://github.com/jsuites/jsuites/blob/master/changelog.md)
- [Commits](https://github.com/jsuites/jsuites/commits)

---
updated-dependencies:
- dependency-name: jsuites
  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-10-28 00:09:03 +01:00
dependabot[bot] f06e850c24
Build(deps): Bump loofah from 2.23.0 to 2.23.1 (#29428)
Bumps [loofah](https://github.com/flavorjones/loofah) from 2.23.0 to 2.23.1.
- [Release notes](https://github.com/flavorjones/loofah/releases)
- [Changelog](https://github.com/flavorjones/loofah/blob/main/CHANGELOG.md)
- [Commits](https://github.com/flavorjones/loofah/compare/v2.23.0...v2.23.1)

---
updated-dependencies:
- dependency-name: loofah
  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-10-28 00:08:51 +01:00
dependabot[bot] aa80d1f4e8
Build(deps-dev): Bump rubocop-discourse from 3.8.2 to 3.8.3 (#29422)
Bumps [rubocop-discourse](https://github.com/discourse/rubocop-discourse) from 3.8.2 to 3.8.3.
- [Commits](https://github.com/discourse/rubocop-discourse/compare/v3.8.2...v3.8.3)

---
updated-dependencies:
- dependency-name: rubocop-discourse
  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-10-27 23:23:41 +01:00
dependabot[bot] 5e2cdcef64
Build(deps-dev): Bump rubocop-rails from 2.26.2 to 2.27.0 (#29430)
Bumps [rubocop-rails](https://github.com/rubocop/rubocop-rails) from 2.26.2 to 2.27.0.
- [Release notes](https://github.com/rubocop/rubocop-rails/releases)
- [Changelog](https://github.com/rubocop/rubocop-rails/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop-rails/compare/v2.26.2...v2.27.0)

---
updated-dependencies:
- dependency-name: rubocop-rails
  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-10-27 23:23:33 +01:00
dependabot[bot] 2809cf1c4d
Build(deps-dev): Bump @ember/optional-features from 2.1.0 to 2.2.0 (#29427)
Bumps [@ember/optional-features](https://github.com/emberjs/ember-optional-features) from 2.1.0 to 2.2.0.
- [Release notes](https://github.com/emberjs/ember-optional-features/releases)
- [Changelog](https://github.com/emberjs/ember-optional-features/blob/master/CHANGELOG.md)
- [Commits](https://github.com/emberjs/ember-optional-features/commits)

---
updated-dependencies:
- dependency-name: "@ember/optional-features"
  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-10-27 23:20:31 +01:00
dependabot[bot] bbf5cf3371
Build(deps-dev): Bump rubocop-rspec from 3.1.0 to 3.2.0 (#29426)
Bumps [rubocop-rspec](https://github.com/rubocop/rubocop-rspec) from 3.1.0 to 3.2.0.
- [Release notes](https://github.com/rubocop/rubocop-rspec/releases)
- [Changelog](https://github.com/rubocop/rubocop-rspec/blob/master/CHANGELOG.md)
- [Commits](https://github.com/rubocop/rubocop-rspec/compare/v3.1.0...v3.2.0)

---
updated-dependencies:
- dependency-name: rubocop-rspec
  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-10-27 23:20:04 +01:00