Commit Graph

22 Commits

Author SHA1 Message Date
pavlov346346-source
da8ff042f7 Restore Caterium schema and switch production to fresh Supabase 2026-09-17 17:30:57 +03:00
pavlov346346-source
2f7b8b9ea9 feat: add banquet menu constructor tab
Add a new "Банкетное меню" catalog tab (category 6) alongside Боксы/
Премиум/Посуда for composing wedding/banquet/anniversary menus. Unlike
the other tabs, dishes here are priced and weighed per guest, grouped
by menu section (catalogSection), and clicking a checkbox doesn't add
to the order directly -- it toggles inclusion in a live summary panel
showing a running per-guest price table for the whole composed menu.

The item editor gets two new fields (menu section, weight per guest)
shown only for this category, reusing the existing generic item CRUD
(editBox/saveBox) rather than building a parallel admin UI.

Also re-bumped index.html's script cache-busting query string, which
the previous whitelist-fix commit changed the content of app-runtime.js
without updating -- the same stale-cache bug fixed earlier in the
session, now closed for directly-tagged scripts too.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-16 18:02:02 +03:00
pavlov346346-source
37a8dd5bb3 fix: bump stale cache-busting version on core script tags
The signature-offer-pdf-v18.js script tag's ?v= query string was never
updated across ~9 content commits since the file was created, so browsers
kept serving a stale cached copy indefinitely. All other script/style tags
shared an equally stale v17.7.3 tag. Bumped every tag in index.html to a
single fresh version string so all recent fixes (template selection,
merged addon card, controlLines/extraServices wiring) actually reach users
without a manual hard refresh.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-16 13:33:41 +03:00
pavlov346346-source
b92b52e03e feat: add 6 new client-offer PDF templates, archive the old 13
New "signature" template pack (cream-elegance, neon-menu,
emerald-circles, midnight-checklist, gourmet-hero, diamond-gold)
replaces the visible template gallery in Settings. The previous 13
classic/archive templates keep rendering correctly for any existing
order that already used one, but are no longer selectable for new
orders — nothing was deleted.

Also adds a Settings option to upload a custom logo and company name
for PDF documents, replacing the hardcoded "Солнце Кейтеринг" branding
wherever a logo fails to load.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-15 18:27:23 +03:00
pavlov346346-source
5427b71651 fix: wrap catalog category pills on mobile instead of horizontal scroll
@media(max-width:720px) forced .sun-catalog-top-toolbar .cats into
flex-wrap:nowrap + overflow:auto, turning the colored category pills
(Боксы/Премиум/Напитки/Дополнения/Посуда...) into a horizontally
scrolling strip that runs off the right edge of the screen instead of
wrapping.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-12 18:20:41 +03:00
pavlov346346-source
870cc405dc fix: keep catalog toolbar buttons together on mobile
The previous mobile fix put the title on its own row but left the
search input as a regular flex item (flex:1 1 140px) among PDF/
"Вкладки"/"Меню". Since it greedily grows to fill whatever line it
lands on, it still forced PDF onto its own line, then itself onto the
next, then the two remaining buttons onto a third - three staggered
rows instead of the intended toolbar.

Gives the search input its own full-width row (flex-basis:100%,
order:0) and puts all catalog-head buttons (PDF, "Вкладки", "Меню") on
the next row together, sharing it evenly (flex:1 1 0) so they land on
one level instead of scattering.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-12 18:06:13 +03:00
pavlov346346-source
edfce3b7e6 fix: pre-apply cached brand/sidebar theme before first paint
The static :root fallback for --sun-ui-*/--sun-sidebar-* hardcodes the
"Standard Purple" preset (SIDEBAR_STANDARD's exact values). Any
workspace that has actually saved a different theme only gets it
applied once app-runtime.js's brand-theme module loads and runs
applyActual(), which reads the same localStorage cache
(sunBrandThemeV1) it always did - but by then the purple/mixed
defaults have already painted, so every load flashes the wrong colors
before snapping to the real ones.

Reads the same localStorage key synchronously in the
sun-startup-stability-guard script (already first in <head>, before
any stylesheet or the app-runtime.js bundle loads) and sets the same
CSS custom properties as inline styles on <html>. Inline element
styles always win over a stylesheet's :root selector regardless of
load order, so the correct theme is already active for the very first
paint. Workspaces with no saved theme yet are unaffected - the
existing static fallback still shows, same as today.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-12 17:56:19 +03:00
pavlov346346-source
1af9733154 fix: restore search/notification icons and catalog toolbar on mobile
The sidebar's search and notification button icons are drawn entirely
by mask-image rules scoped to @media(min-width:901px) (the "enterprise
sidebar" redesign styling). The existing mobile block
(@media(max-width:900px)) predates that redesign and only hides the
button labels via font-size:0 - it never defined a mobile equivalent
of the icon rules, so on phones the buttons rendered with literally
nothing visible inside them: no text (hidden), no icon (never defined
for this breakpoint).

Adds a second @media(max-width:900px) block with the same mask-image
icons for #sunGlobalSearchBtn/#sunNotificationsBtn.

Also fixes the catalog toolbar (PDF / search / "Вкладки" / "Меню"):
on narrow screens flex-wrap put the title, buttons, and a
min-width:180px search input on uneven wrapped lines with no
consistent baseline. The title now takes its own full-width line
(order:-1, flex-basis:100%), the search input can shrink instead of
forcing overflow, and the toolbar buttons get an explicit
align-self:center so they land on one level together.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-12 17:45:31 +03:00
pavlov346346-source
571f8e199d fix: compact print layout for the order blank and receipt
.sun-doc-grid (client/phone/date/address) fell back to whatever the
last matching max-width media query set, and print rendering commonly
evaluates those against the page's content width - narrow enough to
trip the existing max-width:700px breakpoint and stack every field
onto its own line instead of the intended 2-column grid. Combined with
generous screen-sized padding/font-sizes carried into print, a normal
order routinely spilled onto a second page.

Adds an explicit @media print block that puts client/phone/date/address
in a single row regardless of viewport width (grid-auto-flow:column),
sets an explicit @page size/margin instead of relying on the browser
default, and shrinks fonts/padding throughout (header, field grid,
table rows, summary, footer) for both the order blank (.sun-doc) and
the receipt (.sun-receipt, which reuses the same grid). Verified with a
standalone reproduction of the markup/CSS - a 2-line order now renders
as one compact page instead of stacking every field before ever
reaching the table.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-09-12 14:45:31 +03:00
pavlov346346-source
dbbc416676
Fix incorrect order totals from hidden orphan lines
* chore: add one-time order total repair

* fix: exclude hidden orphan lines from totals [order-total-fix]

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-09-11 13:19:24 +03:00
github-actions[bot]
b82b2cb8d0 brand: replace visible legacy name [branding-repair] 2026-09-11 07:02:38 +00:00
pavlov346346-source
5e38bf867b
Fix malformed style boundary and guard HTML integrity
* chore: add one-time index html repair script

* chore: run one-time html repair on fix branch

* fix: close mobile style block [html-repair]

* chore: remove one-time html repair workflow

* chore: remove one-time html repair script

* test: add html style integrity checks

* test: enforce html integrity in deploy checks

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-09-11 07:41:42 +03:00
pavlov346346-source
4aa66d0a56
Caterium v17.7.3 — clients server read
Server-preferred normalized client profiles with legacy fallback, canonical snapshot RPC, preserved order metrics, release metadata and tests.
2026-09-09 12:07:37 +03:00
pavlov346346-source
815cc602c5
Caterium v17.7.2 — clients foundation
Canonical client identity, client data layer, legacy loyalty/communication compatibility, normalized Supabase client RPC, release metadata and tests.
2026-09-09 10:42:14 +03:00
github-actions[bot]
b6ec42b2e2 Caterium v17.7.1 - data layer adoption 2026-09-08 23:34:45 +00:00
pavlov346346-source
f8bb0a78b4
Caterium v17.7.0 — architecture foundation
Introduce the first data layer, move order auto-completion to server cron with legacy/cloud compatibility, clean error telemetry, update PWA/versioning, and add regression coverage.
2026-09-08 13:24:34 +03:00
pavlov346346-source
fbafb33a33
Caterium v17.6.9 — offer PDF workspace and gallery uploads
* Add v17.6.9 client offer workspace tabs

* Persist two editable offer gallery photos

* Add one-time v17.6.9 release preparation workflow

* Prepare Caterium v17.6.9 offer PDF workspace

* Remove one-time v17.6.9 release workflow

* Fix offer workspace mutation observer loop

* Add one-time v17.6.9 idempotency hotfix workflow

* Make v17.6.9 offer workspace rendering idempotent

* Remove one-time v17.6.9 idempotency workflow

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-09-08 08:21:11 +03:00
pavlov346346-source
4ba730990b
Caterium v17.6.8 — Developer Console UX and error fixes
* Add v17.6.8 Developer Console UX and race fixes

* Add Developer Console numbering delete and grouped error RPCs

* Add one-time v17.6.8 release preparation workflow

* Prepare Caterium v17.6.8 Developer Console UX

* Remove one-time v17.6.8 release workflow

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-09-08 07:58:54 +03:00
pavlov346346-source
a3616b7387
Caterium v17.6.7 — restore classic client proposal PDFs
Restore presentation-style client proposal PDFs with 10 classic designs, 3 hidden archive templates, and exact preview/download canvas parity.
2026-09-08 07:29:40 +03:00
pavlov346346-source
cd776d5647
Caterium v17.6.6 — proposal templates and Menu icon
Fix Menu sidebar icon alignment and make all four client proposal templates structurally distinct in preview and PDF.
2026-09-08 07:01:35 +03:00
pavlov346346-source
71d9cdc92e
Caterium v17.6.5 stability hardening
* Prepare v17.6.5 stability hardening patch

* Move v17.6.5 stability patch logic to script

* Fix v17.6.5 stability patch workflow

* Harden Caterium v17.6.5 stability

* Remove one-time v17.6.5 patch workflow

* Remove one-time v17.6.5 patch script

* Update static stability checks for v17.6.5

* Fix v17.6.5 E2E version expectation

* Update v17.6.5 E2E version expectation

* Remove one-time v17.6.5 test patch workflow

* Capture failing v17.6.5 E2E diagnostics

* Capture v17.6.5 E2E failures

* Make v17.6.5 stability E2E deterministic

* Make v17.6.5 E2E checks deterministic

* Remove one-time deterministic E2E workflow

* Remove one-time E2E diagnostic workflow

* Remove temporary E2E diagnostics

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-09-08 05:55:48 +03:00
pavlov346346-source
2cd5c3404f Caterium v17.6.0 - GitHub Cloudflare autodeploy 2026-09-07 15:29:20 +03:00