deleteAttributes method

Deletes custom attributes by key.

Implementation

@override
Future<InappifySdkResult<List<Attribute>>> deleteAttributes(
  InappifyDeleteAttributesRequest request,
) async {
  final cancelled = _preCancelled<List<Attribute>>(
    'deleteAttributes',
    request.cancellation,
  );
  if (cancelled != null) return cancelled;
  return _run<List<Attribute>>(
    'deleteAttributes',
    action: () async {
      await _bridge.call(
        'deleteAttributes',
        positionalArguments: <Object?>[
          request.keys,
          if (request.cancellation != null) const <String, Object?>{},
        ],
        cancellation: request.cancellation,
        injectAbortSignal: request.cancellation != null,
      );
      _readCustomerPropertyBestEffort();
      return _currentAttributes;
    },
    cancellation: request.cancellation,
    mutationMayHaveCommitted: true,
  );
}