isSingleUse property

bool get isSingleUse

Implementation

bool get isSingleUse {
  final normalized = kind?.trim().toLowerCase() ?? '';
  if (normalized.isNotEmpty) {
    return normalized.endsWith('_once') ||
        normalized == 'allow' ||
        normalized == 'deny' ||
        normalized == 'reject';
  }
  final fallbackText = '$optionId $name'.trim().toLowerCase();
  final words = fallbackText
      .split(RegExp(r'[^a-z0-9]+'))
      .where((word) => word.isNotEmpty)
      .toSet();
  return words.contains('once') ||
      fallbackText.contains('this time') ||
      fallbackText.contains('one time');
}