CI Pipeline / backend-test (pull_request) Successful in 4m20s
CI Pipeline / frontend-test (pull_request) Successful in 27s
CI Pipeline / frontend-build (pull_request) Failing after 29s
CI Pipeline / backend-lint (pull_request) Successful in 8s
CI Pipeline / quality-gate (push) Successful in 2s
CI Pipeline / backend-test (push) Successful in 4m22s
CI Pipeline / frontend-test (push) Successful in 26s
CI Pipeline / frontend-build (push) Failing after 28s
CI Pipeline / backend-lint (push) Successful in 8s
CI Pipeline / quality-gate (pull_request) Successful in 1s
- Add public/robots.txt (allow all, disallow /admin and /login, reference sitemap) - Add public/sitemap.xml (5 public routes with change frequencies and priorities) - Fix heading hierarchy: h2 -> h1 on about, schedule, events, contact pages - Remove dead footer href="#" links: - Volunteer/Corporate Giving/Planned Giving -> routerLink to /contact with subject query param - Social media links -> conditional on config().social_* fields (hidden when empty) - Fix logo ARIA: add aria-hidden="true" to decorative logo in about page divider - Add social_facebook, social_twitter, social_instagram, social_youtube to: - StationConfig DB model + startup migration - StationConfigResponse and StationConfigUpdate schemas - Frontend StationConfig TypeScript interface - Fix events "Learn More" dead link -> routerLink to /contact
56 lines
1.3 KiB
TypeScript
56 lines
1.3 KiB
TypeScript
export interface StationConfig {
|
|
id: number;
|
|
key: string;
|
|
callsign: string;
|
|
name_primary: string;
|
|
name_secondary: string;
|
|
tagline: string;
|
|
frequency: string;
|
|
founded_year: number;
|
|
nonprofit_type: string;
|
|
ein: string;
|
|
logo_url: string;
|
|
hero_background_url: string;
|
|
hero_icon_url: string;
|
|
hero_divider_url: string;
|
|
address: string;
|
|
phone: string;
|
|
email: string;
|
|
website: string;
|
|
donation_url: string;
|
|
stream_url: string;
|
|
stream_metadata_url: string;
|
|
play_store_icon_url: string;
|
|
play_store_url: string;
|
|
app_store_embed_html: string;
|
|
// Social media
|
|
social_facebook: string;
|
|
social_twitter: string;
|
|
social_instagram: string;
|
|
social_youtube: string;
|
|
// Page content
|
|
hero_subtitle: string;
|
|
about_intro: string;
|
|
about_donation_text: string;
|
|
schedule_intro: string;
|
|
events_intro: string;
|
|
// Color theme
|
|
color_primary: string;
|
|
color_primary_light: string;
|
|
color_primary_dark: string;
|
|
color_primary_muted: string;
|
|
color_accent: string;
|
|
color_accent_light: string;
|
|
color_accent_dark: string;
|
|
color_accent_muted: string;
|
|
color_background: string;
|
|
color_text: string;
|
|
color_success: string;
|
|
color_danger: string;
|
|
color_info: string;
|
|
color_white: string;
|
|
color_light: string;
|
|
color_medium: string;
|
|
color_black: string;
|
|
}
|