addCommand method

void addCommand(
  1. NmCommandPurpose purpose,
  2. NmTelecomL10n l10n
)

Add command.

Implementation

void addCommand(NmCommandPurpose purpose, NmTelecomL10n l10n) {
  final value = selected;
  if (value == null || value.isSystem) return;
  final base = _purposeKey(purpose);
  final id = _uniqueId(base, value.commands.map((item) => item.id));
  final operation = NmUssdDialogOperation('${id}_ussd', start: const NmUssdStart(''));
  final next = NmOperatorCommand(id: id, purpose: purpose, name: purpose.label(l10n), operations: [operation]);
  _update(value.copyWith(commands: [...value.commands, next]));
  selectedCommandId = id;
}