merge method
Siehe PosBusinessSettings.merge; shortcuts wird je Aktion gemischt.
Implementation
PosDeviceSettings merge(Map<String, dynamic> patch) {
_pruefeAenderung('device', patch, {..._geraetSchluessel, ...posDeviceOptionalFields}, legacyDeviceKeys);
// Die optionale Lade hat keinen Standardwert, den `_mische` fortschreiben
// koennte: sie wird getrennt gefuehrt, `null` entfernt die Zuordnung.
final lade = patch.containsKey('drawerId') ? patch['drawerId'] : drawerId;
if (lade != null && !isPosOptionalId(lade)) {
throw ArgumentError('device.drawerId: keine Kennung (1-64 Zeichen aus A-Z a-z 0-9 _ -)');
}
final json = _mische(toJson()..remove('drawerId'), {...patch}..remove('drawerId'));
return PosDeviceSettings.fromJson({...json, 'drawerId': lade});
}