Problem/Motivation

Get the JS assets from PHP and merge all contrib package.json files to resolve and download assets. like we do for composer.json.

The MR was generated with claude code, I did not take any care into creating the code this is purely for prototyping a working solution.

Steps to reproduce

Proposed resolution

For core

To manage core dependencies we can use it:

cd core/
../vendor/bin/php-npm ci
node ./scripts/js/vendor-update.js # no errors, no changes 

For contrib

When we composer require a module, gather all package.json files from the contributed modules, merge them, resolve dependencies with the same algorithm than npm, and create the appropriate node_modules/ folder.

composer require drupal/display_builder
composer npm-install

// This will create in the root directory, next to composer.json:
// node_modules/
// package.json
// package-lock.json

We could run it automatically but for now it's manual.

Remaining tasks

User interface changes

Introduced terminology

API changes

Data model changes

Release notes snippet

Issue fork drupal-3568894

Command icon Show commands

Start within a Git clone of the project using the version control instructions.

Or, if you do not have SSH keys set up on git.drupalcode.org:

Comments

nod_ created an issue. See original summary.

nod_’s picture

Issue summary: View changes

nod_ changed the visibility of the branch 3568894-manage-third-party to hidden.

nod_’s picture

Issue summary: View changes