FileUploadAction.fromYaml constructor
FileUploadAction.fromYaml({
- Map? payload,
Implementation
factory FileUploadAction.fromYaml({Map? payload}) {
if (payload == null || payload['uploadApi'] == null) {
throw LanguageError("${ActionType.uploadFiles.name} requires ' '.");
}
if (payload['files'] == null) {
throw LanguageError("${ActionType.uploadFiles.name} requires 'files'.");
}
return FileUploadAction(
id: Utils.optionalString(payload['id']),
onComplete: EnsembleAction.from(payload['onComplete']),
onError: EnsembleAction.from(payload['onError']),
uploadApi: payload['uploadApi'],
inputs: Utils.getMap(payload['inputs']),
fieldName: Utils.getString(payload['fieldName'], fallback: 'files'),
maxFileSize: Utils.optionalInt(payload['options']?['maxFileSize']),
overMaxFileSizeMessage:
Utils.optionalString(payload['options']?['overMaxFileSizeMessage']),
files: payload['files'],
isBackgroundTask:
Utils.getBool(payload['options']?['backgroundTask'], fallback: false),
networkType: Utils.optionalString(payload['options']?['networkType']),
requiresBatteryNotLow:
Utils.optionalBool(payload['options']?['requiresBatteryNotLow']),
showNotification: Utils.getBool(payload['options']?['showNotification'],
fallback: false),
batchSize: Utils.optionalInt(payload['options']?['batchSize']),
);
}