AppRequest.releaseApproval constructor

AppRequest.releaseApproval({
  1. required String from,
  2. required String to,
  3. required String releaseItemId,
  4. required String releaseName,
  5. String? authorName,
  6. String? message,
})

Create a release approval request (for books, songs, etc.) from - profileId of the author submitting the release to - app identifier (e.g., "EMXI", "Gigmeout") for admin review releaseItemId - ID of the AppReleaseItem being submitted releaseName - Name of the release for the message

Implementation

factory AppRequest.releaseApproval({
  required String from,
  required String to,
  required String releaseItemId,
  required String releaseName,
  String? authorName,
  String? message,
}) {
  final now = DateTime.now().millisecondsSinceEpoch;
  return AppRequest(
    id: '${from}_release_$now',
    from: from,
    to: to,
    eventId: releaseItemId, // Using eventId to store releaseItemId
    createdTime: now,
    message: message ?? 'Solicitud de aprobación: "$releaseName" por ${authorName ?? from}',
    requestDecision: RequestDecision.pending,
  );
}