Add telemetry support for ONNX Runtime Web (JS/WASM)
Implement telemetry for onnxruntime-web using a C++ to JS bridge architecture:
- Create WasmTelemetry C++ class (core/platform/wasm/) that implements the
full Telemetry interface and bridges events to JS via Emscripten EM_JS
- Add JS telemetry bridge (js/web/lib/wasm/telemetry.ts) that receives
events from C++ and dispatches to 1DS transport + observer callbacks
- Add 1DS SDK transport (telemetry-1ds-transport.ts) as lazy-loaded module
using @microsoft/1ds-core-js + @microsoft/1ds-post-js (optional deps)
- Add env.telemetry config interface with enabled flag and onEvent observer
callback for user 'listen in' capability
- Update CMake to handle Emscripten builds: use USE_WASM_TELEMETRY define,
include wasm telemetry sources conditionally
- Wire WasmTelemetry into PosixEnv via USE_WASM_TELEMETRY conditional
- Add unit tests for telemetry bridge
Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>