New stuff comes out, production ramps up pushing high end into mainstream, prices drop accordingly. I bought 4x 1TB Samsung drives around 3 years ago for less than £50 per drive, it's very clear why this is ridiculous. I can't see stock shifting much at all at the prices they've been put up to.
I also believe prices have been arbitrarily inflated on existing stock as well, arguably the prices on stock already paid for shouldn't increase so dramatically.
The problem is that IIRC there is a very finite amount of stock in the pipeline.
That stock now has to last whilst the production facilities (and ancillary ones), are put back into use.
To put that in perspective it can take weeks just to dry out a normal house properly, let alone replace much of the equipment which has been water damaged, dry out, and clean up (to clean room standards) the facility, then you've got the lag whilst the production actually gets started.
And that's after the water has dropped.
Also IIRC a lot of the parts used in many drive manufacturers drives are made in that area (and WD iirc own several of the smaller names).
And this is at the time of year when the drives are being used for everything from PVR's and Laptops/PC's people are buying for presents.
It's also worth noting that for the companies that need drives, the increase in price isn't going to be an issue - if they need the drives they'll buy them at whatever the price is if they are needed for business use.
Not forgetting that most of the industry doesn't sit on large amounts of stock of items, as it's a sure fire way to lose money when the unsold stock devalues - most retailers probably only hold stock for a couple of weeks supply max.
I suspect it'll be about 4-6 months before the supply is back up to the levels they were a couple of weeks ago, as it'll probably take a couple of months minimum for the factories to get up and running again (remember it's not just the actual WD factory, but the component suppliers in the area), and for the stock levels to equalise with demand again.