presentation/screens/org/org_screens library

Deferred-load barrel for the org admin shell (Plan 50+). Holds 25+ screens that are only reachable from /org/:orgId/... routes — so learners on personal accounts never download this chunk. Includes the only consumers of fl_chart in the app (analytics, member detail, compliance dashboard) and the OrgShellScaffold wrapper itself, so the scaffold also stays out of the entry chunk.

Classes

ApiKeysScreen
AssignmentDetailScreen
BadgesScreen
CertificateViewScreen
CertificationsScreen
ComplianceDashboardScreen
CurriculumAssignmentScreen
EditorialStatTile
Editorial stat tile per progress.html:18-21 and org.html:21-26. Hairline border, 14 px radius, label in mono uppercase, big italic Instrument Serif numeral, optional valueSuffix (e.g. %) at smaller size, optional trend line in mono with directional color.
GamificationSettingsScreen
LeaderboardScreen
LearningPathsScreen
MemberDetailScreen
MemberManagementScreen
NotificationCenterScreen
OrgAnalyticsScreen
OrgBillingScreen
Billing management for an organization.
OrgDashboardScreen
OrgDetailScaffold Screens & Widgets
Shared scaffold for /org/:orgId/<sub> detail screens that aren't part of the five shell destinations (Dashboard, Members, Assignments, Analytics, Settings). Renders an AppBar with the platform back button and, on narrow viewports, the same bottom NavigationBar as OrgShellScaffold so the user can escape to any of the main destinations in one tap.
OrgProgressReportScreen
OrgSettingsScreen
OrgShellScaffold Screens & Widgets
Responsive shell for admin/manager org mode. Mirrors the personal ScaffoldWithNavBar layout but routes to /org/:orgId/* destinations.
PathDetailScreen
PathProgressScreen
RoleProfilesScreen
SkillFrameworkScreen
SkillGapScreen
SsoSettingsScreen
TeamDetailScreen
TeamManagementScreen
WebhooksScreen

Enums

TrendDirection

Constants

orgNavDestinations → const List<({IconData icon, String label})>
Nav destinations of the org admin shell. Label + icon mirror the personal shell's navDestinations; 5 entries for Dashboard, Members, Assignments, Analytics, and Org Settings. Shared with OrgDetailScaffold so detail pages render an identical bottom-nav / rail.

Functions

calculateOrgSelectedIndex(BuildContext context, String? orgId) int?
Returns the selected index for the org bottom-nav / rail, or null when the current route is a detail screen (/org/:orgId/notifications, /org/:orgId/teams, etc.) that doesn't correspond to any of the five shell destinations. Callers that need a non-null value (e.g. the main shell) should fall back to 0 (Dashboard).
extractOrgId(BuildContext context) String?
Pulls :orgId out of the current route. Returns null on /org (the redirect route that resolves to /org/:lastActiveOrgId).
onOrgNavTapped(int index, BuildContext context, String? orgId) → void
Routes to the requested top-level org destination. Index must be 0..4.