wrolpi/app/src
Roland 6786e345a8
Some checks are pending
CodeQL / Analyze (push) Waiting to run
Controller Tests / controller-tests (push) Waiting to run
Jest Tests / jest-tests (push) Waiting to run
Fix "node.contains is not a function" crash on Modal/Popup triggers
The themed Button forwards its ref straight to SButton, a class
component, so the ref resolves to the class instance instead of the DOM
node. Semantic UI's Modal/Popup Portal calls node.contains(...) on the
trigger's ref during handleDocumentClick, which throws on a non-DOM
value. This crashed the Control page whenever a Service Logs (or QR /
download-error) modal was open and the document was clicked.

Wrap SButton in Ref (findDOMNode) so a forwarded ref always resolves to
the underlying <button> element, fixing every Modal/Popup that uses a
themed Button as its trigger.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-20 11:43:14 -06:00
..
api Controller: move hotspot settings to controller.yaml with WiFi device dropdown. 2026-07-04 09:03:58 -06:00
components Fix "node.contains is not a function" crash on Modal/Popup triggers 2026-07-20 11:43:14 -06:00
contexts Migrating Controller from port 8087 to 80 so that it is more discoverable. Reformatting Controller dashboard to make header at the top. Reformatting navigation bar to handle the new links which prevented Admin from being visible in some screens. 2026-04-09 15:01:05 -06:00
hooks app: handle form fetch failures without unhandled rejection 2026-07-16 19:40:28 -06:00
types Converting Theme.js to typescript so we can use shorthands like Card.Icon. 2025-12-07 12:41:10 -07:00
api.js Search: fast ABC mode by default, opt-in deep search 2026-07-03 10:32:16 -06:00
App.css Theme: fix white corner cell on inverted definition tables. 2026-07-09 15:27:34 -06:00
App.js Add ESP32 firmware flasher 2026-07-01 18:34:04 -06:00
DashboardPage.js Search: fast ABC mode by default, opt-in deep search 2026-07-03 10:32:16 -06:00
DashboardPage.test.js Displaying warning when no drive is mounted. 2026-05-14 16:16:18 -06:00
Events.js Map search added to global search. Preview cards are displayed for all results in new Map tab. 2026-04-13 12:17:08 -06:00
index.css Renaming examples to avoid grouping of pdf with ebooks. Reworking URLs for media files to avoid escaping url safe characters. 2023-03-29 13:46:39 -06:00
index.js Fixing changes before merge. 2023-02-08 21:18:51 -07:00
logo.svg Renaming examples to avoid grouping of pdf with ebooks. Reworking URLs for media files to avoid escaping url safe characters. 2023-03-29 13:46:39 -06:00
reportWebVitals.js Renaming examples to avoid grouping of pdf with ebooks. Reworking URLs for media files to avoid escaping url safe characters. 2023-03-29 13:46:39 -06:00
setupTests.js Updating code to use new version of react-router. 2025-12-07 11:54:20 -07:00
Tags.cy.js Video downloads have many more options. Downloads are migrated. 2024-11-28 09:48:57 -07:00
Tags.js Focusing on lone input when opening modals. 2026-07-06 15:35:23 -06:00
test-utils.js app: handle form fetch failures without unhandled rejection 2026-07-16 19:40:28 -06:00