Commit a555ae0
fix(tables): write only what the row form changed, and report failures once
The add/edit row form sent every column on every save. An untouched empty
column was written as `null`, so a no-op edit still bumped the row, and an
insert filled in nulls for columns the user never opened. It now sends only
the fields the user touched, and in edit mode only those whose value actually
differs — a save with nothing changed closes without a write. Checkboxes stay
the exception on insert: they always carry a concrete boolean, so a required
one the user never clicked still reaches the server as `false`.
A rejected write also arrived twice: the modal rendered the message inline and
the mutation toasted the same sentence. Row mutations take an opt-in
`suppressErrorToast` so the form owns its own failure; the cache self-heal on
a 423 still runs, only its toast is dropped.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>1 parent 9e80171 commit a555ae0
3 files changed
Lines changed: 167 additions & 25 deletions
File tree
- apps/sim
- app/workspace/[workspaceId]/tables/[tableId]/components/row-modal
- hooks/queries
Lines changed: 78 additions & 5 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
389 | 389 | | |
390 | 390 | | |
391 | 391 | | |
392 | | - | |
| 392 | + | |
393 | 393 | | |
394 | 394 | | |
395 | 395 | | |
| |||
437 | 437 | | |
438 | 438 | | |
439 | 439 | | |
440 | | - | |
441 | | - | |
442 | | - | |
443 | | - | |
| 440 | + | |
| 441 | + | |
| 442 | + | |
| 443 | + | |
444 | 444 | | |
445 | 445 | | |
446 | 446 | | |
447 | 447 | | |
448 | 448 | | |
449 | 449 | | |
450 | 450 | | |
| 451 | + | |
| 452 | + | |
| 453 | + | |
| 454 | + | |
| 455 | + | |
| 456 | + | |
| 457 | + | |
| 458 | + | |
| 459 | + | |
| 460 | + | |
| 461 | + | |
| 462 | + | |
| 463 | + | |
| 464 | + | |
| 465 | + | |
| 466 | + | |
| 467 | + | |
| 468 | + | |
| 469 | + | |
| 470 | + | |
| 471 | + | |
| 472 | + | |
| 473 | + | |
| 474 | + | |
| 475 | + | |
| 476 | + | |
| 477 | + | |
| 478 | + | |
| 479 | + | |
| 480 | + | |
| 481 | + | |
| 482 | + | |
| 483 | + | |
| 484 | + | |
| 485 | + | |
| 486 | + | |
| 487 | + | |
| 488 | + | |
| 489 | + | |
| 490 | + | |
| 491 | + | |
| 492 | + | |
| 493 | + | |
| 494 | + | |
| 495 | + | |
| 496 | + | |
| 497 | + | |
| 498 | + | |
| 499 | + | |
| 500 | + | |
| 501 | + | |
| 502 | + | |
| 503 | + | |
| 504 | + | |
| 505 | + | |
| 506 | + | |
| 507 | + | |
| 508 | + | |
| 509 | + | |
| 510 | + | |
| 511 | + | |
| 512 | + | |
| 513 | + | |
| 514 | + | |
| 515 | + | |
| 516 | + | |
| 517 | + | |
| 518 | + | |
| 519 | + | |
| 520 | + | |
| 521 | + | |
| 522 | + | |
| 523 | + | |
Lines changed: 47 additions & 10 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
57 | 57 | | |
58 | 58 | | |
59 | 59 | | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
60 | 80 | | |
61 | 81 | | |
62 | 82 | | |
63 | 83 | | |
64 | | - | |
| 84 | + | |
| 85 | + | |
65 | 86 | | |
66 | 87 | | |
67 | 88 | | |
68 | 89 | | |
69 | 90 | | |
70 | | - | |
71 | | - | |
| 91 | + | |
| 92 | + | |
72 | 93 | | |
73 | 94 | | |
| 95 | + | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
74 | 100 | | |
75 | | - | |
| 101 | + | |
76 | 102 | | |
77 | 103 | | |
78 | 104 | | |
| 105 | + | |
| 106 | + | |
79 | 107 | | |
80 | 108 | | |
81 | 109 | | |
| |||
119 | 147 | | |
120 | 148 | | |
121 | 149 | | |
122 | | - | |
123 | | - | |
124 | | - | |
125 | | - | |
| 150 | + | |
| 151 | + | |
| 152 | + | |
| 153 | + | |
| 154 | + | |
| 155 | + | |
| 156 | + | |
126 | 157 | | |
127 | 158 | | |
128 | 159 | | |
| |||
149 | 180 | | |
150 | 181 | | |
151 | 182 | | |
152 | | - | |
| 183 | + | |
| 184 | + | |
| 185 | + | |
| 186 | + | |
153 | 187 | | |
154 | 188 | | |
155 | 189 | | |
156 | 190 | | |
157 | | - | |
| 191 | + | |
| 192 | + | |
| 193 | + | |
| 194 | + | |
158 | 195 | | |
159 | 196 | | |
160 | 197 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
159 | 159 | | |
160 | 160 | | |
161 | 161 | | |
| 162 | + | |
| 163 | + | |
| 164 | + | |
| 165 | + | |
| 166 | + | |
| 167 | + | |
162 | 168 | | |
163 | 169 | | |
164 | 170 | | |
| |||
809 | 815 | | |
810 | 816 | | |
811 | 817 | | |
812 | | - | |
| 818 | + | |
| 819 | + | |
813 | 820 | | |
814 | 821 | | |
815 | 822 | | |
816 | 823 | | |
817 | | - | |
| 824 | + | |
| 825 | + | |
818 | 826 | | |
819 | 827 | | |
820 | 828 | | |
821 | | - | |
| 829 | + | |
| 830 | + | |
| 831 | + | |
| 832 | + | |
| 833 | + | |
822 | 834 | | |
823 | 835 | | |
824 | 836 | | |
| |||
866 | 878 | | |
867 | 879 | | |
868 | 880 | | |
869 | | - | |
| 881 | + | |
| 882 | + | |
| 883 | + | |
870 | 884 | | |
871 | 885 | | |
872 | 886 | | |
| |||
1065 | 1079 | | |
1066 | 1080 | | |
1067 | 1081 | | |
1068 | | - | |
| 1082 | + | |
| 1083 | + | |
| 1084 | + | |
| 1085 | + | |
| 1086 | + | |
1069 | 1087 | | |
1070 | 1088 | | |
1071 | 1089 | | |
| |||
1150 | 1168 | | |
1151 | 1169 | | |
1152 | 1170 | | |
1153 | | - | |
| 1171 | + | |
| 1172 | + | |
1154 | 1173 | | |
| 1174 | + | |
1155 | 1175 | | |
1156 | 1176 | | |
1157 | 1177 | | |
| |||
1234 | 1254 | | |
1235 | 1255 | | |
1236 | 1256 | | |
1237 | | - | |
| 1257 | + | |
| 1258 | + | |
| 1259 | + | |
| 1260 | + | |
| 1261 | + | |
1238 | 1262 | | |
1239 | 1263 | | |
1240 | 1264 | | |
| |||
1245 | 1269 | | |
1246 | 1270 | | |
1247 | 1271 | | |
1248 | | - | |
| 1272 | + | |
| 1273 | + | |
1249 | 1274 | | |
| 1275 | + | |
1250 | 1276 | | |
1251 | 1277 | | |
1252 | 1278 | | |
| |||
1259 | 1285 | | |
1260 | 1286 | | |
1261 | 1287 | | |
1262 | | - | |
| 1288 | + | |
| 1289 | + | |
| 1290 | + | |
| 1291 | + | |
| 1292 | + | |
1263 | 1293 | | |
1264 | 1294 | | |
1265 | 1295 | | |
| |||
1294 | 1324 | | |
1295 | 1325 | | |
1296 | 1326 | | |
1297 | | - | |
| 1327 | + | |
| 1328 | + | |
1298 | 1329 | | |
| 1330 | + | |
1299 | 1331 | | |
1300 | 1332 | | |
1301 | 1333 | | |
| |||
0 commit comments