addRule method

void addRule(
  1. NmTelecomL10n l10n
)

Add rule.

Implementation

void addRule(NmTelecomL10n l10n) {
  final value = selected;
  if (value == null || value.isSystem) return;
  final id = _uniqueId('response_rule', value.responseRules.map((item) => item.id));
  final rule = NmResponseRule(
    id: id,
    name: l10n.cmdSetNewRuleName,
    priority: value.responseRules.length,
    channel: NmResponseChannel.ussd,
    matcher: const NmResponseMatcher(mode: NmResponseMatchMode.contains, pattern: ''),
    effects: const [NmResponseEffect(field: NmResponseField.balance, source: NmParameterValueSource.fullMatch)],
  );
  _update(value.copyWith(responseRules: [...value.responseRules, rule]));
}