Skip to content

adapt install places menu plugin in src/components/ when already installed in src/menu/ #235

@swashbuck

Description

@swashbuck

Description

When running adapt install adapt-contrib-media to install a single component, adapt-contrib-boxMenu was also installed into src/components/ despite:

  1. Already being correctly installed in src/menu/
  2. Having adapt-menu in its package.json keywords

This results in a duplicate copy of the plugin in the wrong directory.

Steps to Reproduce

  1. Start with a project where adapt-contrib-boxMenu is already installed in src/menu/adapt-contrib-boxMenu/
  2. adapt-contrib-boxMenu is listed in adapt.json dependencies with "*"
  3. 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

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    Projects

    Status

    New

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions