1import{d as K}from"./chunk-NM2YCYMW.js";import{B as H,Qc as z,b as R,c as P,d as V,e as G,j as $,kc as U,q,r as B,x as k}from"./chunk-OTSSTHG4.js";import{$ as l,B as E,C as v,Ca as a,Da as S,E as I,G as j,H as N,La as L,W as D,X as n,aa as h,ba as C,ja as d,ka as c,la as M,ma as F,na as O,oa as u,ob as A,pa as r,qa as o,ra as p,sa as w,ta as T,tb as J,ua as f,yb as _}from"./chunk-LSXE27IB.js";var s=class i{constructor(e){this.http=e}list(){return this.http.get("/n/data/suadmin/prompt")}get(e){let t=`/n/data/suadmin/prompt/${e}`;return this.http.get(t)}add(e){return this.http.post("/n/data/suadmin/prompt",e)}update(e,t){let m=`/n/data/suadmin/prompt/${e}`;return this.http.put(m,t)}delete(e){let t=`/n/data/suadmin/prompt/${e}`;return this.http.delete(t)}static{this.\u0275fac=function(t){return new(t||i)(I(A))}}static{this.\u0275prov=E({token:i,factory:i.\u0275fac})}};function Z(i,e){i&1&&p(0,"div",0)}function tt(i,e){if(i&1&&(r(0,"tr")(1,"td"),a(2),o(),r(3,"td")(4,"a",4),a(5),o()(),p(6,"td")(7,"td"),o()),i&2){let t=e.$implicit,m=e.$index;n(2),S(m+1),n(2),u("href",L("/app/admin/prompt/",t.id,"/edit"),D),n(),S(t.slug)}}function et(i,e){if(i&1&&(r(0,"div")(1,"table",1)(2,"thead")(3,"tr"),p(4,"th",2),r(5,"th",3),a(6,"Slug"),o(),p(7,"th"),o()(),r(8,"tbody"),F(9,tt,8,4,"tr",null,M),o()()()),i&2){let t=f();n(9),O(t.prompts)}}var g=class i{constructor(e){this.promptService=e}ngOnInit(){this.fetchData()}fetchData(){this.promptService.list().subscribe(e=>this.prompts=e)}static{this.\u0275fac=function(t){return new(t||i)(l(s))}}static{this.\u0275cmp=h({type:i,selectors:[["app-prompt-list"]],standalone:!1,decls:4,vars:2,consts:[[1,"spinner"],[1,"table","table-striped"],[1,"w20"],[1,"w200"],[3,"href"]],template:function(t,m){t&1&&(r(0,"h1"),a(1,"AI Prompts"),o(),d(2,Z,1,0,"div",0),d(3,et,11,0,"div")),t&2&&(n(2),c(m.prompts==null?2:-1),n(),c(m.prompts?3:-1))},encapsulation:2})}};function it(i,e){i&1&&p(0,"div",3)}function ot(i,e){if(i&1){let t=w();r(0,"div"),p(1,"app-info-message",4),r(2,"form",5),T("ngSubmit",function(){j(t);let X=f();return N(X.updatePrompt())}),r(3,"div",6)(4,"label",7),a(5,"Slug"),o(),p(6,"input",8),o(),r(7,"div",6)(8,"label",9),a(9,"Text"),o(),p(10,"textarea",10),o(),r(11,"button",11),a(12,"Save"),o()()()}if(i&2){let t=f();n(),u("error",t.error)("message",t.message),n(),u("formGroup",t.form),n(9),u("disabled",!t.form.valid)}}var x=class i{constructor(e,t,m){this.promptService=e;this.route=t;this.form=m.group({slug:["",P.required],text:["",P.required]})}ngOnInit(){let e=+this.route.snapshot.params.id;this.fetchData(e)}fetchData(e){console.log("fetchData: "+e),this.promptService.get(e).subscribe(t=>{this.prompt=t,this.form.patchValue(t)},t=>{this.error=U(t)})}updatePrompt(){let e=this.form.value;this.promptService.update(this.prompt.id,e).subscribe(t=>{this.fetchData(this.prompt.id),this.message="Update complete"})}static{this.\u0275fac=function(t){return new(t||i)(l(s),l(J),l(H))}}static{this.\u0275cmp=h({type:i,selectors:[["app-prompt-edit"]],standalone:!1,decls:8,vars:2,consts:[[1,"hlink"],["href","/app/admin/prompt/list"],[1,"mb-5"],[1,"spinner"],[3,"error","message"],[3,"ngSubmit","formGroup"],[1,"form-group"],["for","slug"],["type","text","formControlName","slug","id","slug","required","",1,"form-control"],["for","text"],["formControlName","text","id","text","rows","20","cols","80","required","",1,"form-control"],["type","submit",1,"btn","btn-primary",3,"disabled"]],template:function(t,m){t&1&&(r(0,"ul",0)(1,"li")(2,"a",1),a(3,"List"),o()()(),r(4,"h1",2),a(5,"Prompt Edit"),o(),d(6,it,1,0,"div",3),d(7,ot,13,4,"div")),t&2&&(n(6),c(m.prompt==null?6:-1),n(),c(m.prompt?7:-1))},dependencies:[$,R,V,G,k,B,q,z],encapsulation:2})}};var rt=[{path:"list",component:g},{path:":id",children:[{path:"edit",component:x}]}],y=class i{static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275mod=C({type:i})}static{this.\u0275inj=v({imports:[_.forChild(rt),_]})}};var W=class i{static{this.\u0275fac=function(t){return new(t||i)}}static{this.\u0275mod=C({type:i})}static{this.\u0275inj=v({providers:[s],imports:[K,y]})}};export{W as PromptModule};
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.