If the field always ends up with a known default value when React is done, you could probably do something like
wait.until(ExpectedConditions.attributeToBe(ByLocator/WebElement, "value", "default text that shows up"));
Another option could be
wait.until(ExpectedConditions.attributeToBeNotEmpty(WebElement, "value")); , but I've not used this one personally so I don't know if it will work on the value attribute of an input.
Another possibility to consider could be using ExpectedConditions.not() with ExpectedConditions.attributeToBe(), which is likely similar to what ExpectedConditions.attributeToBeNotEmpty is doing. That would look something like this.
wait.until(ExpectedConditions.not(ExpectedConditions.attributeToBe(ByLocator/WebElement, "value", ""))); , but the handling of empty string, "", can sometimes lead to unexpected results so be careful.
Good luck!