2 lines
36 KiB
JavaScript
2 lines
36 KiB
JavaScript
import{a as ut,b as Mt}from"./chunk-TDFJQLRV.js";import{a as h}from"./chunk-IRVPX2IZ.js";import"./chunk-N73CTY2C.js";import{a as gt}from"./chunk-RDQGS2XZ.js";import{d as _t}from"./chunk-37GOEORY.js";import{c as pt,g as Ct}from"./chunk-YWCH6MM5.js";import"./chunk-VX6WCCL3.js";import{a as nt,b as it,c as at,d as ot,e as rt,g as ct}from"./chunk-7YTCZJV6.js";import"./chunk-66PBOFKL.js";import"./chunk-NYYADJNO.js";import{a as tt,b as et}from"./chunk-CTXOKINH.js";import{a as mt}from"./chunk-B4CGVF35.js";import{b as dt}from"./chunk-NIBVQDYD.js";import"./chunk-LLJSP5R2.js";import"./chunk-HMKN2VB2.js";import"./chunk-M5XZ5N2D.js";import{b as st,g as lt}from"./chunk-TAS7XC6E.js";import"./chunk-3GOV5KJM.js";import"./chunk-EGL4ZKWQ.js";import{a as Q,b as F,c as V,e as B,f as j,i as H}from"./chunk-6NRCTHHS.js";import{a as X,b as Z}from"./chunk-N6VRXIQE.js";import"./chunk-GWD5A44H.js";import"./chunk-52JZ5I3Y.js";import{Aa as K,C as N,g as U,j as T,u as L,ua as W,w as $,wa as G,x as R,ya as J,za as Y}from"./chunk-COFYR5MX.js";import{Db as g,Eb as _,Ec as f,Hb as z,Ib as b,Jb as q,Kb as e,Lb as t,Mb as S,Tb as y,Xb as u,Za as r,Zb as d,da as O,ia as x,ja as v,kc as M,lc as n,mc as s,nc as p,ob as E,oc as D,pc as k,ta as w,wc as I,xc as A}from"./chunk-2MUIW2M6.js";var Ot=(c,i)=>i.id;function xt(c,i){c&1&&(e(0,"div",12),S(1,"mat-spinner",15),e(2,"p",16),n(3,"Loading user details..."),t()())}function vt(c,i){if(c&1){let o=y();e(0,"mat-card",13)(1,"mat-card-content")(2,"div",17)(3,"mat-icon",18),n(4,"error"),t(),e(5,"h2"),n(6,"Error Loading User"),t(),e(7,"p"),n(8),t(),e(9,"button",19),u("click",function(){x(o);let l=d();return v(l.goBack())}),e(10,"mat-icon"),n(11,"arrow_back"),t(),n(12," Back to Users "),t()()()()}if(c&2){let o=d();r(8),s(o.error())}}function ft(c,i){if(c&1&&(e(0,"div",28)(1,"mat-icon"),n(2,"how_to_reg"),t(),e(3,"div",29)(4,"span",30),n(5,"Registration Method"),t(),e(6,"span",31),n(7),t()()()),c&2){let o=d(2);r(7),s(o.user().metadata.registrationMethod==="guest_conversion"?"Guest Conversion":"Direct")}}function ht(c,i){if(c&1&&(e(0,"div",45)(1,"span",46),n(2,"Favorite Category:"),t(),e(3,"span",47),n(4),t()()),c&2){let o=d(2);r(4),D(" ",o.user().statistics.favoriteCategory.name," (",o.user().statistics.favoriteCategory.quizCount," quizzes) ")}}function yt(c,i){if(c&1){let o=y();e(0,"div",53)(1,"div",54)(2,"div",55)(3,"mat-icon"),n(4,"category"),t(),e(5,"span"),n(6),t()(),e(7,"div",56),n(8),t()(),e(9,"div",57)(10,"div",58)(11,"mat-icon"),n(12,"grade"),t(),e(13,"span",59),n(14,"Score:"),t(),e(15,"span"),n(16),t()(),e(17,"div",58)(18,"mat-icon"),n(19,"timer"),t(),e(20,"span",59),n(21,"Time:"),t(),e(22,"span",60),n(23),t()(),e(24,"button",61),u("click",function(){let l=x(o).$implicit,C=d(3);return v(C.viewQuizDetails(l.id))}),e(25,"mat-icon"),n(26,"visibility"),t()()()()}if(c&2){let o=i.$implicit,a=d(3);r(6),s(o.categoryName),r(2),s(a.formatDateTime(o.completedAt)),r(3),M("score-icon-"+a.getScoreColor(o.percentage)),r(4),M("quiz-stat-value-"+a.getScoreColor(o.percentage)),r(),k(" ",o.score,"/",o.totalQuestions," (",o.percentage.toFixed(1),"%) "),r(7),s(a.formatDuration(o.timeTaken))}}function zt(c,i){if(c&1&&(e(0,"div",49),z(1,yt,27,10,"div",53,Ot),t()),c&2){let o=d(2);r(),b(o.user().quizHistory)}}function bt(c,i){c&1&&(e(0,"div",50)(1,"mat-icon"),n(2,"quiz"),t(),e(3,"p"),n(4,"No quiz history available"),t()())}function qt(c,i){if(c&1&&(e(0,"span",67)(1,"mat-icon"),n(2,"category"),t(),n(3),t()),c&2){let o=d(2).$implicit;r(3),p(" ",o.metadata.categoryName," ")}}function St(c,i){if(c&1&&(e(0,"span",67)(1,"mat-icon"),n(2,"grade"),t(),n(3),t()),c&2){let o=d(2).$implicit;r(3),p(" ",o.metadata.score,"% ")}}function wt(c,i){if(c&1&&(e(0,"div",66),g(1,qt,4,1,"span",67),g(2,St,4,1,"span",67),t()),c&2){let o=d().$implicit;r(),_(o.metadata.categoryName?1:-1),r(),_(o.metadata.score!==void 0?2:-1)}}function Et(c,i){if(c&1&&(e(0,"mat-list-item",62)(1,"mat-icon",63),n(2),t(),e(3,"div",64),n(4),t(),e(5,"div",65),n(6),t(),g(7,wt,3,2,"div",66),t(),S(8,"mat-divider")),c&2){let o=i.$implicit,a=d(3);r(),M("activity-icon-"+a.getActivityColor(o.type)),r(),p(" ",a.getActivityIcon(o.type)," "),r(2),s(o.description),r(2),s(a.formatRelativeTime(o.timestamp)),r(),_(o.metadata?7:-1)}}function Dt(c,i){if(c&1&&(e(0,"mat-list",52),z(1,Et,9,6,null,null,Ot),t()),c&2){let o=d(2);r(),b(o.user().activityTimeline)}}function kt(c,i){c&1&&(e(0,"div",50)(1,"mat-icon"),n(2,"timeline"),t(),e(3,"p"),n(4,"No activity recorded"),t()())}function It(c,i){if(c&1){let o=y();e(0,"div",14)(1,"mat-card",20)(2,"mat-card-header")(3,"div",21)(4,"div",22)(5,"mat-icon"),n(6,"account_circle"),t()(),e(7,"div",23)(8,"h2",24),n(9),t(),e(10,"p",25),n(11),t(),e(12,"div",26)(13,"mat-chip")(14,"mat-icon"),n(15),t(),n(16),I(17,"titlecase"),t(),e(18,"mat-chip")(19,"mat-icon"),n(20),t(),n(21),t()()()()(),e(22,"mat-card-content")(23,"div",27)(24,"div",28)(25,"mat-icon"),n(26,"event"),t(),e(27,"div",29)(28,"span",30),n(29,"Member Since"),t(),e(30,"span",31),n(31),t()()(),e(32,"div",28)(33,"mat-icon"),n(34,"schedule"),t(),e(35,"div",29)(36,"span",30),n(37,"Last Active"),t(),e(38,"span",31),n(39),t()()(),g(40,ft,8,1,"div",28),t()(),e(41,"mat-card-actions",32)(42,"button",19),u("click",function(){x(o);let l=d();return v(l.editUserRole())}),e(43,"mat-icon"),n(44,"edit"),t(),n(45," Edit Role "),t(),e(46,"button",33),u("click",function(){x(o);let l=d();return v(l.toggleUserStatus())}),e(47,"mat-icon"),n(48),t(),n(49),t()()(),e(50,"div",34)(51,"mat-card",35)(52,"mat-card-content")(53,"div",36)(54,"mat-icon"),n(55,"quiz"),t()(),e(56,"div",37)(57,"h3",38),n(58),t(),e(59,"p",39),n(60,"Total Quizzes"),t()()()(),e(61,"mat-card",35)(62,"mat-card-content")(63,"div",40)(64,"mat-icon"),n(65,"grade"),t()(),e(66,"div",37)(67,"h3",38),n(68),t(),e(69,"p",39),n(70,"Average Score"),t()()()(),e(71,"mat-card",35)(72,"mat-card-content")(73,"div",41)(74,"mat-icon"),n(75,"check_circle"),t()(),e(76,"div",37)(77,"h3",38),n(78),t(),e(79,"p",39),n(80,"Accuracy"),t()()()(),e(81,"mat-card",35)(82,"mat-card-content")(83,"div",42)(84,"mat-icon"),n(85,"local_fire_department"),t()(),e(86,"div",37)(87,"h3",38),n(88),t(),e(89,"p",39),n(90,"Current Streak"),t()()()(),e(91,"mat-card",35)(92,"mat-card-content")(93,"div",36)(94,"mat-icon"),n(95,"help_outline"),t()(),e(96,"div",37)(97,"h3",38),n(98),t(),e(99,"p",39),n(100,"Questions Answered"),t()()()(),e(101,"mat-card",35)(102,"mat-card-content")(103,"div",40)(104,"mat-icon"),n(105,"timer"),t()(),e(106,"div",37)(107,"h3",38),n(108),t(),e(109,"p",39),n(110,"Time Spent"),t()()()()(),e(111,"mat-card",43)(112,"mat-card-header")(113,"mat-card-title")(114,"mat-icon"),n(115,"analytics"),t(),n(116," Additional Statistics "),t()(),e(117,"mat-card-content")(118,"div",44)(119,"div",45)(120,"span",46),n(121,"Correct Answers:"),t(),e(122,"span",47),n(123),t()(),e(124,"div",45)(125,"span",46),n(126,"Longest Streak:"),t(),e(127,"span",47),n(128),t()(),g(129,ht,5,2,"div",45),e(130,"div",45)(131,"span",46),n(132,"Quizzes This Week:"),t(),e(133,"span",47),n(134),t()(),e(135,"div",45)(136,"span",46),n(137,"Quizzes This Month:"),t(),e(138,"span",47),n(139),t()()()()(),e(140,"mat-card",48)(141,"mat-card-header")(142,"mat-card-title")(143,"mat-icon"),n(144,"history"),t(),n(145," Quiz History "),t()(),e(146,"mat-card-content"),g(147,zt,3,0,"div",49)(148,bt,5,0,"div",50),t()(),e(149,"mat-card",51)(150,"mat-card-header")(151,"mat-card-title")(152,"mat-icon"),n(153,"timeline"),t(),n(154," Activity Timeline "),t()(),e(155,"mat-card-content"),g(156,Dt,3,0,"mat-list",52)(157,kt,5,0,"div",50),t()()()}if(c&2){let o,a=d();r(9),s(a.user().username),r(2),s(a.user().email),r(2),M("chip-"+a.getRoleColor(a.user().role)),r(2),s(a.user().role==="admin"?"admin_panel_settings":"person"),r(),p(" ",A(17,29,a.user().role)," "),r(2),M("chip-"+a.getStatusColor(a.user().isActive)),r(2),s(a.user().isActive?"check_circle":"cancel"),r(),p(" ",a.user().isActive?"Active":"Inactive"," "),r(10),s(a.memberSince()),r(8),s(a.lastActive()),r(),_((o=a.user().metadata)!=null&&o.registrationMethod?40:-1),r(6),q("color",a.user().isActive?"warn":"accent"),r(2),s(a.user().isActive?"block":"check_circle"),r(),p(" ",a.user().isActive?"Deactivate":"Activate"," "),r(9),s(a.formatNumber(a.user().statistics.totalQuizzes)),r(10),p("",a.user().statistics.averageScore.toFixed(1),"%"),r(10),p("",a.user().statistics.accuracy.toFixed(1),"%"),r(10),s(a.user().statistics.currentStreak),r(10),s(a.formatNumber(a.user().statistics.totalQuestionsAnswered)),r(10),s(a.formatDuration(a.user().statistics.totalTimeSpent)),r(15),s(a.formatNumber(a.user().statistics.correctAnswers)),r(5),p("",a.user().statistics.longestStreak," days"),r(),_(a.user().statistics.favoriteCategory?129:-1),r(5),s(a.user().statistics.recentActivity.quizzesThisWeek),r(5),s(a.user().statistics.recentActivity.quizzesThisMonth),r(8),_(a.hasQuizHistory()?147:148),r(9),_(a.hasActivity()?156:157)}}var Pt=class c{adminService=O(gt);router=O($);route=O(L);dialog=O(pt);Math=Math;user=this.adminService.selectedUserDetail;isLoading=this.adminService.isLoadingUserDetail;error=this.adminService.userDetailError;userId=w("");hasQuizHistory=f(()=>{let i=this.user();return i&&i.quizHistory.length>0});hasActivity=f(()=>{let i=this.user();return i&&i.activityTimeline.length>0});memberSince=f(()=>{let i=this.user();return i?this.formatDate(i.createdAt):""});lastActive=f(()=>{let i=this.user();return!i||!i.lastLoginAt?"Never":this.formatRelativeTime(i.lastLoginAt)});constructor(){h()(this.route.params)}ngOnInit(){this.route.params.pipe(h()).subscribe(i=>{let o=i.id;o?(this.userId.set(o),this.loadUserDetail(o)):this.router.navigate(["/admin/users"])})}loadUserDetail(i){this.adminService.getUserDetails(i).subscribe({error:()=>{setTimeout(()=>{this.router.navigate(["/admin/users"])},3e3)}})}goBack(){this.router.navigate(["/admin/users"])}refreshUser(){let i=this.userId();i&&this.loadUserDetail(i)}editUserRole(){let i=this.user();if(!i)return;this.dialog.open(ut,{width:"600px",maxWidth:"95vw",data:{user:i},disableClose:!1}).afterClosed().subscribe(a=>{a&&a!==i.role&&this.adminService.updateUserRole(i.id,a).subscribe({next:()=>{this.refreshUser()},error:()=>{}})})}toggleUserStatus(){let i=this.user();if(!i)return;let o=i.isActive?"deactivate":"activate",a={user:{id:i.id,username:i.username,email:i.email,role:i.role,isActive:i.isActive,createdAt:i.createdAt},action:o};this.dialog.open(Mt,{width:"500px",data:a,disableClose:!1,autoFocus:!0}).afterClosed().pipe(h()).subscribe(C=>{if(!C)return;(o==="activate"?this.adminService.activateUser(i.id):this.adminService.deactivateUser(i.id)).pipe(h()).subscribe({next:()=>{this.loadUserDetail(i.id)},error:m=>{console.error("Error updating user status:",m)}})})}viewQuizDetails(i){this.router.navigate(["/quiz",i,"review"])}getActivityIcon(i){return{login:"login",quiz_start:"play_arrow",quiz_complete:"check_circle",bookmark:"bookmark",profile_update:"edit",role_change:"admin_panel_settings"}[i]||"info"}getActivityColor(i){return{login:"primary",quiz_start:"accent",quiz_complete:"success",bookmark:"warn",profile_update:"primary",role_change:"warn"}[i]||"default"}getRoleColor(i){return i==="admin"?"warn":"primary"}getStatusColor(i){return i?"success":"default"}formatDate(i){return new Date(i).toLocaleDateString("en-US",{year:"numeric",month:"long",day:"numeric"})}formatDateTime(i){return new Date(i).toLocaleString("en-US",{year:"numeric",month:"short",day:"numeric",hour:"2-digit",minute:"2-digit"})}formatRelativeTime(i){let o=new Date(i),l=new Date().getTime()-o.getTime(),C=Math.floor(l/6e4),P=Math.floor(C/60),m=Math.floor(P/24);return C<1?"Just now":C<60?`${C} minute${C>1?"s":""} ago`:P<24?`${P} hour${P>1?"s":""} ago`:m<7?`${m} day${m>1?"s":""} ago`:m<30?`${Math.floor(m/7)} week${Math.floor(m/7)>1?"s":""} ago`:m<365?`${Math.floor(m/30)} month${Math.floor(m/30)>1?"s":""} ago`:`${Math.floor(m/365)} year${Math.floor(m/365)>1?"s":""} ago`}formatDuration(i){let o=Math.floor(i/3600),a=Math.floor(i%3600/60),l=i%60;return o>0?`${o}h ${a}m`:a>0?`${a}m ${l}s`:`${l}s`}formatNumber(i){return i.toLocaleString("en-US")}getScoreColor(i){return i>=80?"success":i>=60?"primary":i>=40?"accent":"warn"}static \u0275fac=function(o){return new(o||c)};static \u0275cmp=E({type:c,selectors:[["app-admin-user-detail"]],decls:26,vars:5,consts:[[1,"admin-user-detail-container"],[1,"page-header"],[1,"header-left"],["mat-icon-button","","aria-label","Go back to users list",1,"back-button",3,"click"],[1,"page-title"],[1,"header-actions"],["mat-icon-button","","matTooltip","Refresh user details","aria-label","Refresh",3,"click","disabled"],["aria-label","Breadcrumb navigation",1,"breadcrumb"],["routerLink","/admin",1,"breadcrumb-link"],[1,"breadcrumb-separator"],["routerLink","/admin/users",1,"breadcrumb-link"],[1,"breadcrumb-current"],[1,"loading-container"],[1,"error-card"],[1,"detail-content"],["diameter","48"],[1,"loading-text"],[1,"error-content"],[1,"error-icon"],["mat-raised-button","","color","primary",3,"click"],[1,"profile-card"],[1,"profile-header"],[1,"user-avatar"],[1,"user-info"],[1,"user-name"],[1,"user-email"],[1,"user-badges"],[1,"profile-details"],[1,"detail-row"],[1,"detail-info"],[1,"detail-label"],[1,"detail-value"],[1,"profile-actions"],["mat-raised-button","",3,"click","color"],[1,"stats-grid"],[1,"stat-card"],[1,"stat-icon","primary"],[1,"stat-info"],[1,"stat-value"],[1,"stat-label"],[1,"stat-icon","success"],[1,"stat-icon","accent"],[1,"stat-icon","warn"],[1,"additional-stats-card"],[1,"stats-details"],[1,"stat-detail-row"],[1,"stat-detail-label"],[1,"stat-detail-value"],[1,"quiz-history-card"],[1,"quiz-history-list"],[1,"empty-state"],[1,"activity-timeline-card"],[1,"activity-list"],[1,"quiz-history-item"],[1,"quiz-history-header"],[1,"quiz-category"],[1,"quiz-date"],[1,"quiz-history-stats"],[1,"quiz-stat"],[1,"quiz-stat-label"],[1,"quiz-stat-value"],["mat-icon-button","","matTooltip","View quiz details",1,"quiz-action-btn",3,"click"],[1,"activity-item"],["matListItemIcon",""],["matListItemTitle","",1,"activity-description"],["matListItemLine","",1,"activity-time"],["matListItemLine","",1,"activity-metadata"],[1,"metadata-item"]],template:function(o,a){if(o&1&&(e(0,"div",0)(1,"div",1)(2,"div",2)(3,"button",3),u("click",function(){return a.goBack()}),e(4,"mat-icon"),n(5,"arrow_back"),t()(),e(6,"h1",4),n(7,"User Details"),t()(),e(8,"div",5)(9,"button",6),u("click",function(){return a.refreshUser()}),e(10,"mat-icon"),n(11,"refresh"),t()()()(),e(12,"nav",7)(13,"a",8),n(14,"Admin"),t(),e(15,"mat-icon",9),n(16,"chevron_right"),t(),e(17,"a",10),n(18,"Users"),t(),e(19,"mat-icon",9),n(20,"chevron_right"),t(),e(21,"span",11),n(22),t()(),g(23,xt,4,0,"div",12),g(24,vt,13,1,"mat-card",13),g(25,It,158,31,"div",14),t()),o&2){let l;r(9),q("disabled",a.isLoading()),r(13),s(((l=a.user())==null?null:l.username)||"User Detail"),r(),_(a.isLoading()?23:-1),r(),_(a.error()&&!a.isLoading()?24:-1),r(),_(a.user()&&!a.isLoading()?25:-1)}},dependencies:[T,N,R,H,Q,B,V,j,F,J,G,W,K,Y,lt,st,Z,X,et,tt,ct,ot,rt,at,it,nt,mt,dt,_t,Ct,U],styles:[".admin-user-detail-container[_ngcontent-%COMP%]{padding:24px;max-width:1400px;margin:0 auto}.page-header[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.page-header[_ngcontent-%COMP%] .header-left[_ngcontent-%COMP%]{display:flex;align-items:center;gap:12px}.page-header[_ngcontent-%COMP%] .back-button[_ngcontent-%COMP%]{color:var(--primary-color)}.page-header[_ngcontent-%COMP%] .page-title[_ngcontent-%COMP%]{margin:0;font-size:28px;font-weight:600;color:var(--text-primary)}.page-header[_ngcontent-%COMP%] .header-actions[_ngcontent-%COMP%]{display:flex;gap:8px}.breadcrumb[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;margin-bottom:24px;font-size:14px}.breadcrumb[_ngcontent-%COMP%] .breadcrumb-link[_ngcontent-%COMP%]{color:var(--primary-color);text-decoration:none;transition:opacity .2s}.breadcrumb[_ngcontent-%COMP%] .breadcrumb-link[_ngcontent-%COMP%]:hover{opacity:.8;text-decoration:underline}.breadcrumb[_ngcontent-%COMP%] .breadcrumb-separator[_ngcontent-%COMP%]{font-size:18px;color:var(--text-secondary)}.breadcrumb[_ngcontent-%COMP%] .breadcrumb-current[_ngcontent-%COMP%]{color:var(--text-primary);font-weight:500}.loading-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:64px 24px;gap:16px}.loading-container[_ngcontent-%COMP%] .loading-text[_ngcontent-%COMP%]{color:var(--text-secondary);font-size:16px}.error-card[_ngcontent-%COMP%]{margin-top:24px}.error-card[_ngcontent-%COMP%] .error-content[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;padding:32px;text-align:center}.error-card[_ngcontent-%COMP%] .error-content[_ngcontent-%COMP%] .error-icon[_ngcontent-%COMP%]{font-size:64px;width:64px;height:64px;color:var(--error-color);margin-bottom:16px}.error-card[_ngcontent-%COMP%] .error-content[_ngcontent-%COMP%] h2[_ngcontent-%COMP%]{margin:0 0 8px;color:var(--text-primary)}.error-card[_ngcontent-%COMP%] .error-content[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{margin:0 0 24px;color:var(--text-secondary)}.error-card[_ngcontent-%COMP%] .error-content[_ngcontent-%COMP%] button[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{margin-right:8px}.detail-content[_ngcontent-%COMP%]{display:grid;gap:24px}.profile-card[_ngcontent-%COMP%] .profile-header[_ngcontent-%COMP%]{display:flex;align-items:center;gap:24px;width:100%}.profile-card[_ngcontent-%COMP%] .profile-header[_ngcontent-%COMP%] .user-avatar[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:80px;width:80px;height:80px;color:var(--primary-color)}.profile-card[_ngcontent-%COMP%] .profile-header[_ngcontent-%COMP%] .user-info[_ngcontent-%COMP%]{flex:1}.profile-card[_ngcontent-%COMP%] .profile-header[_ngcontent-%COMP%] .user-info[_ngcontent-%COMP%] .user-name[_ngcontent-%COMP%]{margin:0 0 4px;font-size:28px;font-weight:600;color:var(--text-primary)}.profile-card[_ngcontent-%COMP%] .profile-header[_ngcontent-%COMP%] .user-info[_ngcontent-%COMP%] .user-email[_ngcontent-%COMP%]{margin:0 0 12px;font-size:16px;color:var(--text-secondary)}.profile-card[_ngcontent-%COMP%] .profile-header[_ngcontent-%COMP%] .user-info[_ngcontent-%COMP%] .user-badges[_ngcontent-%COMP%]{display:flex;gap:8px;flex-wrap:wrap}.profile-card[_ngcontent-%COMP%] .profile-header[_ngcontent-%COMP%] .user-info[_ngcontent-%COMP%] .user-badges[_ngcontent-%COMP%] mat-chip[_ngcontent-%COMP%]{display:inline-flex;align-items:center;gap:4px}.profile-card[_ngcontent-%COMP%] .profile-header[_ngcontent-%COMP%] .user-info[_ngcontent-%COMP%] .user-badges[_ngcontent-%COMP%] mat-chip[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:18px;width:18px;height:18px}.profile-card[_ngcontent-%COMP%] .profile-header[_ngcontent-%COMP%] .user-info[_ngcontent-%COMP%] .user-badges[_ngcontent-%COMP%] mat-chip.chip-primary[_ngcontent-%COMP%]{background-color:var(--primary-light);color:var(--primary-color)}.profile-card[_ngcontent-%COMP%] .profile-header[_ngcontent-%COMP%] .user-info[_ngcontent-%COMP%] .user-badges[_ngcontent-%COMP%] mat-chip.chip-warn[_ngcontent-%COMP%]{background-color:var(--warn-light);color:var(--warn-color)}.profile-card[_ngcontent-%COMP%] .profile-header[_ngcontent-%COMP%] .user-info[_ngcontent-%COMP%] .user-badges[_ngcontent-%COMP%] mat-chip.chip-success[_ngcontent-%COMP%]{background-color:var(--success-light);color:var(--success-color)}.profile-card[_ngcontent-%COMP%] .profile-header[_ngcontent-%COMP%] .user-info[_ngcontent-%COMP%] .user-badges[_ngcontent-%COMP%] mat-chip.chip-default[_ngcontent-%COMP%]{background-color:var(--bg-secondary);color:var(--text-secondary)}.profile-card[_ngcontent-%COMP%] .profile-details[_ngcontent-%COMP%]{margin-top:24px;display:flex;flex-direction:column;gap:16px}.profile-card[_ngcontent-%COMP%] .profile-details[_ngcontent-%COMP%] .detail-row[_ngcontent-%COMP%]{display:flex;align-items:center;gap:12px}.profile-card[_ngcontent-%COMP%] .profile-details[_ngcontent-%COMP%] .detail-row[_ngcontent-%COMP%] > mat-icon[_ngcontent-%COMP%]{color:var(--text-secondary)}.profile-card[_ngcontent-%COMP%] .profile-details[_ngcontent-%COMP%] .detail-row[_ngcontent-%COMP%] .detail-info[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:2px}.profile-card[_ngcontent-%COMP%] .profile-details[_ngcontent-%COMP%] .detail-row[_ngcontent-%COMP%] .detail-info[_ngcontent-%COMP%] .detail-label[_ngcontent-%COMP%]{font-size:12px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.profile-card[_ngcontent-%COMP%] .profile-details[_ngcontent-%COMP%] .detail-row[_ngcontent-%COMP%] .detail-info[_ngcontent-%COMP%] .detail-value[_ngcontent-%COMP%]{font-size:16px;color:var(--text-primary);font-weight:500}.profile-card[_ngcontent-%COMP%] .profile-actions[_ngcontent-%COMP%]{display:flex;gap:12px;padding:16px;border-top:1px solid var(--divider-color)}.profile-card[_ngcontent-%COMP%] .profile-actions[_ngcontent-%COMP%] button[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{margin-right:8px}.stats-grid[_ngcontent-%COMP%]{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}.stats-grid[_ngcontent-%COMP%] .stat-card[_ngcontent-%COMP%] mat-card-content[_ngcontent-%COMP%]{display:flex;align-items:center;gap:16px;padding:24px}.stats-grid[_ngcontent-%COMP%] .stat-card[_ngcontent-%COMP%] mat-card-content[_ngcontent-%COMP%] .stat-icon[_ngcontent-%COMP%]{width:56px;height:56px;display:flex;align-items:center;justify-content:center;border-radius:12px}.stats-grid[_ngcontent-%COMP%] .stat-card[_ngcontent-%COMP%] mat-card-content[_ngcontent-%COMP%] .stat-icon[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:32px;width:32px;height:32px;color:#fff}.stats-grid[_ngcontent-%COMP%] .stat-card[_ngcontent-%COMP%] mat-card-content[_ngcontent-%COMP%] .stat-icon.primary[_ngcontent-%COMP%]{background:linear-gradient(135deg,var(--primary-color),var(--primary-dark))}.stats-grid[_ngcontent-%COMP%] .stat-card[_ngcontent-%COMP%] mat-card-content[_ngcontent-%COMP%] .stat-icon.success[_ngcontent-%COMP%]{background:linear-gradient(135deg,var(--success-color),var(--success-dark))}.stats-grid[_ngcontent-%COMP%] .stat-card[_ngcontent-%COMP%] mat-card-content[_ngcontent-%COMP%] .stat-icon.accent[_ngcontent-%COMP%]{background:linear-gradient(135deg,var(--accent-color),var(--accent-dark))}.stats-grid[_ngcontent-%COMP%] .stat-card[_ngcontent-%COMP%] mat-card-content[_ngcontent-%COMP%] .stat-icon.warn[_ngcontent-%COMP%]{background:linear-gradient(135deg,var(--warn-color),var(--warn-dark))}.stats-grid[_ngcontent-%COMP%] .stat-card[_ngcontent-%COMP%] mat-card-content[_ngcontent-%COMP%] .stat-info[_ngcontent-%COMP%]{flex:1}.stats-grid[_ngcontent-%COMP%] .stat-card[_ngcontent-%COMP%] mat-card-content[_ngcontent-%COMP%] .stat-info[_ngcontent-%COMP%] .stat-value[_ngcontent-%COMP%]{margin:0 0 4px;font-size:28px;font-weight:700;color:var(--text-primary)}.stats-grid[_ngcontent-%COMP%] .stat-card[_ngcontent-%COMP%] mat-card-content[_ngcontent-%COMP%] .stat-info[_ngcontent-%COMP%] .stat-label[_ngcontent-%COMP%]{margin:0;font-size:14px;color:var(--text-secondary);font-weight:500}.additional-stats-card[_ngcontent-%COMP%] mat-card-header[_ngcontent-%COMP%] mat-card-title[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;font-size:20px;font-weight:600}.additional-stats-card[_ngcontent-%COMP%] mat-card-header[_ngcontent-%COMP%] mat-card-title[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{color:var(--primary-color)}.additional-stats-card[_ngcontent-%COMP%] .stats-details[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:12px}.additional-stats-card[_ngcontent-%COMP%] .stats-details[_ngcontent-%COMP%] .stat-detail-row[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background-color:var(--bg-secondary);border-radius:8px}.additional-stats-card[_ngcontent-%COMP%] .stats-details[_ngcontent-%COMP%] .stat-detail-row[_ngcontent-%COMP%] .stat-detail-label[_ngcontent-%COMP%]{font-size:14px;color:var(--text-secondary);font-weight:500}.additional-stats-card[_ngcontent-%COMP%] .stats-details[_ngcontent-%COMP%] .stat-detail-row[_ngcontent-%COMP%] .stat-detail-value[_ngcontent-%COMP%]{font-size:16px;color:var(--text-primary);font-weight:600}.quiz-history-card[_ngcontent-%COMP%] mat-card-header[_ngcontent-%COMP%] mat-card-title[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;font-size:20px;font-weight:600}.quiz-history-card[_ngcontent-%COMP%] mat-card-header[_ngcontent-%COMP%] mat-card-title[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{color:var(--primary-color)}.quiz-history-card[_ngcontent-%COMP%] .quiz-history-list[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:16px}.quiz-history-card[_ngcontent-%COMP%] .quiz-history-list[_ngcontent-%COMP%] .quiz-history-item[_ngcontent-%COMP%]{padding:16px;border-radius:8px;background-color:var(--bg-secondary);border:1px solid var(--divider-color);transition:transform .2s,box-shadow .2s}.quiz-history-card[_ngcontent-%COMP%] .quiz-history-list[_ngcontent-%COMP%] .quiz-history-item[_ngcontent-%COMP%]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.quiz-history-card[_ngcontent-%COMP%] .quiz-history-list[_ngcontent-%COMP%] .quiz-history-item[_ngcontent-%COMP%] .quiz-history-header[_ngcontent-%COMP%]{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.quiz-history-card[_ngcontent-%COMP%] .quiz-history-list[_ngcontent-%COMP%] .quiz-history-item[_ngcontent-%COMP%] .quiz-history-header[_ngcontent-%COMP%] .quiz-category[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;font-weight:600;color:var(--text-primary)}.quiz-history-card[_ngcontent-%COMP%] .quiz-history-list[_ngcontent-%COMP%] .quiz-history-item[_ngcontent-%COMP%] .quiz-history-header[_ngcontent-%COMP%] .quiz-category[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{color:var(--primary-color)}.quiz-history-card[_ngcontent-%COMP%] .quiz-history-list[_ngcontent-%COMP%] .quiz-history-item[_ngcontent-%COMP%] .quiz-history-header[_ngcontent-%COMP%] .quiz-date[_ngcontent-%COMP%]{font-size:14px;color:var(--text-secondary)}.quiz-history-card[_ngcontent-%COMP%] .quiz-history-list[_ngcontent-%COMP%] .quiz-history-item[_ngcontent-%COMP%] .quiz-history-stats[_ngcontent-%COMP%]{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.quiz-history-card[_ngcontent-%COMP%] .quiz-history-list[_ngcontent-%COMP%] .quiz-history-item[_ngcontent-%COMP%] .quiz-history-stats[_ngcontent-%COMP%] .quiz-stat[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;font-size:14px}.quiz-history-card[_ngcontent-%COMP%] .quiz-history-list[_ngcontent-%COMP%] .quiz-history-item[_ngcontent-%COMP%] .quiz-history-stats[_ngcontent-%COMP%] .quiz-stat[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:20px;width:20px;height:20px;color:var(--text-secondary)}.quiz-history-card[_ngcontent-%COMP%] .quiz-history-list[_ngcontent-%COMP%] .quiz-history-item[_ngcontent-%COMP%] .quiz-history-stats[_ngcontent-%COMP%] .quiz-stat[_ngcontent-%COMP%] mat-icon.score-icon-success[_ngcontent-%COMP%]{color:var(--success-color)}.quiz-history-card[_ngcontent-%COMP%] .quiz-history-list[_ngcontent-%COMP%] .quiz-history-item[_ngcontent-%COMP%] .quiz-history-stats[_ngcontent-%COMP%] .quiz-stat[_ngcontent-%COMP%] mat-icon.score-icon-primary[_ngcontent-%COMP%]{color:var(--primary-color)}.quiz-history-card[_ngcontent-%COMP%] .quiz-history-list[_ngcontent-%COMP%] .quiz-history-item[_ngcontent-%COMP%] .quiz-history-stats[_ngcontent-%COMP%] .quiz-stat[_ngcontent-%COMP%] mat-icon.score-icon-accent[_ngcontent-%COMP%]{color:var(--accent-color)}.quiz-history-card[_ngcontent-%COMP%] .quiz-history-list[_ngcontent-%COMP%] .quiz-history-item[_ngcontent-%COMP%] .quiz-history-stats[_ngcontent-%COMP%] .quiz-stat[_ngcontent-%COMP%] mat-icon.score-icon-warn[_ngcontent-%COMP%]{color:var(--warn-color)}.quiz-history-card[_ngcontent-%COMP%] .quiz-history-list[_ngcontent-%COMP%] .quiz-history-item[_ngcontent-%COMP%] .quiz-history-stats[_ngcontent-%COMP%] .quiz-stat[_ngcontent-%COMP%] .quiz-stat-label[_ngcontent-%COMP%]{color:var(--text-secondary)}.quiz-history-card[_ngcontent-%COMP%] .quiz-history-list[_ngcontent-%COMP%] .quiz-history-item[_ngcontent-%COMP%] .quiz-history-stats[_ngcontent-%COMP%] .quiz-stat[_ngcontent-%COMP%] .quiz-stat-value[_ngcontent-%COMP%]{font-weight:600;color:var(--text-primary)}.quiz-history-card[_ngcontent-%COMP%] .quiz-history-list[_ngcontent-%COMP%] .quiz-history-item[_ngcontent-%COMP%] .quiz-history-stats[_ngcontent-%COMP%] .quiz-stat[_ngcontent-%COMP%] .quiz-stat-value.quiz-stat-value-success[_ngcontent-%COMP%]{color:var(--success-color)}.quiz-history-card[_ngcontent-%COMP%] .quiz-history-list[_ngcontent-%COMP%] .quiz-history-item[_ngcontent-%COMP%] .quiz-history-stats[_ngcontent-%COMP%] .quiz-stat[_ngcontent-%COMP%] .quiz-stat-value.quiz-stat-value-primary[_ngcontent-%COMP%]{color:var(--primary-color)}.quiz-history-card[_ngcontent-%COMP%] .quiz-history-list[_ngcontent-%COMP%] .quiz-history-item[_ngcontent-%COMP%] .quiz-history-stats[_ngcontent-%COMP%] .quiz-stat[_ngcontent-%COMP%] .quiz-stat-value.quiz-stat-value-accent[_ngcontent-%COMP%]{color:var(--accent-color)}.quiz-history-card[_ngcontent-%COMP%] .quiz-history-list[_ngcontent-%COMP%] .quiz-history-item[_ngcontent-%COMP%] .quiz-history-stats[_ngcontent-%COMP%] .quiz-stat[_ngcontent-%COMP%] .quiz-stat-value.quiz-stat-value-warn[_ngcontent-%COMP%]{color:var(--warn-color)}.quiz-history-card[_ngcontent-%COMP%] .quiz-history-list[_ngcontent-%COMP%] .quiz-history-item[_ngcontent-%COMP%] .quiz-history-stats[_ngcontent-%COMP%] .quiz-action-btn[_ngcontent-%COMP%]{margin-left:auto;color:var(--primary-color)}.activity-timeline-card[_ngcontent-%COMP%] mat-card-header[_ngcontent-%COMP%] mat-card-title[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;font-size:20px;font-weight:600}.activity-timeline-card[_ngcontent-%COMP%] mat-card-header[_ngcontent-%COMP%] mat-card-title[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{color:var(--primary-color)}.activity-timeline-card[_ngcontent-%COMP%] .activity-list[_ngcontent-%COMP%]{padding:0}.activity-timeline-card[_ngcontent-%COMP%] .activity-list[_ngcontent-%COMP%] .activity-item[_ngcontent-%COMP%]{padding:16px 0}.activity-timeline-card[_ngcontent-%COMP%] .activity-list[_ngcontent-%COMP%] .activity-item[_ngcontent-%COMP%] .activity-description[_ngcontent-%COMP%]{font-weight:500;color:var(--text-primary)}.activity-timeline-card[_ngcontent-%COMP%] .activity-list[_ngcontent-%COMP%] .activity-item[_ngcontent-%COMP%] .activity-time[_ngcontent-%COMP%]{font-size:14px;color:var(--text-secondary);margin-top:4px}.activity-timeline-card[_ngcontent-%COMP%] .activity-list[_ngcontent-%COMP%] .activity-item[_ngcontent-%COMP%] .activity-metadata[_ngcontent-%COMP%]{display:flex;gap:16px;margin-top:8px}.activity-timeline-card[_ngcontent-%COMP%] .activity-list[_ngcontent-%COMP%] .activity-item[_ngcontent-%COMP%] .activity-metadata[_ngcontent-%COMP%] .metadata-item[_ngcontent-%COMP%]{display:flex;align-items:center;gap:4px;font-size:12px;color:var(--text-secondary)}.activity-timeline-card[_ngcontent-%COMP%] .activity-list[_ngcontent-%COMP%] .activity-item[_ngcontent-%COMP%] .activity-metadata[_ngcontent-%COMP%] .metadata-item[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:16px;width:16px;height:16px}.activity-timeline-card[_ngcontent-%COMP%] .activity-list[_ngcontent-%COMP%] .activity-item[_ngcontent-%COMP%] mat-icon[matListItemIcon].activity-icon-primary[_ngcontent-%COMP%]{color:var(--primary-color)}.activity-timeline-card[_ngcontent-%COMP%] .activity-list[_ngcontent-%COMP%] .activity-item[_ngcontent-%COMP%] mat-icon[matListItemIcon].activity-icon-success[_ngcontent-%COMP%]{color:var(--success-color)}.activity-timeline-card[_ngcontent-%COMP%] .activity-list[_ngcontent-%COMP%] .activity-item[_ngcontent-%COMP%] mat-icon[matListItemIcon].activity-icon-accent[_ngcontent-%COMP%]{color:var(--accent-color)}.activity-timeline-card[_ngcontent-%COMP%] .activity-list[_ngcontent-%COMP%] .activity-item[_ngcontent-%COMP%] mat-icon[matListItemIcon].activity-icon-warn[_ngcontent-%COMP%]{color:var(--warn-color)}.activity-timeline-card[_ngcontent-%COMP%] .activity-list[_ngcontent-%COMP%] .activity-item[_ngcontent-%COMP%] mat-icon[matListItemIcon].activity-icon-default[_ngcontent-%COMP%]{color:var(--text-secondary)}.empty-state[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center}.empty-state[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:64px;width:64px;height:64px;color:var(--text-disabled);margin-bottom:16px}.empty-state[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{margin:0;color:var(--text-secondary);font-size:16px}@media (max-width: 1023px){.stats-grid[_ngcontent-%COMP%]{grid-template-columns:repeat(2,1fr)}.profile-card[_ngcontent-%COMP%] .profile-header[_ngcontent-%COMP%] .user-avatar[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:64px;width:64px;height:64px}.profile-card[_ngcontent-%COMP%] .profile-header[_ngcontent-%COMP%] .user-info[_ngcontent-%COMP%] .user-name[_ngcontent-%COMP%]{font-size:24px}}@media (max-width: 767px){.admin-user-detail-container[_ngcontent-%COMP%]{padding:16px}.page-header[_ngcontent-%COMP%]{flex-direction:column;align-items:flex-start;gap:12px}.page-header[_ngcontent-%COMP%] .header-actions[_ngcontent-%COMP%]{width:100%;justify-content:flex-end}.breadcrumb[_ngcontent-%COMP%]{flex-wrap:wrap;font-size:12px}.profile-card[_ngcontent-%COMP%] .profile-header[_ngcontent-%COMP%]{flex-direction:column;align-items:flex-start;gap:16px}.profile-card[_ngcontent-%COMP%] .profile-header[_ngcontent-%COMP%] .user-avatar[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:56px;width:56px;height:56px}.profile-card[_ngcontent-%COMP%] .profile-header[_ngcontent-%COMP%] .user-info[_ngcontent-%COMP%]{width:100%}.profile-card[_ngcontent-%COMP%] .profile-header[_ngcontent-%COMP%] .user-info[_ngcontent-%COMP%] .user-name[_ngcontent-%COMP%]{font-size:20px}.profile-card[_ngcontent-%COMP%] .profile-header[_ngcontent-%COMP%] .user-info[_ngcontent-%COMP%] .user-email[_ngcontent-%COMP%]{font-size:14px}.profile-card[_ngcontent-%COMP%] .profile-actions[_ngcontent-%COMP%]{flex-direction:column}.profile-card[_ngcontent-%COMP%] .profile-actions[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{width:100%}.stats-grid[_ngcontent-%COMP%]{grid-template-columns:1fr}.stat-card[_ngcontent-%COMP%] mat-card-content[_ngcontent-%COMP%]{padding:16px}.stat-card[_ngcontent-%COMP%] mat-card-content[_ngcontent-%COMP%] .stat-icon[_ngcontent-%COMP%]{width:48px;height:48px}.stat-card[_ngcontent-%COMP%] mat-card-content[_ngcontent-%COMP%] .stat-icon[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:28px;width:28px;height:28px}.stat-card[_ngcontent-%COMP%] mat-card-content[_ngcontent-%COMP%] .stat-info[_ngcontent-%COMP%] .stat-value[_ngcontent-%COMP%]{font-size:24px}.stat-card[_ngcontent-%COMP%] mat-card-content[_ngcontent-%COMP%] .stat-info[_ngcontent-%COMP%] .stat-label[_ngcontent-%COMP%]{font-size:13px}.quiz-history-item[_ngcontent-%COMP%] .quiz-history-header[_ngcontent-%COMP%]{flex-direction:column;align-items:flex-start;gap:8px}.quiz-history-item[_ngcontent-%COMP%] .quiz-history-stats[_ngcontent-%COMP%]{flex-direction:column;align-items:flex-start;gap:12px}.quiz-history-item[_ngcontent-%COMP%] .quiz-history-stats[_ngcontent-%COMP%] .quiz-action-btn[_ngcontent-%COMP%]{margin-left:0}}@media (prefers-color-scheme: dark){.admin-user-detail-container[_ngcontent-%COMP%]{--text-primary: #e0e0e0;--text-secondary: #a0a0a0;--text-disabled: #606060;--bg-primary: #1e1e1e;--bg-secondary: #2a2a2a;--divider-color: #404040}.quiz-history-item[_ngcontent-%COMP%]:hover{box-shadow:0 4px 12px #0000004d}}"]})};export{Pt as AdminUserDetailComponent};
|