Render the popup for the list of integrations in JavaScript.

Review Request #10440 — Created March 6, 2019 and submitted — Latest diff uploaded

Information

Djblets
release-1.0.x

Reviewers

The new integrations popup was previously hard-coded into the page,
hidden by default and then wrapped in the JavaScript view, much like the
configuration list until a recent change. That information has since
been added to the list of data passed to the view, meaning we're sending
it over the wire twice. This isn't efficient and isn't worth doing,
particularly if the popup's never going to be used.

This change updates the popup rendering to happen dynamically in the
JavaScript view the first time it's clicked. This is done in a way that
minimizes render time while also allowing subclasses to override the
display.

The Add Integration button has also received an icon. This uses the same
look (a white plus symbol on a green circle) that the Add button for
condition fields use, which we'll be able to use in more places
throughout our config form UIs.

Tested that the popup displayed properly and that integrations could be
added.

Unit tests pass.

Diff Revision 1 (Latest)

Commits

First Last Summary ID Author
Render the popup for the list of integrations in JavaScript.
The new integrations popup was previously hard-coded into the page, hidden by default and then wrapped in the JavaScript view, much like the configuration list until a recent change. That information has since been added to the list of data passed to the view, meaning we're sending it over the wire twice. This isn't efficient and isn't worth doing, particularly if the popup's never going to be used. This change updates the popup rendering to happen dynamically in the JavaScript view the first time it's clicked. This is done in a way that minimizes render time while also allowing subclasses to override the display. The Add Integration button has also received an icon. This uses the same look (a white plus symbol on a green circle) that the Add button for condition fields use, which we'll be able to use in more places throughout our config form UIs.
764da093df5f8ea8f6551d9c83072d82f1f4f0e4 Christian Hammond
djblets/staticbundles.py
djblets/integrations/templates/integrations/parts/integration_list.html
djblets/static/djblets/css/config-forms.less
djblets/static/djblets/js/integrations/views/addIntegrationPopupView.es6.js
djblets/static/djblets/js/integrations/views/integrationConfigListView.es6.js
djblets/static/djblets/js/integrations/views/tests/addIntegrationPopupViewTests.es6.js
Loading...