{
  "id": "rollup",
  "name": "Rollup",
  "description": "Module bundler for JavaScript.",
  "homepage": "https://rollupjs.org",
  "executables": [
    "rollup"
  ],
  "commands": {
    "format": 1,
    "label": "Bundle with Rollup",
    "description": "Bundle an entry file or use a config file. Plugins, globals, treeshake and watch tuning options are left out.",
    "quality": "ai-draft",
    "base": "fig:rollup",
    "parser": {
      "end_of_options": "--",
      "interleave": "permute",
      "long_equals": true,
      "short_attached": true,
      "short_bundles": false
    },
    "source": [
      {
        "id": "src",
        "kind": "completion",
        "url": "https://github.com/withfig/autocomplete/blob/master/src/rollup.ts",
        "license": "MIT"
      }
    ],
    "field": [
      {
        "id": "config",
        "label": "Config file",
        "type": "path",
        "option": [
          "--config",
          "-c"
        ],
        "path": {
          "kind": "file",
          "role": "input"
        },
        "sources": [
          "src"
        ]
      },
      {
        "id": "input",
        "label": "Entry file",
        "type": "path",
        "option": [
          "--input",
          "-i"
        ],
        "path": {
          "kind": "file",
          "role": "input"
        },
        "sources": [
          "src"
        ]
      },
      {
        "id": "file",
        "label": "Output file",
        "type": "path",
        "option": [
          "-o",
          "--file"
        ],
        "path": {
          "kind": "file",
          "role": "output"
        },
        "sources": [
          "src"
        ]
      },
      {
        "id": "dir",
        "label": "Output directory",
        "type": "path",
        "option": [
          "--dir",
          "-d"
        ],
        "path": {
          "kind": "directory",
          "role": "output"
        },
        "sources": [
          "src"
        ]
      },
      {
        "id": "format",
        "label": "Output format",
        "type": "enum",
        "option": [
          "--format",
          "-f"
        ],
        "choices": [
          {
            "value": "amd",
            "label": "amd"
          },
          {
            "value": "cjs",
            "label": "cjs"
          },
          {
            "value": "es",
            "label": "es"
          },
          {
            "value": "iife",
            "label": "iife"
          },
          {
            "value": "umd",
            "label": "umd"
          },
          {
            "value": "system",
            "label": "system"
          }
        ],
        "sources": [
          "src"
        ]
      },
      {
        "id": "name",
        "label": "Global name (iife/umd)",
        "type": "string",
        "option": [
          "--name",
          "-n"
        ],
        "sources": [
          "src"
        ]
      },
      {
        "id": "sourcemap",
        "label": "Sourcemap",
        "type": "boolean",
        "option": [
          "--sourcemap",
          "-m"
        ],
        "sources": [
          "src"
        ]
      },
      {
        "id": "external",
        "label": "External ids (comma separated)",
        "type": "string",
        "option": [
          "--external",
          "-e"
        ],
        "sources": [
          "src"
        ]
      },
      {
        "id": "watch",
        "label": "Watch and rebuild",
        "type": "boolean",
        "option": [
          "--watch",
          "-w"
        ],
        "sources": [
          "src"
        ]
      },
      {
        "id": "compact",
        "label": "Minify wrapper code",
        "type": "boolean",
        "option": [
          "--compact"
        ],
        "sources": [
          "src"
        ]
      },
      {
        "id": "silent",
        "label": "Silence warnings",
        "type": "boolean",
        "option": [
          "--silent"
        ],
        "sources": [
          "src"
        ]
      },
      {
        "id": "no_treeshake",
        "label": "Disable tree-shaking",
        "type": "boolean",
        "option": [
          "--no-treeshake"
        ],
        "sources": [
          "src"
        ]
      }
    ],
    "task": [
      {
        "id": "config",
        "label": "Build with config file",
        "fields": [
          "config",
          "watch"
        ],
        "required": [
          "config"
        ]
      },
      {
        "id": "bundle",
        "label": "Bundle one entry",
        "fields": [
          "input",
          "file",
          "format",
          "name",
          "sourcemap"
        ],
        "required": [
          "input",
          "file"
        ]
      },
      {
        "id": "watch",
        "label": "Watch with config",
        "fields": [
          "config",
          "watch"
        ],
        "required": [
          "config"
        ],
        "set": {
          "watch": [
            true
          ]
        }
      }
    ],
    "group": [
      {
        "id": "basic",
        "label": "Basic",
        "fields": [
          "config",
          "input",
          "file",
          "format",
          "name",
          "sourcemap",
          "watch"
        ]
      },
      {
        "id": "advanced",
        "label": "Advanced",
        "fields": [
          "compact",
          "silent",
          "no_treeshake",
          "external",
          "dir"
        ]
      }
    ]
  }
}
