WebGPU EP: Add uint8 support to Gather kernel (#29861)
### Description
The WebNN EP maps ONNX BOOL → WebNN uint8. When WebNN uses WebGPU as its
backend, a Gather on a bool tensor (e.g., in
[detr-resnet-50](https://huggingface.co/Xenova/detr-resnet-50/blob/main/onnx/model_fp16.onnx))
is lowered to WebGPU Gather on uint8, which previously had no matching
kernel.
### Motivation and Context
Models such as detr-resnet-50 use Gather on bool tensors. The WebNN EP
converts bool to uint8 before dispatching to the WebGPU backend, so the
WebGPU Gather kernel must accept uint8 to handle this path end-to-end.
---------
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: huningxin <1005673+huningxin@users.noreply.github.com>