Appinnstillinger
Tema, oversettelser, autentisering og registrering, brukerkontoer, tillatelser og rotasjon av oppføringer — alt som finjusteres i en app, seksjon for seksjon.
Hver app har sine egne innstillinger — temaet tilhører denne appen, kontoene tilhører denne appen, tillatelsene tilhører denne appen. Det er derfor innstillingene reiser med den når du eksporterer den i en pakke (med unntakene som siden «Importere og eksportere apper» går gjennom). Denne siden går gjennom alle seksjonene, med særlig blikk på de seks som brukes mest: tema, oversettelser, autentisering, kontoer, tillatelser og rotasjon av oppføringer.
Åpne innstillingene
- Åpne appen i sidefeltet.
- Øverst i applinjen, klikk på tannhjulknappen Appinnstillinger. Navigasjonstreet viker for innstillingstreet, organisert i grupper.
- Klikk på en seksjon: den åpnes som en fane i arbeidsområdet — som en skjerm eller et skript — med navnet på appen i toppteksten, den aktive seksjonen i et merke ved siden av, og knappene til seksjonen (for eksempel Lagre) alltid øverst til høyre.

Det komplette kartet:
| Gruppe | Seksjon | Hva som defineres |
|---|---|---|
| Applikasjon | Generelt | Identifikasjon, publisering, eksport og sletting — se de to første sidene i dette kapitlet. |
| Applikasjon | Autentisering | Hvordan brukerne logger inn i appen, offentlig registrering og gjenoppretting. |
| Applikasjon | Varsler | Varselkanalene til appen: i appen og e-post (egen SMTP). |
| Applikasjon | Lagring | Hvor filene som brukerne av appen laster opp havner (disken til appen, S3, SFTP, nettverksdeling). |
| Brukere | Brukere av appen | Kontoene til de som bruker den bygde appen. |
| Brukere | Tillatelser | Roller og regler: data, skjermer, menyer og handlinger. |
| Utseende | Tema | Farger, form og typografi i den bygde appen, med forhåndsvisning. |
| Lokalisering | Oversettelser | Språkene i appen og de oversatte setningene, i en matrise. |
| Data | Rotasjon av oppføringer | Hvor mange dager hver type oppføring beholdes før den slettes. |
Nota
Dette er innstillingene til appen — ikke å forveksle med Innstillinger for plattformen (i administrasjonssonen i sidefeltet), som styrer hele installasjonen: bakgrunnsprosesser, varslinger, økter og globale grenser.
Tema
Seksjonen Tema maler den bygde appen — den brukerne dine ser — uten å røre en eneste skjerm. Til venstre ligger fargegruppene; til høyre viser panelet Forhåndsvisning «Eksempel med de nåværende verdiene — oppdateres direkte»: hver farge du endrer dukker opp der i samme øyeblikk.

| Gruppe | Hva den maler |
|---|---|
| Basis | «Bakgrunn og tekst i appen, kanter og fokus.» |
| Flater | «Kort og popovers (menyer, nedtrekkslister, verktøytips).» |
| Farger | «Semantiske farger for komponentene og teksten oppå hver av dem» — primær, sekundær, destruktiv, aksent, dempet. |
| Navigasjon | «Navigasjonslinjene i appen (topp, sider, menyer).» Som standard følger de flatene; endre dem for å legge på din egen merkevare. |
Hver farge har en visuell velger og et heksadesimalt felt (#rrggbb) —
skriv eller velg, det er det samme. Nederst i listen definerer Form og
typografi resten:
- Hjørneradius — fra Uten avrunding (0) til Maksimum (1rem), i fem trinn.
- Plassering av meldingene — i hvilket hjørne meldingene (toasts) i appen vises.
- Skrift (sans) — skriftstacken til appen.
For å lagre, Lagre; for å gå tilbake til fargene fra start, Tilbakestill til standard (tilbakestiller i editoren — det blir først endelig når du lagrer). Det lagrede temaet gjelder umiddelbart i den bygde appen, og reiser med den i enhver pakke.
Oversettelser — språkene i appen
Seksjonen Oversettelser er en matrise: én rad per setning, én kolonne per språk. Det er her appen får språk, og her setningene fra skjermene oversettes uten å forlate ett eneste rutenett.

- Opprette en setning: skriv på den siste raden, som alltid står tom og venter («skriv for å opprette…»). Nøkkelen til setningen «(hentes fra setningen)» — det er selve teksten på basisspråket som identifiserer den på skjermene.
- Legge til et språk: klikk på + i overskriften, velg i «velg språk…» og bekreft med Legg til språk. Et nytt språk er en ny kolonne, som fødes tom.
- Bytte basisspråk eller slette et språk: i kolonnemenyen — Gjør til basisspråk og Slett dette språket («Oversettelsene på dette språket forsvinner med det.»).
- Slette en setning: i radmenyen, Slett setning — den forsvinner fra alle språkene når du lagrer.
- Finne det som mangler: søket «Søk på alle språk…» og filteret Ufullstendige viser bare setningene med tomme celler.
På skjermene brukes setningene via teksten: t("Lista de clientes") i en
TypeScript-hendelse gir tilbake oversettelsen på språket til den som
bruker appen. For verdier midt i setningen, skriv dem i krøllparenteser —
«{n} registos» gir «3 registos» — og plattformen varsler (gul celle) når
en oversettelse mister en krøllparentes som originalen har: på det språket
ville verdien ikke vises.
Dica
Å endre teksten i en allerede lagret setning er å endre nøkkelen dens — og plattformen bytter den også på skjermene som bruker den, og sier hvor mange den rørte. Ingenting blir stående og peke på en setning som ikke lenger finnes.
Til slutt, Lagre: «Oversettelsene er lagret og kompilert.»
Autentisering og registrering
Seksjonen Autentisering definerer hvordan man kommer inn i den bygde appen — ikke i plattformen. Det er tre blokker:

Autentiseringsmodus — grunnvalget:
| Modus | Hvordan det virker |
|---|---|
| Brukernavn og passord | «Brukerne av appen logger inn med legitimasjonen som administreres i fanen Brukere.» Alt bor i appen; det er moduset fra start. |
| OAuth / OpenID Connect | «Appen overlater påloggingen til en ekstern identitetsleverandør (OIDC-issuer).» Påloggingen blir organisasjonens egen. |
OAuth / OpenID Connect — feltene for leverandøren (aktive bare i det moduset): Issuer-URL og Client ID (påkrevd), Client secret («Lagres kryptert; vises aldri igjen.» — lar du det stå tomt, beholdes det som ligger der) og Scopes («Atskilt med mellomrom. Er feltet tomt, brukes standard-scopene til leverandøren.»).
Registrering og gjenoppretting — de offentlige systemskjermene i appen:
- Tillat offentlig registrering: på, «hvem som helst kan opprette en konto på skjermen /register. Er dette av, serveres ikke skjermen.»
- Rolle for nye registreringer: «Rollen som automatisk tildeles den som registrerer seg.» Velg en rolle fra listen i Tillatelser, eller Ingen rolle — men uten rolle kommer kontoen inn og ser verken data eller skjermer.
- Gjenoppretting av passord sender lenken via e-postkanalen definert under Varsler — kanalen må være aktiv og ha komplett SMTP, ellers blir det ingen gjenopprettingse-poster.
Lagre med Lagre («Autentiseringen er lagret.»).
Brukere av appen — kontoene
Seksjonen Brukere av appen administrerer kontoene til de som bruker appen. Advarselen øverst er gyllenregelen: «Disse brukerne tilhører den bygde appen — de logger inn i appen i runtime og har ingen tilgang overhodet til KEPLIN-plattformen.»

Listen viser hver konto med Bruker, Roller og Sist pålogget («har aldri logget inn» når det aldri har vært en pålogging), og den er laget for å svare på spørsmål:
- Søket «Søk på navn, brukernavn eller e-post…» og filtrene på rolle og status finner enhver konto.
- Den ravgule advarselen «… bruker(e) uten noen rolle — de ser verken data eller skjermer» er klikkbar og filtrerer straks fram de kontoene — det er årsak nummer én til at «appen er tom».
- Velg flere kontoer for å handle i bulk: Gi rolle, Fjern rolle, Aktiver, Deaktiver — å gi samme rolle til tolv personer er én operasjon, ikke tolv vinduer.
Opprette eller redigere en konto (knappen Ny bruker, eller Rediger i radmenyen — åpnes som side, aldri som modal):
| Felt | Merknader |
|---|---|
| Brukernavn | Påkrevd. «Bokstaver, tall, punktum, bindestrek, _ og @.» |
| Navn / E-post | Valgfrie; e-posten trengs for gjenoppretting av passord. |
| Passord | Ved opprettelse er det det første passordet — «brukeren kan endre det i appen.» Ved redigering, «fyll bare inn hvis du vil sette et nytt passord.» |
| Aktiv | Er den av, finnes kontoen, men «kommer ikke inn i appen.» |
| Roller | Krysses av per rolle. En ny konto kommer med rollene som «gis som standard» i Tillatelser ferdig avkrysset. |
Å slette en konto (radmenyen → Slett) kan ikke angres — brukeren kommer ikke lenger inn i appen.
Nota
Tillatelsene redigeres ikke på kontoen. De redigeres alltid i rollene, i seksjonen Tillatelser — et unntak lagt på én person er et unntak ingen finner igjen.
Tillatelser
Seksjonen Tillatelser definerer hva hver rolle kan gjøre i appen, langs fire akser: data, skjermer, menyer og handlinger. «Tillatelsene summeres: den som har to roller, får det beste fra begge.»

Listen over Roller viser hver av dem med antall brukere og regler, og merkene «full tilgang» og «standard». Ny rolle oppretter en og åpner straks siden dens, med fem faner:
Generelt — Navn, Beskrivelse og to brytere:
- Full tilgang: «Alt, uten unntak — og det forblir riktig når appen vokser.» Det er administratorrollen i appen; med den på gjelder ikke de andre fanene engang.
- Gis som standard: «Tildeles den som registrerer seg eller opprettes på nytt.»
Data — én rad per tabell-API, med fire avkrysninger — Vis, Opprett, Endre, Slett — og et Omfang som sier hvilke poster man når:
| Omfang | Betydning |
|---|---|
| Alle poster | Ingen radbegrensning. |
| Bare mine | Bare postene der «Feltet som sier hvem posten tilhører» er den påloggede brukeren. |
| Med betingelse… | Bare postene som oppfyller et filter du setter sammen — med faste verdier eller verdier fra økten. |
«Omfanget håndheves på serveren, ved all lesing og skriving — på skjermene, i koden, i rapportene og i arbeidsflytene. Uten en eneste regel ser denne rollen ingenting fra denne API-en.»
Skjermer — for hver skjerm og hver enhet (Web, Nettbrett, Mobil), et nivå: Skjult («vises ikke i menyene, og en rute som skrives inn manuelt blir avvist»), Vis (kun lesing) («åpnes kun for lesing — felt og knapper som skriver er deaktivert») eller Rediger. Snarveiene «vis alle» / «skjul alle» fyller en hel kolonne. «Vis» er en visuell hjelp; det som virkelig stopper skriving er tillatelsene under Data, på serveren.
Menyer — i motsetning til skjermene er en meny synlig som standard: døren er skjermen, og den er allerede lukket. Her skjules resten — en hel gruppe, varselbjellen — per enhet. Fjerner du haken på en gruppe, følger barna med.
Handlinger — verbene som bare finnes i denne appen: godkjenne, lukke,
eksportere. De deklareres i panelet Handlinger i rollelisten (en
Nøkkel som aprovar-despesa og et Navn, knappen Ny handling),
og hver rolle krysser av dem den gir. På skjermene har enhver widget
kategorien «Tilgang» for å kreve en handling; i TypeScript-kode spør du
keplin.session.can("aprovar-despesa").
Alt lagres på én gang med Lagre («Tillatelsene er lagret.»). Å slette en rolle varsler hvor mange brukere som mister den — «den som blir stående uten rolle ser ikke lenger data.»
Rotasjon av oppføringer
En app med trafikk skriver historikk uten stans — kall, kjøringer, klikk. Seksjonen Rotasjon av oppføringer bestemmer «hvor mange dager hver type oppføring beholdes før den slettes. Null dager betyr at den beholdes for alltid.»

Det er et rutenett med én rad per type Oppføring og fristen under Behold (feltet viser «Beholdes for alltid» når det står på null):
| Oppføring | Hva det er | Fra start |
|---|---|---|
| Kall til API-ene | «Én rad per GraphQL-forespørsel. Det er dette som vokser raskest i en app med trafikk.» | Beholdes for alltid |
| Kjøringer av skript | «Historikken bak knappen «Kjøringer» i skripteditoren.» | Beholdes for alltid |
| Feil i appene | «Forekomstene bak problemene som Radar viser. Å slette dem får ikke problemet til å forsvinne, bare historikken til det.» | Beholdes for alltid |
| Navigasjon og klikk | «Stort volum og kort verdi: det er til å undersøke det som nettopp skjedde, ikke til historikk.» | 2 dager |
| Tidsplaner | «De planlagte tidspunktene og det som ble stående ugjort. Det som feilet, beholdes dobbelt så lenge.» | 30 dager |
| Instanser av arbeidsflyter | «Bare de som allerede er ferdige. Instanser som fortsatt kjører eller venter på noen, slettes aldri. De som feilet, beholdes dobbelt så lenge.» | Beholdes for alltid |
| Revisjon | «Hvem som gjorde hva. Den deles av alle appene, så den lengste fristen blant dem gjelder alltid.» | Beholdes for alltid |
Lagre setter politikken i verk («Rotasjonen er lagret.») og oppryddingen begynner å kjøre i bakgrunnen, hver dag.
Dica
I en produksjonsapp, sett reelle frister fra første dag — 30 til 90 dager for kallene til API-ene er et sunt utgangspunkt. «Beholdes for alltid» er strålende i utvikling og en diskregning i produksjon.
Grenser å ha i bakhodet
Grensene du støter på i innstillingene og bevegelsene i dette kapitlet:
| Hva | Grense |
|---|---|
| Navnet på appen | 2 til 120 tegn |
| Beskrivelsen av appen | Opptil 500 tegn |
| Brukernavnet til en bruker av appen | 2 til 120 tegn (bokstaver, tall, punktum, bindestrek, _ og @) |
| Passfrase for eksport | Minst 8 tegn |
| Importpakke | Maksimalt 200 MB |
| Rotasjon av oppføringer | 0 til 3650 dager per type (0 = beholdes for alltid) |
De globale grensene — varigheten av øktene og maksimal størrelse på opplastede filer — er ikke per app: de bor i plattformens Innstillinger, i panelet «Økter og grenser», og gjelder for hele installasjonen.