0.2.1 • Published 11 months ago

@salesforce-ux/metadata-cli v0.2.1

Weekly downloads
-
License
-
Repository
-
Last release
11 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

11 months ago

0.2.0

11 months ago

0.1.2

12 months ago

0.2.0-alpha.2

12 months ago

0.2.0-alpha.1

12 months ago

0.2.0-alpha.0

12 months ago

0.1.1

12 months ago

0.1.0

1 year ago

0.0.1-alpha.13

1 year ago

0.0.1-alpha.12

1 year ago

0.0.1-alpha.11

1 year ago

0.0.1-alpha.10

1 year ago

0.0.1-alpha.9

1 year ago