addZone method

Future<void> addZone(
  1. PrivacyZone zone
)

Adds a privacy zone.

Implementation

Future<void> addZone(PrivacyZone zone) async {
  if (!zone.isValid) {
    throw ArgumentError('Invalid privacy zone configuration');
  }

  final isNew = !_zones.containsKey(zone.identifier);
  _zones[zone.identifier] = zone;

  _zoneChangesController.add(PrivacyZoneEvent(
    type: isNew ? PrivacyZoneEventType.added : PrivacyZoneEventType.updated,
    zone: zone,
  ));

  await _persist();
}