addPluralBranch method
void
addPluralBranch({
- required CatalogRow row,
- required String locale,
- required String category,
Implementation
void addPluralBranch({
required CatalogRow row,
required String locale,
required String category,
}) {
final draft = valueDraftFor(row, locale);
final nextValue = cloneCatalogValue(draft.value) ?? <String, dynamic>{};
if (draft.editorMode == CatalogEditorMode.pluralGender) {
final sourceBranch = readCatalogPath(row.valuesByLocale[_queue.meta?.sourceLocale], <String>[category]);
final nextBranch = <String, dynamic>{};
final keys = detectCatalogShape(sourceBranch) == CatalogEditorMode.gender
? normalizedGenderKeys(sourceBranch)
: catalogGenderKeys;
for (final key in keys) {
nextBranch[key] = '';
}
nextValue[category] = nextBranch;
} else {
nextValue[category] = '';
}
draft.value = nextValue;
draft.rawText = prettyCatalogJson(draft.value);
draft.touched = true;
_scheduleValueDraftSave(draft);
}