{ "name": "federate-module", "factory": "./src/generators/federate-module/federate-module#federateModuleGenerator", "schema": { "$schema": "http://json-schema.org/schema", "cli": "nx", "$id": "NxReactFederateModule", "title": "Federate Module", "description": "Create a federated module, which can be loaded by a remote host.", "examples": [ { "command": "nx g federate-module MyModule --path=./src/component/my-cmp.ts --remote=my-remote-app", "description": "Create a federated module from my-remote-app, that exposes my-cmp from ./src/component/my-cmp.ts as MyModule." } ], "type": "object", "properties": { "name": { "description": "The name of the module.", "type": "string", "$default": { "$source": "argv", "index": 0 }, "x-prompt": "What name would you like to use for the module?", "pattern": "^[a-zA-Z][^:]*$", "x-priority": "important" }, "path": { "type": "string", "description": "The path to locate the federated module.", "x-prompt": "What is the path to the module to be federated?" }, "remote": { "type": "string", "description": "The name of the remote.", "x-prompt": "What is/should the remote be named?" }, "projectNameAndRootFormat": { "description": "Whether to generate the project name and root directory as provided (`as-provided`) or generate them composing their values and taking the configured layout into account (`derived`).", "type": "string", "enum": ["as-provided", "derived"] }, "style": { "description": "The file extension to be used for style files.", "type": "string", "default": "css", "alias": "s", "x-prompt": { "message": "Which stylesheet format would you like to use?", "type": "list", "items": [ { "value": "css", "label": "CSS" }, { "value": "scss", "label": "SASS(.scss) [ http://sass-lang.com ]" }, { "value": "less", "label": "LESS [ http://lesscss.org ]" }, { "value": "styled-components", "label": "styled-components [ https://styled-components.com ]" }, { "value": "@emotion/styled", "label": "emotion [ https://emotion.sh ]" }, { "value": "styled-jsx", "label": "styled-jsx [ https://www.npmjs.com/package/styled-jsx ]" }, { "value": "styl", "label": "DEPRECATD: Stylus(.styl) [ http://stylus-lang.com ]" }, { "value": "none", "label": "None" } ] } }, "linter": { "description": "The tool to use for running lint checks.", "type": "string", "enum": ["eslint"], "default": "eslint" }, "skipFormat": { "description": "Skip formatting files.", "type": "boolean", "default": false, "x-priority": "internal" }, "unitTestRunner": { "type": "string", "enum": ["jest", "none"], "description": "Test runner to use for unit tests.", "default": "jest" }, "e2eTestRunner": { "type": "string", "enum": ["cypress", "none"], "description": "Test runner to use for end to end (e2e) tests.", "default": "cypress" }, "host": { "type": "string", "description": "The host / shell application for this remote." } }, "required": ["name", "path", "remote"], "additionalProperties": false, "presets": [] }, "description": "Federate a module.", "hidden": false, "implementation": "/packages/react/src/generators/federate-module/federate-module#federateModuleGenerator.ts", "aliases": [], "path": "/packages/react/src/generators/federate-module/schema.json", "type": "generator" }