velxio/frontend/src/components/simulator
David Montero Crespo f791536007 fix(wires): close both halves of the load-time endpoint race
The whenDefined recalc was necessary but not sufficient — measured on
staging, the example route loses BOTH ways:

- the element side: every settle timer can fire before the part is
  findable in the DOM. The pinInfo-ready poll in DynamicComponent now
  also re-derives wire endpoints the first time the part's pinInfo is
  actually readable, and waits up to 10s (the 2s cap was the corner-
  wire bug again on slow connections).
- the wire side: loadExample stores wires with zeroed endpoints BEHIND
  awaits (library installs), potentially after every recalc has come
  and gone. A canvas effect now spots endpoints still at (0,0) and
  runs one deferred recalc; real coordinates land, the condition
  clears, no loop.
2026-08-09 08:32:20 +02:00
..
BoardOnCanvas.tsx fix(picker+inspector): dedupe Pi cards, wire Zero/1/2 as real boards, readable many-pin inspectors 2026-08-07 23:03:05 +02:00
BoardOptionsModal.css
…
BoardOptionsModal.tsx
…
BoardPickerModal.tsx feat(boards): runtime board-registration seam for private overlays 2026-07-22 21:21:21 +02:00
CameraToggle.tsx fix(webcam): per-board frame byte budget - Sense frames fit the S3 fb 2026-08-04 16:18:10 +02:00
CircuitVerificationModal.tsx
…
ComponentCameraToggles.tsx ux(canvas): component camera toggles say "Camera", like the board toggle 2026-08-07 22:46:00 +02:00
ComponentPalette.css
…
ComponentPalette.tsx
…
ComponentPropertyDialog.css feat(sd): live Card contents in the SD panel - list and download what the sketch wrote 2026-08-04 16:29:54 +02:00
ComponentPropertyDialog.tsx feat(sd): parts with their own TF slot get the SD upload panel 2026-08-03 18:34:46 +02:00
FlashModal.tsx
…
InstallLibrariesModal.css
…
InstallLibrariesModal.tsx
…
LibraryManagerModal.css
…
LibraryManagerModal.tsx fix(libraries): Escape closes the manager, the way out everyone tries 2026-08-03 03:01:54 +02:00
MicrophoneToggle.tsx feat(mic): stream the computer's microphone into boards with an on-board mic 2026-08-04 15:57:17 +02:00
Oscilloscope.css
…
Oscilloscope.tsx
…
PartInspectorDialog.css feat(inspector+gallery): example links in the Properties tab; dynamic board tabs in /examples 2026-08-07 06:00:40 +02:00
PartInspectorDialog.tsx feat(datasheet): Product-page links carry UTM attribution and report the click 2026-08-09 08:16:47 +02:00
PinOverlay.tsx
…
PinPickerDialog.tsx
…
SdCardPanel.tsx feat(sd): source files stay off the card - only project DATA files auto-copy 2026-08-04 19:58:31 +02:00
SeatedPinMarkers.tsx
…
SelectionActionBar.tsx
…
SensorControlPanel.css
…
SensorControlPanel.tsx feat(sensors): runtime seam for overlay-registered sensor controls 2026-07-23 21:32:14 +02:00
SerialMonitor.tsx feat(serial): serial-actions slot in the monitor toolbar 2026-07-29 04:32:39 +02:00
SimulatorCanvas.css ux(canvas): zoom controls float on the canvas' bottom-right corner 2026-08-07 23:53:48 +02:00
SimulatorCanvas.tsx fix(wires): close both halves of the load-time endpoint race 2026-08-09 08:32:20 +02:00
WireInProgressRenderer.tsx
…
WireLayer.tsx
…
WireModeBanner.tsx
…
WireRenderer.tsx
…