PageSourceSearch

https://exode.me/client/en-US/chunk-JPHV47HI.js

js exode.me collected 2026-10-04 16:17:50 UTC 12,604 bytes, 1 lines download raw bytes

1import{b as le}from"./chunk-LNZJJ3KZ.js";import{a as de}from"./chunk-X3ZEAWQQ.js";import{h as re}from"./chunk-VDA4PBJF.js";import{b as L}from"./chunk-OR7MKCZD.js";import{b as se}from"./chunk-FZFWY5Y6.js";import{a as ae}from"./chunk-EGEBNI4V.js";import{E as G,F as $,g as M,h as P,p as D,w as O,x as U}from"./chunk-EBOVR5NW.js";import{Ab as C,Bb as F,Ca as S,Cb as _,Dc as m,Gb as A,Ib as I,Jb as ee,K as Q,Kb as te,Lc as p,Lf as ne,Ma as b,Oh as x,Ph as oe,Q as Z,Rg as H,aa as l,ef as ie,fb as R,gb as h,hh as w,j as J,lb as d,mb as r,nb as o,ob as a,sb as v,tb as y,th as V,ve as f}from"./chunk-HVCWS4IF.js";import{a as W,j as g}from"./chunk-KJ7W2O2B.js";function ce(E,t){if(E&1&&a(0,"input",12),E&2){let e=I();d("value",e.getSubmitValue())("disabled",!e.form.valid);}}var T=class T{formReactiveService=l(L);authService=l(w);notifier=l(H);userService=l(x);themeService=l(oe);serverService=l(V);user=m(void 0);reactiveUpdate=m(!1,{transform:p});notifyOnUpdate=m(!0,{transform:p});userInformationLoaded=m(void 0);form;formErrors={};validationMessages={};availableThemes;availableLanguages;formValuesWatcher;userInfoSub;serverConfig;initialUserLanguage;updating=!1;get instanceName(){return this.serverConfig.instance.name;}ngOnInit(){this.serverConfig=this.serverService.getHTMLConfig(),this.initialUserLanguage=this.user().language,this.availableThemes=[{id:"instance-default",label:""+this.instanceName+" theme",description:this.getDefaultInstanceThemeLabel()},this.themeService.getDefaultThemeItem(),...this.themeService.buildAvailableThemes()],this.availableLanguages=Object.entries(ie).map(([t,e])=>({label:e,id:t})),this.buildForm(),this.userInfoSub=this.userInformationLoaded().subscribe(()=>{this.form.patchValue({theme:this.user().theme,language:this.user().language}),this.reactiveUpdate()&&(this.formValuesWatcher=this.form.valueChanges.subscribe(()=>this.updateInterfaceSettings()));});}ngOnDestroy(){this.formValuesWatcher?.unsubscribe(),this.userInfoSub?.unsubscribe();}buildForm(){let t={theme:null,language:null},{form:e,formErrors:i,validationMessages:n}=this.formReactiveService.buildForm(t);this.form=e,this.formErrors=i,this.validationMessages=n;}updateInterfaceSettings(){if(this.updating)return;this.updating=!0;let{theme:t,language:e}=this.form.value,i={theme:t,language:e},n=e!==this.initialUserLanguage,u=n?this.userService.updateInterfaceLanguage(i.language):J(!0);if(this.authService.isLoggedIn()){this.userService.updateMyProfile(i).pipe(Z(()=>u)).subscribe({next:()=>{if(n){window.location.reload();return;}this.authService.refreshUserInformation(),this.updating=!1,this.notifyOnUpdate()&&this.notifier.success("Interface settings updated.");},error:c=>this.notifier.handleError(c)});return;}if(this.userService.updateMyAnonymousProfile(i),n){u.subscribe({next:()=>{window.location.reload();},error:c=>this.notifier.handleError(c)});return;}this.notifyOnUpdate()&&this.notifier.success("Interface settings updated."),this.updating=!1;}getSubmitValue(){return"Save interface settings";}getDefaultInstanceThemeLabel(){let t=this.serverConfig.theme.default;return t==="default"?this.themeService.getDefaultThemeItem().label:t;}};g(T,"\u0275fac",function(e){return new(e||T)();}),g(T,"\u0275cmp",b({type:T,selectors:[["my-user-interface-settings"]],inputs:{user:[1,"user"],reactiveUpdate:[1,"reactiveUpdate"],notifyOnUpdate:[1,"notifyOnUpdate"],userInformationLoaded:[1,"userInformationLoaded"]},decls:16,vars:4,consts:()=>{let t;t="Language";let e;e="Preferred language for the web interface and for emails";let i;i=" You can help us to translate the platform by consulting "+"\uFFFD#9\uFFFD"+"this guide"+"\uFFFD/#9\uFFFD"+"";let n;return n="Theme",[t,e,i,n,[3,"ngSubmit","formGroup"],[1,"form-group"],["for","language"],[1,"form-group-description"],["target","_blank","rel","noreferrer noopener","href","https://github.com/Chocobozzz/PeerTube/blob/develop/support/doc/translation.md#how-to",1,"link-primary"],["inputId","language","formControlName","language",3,"items"],["for","theme"],["inputId","theme","formControlName","theme",3,"items"],["type","submit",1,"peertube-button","primary-button",3,"value","disabled"]];},template:function(e,i){e&1&&(r(0,"form",4),A("ngSubmit",function(){return i.updateInterfaceSettings();}),r(1,"div",5)(2,"label",6),_(3,0),o(),r(4,"div",7)(5,"div"),_(6,1),o(),r(7,"div"),C(8,2),a(9,"a",8),F(),o()(),a(10,"my-select-options",9),o(),r(11,"div",5)(12,"label",10),_(13,3),o(),a(14,"my-select-options",11),o(),R(15,ce,1,2,"input",12),o()),e&2&&(d("formGroup",i.form),S(10),d("items",i.availableLanguages),S(4),d("items",i.availableThemes),S(),h(i.reactiveUpdate()?-1:15));},dependencies:[G,D,M,P,$,U,O,re],styles:[".peertube-select-container[_ngcontent-%COMP%]{margin-bottom:30px;width:340px}@media screen and (max-width:370px){.peertube-select-container[_ngcontent-%COMP%]{width:100%}}"]}));var Se=T;var ge=[[["inner-title"]]],pe=["inner-title"];function fe(E,t){if(E&1&&(r(0,"div",21),_(1,5),o(),r(2,"div",22),_(3,6),o(),r(4,"div",23),a(5,"my-select-radio",24),o(),r(6,"div",23),a(7,"my-select-radio",25),o()),E&2){let e=I();S(5),d("items",e.nsfwFlagItems),S(2),d("items",e.nsfwFlagItems);}}function Te(E,t){if(E&1&&a(0,"input",20),E&2){let e=I();d("disabled",!e.form.valid);}}var N=class N{formReactiveService=l(L);authService=l(w);notifier=l(H);userService=l(x);serverService=l(V);user=m(null);reactiveUpdate=m(!1,{transform:p});notifyOnUpdate=m(!0,{transform:p});userInformationLoaded=m(void 0);form;formErrors={};validationMessages={};nsfwItems=[{id:"do_not_list",label:"Hide"},{id:"blur",label:"Blur"},{id:"warn",label:"Warn"},{id:"display",label:"Display"}];nsfwFlagItems=[{id:"default",label:"Default"},{id:"do_not_list",label:"Hide"},{id:"blur",label:"Blur"},{id:"warn",label:"Warn"},{id:"display",label:"Display"}];formValuesWatcher;ngOnInit(){this.buildForm(),this.updateNSFWDefaultLabel(this.user().nsfwPolicy),this.form.controls.nsfwPolicy.valueChanges.subscribe(t=>this.updateNSFWDefaultLabel(t)),this.userInformationLoaded().pipe(Q()).subscribe(()=>{let e=this.serverService.getHTMLConfig().instance.defaultNSFWPolicy;this.form.patchValue({nsfwPolicy:this.user().nsfwPolicy||e,nsfwFlagViolent:this.buildNSFWFormFlag(f.VIOLENT),nsfwFlagSex:this.buildNSFWFormFlag(f.EXPLICIT_SEX),p2pEnabled:this.user().p2pEnabled,autoPlayVideo:this.user().autoPlayVideo===!0,autoPlayNextVideo:this.user().autoPlayNextVideo,videoLanguages:this.user().videoLanguages}),this.reactiveUpdate()&&this.handleReactiveUpdate();});}
1ngOnDestroy(){this.formValuesWatcher?.unsubscribe();}buildForm(){let t={nsfwPolicy:null,nsfwFlagViolent:null,nsfwFlagSex:null,p2pEnabled:null,autoPlayVideo:null,autoPlayNextVideo:null,videoLanguages:null},{form:e,formErrors:i,validationMessages:n}=this.formReactiveService.buildForm(t);this.form=e,this.formErrors=i,this.validationMessages=n;}updateDetails(t){let e=this.form.value.videoLanguages;if(Array.isArray(e)&&e.length>20){this.notifier.error("Too many languages are enabled. Please enable them all or stay below 20 enabled languages.");return;}let i=this.form.value,n={nsfwPolicy:i.nsfwPolicy,p2pEnabled:i.p2pEnabled,autoPlayVideo:i.autoPlayVideo,autoPlayNextVideo:i.autoPlayNextVideo,nsfwFlagsDisplayed:this.buildNSFWUpdateFlag("display"),nsfwFlagsHidden:this.buildNSFWUpdateFlag("do_not_list"),nsfwFlagsWarned:this.buildNSFWUpdateFlag("warn"),nsfwFlagsBlurred:this.buildNSFWUpdateFlag("blur"),videoLanguages:e};if(t){let c=t.includes("nsfwFlagViolent")||t.includes("nsfwFlagSex")?[...t,"nsfwFlagsDisplayed","nsfwFlagsHidden","nsfwFlagsWarned","nsfwFlagsBlurred"]:t;n=ne(n,c);}return this.authService.isLoggedIn()?this.updateLoggedProfile(n):this.updateAnonymousProfile(n);}isNsfwFlagsEnabled(){return this.serverService.getHTMLConfig().nsfwFlagsSettings.enabled;}handleReactiveUpdate(){let t=W({},this.form.value);this.formValuesWatcher=this.form.valueChanges.subscribe(e=>{let i=Object.keys(e).find(n=>e[n]!==t[n]);t=W({},this.form.value),this.updateDetails([i]);});}updateLoggedProfile(t){this.userService.updateMyProfile(t).subscribe({next:()=>{this.authService.refreshUserInformation(),this.notifyOnUpdate()&&this.notifier.success("Video settings updated.");},error:e=>this.notifier.handleError(e)});}updateAnonymousProfile(t){this.userService.updateMyAnonymousProfile(t),this.notifyOnUpdate()&&this.notifier.success("Display/Video settings updated.");}buildNSFWFormFlag(t){let e=this.user();return(e.nsfwFlagsDisplayed&t)===t?"display":(e.nsfwFlagsWarned&t)===t?"warn":(e.nsfwFlagsBlurred&t)===t?"blur":(e.nsfwFlagsHidden&t)===t?"do_not_list":"default";}buildNSFWUpdateFlag(t){let e=f.NONE;return this.form.value.nsfwFlagViolent===t&&(e|=f.VIOLENT),this.form.value.nsfwFlagSex===t&&(e|=f.EXPLICIT_SEX),e;}updateNSFWDefaultLabel(t){let e=this.nsfwFlagItems.find(n=>n.id==="default"),i=this.nsfwItems.find(n=>n.id===t).label;e.label="Default ("+i+")";}};g(N,"\u0275fac",function(e){return new(e||N)();}),g(N,"\u0275cmp",b({type:N,selectors:[["my-user-video-settings"]],inputs:{user:[1,"user"],reactiveUpdate:[1,"reactiveUpdate"],notifyOnUpdate:[1,"notifyOnUpdate"],userInformationLoaded:[1,"userInformationLoaded"]},ngContentSelectors:pe,decls:34,vars:6,consts:()=>{let t;t="Policy on videos containing sensitive content";let e;e="Help share videos being played";let i;i="Automatically play videos";let n;n="Automatically start playing the next video";let u;u="Save video settings";let c;c="Only display videos in the following languages/subtitles";let z;z="In Recently added, Trending, Local, Most liked and Search pages";let X;X=" The "+"\uFFFD#22\uFFFD"+"sharing system"+"\uFFFD/#22\uFFFD"+" implies that some technical information about your system (such as a public IP address) can be sent to other peers, but greatly helps to reduce server load. ";let k;k="When on a video page, directly start playing the video.";let j;j="When a video ends, follow up with the next suggested video.";let B;B="Violent content";let K;K="Sexually explicit content";let Y;Y="Override sensitive content policy for certain videos";let q;return q=" These subjective criteria may be optionally applied to certain videos. The classification of some videos may differ from your personal judgment. ",[c,z,X,k,j,Y,q,[3,"ngSubmit","formGroup"],[1,"form-group"],["id","video-sensitive-content-policy",1,"anchor"],["inputId","nsfwPolicy","isGroup","true","label",t,"formControlName","nsfwPolicy",3,"items"],["id","video-languages-subtitles",1,"anchor"],[1,"pt-label-container"],["for","videoLanguages"],["inputId","videoLanguages","formControlName","videoLanguages",3,"maxLanguages"],["inputName","p2pEnabled","formControlName","p2pEnabled","labelText",e,3,"recommended"],["ngProjectAs","de
1scription",5,["description"]],["href","https://docs.joinpeertube.org/admin/privacy-guide#peertube-p2p-privacy","target","_blank",1,"link-primary"],["inputName","autoPlayVideo","formControlName","autoPlayVideo","labelText",i],["inputName","autoPlayNextVideo","formControlName","autoPlayNextVideo","labelText",n],["type","submit","value",u,1,"peertube-button","primary-button","mt-3",3,"disabled"],[1,"label"],[1,"form-group-description"],[1,"form-group","mb-3"],["inputId","nsfwFlagViolent","isGroup","true","labelSecondary","true","label",B,"formControlName","nsfwFlagViolent",3,"items"],["inputId","nsfwFlagSex","isGroup","true","labelSecondary","true","label",K,"formControlName","nsfwFlagSex",3,"items"]];},template:function(e,i){e&1&&(ee(ge),r(0,"form",7),A("ngSubmit",function(){return i.updateDetails();}),r(1,"div",8),a(2,"div",9),r(3,"div",8),a(4,"my-select-radio",10),o(),R(5,fe,8,2),o(),r(6,"div",8),a(7,"div",11),r(8,"div",12)(9,"label",13),_(10,0),o(),r(11,"my-help"),v(12),_(13,1),y(),o()(),r(14,"div"),a(15,"my-select-languages",14),o()(),te(16),r(17,"div",8)(18,"my-peertube-checkbox",15),v(19,16),r(20,"span"),C(21,2),a(22,"a",17),F(),o(),y(),o()(),r(23,"div",8)(24,"my-peertube-checkbox",18),v(25,16),r(26,"span"),_(27,3),o(),y(),o()(),r(28,"div",8)(29,"my-peertube-checkbox",19),v(30,16),r(31,"span"),_(32,4),o(),y(),o()(),R(33,Te,1,1,"input",20),o()),e&2&&(d("formGroup",i.form),S(4),d("items",i.nsfwItems),S(),h(i.isNsfwFlagsEnabled()?5:-1),S(10),d("maxLanguages",20),S(3),d("recommended",!0),S(15),h(i.reactiveUpdate()?-1:33));},dependencies:[G,D,M,P,$,U,O,ae,le,se,de],styles:[".peertube-select-container[_ngcontent-%COMP%]{width:340px}@media screen and (max-width:370px){.peertube-select-container[_ngcontent-%COMP%]{width:100%}}my-select-languages[_ngcontent-%COMP%]{display:block;width:340px;max-width:100%}"]}));var _e=N;export{Se as a,_e as b};/**i18n:347eeb695970c32bc275618edc2e751c67145d9fc3012e70543c114a99b9e016*/

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.