Files
ComfyAssets-ComfyUI-KikoTools/web/ui

ComfyAssets controls: first production consumer

The Local Image Loader uses core.js and controls.css for the approved shared blue controls and host-following light/dark themes. ../views/image-browser.js composes these primitives; ../kiko_local_image_loader.js retains the controller, API calls and existing selection persistence.

createScope() owns listeners, delayed work and a fetch cancellation signal. Dispose it on node removal. mountTheme() observes host palette changes and removes its observers/listeners with that scope. The module has no ComfyUI imports; the extension passes the host settings interface explicitly.

Both projects will use the same theme and controls. This is the first consumer, not a published package yet. Keep routes, node definitions and business state out of ui/; add abstractions only as demonstrated by the next consumer.

Architecture and control organization were inspired by Pixaroma. This implementation and styling are original; none of his toolkit code or assets are vendored.