toJson method
Returns a JSON object representation.
Implementation
Map<String, dynamic> toJson() {
final step = _step;
final app = _app;
String? companyId;
String? connectorId;
String? companyName;
bool? singleSwitch;
List<String>? payments;
String? accountId;
if (step is DeeplinkStepLoginCompany) {
companyId = step.companyId;
connectorId = step.connectorId;
singleSwitch = step.singleSwitch;
} else if (step is DeeplinkStepLoginPayroll) {
connectorId = step.connectorId;
companyName = step.companyName;
}
if (app is DeeplinkAppPayNow) {
payments = app.payments;
accountId = app.accountId;
}
return <String, dynamic>{
'step': step?.id,
'app': app?.id,
'companyId': companyId,
'connectorId': connectorId,
'companyName': companyName,
'singleSwitch': singleSwitch,
'payments': payments,
'accountId': accountId,
}..removeWhere((key, value) => value == null);
}