A web-based tool that converts Excel/SmartSheet data into a specific component format for the HCCC system. This tool provides an interactive interface for mapping data fields and generating component code in the required format.
├── index.html # Main HTML interface
├── styles.css # Global styles and UI components
├── js/
│ ├── main.js # Application entry point
│ ├── App.js # Main application logic
│ ├── config.js # Configuration and field mappings
│ ├── DataProcessor.js # Data processing and transformation
│ ├── FieldMapper.js # Field mapping and row selection
│ ├── FileHandler.js # File upload and XLSX processing
│ └── UIRenderer.js # UI rendering and updates
- Provides a three-step interface for file upload, field mapping, and code generation
- Integrates Bootstrap for responsive design
- Includes code preview sections with syntax highlighting
- Implements copy-to-clipboard functionality
- Defines styles for the step progress indicator
- Implements mapping interface styles
- Provides code preview container styling
- Includes responsive design adjustments
- Application entry point
- Initializes the main App class
- Sets up event listeners for DOM content loaded
- Main application orchestrator
- Manages the workflow between components
- Handles state transitions between steps
- Implements component code generation
- Manages clipboard operations
- Defines field mappings between system IDs and human-readable labels
- Stores UI element IDs and configurations
- Centralizes configuration for easy updates
- Processes raw Excel data
- Handles data transformation and validation
- Implements field value processing logic
- Manages special field processing (e.g., certifications)
- Manages the field mapping interface
- Handles row selection functionality
- Provides data preview capabilities
- Validates mapping requirements
- Handles file upload operations
- Processes XLSX files using SheetJS
- Validates file types and formats
- Provides progress feedback
- Manages UI updates and rendering
- Handles progress indicators
- Displays error and success messages
- Updates preview sections
-
File Upload
- User uploads Excel/SmartSheet file
- FileHandler processes and validates the file
- Data is converted to JSON format
-
Field Mapping
- User maps Excel columns to required fields
- System provides preview of mapped values
- User can select specific rows for processing
-
Code Generation
- System generates component code in format:
~[com[25306 1 72{"version":72,"data":{...}}]]~
- Preview shows both JSON and component format
- User can copy either format to clipboard
- System generates component code in format:
The system generates component code in the following format:
~[com[25306 1 72{"version":72,"data":{
"field_id": "value",
...
}}]]~
- Bootstrap 5.3.2: UI framework for responsive design
- SheetJS (XLSX): Excel file processing
- Prism.js: Code syntax highlighting
-
Upload File
- Click "Upload File" button
- Select Excel/SmartSheet file
- System validates file format
-
Map Fields
- Match Excel columns to required fields
- Select specific row for processing
- Preview mapped values
-
Generate Code
- Click "Generate Code" button
- Review generated JSON and component code
- Copy required format to clipboard
- Clone the repository
- Open
index.html
in a modern browser - No build process required (vanilla JavaScript)
- Update
config.js
with new field mappings - Add any special processing in
DataProcessor.js
- Update UI components if needed
- Update
generateComponentCode
method inApp.js
- Adjust preview formatting in
UIRenderer.js
- Update tests if applicable
- Fork the repository
- Create a feature branch
- Commit changes
- Push to the branch
- Create a Pull Request