• 
      

    Update selectize and pull from node_modules.

    Review Request #14668 — Created Nov. 5, 2025 and submitted

    Information

    Djblets
    release-5.x

    Reviewers

    We use selectize for the related object selector widgets in the admin
    UI. The version we were using was pretty old, and we had vendored it
    into our source tree.

    This change updates Djblets to include "@selectize/selectize" as a
    dependency, and pull it in from node_modules instead of vendoring it
    into our source tree.

    The newer version required a couple small updates to the way we use it:

    • The related object selector renders values as blank because we
      actually show the selected values in a list or table below the input.
      We used to just return an empty string but internally, selectize was
      trying to do DOM manipulation on this. We now return an empty <span>
      element instead.
    • We need to pass mode: multivalued into the selectize options so it
      doesn't try to hide the <input> element after selecting a value.

    I've also fixed the padding on <td> elements within the selected
    items, because we had an admin form style that was setting that to a
    value that wasn't appropriate.

    There's one more visual fix for the user selector that will come in a
    Review Board change (this was looking bad even with the old version of
    selectize).

    • Built static media.
    • Ran js-tests.
    • Tested the related user, group, and repo selectors within the Review
      Board admin UI.
    Summary ID
    Update selectize and pull from node_modules.
    We use selectize for the related object selector widgets in the admin UI. The version we were using was pretty old, and we had vendored it into our source tree. This change updates Djblets to include "@selectize/selectize" as a dependency, and pull it in from `node_modules` instead of vendoring it into our source tree. The newer version required a couple small updates to the way we use it: - The related object selector renders values as blank because we actually show the selected values in a list or table below the input. We used to just return an empty string but internally, selectize was trying to do DOM manipulation on this. We now return an empty `<span>` element instead. - We need to pass `mode: multivalued` into the selectize options so it doesn't try to hide the `<input>` element after selecting a value. I've also fixed the padding on `<td>` elements within the selected items, because we had an admin form style that was setting that to a There's one more visual fix for the user selector that will come in a Review Board change (this was looking bad even with the old version of selectize). Testing Done: - Built static media. - Ran js-tests. - Tested the related user, group, and repo selectors within the Review Board admin UI.
    qpzszlxsnowxtrtsqsslournuptzyypp
    Description From Last Updated

    In the description this sentence doesn't have an ending: "I've also fixed the padding on <td> elements ..."

    maubinmaubin
    chipx86
    1. Ship It!
    2. 
        
    maubin
    1. 
        
    2. Show all issues

      In the description this sentence doesn't have an ending: "I've also fixed the padding on <td> elements ..."

    3. 
        
    david
    david
    Review request changed
    Status:
    Completed
    Change Summary:
    Pushed to release-5.x (1731bfc)