If forms in the select viewer have the same name, append a counter.
authorRobert Sesek <rsesek@bluestatic.org>
Fri, 9 Apr 2021 02:45:25 +0000 (22:45 -0400)
committerRobert Sesek <rsesek@bluestatic.org>
Sat, 10 Apr 2021 16:07:28 +0000 (12:07 -0400)
src/TaxReturnView.tsx

index 27d8810176f2edaa7296e270703035305c54a9f2..1576e61b5db862dc336df72175f5d57037bfdb62 100644 (file)
@@ -31,6 +31,7 @@ export default function TaxReturnView(props: Props) {
   };
 
   const formIndexToName = createMemo(() => {
+    const formNameCounts = {};
     let forms = props.tr.forms.map((form, i) => {
       let name = form.name;
       const person = form.person();
@@ -38,6 +39,12 @@ export default function TaxReturnView(props: Props) {
         const personName = person === Person.joint ? 'Joint' : person.name;
         name += ` (${personName})`;
       }
+      if (name in formNameCounts) {
+        formNameCounts[name] += 1;
+        name += ` (${formNameCounts[name]})`;
+      } else {
+        formNameCounts[name] = 1;
+      }
       return [i, name];
     });
     forms.sort((a, b) => {