PageSourceSearch

https://thescope180.com/static/js/8405.c03a9390.chunk.js

js thescope180.com collected 2026-10-04 01:57:28 UTC 72,528 bytes, 3 lines download raw bytes

1/*! For license information please see 8405.c03a9390.chunk.js.LICENSE.txt */
2"use strict";(self.webpackChunkthescope360_app=self.webpackChunkthescope360_app||[]).push([[6099,8405,8480],{298(e,t,s){s.d(t,{aN:()=>c,bN:()=>n,yI:()=>d});var r=s(89379),a=s(91729),l=s(55472);const o=e=>e?"string"===typeof e?e:"object"===typeof e&&e.text?e.text:"":"";function i(e){return Array.isArray(e)?e.map((e,t)=>function(e,t){const s=e.id||e.questionId||"q".concat(t+1);if(e.optionA||e.optionB)return(0,r.A)((0,r.A)({},e),{},{id:s});if(Array.isArray(e.options)){const t={},a=["A","B","C","D"];e.options.forEach((e,s)=>{s<4&&(t["option".concat(a[s])]="string"===typeof e?e:e.text||e.label||String(e))});let l=e.correctAnswer||e.answer||e.correct;if("number"===typeof l)l=a[l]||"A";else if("string"===typeof l&&l.length>1){const t=e.options.findIndex(e=>("string"===typeof e?e:e.text||e.label)===l);l=t>=0?a[t]:l}return(0,r.A)((0,r.A)({id:s,question:e.question||e.text||e.prompt||""},t),{},{correctAnswer:l||"A",explanation:e.explanation||e.rationale||""})}return(0,r.A)((0,r.A)({},e),{},{id:s})}(e,t)):[]}function n(e,t,s){let r=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;const a="learningTools"===t?function(e){return((e.courseGeneration||e.courseGenerationv||{}).modules||e.modules||[]).map((e,t)=>{var s;const r=(e.lessons||[]).map((e,t)=>{var s;return{index:t,title:e.title||"Lesson ".concat(t+1),content:o(e.content)||"",videoUrl:(null===(s=e.video)||void 0===s?void 0:s.videoUrl)||e.videoUrl||"",audioUrl:e.audioUrl||"",keyTerms:e.keyTerms||e.key_terms||[],keyTakeaways:e.keyTakeaways||e.key_takeaways||[],resources:e.resources||[],quizQuestions:i(e.quiz?Array.isArray(e.quiz)?e.quiz:e.quiz.questions||[e.quiz]:e.quizQuestions||[]),caseStudy:e.caseStudy||"",reflectionQuestion:e.reflectionQuestion||"",objective:e.objective||""}});return{index:t,title:e.title||"Module ".concat(t+1),description:o(e.description)||o(e.focus)||"",estimatedMinutes:e.estimatedMinutes||e.durationMinutes||null,videoUrl:(null===(s=e.video)||void 0===s?void 0:s.videoUrl)||e.videoUrl||"",moduleReading:e.moduleReading||null,lessons:r}})}(e):function(e){var t;const s=e.modules||[],r=(null===(t=e.courseGeneration)||void 0===t?void 0:t.modules)||[];return s.map((e,t)=>{var s;const a=r[t]||{},l=a.lessons||[],n=(e.lessons||[]).map((e,t)=>{var s;const r=l[t]||{};return{index:t,title:e.title||"Lesson ".concat(t+1),content:o(e.readingContent)||o(e.content)||"",videoUrl:e.videoUrl||(null===(s=e.video)||void 0===s?void 0:s.videoUrl)||"",audioUrl:e.audioUrl||"",keyTerms:e.keyTerms||e.key_terms||[],keyTakeaways:e.keyTakeaways||e.key_takeaways||[],resources:e.resources||[],quizQuestions:i(e.quizQuestions||e.quiz||[]),caseStudy:e.caseStudy||r.caseStudy||"",reflectionQuestion:e.reflectionQuestion||r.reflectionQuestion||"",objective:e.objective||r.objective||""}});return{index:t,title:e.title||"Module ".concat(t+1),description:o(e.description)||o(e.focus)||"",estimatedMinutes:e.estimatedMinutes||e.durationMinutes||null,videoUrl:e.videoUrl||(null===(s=e.video)||void 0===s?void 0:s.videoUrl)||"",moduleReading:e.moduleReading||a.moduleReading||null,lessons:n}})}(e);return{id:s,title:e.title||e.courseTitle||e.name||"",description:o(e.description)||o(e.courseDescription)||"",slug:e.slug||"",coverImage:e.coverImage||e.imageUrl||"",introVideoUrl:e.introVideoUrl||e.introVideo||e.previewVideo||"",status:e.status||e.workflowStatus||"draft",_sourceCollection:t,_sourceDocId:s,_sourceUserId:r,_hasSubcollections:"courses"===t,modules:a}}function d(e,t){const{modules:s,title:a,description:l,slug:o,coverImage:i,status:n}=e,d={title:a,description:l,slug:o,coverImage:i,imageUrl:i,status:n};if("learningTools"===t){const e=s.map(e=>({title:e.title,description:e.description,estimatedMinutes:e.estimatedMinutes,videoUrl:e.videoUrl||"",lessons:e.lessons.map(e=>{var t;const s={title:e.title,content:e.content,videoUrl:e.videoUrl||"",audioUrl:e.audioUrl||"",keyTerms:e.keyTerms||[],keyTakeaways:e.keyTakeaways||[],resources:e.resources||[]};return(null===(t=e.quizQuestions)||void 0===t?void 0:t.length)>0&&(s.quiz=e.quizQuestions),s})}));return(0,r.A)((0,r.A)({},d),{},{courseGeneration:{modules:e}})}const c=s.map(e=>
2({title:e.title,description:e.description,estimatedMinutes:e.estimatedMinutes,videoUrl:e.videoUrl||"",lessons:e.lessons.map(e=>({title:e.title,readingContent:e.content,content:e.content,videoUrl:e.videoUrl||"",audioUrl:e.audioUrl||"",keyTerms:e.keyTerms||[],keyTakeaways:e.keyTakeaways||[],resources:e.resources||[],quizQuestions:e.quizQuestions||[]}))}));return(0,r.A)((0,r.A)({},d),{},{modules:c})}async function c(e,t){let s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;const r=["MyCourses","TheScopeSkills"].includes(t);if(r&&!s)return console.error("User subcollection requires userId"),null;const o=r?(0,l.rJ)(a.db,"users",s,t):(0,l.rJ)(a.db,t);let i=null,d=null;try{const t=(0,l.P)(o,(0,l._M)("slug","==",e),(0,l.AB)(1)),s=await(0,l.GG)(t);s.empty||(i=s.docs[0].data(),d=s.docs[0].id)}catch(c){console.warn("Slug query failed:",c)}if(!i)try{const o=r?(0,l.doc)(a.db,"users",s,t,e):(0,l.doc)(a.db,t,e),n=await(0,l.getDoc)(o);n.exists()&&(i=n.data(),d=n.id)}catch(c){console.warn("Direct ID lookup failed:",c)}return i?n(i,t,d,s):null}},4596(e,t,s){s.d(t,{A:()=>r});const r=(0,s(77784).A)("pen-line",[["path",{d:"M12 20h9",key:"t2du7b"}],["path",{d:"M16.376 3.622a1 1 0 0 1 3.002 3.002L7.368 18.635a2 2 0 0 1-.855.506l-2.872.838a.5.5 0 0 1-.62-.62l.838-2.872a2 2 0 0 1 .506-.854z",key:"1ykcvy"}]])},8405(e,t,s){s.r(t),s.d(t,{default:()=>W});var r=s(89379),a=s(65043),l=s(45029),o=s(91729),i=s(52395),n=s(55472),d=s(8729),c=s(298);function u(e,t){return e?e.length>t?e.slice(0,t)+"...":e:""}var x=s(37719),g=s(40614),p=s(4596),m=s(71360),h=s(9855);const b=(0,s(77784).A)("arrow-up-down",[["path",{d:"m21 16-4 4-4-4",key:"f6ql7i"}],["path",{d:"M17 20V4",key:"1ejh1v"}],["path",{d:"m3 8 4-4 4 4",key:"11wl7u"}],["path",{d:"M7 4v16",key:"1glfcx"}]]);var y=s(82054),v=s(22024),f=s(70579);function k(e){let{open:t,summary:s,onConfirm:r,onCancel:a,loading:l=!1}=e;if(!t||!s)return null;const{edits:o=[],additions:i=[],deletions:n=[],reorders:d=[],total:c=0}=s;return(0,f.jsxs)("div",{className:"fixed inset-0 z-[9999] flex items-center justify-center p-4",onClick:e=>{e.target!==e.currentTarget||l||null===a||void 0===a||a()},children:[(0,f.jsx)("div",{className:"absolute inset-0 bg-black/60 backdrop-blur-sm"}),(0,f.jsxs)("div",{className:"relative w-full max-w-lg rounded-2xl bg-slate-800 border border-slate-700 shadow-2xl overflow-hidden",children:[(0,f.jsxs)("div",{className:"flex items-center justify-between px-5 pt-5 pb-3",children:[(0,f.jsxs)("div",{className:"flex items-center gap-3",children:[(0,f.jsx)("div",{className:"p-2 rounded-xl bg-amber-500/10",children:(0,f.jsx)(x.A,{size:18,className:"text-amber-500"})}),(0,f.jsxs)("div",{children:[(0,f.jsx)("h3",{className:"text-sm font-bold text-white",children:"Review Changes Before Saving"}),(0,f.jsxs)("p",{className:"text-[11px] text-slate-400 mt-0.5",children:[c," change",1!==c?"s":""," detected"]})]})]}),(0,f.jsx)("button",{onClick:a,disabled:l,className:"p-1.5 rounded-lg hover:bg-slate-700 transition-colors disabled:opacity-50",children:(0,f.jsx)(g.A,{size:16,className:"opacity-50"})})]}),(0,f.jsxs)("div",{className:"px-5 pb-4 max-h-[50vh] overflow-y-auto space-y-4",children:[o.length>0&&(0,f.jsxs)("div",{children:[(0,f.jsxs)("div",{className:"flex items-center gap-2 mb-2",children:[(0,f.jsx)(p.A,{size:14,className:"text-blue-400"}),(0,f.jsxs)("span",{className:"text-xs font-bold text-blue-400 uppercase tracking-wider",children:["Edits (",o.length,")"]})]}),(0,f.jsx)("div",{className:"space-y-1.5",children:o.map((e,t)=>(0,f.jsxs)("div",{className:"p-2 bg-blue-500/5 border border-blue-500/10 rounded-lg",children:[(0,f.jsx)("p",{className:"text-xs font-medium text-slate-300",children:e.label}),(0,f.jsxs)("div",{className:"flex items-start gap-2 mt-1 text-[11px]",children:[(0,f.jsx)("span",{className:"text-red-400 line-through flex-1 break-all",children:e.oldValue||"(empty)"}),(0,f.jsx)("span",{className:"text-slate-600",children:"\u2192"}),(0,f.jsx)("span",{className:"text-emerald-400 flex-1 break-all",children:e.newValue||"(empty)"})]})]},t))})]}),i.length>0&&(0,f.jsxs)("div",{children:[(0,f.jsxs)("div",{className:"flex items-center gap-2 mb-2",children:[(0,f.jsx)(m.A,{size:14,className:"text-emerald-400"}),(0,f.jsxs)("span",{className:"text-xs font-bold text-emerald-400 uppercase tracking-wider",children:["Additions (",i.length,")"]})]}),(0,f.jsx)("div",{className:"space-y-1",children:i.map((e,t)=>(0,f.jsx)("div",{className:"p-2 bg-emerald-500/5 border border-emerald-500/10 rounded-lg",children:(0,f.jsx)("p",{className:"text-xs text-emerald-300",children:e.label})},t))})]}),n.length>0&&(0,f.jsxs)("div",{children:[(0,f.jsxs)("div",{className:"flex items-center gap-2 mb-2",children:[(0,f.jsx)(h.A,{size:14,className:"text-red-400"}),(0,f.jsxs)("span",{className:"text-xs font-bold text-red-400 uppercase tracking-wider",children:["Deletions (",n.length,")"]})]}),(0,f.jsx)("div",{className:"space-y-1",children:n.map((e,t)=>(0,f.jsx)("div",{className:"p-2 bg-red-500/5 border border-red-500/10 rounded-lg",children:(0,f.jsx)("p",{className:"text-xs text-red-300",children:e.label})},t))})]}),d.length>0&&(0,f.jsxs)("div",{children:[(0,f.jsxs)("div",{className:"flex items-center gap-2 mb-2",children:[(0,f.jsx)(b,{size:14,className:"text-purple-400"}),(0,f.jsxs)("span",{className:"text-xs font-bold text-purple-400 uppercase tracking-wider",children:["Reorders (",d.length,")"]})]}),(0,f.jsx)("div",{className:"space-y-1",children:d.map((e,t)=>(0,f.jsx)("div",{className:"p-2 bg-purple-500/5 border border-purple-500/10 rounded-lg",children:(0,f.jsx)("p",{className:"text-xs text-purple-300",children:e.path})},t))})]}),0===c&&(0,f.jsxs)("div",{className:"text-center py-6",children:[(0,f.jsx)(y.A,{className:"mx-auto mb-2 text-emerald-500",size:24}),(0,f.jsx)("p",{className:"text-sm text-slate-400",children:"No changes detected"})]})]}),(0,f.jsxs)("div",{className:"flex items-center justify-end gap-3 px-5 pb-5 border-t border-slate-700 pt-4",children:[(0,f.jsx)("button",{onClick:a,disabled:l,className:"px-4 py-2 rounded-xl text-xs font-bold bg-slate-700 hover:bg-slate-600 transition-colors disabled:opacity-50",children:"Go Back"}),(0,f.jsxs)("button",{onClick:r,disabled:l,className:"flex items-center gap-2 px-4 py-2 rounded-xl text-xs font-bold text-black bg-yellow-500 hover:bg-yellow-400 transition-colors disabled:opacity-50",children:[l&&(0,f.jsx)(v.A,{size:14,className:"animate-spin"}),"Confirm Save (",c," change",1!==c?"s":"",")"]})]})]})]})}var j=s(50516),w=s(65469),A=s(35087),N=s(94651),z=s(70764),C=s(88693),M=s(35746),U=s(55731),S=s(56099),q=s(42043),T=s(41680),I=s(92382),D=s(38326),L=s(57856),O=s(25040),V=s(70067),Q=s(64830),P=s(84259),E=s(9333),G=s(22633),R=s(99996),_=s(22626),B=s(76955),F=s(82300),J=s(77819),H=s(23768);const K={courses:{label:"Course",defaultFields:["modules","durationMinutes","pmbokEdition"]},learningTools:{label:"Learning Tool",defaultFields:[]},generatedCourses:{label:"Generated Course",defaultFields:[]}},$=e=>null==e?"":"string"===typeof e?e:"number"===typeof e?String(e):"object"===typeof e&&e.text?String(e.text):"object"===typeof e?JSON.stringify(e):String(e);function W(){var e,t,s,x,p,b,v,W;const{contentId:Y}=(0,l.g)(),[Z]=(0,l.ok)(),X=(0,l.Zp)(),ee=(0,l.zy)(),{isAdmin:te,isSpecialist:se,currentUser:re}=(0,d.A)(),ae="new"===Y,le=Z.get("col")||"courses",oe=Z.get("uid")||null,ie=ee.pathname.startsWith("/specialist")?"/specialist":"/admin",[ne,de]=(0,a.useState)(!ae),[ce,ue]=(0,a.useState)(!1),[xe,ge]=(0,a.useState)(le),[pe,me]=(0,a.useState)(!0),[he,be]=(0,a.useState)({basic:!0,media:!0,modules:!1}),[ye,ve]=(0,a.useState)({}),[fe,ke]=(0,a.useState)({}),[je,we]=(0,a.useState)(null),[Ae,Ne]=(0,a.useState)(!1),[ze,Ce]=(0,a.useState)(null),Me=function(){const[e,t]=(0,a.useState)([]),s=(0,a.useRef)(null),r=(0,a.useCallback)(e=>{s.current=JSON.parse(JSON.stringify(e)),t([])},[]),l=(0,a.useCallback)((e,s,r,a)=>{t(t=>{const l=t.findIndex(t=>t.path===e),o={path:e,type:s,oldValue:r,newValue:a,timestamp:Date.now()};if(l>=0){const e=[...t];return e[l]=o,e}return[...t,o]})},[]),o=(0,a.useCallback)(t=>{const r=s.current,a=[],l=[],o=[];if(!r)return{edits:a,additions:l,deletions:o,reorders:[],total:0};
2["title","description","slug","status","coverImage"].forEach(e=>{const s=r[e]||"",l=t[e]||"";s!==l&&a.push({path:e,label:e.charAt(0).toUpperCase()+e.slice(1),oldValue:u(String(s),80),newValue:u(String(l),80)})});const i=r.modules||[],n=t.modules||[];if(n.length>i.length)for(let e=i.length;e<n.length;e++)l.push({path:"modules.".concat(e),label:"Module ".concat(e+1,": ").concat(n[e].title||"Untitled")});if(n.length<i.length)for(let e=n.length;e<i.length;e++)o.push({path:"modules.".concat(e),label:"Module ".concat(e+1,": ").concat(i[e].title||"Untitled")});const d=Math.min(i.length,n.length);for(let e=0;e<d;e++){const t=i[e],s=n[e];["title","description","videoUrl"].forEach(r=>{const l=(t[r]||"").toString(),o=(s[r]||"").toString();l!==o&&a.push({path:"modules.".concat(e,".").concat(r),label:"Module ".concat(e+1," \u2192 ").concat(r),oldValue:u(l,60),newValue:u(o,60)})});const r=t.lessons||[],d=s.lessons||[];if(d.length>r.length)for(let a=r.length;a<d.length;a++)l.push({path:"modules.".concat(e,".lessons.").concat(a),label:"Module ".concat(e+1," \u2192 Lesson ").concat(a+1,": ").concat(d[a].title||"Untitled")});if(d.length<r.length)for(let a=d.length;a<r.length;a++)o.push({path:"modules.".concat(e,".lessons.").concat(a),label:"Module ".concat(e+1," \u2192 Lesson ").concat(a+1,": ").concat(r[a].title||"Untitled")});const c=Math.min(r.length,d.length);for(let i=0;i<c;i++){const t=r[i],s=d[i];["title","content","videoUrl"].forEach(r=>{const l=(t[r]||"").toString(),o=(s[r]||"").toString();l!==o&&a.push({path:"modules.".concat(e,".lessons.").concat(i,".").concat(r),label:"M".concat(e+1,"/L").concat(i+1," \u2192 ").concat(r),oldValue:u(l,50),newValue:u(o,50)})});const n=(t.quizQuestions||[]).length,c=(s.quizQuestions||[]).length;c>n?l.push({path:"modules.".concat(e,".lessons.").concat(i,".quizQuestions"),label:"M".concat(e+1,"/L").concat(i+1," \u2192 ").concat(c-n," quiz question(s) added")}):c<n&&o.push({path:"modules.".concat(e,".lessons.").concat(i,".quizQuestions"),label:"M".concat(e+1,"/L").concat(i+1," \u2192 ").concat(n-c," quiz question(s) removed")});const x=(t.keyTerms||[]).length,g=(s.keyTerms||[]).length;g>x?l.push({path:"modules.".concat(e,".lessons.").concat(i,".keyTerms"),label:"M".concat(e+1,"/L").concat(i+1," \u2192 ").concat(g-x," key term(s) added")}):g<x&&o.push({path:"modules.".concat(e,".lessons.").concat(i,".keyTerms"),label:"M".concat(e+1,"/L").concat(i+1," \u2192 ").concat(x-g," key term(s) removed")})}}const c=e.filter(e=>"reorder"===e.type),x=a.length+l.length+o.length+c.length;return{edits:a,additions:l,deletions:o,reorders:c,total:x}},[e]),i=(0,a.useCallback)(e=>o(e).total>0,[o]),n=(0,a.useCallback)(()=>{t([])},[]);return{changeset:e,trackChange:l,takeSnapshot:r,computeChangeSummary:o,hasChanges:i,clearChangeset:n}}(),[Ue,Se]=(0,a.useState)(""),[qe,Te]=(0,a.useState)(!1),[Ie,De]=(0,a.useState)(0),[Le,Oe]=(0,a.useState)(!1),[Ve,Qe]=(0,a.useState)(""),[Pe,Ee]=(0,a.useState)(""),[Ge,Re]=(0,a.useState)(!1),[_e,Be]=(0,a.useState)(!1),[Fe,Je]=(0,a.useState)(!1),[He,Ke]=(0,a.useState)(""),[$e,We]=(0,a.useState)(!1),[Ye,Ze]=(0,a.useState)({title:"",description:"",slug:"",price:0,status:"draft",visibility:"public",imageUrl:"",coverImage:"",previewVideoUrl:"",mainVideoUrl:"",category:"",categoryGroup:"",durationMinutes:"",pmbokEdition:"",learningOutcomes:[],objectives:[],modules:[]}),Xe="MyCourses"===le||"personal"===Ye.visibility,[et,tt]=(0,a.useState)({});(0,a.useEffect)(()=>{if(ae)return;(async()=>{de(!0);try{const t="MyCourses"===le||"TheScopeSkills"===le,s=oe||(null===re||void 0===re?void 0:re.uid),a=t?(0,n.doc)(o.db,"users",s,le,Y):(0,n.doc)(o.db,le,Y),l=await(0,n.getDoc)(a);if(l.exists()){const a=l.data(),i=(0,c.bN)(a,le,Y,t?s:null),d=(a.learningOutcomes||[]).map(e=>"string"===typeof e?{text:e,videoUrl:""}:{text:$((null===e||void 0===e?void 0:e.text)||e),videoUrl:(null===e||void 0===e?void 0:e.videoUrl)||""});["title","description","slug","category","categoryGroup","pmbokEdition","previewVideoUrl","mainVideoUrl","imageUrl","coverImage"].forEach(e=>{a[e]&&"object"===typeof a[e]&&(a[e]=$(a[e]))});const u=Array.isArray(a.objectives)?a.objectives.map(e=>"string"===typeof e?e:$(e)):[];if(Ze(e=>(0,r.A)((0,r.A)((0,r.A)({},e),a),{},{modules:i.modules,learningOutcomes:d,objectives:u,status:a.status||a.workflowStatus||"draft"},"MyCourses"===le?{visibility:"personal"}:{})),ge("MyCourses"===le?"courses":K[le]?le:"courses"),0===(i.modules||[]).length&&(a.title||a.description)&&(Qe("".concat($(a.title)||"").concat(a.description?" \u2014 "+$(a.description):"")),Ee(a.durationMinutes||"60")),Me.takeSnapshot((0,r.A)((0,r.A)({},a),{},{modules:i.modules,learningOutcomes:d,objectives:u,status:a.status||a.workflowStatus||"draft"})),a.linkedProductId)Se(a.linkedProductId);else if(a.slug)try{const e=await(0,n.GG)((0,n.P)((0,n.rJ)(o.db,"productsAndServices"),(0,n._M)("slug","==",a.slug)));e.empty||Se(e.docs[0].id)}catch(e){console.warn("Could not auto-detect linked product:",e)}}else H.Ay.error("Content not found"),X("".concat(ie,"/content"))}catch(t){console.error("Error loading content:",t),H.Ay.error("Failed to load content")}finally{de(!1)}})()},[Y,le,oe,ae,X,ie]),(0,a.useEffect)(()=>
2{if(ae&&Ye.title&&!Ye.slug){const e=Ye.title.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/(^-|-$)/g,"");Ze(t=>(0,r.A)((0,r.A)({},t),{},{slug:e}))}},[Ye.title,ae]),(0,a.useEffect)(()=>{if("personal"!==Ye.visibility||null===re||void 0===re||!re.uid)return;(async()=>{Oe(!0);try{const e=new Date,t=new Date(e.getFullYear(),e.getMonth(),1),s=(0,n.rJ)(o.db,"users",re.uid,"MyCourses"),r=(0,n.P)(s,(0,n._M)("createdAt",">=",n.Dc.fromDate(t))),a=await(0,n.GG)(r);De(a.size)}catch(e){console.error("Error fetching personal quota:",e)}finally{Oe(!1)}})()},[Ye.visibility,null===re||void 0===re?void 0:re.uid]);const st=(0,a.useCallback)(()=>{var e,t;const s={};return null!==(e=Ye.title)&&void 0!==e&&e.trim()||(s.title="Title is required"),null!==(t=Ye.slug)&&void 0!==t&&t.trim()||(s.slug="Slug is required"),Ye.slug&&!/^[a-z0-9-]+$/.test(Ye.slug)&&(s.slug="Slug must be lowercase letters, numbers, and dashes only"),tt(s),0===Object.keys(s).length},[Ye]),rt=function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;if(st())return!ae&&Me.hasChanges(Ye)?(Ce(e),void Ne(!0)):void at(e);H.Ay.error("Please fix the errors before saving")},at=async function(){let e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null;if(st()){ue(!0);try{const s="personal"===Ye.visibility,a=s?"MyCourses":le||xe,l=(0,c.yI)((0,r.A)((0,r.A)({},Ye),{},{modules:Ye.modules||[]}),a),i=(0,r.A)((0,r.A)((0,r.A)({},Ye),l),{},{status:e||Ye.status,workflowStatus:e||Ye.status,updatedAt:new Date,updatedBy:null===re||void 0===re?void 0:re.uid},!s&&Ue?{linkedProductId:Ue}:{});if(delete i._sourceCollection,delete i._sourceDocId,delete i._sourceUserId,s){if(ae){const e=new Date,t=new Date(e.getFullYear(),e.getMonth(),1),s=(0,n.rJ)(o.db,"users",re.uid,"MyCourses"),r=(0,n.P)(s,(0,n._M)("createdAt",">=",n.Dc.fromDate(t))),a=await(0,n.GG)(r);if(a.size>=10)return H.Ay.error("You've reached your limit of 10 personal courses this month"),void ue(!1);i.createdAt=new Date,i.createdBy=null===re||void 0===re?void 0:re.uid;const l=await(0,n.gS)((0,n.rJ)(o.db,"users",re.uid,"MyCourses"),i);De(a.size+1),H.Ay.success("Personal course created!"),X("".concat(ie,"/content/edit/").concat(l.id,"?col=MyCourses"))}else{const e=oe||re.uid;await(0,n.updateDoc)((0,n.doc)(o.db,"users",e,"MyCourses",Y),i),Ze(e=>(0,r.A)((0,r.A)({},e),{},{status:i.status})),H.Ay.success("Personal course saved!")}}else if(ae){i.createdAt=new Date,i.createdBy=null===re||void 0===re?void 0:re.uid;const e=await(0,n.gS)((0,n.rJ)(o.db,xe),i);H.Ay.success("Content created!"),X("".concat(ie,"/content/edit/").concat(e.id,"?col=").concat(xe))}else{const e=le||xe;if("TheScopeSkills"===e){const t=oe||re.uid;await(0,n.updateDoc)((0,n.doc)(o.db,"users",t,e,Y),i)}else await(0,n.updateDoc)((0,n.doc)(o.db,e,Y),i);if(Ze(e=>(0,r.A)((0,r.A)({},e),{},{status:i.status})),Ue){Te(!0);try{const e=(0,n.doc)(o.db,"productsAndServices",Ue);if((await(0,n.getDoc)(e)).exists()){const t={};i.title&&(t.title=i.title),i.description&&(t.description=i.description),void 0!==i.price&&(t.price=i.price),i.slug&&(t.slug=i.slug),i.imageUrl&&(t.imageUrl=i.imageUrl),i.coverImage&&(t.coverImage=i.coverImage),i.status&&(t.status=i.status),t.updatedAt=new Date,await(0,n.updateDoc)(e,t),H.Ay.success("Linked product synced!")}else H.Ay.error("Linked product not found \u2014 check the ID")}catch(t){console.error("Error syncing to productsAndServices:",t),H.Ay.error("Saved content but failed to sync linked product")}finally{Te(!1)}}H.Ay.success("Content saved!")}Me.takeSnapshot(Ye),Me.clearChangeset(),Ne(!1)}catch(s){console.error("Error saving:",s),H.Ay.error("Failed to save")}finally{ue(!1)}}else H.Ay.error("Please fix the errors before saving")},lt=(e,t)=>{Ze(s=>(0,r.A)((0,r.A)({},s),{},{[e]:t})),et[e]&&tt(t=>(0,r.A)((0,r.A)({},t),{},{[e]:null}))},ot=(e,t,s)=>{Ze(a=>{const l=[...a[e]||[]];return l[t]=s,(0,r.A)((0,r.A)({},a),{},{[e]:l})})},it=(e,t,s)=>{Ze(a=>{const l=[...a[e]||[]],o=t+("up"===s?-1:1);return o<0||o>=l.length?a:([l[t],l[o]]=[l[o],l[t]],(0,r.A)((0,r.A)({},a),{},{[e]:l}))})},nt=(e,t,s)=>{Ze(a=>{const l=[...a.modules||[]];return l[e]=(0,r.A)((0,r.A)({},l[e]),{},{[t]:s}),(0,r.A)((0,r.A)({},a),{},{modules:l})})},dt=(e,t,s,a)=>{Ze(l=>{const o=[...l.modules||[]],i=(0,r.A)({},o[e]),n=[...i.lessons||[]];return n[t]=(0,r.A)((0,r.A)({},n[t]),{},{[s]:a}),i.lessons=n,o[e]=i,(0,r.A)((0,r.A)({},l),{},{modules:o})})},ct=(e,t,s)=>{Ze(a=>{const l=[...a.modules||[]],o=(0,r.A)({},l[e]),i=[...o.lessons||[]],n=t+("up"===s?-1:1);return n<0||n>=i.length?a:([i[t],i[n]]=[i[n],i[t]],o.lessons=i,l[e]=o,(0,r.A)((0,r.A)({},a),{},{modules:l}))})},ut=(e,t,s)=>{Ze(a=>{const l=[...a.modules||[]],o=(0,r.A)({},l[e]),i=[...o.lessons||[]],n=(0,r.A)({},i[t]);switch(s){case"video":n.videoUrl=n.videoUrl||"";break;case"text":n.content=n.content||"";break;case"quiz":{const e=[...n.quizQuestions||[]];e.push({id:"q".concat(e.length+1),question:"",optionA:"",optionB:"",optionC:"",optionD:"",correctAnswer:"A",explanation:""}),n.quizQuestions=e;break}case"keyTerm":{const e=[...n.keyTerms||[]];e.push({term:"",definition:""}),n.keyTerms=e;break}}return i[t]=n,o.lessons=i,l[e]=o,(0,r.A)((0,r.A)({},a),{},{modules:l})}),we(null)},xt=(e,t,s,a,l)=>{Ze(o=>{const i=[...o.modules||[]],n=(0,r.A)({},i[e]),d=[...n.lessons||[]],c=(0,r.A)({},d[t]),u=[...c.quizQuestions||[]];return u[s]=(0,r.A)((0,r.A)({},u[s]),{},{[a]:l}),c.quizQuestions=u,d[t]=c,n.lessons=d,i[e]=n,(0,r.A)((0,r.A)({},o),{},{modules:i})})},gt=(e,t,s,a,l)=>{Ze(o=>{const i=[...o.modules||[]],n=(0,r.A)({},i[e]),d=[...n.lessons||[]],c=(0,r.A)({},d[t]),u=[...c.keyTerms||[]];return u[s]=(0,r.A)((0,r.A)({},u[s]),{},{[a]:l}),c.keyTerms=u,d[t]=c,n.lessons=d,i[e]=n,(0,r.A)((0,r.A)({},o),{},{modules:i})})},pt=()=>"courses"===xe||"learningTools"===xe?"/learn/".concat(Ye.slug||"preview"):"/products/".concat(Ye.slug||"preview"),mt=e=>{be(t=>(0,r.A)((0,r.A)({},t),{},{[e]:!t[e]}))};return ne?(0,f.jsx)("div",{className:"min-h-[60vh] flex items-center justify-center",children:(0,f.jsx)(j.A,{className:"animate-spin text-yellow-500",size:32})}):(0,f.jsxs)("div",{className:"min-h-screen text-gray-900 dark:text-white",children:[(0,f.jsx)("header",{className:"sticky top-0 z-50 backdrop-blur-sm border-b border-gray-200 dark:border-white/5 px-6 py-4 bg-white/80 dark:bg-transparent",children:(0,f.jsxs)("div",{className:"max-w-7xl mx-auto flex items-center justify-between",children:[(0,f.jsxs)("div",{className:"flex items-center gap-4",children:[(0,f.jsx)("button",{onClick:()=>X("".concat(ie,"/content")),className:"p-2 hover:bg-gray-100 dark:hover:bg-white/5 rounded-lg transition-colors",children:(0,f.jsx)(w.A,{size:20})}),(0,f.jsxs)("div",{children:[(0,f.jsx)("h1",{className:"text-xl font-bold",children:ae?"Create New Content":Ye.title||"Edit Content"}),(0,f.jsxs)("div",{className:"flex items-center gap-2 mt-1",children:[(0,f.jsx)("span",{className:"text-[10px] font-bold uppercase tracking-wider px-2 py-0.5 rounded-full ".concat("active"===Ye.status||"published"===Ye.status?"bg-emerald-500/20 text-emerald-500":"review"===Ye.status?"bg-amber-500/20 text-amber-500":"bg-slate-500/20 text-gray-500 dark:text-slate-400"),children:Ye.status}),(0,f.jsx)("span",{className:"text-xs text-gray-400 dark:text-slate-500",children:Xe?"Personal Course":null===(e=K[xe])||void 0===e?void 0:e.label})]})]})]}),(0,f.jsxs)("div",{className:"flex items-center gap-3",children:[(0,f.jsxs)("button",{onClick:()=>
2me(!pe),className:"flex items-center gap-2 px-3 py-2 rounded-xl text-sm font-medium transition-colors ".concat(pe?"bg-emerald-500/20 text-emerald-500":"bg-gray-200 dark:bg-white/5 text-gray-500 dark:text-slate-400"),children:[pe?(0,f.jsx)(A.A,{size:16}):(0,f.jsx)(N.A,{size:16}),"Preview"]}),!ae&&Ye.slug&&(0,f.jsx)("button",{onClick:()=>window.open(pt(),"_blank"),className:"p-2.5 bg-gray-100 dark:bg-white/5 hover:bg-gray-200 dark:hover:bg-white/10 rounded-xl transition-colors",title:"Open preview in new tab",children:(0,f.jsx)(z.A,{size:16})}),(0,f.jsxs)("button",{onClick:()=>rt(),disabled:ce,className:"flex items-center gap-2 px-4 py-2.5 bg-gray-100 dark:bg-white/5 hover:bg-gray-200 dark:hover:bg-white/10 rounded-xl font-medium text-sm transition-colors disabled:opacity-50",children:[(0,f.jsx)(C.A,{size:16}),"Save"]}),"draft"===Ye.status&&(0,f.jsxs)("button",{onClick:()=>rt("review"),disabled:ce,className:"flex items-center gap-2 px-4 py-2.5 bg-amber-500 hover:bg-amber-400 text-black rounded-xl font-bold text-sm transition-colors disabled:opacity-50",children:[(0,f.jsx)(M.A,{size:16}),"Submit for Review"]}),"review"===Ye.status&&te&&(0,f.jsxs)("button",{onClick:()=>rt("active"),disabled:ce,className:"flex items-center gap-2 px-4 py-2.5 bg-emerald-500 hover:bg-emerald-400 text-black rounded-xl font-bold text-sm transition-colors disabled:opacity-50",children:[(0,f.jsx)(U.A,{size:16}),"Approve & Publish"]}),"approved"===Ye.status&&te&&(0,f.jsxs)("button",{onClick:()=>rt("active"),disabled:ce,className:"flex items-center gap-2 px-4 py-2.5 bg-emerald-500 hover:bg-emerald-400 text-black rounded-xl font-bold text-sm transition-colors disabled:opacity-50",children:[(0,f.jsx)(U.A,{size:16}),"Publish"]})]})]})}),(0,f.jsxs)("div",{className:"max-w-7xl mx-auto px-6 py-8 ".concat(pe?"grid grid-cols-2 gap-8":""),children:[(0,f.jsxs)("div",{className:"space-y-6 ".concat(pe?"":"max-w-3xl"),children:[ae&&(0,f.jsxs)("div",{className:"bg-gray-50 dark:bg-white/[0.02] border border-gray-200 dark:border-white/5 rounded-2xl p-5",children:[(0,f.jsx)("label",{className:"block text-xs font-bold uppercase tracking-wider text-gray-500 dark:text-slate-400 mb-3",children:"Content Type"}),(0,f.jsx)("div",{className:"grid grid-cols-3 gap-3",children:Object.entries(K).map(e=>{let[t,s]=e;return(0,f.jsx)("button",{onClick:()=>ge(t),className:"p-4 rounded-xl border text-center transition-all ".concat(xe===t?"bg-yellow-500/10 border-yellow-500/50 text-yellow-500":"bg-gray-50 dark:bg-white/[0.02] border-gray-200 dark:border-white/5 text-gray-500 dark:text-slate-400 hover:border-gray-400 dark:hover:border-white/20"),children:(0,f.jsx)("span",{className:"text-sm font-bold",children:s.label})},t)})})]}),(ae||0===(Ye.modules||[]).length)&&(0,f.jsxs)("div",{className:"bg-gradient-to-br from-indigo-500/10 via-purple-500/5 to-transparent border border-indigo-500/20 rounded-2xl p-5",children:[(0,f.jsxs)("div",{className:"flex items-center gap-2 mb-3",children:[(0,f.jsx)(S.A,{className:"text-indigo-400",size:20}),(0,f.jsx)("h3",{className:"font-bold text-indigo-300",children:"Generate with AI"})]}),(0,f.jsx)("p",{className:"text-xs text-gray-500 dark:text-slate-400 mb-4",children:"Describe your topic and AI will generate the title, description, modules, learning outcomes, and a cover image."}),(0,f.jsx)("textarea",{value:Ve,onChange:e=>Qe(e.target.value),rows:3,disabled:Fe,className:"w-full px-4 py-3 bg-gray-100 dark:bg-white/5 border border-gray-300 dark:border-white/10 rounded-xl focus:outline-none focus:border-indigo-500/50 resize-none text-sm disabled:opacity-50",placeholder:"e.g., A beginner-friendly course on Agile project management covering Scrum, Kanban, and hybrid approaches..."}),(0,f.jsxs)("div",{className:"grid grid-cols-2 gap-3 mt-3",children:[(0,f.jsxs)("div",{children:[(0,f.jsx)("label",{className:"block text-xs font-bold uppercase tracking-wider text-gray-500 dark:text-slate-400 mb-1.5",children:"Duration (minutes) *"}),(0,f.jsx)("input",{type:"number",value:Pe,onChange:e=>Ee(e.target.value),disabled:Fe,className:"w-full px-4 py-2.5 bg-gray-100 dark:bg-white/5 border border-gray-300 dark:border-white/10 rounded-xl focus:outline-none focus:border-indigo-500/50 text-sm disabled:opacity-50",placeholder:"60",min:"1"})]}),(0,f.jsxs)("div",{className:"flex flex-col gap-2 pb-1",children:[(0,f.jsxs)("label",{className:"flex items-center gap-2 cursor-pointer select-none",children:[(0,f.jsx)("input",{type:"checkbox",checked:Ge,onChange:e=>Re(e.target.checked),disabled:Fe,className:"w-4 h-4 rounded border-gray-300 dark:border-white/20 bg-gray-100 dark:bg-white/5 text-indigo-500 focus:ring-indigo-500/50"}),(0,f.jsx)("span",{className:"text-sm text-gray-700 dark:text-slate-300",children:"Allow Videos"})]}),(0,f.jsxs)("label",{className:"flex items-center gap-2 cursor-pointer select-none",children:[(0,f.jsx)("input",{type:"checkbox",checked:_e,onChange:e=>Be(e.target.checked),disabled:Fe,className:"w-4 h-4 rounded border-gray-300 dark:border-white/20 bg-gray-100 dark:bg-white/5 text-indigo-500 focus:ring-indigo-500/50"}),(0,f.jsx)("span",{className:"text-sm text-gray-700 dark:text-slate-300",children:"Generate Cover Image"}),(0,f.jsx)("span",{className:"text-[10px] text-gray-400 dark:text-slate-500",children:"\u2014 Gemini AI"})]})]})]}),(0,f.jsxs)("div",{className:"flex items-center justify-between mt-4",children:[(0,f.jsx)("button",{onClick:async()=>
2{if(Ve.trim()&&Pe){Je(!0);try{Ke("outline");const t=await fetch("https://us-central1-thescope360.cloudfunctions.net/generateCourseOutline",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify((0,r.A)({prompt:Ve,courseType:"courses"===xe?"full-course":"learning-tool",durationMinutes:parseInt(Pe)||60},Ge?{includeVideos:!0}:{}))}),s=await t.json();if(!s.success||!s.outline)throw new Error("Outline generation failed");const a=s.outline;Ke("content");const l=await fetch("https://us-central1-thescope360.cloudfunctions.net/generateCourseContent",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({outline:a,courseType:"courses"===xe?"full-course":"learning-tool"})}),n=await l.json();if(!n.success||!n.content)throw new Error("Content generation failed");const d=Ye.imageUrl||Ye.coverImage||"";let c=d;if(!d&&_e){var e;Ke("image");const t=(0,i.httpsCallable)(o.functions,"generateBlogImage"),s=await t({title:a.title,excerpt:a.description});c=(null===(e=s.data)||void 0===e?void 0:e.imageUrl)||""}else Ke("done");const u=Ye.slug||a.title.toLowerCase().replace(/[^a-z0-9]+/g,"-").replace(/(^-|-$)/g,""),x=(n.content.modules||[]).map((e,t)=>({index:t,title:e.title||"",description:e.focus||e.description||"",videoUrl:"",duration:e.durationMinutes?"".concat(e.durationMinutes," min"):"",lessons:(e.lessons||[]).map(e=>(0,r.A)((0,r.A)({},e),{},{content:e.content||"",readingContent:e.content||"",keyTerms:e.keyTerms||[],quizQuestions:e.quizQuestions||[],resources:e.resources||[]}))}));Ze(e=>(0,r.A)((0,r.A)((0,r.A)({},e),{},{title:e.title||a.title||"",description:e.description||a.description||"",slug:u,price:e.price||("courses"===xe?25:0),learningOutcomes:(a.objectives||[]).map(e=>"string"===typeof e?{text:e,videoUrl:""}:e),modules:x},c?{imageUrl:c,coverImage:c}:{}),{},{durationMinutes:Pe||(a.estimatedMinutes?String(a.estimatedMinutes):""),courseGeneration:n.content})),be({basic:!0,media:!0,modules:!0}),H.Ay.success("Content generated! Review and save.")}catch(t){console.error("AI generation failed:",t),H.Ay.error("AI generation failed: "+t.message)}finally{Je(!1),Ke("")}}},disabled:Fe||!Ve.trim()||!Pe,className:"flex items-center gap-2 px-5 py-2.5 bg-indigo-500 hover:bg-indigo-400 disabled:bg-indigo-500/30 text-white rounded-xl font-bold text-sm transition-all disabled:cursor-not-allowed",children:Fe?(0,f.jsxs)(f.Fragment,{children:[(0,f.jsx)(q.A,{size:16,className:"animate-spin"}),"outline"===He&&"Generating outline...","content"===He&&"Creating content (lessons, quizzes, key terms)...","image"===He&&"Generating cover image...","done"===He&&"Finis
2hing up..."]}):(0,f.jsxs)(f.Fragment,{children:[(0,f.jsx)(S.A,{size:16}),"Generate with AI"]})}),Fe&&(0,f.jsxs)("div",{className:"flex items-center gap-2 text-xs text-gray-500 dark:text-slate-400",children:[(0,f.jsxs)("div",{className:"flex gap-1",children:[(0,f.jsx)("div",{className:"w-2 h-2 rounded-full transition-colors ".concat("outline"===He?"bg-indigo-400 animate-pulse":"content"===He||"image"===He?"bg-emerald-400":"bg-slate-600")}),(0,f.jsx)("div",{className:"w-2 h-2 rounded-full transition-colors ".concat("content"===He?"bg-indigo-400 animate-pulse":"image"===He?"bg-emerald-400":"bg-slate-600")}),(0,f.jsx)("div",{className:"w-2 h-2 rounded-full transition-colors ".concat("image"===He?"bg-indigo-400 animate-pulse":"bg-slate-600")})]}),"Step ","outline"===He?"1":"content"===He?"2":"3"," of 3"]})]})]}),(0,f.jsxs)("div",{className:"bg-gray-50 dark:bg-white/[0.02] border border-gray-200 dark:border-white/5 rounded-2xl overflow-hidden",children:[(0,f.jsxs)("button",{onClick:()=>mt("basic"),className:"w-full flex items-center justify-between p-5 hover:bg-gray-100 dark:hover:bg-white/[0.02] transition-colors",children:[(0,f.jsxs)("div",{className:"flex items-center gap-3",children:[(0,f.jsx)(T.A,{className:"text-gray-500 dark:text-slate-400",size:20}),(0,f.jsx)("span",{className:"font-bold",children:"Basic Information"})]}),he.basic?(0,f.jsx)(I.A,{size:20}):(0,f.jsx)(D.A,{size:20})]}),he.basic&&(0,f.jsxs)("div",{className:"px-5 pb-5 space-y-4 border-t border-gray-200 dark:border-white/5 pt-4",children:[(0,f.jsxs)("div",{children:[(0,f.jsx)("label",{className:"block text-xs font-bold uppercase tracking-wider text-gray-500 dark:text-slate-400 mb-2",children:"Title *"}),(0,f.jsx)("input",{type:"text",value:Ye.title,onChange:e=>lt("title",e.target.value),className:"w-full px-4 py-3 bg-gray-100 dark:bg-white/5 border rounded-xl focus:outline-none focus:border-yellow-500/50 ".concat(et.title?"border-red-500":"border-gray-300 dark:border-white/10"),placeholder:"Enter content title"}),et.title&&(0,f.jsx)("p",{className:"text-red-500 text-xs mt-1",children:et.title})]}),(0,f.jsxs)("div",{children:[(0,f.jsx)("label",{className:"block text-xs font-bold uppercase tracking-wider text-gray-500 dark:text-slate-400 mb-2",children:"URL Slug *"}),(0,f.jsxs)("div",{className:"flex items-center",children:[(0,f.jsx)("span",{className:"text-gray-400 dark:text-slate-500 text-sm mr-2",children:"/learn/"}),(0,f.jsx)("input",{type:"text",value:Ye.slug,onChange:e=>lt("slug",e.target.value.toLowerCase().replace(/[^a-z0-9-]/g,"-")),className:"flex-1 px-4 py-3 bg-gray-100 dark:bg-white/5 border rounded-xl focus:outline-none focus:border-yellow-500/50 ".concat(et.slug?"border-red-500":"border-gray-300 dark:border-white/10"),placeholder:"url-friendly-slug"})]}),et.slug&&(0,f.jsx)("p",{className:"text-red-500 text-xs mt-1",children:et.slug})]}),(0,f.jsxs)("div",{children:[(0,f.jsx)("label",{className:"block text-xs font-bold uppercase tracking-wider text-gray-500 dark:text-slate-400 mb-2",children:"Description"}),(0,f.jsx)("textarea",{value:Ye.description,onChange:e=>lt("description",e.target.value),rows:4,className:"w-full px-4 py-3 bg-gray-100 dark:bg-white/5 border border-gray-300 dark:border-white/10 rounded-xl focus:outline-none focus:border-yellow-500/50 resize-none",placeholder:"Describe this content..."})]}),(0,f.jsxs)("div",{className:"grid grid-cols-2 gap-4",children:[(0,f.jsxs)("div",{children:[(0,f.jsx)("label",{className:"block text-xs font-bold uppercase tracking-wider text-gray-500 dark:text-slate-400 mb-2",children:"Price ($)"}),(0,f.jsx)("input",{type:"number",value:Ye.price,onChange:e=>lt("price",parseFloat(e.target.value)||0),className:"w-full px-4 py-3 bg-gray-100 dark:bg-white/5 border border-gray-300 dark:border-white/10 rounded-xl focus:outline-none focus:border-yellow-500/50",placeholder:"0.00",min:"0",step:"0.01"})]}),(0,f.jsxs)("div",{children:[(0,f.jsx)("label",{className:"block text-xs font-bold uppercase tracking-wider text-gray-500 dark:text-slate-400 mb-2",children:"Visibility"}),(0,f.jsxs)("select",{value:Ye.visibility,onChange:e=>lt("visibility",e.target.value),className:"w-full px-4 py-3 bg-gray-100 dark:bg-white/5 border border-gray-300 dark:border-white/10 rounded-xl focus:outline-none focus:border-yellow-500/50",children:[(0,f.jsx)("option",{value:"public",children:"Public"}),(0,f.jsx)("option",{value:"authenticated",children:"Logged In Users"}),(0,f.jsx)("option",{value:"private",children:"Private"}),(te||se)&&(0,f.jsx)("option",{value:"personal",children:"Personal (My Courses)"})]})]})]}),"personal"===Ye.visibility&&(0,f.jsxs)("div",{className:"flex items-start gap-2 p-3 bg-indigo-500/10 border border-indigo-500/20 rounded-xl",children:[(0,f.jsx)(L.A,{size:16,className:"text-indigo-400 mt-0.5 flex-shrink-0"}),(0,f.jsxs)("div",{className:"text-xs text-indigo-300",children:[(0,f.jsx)("p",{children:"Personal courses save to your account only and are not visible to other users."}),(0,f.jsxs)("p",{className:"mt-1 font-bold",children:["Monthly limit: ",Le?"...":Ie," / 10 used"]})]})]}),"courses"===xe&&(0,f.jsxs)("div",{className:"grid grid-cols-2 gap-4",children:[(0,f.jsxs)("div",{children:[(0,f.jsx)("label",{className:"block text-xs font-bold uppercase tracking-wider text-gray-500 dark:text-slate-400 mb-2",children:"Duration (Minutes)"}),(0,f.jsx)("input",{type:"number",value:Ye.durationMinutes,onChange:e=>lt("durationMinutes",e.target.value),className:"w-full px-4 py-3 bg-gray-100 dark:bg-white/5 border border-gray-300 dark:border-white/10 rounded-xl focus:outline-none focus:border-yellow-500/50",placeholder:"60",min:"1"})]}),(0,f.jsxs)("div",{children:[(0,f.jsx)("label",{className:"block text-xs font-bold uppercase tracking-wider text-gray-500 dark:text-slate-400 mb-2",children:"PMBOK Edition"}),(0,f.jsx)("input",{type:"text",value:Ye.pmbokEdition,onChange:e=>lt("pmbokEdition",e.target.value),className:"w-full px-4 py-3 bg-gray-100 dark:bg-white/5 border border-gray-300 dark:border-white/10 rounded-xl focus:outline-none focus:border-yellow-500/50",placeholder:"7th"})]})]}),"personal"!==Ye.visibility&&(0,f.jsxs)("div",{children:[(0,f.jsxs)("label",{className:"block text-xs font-bold uppercase tracking-wider text-gray-500 dark:text-slate-400 mb-2",children:[(0,f.jsx)(O.A,{size:12,className:"inline mr-1.5 -mt-0.5"}),"Linked Product ID (productsAndServices)"]}),(0,f.jsxs)("div",{className:"flex items-center gap-2",children:[(0,f.jsx)("input",{type:"text",value:Ue,onChange:e=>Se(e.target.value.trim()),className:"flex-1 px-4 py-3 bg-gray-100 dark:bg-white/5 border border-gray-300 dark:border-white/10 rounded-xl focus:outline-none focus:border-amber-500/50 text-sm",placeholder:"Firestore document ID from productsAndServices"}),Ue?(0,f.jsxs)("span",{className:"flex items-center gap-1 text-xs text-amber-500 whitespace-nowrap",children:[(0,f.jsx)(y.A,{size:12}),"Linked"]}):(0,f.jsxs)("button",{onClick:async()=>{var e,t;if(null!==(e=Ye.title)&&void 0!==e&&e.trim()&&null!==(t=Ye.slug)&&void 0!==t&&t.trim()){We(!0);
2try{const e={title:Ye.title,description:Ye.description||"",price:Ye.price||0,slug:Ye.slug,imageUrl:Ye.imageUrl||"",coverImage:Ye.coverImage||"",status:Ye.status||"draft",categoryGroup:"courses"===xe?"training-course":"free-learning",category:"courses"===xe?"training-course":"free-learning",deliveryMethod:"platform-access",accessDuration:"1 year",durationMinutes:Ye.durationMinutes||"",learningOutcomes:(Ye.learningOutcomes||[]).map(e=>"string"===typeof e?e:e.text||""),createdAt:(0,n.O5)(),updatedAt:(0,n.O5)(),createdBy:null===re||void 0===re?void 0:re.uid},t=await(0,n.gS)((0,n.rJ)(o.db,"productsAndServices"),e);Se(t.id),H.Ay.success("Product created! ID: ".concat(t.id))}catch(s){console.error("Error creating product:",s),H.Ay.error("Failed to create product: "+s.message)}finally{We(!1)}}},disabled:$e||!(null!==(t=Ye.title)&&void 0!==t&&t.trim())||!(null!==(s=Ye.slug)&&void 0!==s&&s.trim()),className:"flex items-center gap-1.5 px-3 py-2.5 bg-amber-500/10 hover:bg-amber-500/20 border border-amber-500/30 text-amber-500 rounded-xl text-xs font-bold whitespace-nowrap transition-colors disabled:opacity-40 disabled:cursor-not-allowed",children:[$e?(0,f.jsx)(q.A,{size:12,className:"animate-spin"}):(0,f.jsx)(m.A,{size:12}),"Create Matching Product"]})]}),(0,f.jsx)("p",{className:"text-[11px] text-gray-400 dark:text-slate-500 mt-1.5",children:"When set, saving will also update the linked productsAndServices document with title, description, price, slug, and images."})]})]})]}),(0,f.jsxs)("div",{className:"bg-gray-50 dark:bg-white/[0.02] border border-gray-200 dark:border-white/5 rounded-2xl overflow-hidden",children:[(0,f.jsxs)("button",{onClick:()=>mt("media"),className:"w-full flex items-center justify-between p-5 hover:bg-gray-100 dark:hover:bg-white/[0.02] transition-colors",children:[(0,f.jsxs)("div",{className:"flex items-center gap-3",children:[(0,f.jsx)(V.A,{className:"text-gray-500 dark:text-slate-400",size:20}),(0,f.jsx)("span",{className:"font-bold",children:"Media"})]}),he.media?(0,f.jsx)(I.A,{size:20}):(0,f.jsx)(D.A,{size:20})]}),he.media&&(0,f.jsxs)("div",{className:"px-5 pb-5 space-y-4 border-t border-gray-200 dark:border-white/5 pt-4",children:[(0,f.jsxs)("div",{children:[(0,f.jsx)("label",{className:"block text-xs font-bold uppercase tracking-wider text-gray-500 dark:text-slate-400 mb-2",children:"Cover Image URL"}),(0,f.jsx)("input",{type:"url",value:Ye.imageUrl||Ye.coverImage,onChange:e=>{lt("imageUrl",e.target.value),lt("coverImage",e.target.value)},className:"w-full px-4 py-3 bg-gray-100 dark:bg-white/5 border border-gray-300 dark:border-white/10 rounded-xl focus:outline-none focus:border-yellow-500/50",placeholder:"https://..."}),(Ye.imageUrl||Ye.coverImage)&&(0,f.jsx)("div",{className:"mt-3 relative aspect-video rounded-xl overflow-hidden bg-gray-200 dark:bg-slate-800",children:(0,f.jsx)("img",{src:Ye.imageUrl||Ye.coverImage,alt:"Cover preview",className:"w-full h-full object-cover",onError:e=>e.target.style.display="none"})})]}),(0,f.jsxs)("div",{children:[(0,f.jsx)("label",{className:"block text-xs font-bold uppercase tracking-wider text-gray-500 dark:text-slate-400 mb-2",children:"Preview Video URL"}),(0,f.jsx)("input",{type:"url",value:Ye.previewVideoUrl,onChange:e=>lt("previewVideoUrl",e.target.value),className:"w-full px-4 py-3 bg-gray-100 dark:bg-white/5 border border-gray-300 dark:border-white/10 rounded-xl focus:outline-none focus:border-yellow-500/50",placeholder:"https://..."})]}),(0,f.jsxs)("div",{children:[(0,f.jsx)("label",{className:"block text-xs font-bold uppercase tracking-wider text-gray-500 dark:text-slate-400 mb-2",children:"Main Video URL"}),(0,f.jsx)("input",{type:"url",value:Ye.mainVideoUrl,onChange:e=>lt("mainVideoUrl",e.target.value),className:"w-full px-4 py-3 bg-gray-100 dark:bg-white/5 border border-gray-300 dark:border-white/10 rounded-xl focus:outline-none focus:border-yellow-500/50",placeholder:"https://..."})]})]})]}),(0,f.jsxs)("div",{className:"bg-gray-50 dark:bg-white/[0.02] border border-gray-200 dark:border-white/5 rounded-2xl overflow-hidden",children:[(0,f.jsxs)("button",{onClick:()=>mt("modules"),className:"w-full flex items-center justify-between p-5 hover:bg-gray-100 dark:hover:bg-white/[0.02] transition-colors",children:[(0,f.jsxs)("div",{className:"flex items-center gap-3",children:[(0,f.jsx)(Q.A,{className:"text-gray-500 dark:text-slate-400",size:20}),(0,f.jsx)("span",{className:"font-bold",children:"Course Modules"}),(0,f.jsxs)("span",{className:"text-xs text-gray-400 dark:text-slate-500 ml-2",children:["(",(null===(x=Ye.modules)||void 0===x?void 0:x.length)||0," modules)"]})]}),he.modules?(0,f.jsx)(I.A,{size:20}):(0,f.jsx)(D.A,{size:20})]}),he.modules&&(0,f.jsxs)("div",{className:"px-5 pb-5 space-y-4 border-t border-gray-200 dark:border-white/5 pt-4",children:[null===(p=Ye.modules)||void 0===p?void 0:p.map((e,t)=>{var s,a,l;return(0,f.jsxs)("div",{className:"p-4 bg-gray-50 dark:bg-white/[0.02] border border-gray-200 dark:border-white/5 rounded-xl space-y-3",children:[(0,f.jsxs)("div",{className:"flex items-center justify-between",children:[(0,f.jsxs)("div",{className:"flex items-center gap-2",children:[(0,f.jsx)(P.A,{className:"text-slate-600",size:16}),(0,f.jsxs)("span",{className:"text-xs font-bold text-gray-500 dark:text-slate-400",children:["Module ",t+1]}),(0,f.jsxs)("span",{className:"text-[10px] text-slate-600",children:["(",(null===(s=e.lessons)||void 0===s?void 0:s.length)||0," lessons)"]}),e.videoUrl?(0,f.jsxs)("span",{className:"flex items-center gap-1 px-1.5 py-0.5 rounded bg-indigo-500/15 text-indigo-400 text-[9px] font-semibold",children:[(0,f.jsx)(E.A,{size:9})," Video"]}):(0,f.jsxs)("span",{className:"flex items-center gap-1 px-1.5 py-0.5 rounded bg-amber-500/10 text-amber-500/70 text-[9px] font-semibold",children:[(0,f.jsx)(E.A,{size:9})," No video"]})]}),(0,f.jsxs)("div",{className:"flex items-center gap-1",children:[(0,f.jsx)("button",{onClick:()=>it("modules",t,"up"),disabled:0===t,className:"p-1 hover:bg-gray-200 dark:hover:bg-white/10 rounded text-gray-500 dark:text-slate-400 transition-colors disabled:opacity-20",children:(0,f.jsx)(G.A,{size:12})}),(0,f.jsx)("button",{onClick:()=>it("modules",t,"down"),disabled:t===((null===(a=Ye.modules)||void 0===a?void 0:a.length)||0)-1,className:"p-1 hover:bg-gray-200 dark:hover:bg-white/10 rounded text-gray-500 dark:text-slate-400 transition-colors disabled:opacity-20",children:(0,f.jsx)(R.A,{size:12})}),(0,f.jsx)("button",{onClick:()=>{return e=t,void Ze(t=>(0,r.A)((0,r.A)({},t),{},{modules:(t.modules||[]).filter((t,s)=>s!==e)}));var e},className:"p-1.5 hover:bg-red-500/20 rounded-lg text-red-500 transition-colors",children:(0,f.jsx)(h.A,{size:14})})]})]}),(0,f.jsx)("input",{type:"text",value:$(e.title),onChange:e=>nt(t,"title",e.target.value),className:"w-full px-3 py-2 bg-gray-100 dark:bg-white/5 border border-gray-300 dark:border-white/10 rounded-lg text-sm focus:outline-none focus:border-yellow-500/50",placeholder:"Module title"}),(0,f.jsx)("textarea",{value:$(e.description),onChange:e=>
2nt(t,"description",e.target.value),className:"w-full px-3 py-2 bg-gray-100 dark:bg-white/5 border border-gray-300 dark:border-white/10 rounded-lg text-sm focus:outline-none focus:border-yellow-500/50 resize-none",rows:2,placeholder:"Module description"}),(0,f.jsxs)("div",{className:"p-3 bg-indigo-500/5 border border-indigo-500/15 rounded-xl space-y-2",children:[(0,f.jsxs)("label",{className:"flex items-center gap-1.5 text-[10px] font-bold uppercase tracking-wider text-indigo-400",children:[(0,f.jsx)(E.A,{size:11}),"Module Video URL",!e.videoUrl&&(0,f.jsx)("span",{className:"ml-auto text-[9px] font-semibold text-amber-500/70 normal-case tracking-normal",children:"Required"}),e.videoUrl&&(0,f.jsxs)("span",{className:"ml-auto flex items-center gap-1 text-[9px] font-semibold text-emerald-500 normal-case tracking-normal",children:[(0,f.jsx)(y.A,{size:9})," Set"]})]}),(0,f.jsxs)("div",{className:"flex items-center gap-2",children:[(0,f.jsx)("input",{type:"url",value:$(e.videoUrl),onChange:e=>nt(t,"videoUrl",e.target.value),className:"flex-1 px-3 py-2 bg-gray-100 dark:bg-white/5 border border-gray-300 dark:border-white/10 rounded-lg text-sm focus:outline-none focus:border-indigo-500/50",placeholder:"https://..."}),e.videoUrl&&(0,f.jsx)("a",{href:e.videoUrl,target:"_blank",rel:"noopener noreferrer",className:"p-2 bg-indigo-500/20 hover:bg-indigo-500/30 text-indigo-400 rounded-lg transition-colors shrink-0",title:"Preview video",children:(0,f.jsx)(Q.A,{size:14})})]})]}),(0,f.jsxs)("div",{className:"mt-2",children:[(0,f.jsxs)("button",{onClick:()=>{return e=t,void ve(t=>(0,r.A)((0,r.A)({},t),{},{[e]:!t[e]}));var e},className:"flex items-center gap-2 text-xs font-bold text-indigo-400 hover:text-indigo-300 transition-colors",children:[ye[t]?(0,f.jsx)(I.A,{size:14}):(0,f.jsx)(D.A,{size:14}),(0,f.jsx)(_.A,{size:14}),"Lessons (",(null===(l=e.lessons)||void 0===l?void 0:l.length)||0,")"]}),ye[t]&&(0,f.jsxs)("div",{className:"mt-3 space-y-3 pl-4 border-l-2 border-indigo-500/20",children:[(e.lessons||[]).map((s,a)=>{var l,o,i,n,d;const c="".concat(t,"-").concat(a),u=fe[c];return(0,f.jsxs)("div",{className:"bg-gray-50 dark:bg-white/[0.02] border border-gray-200 dark:border-white/5 rounded-xl overflow-hidden",children:[(0,f.jsxs)("div",{className:"flex items-center gap-2 p-3 cursor-pointer hover:bg-gray-100 dark:hover:bg-white/[0.02] transition-colors",onClick:()=>((e,t)=>{const s="".concat(e,"-").concat(t);ke(e=>(0,r.A)((0,r.A)({},e),{},{[s]:!e[s]}))})(t,a),children:[u?(0,f.jsx)(I.A,{size:14,className:"text-gray-500 dark:text-slate-400"}):(0,f.jsx)(D.A,{size:14,className:"text-gray-500 dark:text-slate-400"}),(0,f.jsxs)("span",{className:"text-xs font-bold text-gray-400 dark:text-slate-500",children:["L",a+1]}),(0,f.jsx)("span",{className:"text-sm text-gray-700 dark:text-slate-300 flex-1 truncate",children:s.title||"Lesson ".concat(a+1)}),(0,f.jsxs)("div",{className:"flex items-center gap-1",onClick:e=>e.stopPropagation(),children:[s.videoUrl&&(0,f.jsx)(E.A,{size:12,className:"text-indigo-400"}),(null===(l=s.quizQuestions)||void 0===l?void 0:l.length)>0&&(0,f.jsx)(B.A,{size:12,className:"text-amber-400"}),(null===(o=s.keyTerms)||void 0===o?void 0:o.length)>0&&(0,f.jsx)(_.A,{size:12,className:"text-emerald-400"}),(0,f.jsx)("button",{onClick:()=>ct(t,a,"up"),disabled:0===a,className:"p-1 hover:bg-gray-200 dark:hover:bg-white/10 rounded text-gray-500 dark:text-slate-400 transition-colors disabled:opacity-20",children:(0,f.jsx)(G.A,{size:10})}),(0,f.jsx)("button",{onClick:()=>ct(t,a,"down"),disabled:a===((null===(i=e.lessons)||void 0===i?void 0:i.length)||0)-1,className:"p-1 hover:bg-gray-200 dark:hover:bg-white/10 rounded text-gray-500 dark:text-slate-400 transition-colors disabled:opacity-20",children:(0,f.jsx)(R.A,{size:10})}),(0,f.jsx)("button",{onClick:()=>{return e=t,s=a,void Ze(t=>{const a=[...t.modules||[]],l=(0,r.A)({},a[e]);return l.lessons=(l.lessons||[]).filter((e,t)=>t!==s),a[e]=l,(0,r.A)((0,r.A)({},t),{},{modules:a})});var e,s},className:"p-1 hover:bg-red-500/20 rounded text-red-500 transition-colors",children:(0,f.jsx)(h.A,{size:10})})]})]}),u&&(0,f.jsxs)("div",{className:"px-3 pb-3 space-y-3 border-t border-gray-200 dark:border-white/5 pt-3",children:[(0,f.jsx)("input",{type:"text",value:s.title||"",onChange:e=>dt(t,a,"title",e.target.value),className:"w-full px-3 py-2 bg-gray-100 dark:bg-white/5 border border-gray-300 dark:border-white/10 rounded-lg text-sm focus:outline-none focus:border-yellow-500/50",placeholder:"Lesson title"}),(0,f.jsxs)("div",{className:"p-3 bg-indigo-500/5 border border-indigo-500/15 rounded-xl space-y-2",children:[(0,f.jsxs)("label",{className:"flex items-center gap-1.5 text-[10px] font-bold uppercase tracking-wider text-indigo-400",children:[(0,f.jsx)(E.A,{size:11}),"Lesson Video URL",!s.videoUrl&&(0,f.jsx)("span",{className:"ml-auto text-[9px] font-semibold text-amber-500/70 normal-case tracking-normal",children:"Required"}),s.videoUrl&&(0,f.jsxs)("span",{className:"ml-auto flex items-center gap-1 text-[9px] font-semibold text-emerald-500 normal-case tracking-normal",children:[(0,f.jsx)(y.A,{size:9})," Set"]})]}),(0,f.jsxs)("div",{className:"flex items-center gap-2",children:[(0,f.jsx)("input",{type:"url",value:s.videoUrl||"",onChange:e=>dt(t,a,"videoUrl",e.target.value),className:"flex-1 px-3 py-2 bg-gray-100 dark:bg-white/5 border border-gray-300 dark:border-white/10 rounded-lg text-sm focus:outline-none focus:border-indigo-500/50",placeholder:"https://..."}),s.videoUrl&&(0,f.jsx)("a",{href:s.videoUrl,target:"_blank",rel:"noopener noreferrer",className:"p-2 bg-indigo-500/20 hover:bg-indigo-500/30 text-indigo-400 rounded-lg transition-colors shrink-0",title:"Preview video",children:(0,f.jsx)(Q.A,{size:14})})]})]}),(0,f.jsxs)("div",{children:[(0,f.jsxs)("label",{className:"flex items-center gap-1 text-[10px] font-bold uppercase tracking-wider text-gray-400 dark:text-slate-500 mb-1",children:[(0,f.jsx)(F.A,{size:10})," Reading Content"]}),(0,f.jsx)("textarea",{value:s.content||"",onChange:e=>dt(t,a,"content",e.target.value),className:"w-full px-3 py-2 bg-gray-100 dark:bg-white/5 border border-gray-300 dark:border-white/10 rounded-lg text-xs focus:outline-none focus:border-yellow-500/50 resize-y font-mono",rows:6,placeholder:"Markdown content..."})]}),(null===(n=s.quizQuestions)||void 0===n?void 0:n.length)>0&&(0,f.jsxs)("div",{className:"space-y-2",children:[(0,f.jsxs)("label",{className:"flex items-center gap-1 text-[10px] font-bold uppercase tracking-wider text-amber-500",children:[(0,f.jsx)(B.A,{size:10})," Quiz Questions (",s.quizQuestions.length,")"]}),s.quizQuestions.map((e,s)=>(0,f.jsxs)("div",{className:"p-3 bg-amber-500/5 border border-amber-500/10 rounded-lg space-y-2",children:[(0,f.jsxs)("div",{className:"flex items-center justify-between",children:[(0,f.jsxs)("span",{className:"text-[10px] font-bold text-amber-500",children:["Q",s+1]}),(0,f.jsx)("button",{onClick:()=>{return e=t,l=a,o=s,void Ze(t=>{const s=[...t.modules||[]],a=(0,r.A)({},s[e]),i=[...a.lessons||[]],n=(0,r.A)({},i[l]);return n.quizQuestions=(n.quizQuestions||[]).filter((e,t)=>
2t!==o),i[l]=n,a.lessons=i,s[e]=a,(0,r.A)((0,r.A)({},t),{},{modules:s})});var e,l,o},className:"p-1 hover:bg-red-500/20 rounded text-red-500",children:(0,f.jsx)(h.A,{size:10})})]}),(0,f.jsx)("input",{type:"text",value:e.question||"",onChange:e=>xt(t,a,s,"question",e.target.value),className:"w-full px-2 py-1.5 bg-gray-100 dark:bg-white/5 border border-gray-300 dark:border-white/10 rounded text-xs",placeholder:"Question text"}),(0,f.jsx)("div",{className:"grid grid-cols-2 gap-2",children:["A","B","C","D"].map(r=>(0,f.jsxs)("div",{className:"flex items-center gap-1",children:[(0,f.jsx)("span",{className:"text-[10px] font-bold w-4 ".concat(e.correctAnswer===r?"text-emerald-400":"text-gray-400 dark:text-slate-500"),children:r}),(0,f.jsx)("input",{type:"text",value:e["option".concat(r)]||"",onChange:e=>xt(t,a,s,"option".concat(r),e.target.value),className:"flex-1 px-2 py-1 bg-gray-100 dark:bg-white/5 border border-gray-300 dark:border-white/10 rounded text-xs",placeholder:"Option ".concat(r)})]},r))}),(0,f.jsxs)("div",{className:"flex items-center gap-2",children:[(0,f.jsx)("select",{value:e.correctAnswer||"A",onChange:e=>xt(t,a,s,"correctAnswer",e.target.value),className:"px-2 py-1 bg-gray-100 dark:bg-white/5 border border-gray-300 dark:border-white/10 rounded text-xs",children:["A","B","C","D"].map(e=>(0,f.jsxs)("option",{value:e,children:["Correct: ",e]},e))}),(0,f.jsx)("input",{type:"text",value:e.explanation||"",onChange:e=>xt(t,a,s,"explanation",e.target.value),className:"flex-1 px-2 py-1 bg-gray-100 dark:bg-white/5 border border-gray-300 dark:border-white/10 rounded text-xs",placeholder:"Explanation"})]})]},s))]}),(null===(d=s.keyTerms)||void 0===d?void 0:d.length)>0&&(0,f.jsxs)("div",{className:"space-y-2",children:[(0,f.jsxs)("label",{className:"flex items-center gap-1 text-[10px] font-bold uppercase tracking-wider text-emerald-500",children:[(0,f.jsx)(_.A,{size:10})," Key Terms (",s.keyTerms.length,")"]}),s.keyTerms.map((e,s)=>(0,f.jsxs)("div",{className:"flex items-center gap-2",children:[(0,f.jsx)("input",{type:"text",value:"string"===typeof e?e:e.term||"",onChange:e=>gt(t,a,s,"term",e.target.value),className:"w-1/3 px-2 py-1.5 bg-gray-100 dark:bg-white/5 border border-gray-300 dark:border-white/10 rounded text-xs",placeholder:"Term"}),(0,f.jsx)("input",{type:"text",value:"string"===typeof e?"":e.definition||"",onChange:e=>gt(t,a,s,"definition",e.target.value),className:"flex-1 px-2 py-1.5 bg-gray-100 dark:bg-white/5 border border-gray-300 dark:border-white/10 rounded text-xs",placeholder:"Definition"}),(0,f.jsx)("button",{onClick:()=>{return e=t,l=a,o=s,void Ze(t=>{const s=[...t.modules||[]],a=(0,r.A)({},s[e]),i=[...a.lessons||[]],n=(0,r.A)({},i[l]);return n.keyTerms=(n.keyTerms||[]).filter((e,t)=>t!==o),i[l]=n,a.lessons=i,s[e]=a,(0,r.A)((0,r.A)({},t),{},{modules:s})});var e,l,o},className:"p-1 hover:bg-red-500/20 rounded text-red-500",children:(0,f.jsx)(h.A,{size:10})})]},s))]}),(0,f.jsxs)("div",{className:"relative",children:[(0,f.jsxs)("button",{onClick:()=>we(je===c?null:c),className:"flex items-center gap-1.5 px-3 py-1.5 text-xs font-bold text-indigo-400 hover:text-indigo-300 bg-indigo-500/10 hover:bg-indigo-500/20 rounded-lg transition-colors",children:[(0,f.jsx)(m.A,{size:12}),"Add Content Block"]}),je===c&&(0,f.jsxs)("div",{className:"absolute left-0 top-full mt-1 w-48 bg-slate-900 border border-white/10 rounded-xl shadow-2xl py-2 z-50",children:[(0,f.jsxs)("button",{onClick:()=>ut(t,a,"video"),className:"w-full px-4 py-2 text-left text-sm hover:bg-gray-100 dark:hover:bg-white/5 flex items-center gap-2",children:[(0,f.jsx)(E.A,{size:14,className:"text-indigo-400"}),"Video URL"]}),(0,f.jsxs)("button",{onClick:()=>ut(t,a,"text"),className:"w-full px-4 py-2 text-left text-sm hover:bg-gray-100 dark:hover:bg-white/5 flex items-center gap-2",children:[(0,f.jsx)(F.A,{size:14,className:"text-gray-500 dark:text-slate-400"}),"Reading Text"]}),(0,f.jsxs)("button",{onClick:()=>ut(t,a,"quiz"),className:"w-full px-4 py-2 text-left text-sm hover:bg-gray-100 dark:hover:bg-white/5 flex items-center gap-2",children:[(0,f.jsx)(B.A,{size:14,className:"text-amber-400"}),"Quiz Question"]}),(0,f.jsxs)("button",{onClick:()=>ut(t,a,"keyTerm"),className:"w-full px-4 py-2 text-left text-sm hover:bg-gray-100 dark:hover:bg-white/5 flex items-center gap-2",children:[(0,f.jsx)(_.A,{size:14,className:"text-emerald-400"}),"Key Term"]})]})]})]})]},a)}),(0,f.jsxs)("button",{onClick:()=>{return e=t,void Ze(t=>{var s;const a=[...t.modules||[]],l=(0,r.A)({},a[e]);return l.lessons=[...l.lessons||[],{index:(null===(s=l.lessons)||void 0===s?void 0:s.length)||0,title:"",content:"",videoUrl:"",audioUrl:"",keyTerms:[],keyTakeaways:[],quizQuestions:[]}],a[e]=l,(0,r.A)((0,r.A)({},t),{},{modules:a})});var e},className:"w-full p-3 border-2 border-dashed border-indigo-500/20 rounded-xl text-indigo-400 hover:text-indigo-300 hover:border-indigo-500/30 transition-colors flex items-center justify-center gap-2 text-xs font-bold",children:[(0,f.jsx)(m.A,{size:14}),"Add Lesson"]})]})]})]},t)}),(0,f.jsxs)("button",{onClick:()=>{Ze(e=>{var t;return(0,r.A)((0,r.A)({},e),{},{modules:[...e.modules||[],{index:(null===(t=e.modules)||void 0===t?void 0:t.length)||0,title:"",description:"",videoUrl:"",estimatedMinutes:null,lessons:[]}]})})},className:"w-full p-4 border-2 border-dashed border-white/10 rounded-xl text-gray-500 dark:text-slate-400 hover:text-white hover:border-white/20 transition-colors flex items-center justify-center gap-2",children:[(0,f.jsx)(m.A,{size:16}),"Add Module"]})]})]}),(0,f.jsxs)("div",{className:"bg-gray-50 dark:bg-white/[0.02] border border-gray-200 dark:border-white/5 rounded-2xl p-5",children:[(0,f.jsx)("label",{className:"block text-xs font-bold uppercase tracking-wider text-gray-500 dark:text-slate-400 mb-3",children:"Learning Outcomes"}),(0,f.jsxs)("div",{className:"space-y-3",children:[null===(b=Ye.learningOutcomes)||void 0===b?void 0:b.map((e,t)=>{var s,a;const l="string"===typeof e?{text:e,videoUrl:""}:e;return(0,f.jsxs)("div",{className:"p-3 bg-gray-50 dark:bg-white/[0.02] border border-gray-200 dark:border-white/5 rounded-xl space-y-2",children:[(0,f.jsxs)("div",{className:"flex gap-2 items-center",children:[(0,f.jsxs)("div",{className:"flex flex-col gap-0.5",children:[(0,f.jsx)("button",{onClick:()=>it("learningOutcomes",t,"up"),disabled:0===t,className:"p-1 hover:bg-gray-200 dark:hover:bg-white/10 rounded text-gray-500 dark:text-slate-400 transition-colors disabled:opacity-20 disabled:cursor-not-allowed",title:"Move up",children:(0,f.jsx)(G.A,{size:12})}),(0,f.jsx)("button",{onClick:()=>it("learningOutcomes",t,"down"),disabled:t===Ye.learningOutcomes.length-1,className:"p-1 hover:bg-gray-200 dark:hover:bg-white/10 rounded text-gray-500 dark:text-slate-400 transition-colors disabled:opacity-20 disabled:cursor-not-allowed",title:"Move down",children:(0,f.jsx)(R.A,{size:12})})]}),(0,f.jsx)("input",{type:"text",value:l.text,onChange:e=>ot("learningOutcomes",t,(0,r.A)((0,r.A)({},l),{},{text:e.target.value})),className:"flex-1 px-4 py-2.5 bg-gray-100 dark:bg-white/5 border border-gray-300 dark:border-white/10 rounded-xl text-sm focus:outline-none focus:border-yellow-500/50",placeholder:"What learners will achieve..."}),(0,f.jsx)("button",{onClick:()=>ot("learningOutcomes",t,(0,r.A)((0,r.A)({},l),{},{videoUrl:void 0!==l.videoUrl&&""!==l.videoUrl?"":" "})),className:"p-2 rounded-lg transition-colors ".concat(null!==(s=l.videoUrl)&&void 0!==s&&s.trim()?"bg-indigo-500/20 text-indigo-400":"hover:bg-gray-100 dark:hover:bg-white/5 text-gray-400 dark:text-slate-500"),title:null!==(a=l.videoUrl)&&void 0!==a&&a.trim()?"Remove video":"Add video",children:(0,f.jsx)(E.A,{size:14})}),(0,f.jsx)("button",{onClick:()=>{return e="learningOutcomes",s=t,void Ze(t=>(0,r.A)((0,r.A)({},t),{},{[e]:(t[e]||[]).filter((e,t)=>
2t!==s)}));var e,s},className:"p-2 hover:bg-red-500/20 rounded-lg text-red-500 transition-colors",children:(0,f.jsx)(g.A,{size:14})})]}),void 0!==l.videoUrl&&""!==l.videoUrl&&(0,f.jsx)("div",{className:"ml-8",children:(0,f.jsx)("input",{type:"url",value:l.videoUrl.trim(),onChange:e=>ot("learningOutcomes",t,(0,r.A)((0,r.A)({},l),{},{videoUrl:e.target.value})),className:"w-full px-3 py-2 bg-gray-100 dark:bg-white/5 border border-gray-300 dark:border-white/10 rounded-lg text-xs focus:outline-none focus:border-indigo-500/50",placeholder:"https://video-url..."})})]},t)}),(0,f.jsxs)("button",{onClick:()=>(e=>{const t="learningOutcomes"===e?{text:"",videoUrl:""}:"";Ze(s=>(0,r.A)((0,r.A)({},s),{},{[e]:[...s[e]||[],t]}))})("learningOutcomes"),className:"text-sm text-yellow-500 hover:text-yellow-400 flex items-center gap-1",children:[(0,f.jsx)(m.A,{size:14}),"Add Outcome"]})]})]})]}),pe&&(0,f.jsx)("div",{className:"sticky top-24 h-[calc(100vh-8rem)]",children:(0,f.jsxs)("div",{className:"bg-gray-50 dark:bg-white/[0.02] border border-gray-200 dark:border-white/5 rounded-2xl h-full overflow-hidden flex flex-col",children:[(0,f.jsxs)("div",{className:"px-4 py-3 border-b border-gray-200 dark:border-white/5 flex items-center justify-between bg-white/[0.02]",children:[(0,f.jsx)("span",{className:"text-xs font-bold uppercase tracking-wider text-gray-500 dark:text-slate-400",children:"Live Preview"}),!ae&&Ye.slug&&(0,f.jsxs)("button",{onClick:()=>window.open(pt(),"_blank"),className:"flex items-center gap-1.5 text-xs text-emerald-500 hover:text-emerald-400",children:[(0,f.jsx)(z.A,{size:12}),"Open Full Preview"]})]}),(0,f.jsx)("div",{className:"flex-1 overflow-auto p-6",children:(0,f.jsxs)("div",{className:"space-y-6",children:[(0,f.jsxs)("div",{className:"aspect-video rounded-2xl overflow-hidden bg-gray-200 dark:bg-slate-800",children:[Ye.imageUrl||Ye.coverImage?(0,f.jsx)("img",{src:Ye.imageUrl||Ye.coverImage,alt:"",className:"w-full h-full object-cover",onError:e=>{e.target.style.display="none",e.target.nextSibling.style.display="flex"}}):null,(0,f.jsx)("div",{className:"w-full h-full items-center justify-center ".concat(Ye.imageUrl||Ye.coverImage?"hidden":"flex"),children:(0,f.jsx)(V.A,{className:"text-slate-600",size:48})})]}),(0,f.jsxs)("div",{children:[(0,f.jsx)("h2",{className:"text-2xl font-black uppercase tracking-tight",children:$(Ye.title)||"Content Title"}),(0,f.jsx)("p",{className:"text-gray-500 dark:text-slate-400 mt-2",children:$(Ye.description)||"No description provided..."})]}),(0,f.jsxs)("div",{className:"flex flex-wrap gap-3",children:[Ye.price>0&&(0,f.jsxs)("div",{className:"px-4 py-2 bg-gray-100 dark:bg-white/5 rounded-xl",children:[(0,f.jsx)("span",{className:"text-xs text-gray-400 dark:text-slate-500",children:"Price"}),(0,f.jsxs)("p",{className:"font-bold text-yellow-500",children:["$",Ye.price]})]}),Ye.durationMinutes&&(0,f.jsxs)("div",{className:"px-4 py-2 bg-gray-100 dark:bg-white/5 rounded-xl",children:[(0,f.jsx)("span",{className:"text-xs text-gray-400 dark:text-slate-500",children:"Duration"}),(0,f.jsxs)("p",{className:"font-bold",children:[Ye.durationMinutes," min"]})]}),Ye.pmbokEdition&&(0,f.jsxs)("div",{className:"px-4 py-2 bg-gray-100 dark:bg-white/5 rounded-xl",children:[(0,f.jsx)("span",{className:"text-xs text-gray-400 dark:text-slate-500",children:"PMBOK"}),(0,f.jsx)("p",{className:"font-bold",children:Ye.pmbokEdition})]})]}),(null===(v=Ye.learningOutcomes)||void 0===v?void 0:v.length)>0&&(0,f.jsxs)("div",{children:[(0,f.jsx)("h3",{className:"text-xs font-bold uppercase tracking-wider text-gray-500 dark:text-slate-400 mb-3",children:"What You'll Learn"}),(0,f.jsx)("div",{className:"space-y-2",children:Ye.learningOutcomes.filter(Boolean).map((e,t)=>{const s=$("string"===typeof e?e:null===e||void 0===e?void 0:e.text),r="string"===typeof e?"":null===e||void 0===e?void 0:e.videoUrl;return s?(0,f.jsxs)("div",{className:"flex items-start gap-2",children:[(0,f.jsx)(y.A,{size:14,className:"text-emerald-500 mt-0.5"}),(0,f.jsx)("span",{className:"text-sm flex-1",children:s}),(null===r||void 0===r?void 0:r.trim())&&(0,f.jsx)(E.A,{size:12,className:"text-indigo-400 mt-0.5"})]},t):null})})]}),(null===(W=Ye.modules)||void 0===W?void 0:W.length)>0&&(0,f.jsxs)("div",{children:[(0,f.jsx)("h3",{className:"text-xs font-bold uppercase tracking-wider text-gray-500 dark:text-slate-400 mb-3",children:"Course Modules"}),(0,f.jsx)("div",{className:"space-y-2",children:Ye.modules.map((e,t)=>(0,f.jsxs)("div",{className:"p-3 bg-gray-100 dark:bg-white/5 rounded-xl flex items-center gap-3",children:[(0,f.jsx)("div",{className:"w-8 h-8 bg-indigo-500/20 rounded-lg flex items-center justify-center text-indigo-500 font-bold text-xs",children:t+1}),(0,f.jsxs)("div",{className:"flex-1 min-w-0",children:[(0,f.jsx)("p",{className:"font-medium text-sm truncate",children:$(e.title)||"Module ".concat(t+1)}),e.description&&(0,f.jsx)("p",{className:"text-xs text-gray-400 dark:text-slate-500 truncate",children:$(e.description)})]}),e.videoUrl?(0,f.jsx)(E.A,{size:14,className:"text-indigo-400"}):(0,f.jsx)(J.A,{size:14,className:"text-amber-500/50",title:"No video URL"})]},t))})]})]})})]})})]}),(0,f.jsx)(k,{open:Ae,summary:Ae?Me.computeChangeSummary(Ye):null,loading:ce,onConfirm:()=>at(ze),onCancel:()=>{Ne(!1),Ce(null)}}),je&&(0,f.jsx)("div",{className:"fixed inset-0 z-40",onClick:()=>we(null)})]})}}
2,9333(e,t,s){s.d(t,{A:()=>r});const r=(0,s(77784).A)("video",[["path",{d:"m16 13 5.223 3.482a.5.5 0 0 0 .777-.416V7.87a.5.5 0 0 0-.752-.432L16 10.5",key:"ftymec"}],["rect",{x:"2",y:"6",width:"14",height:"12",rx:"2",key:"158x01"}]])},9855(e,t,s){s.d(t,{A:()=>r});const r=(0,s(77784).A)("trash-2",[["path",{d:"M3 6h18",key:"d0wm0j"}],["path",{d:"M19 6v14c0 1-1 2-2 2H7c-1 0-2-1-2-2V6",key:"4alrt4"}],["path",{d:"M8 6V4c0-1 1-2 2-2h4c1 0 2 1 2 2v2",key:"v07s0e"}],["line",{x1:"10",x2:"10",y1:"11",y2:"17",key:"1uufr5"}],["line",{x1:"14",x2:"14",y1:"11",y2:"17",key:"xtxkd"}]])},22024(e,t,s){s.d(t,{A:()=>r});const r=(0,s(77784).A)("loader-circle",[["path",{d:"M21 12a9 9 0 1 1-6.219-8.56",key:"13zald"}]])},22633(e,t,s){s.d(t,{A:()=>r});const r=(0,s(77784).A)("arrow-up",[["path",{d:"m5 12 7-7 7 7",key:"hav0vg"}],["path",{d:"M12 19V5",key:"x0mq9r"}]])},25040(e,t,s){s.d(t,{A:()=>r});const r=(0,s(77784).A)("link",[["path",{d:"M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71",key:"1cjeqo"}],["path",{d:"M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71",key:"19qd67"}]])},35087(e,t,s){s.d(t,{A:()=>r});const r=(0,s(77784).A)("eye",[["path",{d:"M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0",key:"1nclc0"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]])},35746(e,t,s){s.d(t,{A:()=>r});const r=(0,s(77784).A)("send",[["path",{d:"M14.536 21.686a.5.5 0 0 0 .937-.024l6.5-19a.496.496 0 0 0-.635-.635l-19 6.5a.5.5 0 0 0-.024.937l7.93 3.18a2 2 0 0 1 1.112 1.11z",key:"1ffxy3"}],["path",{d:"m21.854 2.147-10.94 10.939",key:"12cjpa"}]])},38326(e,t,s){s.d(t,{A:()=>r});const r=(0,s(77784).A)("chevron-right",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]])},41680(e,t,s){s.d(t,{A:()=>r});const r=(0,s(77784).A)("file-text",[["path",{d:"M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z",key:"1rqfz7"}],["path",{d:"M14 2v4a2 2 0 0 0 2 2h4",key:"tnqrlb"}],["path",{d:"M10 9H8",key:"b1mrlr"}],["path",{d:"M16 13H8",key:"t4e002"}],["path",{d:"M16 17H8",key:"z1uh3a"}]])},42043(e,t,s){s.d(t,{A:()=>r});const r=(0,s(77784).A)("loader",[["path",{d:"M12 2v4",key:"3427ic"}],["path",{d:"m16.2 7.8 2.9-2.9",key:"r700ao"}],["path",{d:"M18 12h4",key:"wj9ykh"}],["path",{d:"m16.2 16.2 2.9 2.9",key:"1bxg5t"}],["path",{d:"M12 18v4",key:"jadmvz"}],["path",{d:"m4.9 19.1 2.9-2.9",key:"bwix9q"}],["path",{d:"M2 12h4",key:"j09sii"}],["path",{d:"m4.9 4.9 2.9 2.9",key:"giyufr"}]])},56099(e,t,s){s.d(t,{A:()=>r});const r=(0,s(77784).A)("sparkles",[["path",{d:"M9.937 15.5A2 2 0 0 0 8.5 14.063l-6.135-1.582a.5.5 0 0 1 0-.962L8.5 9.936A2 2 0 0 0 9.937 8.5l1.582-6.135a.5.5 0 0 1 .963 0L14.063 8.5A2 2 0 0 0 15.5 9.937l6.135 1.581a.5.5 0 0 1 0 .964L15.5 14.063a2 2 0 0 0-1.437 1.437l-1.582 6.135a.5.5 0 0 1-.963 0z",key:"4pj2yx"}],["path",{d:"M20 3v4",key:"1olli1"}],["path",{d:"M22 5h-4",key:"1gvqau"}],["path",{d:"M4 17v2",key:"vumght"}],["path",{d:"M5 18H3",key:"zchphs"}]])},64830(e,t,s){s.d(t,{A:()=>r});const r=(0,s(77784).A)("play",[["polygon",{points:"6 3 20 12 6 21 6 3",key:"1oa8hb"}]])},65469(e,t,s){s.d(t,{A:()=>r});const r=(0,s(77784).A)("arrow-left",[["path",{d:"m12 19-7-7 7-7",key:"1l729n"}],["path",{d:"M19 12H5",key:"x3x0zl"}]])},70067(e,t,s){s.d(t,{A:()=>r});const r=(0,s(77784).A)("image",[["rect",{width:"18",height:"18",x:"3",y:"3",rx:"2",ry:"2",key:"1m3agn"}],["circle",{cx:"9",cy:"9",r:"2",key:"af1f0g"}],["path",{d:"m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21",key:"1xmnt7"}]])},76955(e,t,s){s.d(t,{A:()=>r});const r=(0,s(77784).A)("circle-question-mark",[["circle",{cx:"12",cy:"12",r:"10",key:"1mglay"}],["path",{d:"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3",key:"1u773s"}],["path",{d:"M12 17h.01",key:"p32p05"}]])},82054(e,t,s){s.d(t,{A:()=>r});const r=(0,s(77784).A)("circle-check-big",[["path",{d:"M21.801 10A10 10 0 1 1 17 3.335",key:"yps3ct"}],["path",{d:"m9 11 3 3L22 4",key:"1pflzl"}]])},82300(e,t,s){s.d(t,{A:()=>r});const r=(0,s(77784).A)("type",[["path",{d:"M12 4v16",key:"1654pz"}],["path",{d:"M4 7V5a1 1 0 0 1 1-1h14a1 1 0 0 1 1 1v2",key:"e0r10z"}],["path",{d:"M9 20h6",key:"s66wpe"}]])},84259(e,t,s){s.d(t,{A:()=>r});const r=(0,s(77784).A)("grip-vertical",[["circle",{cx:"9",cy:"12",r:"1",key:"1vctgf"}],["circle",{cx:"9",cy:"5",r:"1",key:"hp0tcf"}],["circle",{cx:"9",cy:"19",r:"1",key:"fkjjf6"}],["circle",{cx:"15",cy:"12",r:"1",key:"1tmaij"}],["circle",{cx:"15",cy:"5",r:"1",key:"19l28e"}],["circle",{cx:"15",cy:"19",r:"1",key:"f4zoj3"}]])},92382(e,t,s){s.d(t,{A:()=>r});const r=(0,s(77784).A)("chevron-down",[["path",{d:"m6 9 6 6 6-6",key:"qrunsl"}]])},94651(e,t,s){s.d(t,{A:()=>r});const r=(0,s(77784).A)("eye-off",[["path",{d:"M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49",key:"ct8e1f"}],["path",{d:"M14.084 14.158a3 3 0 0 1-4.242-4.242",key:"151rxh"}],["path",{d:"M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151 1 1 0 0 1 0-.696 10.75 10.75 0 0 1 4.446-5.143",key:"13bj9a"}],["path",{d:"m2 2 20 20",key:"1ooewy"}]])},99996(e,t,s){s.d(t,{A:()=>r});const r=(0,s(77784).A)("arrow-down",[["path",{d:"M12 5v14",key:"s699le"}],["path",{d:"m19 12-7 7-7-7",key:"1idqje"}]])}}]);
3//# sourceMappingURL=8405.c03a9390.chunk.js.map

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.