I've accepted sheepsimulator's answer. But I thought I would post my own just to get this out there. I've thought about this some more, and here's the only way I can imagine this working:
Have a disk enclosure that has both a USB port and an Ethernet port. There's a bit of firmware in the enclosure the runs a webserver for configuration. The device has two modes, USB mode and NAS mode. You can switch between them with the web-based configuration (so the network port is always active, but SMB file sharing is not always active). To enter NAS mode, the device does a USB disconnect on it's USB port, the mounts the filesystem on the drive itself internally and starts the process to do SMB sharing. When switching to USB mode, the device shuts down the SMB process, unmounts the filesystem, then does a USB reconnect.
Without actually trying this, it seems like this would work and not cause problems. Pretty much anything expecting to talk to a USB Mass Storage device will handle the hotplug/unplug gracefully, and most SMB clients are ok with the server going away.
A slightly different (crazier?) version of this would be more automatic. Let's say USB mode is the default. When it's not doing anything else, it defaults to USB mode. The SMB sharing process is running, but because the USB side owns the drive there isn't a filesystem actually in place (yet). When an SMB request comes in that requires actual content, do the switch from USB to NAS like a described above. Maybe it stays in NAS mode for as long as there is some activity requiring SMB to access actual files within a configurable timeout.
This would probably generate a ton of connect/disconnects for the USB side and I can imagine various PCs on the network accidentally indexing, pinging or otherwise unintentionally causing the NAS side to wakeup often.
Huh, I want this to exist for cheap, but I can't imagine it would be cheap to produce. There's a bit of coding there.