srdusr
aboutsummaryrefslogtreecommitdiffstats
path: root/web/src/themeButton.js
diff options
context:
space:
mode:
authorsrdusr <[email protected]>2026-03-13 23:44:00 +0200
committersrdusr <[email protected]>2026-03-13 23:44:00 +0200
commite37b76136e49ac90bef841e318bceeef76a07129 (patch)
tree2b99369bceae6332965c91f8656e7e457431bdf0 /web/src/themeButton.js
parent4ffaeda5cf0da756ea05b6d13913ce3d775990d6 (diff)
downloadtyperpunk-e37b76136e49ac90bef841e318bceeef76a07129.tar.gz
typerpunk-e37b76136e49ac90bef841e318bceeef76a07129.zip
Ship the store catalogue with the client
The store read its catalogue from the server and rendered nothing without one: a heading, a sign-in prompt and an empty page, which reads as a fault rather than as a shop that needs an account. It now falls back to a copy that ships with the client, the same arrangement the text packs already use: bundled here, served from the database, and the served copy wins. With no server the store shows all 26 cosmetics, 4 bundles and 6 merchandise items at their real prices. Nothing pretends to work. The buy controls become a "Soon" label rather than a button, because offline there is nothing to buy with and nowhere to sign in to: sending someone to the account screen would be sending them to another screen that needs the server they have not got. A line at the top says the shop is not open yet. scripts/export_store.js regenerates the file. Run it after changing prices or adding items. It shells out to psql so it needs no dependencies, matching the other scripts here. Verified both ways. With no backend: 26 items, 4 bundles, 6 merch, 36 Soon labels, no live buy controls, no page errors. With the backend running: the same catalogue, 37 live buy controls, no Soon labels, no offline notice. 3 browser tests pass.
Diffstat (limited to 'web/src/themeButton.js')
0 files changed, 0 insertions, 0 deletions