Bluesky app fork with some witchin' additions 馃挮
at main 54 lines 1.3 kB view raw
1import {logger} from '#/ageAssurance/logger' 2 3export enum AgeAssuranceAccess { 4 Unknown = 'unknown', 5 None = 'none', 6 Safe = 'safe', 7 Full = 'full', 8} 9 10export enum AgeAssuranceStatus { 11 Unknown = 'unknown', 12 Pending = 'pending', 13 Assured = 'assured', 14 Blocked = 'blocked', 15} 16 17export type AgeAssuranceState = { 18 lastInitiatedAt?: string 19 status: AgeAssuranceStatus 20 access: AgeAssuranceAccess 21 error?: 'config' // maybe other specific cases in the future 22} 23 24export function parseStatusFromString(raw: string) { 25 switch (raw) { 26 case 'unknown': 27 return AgeAssuranceStatus.Unknown 28 case 'pending': 29 return AgeAssuranceStatus.Pending 30 case 'assured': 31 return AgeAssuranceStatus.Assured 32 case 'blocked': 33 return AgeAssuranceStatus.Blocked 34 default: 35 logger.error(`parseStatusFromString: unknown status value: ${raw}`) 36 return AgeAssuranceStatus.Unknown 37 } 38} 39 40export function parseAccessFromString(raw: string) { 41 switch (raw) { 42 case 'unknown': 43 return AgeAssuranceAccess.Unknown 44 case 'none': 45 return AgeAssuranceAccess.None 46 case 'safe': 47 return AgeAssuranceAccess.Safe 48 case 'full': 49 return AgeAssuranceAccess.Full 50 default: 51 logger.error(`parseAccessFromString: unknown access value: ${raw}`) 52 return AgeAssuranceAccess.Full 53 } 54}