# Wijzigingen door Hidaia B.V. aan meegeleverde open-sourcebestanden

## occt-wasm.js (lijmcode bij occt-wasm.wasm) — gewijzigd op 2026-09-20

- **Origineel:** `dist/occt-wasm.js` uit het npm-pakket `occt-wasm` 5.3.2, ongewijzigd beschikbaar als [`bron/occt-wasm.origineel.js`](bron/occt-wasm.origineel.js)
  (SHA-256 `540c2f3660d2d0436a2351b6b2daffcdf0624edcd6727495a82bca065e1fb889`).
- **Gewijzigde versie in gebruik:** [`/model/vendor/occt/occt-wasm.js`](../model/vendor/occt/occt-wasm.js)
  (SHA-256 `843706d833f0ae2e2efcbbf63df259d0fc0c8b18ef29cf362f50c1c4910711bf`). Het bestand draagt bovenaan een vermelding dat het gewijzigd is.
- **Wat is gewijzigd:** twee routines in de door Emscripten (embind) gegenereerde lijmcode bouwden JavaScript-functies met `new Function(...)`:
  1. `createJsInvoker` — maakt voor elke C++-functie of -methode een aanroeper;
  2. de generator in `__emval_create_invoker` — voor aanroepen van JavaScript vanuit C++ (functie, methode, constructor, waarde).
  Beide zijn vervangen door varianten zonder dynamische codegeneratie. De volgorde van omzetten, aanroepen en opruimen is gelijk aan het origineel; het gedrag is ongewijzigd.
- **Waarom:** hidaia.nl staat in haar Content-Security-Policy geen `'unsafe-eval'` toe. Met `new Function` werkt de bibliotheek dan niet.
- **Hoe te herhalen:** `python3 bron/patch_glue.py occt-wasm.js && python3 bron/patch_emval.py occt-wasm.js` op het originele bestand. Beide scripts controleren eerst of het bestand de verwachte vorm heeft.

## occt-wasm.wasm — NIET gewijzigd

Het WebAssembly-bestand (Open CASCADE Technology, LGPL-2.1 met Open CASCADE-uitzondering) is byte-gelijk aan het bestand uit het npm-pakket
(SHA-256 `cf9dd9b549d7650c0a2da83f0b44c80023dae07a1005457eba6de3145d7b4be1`).

## Overige bibliotheken — NIET gewijzigd

web-ifc 0.0.77, SheetJS Community Edition 0.20.3 en de lettertypen Inter en Montserrat worden ongewijzigd uitgeleverd.
