Workflow-App/Workflow/.dockerignore
sjcoetzeesj-coder 3595cd54bb feat(nav): replace squeezed mobile tab bar with a header menu
The mobile bottom bar rendered all 15 routes into a single row. On a
390px iPhone that works out at ~17px per tab: the icons overlap, every
label truncates to a single letter and the tap targets sit far below
the 44px minimum, so the tabs could not be read or hit reliably.

Mobile now uses a hamburger in the header that opens a full-screen menu
listing every section, grouped (Main / CIPC & BizPortal / SARS /
Practice). The panel locks background scroll, closes on Escape or on
navigation, and carries the theme toggle so the mobile chrome keeps
parity with the desktop cluster.

Desktop had the same problem in a different shape. The full 15-link row
needed 1752px inside a 1280px container, so the page scrolled sideways
even at 1920px (measured scrollWidth 2065 vs a 1920 viewport) and the
right-hand cluster was pushed off screen. The inline nav now carries
six primary links plus a "More" dropdown, which fits exactly.

- NavBar: mobile tab bar replaced by the header menu panel; desktop nav
  reduced to primary links + More dropdown; grouped list shared by both
  so the two surfaces cannot drift apart.
- RouteChrome: dropped the pb-24 md:pb-0 padding that only existed to
  clear the old bottom bar.
- .gitignore / Workflow/.dockerignore: ignore .next-stale* so a stale
  build directory cannot bloat the Docker build context.
2026-10-27 12:16:58 +02:00

68 lines
No EOL
1.7 KiB
Text

# ─────────────────────────────────────────────────────────────────
# .dockerignore — keep the build context small and secret-free.
#
# Critical: without this file the whole local working tree is sent to
# the Docker daemon, including .env.local (PB_TOKEN, CIPC passwords),
# node_modules and the full .git history.
# ─────────────────────────────────────────────────────────────────
# --- secrets: never let these reach the build context ---------------
.env
.env.*
!.env.example
# --- deps, build output, git history ----------------------------------
node_modules
.next
.next-stale*
out
dist
build
*.tsbuildinfo
.git
.gitignore
.gitattributes
# --- logs & runtime state --------------------------------------------
*.log
*.log.err
*.tmp
.runtime
.dev-screenshots
npm-debug.log*
# --- local databases --------------------------------------------------
*.sqlite
*.sqlite3
*.db
# --- secrets inside scripts/ ------------------------------------------
# Playwright storage state = live CIPC/SARS session cookies.
scripts/storage_state.json
# --- scratch, compiled python, debug artefacts ------------------------
__pycache__
**/__pycache__
*.py[cod]
*.bin
scripts/.scratch
scripts/_scratch
scripts/_backup_ufc_docs
scripts/_*.png
scripts/sars_login_*.png
scripts/_upload_probe.pdf
_probe*.json
_junction_backup*.json
# --- docs, samples and one-off probes (not needed to serve the app) ---
docs
scratch-*
Sample_*.docx
Sample_*.pdf
*.preview-p*.png
.preview-p*.png
workpage*.png
desktop.ini
Thumbs.db
*.bak
*.bak.*