FastAPI backend (Python 3.11, MSSQL ODBC for SambaPOS, Azure DI OCR),
kitchen_db on central PG. React/TS/Vite frontend with navy sidebar layout.
Backend: auth.py (APP_SLUG=kitchen, SimpleNamespace — archive routes use
.kitchen_id/.is_admin without modification), main.py (51 migrations, scheduler,
internal router for KDS bookings feed), api/internal.py, full archive API
(31 routers: invoices, recipes, menus, sambapos, resos, newbook, disputes,
purchase_orders, etc.), models, migrations, OCR pipeline.
kitchen_id pinned to 1 (B1 — single hotel).
Frontend: AuthGate (app=kitchen, token shim for archive compat — B5b pending),
Layout (navy sidebar, 6 sections, Lucide icons, teal --app-primary),
App.tsx (Outlet pattern, UploadApp outside Layout), index.css (full :root block).
strict: false — archive components have type issues; build clean.
Note: 45 archive components call fetch('/api/...') without /kitchen/ prefix
(B5b). Runtime 404s; deferred until after initial testing.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
90 lines
No EOL
1.3 KiB
JavaScript
90 lines
No EOL
1.3 KiB
JavaScript
module.exports = {
|
|
"39": "0.20",
|
|
"40": "0.21",
|
|
"41": "0.21",
|
|
"42": "0.25",
|
|
"43": "0.27",
|
|
"44": "0.30",
|
|
"45": "0.31",
|
|
"47": "0.36",
|
|
"49": "0.37",
|
|
"50": "1.1",
|
|
"51": "1.2",
|
|
"52": "1.3",
|
|
"53": "1.4",
|
|
"54": "1.4",
|
|
"56": "1.6",
|
|
"58": "1.7",
|
|
"59": "1.8",
|
|
"61": "2.0",
|
|
"66": "3.0",
|
|
"69": "4.0",
|
|
"72": "5.0",
|
|
"73": "5.0",
|
|
"76": "6.0",
|
|
"78": "7.0",
|
|
"79": "8.0",
|
|
"80": "8.0",
|
|
"82": "9.0",
|
|
"83": "9.0",
|
|
"84": "10.0",
|
|
"85": "10.0",
|
|
"86": "11.0",
|
|
"87": "11.0",
|
|
"89": "12.0",
|
|
"90": "13.0",
|
|
"91": "13.0",
|
|
"92": "14.0",
|
|
"93": "14.0",
|
|
"94": "15.0",
|
|
"95": "16.0",
|
|
"96": "16.0",
|
|
"98": "17.0",
|
|
"99": "18.0",
|
|
"100": "18.0",
|
|
"102": "19.0",
|
|
"103": "20.0",
|
|
"104": "20.0",
|
|
"105": "21.0",
|
|
"106": "21.0",
|
|
"107": "22.0",
|
|
"108": "22.0",
|
|
"110": "23.0",
|
|
"111": "24.0",
|
|
"112": "24.0",
|
|
"114": "25.0",
|
|
"116": "26.0",
|
|
"118": "27.0",
|
|
"119": "28.0",
|
|
"120": "28.0",
|
|
"121": "29.0",
|
|
"122": "29.0",
|
|
"123": "30.0",
|
|
"124": "30.0",
|
|
"125": "31.0",
|
|
"126": "31.0",
|
|
"127": "32.0",
|
|
"128": "32.0",
|
|
"129": "33.0",
|
|
"130": "33.0",
|
|
"131": "34.0",
|
|
"132": "34.0",
|
|
"133": "35.0",
|
|
"134": "35.0",
|
|
"135": "36.0",
|
|
"136": "36.0",
|
|
"137": "37.0",
|
|
"138": "37.0",
|
|
"139": "38.0",
|
|
"140": "38.0",
|
|
"141": "39.0",
|
|
"142": "39.0",
|
|
"143": "40.0",
|
|
"144": "40.0",
|
|
"146": "41.0",
|
|
"147": "42.0",
|
|
"148": "42.0",
|
|
"149": "43.0",
|
|
"150": "43.0",
|
|
"151": "44.0"
|
|
}; |