Port FloatingBannerView and ReviewReplyDraftBannerView to spina.

Review Request #12810 — Created Jan. 26, 2023 and submitted

Information

Review Board
release-6.x

Reviewers

In order to be able to subclass the FloatingBannerView for the new
unified banner, we first need to update it to use TypeScript and spina.
This also required updating the ReviewReplyDraftBannerView to match.

  • Verified that review reply banners worked correctly.
  • Ran js-tests.
Summary ID
Port FloatingBannerView and ReviewReplyDraftBannerView to spina.
In order to be able to subclass the FloatingBannerView for the new unified banner, we first need to update it to use TypeScript and spina. This also required updating the ReviewReplyDraftBannerView to match. Testing Done: - Verified that review reply banners worked correctly. - Ran js-tests.
4d080dde93dea99d9f29c6216540fb3dda846ae2
Description From Last Updated

Space before {

chipx86chipx86

This can use modelEvents: modelEvents = { 'saving destroying': ..., 'saved': ..., 'publishError': ..., }; Works just like events, so …

chipx86chipx86

Do we want to maybe move general UI stuff into a RB.UI namespace?

chipx86chipx86
david
chipx86
  1. 
      
  2. Show all issues

    Space before {

  3. Show all issues

    This can use modelEvents:

    modelEvents = {
        'saving destroying': ...,
        'saved': ...,
        'publishError': ...,
    };
    

    Works just like events, so it should be mappable to a function or to a () => ... if you want.

  4. reviewboard/static/rb/js/ui/index.ts (Diff revision 2)
     
     
    Show all issues

    Do we want to maybe move general UI stuff into a RB.UI namespace?

    1. I was thinking about that, but we theoretically need to maintain compatibility with third parties who might rely on the existing RB.X names. I guess we could alias them?

  5. 
      
david
chipx86
  1. Ship It!
  2. 
      
david
Review request changed
Status:
Completed
Change Summary:
Pushed to release-6.x (2a2ae06)