Files
mobile.derez.ai/sw.js
T
oliver b2bee03ca2 Show build date next to "Settings" heading
Inject a yyyy-mm-dd_hh:mm timestamp at build time via Vite's `define`
(app/vite.config.ts: __BUILD_DATE__, computed fresh on every
`vite build`/`vite dev` invocation) and render it next to the
Settings panel's title, so it's easy to tell which build is deployed.

- app/vite.config.ts: buildDateString() + define.__BUILD_DATE__
- app/src/vite-env.d.ts: ambient declaration for the injected constant
- app/src/components/SettingsPanel.tsx: render it next to "Settings"
- app/src/styles.css: .build-date styling

Rebuilt and redeployed to the repo root.
2026-11-04 15:46:58 -03:00

2 lines
1.5 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
if(!self.define){let e,i={};const n=(n,s)=>(n=new URL(n+".js",s).href,i[n]||new Promise(i=>{if("document"in self){const e=document.createElement("script");e.src=n,e.onload=i,document.head.appendChild(e)}else e=n,importScripts(n),i()}).then(()=>{let e=i[n];if(!e)throw new Error(`Module ${n} didn’t register its module`);return e}));self.define=(s,o)=>{const r=e||("document"in self?document.currentScript.src:"")||location.href;if(i[r])return;let c={};const l=e=>n(e,r),t={module:{uri:r},exports:c,require:l};i[r]=Promise.all(s.map(e=>t[e]||l(e))).then(e=>(o(...e),c))}}define(["./workbox-abeb32eb"],function(e){"use strict";self.skipWaiting(),e.clientsClaim(),e.precacheAndRoute([{url:"index.html",revision:"8e29677639fefa5c95cb54316bb425d0"},{url:"assets/workbox-window.prod.es5-BqEJf4Xk.js",revision:null},{url:"assets/index-BQJys9C3.css",revision:null},{url:"assets/index-BFnujVjw.js",revision:null},{url:"favicon.svg",revision:"a3baf2b041a9ed1fcc08d8a3634b535b"},{url:"icons/apple-touch-icon.png",revision:"ed81749f391ac07000b948263124e943"},{url:"icons/icon-192.png",revision:"8b2374bbaec1e3d1db8a07af64a6ef77"},{url:"icons/icon-512.png",revision:"c44a8f2da9095157b9b9aff7ec8e1aeb"},{url:"icons/maskable-512.png",revision:"beb4196443dc6daafcaab4497038613d"},{url:"manifest.webmanifest",revision:"d1afe01b7c52b0c511fd7e5f11079c23"}],{}),e.cleanupOutdatedCaches(),e.registerRoute(new e.NavigationRoute(e.createHandlerBoundToURL("index.html"),{denylist:[/^\/api\//]})),e.registerRoute(({url:e})=>e.pathname.startsWith("/api/"),new e.NetworkOnly,"GET")});