Admin order edit with category chips and timeline; customer checkout charges variant rialWage; product tags; retire the unused user-app-v2 tree. Co-authored-by: Cursor <cursoragent@cursor.com>
58 lines
2.3 KiB
HTML
58 lines
2.3 KiB
HTML
<!doctype html>
|
|
<html lang="en">
|
|
<head>
|
|
<link rel="icon" href="/favicon.ico" />
|
|
<meta charset="UTF-8" />
|
|
<meta name="apple-mobile-web-app-capable" content="yes" />
|
|
<meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" />
|
|
<meta name="theme-color" content="#23493c" data-light="#23493c" />
|
|
<meta name="background-color" content="#23493c" />
|
|
<meta content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" name="viewport" />
|
|
<!--
|
|
Appearance boot (see src/stores/appearanceStore.ts): applies the saved
|
|
theme / reduced-motion classes before the first paint, so a dark-mode
|
|
user never sees a white flash while the bundle loads. Same storage key
|
|
and class names as the store, which takes over once the app is up.
|
|
-->
|
|
<script>
|
|
(function () {
|
|
try {
|
|
var s = JSON.parse(localStorage.getItem('hedena-gold:appearance') || '{}');
|
|
var mq = function (q) { return window.matchMedia && matchMedia(q).matches; };
|
|
// Default is light when nothing is saved (matches appearanceStore).
|
|
var dark = s.theme === 'dark' || (s.theme === 'system' && mq('(prefers-color-scheme: dark)'));
|
|
var motion = typeof s.reduceMotion === 'boolean' ? s.reduceMotion : mq('(prefers-reduced-motion: reduce)');
|
|
var c = document.documentElement.classList;
|
|
if (dark) { c.add('theme-dark', 'van-theme-dark'); document.querySelector('meta[name=theme-color]').setAttribute('content', '#15171A'); }
|
|
if (motion) c.add('motion-reduced');
|
|
} catch (e) {}
|
|
})();
|
|
</script>
|
|
<style>
|
|
/* Until the bundle's palette loads. */
|
|
html.theme-dark, html.theme-dark body { background-color: #15171A !important; }
|
|
</style>
|
|
<title>%BRAND_TITLE%</title>
|
|
</head>
|
|
<body>
|
|
<!--
|
|
Boot splash: same phone column as #app so desktop never flashes a
|
|
full-bleed white sheet. Removed in main.ts once Vue mounts.
|
|
-->
|
|
<div
|
|
id="app-splash"
|
|
style="
|
|
position: fixed;
|
|
inset-block: 0;
|
|
inset-inline: max(0px, calc(50vw - 215px));
|
|
width: min(100vw, 430px);
|
|
margin-inline: auto;
|
|
background-color: var(--c-page, #fff);
|
|
z-index: 0;
|
|
"
|
|
></div>
|
|
<div id="app"></div>
|
|
<script type="module" src="/src/main.ts"></script>
|
|
</body>
|
|
</html>
|