import{s as w,t as A}from"./chunk-C6uGsfWa.js";import{$ as Ehe,Ar as Tu,Bn as Ow,Br as Ux,Cs as q5,Da as e5,Eo as kb,Er as TV,Fo as l$,Ga as g$,Gi as ar,Go as m5,Gr as Va,Hr as V,Ia as f$,Io as lA,Is as rh,J as EI,Lr as Uj,Ls as rx,No as kx,O as CV,Oi as Zt,Oo as kj,P as Cwe,Q as EV,Qi as bV,Qr as W$,S as Bn,Uo as m$,Wa as g,Yi as bI,Za as gx,Zi as bT,Zo as n5,Zs as tBe,Zt as Kc,_r as Se$1,_s as ph,as as oA,cs as on,ea as bhe,ec as th,er as Qc,et as Em,ga as ci,ha as cf,ho as j$,ii as Wg,it as FB,mi as Xxe,mt as Fx,p as Au,pr as S3,rc as u$,s as $x,ta as bi,u as AV,ua as cA,vc as wp,vr as She,xi as Yn,y as Be,ya as d$,z as DV}from"./chunk-B_pj7Jpm.js";import{t as X1}from"./chunk-CgIzqGPc.js";import"./chunk-BV11JmKC.js";import"./chunk-CdfINgvq.js";import{A as qn,C as fn,I as yn,O as ln,_ as Zn,o as Je,p as Vn,s as Jn,t as $n,u as Qn}from"./chunk-BPHMC4rz.js";import"./chunk-COgN00_S.js";import"./chunk-DULXsDZq.js";import{c as oi}from"./chunk-CEibY8iL.js";import{t as S}from"./chunk-BmH4cOwr.js";import{O as sr}from"./chunk-CR0lnyBO.js";import"./chunk-cztdWiEo2.js";import{n as ce}from"./chunk-BHPWLTEh2.js";import"./chunk-BD06qecY2.js";import{a as ne,r as Le}from"./chunk-gBn5D-ff2.js";import{t as g$1}from"./chunk-BESppbb1.js";import{i as o}from"./chunk-CL9Zi7SR.js";import"./chunk-mhEVtCsW.js";import{t as k}from"./chunk-DaUEjKCf.js";import{d as Xe,h as Ze,i as Jo,o as Ke,p as Ye,t as $t$1,w as zt,x as qe}from"./chunk-BHzUb4p92.js";var It=A((lo,Et)=>{Et.exports=`<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-key-round-icon lucide-key-round">
  <path d="M2.586 17.414A2 2 0 0 0 2 18.828V21a1 1 0 0 0 1 1h3a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h1a1 1 0 0 0 1-1v-1a1 1 0 0 1 1-1h.172a2 2 0 0 0 1.414-.586l.814-.814a6.5 6.5 0 1 0-4-4z" />
  <circle cx="16.5" cy="7.5" r=".5" fill="currentColor" />
</svg>
`});var At=A((_o,Pt)=>{Pt.exports=`<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-briefcase-business-icon lucide-briefcase-business">
  <path d="M12 12h.01" />
  <path d="M16 6V4a2 2 0 0 0-2-2h-4a2 2 0 0 0-2 2v2" />
  <path d="M22 13a18.15 18.15 0 0 1-20 0" />
  <rect width="20" height="14" x="2" y="6" rx="2" />
</svg>
`});function $e(){return`no_welcome_modal`}var Ne=class l{hide=Ehe();static ɵfac=function(e){return new(e||l)};static ɵcmp=Va({type:l,selectors:[[`my-admin-config-wizard-documentation`]],outputs:{hide:`hide`},decls:55,vars:0,consts:()=>{let n;n="Congratulations";let e;e="Your platform has been configured!";let t;t=`It's time to add information about your platform! ${`[�#12�|�#13�|�#14�|�#15�|�#16�]`}Setting up a description${`[�/#12�|�/#13�|�/#14�|�/#15�|�/#16�]`}, specifying ${`[�#12�|�#13�|�#14�|�#15�|�#16�]`}who you are${`[�/#12�|�/#13�|�/#14�|�/#15�|�/#16�]`}, why ${`[�#12�|�#13�|�#14�|�#15�|�#16�]`}you created your platform${`[�/#12�|�/#13�|�/#14�|�/#15�|�/#16�]`} and ${`[�#12�|�#13�|�#14�|�#15�|�#16�]`}how long${`[�/#12�|�/#13�|�/#14�|�/#15�|�/#16�]`} you plan to ${`[�#12�|�#13�|�#14�|�#15�|�#16�]`}maintain it${`[�/#12�|�/#13�|�/#14�|�/#15�|�/#16�]`} is very important for visitors to understand on what type of website they are. `,t=d$(t);let r;r="Useful links";let s;s="Official PeerTube website:";let p;p="Blog post, get help or discover PeerTube";let I;I="Public PeerTube index:";let D;D="Put your platform on the official PeerTube public index";let x;x="Documentation";let k;k="Admin:";let X;X="Managing users, following other platforms, dealing with spammers, configure object storage or remote transcoding...";let A;A="Setup your account, managing video playlists, discover third-party applications...";let y;y="CLI:";let we;we="Upload or import videos, parse logs, prune storage directories, reset user password...";let Le;Le="Close";let We;return We="Fill platform information",[n,e,t,r,s,p,I,D,x,k,X,A,y,we,Le,We,[1,`root`],[1,`one-column`],[1,`mascot-container`],[`src`,`/client/assets/images/mascot/happy.svg`,`alt`,`mascot`,1,`mascot`],[1,`title`],[1,`sub-title`],[1,`mt-4`],[1,`text-content`],[`href`,`https://joinpeertube.org`,`target`,`_blank`,1,`link-primary`,`me-1`],[`href`,`https://instances.joinpeertube.org/instances`,`target`,`_blank`,1,`link-primary`,`me-1`],[`href`,`https://docs.joinpeertube.org/admin/following-instances`,`target`,`_blank`,1,`link-primary`,`me-1`],[`href`,`https://docs.joinpeertube.org/use/setup-account`,`target`,`_blank`,1,`link-primary`,`me-1`],[`href`,`https://docs.joinpeertube.org/maintain/tools`,`target`,`_blank`,1,`link-primary`,`me-1`],[1,`buttons`],[`theme`,`secondary`,3,`click`],[`theme`,`primary`,`ptRouterLink`,`/admin/settings/config`,3,`click`]]},template:function(e,t){e&1&&(wp(0,`div`,16)(1,`div`,17)(2,`div`,18),th(3,`img`,19),kb(),wp(4,`h4`)(5,`div`,20),l$(6,0),kb(),wp(7,`div`,21),l$(8,1),kb()()(),wp(9,`div`,22)(10,`span`,23),kx(11,2),th(12,`strong`)(13,`strong`)(14,`strong`)(15,`strong`)(16,`strong`),Fx(),kb()(),wp(17,`div`,22)(18,`h5`),l$(19,3),kb(),wp(20,`ul`,23)(21,`li`)(22,`a`,24),l$(23,4),kb(),wp(24,`span`),l$(25,5),kb()(),wp(26,`li`)(27,`a`,25),l$(28,6),kb(),wp(29,`span`),l$(30,7),kb()()()(),wp(31,`div`,22)(32,`h5`),l$(33,8),kb(),wp(34,`ul`,23)(35,`li`)(36,`a`,26),l$(37,9),kb(),wp(38,`span`),l$(39,10),kb()(),wp(40,`li`)(41,`a`,27),j$(42,`User:`),kb(),wp(43,`span`),l$(44,11),kb()(),wp(45,`li`)(46,`a`,28),l$(47,12),kb(),wp(48,`span`),l$(49,13),kb()()()(),wp(50,`div`,29)(51,`my-button`,30),rh(`click`,function(){return t.hide.emit()}),l$(52,14),kb(),wp(53,`my-button`,31),rh(`click`,function(){return t.hide.emit()}),l$(54,15),kb()()())},dependencies:[ce],styles:[`.steps[_ngcontent-%COMP%]{color:var(--%NS%fg-200);font-size:14px;font-weight:700}.title[_ngcontent-%COMP%]{color:var(--%NS%fg-350);font-weight:700;font-size:calc(1.3625rem + 1.35vw)}@media(min-width:1200px){.title[_ngcontent-%COMP%]{font-size:2.375rem}}.sub-title[_ngcontent-%COMP%]{color:var(--%NS%fg-300);font-weight:400;font-size:1.25rem}h4[_ngcontent-%COMP%]{margin-bottom:0}.text-content[_ngcontent-%COMP%]{color:var(--%NS%fg-200)}.buttons[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;justify-content:center;margin-top:calc(1.375rem + 1.5vw)}@media(min-width:1200px){.buttons[_ngcontent-%COMP%]{margin-top:2.5rem}}.buttons[_ngcontent-%COMP%]{gap:calc(1.275rem + .3vw)}@media(min-width:1200px){.buttons[_ngcontent-%COMP%]{gap:1.5rem}}form[_ngcontent-%COMP%]{max-width:512px;width:100%}.two-columns[_ngcontent-%COMP%]{display:flex;gap:1rem}.two-columns.width-50[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]{width:50%}.one-column[_ngcontent-%COMP%]{text-align:center}.one-column[_ngcontent-%COMP%]   .mascot-container[_ngcontent-%COMP%]{position:relative;height:110px;margin:0 auto}.one-column[_ngcontent-%COMP%]   .mascot-container[_ngcontent-%COMP%], .one-column[_ngcontent-%COMP%]   .mascot[_ngcontent-%COMP%]{width:170px}.one-column[_ngcontent-%COMP%]   .mascot[_ngcontent-%COMP%]{position:absolute;top:-100px;left:0;height:190px}h5[_ngcontent-%COMP%]{font-size:1rem;font-weight:700;color:var(--%NS%fg-300)}`],changeDetection:1})};var Nt=l=>({"input-error":l});function Tt(l,n){if(l&1&&(wp(0,`div`,22),j$(1),kb()),l&2){let e=f$();FB(),oA(e.formErrors.platformName)}}function Dt(l,n){if(l&1&&(wp(0,`div`,22),j$(1),kb()),l&2){let e=f$();FB(),oA(e.formErrors.shortDescription)}}function Ft(l,n){if(l&1){let e=AV();wp(0,`my-button`,34),rh(`click`,function(){EI(e);return bI(f$().back.emit())}),l$(1,10),kb()}}var Ie=class l{server=g(Zt);formReactiveService=g(S);themeService=g(Wg);currentStep=ph.required({transform:q5});totalSteps=ph.required({transform:q5});showBack=ph.required({transform:Tu});back=Ehe();next=Ehe();hide=Ehe();form;formErrors={};validationMessages={};ngOnInit(){this.buildForm();let n=bT(this.server.getHTMLConfig().instance.avatars,128);n&&fetch(n.fileUrl).then(e=>e.blob()).then(e=>this.form.patchValue({avatar:e})).catch(()=>{V.error(`Could not fetch instance avatar`)})}get avatarFileConstraints(){return this.server.getHTMLConfig().avatar.file}buildForm(){let n={platformName:$t$1,shortDescription:zt,avatar:null,primaryColor:o},{form:e,formErrors:t,validationMessages:r}=this.formReactiveService.buildForm(n,this.getDefaultValues());this.form=e,this.formErrors=t,this.validationMessages=r}getDefaultValues(){let n=this.server.getHTMLConfig(),e=n.theme.customization.primaryColor,t=e?this.themeService.formatColorForForm(e):this.themeService.formatColorForForm(this.themeService.getCSSConfigValue(`primaryColor`));return{platformName:n.instance.name,shortDescription:n.instance.shortDescription,avatar:void 0,primaryColor:t}}static ɵfac=function(e){return new(e||l)};static ɵcmp=Va({type:l,selectors:[[`my-admin-config-wizard-edit-info`]],inputs:{currentStep:[1,`currentStep`],totalSteps:[1,`totalSteps`],showBack:[1,`showBack`]},outputs:{back:`back`,next:`next`,hide:`hide`},decls:39,vars:15,consts:()=>{let n;n=`STEP ${`�0�`}/${`�1�`}`;let e;e="General information";let t;t="You can edit this information later";let r;r="Platform name";let s;s="Short description";let p;p="Platform icon";let I;I="Used in various places such as on the website, mobile application and social media";let D;D="Primary color";let x;x="Next step";let k;k="Ignore for now";let X;return X="Back",[n,e,t,r,s,p,I,D,x,k,X,[1,`root`],[1,`two-columns`],[`src`,`/client/assets/images/mascot/pointing.svg`,`alt`,`mascot`,1,`mascot`],[1,`steps`],[1,`header-steps`],[1,`title`],[1,`text-content`],[3,`formGroup`],[1,`form-group`],[`for`,`platformName`],[`type`,`text`,`id`,`platformName`,`formControlName`,`platformName`,1,`form-control`,3,`ngClass`],[`role`,`alert`,1,`form-error`],[`for`,`shortDescription`],[`id`,`shortDescription`,`formControlName`,`shortDescription`,1,`form-control`,`small`,3,`ngClass`],[`for`,`avatarfile`],[1,`form-group-description`],[`formControlName`,`avatar`,`inputName`,`avatar`,`displayDelete`,`true`,1,`avatar-preview`,3,`fileConstraints`],[`for`,`primaryColor`],[`inputId`,`primaryColor`,`formControlName`,`primaryColor`,3,`formError`],[1,`buttons`],[`icon`,`arrow-left`,`theme`,`secondary`],[`theme`,`primary`,3,`click`,`disabled`],[1,`button-as-link`,3,`click`],[`icon`,`arrow-left`,`theme`,`secondary`,3,`click`]]},template:function(e,t){e&1&&(wp(0,`div`,11)(1,`div`,12)(2,`div`),th(3,`img`,13),kb(),wp(4,`div`)(5,`div`,14)(6,`div`,15),l$(7,0),kb()(),wp(8,`h4`,16),l$(9,1),kb(),wp(10,`div`,17),l$(11,2),kb(),wp(12,`form`,18)(13,`div`,19)(14,`label`,20),l$(15,3),kb(),th(16,`input`,21),kj(),EV(17,Tt,2,1,`div`,22),kb(),wp(18,`div`,19)(19,`label`,23),l$(20,4),kb(),th(21,`textarea`,24),kj(),EV(22,Dt,2,1,`div`,22),kb(),wp(23,`div`,19)(24,`label`,25),l$(25,5),kb(),wp(26,`div`,26),l$(27,6),kb(),th(28,`my-image-input`,27),kj(),kb(),wp(29,`div`,19)(30,`label`,28),l$(31,7),kb(),th(32,`my-peertube-color-picker`,29),kj(),kb(),wp(33,`div`,30),EV(34,Ft,2,0,`my-button`,31),wp(35,`my-button`,32),rh(`click`,function(){return t.next.emit(t.form.value)}),l$(36,8),kb(),wp(37,`button`,33),rh(`click`,function(){return t.hide.emit()}),l$(38,9),kb()()()()()()),e&2&&(FB(7),Ux(t.currentStep())(t.totalSteps()),u$(7),FB(5),gx(`formGroup`,t.form),FB(4),gx(`ngClass`,n5(11,Nt,t.formErrors.platformName)),Uj(),FB(),bV(t.formErrors.platformName?17:-1),FB(4),gx(`ngClass`,n5(13,Nt,t.formErrors.shortDescription)),Uj(),FB(),bV(t.formErrors.shortDescription?22:-1),FB(6),gx(`fileConstraints`,t.avatarFileConstraints),Uj(),FB(4),gx(`formError`,t.formErrors.primaryColor),Uj(),FB(2),bV(t.showBack()?34:-1),FB(),gx(`disabled`,!t.form.valid))},dependencies:[Au,S3,Jn,Zn,Je,qn,$n,Qn,Vn,yn,Ke,Le,ce,k],styles:[`form[_ngcontent-%COMP%]{margin-top:calc(1.325rem + .9vw)}@media(min-width:1200px){form[_ngcontent-%COMP%]{margin-top:2rem}}.mascot[_ngcontent-%COMP%]{margin-top:-90px;width:170px;height:190px}.avatar-preview[_ngcontent-%COMP%]{width:128px;height:128px}@media screen and (max-width:800px){.mascot[_ngcontent-%COMP%]{display:none}.two-columns[_ngcontent-%COMP%]{justify-content:center}}textarea[_ngcontent-%COMP%]{min-height:150px}`,`.steps[_ngcontent-%COMP%]{color:var(--%NS%fg-200);font-size:14px;font-weight:700}.title[_ngcontent-%COMP%]{color:var(--%NS%fg-350);font-weight:700;font-size:calc(1.3625rem + 1.35vw)}@media(min-width:1200px){.title[_ngcontent-%COMP%]{font-size:2.375rem}}.sub-title[_ngcontent-%COMP%]{color:var(--%NS%fg-300);font-weight:400;font-size:1.25rem}h4[_ngcontent-%COMP%]{margin-bottom:0}.text-content[_ngcontent-%COMP%]{color:var(--%NS%fg-200)}.buttons[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;justify-content:center;margin-top:calc(1.375rem + 1.5vw)}@media(min-width:1200px){.buttons[_ngcontent-%COMP%]{margin-top:2.5rem}}.buttons[_ngcontent-%COMP%]{gap:calc(1.275rem + .3vw)}@media(min-width:1200px){.buttons[_ngcontent-%COMP%]{gap:1.5rem}}form[_ngcontent-%COMP%]{max-width:512px;width:100%}.two-columns[_ngcontent-%COMP%]{display:flex;gap:1rem}.two-columns.width-50[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]{width:50%}.one-column[_ngcontent-%COMP%]{text-align:center}.one-column[_ngcontent-%COMP%]   .mascot-container[_ngcontent-%COMP%]{position:relative;height:110px;margin:0 auto}.one-column[_ngcontent-%COMP%]   .mascot-container[_ngcontent-%COMP%], .one-column[_ngcontent-%COMP%]   .mascot[_ngcontent-%COMP%]{width:170px}.one-column[_ngcontent-%COMP%]   .mascot[_ngcontent-%COMP%]{position:absolute;top:-100px;left:0;height:190px}h5[_ngcontent-%COMP%]{font-size:1rem;font-weight:700;color:var(--%NS%fg-300)}`],changeDetection:1})};var Oe=class l{el=g(Bn);unsafeHTML=ph.required();ngOnInit(){let n=this.el.nativeElement;n.innerHTML=this.unsafeHTML(),n.ariaHidden=`true`}static ɵfac=function(e){return new(e||l)};static ɵcmp=Va({type:l,selectors:[[`my-custom-icon`]],inputs:{unsafeHTML:[1,`unsafeHTML`]},decls:0,vars:0,template:function(e,t){},styles:[`[_nghost-%COMP%]{display:inline-block;height:24px;width:24px}[_nghost-%COMP%]     svg{vertical-align:bottom;width:inherit;height:inherit}[_nghost-%COMP%]     .feather-flag{margin-left:-1px}`]})};var Se=class l{formReactiveService=g(S);usageType=bhe.required();form;formErrors={};validationMessages={};registrationOptions=[{id:`open`,label:"Open",description:"Anyone can register and use the platform"},{id:`approval`,label:"Requires approval",description:"Anyone can register, but a moderator must approve their account before they can use the platform"},{id:`closed`,label:"Closed",description:"Only an administrator can create users on the platform"}];importOptions=[{id:`enabled`,label:"Enabled",description:`Your community can import videos from remote platforms (YouTube, Vimeo...) and automatically synchronize remote channels`},{id:`disabled`,label:"Disabled",description:"Your community cannot import or synchronize content from remote platforms"}];liveOptions=[{id:`enabled`,label:"Yes",description:"Your community can live stream on the platform (this requires extra moderation work)"},{id:`disabled`,label:"No",description:"Your community is not permitted to run live streams on the platform"}];globalSearchOptions=[{id:`enabled`,label:"Enable global search",description:"Use https://sepiasearch.org as default search engine to search for content across all known PeerTube platforms"},{id:`disabled`,label:"Disable global search",description:"Use your platform search engine which only displays local content"}];videoQuotaOptions=Jo();ngOnInit(){this.buildForm(),this.form.valueChanges.subscribe(n=>{this.usageType().patch(n)})}buildForm(){let{form:e,formErrors:t,validationMessages:r}=this.formReactiveService.buildForm({registration:null,remoteImport:null,videoQuota:null,live:null,globalSearch:null},this.usageType());this.form=e,this.formErrors=t,this.validationMessages=r}static ɵfac=function(e){return new(e||l)};static ɵcmp=Va({type:l,selectors:[[`my-community-based-config`]],inputs:{usageType:[1,`usageType`]},outputs:{usageType:`usageTypeChange`},decls:21,vars:6,consts:()=>{let n;n="Registration policy";let e;e="Video quota for new users";let t;t="Video import and synchronization";let r;r="My community can stream lives";let s;return s="Search",[n,e,t,r,s,[3,`formGroup`],[1,`form-group`],[`for`,``],[`inputId`,`registration`,`formControlName`,`registration`,3,`items`],[`inputId`,`videoQuota`,`formControlName`,`videoQuota`,3,`items`],[`for`,`remoteImport`],[`inputId`,`remoteImport`,`formControlName`,`remoteImport`,3,`items`],[`inputId`,`live`,`formControlName`,`live`,3,`items`],[`inputId`,`globalSearch`,`formControlName`,`globalSearch`,3,`items`]]},template:function(e,t){e&1&&(wp(0,`form`,5)(1,`div`,6)(2,`label`,7),l$(3,0),kb(),th(4,`my-select-options`,8),kj(),kb(),wp(5,`div`,6)(6,`label`,7),l$(7,1),kb(),th(8,`my-select-options`,9),kj(),kb(),wp(9,`div`,6)(10,`label`,10),l$(11,2),kb(),th(12,`my-select-options`,11),kj(),kb(),wp(13,`div`,6)(14,`label`,7),l$(15,3),kb(),th(16,`my-select-options`,12),kj(),kb(),wp(17,`div`,6)(18,`label`,7),l$(19,4),kb(),th(20,`my-select-options`,13),kj(),kb()()),e&2&&(gx(`formGroup`,t.form),FB(4),gx(`items`,t.registrationOptions),Uj(),FB(4),gx(`items`,t.videoQuotaOptions),Uj(),FB(4),gx(`items`,t.importOptions),Uj(),FB(4),gx(`items`,t.liveOptions),Uj(),FB(4),gx(`items`,t.globalSearchOptions),Uj())},dependencies:[Jn,Zn,qn,$n,Qn,Vn,yn,Ye,Le,oi],encapsulation:2,changeDetection:1})};var Te=class l{formReactiveService=g(S);usageType=bhe.required();form;formErrors={};validationMessages={};p2pOptions=[{id:`enabled`,label:"Enabled",description:"Enable P2P streaming by default for anonymous and new users"},{id:`disabled`,label:"Disabled",description:"Disable P2P streaming"}];transcriptionOptions=[{id:`enabled`,label:"Enabled",description:"Enable automatic transcription of videos to automatically generate subtitles"},{id:`disabled`,label:"Disabled",description:"Disable automatic transcription of videos"}];keepOriginalVideoOptions=[{id:`enabled`,label:"Yes",description:"Keep the original video file on the server"},{id:`disabled`,label:"No",description:"Delete the original video file after processing"}];authenticationOptions=[{id:`local`,label:"Disabled",description:"Your platform will manage user registration and login internally"},{id:`ldap`,label:"LDAP",description:"Use LDAP for user authentication"},{id:`oidc`,label:"OIDC",description:"Use OpenID Connect for user authentication"},{id:`saml`,label:"SAML",description:"Use SAML 2.0 for user authentication"}];ngOnInit(){this.buildForm(),this.form.valueChanges.subscribe(n=>{this.usageType().patch(n)})}buildForm(){let{form:e,formErrors:t,validationMessages:r}=this.formReactiveService.buildForm({keepOriginalVideo:null,p2p:null,transcription:null,authType:null},this.usageType());this.form=e,this.formErrors=t,this.validationMessages=r}static ɵfac=function(e){return new(e||l)};static ɵcmp=Va({type:l,selectors:[[`my-institutional-config`]],inputs:{usageType:[1,`usageType`]},outputs:{usageType:`usageTypeChange`},decls:21,vars:5,consts:()=>{let n;n="Save a copy of the uploaded video";let e;e="P2P";let t;t=`Helps your platform to distribute video content, but ${`�#10�`}decreases privacy ${`�#11�`}${`�/#11�`}${`�/#10�`} of your users `;let r;r="Video transcription";let s;return s="Remote authentication",[n,e,t,r,s,[3,`formGroup`],[1,`form-group`],[`for`,`keepOriginalVideo`],[`inputId`,`keepOriginalVideo`,`formControlName`,`keepOriginalVideo`,3,`items`],[`for`,`p2p`],[1,`form-group-description`],[`href`,`https://docs.joinpeertube.org/admin/privacy-guide#player-p2p`,`target`,`_blank`],[`iconName`,`external-link`],[`inputId`,`p2p`,`formControlName`,`p2p`,3,`items`],[`for`,`transcription`],[`inputId`,`transcription`,`formControlName`,`transcription`,3,`items`],[`for`,`authType`],[`inputId`,`authType`,`formControlName`,`authType`,3,`items`]]},template:function(e,t){e&1&&(wp(0,`form`,5)(1,`div`,6)(2,`label`,7),l$(3,0),kb(),th(4,`my-select-options`,8),kj(),kb(),wp(5,`div`,6)(6,`label`,9),l$(7,1),kb(),wp(8,`div`,10),kx(9,2),wp(10,`a`,11),th(11,`my-global-icon`,12),kb(),Fx(),kb(),th(12,`my-select-options`,13),kj(),kb(),wp(13,`div`,6)(14,`label`,14),l$(15,3),kb(),th(16,`my-select-options`,15),kj(),kb(),wp(17,`div`,6)(18,`label`,16),l$(19,4),kb(),th(20,`my-select-options`,17),kj(),kb()()),e&2&&(gx(`formGroup`,t.form),FB(4),gx(`items`,t.keepOriginalVideoOptions),Uj(),FB(8),gx(`items`,t.p2pOptions),Uj(),FB(4),gx(`items`,t.transcriptionOptions),Uj(),FB(4),gx(`items`,t.authenticationOptions),Uj())},dependencies:[Jn,Zn,qn,$n,Qn,Vn,yn,Ye,Le,oi,X1],encapsulation:2,changeDetection:1})};var De=class l{formReactiveService=g(S);usageType=bhe.required();form;formErrors={};validationMessages={};importOptions=[{id:`enabled`,label:"Enabled",description:"Users can import videos from remote platforms (YouTube, Vimeo...) and automatically synchronize remote channels"},{id:`disabled`,label:"Disabled",description:"Disable video import and channel synchronization"}];liveOptions=[{id:`enabled`,label:"Yes"},{id:`disabled`,label:"No"}];keepOriginalVideoOptions=[{id:`enabled`,label:"Yes",description:"Keep the original video file on the server"},{id:`disabled`,label:"No",description:"Delete the original video file after processing"}];ngOnInit(){this.buildForm(),this.form.valueChanges.subscribe(n=>{this.usageType().patch(n)})}buildForm(){let{form:e,formErrors:t,validationMessages:r}=this.formReactiveService.buildForm({remoteImport:null,live:null,keepOriginalVideo:null},this.usageType());this.form=e,this.formErrors=t,this.validationMessages=r}static ɵfac=function(e){return new(e||l)};static ɵcmp=Va({type:l,selectors:[[`my-private-instance-config`]],inputs:{usageType:[1,`usageType`]},outputs:{usageType:`usageTypeChange`},decls:13,vars:4,consts:()=>{let n;n="Video import and synchronization";let e;e="Users can stream lives";let t;return t="Save a copy of the uploaded video",[n,e,t,[3,`formGroup`],[1,`form-group`],[`for`,`remoteImport`],[`inputId`,`remoteImport`,`formControlName`,`remoteImport`,3,`items`],[`for`,`live`],[`inputId`,`live`,`formControlName`,`live`,3,`items`],[`for`,`keepOriginalVideo`],[`inputId`,`keepOriginalVideo`,`formControlName`,`keepOriginalVideo`,3,`items`]]},template:function(e,t){e&1&&(wp(0,`form`,3)(1,`div`,4)(2,`label`,5),l$(3,0),kb(),th(4,`my-select-options`,6),kj(),kb(),wp(5,`div`,4)(6,`label`,7),l$(7,1),kb(),th(8,`my-select-options`,8),kj(),kb(),wp(9,`div`,4)(10,`label`,9),l$(11,2),kb(),th(12,`my-select-options`,10),kj(),kb()()),e&2&&(gx(`formGroup`,t.form),FB(4),gx(`items`,t.importOptions),Uj(),FB(4),gx(`items`,t.liveOptions),Uj(),FB(4),gx(`items`,t.keepOriginalVideoOptions),Uj())},dependencies:[Jn,Zn,qn,$n,Qn,Vn,yn,Ye,Le,oi],encapsulation:2,changeDetection:1})};var ie=class l{registration;videoQuota;remoteImport;live;globalSearch;defaultPrivacy;defaultCommentPolicy;p2p;federation;keepOriginalVideo;allowReplaceFile;preferDisplayName;transcription;authType;unsafeExplanations=[];config={};plugins=[];constructor(n){for(let[e,t]of Object.entries(n))this[e]=t}static initForCommunity(){let n=new l({registration:`approval`,remoteImport:`disabled`,live:`enabled`,videoQuota:5368709120,globalSearch:`enabled`,defaultPrivacy:on.PUBLIC,p2p:`enabled`,federation:`enabled`,keepOriginalVideo:`disabled`,allowReplaceFile:`disabled`,defaultCommentPolicy:void 0,authType:void 0,preferDisplayName:void 0,transcription:void 0});return n.compute(),n}static initForPrivateInstance(){let n=new l({registration:`closed`,remoteImport:`enabled`,live:`enabled`,videoQuota:-1,globalSearch:`disabled`,defaultPrivacy:on.INTERNAL,p2p:`disabled`,federation:`disabled`,keepOriginalVideo:`enabled`,allowReplaceFile:`enabled`,preferDisplayName:`enabled`,defaultCommentPolicy:void 0,authType:void 0,transcription:void 0});return n.compute(),n}static initForInstitution(){let n=new l({registration:`closed`,remoteImport:`enabled`,live:`enabled`,videoQuota:-1,globalSearch:`disabled`,defaultPrivacy:on.PUBLIC,p2p:`disabled`,keepOriginalVideo:`enabled`,allowReplaceFile:`enabled`,preferDisplayName:`enabled`,authType:`local`,transcription:`enabled`,defaultCommentPolicy:Em.REQUIRES_APPROVAL,federation:void 0});return n.compute(),n}compute(){this.unsafeExplanations=[],this.plugins=[],this.config={},this.computeRegistration(),this.computeDefaultVideoPrivacy(),this.computeVideoQuota(),this.computeKeepOriginalVideo(),this.computeReplaceVideoFile(),this.computeVideoImport(),this.computeStreamLives(),this.computeP2P(),this.computeGlobalSearch(),this.computeDefaultVideoCommentPolicy(),this.computeFederation(),this.computeMiniatureSettings(),this.computeTranscription(),this.computeAuth()}getUnsafeExplanations(){return[...this.unsafeExplanations]}getConfig(){return w({},this.config)}getPlugins(){return[...this.plugins]}patch(n){for(let[e,t]of Object.entries(n))this[e]=t;this.compute()}computeRegistration(){Cwe(this.registration)&&(this.registration===`open`?(this.addExplanation("<strong>Allow</strong> any user <strong>to register</strong>"),this.addConfig({signup:{enabled:!0,requiresApproval:!1}})):this.registration===`approval`?(this.addExplanation("Allow users to <strong>apply for registration</strong> on your platform"),this.addConfig({signup:{enabled:!0,requiresApproval:!0}})):this.registration===`closed`&&(this.addExplanation("<strong>Disable</strong> user <strong>registration</strong>"),this.addConfig({signup:{enabled:!1}})),(this.registration===`approval`||this.registration===`open`)&&(this.addExplanation("Require <strong>moderator approval</strong> for videos published by your community"),this.addConfig({autoBlacklist:{videos:{ofUsers:{enabled:!0}}}})))}computeVideoQuota(){Cwe(this.videoQuota)&&(this.addConfig({user:{videoQuota:this.videoQuota}}),this.videoQuota===0?this.addExplanation("<strong>Prevent</strong> new users <strong>from uploading videos</strong> (can be changed by moderators)"):this.videoQuota===-1?this.addExplanation("<strong>Not limit the amount of videos</strong> new users can upload"):this.addExplanation(`Set <strong>video quota to ${Xxe(this.videoQuota,0)}</strong> for new users (can be changed by moderators)`))}computeVideoImport(){Cwe(this.remoteImport)&&(this.addConfig({import:{videos:{http:{enabled:this.remoteImport===`enabled`}},videoChannelSynchronization:{enabled:this.remoteImport===`enabled`}}}),this.remoteImport===`enabled`?this.addExplanation("<strong>Allow</strong> your users <strong>to import and synchronize</strong> videos from remote platforms (YouTube, Vimeo...)"):this.addExplanation("<strong>Prevent</strong> your users <strong>from importing videos</strong> from remote platforms"))}computeStreamLives(){Cwe(this.live)&&(this.addConfig({live:{enabled:this.live===`enabled`}}),this.live===`enabled`?(this.plugins.push(`peertube-plugin-livechat`),this.addExplanation("<strong>Allow</strong> your users <strong>to stream lives</strong> and chat with their viewers using the <strong>Livechat</strong> plugin")):this.addExplanation("<strong>Prevent</strong> your users from running <strong>live streams</strong>"))}computeDefaultVideoPrivacy(){Cwe(this.defaultPrivacy)&&(this.addConfig({defaults:{publish:{privacy:this.defaultPrivacy}}}),this.defaultPrivacy===on.INTERNAL?this.addExplanation("Set the <strong>default video privacy</strong> to <strong>Internal</strong>"):this.defaultPrivacy===on.PUBLIC&&this.addExplanation("Set the <strong>default video privacy</strong> to <strong>Public</strong>"))}computeDefaultVideoCommentPolicy(){Cwe(this.defaultCommentPolicy)&&(this.addConfig({defaults:{publish:{commentsPolicy:this.defaultCommentPolicy}}}),this.addExplanation("<strong>Require approval</strong> by default of new video comment"))}computeP2P(){Cwe(this.p2p)&&(this.addConfig({defaults:{p2p:{embed:{enabled:this.p2p===`enabled`},webapp:{enabled:this.p2p===`enabled`}}}}),this.p2p===`enabled`?this.addExplanation("<strong>Enable P2P streaming</strong> by default for anonymous and new users"):this.addExplanation("<strong>Disable P2P streaming</strong> by default for anonymous and new users"))}computeFederation(){Cwe(this.federation)&&(this.addConfig({followers:{instance:{enabled:this.federation===`enabled`},channels:{enabled:this.federation===`enabled`}}}),this.federation===`enabled`?this.addExplanation("<strong>Allow</strong> external platforms/users to <strong>subscribe</strong> to your content"):this.addExplanation("<strong>Prevent</strong> external platforms/users to <strong>subscribe to your content</strong>"))}computeKeepOriginalVideo(){Cwe(this.keepOriginalVideo)&&(this.addConfig({transcoding:{originalFile:{keep:this.keepOriginalVideo===`enabled`}}}),this.keepOriginalVideo===`enabled`&&this.addExplanation("<strong>Save a copy</strong> of the uploaded video file"))}computeReplaceVideoFile(){Cwe(this.allowReplaceFile)&&(this.addConfig({videoFile:{update:{enabled:this.allowReplaceFile===`enabled`}}}),this.allowReplaceFile===`enabled`&&this.addExplanation("<strong>Allow</strong> your users <strong>to replace a video</strong> that has already been published"))}computeMiniatureSettings(){Cwe(this.preferDisplayName)&&this.addConfig({client:{videos:{miniature:{preferAuthorDisplayName:this.preferDisplayName===`enabled`}}}})}computeGlobalSearch(){Cwe(this.globalSearch)&&(this.addConfig({search:{searchIndex:{enabled:this.globalSearch===`enabled`,isDefaultSearch:this.globalSearch===`enabled`,url:`https://sepiasearch.org`}}}),this.globalSearch===`enabled`&&this.addExplanation("Set <a href=\"https://sepiasearch.org\" target=\"_blank\">SepiaSearch</a> as <strong>default search engine</strong>"))}computeTranscription(){Cwe(this.transcription)&&(this.addConfig({videoTranscription:{enabled:this.transcription===`enabled`}}),this.transcription===`enabled`&&this.addExplanation("<strong>Enable automatic transcription</strong> of videos to create subtitles and improve accessibility"))}computeAuth(){if(!Cwe(this.authType))return;let n="The plugin <strong>must be configured</strong> after the pre-configuration wizard confirmation.";this.authType===`ldap`?(this.addExplanation("Install the <strong>LDAP</strong> authentication plugin."+n),this.plugins.push(`peertube-plugin-auth-ldap`)):this.authType===`saml`?(this.addExplanation("Install the <strong>SAML 2.0</strong> authentication plugin."+n),this.plugins.push(`peertube-plugin-auth-saml2`)):this.authType===`oidc`&&(this.addExplanation("Install the <strong>OpenID Connect</strong> authentication plugin."+n),this.plugins.push(`peertube-plugin-auth-openid-connect`))}addConfig(n){return this.config=tBe(this.config,n)}addExplanation(n){this.unsafeExplanations.push(n)}};var yt=l=>({"platform-type-selected":l});function ht(l,n){if(l&1&&th(0,`my-community-based-config`,35),l&2){let e=f$();gx(`usageType`,e.usageType[e.platformType])}}function Rt(l,n){if(l&1&&th(0,`my-institutional-config`,35),l&2){let e=f$();gx(`usageType`,e.usageType[e.platformType])}}function bt(l,n){if(l&1&&th(0,`my-private-instance-config`,35),l&2){let e=f$();gx(`usageType`,e.usageType[e.platformType])}}var Fe=class l{currentStep=ph.required({transform:q5});totalSteps=ph.required({transform:q5});back=Ehe();next=Ehe();hide=Ehe();iconKey=It();iconInstitution=At();platformType;usageType={community:ie.initForCommunity(),institution:ie.initForInstitution(),private:ie.initForPrivateInstance()};static ɵfac=function(e){return new(e||l)};static ɵcmp=Va({type:l,selectors:[[`my-admin-config-wizard-form`]],inputs:{currentStep:[1,`currentStep`],totalSteps:[1,`totalSteps`]},outputs:{back:`back`,next:`next`,hide:`hide`},decls:58,vars:12,consts:()=>{let n;n=`STEP ${`�0�`}/${`�1�`}`;let e;e="Usage type";let t;t="My platform is more like...";let r;r="Community-based";let s;s="Enable a community to publish content and interact together.";let p;p="Institutional";let I;I="To broadcast your videos. Recommended for public institutions, association and companies.";let D;D="Private";let x;x="Only certain people can access content. Recommended for families and closed communities.";let k;k="Back";let X;X="Preview configuration";let A;return A="Ignore for now",[n,e,t,r,s,p,I,D,x,k,X,A,[1,`root`],[1,`two-columns`,`mb-4`],[`src`,`/client/assets/images/mascot/default.svg`,`alt`,`mascot`,1,`mascot`],[1,`steps`],[1,`header-steps`],[1,`title`],[1,`text-content`],[1,`label`],[1,`two-columns`,`width-50`],[1,`platform-types`,3,`ngClass`],[1,`ul-unstyle`],[1,`platform-type`],[`type`,`radio`,`name`,`platformType`,`id`,`platformTypeCommunity`,`value`,`community`,3,`ngModelChange`,`ngModel`],[`for`,`platformTypeCommunity`],[`iconName`,`users`],[1,`type-label`],[1,`type-description`],[`type`,`radio`,`name`,`platformType`,`id`,`platformTypeInstitution`,`value`,`institution`,3,`ngModelChange`,`ngModel`],[`for`,`platformTypeInstitution`],[3,`unsafeHTML`],[`type`,`radio`,`name`,`platformType`,`id`,`platformTypePrivate`,`value`,`private`,3,`ngModelChange`,`ngModel`],[`for`,`platformTypePrivate`],[1,`platform-config`],[3,`usageType`],[1,`buttons`],[`icon`,`arrow-left`,`theme`,`secondary`,3,`click`],[`theme`,`primary`,3,`click`,`disabled`],[1,`button-as-link`,3,`click`]]},template:function(e,t){e&1&&(wp(0,`div`,12)(1,`div`,13)(2,`div`),th(3,`img`,14),kb(),wp(4,`div`)(5,`div`,15)(6,`div`,16),l$(7,0),kb()(),wp(8,`h4`,17),l$(9,1),kb(),wp(10,`div`,18),j$(11,`You can also edit your platform configuration at a later time`),kb()()(),wp(12,`div`,19),l$(13,2),kb(),wp(14,`div`,20)(15,`div`,21)(16,`ul`,22)(17,`li`,23)(18,`input`,24),lA(`ngModelChange`,function(s){return W$(t.platformType,s)||(t.platformType=s),s}),kb(),kj(),wp(19,`label`,25)(20,`div`),th(21,`my-global-icon`,26),kb(),wp(22,`div`)(23,`div`,27),l$(24,3),kb(),wp(25,`div`,28),l$(26,4),kb()()()(),wp(27,`li`,23)(28,`input`,29),lA(`ngModelChange`,function(s){return W$(t.platformType,s)||(t.platformType=s),s}),kb(),kj(),wp(29,`label`,30)(30,`div`),th(31,`my-custom-icon`,31),kb(),wp(32,`div`)(33,`div`,27),l$(34,5),kb(),wp(35,`div`,28),l$(36,6),kb()()()(),wp(37,`li`,23)(38,`input`,32),lA(`ngModelChange`,function(s){return W$(t.platformType,s)||(t.platformType=s),s}),kb(),kj(),wp(39,`label`,33)(40,`div`),th(41,`my-custom-icon`,31),kb(),wp(42,`div`)(43,`div`,27),l$(44,7),kb(),wp(45,`div`,28),l$(46,8),kb()()()()()(),wp(47,`div`,34),EV(48,ht,1,1,`my-community-based-config`,35)(49,Rt,1,1,`my-institutional-config`,35)(50,bt,1,1,`my-private-instance-config`,35),kb()(),wp(51,`div`,36)(52,`my-button`,37),rh(`click`,function(){return t.back.emit()}),l$(53,9),kb(),wp(54,`my-button`,38),rh(`click`,function(){return t.next.emit(t.usageType[t.platformType])}),l$(55,10),kb(),wp(56,`button`,39),rh(`click`,function(){return t.hide.emit()}),l$(57,11),kb()()()),e&2&&(FB(7),Ux(t.currentStep())(t.totalSteps()),u$(7),FB(8),gx(`ngClass`,n5(10,yt,t.platformType)),FB(3),cA(`ngModel`,t.platformType),Uj(),FB(10),cA(`ngModel`,t.platformType),Uj(),FB(3),gx(`unsafeHTML`,t.iconInstitution),FB(7),cA(`ngModel`,t.platformType),Uj(),FB(3),gx(`unsafeHTML`,t.iconKey),FB(7),bV(t.platformType===`community`?48:t.platformType===`institution`?49:t.platformType===`private`?50:-1),FB(6),gx(`disabled`,!t.platformType))},dependencies:[Au,S3,Jn,Je,fn,qn,ln,Qn,Ye,Le,ce,X1,Se,De,Te,Oe],styles:[`.mascot[_ngcontent-%COMP%]{margin-top:-90px;width:170px;height:190px}.two-columns.width-50[_ngcontent-%COMP%]{gap:0}.platform-types[_ngcontent-%COMP%]{display:flex}@media screen and (min-width:800px){.platform-types.platform-type-selected[_ngcontent-%COMP%] + div[_ngcontent-%COMP%]{border-inline-start:1px solid var(--%NS%bg-secondary-450)}.platform-types[_ngcontent-%COMP%] + div[_ngcontent-%COMP%]{padding-inline-start:calc(1.325rem + .9vw)}.platform-types[_ngcontent-%COMP%]{margin-inline-end:calc(1.325rem + .9vw)}}@media screen and (min-width:800px)and (min-width:1200px){.platform-types[_ngcontent-%COMP%] + div[_ngcontent-%COMP%]{padding-inline-start:2rem}}@media screen and (min-width:800px)and (min-width:1200px){.platform-types[_ngcontent-%COMP%]{margin-inline-end:2rem}}@media screen and (max-width:800px){.platform-types.platform-type-selected[_ngcontent-%COMP%] + div[_ngcontent-%COMP%]{border-block-start:1px solid var(--%NS%bg-secondary-450)}.platform-types[_ngcontent-%COMP%] + div[_ngcontent-%COMP%]{padding-top:calc(1.325rem + .9vw)}.platform-types[_ngcontent-%COMP%]{margin-bottom:calc(1.325rem + .9vw)}}@media screen and (max-width:800px)and (min-width:1200px){.platform-types[_ngcontent-%COMP%] + div[_ngcontent-%COMP%]{padding-top:2rem}}@media screen and (max-width:800px)and (min-width:1200px){.platform-types[_ngcontent-%COMP%]{margin-bottom:2rem}}.platform-types[_ngcontent-%COMP%]   ul[_ngcontent-%COMP%]{display:flex;flex-direction:column;gap:.5rem}.platform-type[_ngcontent-%COMP%]   label[_ngcontent-%COMP%]{cursor:pointer;display:flex;align-items:center;padding:1rem 1.5rem;gap:1rem;color:var(--%NS%fg-300);border-radius:8px;border:1px solid var(--%NS%bg-secondary-450);margin:0}.platform-type[_ngcontent-%COMP%]   label[_ngcontent-%COMP%]   my-global-icon[_ngcontent-%COMP%], .platform-type[_ngcontent-%COMP%]   label[_ngcontent-%COMP%]   my-custom-icon[_ngcontent-%COMP%]{color:var(--%NS%secondary-icon-color);display:inline-block;width:34px;height:34px;line-height:34px}.platform-type[_ngcontent-%COMP%]   label[_ngcontent-%COMP%]:hover{background-color:var(--%NS%bg-secondary-300)}.platform-type[_ngcontent-%COMP%]   input[type=radio][_ngcontent-%COMP%]{display:none}.type-label[_ngcontent-%COMP%]{color:var(--%NS%fg-400);font-weight:700;font-size:1rem}.type-description[_ngcontent-%COMP%]{font-size:14px;font-weight:400}input[type=radio][_ngcontent-%COMP%]:checked + label[_ngcontent-%COMP%]{border:2px solid var(--%NS%border-primary);margin:-1px;background-color:var(--%NS%bg)}input[type=radio][_ngcontent-%COMP%]:checked + label[_ngcontent-%COMP%]   my-global-icon[_ngcontent-%COMP%], input[type=radio][_ngcontent-%COMP%]:checked + label[_ngcontent-%COMP%]   my-custom-icon[_ngcontent-%COMP%]{color:var(--%NS%border-primary)}@media screen and (max-width:800px){.mascot[_ngcontent-%COMP%]{display:none}.two-columns[_ngcontent-%COMP%]{justify-content:center}.two-columns.width-50[_ngcontent-%COMP%]{flex-direction:column;align-items:center}.two-columns.width-50[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]{width:100%!important}}`,`.steps[_ngcontent-%COMP%]{color:var(--%NS%fg-200);font-size:14px;font-weight:700}.title[_ngcontent-%COMP%]{color:var(--%NS%fg-350);font-weight:700;font-size:calc(1.3625rem + 1.35vw)}@media(min-width:1200px){.title[_ngcontent-%COMP%]{font-size:2.375rem}}.sub-title[_ngcontent-%COMP%]{color:var(--%NS%fg-300);font-weight:400;font-size:1.25rem}h4[_ngcontent-%COMP%]{margin-bottom:0}.text-content[_ngcontent-%COMP%]{color:var(--%NS%fg-200)}.buttons[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;justify-content:center;margin-top:calc(1.375rem + 1.5vw)}@media(min-width:1200px){.buttons[_ngcontent-%COMP%]{margin-top:2.5rem}}.buttons[_ngcontent-%COMP%]{gap:calc(1.275rem + .3vw)}@media(min-width:1200px){.buttons[_ngcontent-%COMP%]{gap:1.5rem}}form[_ngcontent-%COMP%]{max-width:512px;width:100%}.two-columns[_ngcontent-%COMP%]{display:flex;gap:1rem}.two-columns.width-50[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]{width:50%}.one-column[_ngcontent-%COMP%]{text-align:center}.one-column[_ngcontent-%COMP%]   .mascot-container[_ngcontent-%COMP%]{position:relative;height:110px;margin:0 auto}.one-column[_ngcontent-%COMP%]   .mascot-container[_ngcontent-%COMP%], .one-column[_ngcontent-%COMP%]   .mascot[_ngcontent-%COMP%]{width:170px}.one-column[_ngcontent-%COMP%]   .mascot[_ngcontent-%COMP%]{position:absolute;top:-100px;left:0;height:190px}h5[_ngcontent-%COMP%]{font-size:1rem;font-weight:700;color:var(--%NS%fg-300)}`],changeDetection:1})};function vt(l,n){if(l&1&&th(0,`li`,14),l&2){let e=n.$implicit;gx(`innerHTML`,e,Ow)}}var Ee=class l{adminConfig=g(qe);pluginAPI=g(Xe);notifier=g(bi);html=g(Kc);server=g(Zt);instanceLogo=g(Ze);currentStep=ph.required({transform:q5});totalSteps=ph.required({transform:q5});usageType=ph.required();instanceInfo=ph.required();dryRun=ph.required({transform:Tu});back=Ehe();next=Ehe();hide=Ehe();safeExplanations=[];plugins=[];config={};updating=!1;ngOnChanges(){this.usageType()&&(this.safeExplanations=this.usageType().getUnsafeExplanations().map(n=>this.html.toSimpleSafeHtml(n)),this.config=tBe({instance:{name:this.instanceInfo().platformName,shortDescription:this.instanceInfo().shortDescription},theme:{customization:{primaryColor:this.instanceInfo().primaryColor}}},this.usageType().getConfig()),this.plugins=this.usageType().getPlugins())}confirm(){if(this.dryRun())return this.next.emit();this.updating=!0,this.adminConfig.updateCustomConfig(this.config).pipe(Be(()=>{let n=this.instanceInfo().avatar;return n?this.instanceLogo.updateAvatar(n):this.instanceLogo.deleteAvatar()}),Be(()=>this.server.resetConfig()),Be(()=>Se$1(this.plugins).pipe(ar(n=>this.pluginAPI.install(n)),cf()))).subscribe({next:()=>{this.updating=!1,this.next.emit()},error:n=>{this.notifier.handleError(n),this.updating=!1}})}static ɵfac=function(e){return new(e||l)};static ɵcmp=Va({type:l,selectors:[[`my-admin-config-wizard-preview`]],inputs:{currentStep:[1,`currentStep`],totalSteps:[1,`totalSteps`],usageType:[1,`usageType`],instanceInfo:[1,`instanceInfo`],dryRun:[1,`dryRun`]},outputs:{back:`back`,next:`next`,hide:`hide`},features:[e5([qe,Xe,Ze]),ci],decls:25,vars:4,consts:()=>{let n;n=`STEP ${`�0�`}/${`�1�`}`;let e;e="Configuration preview";let t;t="If you confirm, PeerTube will:";let r;r="If you want finer settings control, your platform configuration can be easily changed after the pre-configuration wizard!";let s;s="Back";let p;p="Confirm this configuration";let I;return I="Ignore for now",[n,e,t,r,s,p,I,[1,`root`],[1,`two-columns`],[`src`,`/client/assets/images/mascot/default.svg`,`alt`,`mascot`,1,`mascot`],[1,`steps`],[1,`header-steps`],[1,`title`],[1,`text-content`,`mt-3`],[3,`innerHTML`],[1,`buttons`],[`icon`,`arrow-left`,`theme`,`secondary`,3,`click`],[`theme`,`primary`,3,`click`,`disabled`,`loading`],[1,`button-as-link`,3,`click`]]},template:function(e,t){e&1&&(wp(0,`div`,7)(1,`div`,8)(2,`div`),th(3,`img`,9),kb(),wp(4,`div`)(5,`div`,10)(6,`div`,11),l$(7,0),kb()(),wp(8,`h4`,12),l$(9,1),kb(),wp(10,`div`,13)(11,`p`),l$(12,2),kb(),wp(13,`ul`),CV(14,vt,1,1,`li`,14,TV),kb(),wp(16,`p`),l$(17,3),kb()()()(),wp(18,`div`,15)(19,`my-button`,16),rh(`click`,function(){return t.back.emit()}),l$(20,4),kb(),wp(21,`my-button`,17),rh(`click`,function(){return t.confirm()}),l$(22,5),kb(),wp(23,`button`,18),rh(`click`,function(){return t.hide.emit()}),l$(24,6),kb()()()),e&2&&(FB(7),Ux(t.currentStep())(t.totalSteps()),u$(7),FB(7),DV(t.safeExplanations),FB(7),gx(`disabled`,t.updating)(`loading`,t.updating))},dependencies:[Jn,Qn,Ye,Le,ce],styles:[`.steps[_ngcontent-%COMP%]{color:var(--%NS%fg-200);font-size:14px;font-weight:700}.title[_ngcontent-%COMP%]{color:var(--%NS%fg-350);font-weight:700;font-size:calc(1.3625rem + 1.35vw)}@media(min-width:1200px){.title[_ngcontent-%COMP%]{font-size:2.375rem}}.sub-title[_ngcontent-%COMP%]{color:var(--%NS%fg-300);font-weight:400;font-size:1.25rem}h4[_ngcontent-%COMP%]{margin-bottom:0}.text-content[_ngcontent-%COMP%]{color:var(--%NS%fg-200)}.buttons[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;justify-content:center;margin-top:calc(1.375rem + 1.5vw)}@media(min-width:1200px){.buttons[_ngcontent-%COMP%]{margin-top:2.5rem}}.buttons[_ngcontent-%COMP%]{gap:calc(1.275rem + .3vw)}@media(min-width:1200px){.buttons[_ngcontent-%COMP%]{gap:1.5rem}}form[_ngcontent-%COMP%]{max-width:512px;width:100%}.two-columns[_ngcontent-%COMP%]{display:flex;gap:1rem}.two-columns.width-50[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]{width:50%}.one-column[_ngcontent-%COMP%]{text-align:center}.one-column[_ngcontent-%COMP%]   .mascot-container[_ngcontent-%COMP%]{position:relative;height:110px;margin:0 auto}.one-column[_ngcontent-%COMP%]   .mascot-container[_ngcontent-%COMP%], .one-column[_ngcontent-%COMP%]   .mascot[_ngcontent-%COMP%]{width:170px}.one-column[_ngcontent-%COMP%]   .mascot[_ngcontent-%COMP%]{position:absolute;top:-100px;left:0;height:190px}h5[_ngcontent-%COMP%]{font-size:1rem;font-weight:700;color:var(--%NS%fg-300)}`],changeDetection:1})};var Pe=class l{back=Ehe();next=Ehe();hide=Ehe();static ɵfac=function(e){return new(e||l)};static ɵcmp=Va({type:l,selectors:[[`my-admin-config-wizard-welcome`]],outputs:{back:`back`,next:`next`,hide:`hide`},decls:18,vars:0,consts:()=>{let n;n="Welcome to PeerTube";let e;e="dear administrator!";let t;t=`Sepia, the cuttlefish, has a few questions to help you ${`�#10�`}quickly pre-configure your platform${`�/#10�`}.`;let r;r="Let's go!";let s;s="Remind me later";let p;return p="Do not display again",[n,e,t,r,s,p,[1,`root`,`one-column`],[1,`mascot-container`],[`src`,`/client/assets/images/mascot/happy.svg`,`alt`,`mascot`,1,`mascot`],[1,`title`],[1,`sub-title`],[1,`text-content`,`mt-3`],[1,`buttons`],[`theme`,`primary`,3,`click`],[`theme`,`secondary`,3,`click`],[1,`button-as-link`,3,`click`]]},template:function(e,t){e&1&&(wp(0,`div`,6)(1,`div`,7),th(2,`img`,8),kb(),wp(3,`h4`)(4,`div`,9),l$(5,0),kb(),wp(6,`div`,10),l$(7,1),kb()(),wp(8,`div`,11),kx(9,2),th(10,`strong`),Fx(),kb(),wp(11,`div`,12)(12,`my-button`,13),rh(`click`,function(){return t.next.emit()}),l$(13,3),kb(),wp(14,`my-button`,14),rh(`click`,function(){return t.hide.emit({doNotOpenAgain:!1})}),l$(15,4),kb(),wp(16,`button`,15),rh(`click`,function(){return t.hide.emit({doNotOpenAgain:!0})}),l$(17,5),kb()()())},dependencies:[Jn,Qn,Le,ce],styles:[`.steps[_ngcontent-%COMP%]{color:var(--%NS%fg-200);font-size:14px;font-weight:700}.title[_ngcontent-%COMP%]{color:var(--%NS%fg-350);font-weight:700;font-size:calc(1.3625rem + 1.35vw)}@media(min-width:1200px){.title[_ngcontent-%COMP%]{font-size:2.375rem}}.sub-title[_ngcontent-%COMP%]{color:var(--%NS%fg-300);font-weight:400;font-size:1.25rem}h4[_ngcontent-%COMP%]{margin-bottom:0}.text-content[_ngcontent-%COMP%]{color:var(--%NS%fg-200)}.buttons[_ngcontent-%COMP%]{display:flex;flex-wrap:wrap;justify-content:center;margin-top:calc(1.375rem + 1.5vw)}@media(min-width:1200px){.buttons[_ngcontent-%COMP%]{margin-top:2.5rem}}.buttons[_ngcontent-%COMP%]{gap:calc(1.275rem + .3vw)}@media(min-width:1200px){.buttons[_ngcontent-%COMP%]{gap:1.5rem}}form[_ngcontent-%COMP%]{max-width:512px;width:100%}.two-columns[_ngcontent-%COMP%]{display:flex;gap:1rem}.two-columns.width-50[_ngcontent-%COMP%] > div[_ngcontent-%COMP%]{width:50%}.one-column[_ngcontent-%COMP%]{text-align:center}.one-column[_ngcontent-%COMP%]   .mascot-container[_ngcontent-%COMP%]{position:relative;height:110px;margin:0 auto}.one-column[_ngcontent-%COMP%]   .mascot-container[_ngcontent-%COMP%], .one-column[_ngcontent-%COMP%]   .mascot[_ngcontent-%COMP%]{width:170px}.one-column[_ngcontent-%COMP%]   .mascot[_ngcontent-%COMP%]{position:absolute;top:-100px;left:0;height:190px}h5[_ngcontent-%COMP%]{font-size:1rem;font-weight:700;color:var(--%NS%fg-300)}`],changeDetection:1})};var Gt=[`modal`];var $t=[`stepper`];function wt(l,n){if(l&1){let e=AV();wp(0,`cdk-step`,3)(1,`my-admin-config-wizard-welcome`,11),rh(`back`,function(){EI(e),f$();return bI(g$(2).previous())})(`next`,function(){EI(e),f$();return bI(g$(2).next())})(`hide`,function(r){EI(e);return bI(f$(2).hide(r))}),kb()()}}function Lt(l,n){if(l&1){let e=AV();wp(0,`cdk-step`,10)(1,`my-admin-config-wizard-documentation`,12),rh(`hide`,function(){EI(e);return bI(f$(2).hide({doNotOpenAgain:!0}))}),kb()()}}function Wt(l,n){if(l&1){let e=AV();wp(0,`div`,2)(1,`my-common-stepper`,null,1),EV(3,wt,2,0,`cdk-step`,3),wp(4,`cdk-step`,4)(5,`my-admin-config-wizard-edit-info`,5),rh(`back`,function(){EI(e);return bI(g$(2).previous())})(`next`,function(r){EI(e);let s=g$(2),p=f$();return p.instanceInfo=r,bI(s.next())})(`hide`,function(){EI(e);return bI(f$().hide())}),kb()(),wp(6,`cdk-step`,6)(7,`my-admin-config-wizard-form`,7),rh(`back`,function(){EI(e);return bI(g$(2).previous())})(`next`,function(r){EI(e);let s=g$(2),p=f$();return p.usageType=r,bI(s.next())})(`hide`,function(){EI(e);return bI(f$().hide())}),kb()(),wp(8,`cdk-step`,8)(9,`my-admin-config-wizard-preview`,9),rh(`back`,function(){EI(e);return bI(g$(2).previous())})(`next`,function(){EI(e);let r=g$(2),s=f$();return bI(s.showWelcome?r.next():s.hide())})(`hide`,function(){EI(e);return bI(f$().hide())}),kb()(),EV(10,Lt,2,0,`cdk-step`,10),kb()()}if(l&2){let e=f$();FB(3),bV(e.showWelcome?3:-1),FB(2),gx(`currentStep`,e.currentStep())(`showBack`,e.showWelcome),FB(2),gx(`currentStep`,e.currentStep()),FB(2),gx(`usageType`,e.usageType)(`instanceInfo`,e.instanceInfo)(`dryRun`,e.dryRun)(`currentStep`,e.currentStep()),FB(),bV(e.showWelcome?10:-1)}}var Ot=class l{modalService=g(sr);userService=g(Qc);notifier=g(bi);modal=She(`modal`);stepper=She(`stepper`);created=Ehe();usageType;instanceInfo;showWelcome;dryRun;modalRef;ngOnInit(){this.created.emit()}shouldAutoOpen(n){return this.modalService.hasOpenModals()?!1:this.getFragment()===`#admin-welcome-wizard`||this.getFragment()===`#admin-welcome-wizard-test`?!0:!(n.noWelcomeModal===!0||Yn.getItem($e())===`true`)}show({showWelcome:n}){this.showWelcome=n,this.dryRun=this.getFragment()===`#admin-welcome-wizard-test`,this.modalRef=this.modalService.open(this.modal(),{centered:!0,backdrop:`static`,keyboard:!1,size:`lg`})}currentStep(){if(!this.stepper())return 0;let n=this.stepper().selectedIndex;return this.showWelcome?n:n+1}totalSteps(){if(!this.stepper())return 0;let n=this.stepper().steps.length;return this.showWelcome?n-1:n}hide(n={}){let{doNotOpenAgain:e=!1}=n;e&&this.doNotOpenAgain(),this.modalRef.close()}doNotOpenAgain(){Yn.setItem($e(),`true`),this.userService.updateMyProfile({noWelcomeModal:!0}).subscribe({next:()=>V.info(`We will not open the welcome modal again.`),error:n=>this.notifier.handleError(n)})}getFragment(){return window.location.hash}static ɵfac=function(e){return new(e||l)};static ɵcmp=Va({type:l,selectors:[[`my-admin-config-wizard-modal`]],viewQuery:function(e,t){e&1&&$x(t.modal,Gt,5)(t.stepper,$t,5),e&2&&m$(2)},outputs:{created:`created`},decls:2,vars:0,consts:()=>{let n;n="Welcome introduction";let e;e="Edit general information";let t;t="Usage type";let r;r="Configuration preview";let s;return s="Post configuration documentation",[[`modal`,``],[`stepper`,``],[1,`modal-body`],[`label`,n],[`label`,e],[`totalSteps`,`3`,3,`back`,`next`,`hide`,`currentStep`,`showBack`],[`label`,t],[`totalSteps`,`3`,3,`back`,`next`,`hide`,`currentStep`],[`label`,r],[`totalSteps`,`3`,3,`back`,`next`,`hide`,`usageType`,`instanceInfo`,`dryRun`,`currentStep`],[`label`,s],[3,`back`,`next`,`hide`],[3,`hide`]]},template:function(e,t){e&1&&rx(0,Wt,11,9,`ng-template`,null,0,m5)},dependencies:[Le,ne,g$1,Pe,Ie,Fe,Ee,Ne],styles:[`.modal-body[_ngcontent-%COMP%]{padding:2rem 3rem}`],changeDetection:1})};export{Ot as AdminConfigWizardModalComponent};
//# debugId=0999217f-d370-555d-b35e-687abe209117
//# sourceMappingURL=chunk-CaC-oxOl.js.map