0.2.1 • Published 5 months ago

@salesforce-ux/metadata-cli v0.2.1

Weekly downloads
-
License
-
Repository
-
Last release
5 months ago

Salesforce Design Systems Metadata CLI

A command-line tool for generating and managing metadata for Salesforce Design Systems (SLDS and SLDS Plus/Cosmos).

Quick Start

Using npx (Recommended)

# Generate all metadata types
npx @salesforce-ux/metadata-cli generate all

# Generate specific metadata types
npx @salesforce-ux/metadata-cli generate selectors-list styling-hooks

# Generate metadata with custom output directory and format
npx @salesforce-ux/metadata-cli generate all --output ./metadata --format csv

Local Installation

# Install globally
npm install -g @salesforce-ux/metadata-cli
# or
yarn global add @salesforce-ux/metadata-cli

# Then use the command
metadata-cli generate all

Features

  • Generate comprehensive metadata for SLDS and SLDS Plus/Cosmos
  • Multiple output formats (JSON, CSV, YAML)
  • Support for custom output directories
  • Interactive type selection when no types are specified
  • Concurrent processing for faster generation

Available Generator Types

The CLI supports the following metadata types:

TypeDescription
selectors-listGenerate SLDS and SLDS Plus class selectors
styling-hooksGenerate styling hooks metadata
bem-naming-mapGenerate BEM naming conventions mapping
lwc-to-slds-mapGenerate LWC to SLDS token mappings
stylehooks-metadataGenerate style hooks metadata
aura-to-lwc-mapGenerate Aura to LWC token mappings
iconsGenerate icon metadata
color-styling-hooksGenerate color styling hooks
design-token-mappingsGenerate design token mappings
slds-styling-hooksGenerate SLDS styling hooks
slds-deltaGenerate SLDS delta information
slds-excluded-varsGenerate SLDS excluded variables

Usage Examples

Basic Usage

# Generate all metadata types
npx @salesforce-ux/metadata-cli generate all

# Generate specific types
npx @salesforce-ux/metadata-cli generate selectors-list styling-hooks

# Interactive type selection
npx @salesforce-ux/metadata-cli generate

Custom Output Directory

# Generate to a specific directory
npx @salesforce-ux/metadata-cli generate all --output ./metadata

# Generate to a nested directory
npx @salesforce-ux/metadata-cli generate all --output ./src/generated/metadata

Different Output Formats

# Generate as JSON (default)
npx @salesforce-ux/metadata-cli generate all --format json

# Generate as CSV
npx @salesforce-ux/metadata-cli generate all --format csv

# Generate as YAML
npx @salesforce-ux/metadata-cli generate all --format yaml

Combining Options

# Generate specific types to a custom directory in CSV format
npx @salesforce-ux/metadata-cli generate selectors-list styling-hooks --output ./metadata --format csv

# Generate all types to a custom directory in YAML format
npx @salesforce-ux/metadata-cli generate all --output ./metadata --format yaml

Command Reference

Usage: metadata-cli generate [options] [types...]

Generate design system metadata

Arguments:
  types                Types of metadata to generate. Use "all" for all types or specify one or more types

Options:
  -o, --output <path>  Output directory path. Defaults to current working directory
  -f, --format <format>  Output format (json, csv, yaml). Defaults to json
  -h, --help          Display help for command

Requirements

  • Node.js >= v18.0.0
  • npm >= 6.0.0 or yarn >= 1.22.22

Troubleshooting

Common Issues

  1. Permission Errors

    # If you encounter permission errors with npx, try:
    npx --no-install @salesforce-ux/metadata-cli generate all
  2. Output Directory Issues

    # If the output directory doesn't exist, create it first:
    mkdir -p ./metadata
    npx @salesforce-ux/metadata-cli generate all --output ./metadata
  3. Format Issues

    # If you get format errors, check the supported formats:
    npx @salesforce-ux/metadata-cli generate all --format json  # or csv, yaml

Support

For issues, feature requests, or questions, please: 1. Check the documentation 2. Open an issue in the GitHub repository 3. Contact the Salesforce Design Systems team

0.2.1

5 months ago

0.2.0

6 months ago

0.1.2

6 months ago

0.2.0-alpha.2

6 months ago

0.2.0-alpha.1

6 months ago

0.2.0-alpha.0

6 months ago

0.1.1

6 months ago

0.1.0

7 months ago

0.0.1-alpha.13

7 months ago

0.0.1-alpha.12

7 months ago

0.0.1-alpha.11

7 months ago

0.0.1-alpha.10

7 months ago

0.0.1-alpha.9

7 months ago