fix: fungerende datovelger, mørk modus på bunnark, og filtre som faktisk filtrerer - #129
Merged
Merged
Conversation
Datovelgeren som ble merget i #127 brukte et inline «spinner»-hjul. Det kollapser til null høyde under den nye arkitekturen i SDK 54, så feltet var dødt å trykke på. Verifisert i simulator. iOS bruker nå Apples kompakte kontroll, som åpner kalenderen sin selv. Pillen den tegner rundt datoen lar seg ikke style bort, så den synlige raden legges oppå som et lokk med pointerEvents="none": pillen skjules, og trykk går rett gjennom. Lokket må være ugjennomsiktig, og fargen regnes ut fra temaet med en blend()-hjelper i stedet for en gjettet hex, slik at feltet ser likt ut som de andre. Android beholder sin dialog. Beløp og dato deler nå rad. Begge er korte verdier, feltene blir like høye og vertikalt likestilte, og skjemaet blir en rad kortere. Rydder samtidig opp i felt som lot enheten gjøre feil jobb: - Navn får autoCapitalize="words" og name-hint; e-post får autoCorrect={false} og emailAddress-hint. Autokorrektur på en e-postadresse gjør mer skade enn nytte. - De tre søkefeltene får inputMode og returnKeyType "search", så tastaturet viser en søketast. clearButtonMode er utelatt med vilje: alle tre har allerede en egen X som deler plass med en spinner. - E-postvalideringen var .includes("@"), som slapp gjennom "@". Beløp får maxLength så taket ikke bare avvises i etterkant, og kontonummer sier fra mens man skriver hvor mange siffer som mangler i stedet for å tie til man trykker Send inn. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Arkene brukte bg-primary-foreground som flate. Den er #fafafa i lys og #ffffff i mørk modus — nesten hvit i begge — fordi den er ment som tekstfarge oppå primærknapper, ikke som bakgrunn. I mørk modus ble arket dermed hvitt mens text-foreground ble hvit tekst, så overskriftene i filteret forsvant. Lys modus så riktig ut ved en tilfeldighet: der er hvit uansett rett. Bruker bg-popover i stedet. Temaet har tre flateverdier som er like i lys modus, men ulike i mørk: background #030b1a, card #061532 og popover #091f49. Et bunnark er en overlay-flate, så popover gir arket et løft over den nedtonede bakgrunnen framfor å smelte sammen med siden. Samme feil lå i alle fem arkene — filter, arrangementsdetaljer, deltagerliste, profil og påmelding — så alle femten stedene er rettet. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Photon ignorerer ukjente query-parametre i stillhet, så begge filtrene så ut til å virke: toggelen slo på, chipen dukket opp, lista ble hentet på nytt — og svarte med alle arrangementene. Målt mot /api/event ga userFavorite=true og openForSignUp=true nøyaktig samme 26 treff som en parameter jeg fant på, mens expired ga 1202. Fasiten ligger i https://photon.tihlde.org/openapi. /api/event tar pageSize, page, search, category, expired, openSignUp, organizerGroupSlug og ordering. Påmelding het altså openSignUp, ikke openForSignUp. Med riktig navn filtrerer den: 0 mot 26 uten filter. Favoritter finnes ikke som listefilter i det hele tatt. Det eneste som finnes er GET /api/event/favorite, som krever token og svarer med en tynn form uten bilde, arrangør eller sted — så hver favoritt må slås opp mot /event/{id} for å kunne vises som kort. Lista er ikke paginert, og favoritter er få, så alt hentes i én omgang og søk og tidligere/kommende filtreres lokalt. Faller ett oppslag bort, utelates det i stedet for at hele lista feiler. Verifisert i simulator: med favorittfilteret på ga lista ett kort, «Obs! Jeg kom feil!», mot 26 før. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This was referenced Aug 15, 2026
Merged
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Tre feil som hadde det til felles at de så ut til å virke. Alle er funnet ved å kjøre appen i simulator eller måle mot Photon, ikke ved lesing.
1. Datovelgeren for utlegg var død
#127 byttet fritekstfeltet mot et inline
spinner-hjul. Det kollapser til null høyde under den nye arkitekturen i SDK 54, så feltet var ikke mulig å åpne. Ingen JS-feil — komponenten monterte, den tegnet bare ingenting.iOS bruker nå Apples kompakte kontroll, som åpner kalenderen sin selv. Pillen den tegner rundt datoen lar seg ikke style bort, så den synlige raden legges oppå som et lokk med
pointerEvents="none": pillen skjules, og trykk går rett gjennom. Lokket må være ugjennomsiktig, og fargen regnes ut fra temaet med enblend()-hjelper framfor en gjettet hex, så feltet ser likt ut som de andre. Android beholder sin dialog.Beløp og dato deler nå rad. Begge er korte verdier, feltene blir like høye, og skjemaet blir en rad kortere.
2. Bunnark var hvite i mørk modus
Arkene brukte
bg-primary-foregroundsom flate. Den er#fafafai lys og#ffffffi mørk — nesten hvit i begge — fordi den er ment som tekstfarge oppå primærknapper. I mørk modus ble arket hvitt menstext-foregroundble hvit tekst, så overskriftene forsvant. Lys modus så riktig ut ved en tilfeldighet.Bruker
bg-popoveri stedet, som er den mest hevede av temaets tre flateverdier. Feilen lå i alle fem arkene, så alle femten stedene er rettet.3. To av tre arrangementsfiltre gjorde ingenting
Photon ignorerer ukjente query-parametre i stillhet, så filtrene så ut til å virke: toggelen slo på, chipen dukket opp, lista ble hentet på nytt — og svarte med alt.
Målt mot
/api/event:userFavorite=trueopenForSignUp=trueexpired=true(kontroll)openSignUp=true(riktig navn)Fasiten ligger i https://photon.tihlde.org/openapi.
/api/eventtarpageSize,page,search,category,expired,openSignUp,organizerGroupSlugogordering.openSignUp, ikkeopenForSignUp. Ren navnefeil.GET /api/event/favorite, som gir en tynn form uten bilde, arrangør eller sted, så hver favoritt slås opp mot/event/{id}. Lista er ikke paginert og favoritter er få, så alt hentes i én omgang og søk og tidligere/kommende filtreres lokalt.Opprydding i skjemafelt
Felt som lot enheten gjøre feil jobb:
NavnfikkautoCapitalize="words"og name-hint;E-postfikkautoCorrect={false}og emailAddress-hint. Autokorrektur på en e-postadresse gjør mer skade enn nytte.inputModeogreturnKeyType="search".clearButtonModeer utelatt med vilje — alle tre har allerede en egen X som deler plass med en spinner..includes("@"), som slapp gjennom"@". Beløp fikkmaxLength, og kontonummer sier nå fra mens man skriver hvor mange siffer som mangler.Testing
Kjørt i simulator på iPhone 17 Pro gjennom hele arbeidet.
Pressable-er i denne appen, noe som kostet et par feilslutninger underveis.expo start --clear—bg-popovervar ny i kodebasen, så NativeWind hadde aldri generert klassen og den ble til ingenting.tsc --noEmitgir 62 feil både på renmainog med denne grenen — identisk, så ingen er innført. Alle er preeksisterende.expo lint: 0 feil, 5 preeksisterende advarsler.Verdt å se på senere
Ikke rørt her, men funnet underveis:
lib/timeformat.tser død kode med to reelle feil: minutter uten nullpadding (14:5) og feil ukedagsnavn (getDay()er 0 = søndag, men arrayet starter på «Man»). Ingenting importerer den.components/ui/input.tsxogcomponents/ui/floating-label-input.tsxer også ubrukte.🤖 Generated with Claude Code