Skip to content

Remote preset prompts #952

@Kminkjan

Description

@Kminkjan

What problem does this feature solve?

I have created a remote preset that uses a 3rd party plugin that I created for my company. It uses a predefined config for the default Vue cli plugins and then should allow to make some customizations from the 3rd party plugin. The current way it works is that all the default plugins are installed, and then my 3rd party plugin. However, I discovered it would fail, because the prompts are not executed.

The ideal workflow would be like this: the developer that uses the preset executes the vue create command and a default Vue app is created with predefined default plugins and it's configuration. When the default plugins finish installing, the prompts from the 3rd party plugin would still execute so the app can be customized to the few options my company needs.

My remote preset looks like this:

{
      "useConfigFiles": false,
      "plugins": {
        "@vue/cli-plugin-babel": {},
        "@vue/cli-plugin-eslint": {
          "config": "standard",
          "lintOn": [
            "save"
          ]
        },
        "@vue/cli-plugin-unit-jest": {},
        "@vue/cli-plugin-e2e-cypress": {},
    	"@mycompany/mypreset": {"version": "^1.0.0"}
      },
      "router": true,
      "vuex": true,
      "cssPreprocessor": "stylus"
    }

What does the proposed API look like?

I purpose that the plugin config allows for an flag that can be set, which will (when set to true) still execute the prompts.

{
      "useConfigFiles": false,
      "plugins": {
        "@vue/cli-plugin-babel": {},
        "@vue/cli-plugin-eslint": {
          "config": "standard",
          "lintOn": [
            "save"
          ]
        },
        "@vue/cli-plugin-unit-jest": {},
        "@vue/cli-plugin-e2e-cypress": {},
    	"@mycompany/mypreset": {"version": "^1.0.0", "prompts": true}
      },
      "router": true,
      "vuex": true,
      "cssPreprocessor": "stylus"
    }

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions