@giveitsmaller/contracts 0.33.0 → 0.34.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/accepted-options/accepted-options.json +74 -8
- package/accepted-options/image-output-routes.json +185 -0
- package/availability/availability.json +390 -16
- package/dist/openapi/models/AccountLimitEntry.d.ts +1 -1
- package/dist/openapi/models/AccountLimitEntry.js +1 -1
- package/dist/openapi/models/AccountLimits.d.ts +1 -1
- package/dist/openapi/models/AccountLimits.js +1 -1
- package/dist/openapi/models/AccountLimitsLimits.d.ts +1 -1
- package/dist/openapi/models/AccountLimitsLimits.js +1 -1
- package/dist/openapi/models/AccountLimitsSuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/AccountLimitsSuccessEnvelope.js +1 -1
- package/dist/openapi/models/AudioWatermarkDecodeRequest.d.ts +1 -1
- package/dist/openapi/models/AudioWatermarkDecodeRequest.js +1 -1
- package/dist/openapi/models/AudioWatermarkDecodeResponse.d.ts +1 -1
- package/dist/openapi/models/AudioWatermarkDecodeResponse.js +1 -1
- package/dist/openapi/models/AuthErrorResponse.d.ts +1 -1
- package/dist/openapi/models/AuthErrorResponse.js +1 -1
- package/dist/openapi/models/AuthErrorType.d.ts +1 -1
- package/dist/openapi/models/AuthErrorType.js +1 -1
- package/dist/openapi/models/AuthRejectionEnvelope.d.ts +1 -1
- package/dist/openapi/models/AuthRejectionEnvelope.js +1 -1
- package/dist/openapi/models/AvailabilityValue.d.ts +1 -1
- package/dist/openapi/models/AvailabilityValue.js +1 -1
- package/dist/openapi/models/BalanceExhaustedResponse.d.ts +1 -1
- package/dist/openapi/models/BalanceExhaustedResponse.js +1 -1
- package/dist/openapi/models/BalanceExhaustedResponseAllOfLinks.d.ts +1 -1
- package/dist/openapi/models/BalanceExhaustedResponseAllOfLinks.js +1 -1
- package/dist/openapi/models/CallbackEventType.d.ts +1 -1
- package/dist/openapi/models/CallbackEventType.js +1 -1
- package/dist/openapi/models/ChangePasswordRequest.d.ts +1 -1
- package/dist/openapi/models/ChangePasswordRequest.js +1 -1
- package/dist/openapi/models/CompositionPlan.d.ts +1 -1
- package/dist/openapi/models/CompositionPlan.js +1 -1
- package/dist/openapi/models/CompositionPlanJob.d.ts +1 -1
- package/dist/openapi/models/CompositionPlanJob.js +1 -1
- package/dist/openapi/models/CompositionPlanOperation.d.ts +1 -1
- package/dist/openapi/models/CompositionPlanOperation.js +1 -1
- package/dist/openapi/models/ConfirmEmailChange200Response.d.ts +1 -1
- package/dist/openapi/models/ConfirmEmailChange200Response.js +1 -1
- package/dist/openapi/models/ConfirmEmailChange200ResponseData.d.ts +1 -1
- package/dist/openapi/models/ConfirmEmailChange200ResponseData.js +1 -1
- package/dist/openapi/models/ConfirmEmailChangeRequest.d.ts +1 -1
- package/dist/openapi/models/ConfirmEmailChangeRequest.js +1 -1
- package/dist/openapi/models/ConnectionSource.d.ts +1 -1
- package/dist/openapi/models/ConnectionSource.js +1 -1
- package/dist/openapi/models/ContactRequest.d.ts +1 -1
- package/dist/openapi/models/ContactRequest.js +1 -1
- package/dist/openapi/models/ContactSubject.d.ts +1 -1
- package/dist/openapi/models/ContactSubject.js +1 -1
- package/dist/openapi/models/ContactValidationErrorResponse.d.ts +1 -1
- package/dist/openapi/models/ContactValidationErrorResponse.js +1 -1
- package/dist/openapi/models/CreateApiKey201Response.d.ts +1 -1
- package/dist/openapi/models/CreateApiKey201Response.js +1 -1
- package/dist/openapi/models/CreateApiKey201ResponseData.d.ts +1 -1
- package/dist/openapi/models/CreateApiKey201ResponseData.js +1 -1
- package/dist/openapi/models/CreateApiKeyRequest.d.ts +1 -1
- package/dist/openapi/models/CreateApiKeyRequest.js +1 -1
- package/dist/openapi/models/CreateExternalImport403Response.d.ts +1 -1
- package/dist/openapi/models/CreateExternalImport403Response.js +1 -1
- package/dist/openapi/models/CreateExternalImport422Response.d.ts +1 -1
- package/dist/openapi/models/CreateExternalImport422Response.js +1 -1
- package/dist/openapi/models/CreateWorkflow422Response.d.ts +1 -1
- package/dist/openapi/models/CreateWorkflow422Response.js +1 -1
- package/dist/openapi/models/CreditTransaction.d.ts +1 -1
- package/dist/openapi/models/CreditTransaction.js +1 -1
- package/dist/openapi/models/CreditTransactionSourceBucket.d.ts +1 -1
- package/dist/openapi/models/CreditTransactionSourceBucket.js +1 -1
- package/dist/openapi/models/CreditsBalanceResponse.d.ts +1 -1
- package/dist/openapi/models/CreditsBalanceResponse.js +1 -1
- package/dist/openapi/models/CreditsBalanceSuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/CreditsBalanceSuccessEnvelope.js +1 -1
- package/dist/openapi/models/CreditsUsageResponse.d.ts +1 -1
- package/dist/openapi/models/CreditsUsageResponse.js +1 -1
- package/dist/openapi/models/CreditsUsageSuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/CreditsUsageSuccessEnvelope.js +1 -1
- package/dist/openapi/models/Delivery.d.ts +1 -1
- package/dist/openapi/models/Delivery.js +1 -1
- package/dist/openapi/models/DeliveryOutputRef.d.ts +1 -1
- package/dist/openapi/models/DeliveryOutputRef.js +1 -1
- package/dist/openapi/models/DeliveryPlan.d.ts +1 -1
- package/dist/openapi/models/DeliveryPlan.js +1 -1
- package/dist/openapi/models/DeliveryPlanOutput.d.ts +1 -1
- package/dist/openapi/models/DeliveryPlanOutput.js +1 -1
- package/dist/openapi/models/DeliveryPlanReason.d.ts +1 -1
- package/dist/openapi/models/DeliveryPlanReason.js +1 -1
- package/dist/openapi/models/DeliverySelection.d.ts +1 -1
- package/dist/openapi/models/DeliverySelection.js +1 -1
- package/dist/openapi/models/DownloadBundle.d.ts +1 -1
- package/dist/openapi/models/DownloadBundle.js +1 -1
- package/dist/openapi/models/EmptySuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/EmptySuccessEnvelope.js +1 -1
- package/dist/openapi/models/EndpointProjection.d.ts +1 -1
- package/dist/openapi/models/EndpointProjection.js +1 -1
- package/dist/openapi/models/ErrorEnvelope.d.ts +1 -1
- package/dist/openapi/models/ErrorEnvelope.js +1 -1
- package/dist/openapi/models/EstimateQuality.d.ts +1 -1
- package/dist/openapi/models/EstimateQuality.js +1 -1
- package/dist/openapi/models/EstimateRange.d.ts +1 -1
- package/dist/openapi/models/EstimateRange.js +1 -1
- package/dist/openapi/models/ExternalDestination.d.ts +1 -1
- package/dist/openapi/models/ExternalDestination.js +1 -1
- package/dist/openapi/models/ExternalImportCreatedResponse.d.ts +1 -1
- package/dist/openapi/models/ExternalImportCreatedResponse.js +1 -1
- package/dist/openapi/models/ExternalImportCreatedSuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/ExternalImportCreatedSuccessEnvelope.js +1 -1
- package/dist/openapi/models/ExternalImportRequest.d.ts +1 -1
- package/dist/openapi/models/ExternalImportRequest.js +1 -1
- package/dist/openapi/models/ExternalImportToken.d.ts +1 -1
- package/dist/openapi/models/ExternalImportToken.js +1 -1
- package/dist/openapi/models/ExternalSource.d.ts +1 -1
- package/dist/openapi/models/ExternalSource.js +1 -1
- package/dist/openapi/models/FeatureNotAvailableResponse.d.ts +1 -1
- package/dist/openapi/models/FeatureNotAvailableResponse.js +1 -1
- package/dist/openapi/models/FeatureTierRestrictedResponse.d.ts +1 -1
- package/dist/openapi/models/FeatureTierRestrictedResponse.js +1 -1
- package/dist/openapi/models/FeatureViolation.d.ts +1 -1
- package/dist/openapi/models/FeatureViolation.js +1 -1
- package/dist/openapi/models/ForgotPasswordRequest.d.ts +1 -1
- package/dist/openapi/models/ForgotPasswordRequest.js +1 -1
- package/dist/openapi/models/ImageEncodeCapabilities.d.ts +1 -1
- package/dist/openapi/models/ImageEncodeCapabilities.js +1 -1
- package/dist/openapi/models/JobDefinition.d.ts +1 -1
- package/dist/openapi/models/JobDefinition.js +1 -1
- package/dist/openapi/models/JobDownload.d.ts +1 -1
- package/dist/openapi/models/JobDownload.js +1 -1
- package/dist/openapi/models/JobInputV2.d.ts +1 -1
- package/dist/openapi/models/JobInputV2.js +1 -1
- package/dist/openapi/models/JobMediaClass.d.ts +1 -1
- package/dist/openapi/models/JobMediaClass.js +1 -1
- package/dist/openapi/models/JobOutputSource.d.ts +1 -1
- package/dist/openapi/models/JobOutputSource.js +1 -1
- package/dist/openapi/models/JobResponse.d.ts +1 -1
- package/dist/openapi/models/JobResponse.js +1 -1
- package/dist/openapi/models/JobStatus.d.ts +1 -1
- package/dist/openapi/models/JobStatus.js +1 -1
- package/dist/openapi/models/JobType.d.ts +1 -1
- package/dist/openapi/models/JobType.js +1 -1
- package/dist/openapi/models/LivenessResponse.d.ts +1 -1
- package/dist/openapi/models/LivenessResponse.js +1 -1
- package/dist/openapi/models/LoginUser200Response.d.ts +1 -1
- package/dist/openapi/models/LoginUser200Response.js +1 -1
- package/dist/openapi/models/LoginUser200ResponseData.d.ts +1 -1
- package/dist/openapi/models/LoginUser200ResponseData.js +1 -1
- package/dist/openapi/models/LoginUser200ResponseDataUser.d.ts +1 -1
- package/dist/openapi/models/LoginUser200ResponseDataUser.js +1 -1
- package/dist/openapi/models/LoginUserRequest.d.ts +1 -1
- package/dist/openapi/models/LoginUserRequest.js +1 -1
- package/dist/openapi/models/MetadataResponse.d.ts +1 -1
- package/dist/openapi/models/MetadataResponse.js +1 -1
- package/dist/openapi/models/MetadataResponseDimensions.d.ts +1 -1
- package/dist/openapi/models/MetadataResponseDimensions.js +1 -1
- package/dist/openapi/models/MetadataResponseExif.d.ts +1 -1
- package/dist/openapi/models/MetadataResponseExif.js +1 -1
- package/dist/openapi/models/MetadataResponseExifGps.d.ts +1 -1
- package/dist/openapi/models/MetadataResponseExifGps.js +1 -1
- package/dist/openapi/models/MetadataSuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/MetadataSuccessEnvelope.js +1 -1
- package/dist/openapi/models/MimeGroupSchema.d.ts +1 -1
- package/dist/openapi/models/MimeGroupSchema.js +1 -1
- package/dist/openapi/models/MultiInputSource.d.ts +1 -1
- package/dist/openapi/models/MultiInputSource.js +1 -1
- package/dist/openapi/models/MultipartCompleteRequest.d.ts +1 -1
- package/dist/openapi/models/MultipartCompleteRequest.js +1 -1
- package/dist/openapi/models/MultipartCompleteRequestPartsInner.d.ts +1 -1
- package/dist/openapi/models/MultipartCompleteRequestPartsInner.js +1 -1
- package/dist/openapi/models/MultipartCompleteResponse.d.ts +1 -1
- package/dist/openapi/models/MultipartCompleteResponse.js +1 -1
- package/dist/openapi/models/MultipartCompleteSuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/MultipartCompleteSuccessEnvelope.js +1 -1
- package/dist/openapi/models/MultipartInitiateRequestMetadataHint.d.ts +1 -1
- package/dist/openapi/models/MultipartInitiateRequestMetadataHint.js +1 -1
- package/dist/openapi/models/MultipartInitiateResponse.d.ts +1 -1
- package/dist/openapi/models/MultipartInitiateResponse.js +1 -1
- package/dist/openapi/models/MultipartInitiateSuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/MultipartInitiateSuccessEnvelope.js +1 -1
- package/dist/openapi/models/MultipartKeepaliveResponse.d.ts +1 -1
- package/dist/openapi/models/MultipartKeepaliveResponse.js +1 -1
- package/dist/openapi/models/MultipartKeepaliveSuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/MultipartKeepaliveSuccessEnvelope.js +1 -1
- package/dist/openapi/models/MultipartPartListing.d.ts +1 -1
- package/dist/openapi/models/MultipartPartListing.js +1 -1
- package/dist/openapi/models/MultipartPresignRequest.d.ts +1 -1
- package/dist/openapi/models/MultipartPresignRequest.js +1 -1
- package/dist/openapi/models/MultipartPresignResponse.d.ts +1 -1
- package/dist/openapi/models/MultipartPresignResponse.js +1 -1
- package/dist/openapi/models/MultipartPresignSuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/MultipartPresignSuccessEnvelope.js +1 -1
- package/dist/openapi/models/MultipartStatusResponse.d.ts +1 -1
- package/dist/openapi/models/MultipartStatusResponse.js +1 -1
- package/dist/openapi/models/MultipartStatusSuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/MultipartStatusSuccessEnvelope.js +1 -1
- package/dist/openapi/models/OperationDefinition.d.ts +1 -1
- package/dist/openapi/models/OperationDefinition.js +1 -1
- package/dist/openapi/models/OperationDownload.d.ts +1 -1
- package/dist/openapi/models/OperationDownload.js +1 -1
- package/dist/openapi/models/OperationInputModel.d.ts +1 -1
- package/dist/openapi/models/OperationInputModel.js +1 -1
- package/dist/openapi/models/OperationResponse.d.ts +1 -1
- package/dist/openapi/models/OperationResponse.js +1 -1
- package/dist/openapi/models/OperationResult.d.ts +1 -1
- package/dist/openapi/models/OperationResult.js +1 -1
- package/dist/openapi/models/OperationResultMetadata.d.ts +1 -1
- package/dist/openapi/models/OperationResultMetadata.js +1 -1
- package/dist/openapi/models/OperationResultMetrics.d.ts +1 -1
- package/dist/openapi/models/OperationResultMetrics.js +1 -1
- package/dist/openapi/models/OperationSchemaDefinition.d.ts +1 -1
- package/dist/openapi/models/OperationSchemaDefinition.js +1 -1
- package/dist/openapi/models/OperationStatus.d.ts +1 -1
- package/dist/openapi/models/OperationStatus.js +1 -1
- package/dist/openapi/models/OperationType.d.ts +1 -1
- package/dist/openapi/models/OperationType.js +1 -1
- package/dist/openapi/models/OperationsSchemaResponse.d.ts +1 -1
- package/dist/openapi/models/OperationsSchemaResponse.js +1 -1
- package/dist/openapi/models/OperationsSchemaResponseWorkflowFeatures.d.ts +1 -1
- package/dist/openapi/models/OperationsSchemaResponseWorkflowFeatures.js +1 -1
- package/dist/openapi/models/OperationsSchemaResponseWorkflowFeaturesDelivery.d.ts +1 -1
- package/dist/openapi/models/OperationsSchemaResponseWorkflowFeaturesDelivery.js +1 -1
- package/dist/openapi/models/OperationsSchemaResponseWorkflowFeaturesDeliveryMode.d.ts +1 -1
- package/dist/openapi/models/OperationsSchemaResponseWorkflowFeaturesDeliveryMode.js +1 -1
- package/dist/openapi/models/OperationsSchemaResponseWorkflowFeaturesDeliverySelection.d.ts +1 -1
- package/dist/openapi/models/OperationsSchemaResponseWorkflowFeaturesDeliverySelection.js +1 -1
- package/dist/openapi/models/OptionSchema.d.ts +33 -1
- package/dist/openapi/models/OptionSchema.js +10 -1
- package/dist/openapi/models/PerRoleCardinalityEntry.d.ts +1 -1
- package/dist/openapi/models/PerRoleCardinalityEntry.js +1 -1
- package/dist/openapi/models/PerValueAvailabilityEntry.d.ts +1 -1
- package/dist/openapi/models/PerValueAvailabilityEntry.js +1 -1
- package/dist/openapi/models/PresignedUrlPart.d.ts +1 -1
- package/dist/openapi/models/PresignedUrlPart.js +1 -1
- package/dist/openapi/models/ProbePendingResponse.d.ts +1 -1
- package/dist/openapi/models/ProbePendingResponse.js +1 -1
- package/dist/openapi/models/ProcessingClass.d.ts +1 -1
- package/dist/openapi/models/ProcessingClass.js +1 -1
- package/dist/openapi/models/ProcessingClassBandViolation.d.ts +1 -1
- package/dist/openapi/models/ProcessingClassBandViolation.js +1 -1
- package/dist/openapi/models/ProcessingClassConstraints.d.ts +1 -1
- package/dist/openapi/models/ProcessingClassConstraints.js +1 -1
- package/dist/openapi/models/ProcessingClassEntry.d.ts +1 -1
- package/dist/openapi/models/ProcessingClassEntry.js +1 -1
- package/dist/openapi/models/ProcessingClassExceedsBandResponse.d.ts +1 -1
- package/dist/openapi/models/ProcessingClassExceedsBandResponse.js +1 -1
- package/dist/openapi/models/ProcessingClassHint.d.ts +1 -1
- package/dist/openapi/models/ProcessingClassHint.js +1 -1
- package/dist/openapi/models/ProcessingClassReason.d.ts +1 -1
- package/dist/openapi/models/ProcessingClassReason.js +1 -1
- package/dist/openapi/models/ProcessingClassRejectReason.d.ts +1 -1
- package/dist/openapi/models/ProcessingClassRejectReason.js +1 -1
- package/dist/openapi/models/ProcessingPlan.d.ts +1 -1
- package/dist/openapi/models/ProcessingPlan.js +1 -1
- package/dist/openapi/models/ProcessingPlanJob.d.ts +1 -1
- package/dist/openapi/models/ProcessingPlanJob.js +1 -1
- package/dist/openapi/models/ReEncodeDecision.d.ts +1 -1
- package/dist/openapi/models/ReEncodeDecision.js +1 -1
- package/dist/openapi/models/ReadinessResponse.d.ts +1 -1
- package/dist/openapi/models/ReadinessResponse.js +1 -1
- package/dist/openapi/models/RegisterUser422Response.d.ts +1 -1
- package/dist/openapi/models/RegisterUser422Response.js +1 -1
- package/dist/openapi/models/RegisterUserRequest.d.ts +1 -1
- package/dist/openapi/models/RegisterUserRequest.js +1 -1
- package/dist/openapi/models/ResetPasswordRequest.d.ts +1 -1
- package/dist/openapi/models/ResetPasswordRequest.js +1 -1
- package/dist/openapi/models/ResponseEnvelope.d.ts +1 -1
- package/dist/openapi/models/ResponseEnvelope.js +1 -1
- package/dist/openapi/models/RetryResponse.d.ts +1 -1
- package/dist/openapi/models/RetryResponse.js +1 -1
- package/dist/openapi/models/RetrySuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/RetrySuccessEnvelope.js +1 -1
- package/dist/openapi/models/SseCompletionBase.d.ts +1 -1
- package/dist/openapi/models/SseCompletionBase.js +1 -1
- package/dist/openapi/models/SseEventType.d.ts +1 -1
- package/dist/openapi/models/SseEventType.js +1 -1
- package/dist/openapi/models/SseJobCompletedData.d.ts +1 -1
- package/dist/openapi/models/SseJobCompletedData.js +1 -1
- package/dist/openapi/models/SseJobFailedData.d.ts +1 -1
- package/dist/openapi/models/SseJobFailedData.js +1 -1
- package/dist/openapi/models/SseMultiOutputCompletion.d.ts +1 -1
- package/dist/openapi/models/SseMultiOutputCompletion.js +1 -1
- package/dist/openapi/models/SseMultiOutputCompletionMetrics.d.ts +1 -1
- package/dist/openapi/models/SseMultiOutputCompletionMetrics.js +1 -1
- package/dist/openapi/models/SseMultiOutputCompletionWithKind.d.ts +1 -1
- package/dist/openapi/models/SseMultiOutputCompletionWithKind.js +1 -1
- package/dist/openapi/models/SseMultiOutputResultEntry.d.ts +1 -1
- package/dist/openapi/models/SseMultiOutputResultEntry.js +1 -1
- package/dist/openapi/models/SseOperationCompletedData.d.ts +1 -1
- package/dist/openapi/models/SseOperationCompletedData.js +1 -1
- package/dist/openapi/models/SseOperationCompletionResult.d.ts +1 -1
- package/dist/openapi/models/SseOperationCompletionResult.js +1 -1
- package/dist/openapi/models/SseOperationFailedData.d.ts +1 -1
- package/dist/openapi/models/SseOperationFailedData.js +1 -1
- package/dist/openapi/models/SseOperationProgressData.d.ts +1 -1
- package/dist/openapi/models/SseOperationProgressData.js +1 -1
- package/dist/openapi/models/SseSingleOutputCompletion.d.ts +1 -1
- package/dist/openapi/models/SseSingleOutputCompletion.js +1 -1
- package/dist/openapi/models/SseWorkflowTerminalData.d.ts +1 -1
- package/dist/openapi/models/SseWorkflowTerminalData.js +1 -1
- package/dist/openapi/models/TierRestrictionKind.d.ts +1 -1
- package/dist/openapi/models/TierRestrictionKind.js +1 -1
- package/dist/openapi/models/TierRestrictionResponse.d.ts +1 -1
- package/dist/openapi/models/TierRestrictionResponse.js +1 -1
- package/dist/openapi/models/UpdateProfile200Response.d.ts +1 -1
- package/dist/openapi/models/UpdateProfile200Response.js +1 -1
- package/dist/openapi/models/UpdateProfile200ResponseData.d.ts +1 -1
- package/dist/openapi/models/UpdateProfile200ResponseData.js +1 -1
- package/dist/openapi/models/UpdateProfile422Response.d.ts +1 -1
- package/dist/openapi/models/UpdateProfile422Response.js +1 -1
- package/dist/openapi/models/UpdateProfileRequest.d.ts +1 -1
- package/dist/openapi/models/UpdateProfileRequest.js +1 -1
- package/dist/openapi/models/UploadConstraintsApplied.d.ts +1 -1
- package/dist/openapi/models/UploadConstraintsApplied.js +1 -1
- package/dist/openapi/models/UploadDurationExceedsTierResponse.d.ts +1 -1
- package/dist/openapi/models/UploadDurationExceedsTierResponse.js +1 -1
- package/dist/openapi/models/UploadFile403Response.d.ts +1 -1
- package/dist/openapi/models/UploadFile403Response.js +1 -1
- package/dist/openapi/models/UploadFile422Response.d.ts +1 -1
- package/dist/openapi/models/UploadFile422Response.js +1 -1
- package/dist/openapi/models/UploadProbeMediaMetadata.d.ts +1 -1
- package/dist/openapi/models/UploadProbeMediaMetadata.js +1 -1
- package/dist/openapi/models/UploadProbeProcessingClass.d.ts +1 -1
- package/dist/openapi/models/UploadProbeProcessingClass.js +1 -1
- package/dist/openapi/models/UploadProbeResponse.d.ts +1 -1
- package/dist/openapi/models/UploadProbeResponse.js +1 -1
- package/dist/openapi/models/UploadProbeStatus.d.ts +1 -1
- package/dist/openapi/models/UploadProbeStatus.js +1 -1
- package/dist/openapi/models/UploadProbeSuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/UploadProbeSuccessEnvelope.js +1 -1
- package/dist/openapi/models/UploadResponse.d.ts +1 -1
- package/dist/openapi/models/UploadResponse.js +1 -1
- package/dist/openapi/models/UploadSizeExceedsTierResponse.d.ts +1 -1
- package/dist/openapi/models/UploadSizeExceedsTierResponse.js +1 -1
- package/dist/openapi/models/UploadSource.d.ts +1 -1
- package/dist/openapi/models/UploadSource.js +1 -1
- package/dist/openapi/models/UploadSuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/UploadSuccessEnvelope.js +1 -1
- package/dist/openapi/models/UploadThresholds.d.ts +1 -1
- package/dist/openapi/models/UploadThresholds.js +1 -1
- package/dist/openapi/models/UserTier.d.ts +1 -1
- package/dist/openapi/models/UserTier.js +1 -1
- package/dist/openapi/models/ValidationErrorEnvelope.d.ts +1 -1
- package/dist/openapi/models/ValidationErrorEnvelope.js +1 -1
- package/dist/openapi/models/ValidationErrorEnvelopeDetailsInner.d.ts +1 -1
- package/dist/openapi/models/ValidationErrorEnvelopeDetailsInner.js +1 -1
- package/dist/openapi/models/VerifyEmailRequest.d.ts +1 -1
- package/dist/openapi/models/VerifyEmailRequest.js +1 -1
- package/dist/openapi/models/WarningType.d.ts +1 -1
- package/dist/openapi/models/WarningType.js +1 -1
- package/dist/openapi/models/WebhookOperationContext.d.ts +1 -1
- package/dist/openapi/models/WebhookOperationContext.js +1 -1
- package/dist/openapi/models/WebhookPayload.d.ts +1 -1
- package/dist/openapi/models/WebhookPayload.js +1 -1
- package/dist/openapi/models/WorkflowCancelBillingEffect.d.ts +1 -1
- package/dist/openapi/models/WorkflowCancelBillingEffect.js +1 -1
- package/dist/openapi/models/WorkflowCancelResponse.d.ts +1 -1
- package/dist/openapi/models/WorkflowCancelResponse.js +1 -1
- package/dist/openapi/models/WorkflowCancelSuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/WorkflowCancelSuccessEnvelope.js +1 -1
- package/dist/openapi/models/WorkflowCreateRequest.d.ts +1 -1
- package/dist/openapi/models/WorkflowCreateRequest.js +1 -1
- package/dist/openapi/models/WorkflowCreateResponse.d.ts +1 -1
- package/dist/openapi/models/WorkflowCreateResponse.js +1 -1
- package/dist/openapi/models/WorkflowCreateSuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/WorkflowCreateSuccessEnvelope.js +1 -1
- package/dist/openapi/models/WorkflowDownloadResponse.d.ts +1 -1
- package/dist/openapi/models/WorkflowDownloadResponse.js +1 -1
- package/dist/openapi/models/WorkflowDownloadSuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/WorkflowDownloadSuccessEnvelope.js +1 -1
- package/dist/openapi/models/WorkflowEdge.d.ts +1 -1
- package/dist/openapi/models/WorkflowEdge.js +1 -1
- package/dist/openapi/models/WorkflowExpiredResponse.d.ts +1 -1
- package/dist/openapi/models/WorkflowExpiredResponse.js +1 -1
- package/dist/openapi/models/WorkflowListResponse.d.ts +1 -1
- package/dist/openapi/models/WorkflowListResponse.js +1 -1
- package/dist/openapi/models/WorkflowListSuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/WorkflowListSuccessEnvelope.js +1 -1
- package/dist/openapi/models/WorkflowPauseRequiredAction.d.ts +1 -1
- package/dist/openapi/models/WorkflowPauseRequiredAction.js +1 -1
- package/dist/openapi/models/WorkflowPausedDetail.d.ts +1 -1
- package/dist/openapi/models/WorkflowPausedDetail.js +1 -1
- package/dist/openapi/models/WorkflowPausedDetailLinks.d.ts +1 -1
- package/dist/openapi/models/WorkflowPausedDetailLinks.js +1 -1
- package/dist/openapi/models/WorkflowProcessing.d.ts +1 -1
- package/dist/openapi/models/WorkflowProcessing.js +1 -1
- package/dist/openapi/models/WorkflowResumeResponse.d.ts +1 -1
- package/dist/openapi/models/WorkflowResumeResponse.js +1 -1
- package/dist/openapi/models/WorkflowResumeSuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/WorkflowResumeSuccessEnvelope.js +1 -1
- package/dist/openapi/models/WorkflowSource.d.ts +1 -1
- package/dist/openapi/models/WorkflowSource.js +1 -1
- package/dist/openapi/models/WorkflowStatus.d.ts +1 -1
- package/dist/openapi/models/WorkflowStatus.js +1 -1
- package/dist/openapi/models/WorkflowStatusResponse.d.ts +1 -1
- package/dist/openapi/models/WorkflowStatusResponse.js +1 -1
- package/dist/openapi/models/WorkflowStatusSuccessEnvelope.d.ts +1 -1
- package/dist/openapi/models/WorkflowStatusSuccessEnvelope.js +1 -1
- package/dist/openapi/models/WorkflowSummary.d.ts +1 -1
- package/dist/openapi/models/WorkflowSummary.js +1 -1
- package/dist/openapi/models/WorkflowSummaryJob.d.ts +1 -1
- package/dist/openapi/models/WorkflowSummaryJob.js +1 -1
- package/dist/openapi/models/WorkflowWarning.d.ts +1 -1
- package/dist/openapi/models/WorkflowWarning.js +1 -1
- package/dist/openapi/models/WorkflowWarningSeverity.d.ts +1 -1
- package/dist/openapi/models/WorkflowWarningSeverity.js +1 -1
- package/dist/openapi/runtime.d.ts +1 -1
- package/dist/openapi/runtime.js +1 -1
- package/dist/operations/compress.d.ts +77 -4
- package/dist/operations/compress.js +54 -0
- package/dist/operations/compress.metadata.js +117 -4
- package/openapi/api.yaml +27 -1
- package/operation-capabilities/operation-capabilities.json +1 -1
- package/operations/schemas/compress.yaml +325 -21
- package/operations/schemas/convert.yaml +10 -1
- package/package.json +3 -1
|
@@ -33,28 +33,69 @@ operation:
|
|
|
33
33
|
# dangling coming-soon values are dishonest at source; every other format
|
|
34
34
|
# change is the convert operation's job (all stable). Re-add a target here
|
|
35
35
|
# only when its compress+format canonicalization actually ships.
|
|
36
|
+
#
|
|
37
|
+
# ---- ROUTE-AWARE "OUTPUT" model (image-options Phase 0, tewB37Jg) ----
|
|
38
|
+
# The user-facing "Output" operation IS this compress op + output_format:
|
|
39
|
+
# the API routes by comparing the authored/resolved output_format to the
|
|
40
|
+
# input format — same_format (output_format == input, or `original`) runs
|
|
41
|
+
# the libcaesium OPTIMISER; format_change runs the convert TRANSCODER (the
|
|
42
|
+
# VcPeRWdD facade). Each option carries `honored_on: [<route>...]` declaring
|
|
43
|
+
# which route's worker reads it (absent ≡ all routes its depends_on admits;
|
|
44
|
+
# see FORMAT.md §"Route-aware Output model"). The derived per-(media, route,
|
|
45
|
+
# output_format) projection is accepted-options/image-output-routes.json.
|
|
46
|
+
#
|
|
47
|
+
# RESIZE-INSIDE-OUTPUT ships STABLE (hub-directed fast-path, 2026-06-22):
|
|
48
|
+
# width / height / fit + max_output_pixels — backed by the PROVEN image
|
|
49
|
+
# resize engine (thumbnail-images Lanczos, 1-16384, 16MP cap; live), routed
|
|
50
|
+
# onto the Output path. Resize is a REPLACE transform inside Output (ONE
|
|
51
|
+
# transformed output) — NOT thumbnail's derivative/preview semantics;
|
|
52
|
+
# thumbnail.yaml stays the preview op untouched. Flat keys keyed to the
|
|
53
|
+
# Output (compress) op, matching thumbnail.yaml's resize shape.
|
|
54
|
+
#
|
|
55
|
+
# The remaining PHASE 1 controls land availability:planned (ANTI-REGRESSION:
|
|
56
|
+
# no stable-flip until the worker honours it + API proves representability —
|
|
57
|
+
# plan §2.5; FE-hidden / API-422 until then). They are route-CONDITIONAL,
|
|
58
|
+
# which is why they ride the route-aware honored_on model:
|
|
59
|
+
# lossless (jpeg/webp) -> the worker `lossless` bool the API has never
|
|
60
|
+
# emitted (product-parked); planned, optimiser (same_format) route only.
|
|
61
|
+
# metadata: keep -> un-hardcode keep_metadata=false; planned value
|
|
62
|
+
# on the existing `metadata` enum.
|
|
63
|
+
# lossy (png) -> palette quantization (pngquant/imagequant-class);
|
|
64
|
+
# planned + licensing-gated by the lambdas spike — do NOT stable-flip
|
|
65
|
+
# until that confirms a permissive path.
|
|
36
66
|
image_jpeg:
|
|
37
67
|
mimes:
|
|
38
68
|
- image/jpeg
|
|
69
|
+
# Resize-inside-Output (planned) shares thumbnail-image's 16MP output-area
|
|
70
|
+
# wall — the per-axis 16384 cap can't express it (FORMAT.md §max_output_pixels).
|
|
71
|
+
max_output_pixels: 16000000
|
|
39
72
|
options:
|
|
40
73
|
quality:
|
|
41
74
|
type: integer
|
|
42
75
|
min: 1
|
|
43
76
|
max: 100
|
|
44
77
|
default: 80
|
|
78
|
+
honored_on: [same_format]
|
|
45
79
|
description: "Compression quality (1 = smallest file, 100 = best quality)."
|
|
46
80
|
metadata:
|
|
47
81
|
type: enum
|
|
48
|
-
values: [all]
|
|
82
|
+
values: [all, keep]
|
|
49
83
|
default: all
|
|
84
|
+
per_value_availability:
|
|
85
|
+
keep: { availability: planned }
|
|
86
|
+
honored_on: [same_format]
|
|
50
87
|
description: >-
|
|
51
|
-
Metadata handling. `all` = strip all EXIF/IPTC/XMP
|
|
52
|
-
behaviour
|
|
53
|
-
|
|
88
|
+
Metadata handling. `all` = strip all EXIF/IPTC/XMP (default, the only
|
|
89
|
+
live behaviour — the compress worker hardcodes keep_metadata=false).
|
|
90
|
+
`keep` = preserve metadata — `planned` (the worker cannot preserve it
|
|
91
|
+
yet; un-hardcoding keep_metadata is the Phase 1 keep/strip toggle).
|
|
92
|
+
Optimiser (same_format) route — the format-change transcoder has no
|
|
93
|
+
metadata-preservation control today.
|
|
54
94
|
progressive:
|
|
55
95
|
type: boolean
|
|
56
96
|
default: true
|
|
57
|
-
|
|
97
|
+
honored_on: [same_format]
|
|
98
|
+
description: "Enable progressive JPEG rendering (a low-quality preview renders first, then refines). JPEG only — the optimiser (same_format) route."
|
|
58
99
|
output_format:
|
|
59
100
|
type: enum
|
|
60
101
|
values: [original, webp]
|
|
@@ -64,31 +105,76 @@ operation:
|
|
|
64
105
|
WebP — the one live compress+format target (proven on staging). Other format
|
|
65
106
|
changes (jpeg/png/avif/gif/tiff) are the convert operation's job, not compress.
|
|
66
107
|
See FORMAT.md.
|
|
108
|
+
lossless:
|
|
109
|
+
type: boolean
|
|
110
|
+
default: false
|
|
111
|
+
availability: planned
|
|
112
|
+
honored_on: [same_format]
|
|
113
|
+
description: >-
|
|
114
|
+
Encode losslessly (JPEG optimiser path). `planned` — the worker carries
|
|
115
|
+
a `lossless` bool the API has never emitted (product-parked: a lossless
|
|
116
|
+
output can be LARGER than lossy). Optimiser (same_format) route only.
|
|
117
|
+
width:
|
|
118
|
+
type: integer
|
|
119
|
+
min: 1
|
|
120
|
+
max: 16384
|
|
121
|
+
honored_on: [same_format, format_change]
|
|
122
|
+
description: >-
|
|
123
|
+
Resize-inside-Output: target width in pixels (1-16384; width*height <=
|
|
124
|
+
max_output_pixels). Resize the image as part of Output (replace semantics,
|
|
125
|
+
ONE transformed output) using the proven image resize engine (Lanczos,
|
|
126
|
+
shared with thumbnail-images) — it is NOT the derivative `thumbnail` op.
|
|
127
|
+
Optional; omit to keep the source dimensions.
|
|
128
|
+
height:
|
|
129
|
+
type: integer
|
|
130
|
+
min: 1
|
|
131
|
+
max: 16384
|
|
132
|
+
honored_on: [same_format, format_change]
|
|
133
|
+
description: "Resize-inside-Output: target height in pixels (1-16384; width*height <= max_output_pixels). Resize replaces the image (one output). Optional — see `width`."
|
|
134
|
+
fit:
|
|
135
|
+
type: enum
|
|
136
|
+
values: [max, crop, scale]
|
|
137
|
+
default: max
|
|
138
|
+
depends_on: { width: set, height: set, logic: or }
|
|
139
|
+
honored_on: [same_format, format_change]
|
|
140
|
+
description: >-
|
|
141
|
+
Resize mode. max = fit within bounds (preserves aspect ratio, no crop),
|
|
142
|
+
crop/scale = exact dimensions. Applies only when width or height is set,
|
|
143
|
+
on whichever Output route runs.
|
|
67
144
|
|
|
68
145
|
image_png:
|
|
69
146
|
mimes:
|
|
70
147
|
- image/png
|
|
148
|
+
max_output_pixels: 16000000
|
|
71
149
|
options:
|
|
72
150
|
quality:
|
|
73
151
|
type: integer
|
|
74
152
|
min: 1
|
|
75
153
|
max: 100
|
|
76
154
|
default: 80
|
|
155
|
+
honored_on: [same_format]
|
|
77
156
|
description: "Compression quality (1 = smallest file, 100 = best quality)."
|
|
78
157
|
metadata:
|
|
79
158
|
type: enum
|
|
80
|
-
values: [all]
|
|
159
|
+
values: [all, keep]
|
|
81
160
|
default: all
|
|
161
|
+
per_value_availability:
|
|
162
|
+
keep: { availability: planned }
|
|
163
|
+
honored_on: [same_format]
|
|
82
164
|
description: >-
|
|
83
|
-
Metadata handling. `all` = strip all EXIF/IPTC/XMP
|
|
84
|
-
behaviour
|
|
85
|
-
|
|
165
|
+
Metadata handling. `all` = strip all EXIF/IPTC/XMP (default, the only
|
|
166
|
+
live behaviour — the compress worker hardcodes keep_metadata=false).
|
|
167
|
+
`keep` = preserve metadata — `planned` (the worker cannot preserve it
|
|
168
|
+
yet; un-hardcoding keep_metadata is the Phase 1 keep/strip toggle).
|
|
169
|
+
Optimiser (same_format) route — the format-change transcoder has no
|
|
170
|
+
metadata-preservation control today.
|
|
86
171
|
optimization_level:
|
|
87
172
|
type: integer
|
|
88
173
|
min: 0
|
|
89
174
|
max: 6
|
|
90
175
|
default: 3
|
|
91
|
-
|
|
176
|
+
honored_on: [same_format]
|
|
177
|
+
description: "PNG optimization effort (0-6, oxipng). Higher = smaller file, slower encode. Default 3. Optimiser (same_format) route."
|
|
92
178
|
output_format:
|
|
93
179
|
type: enum
|
|
94
180
|
values: [original, webp]
|
|
@@ -98,6 +184,44 @@ operation:
|
|
|
98
184
|
WebP — the one live compress+format target (proven on staging). Other format
|
|
99
185
|
changes (jpeg/png/avif/gif/tiff) are the convert operation's job, not compress.
|
|
100
186
|
See FORMAT.md.
|
|
187
|
+
lossy:
|
|
188
|
+
type: boolean
|
|
189
|
+
default: false
|
|
190
|
+
availability: planned
|
|
191
|
+
honored_on: [same_format]
|
|
192
|
+
description: >-
|
|
193
|
+
Lossy PNG palette quantization (pngquant/imagequant-class) — a large
|
|
194
|
+
saving for flat-colour PNGs. `planned` AND LICENSING-GATED: do not
|
|
195
|
+
stable-flip until the lambdas licensing spike confirms a permissive
|
|
196
|
+
quantizer path (libimagequant/pngquant is GPL-or-commercial). Optimiser
|
|
197
|
+
(same_format) route only.
|
|
198
|
+
width:
|
|
199
|
+
type: integer
|
|
200
|
+
min: 1
|
|
201
|
+
max: 16384
|
|
202
|
+
honored_on: [same_format, format_change]
|
|
203
|
+
description: >-
|
|
204
|
+
Resize-inside-Output: target width in pixels (1-16384; width*height <=
|
|
205
|
+
max_output_pixels). Resize the image as part of Output (replace semantics,
|
|
206
|
+
ONE transformed output) using the proven image resize engine (Lanczos,
|
|
207
|
+
shared with thumbnail-images) — it is NOT the derivative `thumbnail` op.
|
|
208
|
+
Optional; omit to keep the source dimensions.
|
|
209
|
+
height:
|
|
210
|
+
type: integer
|
|
211
|
+
min: 1
|
|
212
|
+
max: 16384
|
|
213
|
+
honored_on: [same_format, format_change]
|
|
214
|
+
description: "Resize-inside-Output: target height in pixels (1-16384; width*height <= max_output_pixels). Resize replaces the image (one output). Optional — see `width`."
|
|
215
|
+
fit:
|
|
216
|
+
type: enum
|
|
217
|
+
values: [max, crop, scale]
|
|
218
|
+
default: max
|
|
219
|
+
depends_on: { width: set, height: set, logic: or }
|
|
220
|
+
honored_on: [same_format, format_change]
|
|
221
|
+
description: >-
|
|
222
|
+
Resize mode. max = fit within bounds (preserves aspect ratio, no crop),
|
|
223
|
+
crop/scale = exact dimensions. Applies only when width or height is set,
|
|
224
|
+
on whichever Output route runs.
|
|
101
225
|
|
|
102
226
|
image_avif:
|
|
103
227
|
availability: beta
|
|
@@ -112,27 +236,36 @@ operation:
|
|
|
112
236
|
# contract vocab today; tracked for the image-size-cap mechanism (F3).
|
|
113
237
|
mimes:
|
|
114
238
|
- image/avif
|
|
239
|
+
max_output_pixels: 16000000
|
|
115
240
|
options:
|
|
116
241
|
quality:
|
|
117
242
|
type: integer
|
|
118
243
|
min: 1
|
|
119
244
|
max: 100
|
|
120
245
|
default: 80
|
|
246
|
+
honored_on: [same_format]
|
|
121
247
|
description: "Compression quality (1 = smallest file, 100 = best quality)."
|
|
122
248
|
metadata:
|
|
123
249
|
type: enum
|
|
124
|
-
values: [all]
|
|
250
|
+
values: [all, keep]
|
|
125
251
|
default: all
|
|
252
|
+
per_value_availability:
|
|
253
|
+
keep: { availability: planned }
|
|
254
|
+
honored_on: [same_format]
|
|
126
255
|
description: >-
|
|
127
|
-
Metadata handling. `all` = strip all EXIF/IPTC/XMP
|
|
128
|
-
behaviour
|
|
129
|
-
|
|
256
|
+
Metadata handling. `all` = strip all EXIF/IPTC/XMP (default, the only
|
|
257
|
+
live behaviour — the compress worker hardcodes keep_metadata=false).
|
|
258
|
+
`keep` = preserve metadata — `planned` (the worker cannot preserve it
|
|
259
|
+
yet; un-hardcoding keep_metadata is the Phase 1 keep/strip toggle).
|
|
260
|
+
Optimiser (same_format) route — the format-change transcoder has no
|
|
261
|
+
metadata-preservation control today.
|
|
130
262
|
avif_speed:
|
|
131
263
|
type: integer
|
|
132
264
|
min: 1
|
|
133
265
|
max: 10
|
|
134
266
|
default: 4
|
|
135
|
-
|
|
267
|
+
honored_on: [same_format]
|
|
268
|
+
description: "AVIF encode speed (1-10, ravif). Lower = smaller file, slower encode; higher = faster, larger. Default 4. Optimiser (same_format) route."
|
|
136
269
|
output_format:
|
|
137
270
|
type: enum
|
|
138
271
|
values: [original, webp]
|
|
@@ -142,30 +275,174 @@ operation:
|
|
|
142
275
|
WebP — the one live compress+format target (proven on staging). Other format
|
|
143
276
|
changes (jpeg/png/avif/gif/tiff) are the convert operation's job, not compress.
|
|
144
277
|
See FORMAT.md.
|
|
278
|
+
width:
|
|
279
|
+
type: integer
|
|
280
|
+
min: 1
|
|
281
|
+
max: 16384
|
|
282
|
+
honored_on: [same_format, format_change]
|
|
283
|
+
description: >-
|
|
284
|
+
Resize-inside-Output: target width in pixels (1-16384; width*height <=
|
|
285
|
+
max_output_pixels). Resize the image as part of Output (replace semantics,
|
|
286
|
+
ONE transformed output) using the proven image resize engine (Lanczos,
|
|
287
|
+
shared with thumbnail-images) — it is NOT the derivative `thumbnail` op.
|
|
288
|
+
Optional; omit to keep the source dimensions.
|
|
289
|
+
height:
|
|
290
|
+
type: integer
|
|
291
|
+
min: 1
|
|
292
|
+
max: 16384
|
|
293
|
+
honored_on: [same_format, format_change]
|
|
294
|
+
description: "Resize-inside-Output: target height in pixels (1-16384; width*height <= max_output_pixels). Resize replaces the image (one output). Optional — see `width`."
|
|
295
|
+
fit:
|
|
296
|
+
type: enum
|
|
297
|
+
values: [max, crop, scale]
|
|
298
|
+
default: max
|
|
299
|
+
depends_on: { width: set, height: set, logic: or }
|
|
300
|
+
honored_on: [same_format, format_change]
|
|
301
|
+
description: >-
|
|
302
|
+
Resize mode. max = fit within bounds (preserves aspect ratio, no crop),
|
|
303
|
+
crop/scale = exact dimensions. Applies only when width or height is set,
|
|
304
|
+
on whichever Output route runs.
|
|
145
305
|
|
|
146
|
-
image:
|
|
306
|
+
# webp split out of the former bundled image group: it is the one input that
|
|
307
|
+
# carries BOTH Resize (raster, proven in thumbnail-images) AND the optimiser
|
|
308
|
+
# `lossless` knob. gif/tiff (below) resize but have no lossless; svg is vector
|
|
309
|
+
# (no raster resize, no lossless) — see image_svg.
|
|
310
|
+
image_webp:
|
|
147
311
|
mimes:
|
|
148
312
|
- image/webp
|
|
149
|
-
|
|
313
|
+
max_output_pixels: 16000000
|
|
314
|
+
options:
|
|
315
|
+
quality:
|
|
316
|
+
type: integer
|
|
317
|
+
min: 1
|
|
318
|
+
max: 100
|
|
319
|
+
default: 80
|
|
320
|
+
honored_on: [same_format]
|
|
321
|
+
description: "Compression quality (1 = smallest file, 100 = best quality)."
|
|
322
|
+
metadata:
|
|
323
|
+
type: enum
|
|
324
|
+
values: [all, keep]
|
|
325
|
+
default: all
|
|
326
|
+
per_value_availability:
|
|
327
|
+
keep: { availability: planned }
|
|
328
|
+
honored_on: [same_format]
|
|
329
|
+
description: >-
|
|
330
|
+
Metadata handling. `all` = strip all EXIF/IPTC/XMP (default, the only
|
|
331
|
+
live behaviour — the compress worker hardcodes keep_metadata=false).
|
|
332
|
+
`keep` = preserve metadata — `planned` (the worker cannot preserve it
|
|
333
|
+
yet; un-hardcoding keep_metadata is the Phase 1 keep/strip toggle).
|
|
334
|
+
Optimiser (same_format) route — the format-change transcoder has no
|
|
335
|
+
metadata-preservation control today.
|
|
336
|
+
output_format:
|
|
337
|
+
type: enum
|
|
338
|
+
values: [original, webp]
|
|
339
|
+
default: original
|
|
340
|
+
description: >-
|
|
341
|
+
Output format. original = keep input format (default); webp = recompress to
|
|
342
|
+
WebP — the one live compress+format target (proven on staging). Other format
|
|
343
|
+
changes (jpeg/png/avif/gif/tiff) are the convert operation's job, not compress.
|
|
344
|
+
See FORMAT.md.
|
|
345
|
+
lossless:
|
|
346
|
+
type: boolean
|
|
347
|
+
default: false
|
|
348
|
+
availability: planned
|
|
349
|
+
honored_on: [same_format]
|
|
350
|
+
description: >-
|
|
351
|
+
Encode WebP losslessly (optimiser path). `planned` — the worker carries a
|
|
352
|
+
`lossless` bool the API has never emitted (product-parked: lossless can be
|
|
353
|
+
LARGER). Optimiser (same_format) route only.
|
|
354
|
+
width:
|
|
355
|
+
type: integer
|
|
356
|
+
min: 1
|
|
357
|
+
max: 16384
|
|
358
|
+
honored_on: [same_format, format_change]
|
|
359
|
+
description: >-
|
|
360
|
+
Resize-inside-Output: target width in pixels (1-16384; width*height <=
|
|
361
|
+
max_output_pixels). Resize the image as part of Output (replace semantics,
|
|
362
|
+
ONE transformed output) using the proven image resize engine (Lanczos,
|
|
363
|
+
shared with thumbnail-images) — it is NOT the derivative `thumbnail` op.
|
|
364
|
+
Optional; omit to keep the source dimensions.
|
|
365
|
+
height:
|
|
366
|
+
type: integer
|
|
367
|
+
min: 1
|
|
368
|
+
max: 16384
|
|
369
|
+
honored_on: [same_format, format_change]
|
|
370
|
+
description: "Resize-inside-Output: target height in pixels (1-16384; width*height <= max_output_pixels). Resize replaces the image (one output). Optional — see `width`."
|
|
371
|
+
fit:
|
|
372
|
+
type: enum
|
|
373
|
+
values: [max, crop, scale]
|
|
374
|
+
default: max
|
|
375
|
+
depends_on: { width: set, height: set, logic: or }
|
|
376
|
+
honored_on: [same_format, format_change]
|
|
377
|
+
description: >-
|
|
378
|
+
Resize mode. max = fit within bounds (preserves aspect ratio, no crop),
|
|
379
|
+
crop/scale = exact dimensions. Applies only when width or height is set,
|
|
380
|
+
on whichever Output route runs.
|
|
381
|
+
|
|
382
|
+
# svg is VECTOR: no raster resize (thumbnail-images does not list svg), and the
|
|
383
|
+
# optimiser `lossless` knob does not apply. SVG compression is SVGO; only
|
|
384
|
+
# quality/metadata/output_format carry. NO Resize / lossless / area cap here.
|
|
385
|
+
image_svg:
|
|
386
|
+
mimes:
|
|
150
387
|
- image/svg+xml
|
|
388
|
+
options:
|
|
389
|
+
quality:
|
|
390
|
+
type: integer
|
|
391
|
+
min: 1
|
|
392
|
+
max: 100
|
|
393
|
+
default: 80
|
|
394
|
+
honored_on: [same_format]
|
|
395
|
+
description: "Compression quality (1 = smallest file, 100 = best quality)."
|
|
396
|
+
metadata:
|
|
397
|
+
type: enum
|
|
398
|
+
values: [all, keep]
|
|
399
|
+
default: all
|
|
400
|
+
per_value_availability:
|
|
401
|
+
keep: { availability: planned }
|
|
402
|
+
honored_on: [same_format]
|
|
403
|
+
description: >-
|
|
404
|
+
Metadata handling. `all` = strip all metadata (default, live). `keep` =
|
|
405
|
+
preserve metadata — `planned` (worker cannot preserve yet). Optimiser
|
|
406
|
+
(same_format) route.
|
|
407
|
+
output_format:
|
|
408
|
+
type: enum
|
|
409
|
+
values: [original, webp]
|
|
410
|
+
default: original
|
|
411
|
+
description: >-
|
|
412
|
+
Output format. original = keep input format (default); webp = recompress to
|
|
413
|
+
WebP. Other format changes are the convert operation's job. See FORMAT.md.
|
|
414
|
+
|
|
415
|
+
# gif/tiff: raster Resize is engine-proven (both are in thumbnail-images), but
|
|
416
|
+
# the optimiser `lossless` knob is WebP-only — not advertised here.
|
|
417
|
+
image:
|
|
418
|
+
mimes:
|
|
419
|
+
- image/gif
|
|
151
420
|
- image/tiff
|
|
421
|
+
max_output_pixels: 16000000
|
|
152
422
|
options:
|
|
153
423
|
quality:
|
|
154
424
|
type: integer
|
|
155
425
|
min: 1
|
|
156
426
|
max: 100
|
|
157
427
|
default: 80
|
|
428
|
+
honored_on: [same_format]
|
|
158
429
|
description: >-
|
|
159
430
|
Compression quality (1 = smallest file, 100 = best quality). For animated
|
|
160
431
|
GIF the worker honours this but real-world size reduction is typically small.
|
|
161
432
|
metadata:
|
|
162
433
|
type: enum
|
|
163
|
-
values: [all]
|
|
434
|
+
values: [all, keep]
|
|
164
435
|
default: all
|
|
436
|
+
per_value_availability:
|
|
437
|
+
keep: { availability: planned }
|
|
438
|
+
honored_on: [same_format]
|
|
165
439
|
description: >-
|
|
166
|
-
Metadata handling. `all` = strip all EXIF/IPTC/XMP
|
|
167
|
-
behaviour
|
|
168
|
-
|
|
440
|
+
Metadata handling. `all` = strip all EXIF/IPTC/XMP (default, the only
|
|
441
|
+
live behaviour — the compress worker hardcodes keep_metadata=false).
|
|
442
|
+
`keep` = preserve metadata — `planned` (the worker cannot preserve it
|
|
443
|
+
yet; un-hardcoding keep_metadata is the Phase 1 keep/strip toggle).
|
|
444
|
+
Optimiser (same_format) route — the format-change transcoder has no
|
|
445
|
+
metadata-preservation control today.
|
|
169
446
|
output_format:
|
|
170
447
|
type: enum
|
|
171
448
|
values: [original, webp]
|
|
@@ -175,6 +452,33 @@ operation:
|
|
|
175
452
|
WebP — the one live compress+format target (proven on staging). Other format
|
|
176
453
|
changes (jpeg/png/avif/gif/tiff) are the convert operation's job, not compress.
|
|
177
454
|
See FORMAT.md.
|
|
455
|
+
width:
|
|
456
|
+
type: integer
|
|
457
|
+
min: 1
|
|
458
|
+
max: 16384
|
|
459
|
+
honored_on: [same_format, format_change]
|
|
460
|
+
description: >-
|
|
461
|
+
Resize-inside-Output: target width in pixels (1-16384; width*height <=
|
|
462
|
+
max_output_pixels). Resize the image as part of Output (replace semantics,
|
|
463
|
+
ONE transformed output) using the proven image resize engine (Lanczos,
|
|
464
|
+
shared with thumbnail-images) — it is NOT the derivative `thumbnail` op.
|
|
465
|
+
Optional; omit to keep the source dimensions.
|
|
466
|
+
height:
|
|
467
|
+
type: integer
|
|
468
|
+
min: 1
|
|
469
|
+
max: 16384
|
|
470
|
+
honored_on: [same_format, format_change]
|
|
471
|
+
description: "Resize-inside-Output: target height in pixels (1-16384; width*height <= max_output_pixels). Resize replaces the image (one output). Optional — see `width`."
|
|
472
|
+
fit:
|
|
473
|
+
type: enum
|
|
474
|
+
values: [max, crop, scale]
|
|
475
|
+
default: max
|
|
476
|
+
depends_on: { width: set, height: set, logic: or }
|
|
477
|
+
honored_on: [same_format, format_change]
|
|
478
|
+
description: >-
|
|
479
|
+
Resize mode. max = fit within bounds (preserves aspect ratio, no crop),
|
|
480
|
+
crop/scale = exact dimensions. Applies only when width or height is set,
|
|
481
|
+
on whichever Output route runs.
|
|
178
482
|
|
|
179
483
|
audio:
|
|
180
484
|
mimes:
|
|
@@ -26,6 +26,13 @@ operation:
|
|
|
26
26
|
# (avif is also a valid OUTPUT via output_format — ravif encode.)
|
|
27
27
|
image/avif: { availability: beta }
|
|
28
28
|
image/heic: { availability: beta }
|
|
29
|
+
# convert.image is the TRANSCODER leg of the route-aware image "Output"
|
|
30
|
+
# model (FORMAT.md §"Route-aware Output model"): a format_change Output
|
|
31
|
+
# route (output_format != input) runs here. Its options carry
|
|
32
|
+
# `honored_on: [format_change]` so the merged per-(media, route,
|
|
33
|
+
# output_format) projection (accepted-options/image-output-routes.json)
|
|
34
|
+
# attributes them to the transcoder path — `background` is the canonical
|
|
35
|
+
# transparency→JPEG fill on format-change-to-jpeg, already live + stable.
|
|
29
36
|
options:
|
|
30
37
|
output_format:
|
|
31
38
|
type: enum
|
|
@@ -38,11 +45,13 @@ operation:
|
|
|
38
45
|
max: 100
|
|
39
46
|
default: 85
|
|
40
47
|
depends_on: { output_format: [jpeg, webp, avif] }
|
|
48
|
+
honored_on: [format_change]
|
|
41
49
|
description: "Output quality for lossy formats"
|
|
42
50
|
background:
|
|
43
51
|
type: string
|
|
44
52
|
depends_on: { output_format: jpeg }
|
|
45
|
-
|
|
53
|
+
honored_on: [format_change]
|
|
54
|
+
description: "Background colour (hex, e.g. '#ffffff') for transparent images converted to JPEG (the format-change→JPEG alpha-flatten — Output's transparency fill control)."
|
|
46
55
|
|
|
47
56
|
video:
|
|
48
57
|
mimes:
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@giveitsmaller/contracts",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.34.0",
|
|
4
4
|
"description": "Generated contract types for GISL (Give It Smaller)",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"type": "module",
|
|
@@ -27,6 +27,7 @@
|
|
|
27
27
|
"./asyncapi/events.yaml": "./asyncapi/events.yaml",
|
|
28
28
|
"./availability/availability.json": "./availability/availability.json",
|
|
29
29
|
"./accepted-options/accepted-options.json": "./accepted-options/accepted-options.json",
|
|
30
|
+
"./accepted-options/image-output-routes.json": "./accepted-options/image-output-routes.json",
|
|
30
31
|
"./operation-capabilities/operation-capabilities.json": "./operation-capabilities/operation-capabilities.json",
|
|
31
32
|
"./operations/schemas/archive.yaml": "./operations/schemas/archive.yaml",
|
|
32
33
|
"./operations/schemas/audio_overlay.yaml": "./operations/schemas/audio_overlay.yaml",
|
|
@@ -52,6 +53,7 @@
|
|
|
52
53
|
"operations/schemas/",
|
|
53
54
|
"availability/availability.json",
|
|
54
55
|
"accepted-options/accepted-options.json",
|
|
56
|
+
"accepted-options/image-output-routes.json",
|
|
55
57
|
"operation-capabilities/operation-capabilities.json"
|
|
56
58
|
],
|
|
57
59
|
"scripts": {
|