• 
      

    Modernize the UI for managing extensions.

    Review Request #11044 — Created June 17, 2020 and submitted — Latest diff uploaded

    Information

    Djblets
    release-2.0.x

    Reviewers

    This is a complete design refresh for the extension UI. It makes use of
    the config forms CSS components to provide a list of extensions that's
    more in line with the look and feel of the integrations list, amongst
    other bits of UI we're assembling, and presents information on the
    extensions in a much clearer way than the old UI.

    The new extension list presents each item as a row with three columns.
    The first column contains all the extension metadata (summary, version,
    author, description, load errors). The second column contains the status
    (Enabled, Disabled, Error). The third column contains a vertical list of
    actions that can be performed (Enable/Disable/Reload, Configure,
    Database).

    Above the list of extensions is a list of actions. This will always show
    a "Reload Extensions" (replacement for "Scan for installed extensions").
    If settings.DJBLETS_EXTENSIONS_BROWSE_URL is set, this will also
    include a "More Extensions" button that navigates to that page. In the
    process, the old template block for adding this sort of action has been
    removed.

    This new layout reduces the visual noise of the old layout, and makes it
    easier to see and manage the states of all extensions.

    The old template assumed it would be shown in the administration UI,
    with standard Django administratino UI conventions. We still have a
    template for that, but the meat of the new UI is in a reusable "parts"
    template that can be embedded into any page.

    Tested extensions in all possible states.

    Tested the More Extensions and Reload Extensions buttons.

    JavaScript and Python unit tests passed.


    Commits

    Files