Suchleiste für Lesezeichen-Suche lässt sich nicht löschen

Ich habe nachgesehen; das Problem liegt hier:

https://github.com/discourse/discourse/blob/main/app/assets/javascripts/discourse/app/controllers/user-activity-bookmarks.js#L33

Hier ist, was passiert.

Wenn Sie das letzte Zeichen entfernen, wird get aufgerufen. Zu diesem Zeitpunkt ist _searchTerm leer.
this._searchTerm || this.q behandelt den leeren String jedoch als falsch, und der Wert von q wird stattdessen angezeigt.

Eine schnelle Lösung könnte darin bestehen, dies zu überprüfen:

return this._searchTerm !== undefined ? this._searchTerm : this.q;

Hinweis: Der Anfangswert von _searchTerm ist undefined.
Hinweis: Aufgrund von computed("q") tritt das Problem nicht auf, wenn Sie auswählen/löschen (wahrscheinlich, weil die Zeit zu knapp ist, um den Cache zu invalidieren?)


Ich wollte ein PR machen, aber...

Die Kern-Tests (ohne Modifikation) schlagen aus irgendeinem Grund fehl.
Ich benutze bin/rspec spec/system/user_activity_bookmarks_spec.rb.
Die Protokolle besagen, dass entweder die Suche nicht vorhanden ist oder Lesezeichen nicht erstellt werden.
Fehlt mir etwas?

Logs

(base) arkshine@HOME:~/discourse$ bin/rspec spec/system/user_activity_bookmarks_spec.rb

Randomized with seed 38172
unknown OID 931304: failed to recognize type of ‘embeddings’. It will be treated as String.
FFF

Failures:

  1. User activity bookmarks can clear the query
    Failure/Error: super

    Capybara::ElementNotFound:
    Unable to find field “bookmark-search” that is not disabled

    ~~~~~ END JS LOGS ~~~~
    
    # ./spec/system/page_objects/pages/user_activity_bookmarks.rb:24:in `fill_in_search'
    # ./spec/system/page_objects/pages/user_activity_bookmarks.rb:14:in `search_for'
    # ./spec/system/user_activity_bookmarks_spec.rb:51:in `block (2 levels) in <main>'
    
    
  2. User activity bookmarks can filter the list of bookmarks
    Failure/Error: super

    Capybara::ElementNotFound:
    Unable to find field “bookmark-search” that is not disabled

    ~~~~~ END JS LOGS ~~~~
    
    # ./spec/system/page_objects/pages/user_activity_bookmarks.rb:24:in `fill_in_search'
    # ./spec/system/page_objects/pages/user_activity_bookmarks.rb:14:in `search_for'
    # ./spec/system/user_activity_bookmarks_spec.rb:44:in `block (2 levels) in <main>'
    
    
  3. User activity bookmarks can filter the list of bookmarks from the URL
    Failure/Error: expect(user_activity_bookmarks).to have_topic(bookmark_1.bookmarkable.topic)
    expected #PageObjects::Pages::UserActivityBookmarks:0x00007f51dcb37b00.has_topic?(#<Topic id: 699, title: “This is a test topic 0”, last_posted_at: nil, created_at: "2025-03-19 04:35:…oad_id: nil, slow_mode_seconds: 0, bannered_until: nil, external_id: nil, visibility_reason_id: nil>) to be truthy, got false

    ~~~~~ END JS LOGS ~~~~
    
    # ./spec/system/user_activity_bookmarks_spec.rb:40:in `block (2 levels) in <main>'
    
    

Finished in 21.7 seconds (files took 3.8 seconds to load)
3 examples, 3 failures

Failed examples:
rspec ./spec/system/user_activity_bookmarks_spec.rb:50 # User activity bookmarks can clear the query
rspec ./spec/system/user_activity_bookmarks_spec.rb:43 # User activity bookmarks can filter the list of bookmarks
rspec ./spec/system/user_activity_bookmarks_spec.rb:36 # User activity bookmarks can filter the list of bookmarks from the URL

4 „Gefällt mir“