채팅 채널에 새로운 필터 및 정렬 옵션 도입 💬

지금까지 채팅 채널은 다음과 같이 정렬되어 있었고, 이를 변경할 방법이 없었습니다:

  • 공개 채널 - 알파벳 순서
  • 다이렉트 메시지/그룹 채널 - 우선순위 (읽지 않은 메시지 우선)

많은 공개 채널의 멤버이거나 별표가 달린 채널이 꽤 많다면, 특히 흥미롭거나 중요한 내용이 올라올 때만 확인하고 싶은 채널이라면 목록이 다소 복잡하게 느껴질 수 있습니다.

이제 채팅 채널 섹션별로 필터 및 정렬 옵션을 선택할 수 있는 기능을 추가했습니다! :rocket: 기본값은 이전과 동일하지만, 이제 각 섹션(공개 채널, DM/그룹 채널, 별표 채널)별로 이러한 필터 및 정렬 옵션을 지정할 수 있습니다.

  • 필터
    • 모든 채널
    • 활성만 (최근 30일 내 새로운 활동)
    • 읽지 않은 메시지
    • 멘션
  • 정렬
    • 알파벳 순서
    • 최근 활동
    • 우선순위 (멘션, 읽지 않은 메시지, 최근 활동 순)

아래 스크린샷을 확인하시거나 직접 시도해 보세요 :slight_smile:

2개의 좋아요

개발 환경에서 pull을 수행한 후 이 오류가 발생했습니다:

Undeclared attribute type for enum 'chat_channel_list_filter' in UserOption. Enums must be backed by a database column or declared with an explicit type via `attribute`.

lib/theme_resolver.rb:14:in 'ThemeResolver.resolve_theme_id'
lib/homepage_constraint.rb:13:in 'HomePageConstraint#matches?'
lib/middleware/omniauth_bypass_middleware.rb:35:in 'Middleware::OmniauthBypassMiddleware#call'
lib/middleware/crawler_hooks.rb:13:in 'Middleware::CrawlerHooks#call'
lib/content_security_policy/middleware.rb:12:in 'ContentSecurityPolicy::Middleware#call'
lib/middleware/csp_script_nonce_injector.rb:13:in 'Middleware::CspScriptNonceInjector#call'
lib/middleware/track_view_session_id_injector.rb:12:in 'Middleware::TrackViewSessionIdInjector#call'
config/initializers/008-rack-cors.rb:14:in 'Discourse::Cors#call'
lib/middleware/default_headers.rb:13:in 'Middleware::DefaultHeaders#call'
config/initializers/100-quiet_logger.rb:20:in 'DiscourseRackQuietAssetsLogger#call'
config/initializers/100-silence_logger.rb:29:in 'SilenceLogger#call'
lib/middleware/missing_avatars.rb:22:in 'Middleware::MissingAvatars#call'
lib/middleware/overload_protections.rb:18:in 'Middleware::OverloadProtections#call'
lib/middleware/processing_request.rb:14:in 'Middleware::ProcessingRequest#call'