Render the popup for the list of integrations in JavaScript.

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


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

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

Unit tests pass.

Loading file attachments...