Skip to content

Implement Workflow Export/Import Functionality #12

@aydarng

Description

@aydarng

Add export and import functionality supporting both template format and native workflow+config format.

Tasks

  • Create ExportDialog component (src/components/templates/ExportDialog.tsx)

  • Create ImportDialog component (src/components/templates/ImportDialog.tsx)

  • Implement template format export with metadata form

  • Implement native format export (YAML+JSON)

  • Implement template format import with validation

  • Implement native format import (YAML+JSON)

  • Add export/import buttons to main toolbar

  • Create export/import services (src/services/exportService.ts, src/services/importService.ts)

Export Features

  • Template Format Export:

    • Template metadata form (name, description, category, tags, author)

    • Generate unique template ID

    • Create template JSON file

    • Download to user's device

  • Native Format Export:

    • Export workflow as YAML

    • Export config as JSON

    • Export both as separate files

    • Export both as ZIP archive

Import Features

  • Template Format Import:

    • Upload template JSON file

    • Validate template structure

    • Extract workflow and config

    • Load into main interface

  • Native Format Import:

    • Import workflow from YAML file

    • Import config from JSON file

    • Import both from ZIP archive

    • Validate file structure

Acceptance Criteria

  • Users can export current workflow+config as template format

  • Users can export current workflow+config as native format (YAML+JSON)

  • Users can import template files and load them into the interface

  • Users can import native format files (YAML+JSON)

  • Export dialog includes metadata form for template format

  • Import dialog validates file structure before loading

  • Export/import buttons are available in main toolbar when workflow+config are loaded

  • Both formats support all workflow and configuration data

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions