{{ 'XP.Membership.CurrentPlan' | translate: { Default: 'Current plan' } }}
{{ overview()?.plan?.name || '-' }}
{{ 'XP.Membership.Last30Days' | translate: { Default: 'Last 30 days' } }}
{{ 'XP.Membership.RemainingPoints' | translate: { Default: 'Remaining points' } }}
@if (overview()?.pointsRemaining === null) { {{ 'XP.Membership.Unlimited' | translate: { Default: 'Unlimited' } }} } @else { {{ overview()?.pointsRemaining | number: '1.0-2' }} }
{{ 'XP.Membership.UsedPoints' | translate: { Default: 'Used points' } }}
{{ overview()?.pointsUsed | number: '1.0-2' }}
{{ 'XP.Membership.PersonalPoints' | translate: { Default: 'Personal points' } }}
{{ overview()?.personalPointsBalance | number: '1.0-2' }}
{{ 'XP.Membership.PointUsage' | translate: { Default: 'Point usage' } }} @if (isUnlimited()) { {{ 'XP.Membership.Unlimited' | translate: { Default: 'Unlimited' } }} } @else { {{ usedPercent() | number }}% }
{{ 'XP.Membership.TotalPoints' | translate: { Default: 'Total points' } }}
{{ totalPoints() | number: '1.0-2' }}
{{ 'XP.Membership.ActiveDays' | translate: { Default: 'Active days' } }}
{{ overview()?.activeDays | number }}
{{ 'XP.Membership.PeakDailyPoints' | translate: { Default: 'Peak daily points' } }}
{{ peakDailyPoints() | number: '1.0-2' }}
{{ 'XP.Membership.MembershipDetails' | translate: { Default: 'Membership details' } }}
{{ 'XP.Membership.MembershipDetailsHint' | translate: { Default: 'Current benefits and periods that will take effect later.' } }}
@if (scheduledPeriods().length) { {{ 'XP.Membership.UpcomingPeriodCount' | translate: { count: scheduledPeriods().length, Default: scheduledPeriods().length + ' upcoming' } }} }
{{ 'XP.Membership.CurrentBenefits' | translate: { Default: 'Current benefits' } }}
{{ overview()?.plan?.name || '-' }}
@if (overview()?.plan?.description) {
{{ overview()?.plan?.description }}
}
{{ 'XP.Membership.MemberStatuses.active' | translate: { Default: 'Active' } }}
{{ 'XP.Membership.EffectivePeriod' | translate: { Default: 'Effective period' } }}
{{ overview()?.currentPeriodStart | date: 'mediumDate' }} – {{ overview()?.currentPeriodEnd | date: 'mediumDate' }}
{{ 'XP.Membership.AllowedModels' | translate: { Default: 'Allowed models' } }}
@if (overview()?.plan?.allowedModels?.length) { {{ overview()?.plan?.allowedModels?.length | number }} } @else { {{ 'XP.Membership.AllModels' | translate: { Default: 'All models' } }} }
{{ 'XP.Membership.ModelMultipliers' | translate: { Default: 'Settlement amount multipliers' } }}
{{ overview()?.plan?.modelMultipliers?.length ?? 0 | number }}
{{ 'XP.Membership.RateLimits' | translate: { Default: 'Usage limits' } }}
{{ overview()?.plan?.rateLimits?.length ?? 0 | number }}
{{ 'XP.Membership.UpcomingPeriods' | translate: { Default: 'Upcoming periods' } }}
{{ 'XP.Membership.AccountUpcomingPeriodsHint' | translate: { Default: 'These benefits start automatically after the current period ends.' } }}
@for (period of scheduledPeriods(); track period.id) {
{{ period.planSnapshot.name }}
{{ period.periodStart | date: 'mediumDate' }} – {{ period.periodEnd | date: 'mediumDate' }}
@if (period.pointsGranted === null) { {{ 'XP.Membership.Unlimited' | translate: { Default: 'Unlimited' } }} } @else { {{ period.pointsGranted | number: '1.0-2' }} {{ 'XP.Membership.PointsShort' | translate: { Default: 'pts' } }} }
} @empty {
{{ 'XP.Membership.NoUpcomingPeriods' | translate: { Default: 'There are no upcoming membership periods.' } }}
}
{{ 'XP.Membership.PointActivity' | translate: { Default: 'Point activity' } }}
@for (week of heatmap().weeks; track week.key) {
@for (cell of week.cells; track $index) { @if (cell) {
} @else { } }
}
@for (week of heatmap().weeks; track week.key) {
{{ week.monthLabel }}
}
{{ 'XP.Membership.TopModels' | translate: { Default: 'Top models' } }}
@for (item of overview()?.topModels ?? []; track item.key) {
{{ item.label || item.key }}
{{ item.pointsUsed | number: '1.0-2' }} {{ 'XP.Membership.PointsShort' | translate: { Default: 'pts' } }}
} @empty {
{{ 'XP.Membership.NoRankingData' | translate: { Default: 'No ranking data yet.' } }}
}
{{ 'XP.Membership.TopXperts' | translate: { Default: 'Top Xperts' } }}
@for (item of overview()?.topXperts ?? []; track item.key) {
{{ item.label || item.key }}
{{ item.pointsUsed | number: '1.0-2' }} {{ 'XP.Membership.PointsShort' | translate: { Default: 'pts' } }}
} @empty {
{{ 'XP.Membership.NoRankingData' | translate: { Default: 'No ranking data yet.' } }}
}
{{ 'XP.Membership.TopThreads' | translate: { Default: 'Top threads' } }}
@for (item of topThreads(); track item.key) {
{{ item.label || item.key }}
{{ item.pointsUsed | number: '1.0-2' }} {{ 'XP.Membership.PointsShort' | translate: { Default: 'pts' } }}
} @empty {
{{ 'XP.Membership.NoRankingData' | translate: { Default: 'No ranking data yet.' } }}
}