import"./chunk-MS4AQ6UA.js";import{a as Dt,b as $t,c as Rt}from"./chunk-N73CTY2C.js";import{a as Gt,b as Lt}from"./chunk-GIRDLTGV.js";import{a as Bt}from"./chunk-RDQGS2XZ.js";import{c as zt}from"./chunk-P3ICZX4Q.js";import{a as Et,b as Pt}from"./chunk-5WV5P2FL.js";import"./chunk-VX6WCCL3.js";import"./chunk-66PBOFKL.js";import"./chunk-NYYADJNO.js";import{b as vt,c as ht}from"./chunk-R3PUHZUP.js";import"./chunk-3RK6DDJD.js";import{a as Ct}from"./chunk-7XDVX5KB.js";import{a as Ft,b as At}from"./chunk-CTXOKINH.js";import{a as Nt}from"./chunk-B4CGVF35.js";import{b as Vt}from"./chunk-NIBVQDYD.js";import"./chunk-LLJSP5R2.js";import"./chunk-HMKN2VB2.js";import"./chunk-M5XZ5N2D.js";import{a as St,c as qt,e as Qt,f as It,g as kt}from"./chunk-TAS7XC6E.js";import{a as Tt}from"./chunk-GMUETU5N.js";import"./chunk-3GOV5KJM.js";import"./chunk-TPLZKWZ7.js";import{b as gt,c as _t,d as xt,i as ft}from"./chunk-EGL4ZKWQ.js";import"./chunk-GPI43RSU.js";import{a as mt,b as st,c as dt,f as pt,i as ut}from"./chunk-6NRCTHHS.js";import"./chunk-RC3JXGN6.js";import{b as H,d as g,f as U,g as W,h as Y,l as J,m as X,o as Z,p as tt,q as et,r as nt,s as it,t as ot,u as rt,w as at,x as lt,z as ct}from"./chunk-GWD5A44H.js";import"./chunk-52JZ5I3Y.js";import{Aa as Ot,g as R,j as B,u as j,ua as Mt,w as K,wa as bt,ya as yt,za as wt}from"./chunk-COFYR5MX.js";import{Db as s,Eb as d,Ec as P,Fb as A,Gb as q,Hb as f,Ib as C,Jb as x,Kb as o,Lb as n,Mb as w,Qb as Q,Rb as I,Tb as E,Xb as b,Za as a,Zb as c,da as y,hc as D,ia as h,ja as M,jc as T,kc as $,lc as r,mc as u,nc as _,ob as L,ta as O,wc as k,xc as V}from"./chunk-2MUIW2M6.js";var jt=(i,e)=>e.value,Ht=(i,e)=>e.id;function Ut(i,e){if(i&1&&(o(0,"p",20),r(1),n()),i&2){let t=c(2);a(),_("Question ID: ",t.questionId())}}function Wt(i,e){if(i&1&&(o(0,"h1")(1,"mat-icon"),r(2,"edit"),n(),r(3," Edit Question "),n(),o(4,"p",19),r(5,"Update the details below to modify the quiz question"),n(),s(6,Ut,2,1,"p",20)),i&2){let t=c();a(6),d(t.questionId()?6:-1)}}function Yt(i,e){i&1&&(o(0,"h1")(1,"mat-icon"),r(2,"add_circle"),n(),r(3," Create New Question "),n(),o(4,"p",19),r(5,"Fill in the details below to create a new quiz question"),n())}function Jt(i,e){i&1&&(o(0,"mat-card",4)(1,"mat-card-content")(2,"div",21)(3,"mat-icon",22),r(4,"hourglass_empty"),n(),o(5,"p"),r(6,"Loading question data..."),n()()()())}function Xt(i,e){if(i&1&&(o(0,"div",24)(1,"mat-icon"),r(2,"error"),n(),o(3,"span"),r(4),n()()),i&2){let t=c(2);a(4),u(t.getFormError())}}function Zt(i,e){if(i&1&&(o(0,"mat-error"),r(1),n()),i&2){let t=c(2);a(),u(t.getErrorMessage("questionText"))}}function te(i,e){if(i&1&&(o(0,"mat-option",30),r(1),n()),i&2){let t=e.$implicit;x("value",t.value),a(),_(" ",t.label," ")}}function ee(i,e){if(i&1&&(o(0,"mat-error"),r(1),n()),i&2){let t=c(2);a(),u(t.getErrorMessage("questionType"))}}function ne(i,e){i&1&&(o(0,"mat-option",32),r(1,"Loading categories..."),n())}function ie(i,e){if(i&1&&(o(0,"mat-option",30),r(1),n()),i&2){let t=e.$implicit;x("value",t.id),a(),_(" ",t.name," ")}}function oe(i,e){if(i&1&&f(0,ie,2,2,"mat-option",30,Ht),i&2){let t=c(2);C(t.categories())}}function re(i,e){if(i&1&&(o(0,"mat-error"),r(1),n()),i&2){let t=c(2);a(),u(t.getErrorMessage("categoryId"))}}function ae(i,e){if(i&1&&(o(0,"mat-option",30),r(1),n()),i&2){let t=e.$implicit;x("value",t.value),a(),_(" ",t.label," ")}}function le(i,e){if(i&1&&(o(0,"mat-error"),r(1),n()),i&2){let t=c(2);a(),u(t.getErrorMessage("difficulty"))}}function ce(i,e){if(i&1&&(o(0,"mat-error"),r(1),n()),i&2){let t=c(2);a(),u(t.getErrorMessage("points"))}}function me(i,e){if(i&1){let t=E();o(0,"button",54),b("click",function(){h(t);let m=c().$index,p=c(3);return M(p.removeOption(m))}),o(1,"mat-icon"),r(2,"delete"),n()()}}function se(i,e){if(i&1&&(o(0,"div",47)(1,"span",50),r(2),n(),o(3,"mat-form-field",51),w(4,"input",52),n(),s(5,me,3,0,"button",53),n()),i&2){let t=e.$index,l=c(3);x("formGroupName",t),a(2),_("Option ",t+1),a(2),x("placeholder","Enter option "+(t+1)),a(),d(l.optionsArray.length>2?5:-1)}}function de(i,e){if(i&1){let t=E();o(0,"button",55),b("click",function(){h(t);let m=c(3);return M(m.addOption())}),o(1,"mat-icon"),r(2,"add"),n(),r(3," Add Option "),n()}}function pe(i,e){if(i&1&&(o(0,"mat-option",30),r(1),n()),i&2){let t=e.$implicit;x("value",t),a(),_(" ",t," ")}}function ue(i,e){if(i&1&&(o(0,"mat-error"),r(1),n()),i&2){let t=c(3);a(),u(t.getErrorMessage("correctAnswer"))}}function ge(i,e){if(i&1&&(o(0,"div",45)(1,"h3")(2,"mat-icon"),r(3,"list"),n(),r(4," Answer Options "),n(),o(5,"div",46),f(6,se,6,4,"div",47,A),n(),s(8,de,4,0,"button",48),n(),w(9,"mat-divider"),o(10,"div",35)(11,"h3")(12,"mat-icon"),r(13,"check_circle"),n(),r(14," Correct Answer "),n(),o(15,"mat-form-field",25)(16,"mat-label"),r(17,"Select Correct Answer"),n(),o(18,"mat-select",49),f(19,pe,2,2,"mat-option",30,A),n(),s(21,ue,2,1,"mat-error"),n()()),i&2){let t=c(2);a(6),C(t.optionsArray.controls),a(2),d(t.optionsArray.length<10?8:-1),a(11),C(t.getOptionTexts()),a(2),d(t.getErrorMessage("correctAnswer")?21:-1)}}function _e(i,e){i&1&&(o(0,"div",35)(1,"h3")(2,"mat-icon"),r(3,"check_circle"),n(),r(4," Correct Answer "),n(),o(5,"mat-radio-group",56)(6,"mat-radio-button",57),r(7,"True"),n(),o(8,"mat-radio-button",58),r(9,"False"),n()()())}function xe(i,e){if(i&1&&(o(0,"mat-error"),r(1),n()),i&2){let t=c(3);a(),u(t.getErrorMessage("correctAnswer"))}}function fe(i,e){if(i&1&&(o(0,"div",35)(1,"h3")(2,"mat-icon"),r(3,"edit"),n(),r(4," Sample Correct Answer "),n(),o(5,"mat-form-field",25)(6,"mat-label"),r(7,"Expected Answer"),n(),o(8,"textarea",59),r(9," "),n(),o(10,"mat-hint"),r(11,"This is a reference answer for grading"),n(),s(12,xe,2,1,"mat-error"),n()()),i&2){let t=c(2);a(12),d(t.getErrorMessage("correctAnswer")?12:-1)}}function Ce(i,e){if(i&1&&(o(0,"mat-error"),r(1),n()),i&2){let t=c(2);a(),u(t.getErrorMessage("explanation"))}}function ve(i,e){if(i&1){let t=E();o(0,"mat-chip-row",60),b("removed",function(){let m=h(t).$implicit,p=c(2);return M(p.removeTag(m))}),r(1),o(2,"button",61)(3,"mat-icon"),r(4,"cancel"),n()()()}if(i&2){let t=e.$implicit;a(),_(" ",t," ")}}function he(i,e){if(i&1&&(Q(0),o(1,"mat-icon"),r(2,"hourglass_empty"),n(),o(3,"span"),r(4),n(),I()),i&2){let t=c(2);a(4),u(t.isEditMode()?"Updating...":"Creating...")}}function Me(i,e){if(i&1&&(Q(0),o(1,"mat-icon"),r(2,"save"),n(),o(3,"span"),r(4),n(),I()),i&2){let t=c(2);a(4),u(t.isEditMode()?"Update Question":"Save Question")}}function be(i,e){if(i&1){let t=E();o(0,"mat-card",5)(1,"mat-card-content")(2,"form",23),b("ngSubmit",function(){h(t);let m=c();return M(m.onSubmit())}),s(3,Xt,5,1,"div",24),o(4,"mat-form-field",25)(5,"mat-label"),r(6,"Question Text"),n(),o(7,"textarea",26),r(8," "),n(),o(9,"mat-hint"),r(10,"Minimum 10 characters"),n(),s(11,Zt,2,1,"mat-error"),n(),o(12,"div",27)(13,"mat-form-field",28)(14,"mat-label"),r(15,"Question Type"),n(),o(16,"mat-select",29),f(17,te,2,2,"mat-option",30,jt),n(),s(19,ee,2,1,"mat-error"),n(),o(20,"mat-form-field",28)(21,"mat-label"),r(22,"Category"),n(),o(23,"mat-select",31),s(24,ne,2,0,"mat-option",32)(25,oe,2,0),n(),s(26,re,2,1,"mat-error"),n()(),o(27,"div",27)(28,"mat-form-field",28)(29,"mat-label"),r(30,"Difficulty"),n(),o(31,"mat-select",33),f(32,ae,2,2,"mat-option",30,jt),n(),s(34,le,2,1,"mat-error"),n(),o(35,"mat-form-field",28)(36,"mat-label"),r(37,"Points"),n(),w(38,"input",34),o(39,"mat-hint"),r(40,"Between 1 and 100"),n(),s(41,ce,2,1,"mat-error"),n()(),w(42,"mat-divider"),s(43,ge,22,2),s(44,_e,10,0,"div",35),s(45,fe,13,1,"div",35),w(46,"mat-divider"),o(47,"mat-form-field",25)(48,"mat-label"),r(49,"Explanation"),n(),o(50,"textarea",36),r(51," "),n(),o(52,"mat-hint"),r(53,"Minimum 10 characters"),n(),s(54,Ce,2,1,"mat-error"),n(),o(55,"div",37)(56,"h3")(57,"mat-icon"),r(58,"label"),n(),r(59," Tags (Optional) "),n(),o(60,"mat-form-field",25)(61,"mat-label"),r(62,"Add Tags"),n(),o(63,"mat-chip-grid",null,0),f(65,ve,5,1,"mat-chip-row",null,q),n(),o(67,"input",38),b("matChipInputTokenEnd",function(m){h(t);let p=c();return M(p.addTag(m))}),n(),o(68,"mat-hint"),r(69,"Press Enter or comma to add tags"),n()()(),o(70,"div",39)(71,"mat-checkbox",40),r(72," Make question public "),n(),o(73,"mat-checkbox",41),r(74," Allow guest access "),n()(),o(75,"div",42)(76,"button",43),b("click",function(){h(t);let m=c();return M(m.onCancel())}),o(77,"mat-icon"),r(78,"close"),n(),r(79," Cancel "),n(),o(80,"button",44),s(81,he,5,1,"ng-container")(82,Me,5,1,"ng-container"),n()()()()()}if(i&2){let t=D(64),l=c();a(2),x("formGroup",l.questionForm),a(),d(l.getFormError()?3:-1),a(8),d(l.getErrorMessage("questionText")?11:-1),a(6),C(l.questionTypes),a(2),d(l.getErrorMessage("questionType")?19:-1),a(5),d(l.isLoadingCategories()?24:25),a(2),d(l.getErrorMessage("categoryId")?26:-1),a(6),C(l.difficultyLevels),a(2),d(l.getErrorMessage("difficulty")?34:-1),a(7),d(l.getErrorMessage("points")?41:-1),a(2),d(l.showOptions()?43:-1),a(),d(l.showTrueFalse()?44:-1),a(),d(l.selectedQuestionType()==="written"?45:-1),a(9),d(l.getErrorMessage("explanation")?54:-1),a(11),C(l.tagsArray),a(2),x("matChipInputFor",t)("matChipInputSeparatorKeyCodes",l.separatorKeysCodes),a(13),x("disabled",!l.isFormValid()||l.isSubmitting()||l.isLoadingQuestion()),a(),d(l.isSubmitting()?81:82)}}function ye(i,e){if(i&1&&(o(0,"div",64)(1,"mat-icon"),r(2),n(),o(3,"span"),r(4),n()()),i&2){let t,l,m=e.$implicit,p=c(2);T("correct",((t=p.questionForm.get("correctAnswer"))==null?null:t.value)===m),a(2),u(((l=p.questionForm.get("correctAnswer"))==null?null:l.value)===m?"check_circle":"radio_button_unchecked"),a(2),u(m)}}function we(i,e){if(i&1&&(o(0,"div",8)(1,"div",9),r(2,"Options:"),n(),o(3,"div",62),f(4,ye,5,4,"div",63,A),n()()),i&2){let t=c();a(4),C(t.getOptionTexts())}}function Oe(i,e){if(i&1&&(o(0,"div",8)(1,"div",9),r(2,"Options:"),n(),o(3,"div",62)(4,"div",64)(5,"mat-icon"),r(6),n(),o(7,"span"),r(8,"True"),n()(),o(9,"div",64)(10,"mat-icon"),r(11),n(),o(12,"span"),r(13,"False"),n()()()()),i&2){let t,l,m,p,v=c();a(4),T("correct",((t=v.questionForm.get("correctAnswer"))==null?null:t.value)==="true"),a(2),u(((l=v.questionForm.get("correctAnswer"))==null?null:l.value)==="true"?"check_circle":"radio_button_unchecked"),a(3),T("correct",((m=v.questionForm.get("correctAnswer"))==null?null:m.value)==="false"),a(2),u(((p=v.questionForm.get("correctAnswer"))==null?null:p.value)==="false"?"check_circle":"radio_button_unchecked")}}function Ee(i,e){if(i&1&&(o(0,"div",8)(1,"div",9),r(2,"Explanation:"),n(),o(3,"div",65),r(4),n()()),i&2){let t,l=c();a(4),_(" ",(t=l.questionForm.get("explanation"))==null?null:t.value," ")}}function Pe(i,e){if(i&1&&(o(0,"span",67),r(1),n()),i&2){let t=e.$implicit;a(),u(t)}}function Fe(i,e){if(i&1&&(o(0,"div",8)(1,"div",9),r(2,"Tags:"),n(),o(3,"div",66),f(4,Pe,2,1,"span",67,q),n()()),i&2){let t=c();a(4),C(t.tagsArray)}}function Ae(i,e){i&1&&(o(0,"span",16),r(1,"Public"),n())}function Te(i,e){i&1&&(o(0,"span",17),r(1,"Private"),n())}function Se(i,e){i&1&&(o(0,"span",18),r(1,"Guest Accessible"),n())}var Kt=class i{fb=y(lt);adminService=y(Bt);categoryService=y(Tt);router=y(K);route=y(j);questionForm;isSubmitting=O(!1);isEditMode=O(!1);questionId=O(null);isLoadingQuestion=O(!1);categories=this.categoryService.categories;isLoadingCategories=this.categoryService.isLoading;separatorKeysCodes=[13,188];questionTypes=[{value:"multiple",label:"Multiple Choice"},{value:"trueFalse",label:"True/False"},{value:"written",label:"Written Answer"}];difficultyLevels=[{value:"easy",label:"Easy"},{value:"medium",label:"Medium"},{value:"hard",label:"Hard"}];selectedQuestionType=P(()=>this.questionForm?.get("questionType")?.value);showOptions=P(()=>this.selectedQuestionType()==="multiple");showTrueFalse=P(()=>this.selectedQuestionType()==="trueFalse");isFormValid=P(()=>this.questionForm?.valid??!1);ngOnInit(){this.initializeForm(),this.categoryService.getCategories().subscribe(),this.route.params.subscribe(e=>{let t=e.id;t&&setTimeout(()=>{this.isEditMode.set(!0),this.questionId.set(t),this.loadQuestion(t)})}),this.questionForm.get("questionType")?.valueChanges.subscribe(e=>{this.onQuestionTypeChange(e)})}loadQuestion(e){this.isLoadingQuestion.set(!0),this.adminService.getQuestion(e).subscribe({next:t=>{this.isLoadingQuestion.set(!1),this.populateForm(t.data)},error:t=>{this.isLoadingQuestion.set(!1),console.error("Error loading question:",t),this.router.navigate(["/admin/questions"])}})}populateForm(e){this.optionsArray.clear(),this.questionForm.patchValue({questionText:e.questionText,questionType:e.questionType,categoryId:e.categoryId,difficulty:e.difficulty,correctAnswer:Array.isArray(e.correctAnswer)?e.correctAnswer[0]:e.correctAnswer,explanation:e.explanation,points:e.points,tags:e.tags||[],isPublic:e.isPublic,isGuestAccessible:e.isPublic}),e.questionType==="multiple"&&e.options&&e.options.forEach(t=>{this.optionsArray.push(this.createOption(t))}),this.onQuestionTypeChange(e.questionType)}initializeForm(){this.questionForm=this.fb.group({questionText:["",[g.required,g.minLength(10)]],questionType:["multiple",g.required],categoryId:["",g.required],difficulty:["medium",g.required],options:this.fb.array([this.createOption(""),this.createOption(""),this.createOption(""),this.createOption("")]),correctAnswer:["",g.required],explanation:["",[g.required,g.minLength(10)]],points:[10,[g.required,g.min(1),g.max(100)]],tags:[[]],isPublic:[!0],isGuestAccessible:[!1]}),this.questionForm.setValidators(this.correctAnswerValidator.bind(this))}createOption(e=""){return this.fb.group({text:[e,g.required]})}get optionsArray(){return this.questionForm.get("options")}get tagsArray(){return this.questionForm.get("tags")?.value||[]}onQuestionTypeChange(e){let t=this.questionForm.get("correctAnswer");if(e==="multiple"){for(;this.optionsArray.length<2;)this.addOption();t?.setValidators([g.required])}else e==="trueFalse"?(this.optionsArray.clear(),t?.setValidators([g.required]),t?.value||t?.setValue("true")):(this.optionsArray.clear(),t?.setValidators([g.required,g.minLength(1)]));t?.updateValueAndValidity(),this.questionForm.updateValueAndValidity()}addOption(){this.optionsArray.length<10&&this.optionsArray.push(this.createOption(""))}removeOption(e){if(this.optionsArray.length>2){this.optionsArray.removeAt(e);let t=this.questionForm.get("correctAnswer")?.value,l=this.optionsArray.at(e)?.get("text")?.value;t===l&&this.questionForm.get("correctAnswer")?.setValue("")}}addTag(e){let t=(e.value||"").trim(),l=this.tagsArray;t&&!l.includes(t)&&this.questionForm.get("tags")?.setValue([...l,t]),e.chipInput.clear()}removeTag(e){let t=this.tagsArray,l=t.indexOf(e);l>=0&&(t.splice(l,1),this.questionForm.get("tags")?.setValue([...t]))}correctAnswerValidator(e){let t=e,l=t.get("questionType")?.value,m=t.get("correctAnswer")?.value,p=t.get("options");return l==="multiple"&&m&&p&&!p.controls.map(F=>F.get("text")?.value).includes(m)?{correctAnswerMismatch:!0}:null}getOptionTexts(){return this.optionsArray.controls.map(e=>e.get("text")?.value).filter(e=>e.trim()!=="")}onSubmit(){if(this.questionForm.invalid||this.isSubmitting()){this.markFormGroupTouched(this.questionForm);return}this.isSubmitting.set(!0);let e=this.questionForm.value,t={questionText:e.questionText,questionType:e.questionType,difficulty:e.difficulty,categoryId:e.categoryId,correctAnswer:e.correctAnswer,explanation:e.explanation,points:e.points||10,tags:e.tags||[],isPublic:e.isPublic,isGuestAccessible:e.isGuestAccessible};e.questionType==="multiple"&&(t.options=this.getOptionTexts()),(this.isEditMode()&&this.questionId()?this.adminService.updateQuestion(this.questionId(),t):this.adminService.createQuestion(t)).subscribe({next:m=>{this.isSubmitting.set(!1),this.router.navigate(["/admin/questions"])},error:m=>{this.isSubmitting.set(!1),console.error(`Error ${this.isEditMode()?"updating":"creating"} question:`,m)}})}onCancel(){this.router.navigate(["/admin/questions"])}markFormGroupTouched(e){Object.keys(e.controls).forEach(t=>{let l=e.get(t);l?.markAsTouched(),(l instanceof Y||l instanceof at)&&this.markFormGroupTouched(l)})}getErrorMessage(e){let t=this.questionForm.get(e);return!t||!t.errors||!t.touched?"":t.errors.required?`${this.getFieldLabel(e)} is required`:t.errors.minlength?`${this.getFieldLabel(e)} must be at least ${t.errors.minlength.requiredLength} characters`:t.errors.min?`${this.getFieldLabel(e)} must be at least ${t.errors.min.min}`:t.errors.max?`${this.getFieldLabel(e)} must be at most ${t.errors.max.max}`:""}getFieldLabel(e){return{questionText:"Question text",questionType:"Question type",categoryId:"Category",difficulty:"Difficulty",correctAnswer:"Correct answer",explanation:"Explanation",points:"Points"}[e]||e}getFormError(){return this.questionForm.errors?.correctAnswerMismatch?"Correct answer must match one of the options":null}static \u0275fac=function(t){return new(t||i)};static \u0275cmp=L({type:i,selectors:[["app-admin-question-form"]],decls:40,vars:18,consts:[["chipGrid",""],[1,"question-form-container"],[1,"form-header"],[1,"form-layout"],[1,"form-card","loading-card"],[1,"form-card"],[1,"preview-card"],[1,"preview-content"],[1,"preview-section"],[1,"preview-label"],[1,"preview-text"],[1,"preview-meta"],[1,"preview-badge","type-badge"],[1,"preview-badge","difficulty-badge"],[1,"preview-badge","points-badge"],[1,"preview-access"],[1,"access-badge","public"],[1,"access-badge","private"],[1,"access-badge","guest"],[1,"subtitle"],[1,"question-id"],[1,"loading-container"],[1,"loading-icon"],[3,"ngSubmit","formGroup"],[1,"form-error"],["appearance","outline",1,"full-width"],["matInput","","formControlName","questionText","placeholder","Enter your question here...","rows","4","required",""],[1,"form-row"],["appearance","outline",1,"half-width"],["formControlName","questionType","required",""],[3,"value"],["formControlName","categoryId","required",""],["disabled",""],["formControlName","difficulty","required",""],["matInput","","type","number","formControlName","points","min","1","max","100","placeholder","10","required",""],[1,"correct-answer-section"],["matInput","","formControlName","explanation","placeholder","Explain why this is the correct answer...","rows","4","required",""],[1,"tags-section"],["placeholder","Type tag and press Enter...",3,"matChipInputTokenEnd","matChipInputFor","matChipInputSeparatorKeyCodes"],[1,"checkbox-group"],["formControlName","isPublic"],["formControlName","isGuestAccessible"],[1,"form-actions"],["mat-button","","type","button",3,"click"],["mat-raised-button","","color","primary","type","submit",3,"disabled"],[1,"options-section"],["formArrayName","options",1,"options-list"],[1,"option-row",3,"formGroupName"],["mat-stroked-button","","type","button",1,"add-option-btn"],["formControlName","correctAnswer","required",""],[1,"option-label"],["appearance","outline",1,"option-input"],["matInput","","formControlName","text","required","",3,"placeholder"],["mat-icon-button","","type","button","color","warn","matTooltip","Remove option"],["mat-icon-button","","type","button","color","warn","matTooltip","Remove option",3,"click"],["mat-stroked-button","","type","button",1,"add-option-btn",3,"click"],["formControlName","correctAnswer",1,"radio-group"],["value","true"],["value","false"],["matInput","","formControlName","correctAnswer","placeholder","Enter a sample correct answer...","rows","3","required",""],[3,"removed"],["matChipRemove",""],[1,"preview-options"],[1,"preview-option",3,"correct"],[1,"preview-option"],[1,"preview-explanation"],[1,"preview-tags"],[1,"preview-tag"]],template:function(t,l){if(t&1&&(o(0,"div",1)(1,"div",2),s(2,Wt,7,1)(3,Yt,6,0),n(),o(4,"div",3),s(5,Jt,7,0,"mat-card",4)(6,be,83,16,"mat-card",5),o(7,"mat-card",6)(8,"mat-card-header")(9,"mat-card-title")(10,"mat-icon"),r(11,"visibility"),n(),r(12," Preview "),n()(),o(13,"mat-card-content")(14,"div",7)(15,"div",8)(16,"div",9),r(17,"Question:"),n(),o(18,"div",10),r(19),n()(),o(20,"div",11)(21,"span",12),r(22),k(23,"titlecase"),n(),o(24,"span",13),r(25),k(26,"titlecase"),n(),o(27,"span",14),r(28),n()(),s(29,we,6,0,"div",8),s(30,Oe,14,6,"div",8),s(31,Ee,5,1,"div",8),s(32,Fe,6,0,"div",8),o(33,"div",8)(34,"div",9),r(35,"Access:"),n(),o(36,"div",15),s(37,Ae,2,0,"span",16)(38,Te,2,0,"span",17),s(39,Se,2,0,"span",18),n()()()()()()()),t&2){let m,p,v,S,F,N,z,G;a(2),d(l.isEditMode()?2:3),a(3),d(l.isLoadingQuestion()?5:6),a(14),_(" ",((m=l.questionForm.get("questionText"))==null?null:m.value)||"Your question will appear here..."," "),a(3),_(" ",V(23,14,(p=l.questionForm.get("questionType"))==null?null:p.value)," "),a(2),$("difficulty-"+((v=l.questionForm.get("difficulty"))==null?null:v.value)),a(),_(" ",V(26,16,(S=l.questionForm.get("difficulty"))==null?null:S.value)," "),a(3),_(" ",((F=l.questionForm.get("points"))==null?null:F.value)||10," Points "),a(),d(l.showOptions()&&l.getOptionTexts().length>0?29:-1),a(),d(l.showTrueFalse()?30:-1),a(),d((N=l.questionForm.get("explanation"))!=null&&N.value?31:-1),a(),d(l.tagsArray.length>0?32:-1),a(5),d((z=l.questionForm.get("isPublic"))!=null&&z.value?37:38),a(2),d((G=l.questionForm.get("isGuestAccessible"))!=null&&G.value?39:-1)}},dependencies:[B,ct,J,H,X,U,W,rt,ot,it,Z,nt,tt,et,ut,mt,dt,pt,st,Ct,ft,gt,xt,_t,ht,vt,Lt,Gt,zt,yt,bt,Mt,Ot,wt,kt,Qt,It,St,qt,Pt,Et,Rt,Dt,$t,At,Ft,Nt,Vt,R],styles:[".question-form-container[_ngcontent-%COMP%]{padding:24px;max-width:1400px;margin:0 auto}@media (max-width: 768px){.question-form-container[_ngcontent-%COMP%]{padding:16px}}.form-header[_ngcontent-%COMP%]{margin-bottom:24px}.form-header[_ngcontent-%COMP%] h1[_ngcontent-%COMP%]{display:flex;align-items:center;gap:12px;margin:0 0 8px;font-size:32px;font-weight:600;color:var(--mat-app-on-surface, #212121)}.form-header[_ngcontent-%COMP%] h1[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:36px;width:36px;height:36px;color:var(--mat-app-primary, #1976d2)}.form-header[_ngcontent-%COMP%] .subtitle[_ngcontent-%COMP%]{margin:0;font-size:16px;color:var(--mat-app-on-surface-variant, #757575)}.form-header[_ngcontent-%COMP%] .question-id[_ngcontent-%COMP%]{margin:8px 0 0;padding:6px 12px;background-color:#2196f31a;border-radius:4px;font-size:13px;font-weight:500;color:var(--mat-app-primary, #1976d2);width:fit-content}@media (max-width: 768px){.form-header[_ngcontent-%COMP%] h1[_ngcontent-%COMP%]{font-size:24px}.form-header[_ngcontent-%COMP%] h1[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:28px;width:28px;height:28px}.form-header[_ngcontent-%COMP%] .subtitle[_ngcontent-%COMP%]{font-size:14px}}.form-layout[_ngcontent-%COMP%]{display:grid;grid-template-columns:1fr 400px;gap:24px}@media (max-width: 1024px){.form-layout[_ngcontent-%COMP%]{grid-template-columns:1fr}}.form-card[_ngcontent-%COMP%], .preview-card[_ngcontent-%COMP%]{height:fit-content}.form-card[_ngcontent-%COMP%] mat-card-content[_ngcontent-%COMP%], .preview-card[_ngcontent-%COMP%] mat-card-content[_ngcontent-%COMP%]{padding:24px!important}.preview-card[_ngcontent-%COMP%]{position:sticky;top:24px}@media (max-width: 1024px){.preview-card[_ngcontent-%COMP%]{position:static;order:-1}}.preview-card[_ngcontent-%COMP%] mat-card-header[_ngcontent-%COMP%]{padding:16px 24px 0}.preview-card[_ngcontent-%COMP%] mat-card-header[_ngcontent-%COMP%] mat-card-title[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;font-size:18px;font-weight:600}.preview-card[_ngcontent-%COMP%] mat-card-header[_ngcontent-%COMP%] mat-card-title[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{color:var(--mat-app-primary, #1976d2)}.full-width[_ngcontent-%COMP%]{width:100%}.half-width[_ngcontent-%COMP%]{width:calc(50% - 8px)}@media (max-width: 768px){.half-width[_ngcontent-%COMP%]{width:100%}}.form-row[_ngcontent-%COMP%]{display:flex;gap:16px;margin-bottom:16px}@media (max-width: 768px){.form-row[_ngcontent-%COMP%]{flex-direction:column;gap:0}}mat-form-field[_ngcontent-%COMP%]{margin-bottom:16px}mat-divider[_ngcontent-%COMP%]{margin:24px 0}.options-section[_ngcontent-%COMP%], .correct-answer-section[_ngcontent-%COMP%], .tags-section[_ngcontent-%COMP%]{margin-bottom:24px}.options-section[_ngcontent-%COMP%] h3[_ngcontent-%COMP%], .correct-answer-section[_ngcontent-%COMP%] h3[_ngcontent-%COMP%], .tags-section[_ngcontent-%COMP%] h3[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;margin:0 0 16px;font-size:18px;font-weight:600;color:var(--mat-app-on-surface, #212121)}.options-section[_ngcontent-%COMP%] h3[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%], .correct-answer-section[_ngcontent-%COMP%] h3[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%], .tags-section[_ngcontent-%COMP%] h3[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:22px;width:22px;height:22px;color:var(--mat-app-primary, #1976d2)}.options-list[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:12px;margin-bottom:16px}.option-row[_ngcontent-%COMP%]{display:flex;align-items:center;gap:12px}.option-row[_ngcontent-%COMP%] .option-label[_ngcontent-%COMP%]{min-width:70px;font-weight:500;color:var(--mat-app-on-surface-variant, #757575)}.option-row[_ngcontent-%COMP%] .option-input[_ngcontent-%COMP%]{flex:1;margin-bottom:0}@media (max-width: 768px){.option-row[_ngcontent-%COMP%]{flex-wrap:wrap}.option-row[_ngcontent-%COMP%] .option-label[_ngcontent-%COMP%]{width:100%;margin-bottom:4px}.option-row[_ngcontent-%COMP%] .option-input[_ngcontent-%COMP%]{width:calc(100% - 48px)}}.add-option-btn[_ngcontent-%COMP%]{width:100%;border-style:dashed!important}.radio-group[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:12px}.radio-group[_ngcontent-%COMP%] mat-radio-button[_ngcontent-%COMP%]{margin:0}.checkbox-group[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:12px;margin:24px 0}.form-actions[_ngcontent-%COMP%]{display:flex;justify-content:flex-end;gap:12px;margin-top:24px;padding-top:24px;border-top:1px solid var(--mat-app-outline-variant, #e0e0e0)}.form-actions[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px}.form-actions[_ngcontent-%COMP%] button[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:20px;width:20px;height:20px}@media (max-width: 768px){.form-actions[_ngcontent-%COMP%]{flex-direction:column-reverse}.form-actions[_ngcontent-%COMP%] button[_ngcontent-%COMP%]{width:100%;justify-content:center}}.form-error[_ngcontent-%COMP%]{display:flex;align-items:center;gap:8px;padding:12px 16px;margin-bottom:16px;background-color:#f443361a;border-left:4px solid var(--mat-warn-main, #f44336);border-radius:4px;color:var(--mat-warn-dark, #d32f2f)}.form-error[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:20px;width:20px;height:20px}.form-error[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{font-size:14px;font-weight:500}.preview-content[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:20px}.preview-section[_ngcontent-%COMP%] .preview-label[_ngcontent-%COMP%]{font-size:12px;font-weight:600;text-transform:uppercase;color:var(--mat-app-on-surface-variant, #757575);margin-bottom:8px;letter-spacing:.5px}.preview-section[_ngcontent-%COMP%] .preview-text[_ngcontent-%COMP%]{font-size:16px;line-height:1.6;color:var(--mat-app-on-surface, #212121);white-space:pre-wrap}.preview-section[_ngcontent-%COMP%] .preview-explanation[_ngcontent-%COMP%]{padding:12px;background-color:#2196f31a;border-left:3px solid var(--mat-app-primary, #1976d2);border-radius:4px;font-size:14px;line-height:1.5;color:var(--mat-app-on-surface, #212121)}.preview-meta[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;gap:8px}.preview-badge[_ngcontent-%COMP%]{display:inline-flex;align-items:center;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:500}.preview-badge.type-badge[_ngcontent-%COMP%]{background-color:#2196f31a;color:#2196f3}.preview-badge.difficulty-badge.difficulty-easy[_ngcontent-%COMP%]{background-color:#4caf501a;color:#4caf50}.preview-badge.difficulty-badge.difficulty-medium[_ngcontent-%COMP%]{background-color:#ff98001a;color:#ff9800}.preview-badge.difficulty-badge.difficulty-hard[_ngcontent-%COMP%]{background-color:#f443361a;color:#f44336}.preview-badge.points-badge[_ngcontent-%COMP%]{background-color:#9c27b01a;color:#9c27b0}.preview-options[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:8px}.preview-option[_ngcontent-%COMP%]{display:flex;align-items:center;gap:12px;padding:12px;background-color:var(--mat-app-surface-variant, #f5f5f5);border-radius:8px;transition:all .2s ease}.preview-option[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{font-size:20px;width:20px;height:20px;color:var(--mat-app-on-surface-variant, #757575)}.preview-option[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{flex:1;font-size:14px;color:var(--mat-app-on-surface, #212121)}.preview-option.correct[_ngcontent-%COMP%]{background-color:#4caf501a;border:1px solid rgba(76,175,80,.3)}.preview-option.correct[_ngcontent-%COMP%] mat-icon[_ngcontent-%COMP%]{color:#4caf50}.preview-option.correct[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{font-weight:500}.preview-tags[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;gap:8px}.preview-tag[_ngcontent-%COMP%]{display:inline-block;padding:4px 12px;background-color:var(--mat-app-surface-variant, #f5f5f5);border-radius:12px;font-size:12px;color:var(--mat-app-on-surface, #212121)}.preview-access[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;gap:8px}.access-badge[_ngcontent-%COMP%]{display:inline-block;padding:4px 12px;border-radius:12px;font-size:12px;font-weight:500}.access-badge.public[_ngcontent-%COMP%]{background-color:#4caf501a;color:#4caf50;border:1px solid rgba(76,175,80,.3)}.access-badge.private[_ngcontent-%COMP%]{background-color:#9e9e9e1a;color:#9e9e9e;border:1px solid rgba(158,158,158,.3)}.access-badge.guest[_ngcontent-%COMP%]{background-color:#2196f31a;color:#2196f3;border:1px solid rgba(33,150,243,.3)}.loading-card[_ngcontent-%COMP%]{min-height:400px;display:flex;align-items:center;justify-content:center}.loading-container[_ngcontent-%COMP%]{display:flex;flex-direction:column;align-items:center;gap:16px;color:var(--mat-app-on-surface-variant, #757575)}.loading-container[_ngcontent-%COMP%] .loading-icon[_ngcontent-%COMP%]{font-size:48px;width:48px;height:48px;color:var(--mat-app-primary, #1976d2);animation:_ngcontent-%COMP%_spin 2s linear infinite}.loading-container[_ngcontent-%COMP%] p[_ngcontent-%COMP%]{margin:0;font-size:16px}@keyframes _ngcontent-%COMP%_spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (prefers-color-scheme: dark){.preview-option[_ngcontent-%COMP%]{background-color:#ffffff0d}.preview-option.correct[_ngcontent-%COMP%]{background-color:#4caf5026}.preview-explanation[_ngcontent-%COMP%]{background-color:#2196f326}.preview-tag[_ngcontent-%COMP%], .access-badge.private[_ngcontent-%COMP%]{background-color:#ffffff0d}.form-error[_ngcontent-%COMP%]{background-color:#f4433626}}"]})};export{Kt as AdminQuestionFormComponent};