# 2nd November 2025 — HTML Paste Dialog Enhancements [#70](https://github.com/nbarrett/ngx-ramblers/issues/70)
## [build 341](https://github.com/nbarrett/ngx-ramblers/actions/runs/19015818904) — [Resolves #70](https://github.com/nbarrett/ngx-ramblers/issues/70) — [commit a2c9348](https://github.com/nbarrett/ngx-ramblers/commit/a2c9348)

Enhanced HTML migration dialog workflow and fixed Puppeteer timeout issues with Fly.io-optimized browser configuration.

**Where to Find It**

- **Dynamic Content → Markdown Editor**: HTML paste dialog
- **Admin → Migration**: Base URL selection and custom URL management

**Benefits**

- **Better URL Selection**: Proper dropdown replaces datalist, with dedicated custom URL input
- **Persistent Dialog**: No auto-close when switching windows to copy URLs
- **Save Custom URLs**: Checkbox option to save custom URLs to migration config
- **Faster Page Loads**: Changed from 'networkidle2' to 'domcontentloaded' wait strategy
- **Fly.io Optimized**: Browser flags prevent container memory issues
- **Longer Timeout**: 60-second timeout accommodates slow Fly.io environments
- **Better Visual Emphasis**: Dimmed backdrop on processing indicator

**Technical Details**

Frontend Changes:
- Replace datalist with proper dropdown select for base URL selection
- Add 'Custom URL...' option triggering dedicated input field
- Remove overlay click handler (prevents dialog auto-close)
- Add dimmed backdrop to paste processing indicator
- Prompt to save custom URLs with checkbox option
- Auto-save new migration config entries when user opts in
- Reset all custom URL state on dialog close
- Remove auto-resize on input (prevents scroll jumping)

Backend Changes:
- Increase Puppeteer timeout from 30s to 60s for Fly.io
- Change wait strategy from 'networkidle2' to 'domcontentloaded'
- Add Fly.io-optimized browser launch flags:
  - --disable-dev-shm-usage (prevents container memory issues)
  - --disable-accelerated-2d-canvas (reduces resource usage)
  - --no-first-run, --no-zygote, --disable-gpu (container optimizations)

UX Improvements:
- Dropdown displays all existing migration config URLs
- Custom URL input appears only when 'Custom URL...' selected
- Checkbox prompts to save for future use
- Dialog persists when switching windows