New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
DEV: Implement glimmer topic-list #26743
Conversation
app/assets/javascripts/discourse/app/components/topic-list/latest-topic-list-item.gjs
Outdated
Show resolved
Hide resolved
import topicFeaturedLink from "discourse/helpers/topic-featured-link"; | ||
import topicLink from "discourse/helpers/topic-link"; | ||
|
||
export default class LatestTopicListItem extends Component { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Do you think this will remain separate from <TopicListItem
in the long-run? Seems a little strange to have two similar implementations 🤔
(historically, I think LatestTopicListItem was the pure-ember version, and TopicListItem wrapped the raw-hbs implementation?)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
app/assets/javascripts/discourse/app/components/topic-list/activity-column.gjs
Outdated
Show resolved
Hide resolved
app/assets/javascripts/discourse/app/components/topic-list/featured-topic.gjs
Show resolved
Hide resolved
app/assets/javascripts/discourse/app/components/topic-list/posts-count-column.gjs
Outdated
Show resolved
Hide resolved
app/assets/javascripts/discourse/app/components/topic-list/visited-line.gjs
Outdated
Show resolved
Hide resolved
Co-authored-by: David Taylor <david@taylorhq.com>
Same as `@tracked`, but skips notifying consumers if the value is unchanged. This introduces some performance overhead, so should only be used where excessive downstream re-evaluations are a problem. This is loosely based on `@dedupeTracked` in the `tracked-toolbox` package, but without the added complexity of a customizable 'comparator'. Implementing ourselves also avoids the need for pulling in the entire package, which contains some tools which we don't want, or which are now implemented in Ember/Glimmer (e.g. `@cached`).
Debouncing the audio was causing the audio to be lost sometimes, somewhat randomly. It's not supposed to be necessary. The commit also refactors the code to async/await.
This commit adds a step in our tests workflow on Github actions to update the themes to use the compatible version when not running aginast the `main` branch. This is to ensure that we are not running the tests for themes against an incompatible version of Discourse.
This is preparation for a feature that will allow admins to define their custom flags. Current behaviour should stay untouched.
#27095) `discourse-ai` has custom gems which need to be bumped in order to be compatible with Ruby 3.3. However, its version is pinned so we can't pull in the commits in which upgrades the gems to be compatible with Ruby 3.3. Just avoid running the specs on `stable` branch for now until we release a new stable.
# Conflicts: # spec/system/page_objects/pages/topic.rb
(experimental)
The initial implementation of glimmer topic-list and related components. Does not include new APIs and isn't compatible with existing customization. That's gonna come in future PRs.
Enabled by adding groups to
experimental_glimmer_topic_list_groups
setting.