Skip to content

Conversation

@kduma
Copy link
Contributor

@kduma kduma commented Nov 17, 2025

No description provided.

Created comprehensive JSON Schema (draft-07) for validating team print
infrastructure exports. This schema defines:

- Print servers with optional API tokens and printers
- Printers with PPD options, URIs, and language support
- Client applications with printer access mappings
- ULID-based portable identifiers
- Proper nullable field handling

The schema supports migration between WebPrint-Server versions by
preserving complete configuration including hashed API tokens.
Added comprehensive export functionality for team print infrastructure:

**Export Action:**
- Created ExportTeamConfiguration action to export complete team config
- Exports print servers, printers, client applications, and API tokens
- Generates JSON conforming to team-configuration-export-schema.json
- Includes metadata (version, export date, exporter ULID)

**Livewire Component:**
- Created ExportTeamConfigurationForm with password confirmation
- Uses Jetstream's ConfirmsPasswords trait for security
- Provides download as JSON file with proper naming
- Includes detailed export confirmation modal with security notice

**Artisan Command:**
- Created team:export-configuration command
- Takes team ULID as parameter
- Supports custom output path via --output option
- Shows export statistics (servers, printers, applications count)

**Authorization:**
- Added export() method to TeamPolicy
- Requires team owner role (ownsTeam)
- Excludes personal teams from export

**UI Integration:**
- Added export section to team settings page (teams/show.blade.php)
- Positioned before delete team section
- Only visible to team owners

The export includes all necessary data for migration between
WebPrint-Server instances, including hashed API tokens.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants