towerops/assets/js/hooks
Graham McIntire 7ffc4ebd2b perf(assets): lazy-load three more hooks + trim CopyToClipboard
DeviceListReorder, SortableList, MikrotikPortSync are each used on a
single page (devices index, escalation/schedule show, device edit
form respectively) — push them out of app.js into their own chunks
via lazyHook. Also extract MikrotikPortSync into its own file under
hooks/ for consistency.

Compress CopyToClipboard's flash feedback by collapsing the duplicated
success/error inline-SVG/setTimeout blocks into one helper, drop the
debug console.logs, and remove the bulk Phoenix-template boilerplate
comment block that was just generated noise.

After-bundle (minified):
  app.js                 287.6 KB   (-2 KB on top of prior split)
  device_list_reorder      4.6 KB   loaded on /devices only
  sortable_list            3.1 KB   loaded on escalation+schedule pages
  mikrotik_port_sync       1.3 KB   loaded on device edit form only
2026-05-07 08:05:22 -05:00
..
coverage_hooks.ts feat(coverage): LOS/NLOS dual compute + buildings clutter + MS importer 2026-05-06 16:50:05 -05:00
mikrotik_port_sync.ts perf(assets): lazy-load three more hooks + trim CopyToClipboard 2026-05-07 08:05:22 -05:00
network_map.ts perf(assets): split big hooks into per-page chunks 2026-05-07 07:58:38 -05:00
sensor_chart.ts perf(assets): split big hooks into per-page chunks 2026-05-07 07:58:38 -05:00
sites_map.ts perf(assets): split big hooks into per-page chunks 2026-05-07 07:58:38 -05:00
weathermap.ts perf(assets): split big hooks into per-page chunks 2026-05-07 07:58:38 -05:00