From 4b9074361ba1c4cd8d3ce8f46df71c02bd0f82b0 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" Date: Fri, 3 Jan 2025 18:15:50 +0000 Subject: [PATCH] deploy: hardbulls/app@7ba3cbc37b386715b9494b9b53e31d12bd92da51 --- 192x192-maskable.png | Bin 6844 -> 0 bytes 192x192.png | Bin 20540 -> 0 bytes 512x512-maskable.png | Bin 10519 -> 0 bytes 512x512.png | Bin 51663 -> 0 bytes apple-touch-icon.png | Bin 0 -> 2847 bytes assets/EventRepository-BkuZlSr-.js | 1 + assets/EventRepository-DMVlWIt8.js | 1 - favicon-96x96.png | Bin 0 -> 1429 bytes favicon.ico | Bin 8662 -> 15086 bytes favicon.svg | 5 +++++ icon.svg | 2 +- index.html | 13 +++++++++---- main.UD9DHrof.js => main.BFOdtkMR.js | 4 ++-- manifest.json | 12 ++++++------ service-worker.js | 2 +- web-app-manifest-192x192.png | Bin 0 -> 3088 bytes web-app-manifest-512x512.png | Bin 0 -> 10704 bytes 17 files changed, 25 insertions(+), 15 deletions(-) delete mode 100644 192x192-maskable.png delete mode 100644 192x192.png delete mode 100644 512x512-maskable.png delete mode 100644 512x512.png create mode 100644 apple-touch-icon.png create mode 100644 assets/EventRepository-BkuZlSr-.js delete mode 100644 assets/EventRepository-DMVlWIt8.js create mode 100644 favicon-96x96.png create mode 100644 favicon.svg rename main.UD9DHrof.js => main.BFOdtkMR.js (99%) create mode 100644 web-app-manifest-192x192.png create mode 100644 web-app-manifest-512x512.png diff --git a/192x192-maskable.png b/192x192-maskable.png deleted file mode 100644 index 84fdaa80c9b1f0dab4169411be17e7c1e354ea72..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6844 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 diff --git a/192x192.png b/192x192.png deleted file mode 100644 index fb1857534aee94a385c5a126b0927f8aab1c8d88..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 20540 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 VTUMUx-mQ=ZObqtv=kK;V^*^g|!%+YL diff --git a/512x512.png b/512x512.png deleted file mode 100644 index 17ad6e94a32d32adb42d75a207bfc710590c6ca3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 51663 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

_^yCcE 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 Ksuf(rJpVtz{*?&; diff --git a/apple-touch-icon.png b/apple-touch-icon.png new file mode 100644 index 0000000000000000000000000000000000000000..57f49e46dea3a059341dbbdd20f1aab19742a555 GIT binary patch literal 2847 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 DK7Lxd literal 0 HcmV?d00001 diff --git a/assets/EventRepository-BkuZlSr-.js b/assets/EventRepository-BkuZlSr-.js new file mode 100644 index 0000000..85a450c --- /dev/null +++ b/assets/EventRepository-BkuZlSr-.js @@ -0,0 +1 @@ +const m=new Date().getFullYear(),c={TIMEZONE:"Europe/Vienna",CURRENT_SEASON:new Date().getMonth()>2?m:m-1,SEASONS:[2025,2024,2023,2022,2021],API_BASE:"https://api.hardbulls.com/",BULLS_LEAGUES:["bbl"],ASSET_JSON_CACHE_TTL:60*60,ASSET_IMAGE_CACHE_TTL:60*60*24,SPLASH_TIMEOUT:1800},E="state",f={theme:"auto",language:"auto",showPastGames:!1,showPastEvents:!1,leagues:[],season:c.CURRENT_SEASON};class n{static state={...f};static setTheme(e){localStorage.setItem("theme",e),n.state.theme=e}static getTheme(){return n.state.theme}static setLanguage(e){localStorage.setItem("language",e),n.state.language=e}static getLanguage(){return n.state.language}static setShowPastGames(e){localStorage.setItem("showPastGames",JSON.stringify(e)),n.state.showPastGames=e}static getShowPastGames(){return n.state.showPastGames}static setShowPastEvents(e){localStorage.setItem("showPastEvents",JSON.stringify(e)),n.state.showPastEvents=e}static getShowPastEvents(){return n.state.showPastEvents}static setSeason(e){localStorage.setItem("season",e.toString()),n.state.season=e}static getSeason(){return n.state.season}static setLeagues(e){localStorage.setItem("leagues",JSON.stringify(e)),n.state.leagues=e,this.notifyServiceWorker()}static addLeague(e){const t=n.getLeagues();t.includes(e)||(t.push(e),n.setLeagues(t))}static removeLeague(e){n.setLeagues(n.getLeagues().filter(t=>t!==e))}static getLeagues(){return n.state.leagues}static getStateString(){return JSON.stringify(this.state)}static notifyServiceWorker(){typeof window>"u"||typeof document>"u"||navigator.serviceWorker?.controller&&navigator.serviceWorker.controller.postMessage({type:E,state:this.state})}static load(){const e=localStorage.getItem("leagues");n.state={theme:localStorage.getItem("theme")||"auto",language:localStorage.getItem("language")||"auto",showPastGames:localStorage.getItem("showPastGames")==="true",showPastEvents:localStorage.getItem("showPastEvents")==="true",leagues:e?JSON.parse(e):[],season:Number.parseInt(localStorage.getItem("season")||`${f.season}`)},n.notifyServiceWorker()}}const S="en",o={"app.title":{en:"BullsApp",de:" BullsApp"},"app.offline":{en:"You are offline, and data may be outdated.",de:"Du bist offline, Daten sind eventuell nicht aktuell."},"app.installation.apple":{de:"Installiere die App, indem du auf die Teilen-Schaltfläche ({shareIcon}) tippst und dann Zum Home-Bildschirm auswählst.",en:"Install the app by tapping the Share button ({shareIcon}) and then selecting Add to Home Screen."},"app.games":{en:"Schedule",de:"Spielplan"},"app.games.tab-bulls":{en:"Bulls",de:"Bulls"},"app.games.tab-teams":{en:"My Teams",de:"Meine Teams"},"app.games.select-user-teams":{en:"You have not selected any teams of interest yet. You can select them in the settings.",de:"Du hast noch keine Teams ausgewählt, die dich interessieren. Du kannst sie in den Einstellungen auswählen."},"app.settings.my-teams":{en:"My Teams",de:"Meine Teams"},"app.settings.games":{en:"Games and Events",de:"Spiele und Veranstaltungen"},"app.events.no-events":{en:"No events are scheduled at the moment",de:"Derzeit sind keine Veranstaltungen geplant"},"app.settings.title":{en:"Settings",de:"Einstellungen"},"app.settings.showPastGames":{en:"Show past games",de:"Vergangene Spiele anzeigen"},"app.settings.showPastEvents":{en:"Show past event",de:"Vergangene Veranstaltungen anzeigen"},"app.settings.display":{en:"Display",de:"Anzeige"},"app.settings.theme":{en:"Theme",de:"Thema"},"app.settings.theme.auto":{en:"Auto",de:"Automatisch"},"app.settings.theme.dark":{en:"Dark",de:"Dunkel"},"app.settings.theme.light":{en:"Light",de:"Hell"},"app.settings.language":{en:"Language",de:"Sprache"},"app.settings.language.auto":{en:"Auto",de:"Automatisch"},"app.settings.language.de":{en:"German",de:"Deutsch"},"app.settings.language.en":{en:"English",de:"Englisch"},"app.settings.reload":{en:"Reload App?",de:"App neu laden?"},"app.games.no-games-user.current":{en:"No games scheduled for your teams at the moment",de:"Derzeit sind keine Spiele für deine Teams geplant"},"app.games.no-games-user.past":{en:"No games found for your teams for the {season} season.",de:"Für die Saison {season} wurden keine Spiele für deine Teams gefunden."},"app.settings.version":{en:"App Version",de:"App Version"},"app.settings.no-teams-past-season":{en:"There are no teams available for the {season} season.",de:"Für die Saison {season} sind keine Teams verfügbar."},"app.settings.change-season":{en:"Are you sure you want to change the selected season?",de:"Bist du sicher, dass du die ausgewählte Saison ändern möchtest?"},"app.settings.no-teams-current-season":{en:"There are currently no teams available for the current season.",de:"Derzeit sind keine Teams für die aktuelle Saison verfügbar."},"app.games.no-games-bulls.current":{en:"No Bulls games are scheduled at the moment.",de:"Derzeit sind keine Bulls-Spiele geplant."},"app.games.no-games-bulls.past":{en:"No Bulls games are found for the {season} season.",de:"Für die Saison {season} wurden keine Bulls-Spiele gefunden."},"app.settings.about":{en:"About This App",de:"Über diese App"},"app.settings.update":{en:"Update Available",de:"Update verfügbar"},"app.settings.selectSeason":{en:"Select Season ",de:"Saison auswählen"},"app.settings.legal":{en:"This app works offline and does not store any personal data on remote servers. All data is processed and stored only on your device. The app may use external services to retrieve publicly available information, but no personal data is shared or transmitted.",de:"Diese App funktioniert offline und speichert keine persönlichen Daten auf entfernten Servern. Alle Daten werden ausschließlich auf Ihrem Gerät verarbeitet und gespeichert. Die App kann externe Dienste nutzen, um öffentlich verfügbare Informationen abzurufen, aber keine persönlichen Daten werden geteilt oder übertragen."},"app.settings.outdated":{en:"The information provided by this app may be subject to change and could be outdated. While we strive to keep it accurate, we cannot guarantee that all data is always up to date.",de:"Die Informationen, die diese App bereitstellt, können sich ändern und möglicherweise veraltet sein. Obwohl wir uns bemühen, sie stets aktuell zu halten, können wir nicht garantieren, dass alle Daten immer auf dem neuesten Stand sind."},"app.game.status.canceled":{en:"Canceled",de:"Abgesagt"}};function w(){return n.getLanguage()==="auto"?navigator.languages!=null?navigator.languages[0].split("-")?.[0]:navigator.language.split("-")?.[0]:n.getLanguage()}const b="en";function B(s,e,t){e=w()||b;let a=s;if(o[s]&&o[s][e]?a=o[s][e]:o[s]&&o[s][S]&&(a=o[s][S]),t)for(const[i,l]of Object.entries(t))a=a.replace(i,l.toString());return a}function A(s){return s{let t=_[s];if(!t)try{t=await(await fetch(`${c.API_BASE}${s}`.replace(/([^:])(\/\/+)/g,"$1/"))).json(),_[s]=t}catch(a){if(a instanceof Error&&T(a)&&e)return e();throw a}return t};function T(s){return s.name==="TypeError"&&s.message.includes("Failed to fetch")&&!window.navigator.onLine}class y{static async findAll(){return(await g("/api/leagues.json",()=>[])).map(t=>({id:t.slug,name:t.name,shortName:t.shortName,year:t.year}))}static async findByYear(e){return(await this.findAll()).filter(t=>t.year===e)}static async findByIdAndSeason(e,t){return(await this.findAll()).find(a=>a.id===e&&a.year===t)}}class u{static TEAM_MAPPING={"Hard Bulls":"hb_1","Hard Bulls Bandidos":"hb_2","Hard Bulls Bullets":"hb_3","Hard Barons":"hb_4_sp","Hard Bulls Bandidas":"hb_5_fp","Hard Bulls Bandidas U13":"hb_5_fp","Hard Bulls U8":"hb_1","Hard Bulls U10":"hb_1","Hard Bulls U12":"hb_1","Hard Bulls U13":"hb_1","Hard Bulls U14":"hb_1","Hard Bulls U15":"hb_1","Hard Bulls U16":"hb_1","Feldkirch Cardinals":"fc_1","Feldkirch Cardinals U8":"fc_1","Feldkirch Cardinals U10":"fc_1","Feldkirch Cardinals U12":"fc_1","Feldkirch Cardinals U14":"fc_1","Feldkirch Cardinals U16":"fc_1","Feldkirch Cardinals U13":"fc_1","Feldkirch Cardinals 2":"fc_1","Feldkirch Cardinals 3":"fc_1","Diving Ducks Wr. Neustadt":"dd_1","Wr. Neustadt Diving Ducks":"dd_1","Diving Ducks Wiener Neustadt":"dd_1","Diving Ducks U16 Wr. Neustadt":"dd_1","Diving Ducks U14 Wr. Neustadt":"dd_1","Vienna Wanderers":"vw_1","Vienna Wanderers 2":"vw_1","Vienna Wanderers U16":"vw_1","Vienna Wanderers U14":"vw_1","Vienna Metrostars":"vm_1","Vienna Metrostars 2":"vm_1","Vienna Metrostars U16":"vm_1","Vienna Metrostars U14":"vm_1","Schwechat Blue Bats":"bb_1","Blue Bats Schwechat":"bb_1","Schwechat Blue Bats U14":"bb_1","Traiskirchen Grasshoppers":"gh_1","Traiskirchen Grasshoppers U14":"gh_1","Dornbirn Indians":"di_1","Dornbirn Indians 2":"di_1","Dornbirn Indians 3":"di_1","Dornbirn Indians Minis U8":"di_1","Dornbirn Indians Kids U10":"di_1","Dornbirn Little Indians U12":"di_1","Dornbirn Little Indians U13":"di_1","Dornbirn Indians Ponies U14":"di_1","Dornbirn Legends":"di_2_sp","Dornbirn Redhawks":"di_3_sp","Dornbirn Bears":"di_4_sp","ASAK Athletics":"aa_1","Dirty Sox Graz":"ds_1","Kufstein Vikings":"kv_1","Kufstein Vikings U14":"kv_1","Pirmoser Vikings":"kv_1","Schwaz Tigers":"st_1","Feldkirch Angry Balls":"fc_2_sp","Centurions Wels":"cw_1","SG Indians - Vikings U16":"di_kv_1","SG Indians - Bulls":"di_hb_1","Feldkirch Falcons":"fc_2_fp","Stock City Cubs":"sc_1","Wil Pirates":"ch-wp_1","Baldham Boars":"de-bb_1","Zürich Challengers":"ch-zc_1","Pee Wees St. Pölten":"pw_1_fp","SG Crazy Chicklets - Metrostars":"cc_vw_1_fp","Füssen Royal Bavarians":"de-rb_1"};static async findAll(){return(await g("/api/teams.json",()=>[])).map(t=>({id:t.id,name:t.name,nameShort:t.nameShort,logo:`${c.API_BASE}assets/teams/${t.logo}`}))}static async findByName(e){const t=await u.findAll();for(const a of t)for(const[i,l]of Object.entries(u.TEAM_MAPPING))if(i.trim().toLowerCase()===e.trim().toLowerCase()&&a.id===l)return a;throw new Error(`Team ${e} not found!`)}}class d{static FIELD_CACHE={};static async findAll(){return(await g("/api/fields.json",()=>[])).map(t=>({teams:t.teams,location:t.location,venue:t.venue,image:t.image?`${c.API_BASE}assets/fields/${t.image}`:void 0,keywords:t.keywords}))}static async findByKeyword(e){const t=d.FIELD_CACHE[e];if(t)return t;if(e.trim()===",")return;const a=(await d.findAll()).find(i=>i.keywords.includes(e))||void 0;return a&&(d.FIELD_CACHE[e]=a),a}}class k{static async findScheduledBySeasonAndLeague(e,t,a){const i=await y.findByIdAndSeason(t,e);if(!i)return[];const l=await g(`/api/seasons/${e}/${i.id}/games.json`,()=>[]),h=[];for(const r of l){const p=new Date(r.date);(a?!A(p)&&r.status==="scheduled":!0)&&h.push({home:await u.findByName(r.home),away:await u.findByName(r.away),status:r.status,homeScore:r.homeScore,awayScore:r.awayScore,venue:r.venue?await d.findByKeyword(r.venue):void 0,date:p,league:i})}return Object.values(h).sort((r,p)=>r.date.getTime()-p.date.getTime())}static async findGamesForDay(e,t,a){return(await this.findScheduledBySeasonAndLeague(t,a,!1)).filter(i=>i.date.toDateString()===e.toDateString())}}var v=(s=>(s.TIME_ONLY="TIME_ONLY",s.DATE_ONLY="DATE_ONLY",s.DATE_TIME="DATE_TIME",s.DATE_TIME_SHORT="DATE_TIME_SHORT",s))(v||{});const D={TIME_ONLY:{timeStyle:"short"},DATE_ONLY:{dateStyle:"full"},DATE_TIME:{dateStyle:"full",timeStyle:"short"},DATE_TIME_SHORT:{dateStyle:"short",timeStyle:"short"}};function L(s,e){const t=w();return new Intl.DateTimeFormat(t,D[e]).format(s)}class N{static async findAll(e){return(await g("/api/events.json",()=>[])).map(a=>({...a,logo:a.logo?`${c.API_BASE}assets/events/${a.logo}`:void 0,date:new Date(a.date)})).filter(a=>e?!A(a.date):!0).sort((a,i)=>a.date.getTime()-i.date.getTime())}}export{c as C,v as D,N as E,d as F,k as G,y as L,n as S,u as T,E as a,f as b,L as f,B as t}; diff --git a/assets/EventRepository-DMVlWIt8.js b/assets/EventRepository-DMVlWIt8.js deleted file mode 100644 index beac50c..0000000 --- a/assets/EventRepository-DMVlWIt8.js +++ /dev/null @@ -1 +0,0 @@ -const m=new Date().getFullYear(),c={TIMEZONE:"Europe/Vienna",CURRENT_SEASON:new Date().getMonth()>2?m:m-1,SEASONS:[2025,2024,2023,2022,2021],API_BASE:"https://api.hardbulls.com/",BULLS_LEAGUES:["bbl"],ASSET_JSON_CACHE_TTL:60*60,ASSET_IMAGE_CACHE_TTL:60*60*24,SPLASH_TIMEOUT:1800},E="state",f={theme:"auto",language:"auto",showPastGames:!1,showPastEvents:!1,leagues:[],season:c.CURRENT_SEASON};class n{static state={...f};static setTheme(e){localStorage.setItem("theme",e),n.state.theme=e}static getTheme(){return n.state.theme}static setLanguage(e){localStorage.setItem("language",e),n.state.language=e}static getLanguage(){return n.state.language}static setShowPastGames(e){localStorage.setItem("showPastGames",JSON.stringify(e)),n.state.showPastGames=e}static getShowPastGames(){return n.state.showPastGames}static setShowPastEvents(e){localStorage.setItem("showPastEvents",JSON.stringify(e)),n.state.showPastEvents=e}static getShowPastEvents(){return n.state.showPastEvents}static setSeason(e){localStorage.setItem("season",e.toString()),n.state.season=e}static getSeason(){return n.state.season}static setLeagues(e){localStorage.setItem("leagues",JSON.stringify(e)),n.state.leagues=e,this.notifyServiceWorker()}static addLeague(e){const t=n.getLeagues();t.includes(e)||(t.push(e),n.setLeagues(t))}static removeLeague(e){n.setLeagues(n.getLeagues().filter(t=>t!==e))}static getLeagues(){return n.state.leagues}static getStateString(){return JSON.stringify(this.state)}static notifyServiceWorker(){typeof window>"u"||typeof document>"u"||navigator.serviceWorker?.controller&&navigator.serviceWorker.controller.postMessage({type:E,state:this.state})}static load(){const e=localStorage.getItem("leagues");n.state={theme:localStorage.getItem("theme")||"auto",language:localStorage.getItem("language")||"auto",showPastGames:localStorage.getItem("showPastGames")==="true",showPastEvents:localStorage.getItem("showPastEvents")==="true",leagues:e?JSON.parse(e):[],season:Number.parseInt(localStorage.getItem("season")||`${f.season}`)},n.notifyServiceWorker()}}const S="en",o={"app.title":{en:"Bulls App",de:" Bulls App"},"app.offline":{en:"You are offline, and data may be outdated.",de:"Du bist offline, Daten sind eventuell nicht aktuell."},"app.installation.apple":{de:"Installiere die App, indem du auf die Teilen-Schaltfläche ({shareIcon}) tippst und dann Zum Home-Bildschirm auswählst.",en:"Install the app by tapping the Share button ({shareIcon}) and then selecting Add to Home Screen."},"app.games":{en:"Schedule",de:"Spielplan"},"app.games.tab-bulls":{en:"Bulls",de:"Bulls"},"app.games.tab-teams":{en:"My Teams",de:"Meine Teams"},"app.games.select-user-teams":{en:"You have not selected any teams of interest yet. You can select them in the settings.",de:"Du hast noch keine Teams ausgewählt, die dich interessieren. Du kannst sie in den Einstellungen auswählen."},"app.settings.my-teams":{en:"My Teams",de:"Meine Teams"},"app.settings.games":{en:"Games and Events",de:"Spiele und Veranstaltungen"},"app.events.no-events":{en:"No events are scheduled at the moment",de:"Derzeit sind keine Veranstaltungen geplant"},"app.settings.title":{en:"Settings",de:"Einstellungen"},"app.settings.showPastGames":{en:"Show past games",de:"Vergangene Spiele anzeigen"},"app.settings.showPastEvents":{en:"Show past event",de:"Vergangene Veranstaltungen anzeigen"},"app.settings.display":{en:"Display",de:"Anzeige"},"app.settings.theme":{en:"Theme",de:"Thema"},"app.settings.theme.auto":{en:"Auto",de:"Automatisch"},"app.settings.theme.dark":{en:"Dark",de:"Dunkel"},"app.settings.theme.light":{en:"Light",de:"Hell"},"app.settings.language":{en:"Language",de:"Sprache"},"app.settings.language.auto":{en:"Auto",de:"Automatisch"},"app.settings.language.de":{en:"German",de:"Deutsch"},"app.settings.language.en":{en:"English",de:"Englisch"},"app.settings.reload":{en:"Reload App?",de:"App neu laden?"},"app.games.no-games-user.current":{en:"No games scheduled for your teams at the moment",de:"Derzeit sind keine Spiele für deine Teams geplant"},"app.games.no-games-user.past":{en:"No games found for your teams for the {season} season.",de:"Für die Saison {season} wurden keine Spiele für deine Teams gefunden."},"app.settings.version":{en:"App Version",de:"App Version"},"app.settings.no-teams-past-season":{en:"There are no teams available for the {season} season.",de:"Für die Saison {season} sind keine Teams verfügbar."},"app.settings.change-season":{en:"Are you sure you want to change the selected season?",de:"Bist du sicher, dass du die ausgewählte Saison ändern möchtest?"},"app.settings.no-teams-current-season":{en:"There are currently no teams available for the current season.",de:"Derzeit sind keine Teams für die aktuelle Saison verfügbar."},"app.games.no-games-bulls.current":{en:"No Bulls games are scheduled at the moment.",de:"Derzeit sind keine Bulls-Spiele geplant."},"app.games.no-games-bulls.past":{en:"No Bulls games are found for the {season} season.",de:"Für die Saison {season} wurden keine Bulls-Spiele gefunden."},"app.settings.about":{en:"About This App",de:"Über diese App"},"app.settings.update":{en:"Update Available",de:"Update verfügbar"},"app.settings.selectSeason":{en:"Select Season ",de:"Saison auswählen"},"app.settings.legal":{en:"This app works offline and does not store any personal data on remote servers. All data is processed and stored only on your device. The app may use external services to retrieve publicly available information, but no personal data is shared or transmitted.",de:"Diese App funktioniert offline und speichert keine persönlichen Daten auf entfernten Servern. Alle Daten werden ausschließlich auf Ihrem Gerät verarbeitet und gespeichert. Die App kann externe Dienste nutzen, um öffentlich verfügbare Informationen abzurufen, aber keine persönlichen Daten werden geteilt oder übertragen."},"app.settings.outdated":{en:"The information provided by this app may be subject to change and could be outdated. While we strive to keep it accurate, we cannot guarantee that all data is always up to date.",de:"Die Informationen, die diese App bereitstellt, können sich ändern und möglicherweise veraltet sein. Obwohl wir uns bemühen, sie stets aktuell zu halten, können wir nicht garantieren, dass alle Daten immer auf dem neuesten Stand sind."},"app.game.status.canceled":{en:"Canceled",de:"Abgesagt"}};function w(){return n.getLanguage()==="auto"?navigator.languages!=null?navigator.languages[0].split("-")?.[0]:navigator.language.split("-")?.[0]:n.getLanguage()}const b="en";function B(s,e,t){e=w()||b;let a=s;if(o[s]&&o[s][e]?a=o[s][e]:o[s]&&o[s][S]&&(a=o[s][S]),t)for(const[i,l]of Object.entries(t))a=a.replace(i,l.toString());return a}function A(s){return s{let t=_[s];if(!t)try{t=await(await fetch(`${c.API_BASE}${s}`.replace(/([^:])(\/\/+)/g,"$1/"))).json(),_[s]=t}catch(a){if(a instanceof Error&&T(a)&&e)return e();throw a}return t};function T(s){return s.name==="TypeError"&&s.message.includes("Failed to fetch")&&!window.navigator.onLine}class y{static async findAll(){return(await g("/api/leagues.json",()=>[])).map(t=>({id:t.slug,name:t.name,shortName:t.shortName,year:t.year}))}static async findByYear(e){return(await this.findAll()).filter(t=>t.year===e)}static async findByIdAndSeason(e,t){return(await this.findAll()).find(a=>a.id===e&&a.year===t)}}class u{static TEAM_MAPPING={"Hard Bulls":"hb_1","Hard Bulls Bandidos":"hb_2","Hard Bulls Bullets":"hb_3","Hard Barons":"hb_4_sp","Hard Bulls Bandidas":"hb_5_fp","Hard Bulls Bandidas U13":"hb_5_fp","Hard Bulls U8":"hb_1","Hard Bulls U10":"hb_1","Hard Bulls U12":"hb_1","Hard Bulls U13":"hb_1","Hard Bulls U14":"hb_1","Hard Bulls U15":"hb_1","Hard Bulls U16":"hb_1","Feldkirch Cardinals":"fc_1","Feldkirch Cardinals U8":"fc_1","Feldkirch Cardinals U10":"fc_1","Feldkirch Cardinals U12":"fc_1","Feldkirch Cardinals U14":"fc_1","Feldkirch Cardinals U16":"fc_1","Feldkirch Cardinals U13":"fc_1","Feldkirch Cardinals 2":"fc_1","Feldkirch Cardinals 3":"fc_1","Diving Ducks Wr. Neustadt":"dd_1","Wr. Neustadt Diving Ducks":"dd_1","Diving Ducks Wiener Neustadt":"dd_1","Diving Ducks U16 Wr. Neustadt":"dd_1","Diving Ducks U14 Wr. Neustadt":"dd_1","Vienna Wanderers":"vw_1","Vienna Wanderers 2":"vw_1","Vienna Wanderers U16":"vw_1","Vienna Wanderers U14":"vw_1","Vienna Metrostars":"vm_1","Vienna Metrostars 2":"vm_1","Vienna Metrostars U16":"vm_1","Vienna Metrostars U14":"vm_1","Schwechat Blue Bats":"bb_1","Blue Bats Schwechat":"bb_1","Schwechat Blue Bats U14":"bb_1","Traiskirchen Grasshoppers":"gh_1","Traiskirchen Grasshoppers U14":"gh_1","Dornbirn Indians":"di_1","Dornbirn Indians 2":"di_1","Dornbirn Indians 3":"di_1","Dornbirn Indians Minis U8":"di_1","Dornbirn Indians Kids U10":"di_1","Dornbirn Little Indians U12":"di_1","Dornbirn Little Indians U13":"di_1","Dornbirn Indians Ponies U14":"di_1","Dornbirn Legends":"di_2_sp","Dornbirn Redhawks":"di_3_sp","Dornbirn Bears":"di_4_sp","ASAK Athletics":"aa_1","Dirty Sox Graz":"ds_1","Kufstein Vikings":"kv_1","Kufstein Vikings U14":"kv_1","Pirmoser Vikings":"kv_1","Schwaz Tigers":"st_1","Feldkirch Angry Balls":"fc_2_sp","Centurions Wels":"cw_1","SG Indians - Vikings U16":"di_kv_1","SG Indians - Bulls":"di_hb_1","Feldkirch Falcons":"fc_2_fp","Stock City Cubs":"sc_1","Wil Pirates":"ch-wp_1","Baldham Boars":"de-bb_1","Zürich Challengers":"ch-zc_1","Pee Wees St. Pölten":"pw_1_fp","SG Crazy Chicklets - Metrostars":"cc_vw_1_fp","Füssen Royal Bavarians":"de-rb_1"};static async findAll(){return(await g("/api/teams.json",()=>[])).map(t=>({id:t.id,name:t.name,nameShort:t.nameShort,logo:`${c.API_BASE}assets/teams/${t.logo}`}))}static async findByName(e){const t=await u.findAll();for(const a of t)for(const[i,l]of Object.entries(u.TEAM_MAPPING))if(i.trim().toLowerCase()===e.trim().toLowerCase()&&a.id===l)return a;throw new Error(`Team ${e} not found!`)}}class d{static FIELD_CACHE={};static async findAll(){return(await g("/api/fields.json",()=>[])).map(t=>({teams:t.teams,location:t.location,venue:t.venue,image:t.image?`${c.API_BASE}assets/fields/${t.image}`:void 0,keywords:t.keywords}))}static async findByKeyword(e){const t=d.FIELD_CACHE[e];if(t)return t;if(e.trim()===",")return;const a=(await d.findAll()).find(i=>i.keywords.includes(e))||void 0;return a&&(d.FIELD_CACHE[e]=a),a}}class k{static async findScheduledBySeasonAndLeague(e,t,a){const i=await y.findByIdAndSeason(t,e);if(!i)return[];const l=await g(`/api/seasons/${e}/${i.id}/games.json`,()=>[]),h=[];for(const r of l){const p=new Date(r.date);(a?!A(p)&&r.status==="scheduled":!0)&&h.push({home:await u.findByName(r.home),away:await u.findByName(r.away),status:r.status,homeScore:r.homeScore,awayScore:r.awayScore,venue:r.venue?await d.findByKeyword(r.venue):void 0,date:p,league:i})}return Object.values(h).sort((r,p)=>r.date.getTime()-p.date.getTime())}static async findGamesForDay(e,t,a){return(await this.findScheduledBySeasonAndLeague(t,a,!1)).filter(i=>i.date.toDateString()===e.toDateString())}}var v=(s=>(s.TIME_ONLY="TIME_ONLY",s.DATE_ONLY="DATE_ONLY",s.DATE_TIME="DATE_TIME",s.DATE_TIME_SHORT="DATE_TIME_SHORT",s))(v||{});const D={TIME_ONLY:{timeStyle:"short"},DATE_ONLY:{dateStyle:"full"},DATE_TIME:{dateStyle:"full",timeStyle:"short"},DATE_TIME_SHORT:{dateStyle:"short",timeStyle:"short"}};function L(s,e){const t=w();return new Intl.DateTimeFormat(t,D[e]).format(s)}class N{static async findAll(e){return(await g("/api/events.json",()=>[])).map(a=>({...a,logo:a.logo?`${c.API_BASE}assets/events/${a.logo}`:void 0,date:new Date(a.date)})).filter(a=>e?!A(a.date):!0).sort((a,i)=>a.date.getTime()-i.date.getTime())}}export{c as C,v as D,N as E,d as F,k as G,y as L,n as S,u as T,E as a,f as b,L as f,B as t}; diff --git a/favicon-96x96.png b/favicon-96x96.png new file mode 100644 index 0000000000000000000000000000000000000000..5050a433f77875d2627562f9defcef2e741f6e57 GIT binary patch literal 1429 zcmV;G1#0?DneZdLdB;p`gvzxTW6-m3d5V^k`YN~Kb%R4SE9rBbO>V=oKwB^LPk(gpJU zz2I0(t`?w;WsDT#%lmFnDI~X8CPafC@k}pdZ;-YncLktLq|scRAlrP9ATH zmitpd{>x(q+)#w?v=(1zk$&;m{d{6VNsyZ!3vzK$zSAhV$Xnw9+Gav2ds6WPAjQTx zMS6EHN1nRQ=S(OG(oSyx>dDF?y?+aEoJIQ1gZIrQlzcwowWDOFaQ~RxK70nyhN6Av z0$?%X*`ob7qm`3_{I>!??lfz&Y%17|j!p(3#UaYz2GQyQKzhIG04(rh)df)TLDl#|&r(0$_okRshJIcD*qj0zh}VSTmp<0KlGl{aB0qs{%mov?gbxq5()mR}I^B zh8_cUR2l%#+X?`?5T;@*vhq_%uJqAxMkWIUxK`v8ga!Ix6ac(eH2{lIbc)aSm%spc zyRU+z*qF-Oubc35D_FifD}cjP$CxAC)(`=1`>g!n0DL?}*lxIf*|)#F6SHRs(s}{@ z!gs}&0)W@89>90nh;JGux|_4+1^F2Z^jTh&UM2vq7EwrB;!prM-T?C3ZHCnd1%L`5 zcq_EyngN3RdguzU;|##(7?4gi8g80k@5HJTmis>;I?4T}SL|Csr@J@ZG>Xq|AzhX| z|08V@psz+2fX@tAsMlBI<+BBivjpi8i}bSs2moM7i!gU;_M!&#=ZItgy-|e>I9San zUhNKqC;$ut!0E@CnF))utJ)a=^kx+^U`bLV5THE@0K)*tAVf4b%;2mU;6d4JssgA7 z$$+H=8+Qh|iW%@$mB#=ddxS=2MQkB3fR0&vv;|&J00HIBdntf`vXHDBTL8@*7Ulbu zjgkv027uogB>;;^akT&pxwqbyXb`R@fDy}pW)!ck7Jw1UfE42^#uh-c1Q}p~?-<+7 zxeF!80E_g(*aBz<&VbI`+%bYAV|zYeA#er^dSYf|05k(4DO~zcPHu)-nW=gvdEu%15is=746^MPbxq!4dZ*ci)0JYAoJ(T0svkU zU={4iVST%?!-P=x+RCABo3aN)8pYQY<=t&@w7@U=@a?WCHX-EpVEU?jn*}{sgm0H= zKF^G~>o47%6Q*bh(0zUZ@a{bCT}~l6caS&T!wTSQOrZl8^7R(@ci#mOppET%{bawJ za`_&gC;EH)=9UG%cGyeD|EKKsao~9i{Al-9sV##1vH&mUS{S7LS%m?=;yzg-$j^5F zfAb+fVN&B8vrmQ~ZOu-?1OJq#&)z}%vfYB2?`&)Qf1fZJWPHnxjTT-29{8!F+~?Kk ziT*PHX?>Ldh{yG51%Lwp@VGWn3IJ|oKll?OWe7pq)Y~sT724bKL3j5JK&4WtR4SE9 jrBbO>DwRrQMos?$sPY>D3!PIk00000NkvXXu0mjfKG~8_ literal 0 HcmV?d00001 diff --git a/favicon.ico b/favicon.ico index 03118710a59149e8a86911bb3be7d964e8057a2f..07474916b09dea2a60900efe040933320d651c93 100644 GIT binary patch literal 15086 zcmeHOYiJx*6uxUKMSN_vN-;Y#yUosQLckJ@h<~)c{%L&_MEzl#TCEkKMQRmn)j+Ta zDn8I3tyBa>>#MasK*2(!AQr7s@t4{f6l;>bv)NV)F|8TDGrQNlJDta!oy{hp8#p<4 z=HBz2@1D7H=gyhCjHTE-*4xXVb8M%@*cFViT&{Y&kg>x!w-B1@*Ue{aD;jj84NO=+ zgwD7B+7W0+pdEqP905zS-?cPeYL3`j8o_X}LFwmQapErZ{HeylQez8(5sCBK?IY8v*V1>L>_`gW48?08P#TYBlL zyivRx*WhX39#q1t#u4pLp#R%kPQcA)iq{Ik!AUm9TYt zhin_CjCgHP@zLEeR)~X3ZI>};KKk%-6h7Lli;FGV7qsGoQTSBf-Enl0u!*Og6voHf zp*}QzTRhBKYb#^l7m8gSqg{)N=hm#^l?oRhyAaoTJjjn}lx~WLSZl4yzvrUSb81%c zOSlHFP6z*jX5SlxE1ypif9h>sFWxNU$>k*R$Go*h#tJGY1^k^9p7RG}&T=^+|J5>9P&rBbEyG?LgiGgV zGk>guuE(=$Vy^M;>vPV;nAwQ=`JXWEN#l<-Ykw3z)rXHC=M2LrpP$Q>vJ`Ku#|FXs zR~6h=@mJ;2NV_ECUp4-X@KUuoo%v&&D$SqO_rpHCBl=30UcB5gN;l$qZpK>k2i4e9 zyCm_SuJs$?;y(Ucr5{Q7tFE6-lb;uN)o*E~tI?0is6Hg&uloMd*;z`*XSgOXf^;k5PtT`D;!ieMKl~EJoz5rXuNZ%N|7esy?&JM4&A;*d3Eczy z@J#bxvSeg&Bk|8`qh=WQq~k|5e}yreX@q}d?h51I%J3D9V3Q4aDdi7MgZISsfoJi` zsMx#p$f3o>7VY6fDW6WcWnmMgX|6@wp8>W~ZX3^t*P}2+J>{m|_c?>F$GoshDL!fGuFmtEbqq3HBso&?l>Us;V8K2P*ZBsup%tE%1aNRymL8xwt_(ke9&wpI?AK z(N6TMOzph=7ssk`6z%9CpMzWjY46iQ5ZZsC5y1N4ORVeF_sHn>PXtIgwpezq5Bq?Z z4EBet$2#VD@CeJp9j~mJu-`-Dj}r#vudxn&3G42!qVh(-K1eJ%?Dl;$#22w_VUNxY|DUSVQxbK{oPv zP5bRE#OjEQfw&x!+k}J z++*(vJJPN6U&xe}!e3nuIgWpfoiUlaD690Ja!2rWO73g={5vVy>tkm4l{61RjtRc9 zZiasuFK&4*`NzHEJN_}IH(Exy(<@zC=@PuxKLES$gW?jW|G;Tz{;ll2<8S$KXp;X` zVe>ZC(KjE&X~fH+N&fqz{8K%Azm~+myPomMgP{+rRs7@nArDxe$BNVc5dUkG{A>2! zB>pjn_eVE?pdv$Q-Uc9UV>Gr;*V_}KyZ zS@`p6_@4y+$I#nwjh`hhwC02Dn_+eW2X@$B!Qa5~fVUsO{Rs7k)W!aWFet~aZd1X> z{rS1qfBX3Kj6fw{Q2RfGABB;W)5GbB^hCBIC!uAb^JNIjPB2N*!`1V`uF|fY9!d+` znx{&M@)Y=qnVYMa?Rg5!i@R~}9vAmB?&T@mx8Kpa5PA!wT&u&H7w>U+585k_ESwt@ zZBSSDn-9};7N8#Qvf|mnH_NtErr$$|dbHi;t#{V|)qPx;qc(W!;q#F&d)G(xdrc$u zOBernHs+U6^5JKXx=numiFe)@yNu#hs}JWd+68Gp|8@P>_$Rc-fP|h6*spzy;7*vn z_Vw}K?TxRzwl|D+*W7V{E7@?lIL3R@w@? F{{T#AhSUH6 literal 8662 zcmds+NoW*76ozXI>OnmyiA$!tXOeXH#0*FzdhlZ0!GoX&1#yWR5)lM1deRv$B7z`z z@Srzuf)_;zC=$E~dhxCp5X6}2>KPZv7$<38^>okL%d1XJ7L!z7x|aWa^}43E5E6s$ z{xpH#Niy0+$XY^3FQk4*MN?e^61-jCHh@gXjYTWqc&@tZgce; ztty$vvHB2)7me-1p4r${W%C~R_=EN%<#vSWy5*@vp$o4|Gj2Oxt3nLH&sT)6>Du`q z%+IEE<0}xF&gb164$})Nhq2ZNz6wG9U_5^d(r7NTVnKSfWo)c9x97_Nz0wp9#>bybCe$Cj|KS1^9~+|LFid z;r!jwgcjg$!SjdA*{$RkGX6D%?iC#WQh;9V_z}Y|(`y0#qQrj=`K>l!A6u;anq*!H zU}x_-O8ozZXxd{4=FeG;AGVi7>_-KCzQ*-eh^T3HF%}KyO5Ya|lki?mQcXA2t3Xu(&bhu~GPu@vn;$4--$_ zDE#QN-5k7wDEtD~FRLvj=Q?}hxt*|2xDEX^IQtxhAN78t?4Q})1e^&UbM&Eg{BUpL zbsh=NvtrPPhsZu~^5f6HaQAaEoYlJqyHkL*_Yho_ro-jJ{^8Pm@(ADg>19|e?jzURs&;iA&oegY`$g!> zP%2^Ua`hqq6;CWMbz#4`rJ^s>Czv*zb>39;7dd~bJ-13x3adpXxYKWQ + + \ No newline at end of file diff --git a/icon.svg b/icon.svg index 2791c74..6363092 100644 --- a/icon.svg +++ b/icon.svg @@ -1,4 +1,4 @@ - + diff --git a/index.html b/index.html index 408c0ba..0a5281a 100644 --- a/index.html +++ b/index.html @@ -2,11 +2,16 @@ - - Hard Bulls App + BullsApp + + + + + + - - + + diff --git a/main.UD9DHrof.js b/main.BFOdtkMR.js similarity index 99% rename from main.UD9DHrof.js rename to main.BFOdtkMR.js index 76e1572..e8eef81 100644 --- a/main.UD9DHrof.js +++ b/main.BFOdtkMR.js @@ -1,4 +1,4 @@ -import{C as z,t as h,S as p,G as Y,f as H,D as P,L as K,E as xt}from"./assets/EventRepository-DMVlWIt8.js";(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const s of document.querySelectorAll('link[rel="modulepreload"]'))i(s);new MutationObserver(s=>{for(const a of s)if(a.type==="childList")for(const r of a.addedNodes)r.tagName==="LINK"&&r.rel==="modulepreload"&&i(r)}).observe(document,{childList:!0,subtree:!0});function e(s){const a={};return s.integrity&&(a.integrity=s.integrity),s.referrerPolicy&&(a.referrerPolicy=s.referrerPolicy),s.crossOrigin==="use-credentials"?a.credentials="include":s.crossOrigin==="anonymous"?a.credentials="omit":a.credentials="same-origin",a}function i(s){if(s.ep)return;s.ep=!0;const a=e(s);fetch(s.href,a)}})();let R="x",I=[];function yt(o){R=o}function d(o,t,e){I.push(()=>{window.customElements.define(`${R}-${o}`,t,e)})}function vt(){for(const o of I)o();I=[]}function l(){return R}function n(o){return`var(--${l()}-${o})`}function kt(){document.addEventListener("DOMContentLoaded",function(){const o=`${l()}-theme`,t=document.querySelector(o);if(!t)throw new Error(`Not theme tag found: ${o}`);if(t.style.display!=="none")throw new Error('Theme tag needs inline style of "display: none" for the wait functionality to work.');t&&customElements.get(o)?t.style.display="":customElements.whenDefined(o).then(()=>{t.style.display=""})})}var $=(o=>(o[o.XS=480]="XS",o[o.MD=600]="MD",o[o.LG=960]="LG",o[o.XL=1280]="XL",o))($||{}),S=(o=>(o.LIGHT="light",o.DARK="dark",o.AUTO="auto",o))(S||{});function x(o){let t=0,e=0,i=0;return o.length===4?(t=parseInt(o[1]+o[1],16),e=parseInt(o[2]+o[2],16),i=parseInt(o[3]+o[3],16)):o.length===7&&(t=parseInt(o[1]+o[2],16),e=parseInt(o[3]+o[4],16),i=parseInt(o[5]+o[6],16)),`${t}, ${e}, ${i}`}function u(o,t){let e=!1;o[0]==="#"&&(o=o.slice(1),e=!0);const i=parseInt(o,16);let s=(i>>16)+t;s=s>255?255:s<0?0:s;let a=(i>>8&255)+t;a=a>255?255:a<0?0:a;let r=(i&255)+t;return r=r>255?255:r<0?0:r,(e?"#":"")+(16777216+(s<<16)+(a<<8)+r).toString(16).slice(1)}function wt(o,t,e,i,s){function a(r,c,g,b){const v=b?60:-60,E=x(r),k=x(c),w=x(g);return{primary:{50:u(r,100),100:u(r,70),200:u(r,50),300:u(r,30),400:u(r,20),500:r,600:u(r,-10),700:u(r,-20),800:u(r,-30),900:u(r,-50)},secondary:{50:u(r,-100),100:u(r,-70),200:u(r,-50),300:u(r,-30),400:u(r,-20),500:u(r,-10),600:u(r,-20),700:u(r,-30),800:u(r,-40),900:u(r,-50)},background:{50:u(c,100),100:u(c,70),200:u(c,50),300:u(c,30),400:u(c,20),500:c,600:u(c,-10),700:u(c,-20),800:u(c,-30),900:u(c,-50),1e3:u(c,-80)},neutral:{background:c,text:g,border:u(c,v)},rgb:{primary:E,secondary:x(u(r,-20)),background:k,text:w,border:x(u(c,v))}}}return{light:a(o,e,t,!1),dark:a(o,s,i,!0)}}function $t(o){function t(i){const{primary:s,secondary:a,neutral:r,rgb:c,background:g}=o[i];return` +import{C as z,t as h,S as p,G as Y,f as H,D as P,L as K,E as xt}from"./assets/EventRepository-BkuZlSr-.js";(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const s of document.querySelectorAll('link[rel="modulepreload"]'))i(s);new MutationObserver(s=>{for(const a of s)if(a.type==="childList")for(const r of a.addedNodes)r.tagName==="LINK"&&r.rel==="modulepreload"&&i(r)}).observe(document,{childList:!0,subtree:!0});function e(s){const a={};return s.integrity&&(a.integrity=s.integrity),s.referrerPolicy&&(a.referrerPolicy=s.referrerPolicy),s.crossOrigin==="use-credentials"?a.credentials="include":s.crossOrigin==="anonymous"?a.credentials="omit":a.credentials="same-origin",a}function i(s){if(s.ep)return;s.ep=!0;const a=e(s);fetch(s.href,a)}})();let R="x",I=[];function yt(o){R=o}function d(o,t,e){I.push(()=>{window.customElements.define(`${R}-${o}`,t,e)})}function vt(){for(const o of I)o();I=[]}function l(){return R}function n(o){return`var(--${l()}-${o})`}function kt(){document.addEventListener("DOMContentLoaded",function(){const o=`${l()}-theme`,t=document.querySelector(o);if(!t)throw new Error(`Not theme tag found: ${o}`);if(t.style.display!=="none")throw new Error('Theme tag needs inline style of "display: none" for the wait functionality to work.');t&&customElements.get(o)?t.style.display="":customElements.whenDefined(o).then(()=>{t.style.display=""})})}var $=(o=>(o[o.XS=480]="XS",o[o.MD=600]="MD",o[o.LG=960]="LG",o[o.XL=1280]="XL",o))($||{}),S=(o=>(o.LIGHT="light",o.DARK="dark",o.AUTO="auto",o))(S||{});function x(o){let t=0,e=0,i=0;return o.length===4?(t=parseInt(o[1]+o[1],16),e=parseInt(o[2]+o[2],16),i=parseInt(o[3]+o[3],16)):o.length===7&&(t=parseInt(o[1]+o[2],16),e=parseInt(o[3]+o[4],16),i=parseInt(o[5]+o[6],16)),`${t}, ${e}, ${i}`}function u(o,t){let e=!1;o[0]==="#"&&(o=o.slice(1),e=!0);const i=parseInt(o,16);let s=(i>>16)+t;s=s>255?255:s<0?0:s;let a=(i>>8&255)+t;a=a>255?255:a<0?0:a;let r=(i&255)+t;return r=r>255?255:r<0?0:r,(e?"#":"")+(16777216+(s<<16)+(a<<8)+r).toString(16).slice(1)}function wt(o,t,e,i,s){function a(r,c,g,b){const v=b?60:-60,E=x(r),k=x(c),w=x(g);return{primary:{50:u(r,100),100:u(r,70),200:u(r,50),300:u(r,30),400:u(r,20),500:r,600:u(r,-10),700:u(r,-20),800:u(r,-30),900:u(r,-50)},secondary:{50:u(r,-100),100:u(r,-70),200:u(r,-50),300:u(r,-30),400:u(r,-20),500:u(r,-10),600:u(r,-20),700:u(r,-30),800:u(r,-40),900:u(r,-50)},background:{50:u(c,100),100:u(c,70),200:u(c,50),300:u(c,30),400:u(c,20),500:c,600:u(c,-10),700:u(c,-20),800:u(c,-30),900:u(c,-50),1e3:u(c,-80)},neutral:{background:c,text:g,border:u(c,v)},rgb:{primary:E,secondary:x(u(r,-20)),background:k,text:w,border:x(u(c,v))}}}return{light:a(o,e,t,!1),dark:a(o,s,i,!0)}}function $t(o){function t(i){const{primary:s,secondary:a,neutral:r,rgb:c,background:g}=o[i];return` --${i}-primary-50: ${s[50]}; --${i}-primary-100: ${s[100]}; --${i}-primary-200: ${s[200]}; @@ -1983,7 +1983,7 @@ import{C as z,t as h,S as p,G as Y,f as H,D as P,L as K,E as xt}from"./assets/Ev - ${h("app.settings.version")} 0.0.14-beta + ${h("app.settings.version")} 0.0.16-beta

diff --git a/manifest.json b/manifest.json index 25be6c6..abf00a6 100644 --- a/manifest.json +++ b/manifest.json @@ -1,7 +1,7 @@ { "id": "@hardbulls/app", - "name": "Bulls App", - "short_name": "Bulls App", + "name": "BullsApp", + "short_name": "BullsApp", "description": "Hard Bulls Baseball App", "start_url": "/", "display": "standalone", @@ -10,25 +10,25 @@ "orientation": "portrait", "icons": [ { - "src": "/192x192.png", + "src": "/web-app-manifest-192x192.png", "sizes": "192x192", "type": "image/png", "purpose": "any" }, { - "src": "/192x192-maskable.png", + "src": "/web-app-manifest-192x192.png", "sizes": "192x192", "type": "image/png", "purpose": "maskable" }, { - "src": "/512x512.png", + "src": "/web-app-manifest-512x512.png", "sizes": "512x512", "type": "image/png", "purpose": "any" }, { - "src": "/512x512-maskable.png", + "src": "/web-app-manifest-512x512.png", "sizes": "512x512", "type": "image/png", "purpose": "maskable" diff --git a/service-worker.js b/service-worker.js index cc07ac4..bdf1e77 100644 --- a/service-worker.js +++ b/service-worker.js @@ -1,2 +1,2 @@ (function(){"use strict";try{self["workbox:core:7.2.0"]&&_()}catch{}const ot=null,ce=(s,...e)=>{let t=s;return e.length>0&&(t+=` :: ${JSON.stringify(e)}`),t};class u extends Error{constructor(e,t){const a=ce(e,t);super(a),this.name=e,this.details=t}}const W=new Set;function le(s){W.add(s)}const g={googleAnalytics:"googleAnalytics",precache:"precache-v2",prefix:"workbox",runtime:"runtime",suffix:typeof registration<"u"?registration.scope:""},U=s=>[g.prefix,s,g.suffix].filter(e=>e&&e.length>0).join("-"),he=s=>{for(const e of Object.keys(g))s(e)},T={updateDetails:s=>{he(e=>{typeof s[e]=="string"&&(g[e]=s[e])})},getGoogleAnalyticsName:s=>s||U(g.googleAnalytics),getPrecacheName:s=>s||U(g.precache),getPrefix:()=>g.prefix,getRuntimeName:s=>s||U(g.runtime),getSuffix:()=>g.suffix};function j(s,e){const t=new URL(s);for(const a of e)t.searchParams.delete(a);return t.href}async function ue(s,e,t,a){const n=j(e.url,t);if(e.url===n)return s.match(e,a);const i=Object.assign(Object.assign({},a),{ignoreSearch:!0}),r=await s.keys(e,i);for(const o of r){const c=j(o.url,t);if(n===c)return s.match(o,a)}}let b;function de(){if(b===void 0){const s=new Response("");if("body"in s)try{new Response(s.body),b=!0}catch{b=!1}b=!1}return b}function H(s){s.then(()=>{})}class fe{constructor(){this.promise=new Promise((e,t)=>{this.resolve=e,this.reject=t})}}async function ge(){for(const s of W)await s()}const pe=s=>new URL(String(s),location.href).href.replace(new RegExp(`^${location.origin}`),"");function me(s){return new Promise(e=>setTimeout(e,s))}function F(s,e){const t=e();return s.waitUntil(t),t}async function we(s,e){let t=null;if(s.url&&(t=new URL(s.url).origin),t!==self.location.origin)throw new u("cross-origin-copy-response",{origin:t});const a=s.clone(),i={headers:new Headers(a.headers),status:a.status,statusText:a.statusText},r=de()?a.body:await a.blob();return new Response(r,i)}function ye(){self.addEventListener("activate",()=>self.clients.claim())}try{self["workbox:routing:7.2.0"]&&_()}catch{}const $="GET",D=s=>s&&typeof s=="object"?s:{handle:s};class E{constructor(e,t,a=$){this.handler=D(t),this.match=e,this.method=a}setCatchHandler(e){this.catchHandler=D(e)}}class _e extends E{constructor(e,t,a){const n=({url:i})=>{const r=e.exec(i.href);if(r&&!(i.origin!==location.origin&&r.index!==0))return r.slice(1)};super(n,t,a)}}class be{constructor(){this._routes=new Map,this._defaultHandlerMap=new Map}get routes(){return this._routes}addFetchListener(){self.addEventListener("fetch",e=>{const{request:t}=e,a=this.handleRequest({request:t,event:e});a&&e.respondWith(a)})}addCacheListener(){self.addEventListener("message",e=>{if(e.data&&e.data.type==="CACHE_URLS"){const{payload:t}=e.data,a=Promise.all(t.urlsToCache.map(n=>{typeof n=="string"&&(n=[n]);const i=new Request(...n);return this.handleRequest({request:i,event:e})}));e.waitUntil(a),e.ports&&e.ports[0]&&a.then(()=>e.ports[0].postMessage(!0))}})}handleRequest({request:e,event:t}){const a=new URL(e.url,location.href);if(!a.protocol.startsWith("http"))return;const n=a.origin===location.origin,{params:i,route:r}=this.findMatchingRoute({event:t,request:e,sameOrigin:n,url:a});let o=r&&r.handler;const c=e.method;if(!o&&this._defaultHandlerMap.has(c)&&(o=this._defaultHandlerMap.get(c)),!o)return;let h;try{h=o.handle({url:a,request:e,event:t,params:i})}catch(f){h=Promise.reject(f)}const S=r&&r.catchHandler;return h instanceof Promise&&(this._catchHandler||S)&&(h=h.catch(async f=>{if(S)try{return await S.handle({url:a,request:e,event:t,params:i})}catch(oe){oe instanceof Error&&(f=oe)}if(this._catchHandler)return this._catchHandler.handle({url:a,request:e,event:t});throw f})),h}findMatchingRoute({url:e,sameOrigin:t,request:a,event:n}){const i=this._routes.get(a.method)||[];for(const r of i){let o;const c=r.match({url:e,sameOrigin:t,request:a,event:n});if(c)return o=c,(Array.isArray(o)&&o.length===0||c.constructor===Object&&Object.keys(c).length===0||typeof c=="boolean")&&(o=void 0),{route:r,params:o}}return{}}setDefaultHandler(e,t=$){this._defaultHandlerMap.set(t,D(e))}setCatchHandler(e){this._catchHandler=D(e)}registerRoute(e){this._routes.has(e.method)||this._routes.set(e.method,[]),this._routes.get(e.method).push(e)}unregisterRoute(e){if(!this._routes.has(e.method))throw new u("unregister-route-but-not-found-with-method",{method:e.method});const t=this._routes.get(e.method).indexOf(e);if(t>-1)this._routes.get(e.method).splice(t,1);else throw new u("unregister-route-route-not-registered")}}let R;const Ee=()=>(R||(R=new be,R.addFetchListener(),R.addCacheListener()),R);function I(s,e,t){let a;if(typeof s=="string"){const i=new URL(s,location.href),r=({url:o})=>o.href===i.href;a=new E(r,e,t)}else if(s instanceof RegExp)a=new _e(s,e,t);else if(typeof s=="function")a=new E(s,e,t);else if(s instanceof E)a=s;else throw new u("unsupported-route-type",{moduleName:"workbox-routing",funcName:"registerRoute",paramName:"capture"});return Ee().registerRoute(a),a}try{self["workbox:strategies:7.2.0"]&&_()}catch{}function L(s){return typeof s=="string"?new Request(s):s}class Re{constructor(e,t){this._cacheKeys={},Object.assign(this,t),this.event=t.event,this._strategy=e,this._handlerDeferred=new fe,this._extendLifetimePromises=[],this._plugins=[...e.plugins],this._pluginStateMap=new Map;for(const a of this._plugins)this._pluginStateMap.set(a,{});this.event.waitUntil(this._handlerDeferred.promise)}async fetch(e){const{event:t}=this;let a=L(e);if(a.mode==="navigate"&&t instanceof FetchEvent&&t.preloadResponse){const r=await t.preloadResponse;if(r)return r}const n=this.hasCallback("fetchDidFail")?a.clone():null;try{for(const r of this.iterateCallbacks("requestWillFetch"))a=await r({request:a.clone(),event:t})}catch(r){if(r instanceof Error)throw new u("plugin-error-request-will-fetch",{thrownErrorMessage:r.message})}const i=a.clone();try{let r;r=await fetch(a,a.mode==="navigate"?void 0:this._strategy.fetchOptions);for(const o of this.iterateCallbacks("fetchDidSucceed"))r=await o({event:t,request:i,response:r});return r}catch(r){throw n&&await this.runCallbacks("fetchDidFail",{error:r,event:t,originalRequest:n.clone(),request:i.clone()}),r}}async fetchAndCachePut(e){const t=await this.fetch(e),a=t.clone();return this.waitUntil(this.cachePut(e,a)),t}async cacheMatch(e){const t=L(e);let a;const{cacheName:n,matchOptions:i}=this._strategy,r=await this.getCacheKey(t,"read"),o=Object.assign(Object.assign({},i),{cacheName:n});a=await caches.match(r,o);for(const c of this.iterateCallbacks("cachedResponseWillBeUsed"))a=await c({cacheName:n,matchOptions:i,cachedResponse:a,request:r,event:this.event})||void 0;return a}async cachePut(e,t){const a=L(e);await me(0);const n=await this.getCacheKey(a,"write");if(!t)throw new u("cache-put-with-no-response",{url:pe(n.url)});const i=await this._ensureResponseSafeToCache(t);if(!i)return!1;const{cacheName:r,matchOptions:o}=this._strategy,c=await self.caches.open(r),h=this.hasCallback("cacheDidUpdate"),S=h?await ue(c,n.clone(),["__WB_REVISION__"],o):null;try{await c.put(n,h?i.clone():i)}catch(f){if(f instanceof Error)throw f.name==="QuotaExceededError"&&await ge(),f}for(const f of this.iterateCallbacks("cacheDidUpdate"))await f({cacheName:r,oldResponse:S,newResponse:i.clone(),request:n,event:this.event});return!0}async getCacheKey(e,t){const a=`${e.url} | ${t}`;if(!this._cacheKeys[a]){let n=e;for(const i of this.iterateCallbacks("cacheKeyWillBeUsed"))n=L(await i({mode:t,request:n,event:this.event,params:this.params}));this._cacheKeys[a]=n}return this._cacheKeys[a]}hasCallback(e){for(const t of this._strategy.plugins)if(e in t)return!0;return!1}async runCallbacks(e,t){for(const a of this.iterateCallbacks(e))await a(t)}*iterateCallbacks(e){for(const t of this._strategy.plugins)if(typeof t[e]=="function"){const a=this._pluginStateMap.get(t);yield i=>{const r=Object.assign(Object.assign({},i),{state:a});return t[e](r)}}}waitUntil(e){return this._extendLifetimePromises.push(e),e}async doneWaiting(){let e;for(;e=this._extendLifetimePromises.shift();)await e}destroy(){this._handlerDeferred.resolve(null)}async _ensureResponseSafeToCache(e){let t=e,a=!1;for(const n of this.iterateCallbacks("cacheWillUpdate"))if(t=await n({request:this.request,response:t,event:this.event})||void 0,a=!0,!t)break;return a||t&&t.status!==200&&(t=void 0),t}}class v{constructor(e={}){this.cacheName=T.getRuntimeName(e.cacheName),this.plugins=e.plugins||[],this.fetchOptions=e.fetchOptions,this.matchOptions=e.matchOptions}handle(e){const[t]=this.handleAll(e);return t}handleAll(e){e instanceof FetchEvent&&(e={event:e,request:e.request});const t=e.event,a=typeof e.request=="string"?new Request(e.request):e.request,n="params"in e?e.params:void 0,i=new Re(this,{event:t,request:a,params:n}),r=this._getResponse(i,a,t),o=this._awaitComplete(r,i,a,t);return[r,o]}async _getResponse(e,t,a){await e.runCallbacks("handlerWillStart",{event:a,request:t});let n;try{if(n=await this._handle(t,e),!n||n.type==="error")throw new u("no-response",{url:t.url})}catch(i){if(i instanceof Error){for(const r of e.iterateCallbacks("handlerDidError"))if(n=await r({error:i,event:a,request:t}),n)break}if(!n)throw i}for(const i of e.iterateCallbacks("handlerWillRespond"))n=await i({event:a,request:t,response:n});return n}async _awaitComplete(e,t,a,n){let i,r;try{i=await e}catch{}try{await t.runCallbacks("handlerDidRespond",{event:n,request:a,response:i}),await t.doneWaiting()}catch(o){o instanceof Error&&(r=o)}if(await t.runCallbacks("handlerDidComplete",{event:n,request:a,response:i,error:r}),t.destroy(),r)throw r}}class Ce extends v{async _handle(e,t){let a=await t.cacheMatch(e),n;if(!a)try{a=await t.fetchAndCachePut(e)}catch(i){i instanceof Error&&(n=i)}if(!a)throw new u("no-response",{url:e.url,error:n});return a}}const Ae={cacheWillUpdate:async({response:s})=>s.status===200||s.status===0?s:null};class Se extends v{constructor(e={}){super(e),this.plugins.some(t=>"cacheWillUpdate"in t)||this.plugins.unshift(Ae)}async _handle(e,t){const a=t.fetchAndCachePut(e).catch(()=>{});t.waitUntil(a);let n=await t.cacheMatch(e),i;if(!n)try{n=await a}catch(r){r instanceof Error&&(i=r)}if(!n)throw new u("no-response",{url:e.url,error:i});return n}}function G(s){return s.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}const Te=(s,e)=>e.some(t=>s instanceof t);let V,q;function De(){return V||(V=[IDBDatabase,IDBObjectStore,IDBIndex,IDBCursor,IDBTransaction])}function Le(){return q||(q=[IDBCursor.prototype.advance,IDBCursor.prototype.continue,IDBCursor.prototype.continuePrimaryKey])}const J=new WeakMap,P=new WeakMap,Y=new WeakMap,k=new WeakMap,x=new WeakMap;function Ue(s){const e=new Promise((t,a)=>{const n=()=>{s.removeEventListener("success",i),s.removeEventListener("error",r)},i=()=>{t(p(s.result)),n()},r=()=>{a(s.error),n()};s.addEventListener("success",i),s.addEventListener("error",r)});return e.then(t=>{t instanceof IDBCursor&&J.set(t,s)}).catch(()=>{}),x.set(e,s),e}function Ie(s){if(P.has(s))return;const e=new Promise((t,a)=>{const n=()=>{s.removeEventListener("complete",i),s.removeEventListener("error",r),s.removeEventListener("abort",r)},i=()=>{t(),n()},r=()=>{a(s.error||new DOMException("AbortError","AbortError")),n()};s.addEventListener("complete",i),s.addEventListener("error",r),s.addEventListener("abort",r)});P.set(s,e)}let N={get(s,e,t){if(s instanceof IDBTransaction){if(e==="done")return P.get(s);if(e==="objectStoreNames")return s.objectStoreNames||Y.get(s);if(e==="store")return t.objectStoreNames[1]?void 0:t.objectStore(t.objectStoreNames[0])}return p(s[e])},set(s,e,t){return s[e]=t,!0},has(s,e){return s instanceof IDBTransaction&&(e==="done"||e==="store")?!0:e in s}};function ve(s){N=s(N)}function Pe(s){return s===IDBDatabase.prototype.transaction&&!("objectStoreNames"in IDBTransaction.prototype)?function(e,...t){const a=s.call(M(this),e,...t);return Y.set(a,e.sort?e.sort():[e]),p(a)}:Le().includes(s)?function(...e){return s.apply(M(this),e),p(J.get(this))}:function(...e){return p(s.apply(M(this),e))}}function ke(s){return typeof s=="function"?Pe(s):(s instanceof IDBTransaction&&Ie(s),Te(s,De())?new Proxy(s,N):s)}function p(s){if(s instanceof IDBRequest)return Ue(s);if(k.has(s))return k.get(s);const e=ke(s);return e!==s&&(k.set(s,e),x.set(e,s)),e}const M=s=>x.get(s);function xe(s,e,{blocked:t,upgrade:a,blocking:n,terminated:i}={}){const r=indexedDB.open(s,e),o=p(r);return a&&r.addEventListener("upgradeneeded",c=>{a(p(r.result),c.oldVersion,c.newVersion,p(r.transaction),c)}),t&&r.addEventListener("blocked",c=>t(c.oldVersion,c.newVersion,c)),o.then(c=>{i&&c.addEventListener("close",()=>i()),n&&c.addEventListener("versionchange",h=>n(h.oldVersion,h.newVersion,h))}).catch(()=>{}),o}function Ne(s,{blocked:e}={}){const t=indexedDB.deleteDatabase(s);return e&&t.addEventListener("blocked",a=>e(a.oldVersion,a)),p(t).then(()=>{})}const Me=["get","getKey","getAll","getAllKeys","count"],Be=["put","add","delete","clear"],B=new Map;function z(s,e){if(!(s instanceof IDBDatabase&&!(e in s)&&typeof e=="string"))return;if(B.get(e))return B.get(e);const t=e.replace(/FromIndex$/,""),a=e!==t,n=Be.includes(t);if(!(t in(a?IDBIndex:IDBObjectStore).prototype)||!(n||Me.includes(t)))return;const i=async function(r,...o){const c=this.transaction(r,n?"readwrite":"readonly");let h=c.store;return a&&(h=h.index(o.shift())),(await Promise.all([h[t](...o),n&&c.done]))[0]};return B.set(e,i),i}ve(s=>({...s,get:(e,t,a)=>z(e,t)||s.get(e,t,a),has:(e,t)=>!!z(e,t)||s.has(e,t)}));try{self["workbox:expiration:7.2.0"]&&_()}catch{}const Oe="workbox-expiration",C="cache-entries",Q=s=>{const e=new URL(s,location.href);return e.hash="",e.href};class Ke{constructor(e){this._db=null,this._cacheName=e}_upgradeDb(e){const t=e.createObjectStore(C,{keyPath:"id"});t.createIndex("cacheName","cacheName",{unique:!1}),t.createIndex("timestamp","timestamp",{unique:!1})}_upgradeDbAndDeleteOldDbs(e){this._upgradeDb(e),this._cacheName&&Ne(this._cacheName)}async setTimestamp(e,t){e=Q(e);const a={url:e,timestamp:t,cacheName:this._cacheName,id:this._getId(e)},i=(await this.getDb()).transaction(C,"readwrite",{durability:"relaxed"});await i.store.put(a),await i.done}async getTimestamp(e){const a=await(await this.getDb()).get(C,this._getId(e));return a?.timestamp}async expireEntries(e,t){const a=await this.getDb();let n=await a.transaction(C).store.index("timestamp").openCursor(null,"prev");const i=[];let r=0;for(;n;){const c=n.value;c.cacheName===this._cacheName&&(e&&c.timestamp=t?i.push(n.value):r++),n=await n.continue()}const o=[];for(const c of i)await a.delete(C,c.id),o.push(c.url);return o}_getId(e){return this._cacheName+"|"+Q(e)}async getDb(){return this._db||(this._db=await xe(Oe,1,{upgrade:this._upgradeDbAndDeleteOldDbs.bind(this)})),this._db}}class We{constructor(e,t={}){this._isRunning=!1,this._rerunRequested=!1,this._maxEntries=t.maxEntries,this._maxAgeSeconds=t.maxAgeSeconds,this._matchOptions=t.matchOptions,this._cacheName=e,this._timestampModel=new Ke(e)}async expireEntries(){if(this._isRunning){this._rerunRequested=!0;return}this._isRunning=!0;const e=this._maxAgeSeconds?Date.now()-this._maxAgeSeconds*1e3:0,t=await this._timestampModel.expireEntries(e,this._maxEntries),a=await self.caches.open(this._cacheName);for(const n of t)await a.delete(n,this._matchOptions);this._isRunning=!1,this._rerunRequested&&(this._rerunRequested=!1,H(this.expireEntries()))}async updateTimestamp(e){await this._timestampModel.setTimestamp(e,Date.now())}async isURLExpired(e){if(this._maxAgeSeconds){const t=await this._timestampModel.getTimestamp(e),a=Date.now()-this._maxAgeSeconds*1e3;return t!==void 0?t{if(!i)return null;const r=this._isResponseDateFresh(i),o=this._getCacheExpiration(n);H(o.expireEntries());const c=o.updateTimestamp(a.url);if(t)try{t.waitUntil(c)}catch{}return r?i:null},this.cacheDidUpdate=async({cacheName:t,request:a})=>{const n=this._getCacheExpiration(t);await n.updateTimestamp(a.url),await n.expireEntries()},this._config=e,this._maxAgeSeconds=e.maxAgeSeconds,this._cacheExpirations=new Map,e.purgeOnQuotaError&&le(()=>this.deleteCacheAndMetadata())}_getCacheExpiration(e){if(e===T.getRuntimeName())throw new u("expire-custom-caches-only");let t=this._cacheExpirations.get(e);return t||(t=new We(e,this._config),this._cacheExpirations.set(e,t)),t}_isResponseDateFresh(e){if(!this._maxAgeSeconds)return!0;const t=this._getDateHeaderTimestamp(e);if(t===null)return!0;const a=Date.now();return t>=a-this._maxAgeSeconds*1e3}_getDateHeaderTimestamp(e){if(!e.headers.has("date"))return null;const t=e.headers.get("date"),n=new Date(t).getTime();return isNaN(n)?null:n}async deleteCacheAndMetadata(){for(const[e,t]of this._cacheExpirations)await self.caches.delete(e),await t.delete();this._cacheExpirations=new Map}}try{self["workbox:precaching:7.2.0"]&&_()}catch{}const je="__WB_REVISION__";function He(s){if(!s)throw new u("add-to-cache-list-unexpected-type",{entry:s});if(typeof s=="string"){const i=new URL(s,location.href);return{cacheKey:i.href,url:i.href}}const{revision:e,url:t}=s;if(!t)throw new u("add-to-cache-list-unexpected-type",{entry:s});if(!e){const i=new URL(t,location.href);return{cacheKey:i.href,url:i.href}}const a=new URL(t,location.href),n=new URL(t,location.href);return a.searchParams.set(je,e),{cacheKey:a.href,url:n.href}}class Fe{constructor(){this.updatedURLs=[],this.notUpdatedURLs=[],this.handlerWillStart=async({request:e,state:t})=>{t&&(t.originalRequest=e)},this.cachedResponseWillBeUsed=async({event:e,state:t,cachedResponse:a})=>{if(e.type==="install"&&t&&t.originalRequest&&t.originalRequest instanceof Request){const n=t.originalRequest.url;a?this.notUpdatedURLs.push(n):this.updatedURLs.push(n)}return a}}}class $e{constructor({precacheController:e}){this.cacheKeyWillBeUsed=async({request:t,params:a})=>{const n=a?.cacheKey||this._precacheController.getCacheKeyForURL(t.url);return n?new Request(n,{headers:t.headers}):t},this._precacheController=e}}class m extends v{constructor(e={}){e.cacheName=T.getPrecacheName(e.cacheName),super(e),this._fallbackToNetwork=e.fallbackToNetwork!==!1,this.plugins.push(m.copyRedirectedCacheableResponsesPlugin)}async _handle(e,t){const a=await t.cacheMatch(e);return a||(t.event&&t.event.type==="install"?await this._handleInstall(e,t):await this._handleFetch(e,t))}async _handleFetch(e,t){let a;const n=t.params||{};if(this._fallbackToNetwork){const i=n.integrity,r=e.integrity,o=!r||r===i;a=await t.fetch(new Request(e,{integrity:e.mode!=="no-cors"?r||i:void 0})),i&&o&&e.mode!=="no-cors"&&(this._useDefaultCacheabilityPluginIfNeeded(),await t.cachePut(e,a.clone()))}else throw new u("missing-precache-entry",{cacheName:this.cacheName,url:e.url});return a}async _handleInstall(e,t){this._useDefaultCacheabilityPluginIfNeeded();const a=await t.fetch(e);if(!await t.cachePut(e,a.clone()))throw new u("bad-precaching-response",{url:e.url,status:a.status});return a}_useDefaultCacheabilityPluginIfNeeded(){let e=null,t=0;for(const[a,n]of this.plugins.entries())n!==m.copyRedirectedCacheableResponsesPlugin&&(n===m.defaultPrecacheCacheabilityPlugin&&(e=a),n.cacheWillUpdate&&t++);t===0?this.plugins.push(m.defaultPrecacheCacheabilityPlugin):t>1&&e!==null&&this.plugins.splice(e,1)}}m.defaultPrecacheCacheabilityPlugin={async cacheWillUpdate({response:s}){return!s||s.status>=400?null:s}},m.copyRedirectedCacheableResponsesPlugin={async cacheWillUpdate({response:s}){return s.redirected?await we(s):s}};class Ge{constructor({cacheName:e,plugins:t=[],fallbackToNetwork:a=!0}={}){this._urlsToCacheKeys=new Map,this._urlsToCacheModes=new Map,this._cacheKeysToIntegrities=new Map,this._strategy=new m({cacheName:T.getPrecacheName(e),plugins:[...t,new $e({precacheController:this})],fallbackToNetwork:a}),this.install=this.install.bind(this),this.activate=this.activate.bind(this)}get strategy(){return this._strategy}precache(e){this.addToCacheList(e),this._installAndActiveListenersAdded||(self.addEventListener("install",this.install),self.addEventListener("activate",this.activate),this._installAndActiveListenersAdded=!0)}addToCacheList(e){const t=[];for(const a of e){typeof a=="string"?t.push(a):a&&a.revision===void 0&&t.push(a.url);const{cacheKey:n,url:i}=He(a),r=typeof a!="string"&&a.revision?"reload":"default";if(this._urlsToCacheKeys.has(i)&&this._urlsToCacheKeys.get(i)!==n)throw new u("add-to-cache-list-conflicting-entries",{firstEntry:this._urlsToCacheKeys.get(i),secondEntry:n});if(typeof a!="string"&&a.integrity){if(this._cacheKeysToIntegrities.has(n)&&this._cacheKeysToIntegrities.get(n)!==a.integrity)throw new u("add-to-cache-list-conflicting-integrities",{url:i});this._cacheKeysToIntegrities.set(n,a.integrity)}if(this._urlsToCacheKeys.set(i,n),this._urlsToCacheModes.set(i,r),t.length>0){const o=`Workbox is precaching URLs without revision info: ${t.join(", ")} -This is generally NOT safe. Learn more at https://bit.ly/wb-precache`;console.warn(o)}}}install(e){return F(e,async()=>{const t=new Fe;this.strategy.plugins.push(t);for(const[i,r]of this._urlsToCacheKeys){const o=this._cacheKeysToIntegrities.get(r),c=this._urlsToCacheModes.get(i),h=new Request(i,{integrity:o,cache:c,credentials:"same-origin"});await Promise.all(this.strategy.handleAll({params:{cacheKey:r},request:h,event:e}))}const{updatedURLs:a,notUpdatedURLs:n}=t;return{updatedURLs:a,notUpdatedURLs:n}})}activate(e){return F(e,async()=>{const t=await self.caches.open(this.strategy.cacheName),a=await t.keys(),n=new Set(this._urlsToCacheKeys.values()),i=[];for(const r of a)n.has(r.url)||(await t.delete(r),i.push(r.url));return{deletedURLs:i}})}getURLsToCacheKeys(){return this._urlsToCacheKeys}getCachedURLs(){return[...this._urlsToCacheKeys.keys()]}getCacheKeyForURL(e){const t=new URL(e,location.href);return this._urlsToCacheKeys.get(t.href)}getIntegrityForCacheKey(e){return this._cacheKeysToIntegrities.get(e)}async matchPrecache(e){const t=e instanceof Request?e.url:e,a=this.getCacheKeyForURL(t);if(a)return(await self.caches.open(this.strategy.cacheName)).match(a)}createHandlerBoundToURL(e){const t=this.getCacheKeyForURL(e);if(!t)throw new u("non-precached-url",{url:e});return a=>(a.request=new Request(e),a.params=Object.assign({cacheKey:t},a.params),this.strategy.handle(a))}}let O;const X=()=>(O||(O=new Ge),O);function Ve(s,e=[]){for(const t of[...s.searchParams.keys()])e.some(a=>a.test(t))&&s.searchParams.delete(t);return s}function*qe(s,{ignoreURLParametersMatching:e=[/^utm_/,/^fbclid$/],directoryIndex:t="index.html",cleanURLs:a=!0,urlManipulation:n}={}){const i=new URL(s,location.href);i.hash="",yield i.href;const r=Ve(i,e);if(yield r.href,t&&r.pathname.endsWith("/")){const o=new URL(r.href);o.pathname+=t,yield o.href}if(a){const o=new URL(r.href);o.pathname+=".html",yield o.href}if(n){const o=n({url:i});for(const c of o)yield c.href}}class Je extends E{constructor(e,t){const a=({request:n})=>{const i=e.getURLsToCacheKeys();for(const r of qe(n.url,t)){const o=i.get(r);if(o){const c=e.getIntegrityForCacheKey(o);return{cacheKey:o,integrity:c}}}};super(a,e.strategy)}}function Ye(s){const e=X(),t=new Je(e,s);I(t)}function ze(s){X().precache(s)}function Qe(s,e){ze(s),Ye(e)}const ee=new Date().getFullYear(),d={TIMEZONE:"Europe/Vienna",CURRENT_SEASON:new Date().getMonth()>2?ee:ee-1,SEASONS:[2025,2024,2023,2022,2021],API_BASE:"https://api.hardbulls.com/",BULLS_LEAGUES:["bbl"],ASSET_JSON_CACHE_TTL:60*60,ASSET_IMAGE_CACHE_TTL:60*60*24,SPLASH_TIMEOUT:1800},te={},A=async(s,e)=>{let t=te[s];if(!t)try{t=await(await fetch(`${d.API_BASE}${s}`.replace(/([^:])(\/\/+)/g,"$1/"))).json(),te[s]=t}catch(a){if(a instanceof Error&&Ze(a)&&e)return e();throw a}return t};function Ze(s){return s.name==="TypeError"&&s.message.includes("Failed to fetch")&&!window.navigator.onLine}class se{static async findAll(){return(await A("/api/leagues.json",()=>[])).map(t=>({id:t.slug,name:t.name,shortName:t.shortName,year:t.year}))}static async findByYear(e){return(await this.findAll()).filter(t=>t.year===e)}static async findByIdAndSeason(e,t){return(await this.findAll()).find(a=>a.id===e&&a.year===t)}}class w{static FIELD_CACHE={};static async findAll(){return(await A("/api/fields.json",()=>[])).map(t=>({teams:t.teams,location:t.location,venue:t.venue,image:t.image?`${d.API_BASE}assets/fields/${t.image}`:void 0,keywords:t.keywords}))}static async findByKeyword(e){const t=w.FIELD_CACHE[e];if(t)return t;if(e.trim()===",")return;const a=(await w.findAll()).find(n=>n.keywords.includes(e))||void 0;return a&&(w.FIELD_CACHE[e]=a),a}}class y{static TEAM_MAPPING={"Hard Bulls":"hb_1","Hard Bulls Bandidos":"hb_2","Hard Bulls Bullets":"hb_3","Hard Barons":"hb_4_sp","Hard Bulls Bandidas":"hb_5_fp","Hard Bulls Bandidas U13":"hb_5_fp","Hard Bulls U8":"hb_1","Hard Bulls U10":"hb_1","Hard Bulls U12":"hb_1","Hard Bulls U13":"hb_1","Hard Bulls U14":"hb_1","Hard Bulls U15":"hb_1","Hard Bulls U16":"hb_1","Feldkirch Cardinals":"fc_1","Feldkirch Cardinals U8":"fc_1","Feldkirch Cardinals U10":"fc_1","Feldkirch Cardinals U12":"fc_1","Feldkirch Cardinals U14":"fc_1","Feldkirch Cardinals U16":"fc_1","Feldkirch Cardinals U13":"fc_1","Feldkirch Cardinals 2":"fc_1","Feldkirch Cardinals 3":"fc_1","Diving Ducks Wr. Neustadt":"dd_1","Wr. Neustadt Diving Ducks":"dd_1","Diving Ducks Wiener Neustadt":"dd_1","Diving Ducks U16 Wr. Neustadt":"dd_1","Diving Ducks U14 Wr. Neustadt":"dd_1","Vienna Wanderers":"vw_1","Vienna Wanderers 2":"vw_1","Vienna Wanderers U16":"vw_1","Vienna Wanderers U14":"vw_1","Vienna Metrostars":"vm_1","Vienna Metrostars 2":"vm_1","Vienna Metrostars U16":"vm_1","Vienna Metrostars U14":"vm_1","Schwechat Blue Bats":"bb_1","Blue Bats Schwechat":"bb_1","Schwechat Blue Bats U14":"bb_1","Traiskirchen Grasshoppers":"gh_1","Traiskirchen Grasshoppers U14":"gh_1","Dornbirn Indians":"di_1","Dornbirn Indians 2":"di_1","Dornbirn Indians 3":"di_1","Dornbirn Indians Minis U8":"di_1","Dornbirn Indians Kids U10":"di_1","Dornbirn Little Indians U12":"di_1","Dornbirn Little Indians U13":"di_1","Dornbirn Indians Ponies U14":"di_1","Dornbirn Legends":"di_2_sp","Dornbirn Redhawks":"di_3_sp","Dornbirn Bears":"di_4_sp","ASAK Athletics":"aa_1","Dirty Sox Graz":"ds_1","Kufstein Vikings":"kv_1","Kufstein Vikings U14":"kv_1","Pirmoser Vikings":"kv_1","Schwaz Tigers":"st_1","Feldkirch Angry Balls":"fc_2_sp","Centurions Wels":"cw_1","SG Indians - Vikings U16":"di_kv_1","SG Indians - Bulls":"di_hb_1","Feldkirch Falcons":"fc_2_fp","Stock City Cubs":"sc_1","Wil Pirates":"ch-wp_1","Baldham Boars":"de-bb_1","Zürich Challengers":"ch-zc_1","Pee Wees St. Pölten":"pw_1_fp","SG Crazy Chicklets - Metrostars":"cc_vw_1_fp","Füssen Royal Bavarians":"de-rb_1"};static async findAll(){return(await A("/api/teams.json",()=>[])).map(t=>({id:t.id,name:t.name,nameShort:t.nameShort,logo:`${d.API_BASE}assets/teams/${t.logo}`}))}static async findByName(e){const t=await y.findAll();for(const a of t)for(const[n,i]of Object.entries(y.TEAM_MAPPING))if(n.trim().toLowerCase()===e.trim().toLowerCase()&&a.id===i)return a;throw new Error(`Team ${e} not found!`)}}function ae(s){return s[])).map(a=>({...a,logo:a.logo?`${d.API_BASE}assets/events/${a.logo}`:void 0,date:new Date(a.date)})).filter(a=>e?!ae(a.date):!0).sort((a,n)=>a.date.getTime()-n.date.getTime())}}async function et(){const s=["api/events.json","api/fields.json","api/leagues.json"];for(const e of await se.findAll())e.year===d.CURRENT_SEASON&&s.push(`api/seasons/${e.year}/${e.id}/games.json`);return s.map(e=>`${d.API_BASE}${e}`)}async function tt(){const s=[];for(const e of await w.findAll())e.image&&s.push(e.image);for(const e of await y.findAll())e.logo&&s.push(e.logo);for(const e of await Xe.findAll(!1))e.logo&&s.push(e.logo);return[...new Set(s)]}class st{static async findScheduledBySeasonAndLeague(e,t,a){const n=await se.findByIdAndSeason(t,e);if(!n)return[];const i=await A(`/api/seasons/${e}/${n.id}/games.json`,()=>[]),r=[];for(const o of i){const c=new Date(o.date);(a?!ae(c)&&o.status==="scheduled":!0)&&r.push({home:await y.findByName(o.home),away:await y.findByName(o.away),status:o.status,homeScore:o.homeScore,awayScore:o.awayScore,venue:o.venue?await w.findByKeyword(o.venue):void 0,date:c,league:n})}return Object.values(r).sort((o,c)=>o.date.getTime()-c.date.getTime())}static async findGamesForDay(e,t,a){return(await this.findScheduledBySeasonAndLeague(t,a,!1)).filter(n=>n.date.toDateString()===e.toDateString())}}const ne="state",K={theme:"auto",language:"auto",showPastGames:!1,showPastEvents:!1,leagues:[],season:d.CURRENT_SEASON};class l{static state={...K};static setTheme(e){localStorage.setItem("theme",e),l.state.theme=e}static getTheme(){return l.state.theme}static setLanguage(e){localStorage.setItem("language",e),l.state.language=e}static getLanguage(){return l.state.language}static setShowPastGames(e){localStorage.setItem("showPastGames",JSON.stringify(e)),l.state.showPastGames=e}static getShowPastGames(){return l.state.showPastGames}static setShowPastEvents(e){localStorage.setItem("showPastEvents",JSON.stringify(e)),l.state.showPastEvents=e}static getShowPastEvents(){return l.state.showPastEvents}static setSeason(e){localStorage.setItem("season",e.toString()),l.state.season=e}static getSeason(){return l.state.season}static setLeagues(e){localStorage.setItem("leagues",JSON.stringify(e)),l.state.leagues=e,this.notifyServiceWorker()}static addLeague(e){const t=l.getLeagues();t.includes(e)||(t.push(e),l.setLeagues(t))}static removeLeague(e){l.setLeagues(l.getLeagues().filter(t=>t!==e))}static getLeagues(){return l.state.leagues}static getStateString(){return JSON.stringify(this.state)}static notifyServiceWorker(){typeof window>"u"||typeof document>"u"||navigator.serviceWorker?.controller&&navigator.serviceWorker.controller.postMessage({type:ne,state:this.state})}static load(){const e=localStorage.getItem("leagues");l.state={theme:localStorage.getItem("theme")||"auto",language:localStorage.getItem("language")||"auto",showPastGames:localStorage.getItem("showPastGames")==="true",showPastEvents:localStorage.getItem("showPastEvents")==="true",leagues:e?JSON.parse(e):[],season:Number.parseInt(localStorage.getItem("season")||`${K.season}`)},l.notifyServiceWorker()}}let ie=K;self.addEventListener("message",s=>{s.data&&s.data.type===ne&&(ie=s.data.state)});function at(){return ie}function nt(){return l.getLanguage()==="auto"?navigator.languages!=null?navigator.languages[0].split("-")?.[0]:navigator.language.split("-")?.[0]:l.getLanguage()}var re=(s=>(s.TIME_ONLY="TIME_ONLY",s.DATE_ONLY="DATE_ONLY",s.DATE_TIME="DATE_TIME",s.DATE_TIME_SHORT="DATE_TIME_SHORT",s))(re||{});const it={TIME_ONLY:{timeStyle:"short"},DATE_ONLY:{dateStyle:"full"},DATE_TIME:{dateStyle:"full",timeStyle:"short"},DATE_TIME_SHORT:{dateStyle:"short",timeStyle:"short"}};function rt(s,e){const t=nt();return new Intl.DateTimeFormat(t,it[e]).format(s)}self.__WB_DISABLE_DEV_LOGS=!0,self.addEventListener("install",async s=>{s.waitUntil((async()=>{const e=await caches.open("api-json-cache-v1"),t=await et();await e.addAll(t);const a=await caches.open("api-assets-cache-v1"),n=await tt();await a.addAll(n)})()),await self.skipWaiting()}),ye(),Qe([{"revision":"9cc894549dc2545750e74e393223c7ac","url":"192x192-maskable.png"},{"revision":"0de804844936ad8a5b09a62825d81e5c","url":"192x192.png"},{"revision":"f471176d18d26b4e6565823a35bad0e2","url":"512x512-maskable.png"},{"revision":"c4aab75a66e536fbc3bc71eaa918b919","url":"512x512.png"},{"revision":"45ce934edbf48dd90ac4b41e153d9962","url":"assets/EventRepository-DMVlWIt8.js"},{"revision":"32f094cddb03a6a63379e605800a36c6","url":"favicon.ico"},{"revision":"7eb81c1c6975f87e2b9af1ec58c3379d","url":"icon.svg"},{"revision":"1323f0898d53b404beda23fc08cdca2b","url":"icons/apple_share.svg"},{"revision":"459c024ec54fcd6e6dd6352164f3874a","url":"icons/baseball-helmet.svg"},{"revision":"ed102eaef5e3f23a0bf5a2ba658cae5f","url":"icons/baseball.svg"},{"revision":"78cc32f1b1611d9880bef2fef0708ebf","url":"icons/calendar-dots.svg"},{"revision":"c18781107d773375d30063731b8c4eab","url":"icons/dots-three-circle.svg"},{"revision":"ac7da8ce255583a24fd32c3f4c6fa655","url":"icons/download.svg"},{"revision":"b77014424f62dedc9b471b489a67897c","url":"icons/house-line.svg"},{"revision":"297f26b52ab8a6e5a17f56ffb0732e9f","url":"images/background_landscape.webp"},{"revision":"2d0c37c282625acb66643c2d63b57980","url":"images/background_portrait.webp"},{"revision":"ee59895cc5f53502e02272b79749b4f2","url":"index.html"},{"revision":"653637a4f1b7a49ac038af4c026f4351","url":"logos/bull.svg"},{"revision":"c03d47b23901a7715c07531772156036","url":"logos/bulls_mlb.svg"},{"revision":"ff6fc0bbd39075b09d61ff5240cf1bc3","url":"logos/hb.svg"},{"revision":"ee23c1346684877f86cb65633747530f","url":"main.UD9DHrof.js"},{"revision":"58d21a5579c3776e150a9ec17a711d56","url":"manifest.json"}]),I(new RegExp(`^${G(d.API_BASE)}api/.*\\.json$`),new Se({cacheName:"api-json-cache-v1",plugins:[new Z({purgeOnQuotaError:!0,maxAgeSeconds:d.ASSET_JSON_CACHE_TTL})]})),I(new RegExp(`^${G(d.API_BASE)}assets/.*\\.(?:png|jpg|jpeg|svg|webp)$`),new Ce({cacheName:"api-assets-cache-v1",plugins:[new Z({maxAgeSeconds:d.ASSET_IMAGE_CACHE_TTL,purgeOnQuotaError:!0})]})),self.addEventListener("message",async s=>{if(s.data&&s.data.type==="triggerPushEvent"){const e=new Date,t=at(),a=[];for(const n of t.leagues)a.push(...await st.findGamesForDay(e,d.CURRENT_SEASON,n));for(const n of a){const i=`${n.away.name} vs. ${n.home.name}`;let r=`${rt(n.date,re.DATE_TIME_SHORT)}`;n.venue&&(r=`${[r,n.venue?.venue,n.venue?.location].filter(Boolean).join(", ")}`),await self.registration.showNotification(i,{body:r})}}}),console.log("app version: 0.0.14-beta")})(); +This is generally NOT safe. Learn more at https://bit.ly/wb-precache`;console.warn(o)}}}install(e){return F(e,async()=>{const t=new Fe;this.strategy.plugins.push(t);for(const[i,r]of this._urlsToCacheKeys){const o=this._cacheKeysToIntegrities.get(r),c=this._urlsToCacheModes.get(i),h=new Request(i,{integrity:o,cache:c,credentials:"same-origin"});await Promise.all(this.strategy.handleAll({params:{cacheKey:r},request:h,event:e}))}const{updatedURLs:a,notUpdatedURLs:n}=t;return{updatedURLs:a,notUpdatedURLs:n}})}activate(e){return F(e,async()=>{const t=await self.caches.open(this.strategy.cacheName),a=await t.keys(),n=new Set(this._urlsToCacheKeys.values()),i=[];for(const r of a)n.has(r.url)||(await t.delete(r),i.push(r.url));return{deletedURLs:i}})}getURLsToCacheKeys(){return this._urlsToCacheKeys}getCachedURLs(){return[...this._urlsToCacheKeys.keys()]}getCacheKeyForURL(e){const t=new URL(e,location.href);return this._urlsToCacheKeys.get(t.href)}getIntegrityForCacheKey(e){return this._cacheKeysToIntegrities.get(e)}async matchPrecache(e){const t=e instanceof Request?e.url:e,a=this.getCacheKeyForURL(t);if(a)return(await self.caches.open(this.strategy.cacheName)).match(a)}createHandlerBoundToURL(e){const t=this.getCacheKeyForURL(e);if(!t)throw new u("non-precached-url",{url:e});return a=>(a.request=new Request(e),a.params=Object.assign({cacheKey:t},a.params),this.strategy.handle(a))}}let O;const X=()=>(O||(O=new Ge),O);function Ve(s,e=[]){for(const t of[...s.searchParams.keys()])e.some(a=>a.test(t))&&s.searchParams.delete(t);return s}function*qe(s,{ignoreURLParametersMatching:e=[/^utm_/,/^fbclid$/],directoryIndex:t="index.html",cleanURLs:a=!0,urlManipulation:n}={}){const i=new URL(s,location.href);i.hash="",yield i.href;const r=Ve(i,e);if(yield r.href,t&&r.pathname.endsWith("/")){const o=new URL(r.href);o.pathname+=t,yield o.href}if(a){const o=new URL(r.href);o.pathname+=".html",yield o.href}if(n){const o=n({url:i});for(const c of o)yield c.href}}class Je extends E{constructor(e,t){const a=({request:n})=>{const i=e.getURLsToCacheKeys();for(const r of qe(n.url,t)){const o=i.get(r);if(o){const c=e.getIntegrityForCacheKey(o);return{cacheKey:o,integrity:c}}}};super(a,e.strategy)}}function Ye(s){const e=X(),t=new Je(e,s);I(t)}function ze(s){X().precache(s)}function Qe(s,e){ze(s),Ye(e)}const ee=new Date().getFullYear(),d={TIMEZONE:"Europe/Vienna",CURRENT_SEASON:new Date().getMonth()>2?ee:ee-1,SEASONS:[2025,2024,2023,2022,2021],API_BASE:"https://api.hardbulls.com/",BULLS_LEAGUES:["bbl"],ASSET_JSON_CACHE_TTL:60*60,ASSET_IMAGE_CACHE_TTL:60*60*24,SPLASH_TIMEOUT:1800},te={},A=async(s,e)=>{let t=te[s];if(!t)try{t=await(await fetch(`${d.API_BASE}${s}`.replace(/([^:])(\/\/+)/g,"$1/"))).json(),te[s]=t}catch(a){if(a instanceof Error&&Ze(a)&&e)return e();throw a}return t};function Ze(s){return s.name==="TypeError"&&s.message.includes("Failed to fetch")&&!window.navigator.onLine}class se{static async findAll(){return(await A("/api/leagues.json",()=>[])).map(t=>({id:t.slug,name:t.name,shortName:t.shortName,year:t.year}))}static async findByYear(e){return(await this.findAll()).filter(t=>t.year===e)}static async findByIdAndSeason(e,t){return(await this.findAll()).find(a=>a.id===e&&a.year===t)}}class w{static FIELD_CACHE={};static async findAll(){return(await A("/api/fields.json",()=>[])).map(t=>({teams:t.teams,location:t.location,venue:t.venue,image:t.image?`${d.API_BASE}assets/fields/${t.image}`:void 0,keywords:t.keywords}))}static async findByKeyword(e){const t=w.FIELD_CACHE[e];if(t)return t;if(e.trim()===",")return;const a=(await w.findAll()).find(n=>n.keywords.includes(e))||void 0;return a&&(w.FIELD_CACHE[e]=a),a}}class y{static TEAM_MAPPING={"Hard Bulls":"hb_1","Hard Bulls Bandidos":"hb_2","Hard Bulls Bullets":"hb_3","Hard Barons":"hb_4_sp","Hard Bulls Bandidas":"hb_5_fp","Hard Bulls Bandidas U13":"hb_5_fp","Hard Bulls U8":"hb_1","Hard Bulls U10":"hb_1","Hard Bulls U12":"hb_1","Hard Bulls U13":"hb_1","Hard Bulls U14":"hb_1","Hard Bulls U15":"hb_1","Hard Bulls U16":"hb_1","Feldkirch Cardinals":"fc_1","Feldkirch Cardinals U8":"fc_1","Feldkirch Cardinals U10":"fc_1","Feldkirch Cardinals U12":"fc_1","Feldkirch Cardinals U14":"fc_1","Feldkirch Cardinals U16":"fc_1","Feldkirch Cardinals U13":"fc_1","Feldkirch Cardinals 2":"fc_1","Feldkirch Cardinals 3":"fc_1","Diving Ducks Wr. Neustadt":"dd_1","Wr. Neustadt Diving Ducks":"dd_1","Diving Ducks Wiener Neustadt":"dd_1","Diving Ducks U16 Wr. Neustadt":"dd_1","Diving Ducks U14 Wr. Neustadt":"dd_1","Vienna Wanderers":"vw_1","Vienna Wanderers 2":"vw_1","Vienna Wanderers U16":"vw_1","Vienna Wanderers U14":"vw_1","Vienna Metrostars":"vm_1","Vienna Metrostars 2":"vm_1","Vienna Metrostars U16":"vm_1","Vienna Metrostars U14":"vm_1","Schwechat Blue Bats":"bb_1","Blue Bats Schwechat":"bb_1","Schwechat Blue Bats U14":"bb_1","Traiskirchen Grasshoppers":"gh_1","Traiskirchen Grasshoppers U14":"gh_1","Dornbirn Indians":"di_1","Dornbirn Indians 2":"di_1","Dornbirn Indians 3":"di_1","Dornbirn Indians Minis U8":"di_1","Dornbirn Indians Kids U10":"di_1","Dornbirn Little Indians U12":"di_1","Dornbirn Little Indians U13":"di_1","Dornbirn Indians Ponies U14":"di_1","Dornbirn Legends":"di_2_sp","Dornbirn Redhawks":"di_3_sp","Dornbirn Bears":"di_4_sp","ASAK Athletics":"aa_1","Dirty Sox Graz":"ds_1","Kufstein Vikings":"kv_1","Kufstein Vikings U14":"kv_1","Pirmoser Vikings":"kv_1","Schwaz Tigers":"st_1","Feldkirch Angry Balls":"fc_2_sp","Centurions Wels":"cw_1","SG Indians - Vikings U16":"di_kv_1","SG Indians - Bulls":"di_hb_1","Feldkirch Falcons":"fc_2_fp","Stock City Cubs":"sc_1","Wil Pirates":"ch-wp_1","Baldham Boars":"de-bb_1","Zürich Challengers":"ch-zc_1","Pee Wees St. Pölten":"pw_1_fp","SG Crazy Chicklets - Metrostars":"cc_vw_1_fp","Füssen Royal Bavarians":"de-rb_1"};static async findAll(){return(await A("/api/teams.json",()=>[])).map(t=>({id:t.id,name:t.name,nameShort:t.nameShort,logo:`${d.API_BASE}assets/teams/${t.logo}`}))}static async findByName(e){const t=await y.findAll();for(const a of t)for(const[n,i]of Object.entries(y.TEAM_MAPPING))if(n.trim().toLowerCase()===e.trim().toLowerCase()&&a.id===i)return a;throw new Error(`Team ${e} not found!`)}}function ae(s){return s[])).map(a=>({...a,logo:a.logo?`${d.API_BASE}assets/events/${a.logo}`:void 0,date:new Date(a.date)})).filter(a=>e?!ae(a.date):!0).sort((a,n)=>a.date.getTime()-n.date.getTime())}}async function et(){const s=["api/events.json","api/fields.json","api/leagues.json"];for(const e of await se.findAll())e.year===d.CURRENT_SEASON&&s.push(`api/seasons/${e.year}/${e.id}/games.json`);return s.map(e=>`${d.API_BASE}${e}`)}async function tt(){const s=[];for(const e of await w.findAll())e.image&&s.push(e.image);for(const e of await y.findAll())e.logo&&s.push(e.logo);for(const e of await Xe.findAll(!1))e.logo&&s.push(e.logo);return[...new Set(s)]}class st{static async findScheduledBySeasonAndLeague(e,t,a){const n=await se.findByIdAndSeason(t,e);if(!n)return[];const i=await A(`/api/seasons/${e}/${n.id}/games.json`,()=>[]),r=[];for(const o of i){const c=new Date(o.date);(a?!ae(c)&&o.status==="scheduled":!0)&&r.push({home:await y.findByName(o.home),away:await y.findByName(o.away),status:o.status,homeScore:o.homeScore,awayScore:o.awayScore,venue:o.venue?await w.findByKeyword(o.venue):void 0,date:c,league:n})}return Object.values(r).sort((o,c)=>o.date.getTime()-c.date.getTime())}static async findGamesForDay(e,t,a){return(await this.findScheduledBySeasonAndLeague(t,a,!1)).filter(n=>n.date.toDateString()===e.toDateString())}}const ne="state",K={theme:"auto",language:"auto",showPastGames:!1,showPastEvents:!1,leagues:[],season:d.CURRENT_SEASON};class l{static state={...K};static setTheme(e){localStorage.setItem("theme",e),l.state.theme=e}static getTheme(){return l.state.theme}static setLanguage(e){localStorage.setItem("language",e),l.state.language=e}static getLanguage(){return l.state.language}static setShowPastGames(e){localStorage.setItem("showPastGames",JSON.stringify(e)),l.state.showPastGames=e}static getShowPastGames(){return l.state.showPastGames}static setShowPastEvents(e){localStorage.setItem("showPastEvents",JSON.stringify(e)),l.state.showPastEvents=e}static getShowPastEvents(){return l.state.showPastEvents}static setSeason(e){localStorage.setItem("season",e.toString()),l.state.season=e}static getSeason(){return l.state.season}static setLeagues(e){localStorage.setItem("leagues",JSON.stringify(e)),l.state.leagues=e,this.notifyServiceWorker()}static addLeague(e){const t=l.getLeagues();t.includes(e)||(t.push(e),l.setLeagues(t))}static removeLeague(e){l.setLeagues(l.getLeagues().filter(t=>t!==e))}static getLeagues(){return l.state.leagues}static getStateString(){return JSON.stringify(this.state)}static notifyServiceWorker(){typeof window>"u"||typeof document>"u"||navigator.serviceWorker?.controller&&navigator.serviceWorker.controller.postMessage({type:ne,state:this.state})}static load(){const e=localStorage.getItem("leagues");l.state={theme:localStorage.getItem("theme")||"auto",language:localStorage.getItem("language")||"auto",showPastGames:localStorage.getItem("showPastGames")==="true",showPastEvents:localStorage.getItem("showPastEvents")==="true",leagues:e?JSON.parse(e):[],season:Number.parseInt(localStorage.getItem("season")||`${K.season}`)},l.notifyServiceWorker()}}let ie=K;self.addEventListener("message",s=>{s.data&&s.data.type===ne&&(ie=s.data.state)});function at(){return ie}function nt(){return l.getLanguage()==="auto"?navigator.languages!=null?navigator.languages[0].split("-")?.[0]:navigator.language.split("-")?.[0]:l.getLanguage()}var re=(s=>(s.TIME_ONLY="TIME_ONLY",s.DATE_ONLY="DATE_ONLY",s.DATE_TIME="DATE_TIME",s.DATE_TIME_SHORT="DATE_TIME_SHORT",s))(re||{});const it={TIME_ONLY:{timeStyle:"short"},DATE_ONLY:{dateStyle:"full"},DATE_TIME:{dateStyle:"full",timeStyle:"short"},DATE_TIME_SHORT:{dateStyle:"short",timeStyle:"short"}};function rt(s,e){const t=nt();return new Intl.DateTimeFormat(t,it[e]).format(s)}self.__WB_DISABLE_DEV_LOGS=!0,self.addEventListener("install",async s=>{s.waitUntil((async()=>{const e=await caches.open("api-json-cache-v1"),t=await et();await e.addAll(t);const a=await caches.open("api-assets-cache-v1"),n=await tt();await a.addAll(n)})()),await self.skipWaiting()}),ye(),Qe([{"revision":"60e7868ba58e2bcaf2ca9147e8559efd","url":"apple-touch-icon.png"},{"revision":"b243a74fba011e18a9d8af7148cc0888","url":"assets/EventRepository-BkuZlSr-.js"},{"revision":"b1830746836766a60e30a582eda20578","url":"favicon-96x96.png"},{"revision":"0e6dd72d31b1f7ab24b71f0cce2d31ea","url":"favicon.ico"},{"revision":"149afa82c2cf9297b2e9d5da0bdc75d0","url":"favicon.svg"},{"revision":"037463e7c368b0b8048106af3c040498","url":"icon.svg"},{"revision":"1323f0898d53b404beda23fc08cdca2b","url":"icons/apple_share.svg"},{"revision":"459c024ec54fcd6e6dd6352164f3874a","url":"icons/baseball-helmet.svg"},{"revision":"ed102eaef5e3f23a0bf5a2ba658cae5f","url":"icons/baseball.svg"},{"revision":"78cc32f1b1611d9880bef2fef0708ebf","url":"icons/calendar-dots.svg"},{"revision":"c18781107d773375d30063731b8c4eab","url":"icons/dots-three-circle.svg"},{"revision":"ac7da8ce255583a24fd32c3f4c6fa655","url":"icons/download.svg"},{"revision":"b77014424f62dedc9b471b489a67897c","url":"icons/house-line.svg"},{"revision":"297f26b52ab8a6e5a17f56ffb0732e9f","url":"images/background_landscape.webp"},{"revision":"2d0c37c282625acb66643c2d63b57980","url":"images/background_portrait.webp"},{"revision":"862828c2d31c4fe3405ab00d59eca70b","url":"index.html"},{"revision":"653637a4f1b7a49ac038af4c026f4351","url":"logos/bull.svg"},{"revision":"c03d47b23901a7715c07531772156036","url":"logos/bulls_mlb.svg"},{"revision":"ff6fc0bbd39075b09d61ff5240cf1bc3","url":"logos/hb.svg"},{"revision":"aa9049c6813e1d77ceb9ab78dabf3bf3","url":"main.BFOdtkMR.js"},{"revision":"1b044f744a42f4d3ade26899ac687a2f","url":"manifest.json"},{"revision":"c2442acf86fc450195fbb8cdf5914e8d","url":"web-app-manifest-192x192.png"},{"revision":"fd5483bce400d49f30f49502ee5cc082","url":"web-app-manifest-512x512.png"}]),I(new RegExp(`^${G(d.API_BASE)}api/.*\\.json$`),new Se({cacheName:"api-json-cache-v1",plugins:[new Z({purgeOnQuotaError:!0,maxAgeSeconds:d.ASSET_JSON_CACHE_TTL})]})),I(new RegExp(`^${G(d.API_BASE)}assets/.*\\.(?:png|jpg|jpeg|svg|webp)$`),new Ce({cacheName:"api-assets-cache-v1",plugins:[new Z({maxAgeSeconds:d.ASSET_IMAGE_CACHE_TTL,purgeOnQuotaError:!0})]})),self.addEventListener("message",async s=>{if(s.data&&s.data.type==="triggerPushEvent"){const e=new Date,t=at(),a=[];for(const n of t.leagues)a.push(...await st.findGamesForDay(e,d.CURRENT_SEASON,n));for(const n of a){const i=`${n.away.name} vs. ${n.home.name}`;let r=`${rt(n.date,re.DATE_TIME_SHORT)}`;n.venue&&(r=`${[r,n.venue?.venue,n.venue?.location].filter(Boolean).join(", ")}`),await self.registration.showNotification(i,{body:r})}}}),console.log("app version: 0.0.16-beta")})(); diff --git a/web-app-manifest-192x192.png b/web-app-manifest-192x192.png new file mode 100644 index 0000000000000000000000000000000000000000..ea0c6792ebfc1afbbfd344deb9f6a1eb6c492023 GIT binary patch literal 3088 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 I7WWJP1^Sh+r2qf` literal 0 HcmV?d00001