Description
When running adapt install adapt-contrib-media to install a single component, adapt-contrib-boxMenu was also installed into src/components/ despite:
- Already being correctly installed in
src/menu/
- Having
adapt-menu in its package.json keywords
This results in a duplicate copy of the plugin in the wrong directory.
Steps to Reproduce
- Start with a project where
adapt-contrib-boxMenu is already installed in src/menu/adapt-contrib-boxMenu/
adapt-contrib-boxMenu is listed in adapt.json dependencies with "*"
- Run
adapt install adapt-contrib-media
Expected Behavior
- Only
adapt-contrib-media is installed into src/components/
adapt-contrib-boxMenu remains only in src/menu/ (its correct location)
Actual Behavior
adapt-contrib-media is installed into src/components/ (correct)
adapt-contrib-boxMenu is also installed into src/components/ (incorrect duplicate)
- The existing copy in
src/menu/adapt-contrib-boxMenu/ remains untouched
Additional Context
The package.json for adapt-contrib-boxMenu correctly identifies it as a menu plugin:
"keywords": ["adapt-plugin", "adapt-menu"]
It appears the CLI may be re-resolving all adapt.json dependencies during a single plugin install, and on that pass incorrectly routing the menu plugin to src/components/ instead of recognizing it already exists in src/menu/.
Environment
- adapt-cli version: latest (installed via
npx -p adapt-cli)
- Node.js: 20.x
- Adapt Framework 5.55.2
Description
When running
adapt install adapt-contrib-mediato install a single component,adapt-contrib-boxMenuwas also installed intosrc/components/despite:src/menu/adapt-menuin itspackage.jsonkeywordsThis results in a duplicate copy of the plugin in the wrong directory.
Steps to Reproduce
adapt-contrib-boxMenuis already installed insrc/menu/adapt-contrib-boxMenu/adapt-contrib-boxMenuis listed inadapt.jsondependencies with"*"adapt install adapt-contrib-mediaExpected Behavior
adapt-contrib-mediais installed intosrc/components/adapt-contrib-boxMenuremains only insrc/menu/(its correct location)Actual Behavior
adapt-contrib-mediais installed intosrc/components/(correct)adapt-contrib-boxMenuis also installed intosrc/components/(incorrect duplicate)src/menu/adapt-contrib-boxMenu/remains untouchedAdditional Context
The
package.jsonforadapt-contrib-boxMenucorrectly identifies it as a menu plugin:It appears the CLI may be re-resolving all
adapt.jsondependencies during a single plugin install, and on that pass incorrectly routing the menu plugin tosrc/components/instead of recognizing it already exists insrc/menu/.Environment
npx -p adapt-cli)