pzl-spfx-tasks v0.5.10
SPFx tasks
One shared place for node tasks used by our SPFx solutions.
createEnviromentFile.js
Creates a .env file in the current folder (process.cwd()). This is ran as a part of the pre-watch.js task.
createServeConfig.js
Creates a config/serve.json file from the template config/serve.sample.json for the current folder.
post-watch.js
Runs modifyConfig.js.
pre-watch.js
Runs createEnviromentFile.js. Also generates a config/.generated-solution-config.json if the channel environment variable SERVE_CHANNEL is set and not main.
Also runs ./modifyConfig.js to modifiy the included bundles.
modifyConfig.js
Updates config/config.json for the solution based on the environment variable SERVE_BUNDLE_REGEX.
generateComponentOverview.js
This script generates an overview of components by loading configuration files and writing the result to an output file.
Dependencies
path: Provides utilities for working with file and directory paths.glob: Matches file paths using patterns.fs: Provides file system-related functionality.util: Custom utility functions for logging and file operations.colors: Provides color formatting for console output.
Constants
ROOT_PATH: The root directory of the project.CONFIG_FILES_PATTERN: Pattern to match configuration files.OUTPUT_FILE: Path to the output file where the overview will be written.
Functions
loadJsonFile(file)
- Description: Loads and parses a JSON file.
- Parameters:
file: Path to the JSON file.
- Returns: Parsed JSON object or
nullon failure.
loadManifestFile(configFile, bundle)
- Description: Loads the manifest file for a given configuration file and bundle.
- Parameters:
configFile: Path to the configuration file.bundle: Bundle object containing information about the components.
- Returns: Manifest object containing component details or
nullon failure.
loadConfigFile(configFile)
- Description: Loads the configuration file and returns the application name and an array of manifests.
- Parameters:
configFile: Path to the configuration file.
- Returns: An array containing the application name and an array of manifest objects.
generateComponentOverview()
- Description: Generates an overview of components by loading configuration files and writing the result to an output file.
- Process:
- Glob matches configuration files.
- Loads configuration files and extracts component manifests.
- Writes the overview to the output file.
generateComponentsClass.js
This script generates C# classes based on JSON data. It is designed to work with a specific JSON file structure containing information about SPFx components.
Dependencies
path: Provides utilities for working with file and directory paths.glob: Matches file paths using patterns.fs: Provides file system-related functionality.util: Custom utility functions for logging and file operations.lodash: Provides utility functions for working with arrays, objects, and other data types.package.json: Contains metadata about the project.
Constants
ROOT_PATH: The root directory of the project.INPUT_JSON_FILE: Path to the input JSON file containing component data.NAMESPACE: Namespace for the generated C# classes.DIRNAME: Path to the directory where the generated C# files will be saved.FILE_NAME: Name of the generated C# file.MAIN_CLASS_NAME: Name of the main static class containing all components.COMPONENT_CLASS_NAME: Name of the C# class representing SPFx components.
Functions
generateClasses(jsonFile)
- Description: Generates C# classes for a JSON file.
- Parameters:
jsonFile: Path to the JSON file containing component data.
generateComponentClass(component, classType = 'public readonly')
- Description: Generates a C# class for a component.
- Parameters:
component: Component object containing information about the component.classType: Type of the class to generate (default is 'public readonly').
generateAppClassName(app)
- Description: Generates the class name for the given SPFx app.
- Parameters:
app: Name of the SPFx app.
- Returns: The generated class name.
generateAppClass(app, components, classType = 'public class', classMemberType = 'public static readonly')
- Description: Generates a C# class for the SPFx app with the provided app name and components.
- Parameters:
app: Name of the SPFx app.components: Array of component objects belonging to the app.classType: Type of the class to generate (default is 'public class').classMemberType: Type of the class members to generate (default is 'public static readonly').
generateCSharpCode(jsonContent)
- Description: Generates C# code based on the provided JSON content.
- Parameters:
jsonContent: JSON content used to generate the C# code.
- Returns: Generated C# code as a string.
1 year ago
1 year ago
1 year ago
1 year ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago