Commit 8ede6d0
fix(form-core): make fieldMeta values optional to reflect runtime behaviour. (#1787)
* fix(form-core): make fieldMeta values optional to reflect runtime behavior
fieldMeta is typed as Record<DeepKeys<TData>, AnyFieldMeta> but is
initialized as an empty object. This causes TypeScript to incorrectly
assume that accessing any valid field key will return a defined
AnyFieldMeta object, leading to runtime crashes when accessing field
metadata during the first render.
Updated the fieldMeta type to include undefined to accurately reflect
that field metadata is only available after a field has been mounted.
BREAKING CHANGE: fieldMeta values are now typed as potentially undefined.
Code that accesses fieldMeta without null checks will now show TypeScript
errors. Use optional chaining or explicit undefined checks.
Fixes #1774
* chore: add changeset
* ci: apply automated fixes and generate docs
* refactor: address review feedback, change to patch version and clean up tests
* ci: apply automated fixes and generate docs
* fix: sort imports alphabetically
* chore: remove unused eslint directives
* Adjust changeset description
---------
Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: LeCarbonator <18158911+LeCarbonator@users.noreply.github.com>1 parent d51d100 commit 8ede6d0
File tree
4 files changed
+252
-20
lines changed- .changeset
- packages/form-core
- src
- tests
4 files changed
+252
-20
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
618 | 618 | | |
619 | 619 | | |
620 | 620 | | |
621 | | - | |
| 621 | + | |
622 | 622 | | |
623 | 623 | | |
624 | 624 | | |
| |||
733 | 733 | | |
734 | 734 | | |
735 | 735 | | |
736 | | - | |
| 736 | + | |
737 | 737 | | |
738 | 738 | | |
739 | 739 | | |
| |||
924 | 924 | | |
925 | 925 | | |
926 | 926 | | |
927 | | - | |
928 | | - | |
| 927 | + | |
| 928 | + | |
| 929 | + | |
| 930 | + | |
| 931 | + | |
| 932 | + | |
| 933 | + | |
| 934 | + | |
| 935 | + | |
| 936 | + | |
| 937 | + | |
| 938 | + | |
| 939 | + | |
| 940 | + | |
| 941 | + | |
| 942 | + | |
929 | 943 | | |
930 | 944 | | |
931 | 945 | | |
| |||
1019 | 1033 | | |
1020 | 1034 | | |
1021 | 1035 | | |
1022 | | - | |
| 1036 | + | |
1023 | 1037 | | |
1024 | 1038 | | |
1025 | 1039 | | |
| |||
1031 | 1045 | | |
1032 | 1046 | | |
1033 | 1047 | | |
1034 | | - | |
| 1048 | + | |
1035 | 1049 | | |
1036 | 1050 | | |
1037 | 1051 | | |
| |||
1652 | 1666 | | |
1653 | 1667 | | |
1654 | 1668 | | |
1655 | | - | |
1656 | 1669 | | |
1657 | 1670 | | |
1658 | 1671 | | |
| |||
1860 | 1873 | | |
1861 | 1874 | | |
1862 | 1875 | | |
1863 | | - | |
1864 | 1876 | | |
1865 | 1877 | | |
1866 | 1878 | | |
| |||
2215 | 2227 | | |
2216 | 2228 | | |
2217 | 2229 | | |
2218 | | - | |
2219 | | - | |
| 2230 | + | |
| 2231 | + | |
2220 | 2232 | | |
2221 | | - | |
| 2233 | + | |
2222 | 2234 | | |
2223 | 2235 | | |
2224 | 2236 | | |
2225 | 2237 | | |
2226 | | - | |
| 2238 | + | |
2227 | 2239 | | |
2228 | 2240 | | |
2229 | 2241 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
169 | 169 | | |
170 | 170 | | |
171 | 171 | | |
| 172 | + | |
| 173 | + | |
| 174 | + | |
| 175 | + | |
| 176 | + | |
| 177 | + | |
| 178 | + | |
| 179 | + | |
| 180 | + | |
| 181 | + | |
| 182 | + | |
| 183 | + | |
| 184 | + | |
| 185 | + | |
| 186 | + | |
| 187 | + | |
| 188 | + | |
| 189 | + | |
| 190 | + | |
| 191 | + | |
| 192 | + | |
| 193 | + | |
| 194 | + | |
| 195 | + | |
| 196 | + | |
| 197 | + | |
| 198 | + | |
| 199 | + | |
| 200 | + | |
172 | 201 | | |
173 | 202 | | |
174 | 203 | | |
| |||
1691 | 1720 | | |
1692 | 1721 | | |
1693 | 1722 | | |
1694 | | - | |
| 1723 | + | |
1695 | 1724 | | |
1696 | 1725 | | |
1697 | | - | |
| 1726 | + | |
1698 | 1727 | | |
1699 | 1728 | | |
1700 | 1729 | | |
| |||
1730 | 1759 | | |
1731 | 1760 | | |
1732 | 1761 | | |
1733 | | - | |
| 1762 | + | |
1734 | 1763 | | |
1735 | 1764 | | |
1736 | | - | |
| 1765 | + | |
1737 | 1766 | | |
1738 | 1767 | | |
1739 | 1768 | | |
| |||
1764 | 1793 | | |
1765 | 1794 | | |
1766 | 1795 | | |
1767 | | - | |
| 1796 | + | |
1768 | 1797 | | |
1769 | 1798 | | |
1770 | 1799 | | |
| |||
1873 | 1902 | | |
1874 | 1903 | | |
1875 | 1904 | | |
1876 | | - | |
| 1905 | + | |
1877 | 1906 | | |
1878 | 1907 | | |
1879 | 1908 | | |
| |||
1900 | 1929 | | |
1901 | 1930 | | |
1902 | 1931 | | |
1903 | | - | |
| 1932 | + | |
1904 | 1933 | | |
1905 | 1934 | | |
1906 | 1935 | | |
1907 | 1936 | | |
1908 | 1937 | | |
1909 | 1938 | | |
1910 | | - | |
| 1939 | + | |
1911 | 1940 | | |
1912 | 1941 | | |
1913 | 1942 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| 55 | + | |
| 56 | + | |
| 57 | + | |
| 58 | + | |
| 59 | + | |
| 60 | + | |
| 61 | + | |
| 62 | + | |
| 63 | + | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
| 68 | + | |
| 69 | + | |
| 70 | + | |
| 71 | + | |
| 72 | + | |
| 73 | + | |
| 74 | + | |
| 75 | + | |
| 76 | + | |
| 77 | + | |
| 78 | + | |
| 79 | + | |
| 80 | + | |
| 81 | + | |
| 82 | + | |
| 83 | + | |
| 84 | + | |
| 85 | + | |
| 86 | + | |
| 87 | + | |
| 88 | + | |
| 89 | + | |
| 90 | + | |
| 91 | + | |
| 92 | + | |
| 93 | + | |
| 94 | + | |
| 95 | + | |
| 96 | + | |
| 97 | + | |
| 98 | + | |
| 99 | + | |
| 100 | + | |
| 101 | + | |
| 102 | + | |
| 103 | + | |
| 104 | + | |
| 105 | + | |
| 106 | + | |
| 107 | + | |
| 108 | + | |
| 109 | + | |
| 110 | + | |
| 111 | + | |
| 112 | + | |
| 113 | + | |
| 114 | + | |
| 115 | + | |
| 116 | + | |
| 117 | + | |
| 118 | + | |
| 119 | + | |
| 120 | + | |
| 121 | + | |
| 122 | + | |
| 123 | + | |
| 124 | + | |
| 125 | + | |
| 126 | + | |
| 127 | + | |
| 128 | + | |
| 129 | + | |
| 130 | + | |
| 131 | + | |
| 132 | + | |
| 133 | + | |
| 134 | + | |
| 135 | + | |
| 136 | + | |
| 137 | + | |
| 138 | + | |
| 139 | + | |
| 140 | + | |
| 141 | + | |
| 142 | + | |
| 143 | + | |
| 144 | + | |
| 145 | + | |
| 146 | + | |
| 147 | + | |
| 148 | + | |
| 149 | + | |
| 150 | + | |
| 151 | + | |
| 152 | + | |
| 153 | + | |
| 154 | + | |
| 155 | + | |
| 156 | + | |
| 157 | + | |
| 158 | + | |
| 159 | + | |
| 160 | + | |
| 161 | + | |
| 162 | + | |
| 163 | + | |
| 164 | + | |
| 165 | + | |
| 166 | + | |
| 167 | + | |
| 168 | + | |
| 169 | + | |
| 170 | + | |
| 171 | + | |
| 172 | + | |
| 173 | + | |
| 174 | + | |
| 175 | + | |
| 176 | + | |
| 177 | + | |
| 178 | + | |
| 179 | + | |
| 180 | + | |
| 181 | + | |
| 182 | + | |
| 183 | + | |
| 184 | + | |
| 185 | + | |
| 186 | + | |
0 commit comments