PageSourceSearch

https://members.isrsy.org/3020.6cbbf2476d31a303.js

js isrsy.org collected 2026-10-02 21:07:40 UTC 10,720 bytes, 1 lines download raw bytes

1"use strict";(self.webpackChunkVeryConnect=self.webpackChunkVeryConnect||[]).push([[3020],{87993:(K,A,s)=>{s.d(A,{H:()=>B});var r=s(45302),d=s(5296),b=s(17143),y=s(13913),t=s(14026),l=s(52805),O=s(3811),h=s(89969),Z=s(19807),M=s(7670),U=s(10319),c=s(15859),T=s(43061),I=s(22710),x=s(65922),H=s(97482),G=s(75143);const N=s.p+"images/authy.5625d6c313e9ea95.png",S=s.p+"images/google-authenticator.7199f3cfa7d1c719.png";var C=s(85868),f=s(10218),_=s(62441),k=s(50339),v=s(64683);const E=["links"];function J(o,a){if(1&o){const e=t.EpF();t.TgZ(0,"header",3)(1,"button",4),t.NdJ("click.passive",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.closeModal())}),t.ALo(2,"tr"),t._UZ(3,"i",5),t.qZA(),t.TgZ(4,"h4",6),t._UZ(5,"img",0),t.TgZ(6,"span"),t._uU(7),t.qZA()()(),t.TgZ(8,"div",7)(9,"ul",8)(10,"li"),t._UZ(11,"i",9),t.TgZ(12,"a",10),t.NdJ("click.passive",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.closeModal())}),t.qZA()(),t.TgZ(13,"li"),t._UZ(14,"i",11),t.TgZ(15,"a",10),t.NdJ("click.passive",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.closeModal())}),t.qZA()()()(),t.TgZ(16,"footer",12)(17,"button",13),t.NdJ("click.passive",function(){t.CHM(e);const i=t.oxw();return t.KtG(i.closeModal())}),t._uU(18),t.ALo(19,"tr"),t.qZA()()}if(2&o){const e=t.oxw();
1t.xp6(1),t.uIk("aria-label",t.xi3(2,9,"close","common")),t.xp6(4),t.Q6J("src",e.img,t.LSH)("alt",e.title),t.xp6(2),t.Oqu(e.title),t.xp6(5),t.Q6J("href","https://play.google.com/store/apps/details?id="+e.android,t.LSH)("translate","downloadAndroid"),t.xp6(3),t.Q6J("href","https://itunes.apple.com/us/app/authy/id"+e.apple,t.LSH)("translate","downloadApple"),t.xp6(3),t.Oqu(t.xi3(19,12,"close","common"))}}const L=["*"];let Q=(()=>{class o{constructor(){this.IMG_AUTHY=N,this.IMG_GOOGLE_AUTH=S,this.N_AUTHY="Twilio Authy",this.N_GOOGLE_AUTH="Google Authenticator",this.mod=(0,t.f3M)(T.U)}closeModal(){this.ref&&(this.ref.hide(),this.ref=void 0)}ngOnDestroy(){this.closeModal()}openAuthy(){this.img=this.IMG_GOOGLE_AUTH,this.title=this.N_AUTHY,this.android="com.authy.authy",this.apple="494168017",this.open()}openGAuth(){this.img=this.IMG_GOOGLE_AUTH,this.title=this.N_GOOGLE_AUTH,this.android="com.google.android.apps.authenticator2",this.apple="388497605",this.open()}open(){this.closeModal(),this.ref=this.mod.show(this.modalTpl,{animated:!0,class:"modal-sm",show:!0})}}return o.\u0275fac=function(e){return new(e||o)},o.\u0275cmp=t.Xpm({type:o,selectors:[["tg-totp-app-info"]],viewQuery:function(e,n){if(1&e&&t.Gf(E,5),2&e){let i;t.iGM(i=t.CRH())&&(n.modalTpl=i.first)}},standalone:!0,features:[t.jDz],ngContentSelectors:L,decls:19,vars:13,consts:[["loading","lazy",1,"appicon",3,"src","alt"],["href","#",3,"click"],["links",""],[1,"modal-header"],[1,"close",3,"click.passive"],[1,"fa","fa-times"],[1,"modal-title"],[1,"modal-body"],[1,"list-unstyled"],[1,"fa","fa-fw","fa-android"],["target","_blank","rel","noopener",3,"href","translate","click.passive"],[1,"fa","fa-fw","fa-apple"],[1,"modal-footer"],[1,"btn","btn-default",3,"click.passive"]],template:function(e,n){1&e&&(t.F$t(),t.TgZ(0,"h3"),t.Hsn(1),t.qZA(),t.TgZ(2,"p")(3,"span"),t._uU(4),t.ALo(5,"tr"),t.qZA(),t._UZ(6,"img",0),t.TgZ(7,"a",1),t.NdJ("click",function(){return n.openAuthy()}),t._uU(8),t.qZA(),t.TgZ(9,"span"),t._uU(10),t.ALo(11,"tr"),t.qZA(),t._UZ(12,"img",0),t.TgZ(13,"a",1),t.NdJ("click",function(){return n.openGAuth()}),t._uU(14),t.qZA(),t.TgZ(15,"span"),t._uU(16,"."),t.qZA()(),t.YNc(17,J,20,15,"ng-template",null,2,t.W1O)),2&e&&(t.xp6(4),t.AsE("",t.lcZ(5,9,"step1_content_1"),""," ",""),t.xp6(2),t.Q6J("src",n.IMG_AUTHY,t.LSH)("alt",n.N_AUTHY),t.xp6(2),t.Oqu(n.N_AUTHY),t.xp6(2),t.Oqu(t.lcZ(11,11,"step1_content_join")),t.xp6(2),t.Q6J("src",n.IMG_GOOGLE_AUTH,t.LSH)("alt",n.N_GOOGLE_AUTH),t.xp6(2),t.Oqu(n.N_GOOGLE_AUTH))},dependencies:[c.GlobalModule,C.G,f.P,_.h,k.k,v.H],styles:["[_nghost-%COMP%]{display:block}.fa-android[_ngcontent-%COMP%], .fa-apple[_ngcontent-%COMP%]{display:inline-block;margin-right:5px}.appicon[_ngcontent-%COMP%]{--size:1em;display:inline-block;height:var(--size);margin-right:3px;width:var(--size)}.fa-apple[_ngcontent-%COMP%]{color:#878787}.fa-android[_ngcontent-%COMP%]{color:#609d48}"],changeDetection:0}),o})();var u=s(64177),D=s(78798);function w(o,a){1&o&&t._UZ(0,"tg-loader-spinner-lg")}function F(o,a){if(1&o&&(t._UZ(0,"p",2),t.TgZ(1,"div",3)(2,"div",4),t._UZ(3,"h4",2)(4,"img",5),t.qZA(),t.TgZ(5,"div",4),t._UZ(6,"h4",2)(7,"input",6),t.qZA()()),2&o){const e=t.oxw();t.Q6J("translate","step2_content"),t.xp6(3),t.Q6J("translate","scanQR"),t.xp6(1),t.Q6J("src",e.img,t.LSH),t.xp6(2),t.Q6J("translate","enterCodeManually"),t.xp6(1),t.Q6J("value",e.key)("readonly",!0)}}const P=["*"];let R=(()=>{class o{constructor(){this.ready=!1}ngOnChanges(){if(this.response){const{key:e,period:n}=this.response;this.img=`/api/v1/chart/otpauthqr?secret=${e}&period=${n}`,this.key=e,this.ready=!0}else this.ready=!1}}return o.\u0275fac=function(e){return new(e||o)},o.\u0275cmp=t.Xpm({type:o,selectors:[["tg-totp-code-render"]],inputs:{response:"response"},standalone:!0,features:[t.TTD,t.jDz],ngContentSelectors:P,decls:5,vars:2,consts:[["tplLoading",""],[3,"ngIf","ngIfElse"],[3,"translate"],[1,"row"],[1,"col-xs-12","col-md-6"],["alt","QR",3,"src"],["type","text",1,"form-control",3,"value","readonly"]],template:function(e,n){if(1&e&&(t.F$t(),t.YNc(0,w,1,0,"ng-template",null,0,t.W1O),t.TgZ(2,"h3"),t.Hsn(3),t.qZA(),t.YNc(4,F,8,6,"ng-template",1)),2&e){const i=t.MAs(1);t.xp6(4),t.Q6J("ngIf",n.ready)("ngIfElse",i)}},dependencies:[c.GlobalModule,u.O5,f.P,D.Z],encapsulation:2,changeDetection:0}),o})();var j=s(38674),Y=s(39989),z=s(26495),g=s(4678),$=s(61958);function W(o,a){if(1&o&&(t.TgZ(0,"div")(1,"tg-totp-app-info"),t._uU(2),t.ALo(3,"tr"),t.qZA(),t.TgZ(4,"tg-totp-code-render",6),t._uU(5),t.ALo(6,"tr"),t.qZA(),t.TgZ(7,"h3"),t._uU(8),t.ALo(9,"tr"),t.qZA(),t.TgZ(10,"tg-help-block-container",7),t._UZ(11,"input",8),t.qZA(),t._UZ(12,"button",9),t.qZA()),2&o){const e=t.oxw();t.Q6J("@slideDownOnEntry",void 0)("@slideUpOnExit",void 0),t.xp6(2),t.hij("1. ",t.lcZ(3,11,"step1_title"),""),t.xp6(2),t.Q6J("response",e.totpResponse),t.xp6(1),t.hij("2. ",t.lcZ(6,13,"step2_title"),""),t.xp6(3),t.hij("3. ",t.lcZ(9,15,"step3_title"),""),t.xp6(3),t.Q6J("formControl",e.totpCode)("autocomplete","off")("disableControl",e.busy),t.xp6(1),t.Q6J("disabled",e.busy||!e.totpCode.valid)("translate","enable")}}const p="totp";let B=(()=>{class o{constructor(){this.MODEL_OPTS={standalone:!0},this.SPINNER_CLASS=Object.freeze(["fa-spinner","fa-spin"]),this.busy=!0,this.enabled=!1,this.enabledChange=new t.vpe,this.finished=!1,this.isNewWorkflow=!1,this.isOwn=!1,this.open=!1,this.staged=!1,this.alert=(0,t.f3M)(Z.c),this.cdr=(0,t.f3M)(t.sBO),this.fb=(0,t.f3M)(l.qu),this.http=(0,t.f3M)(y.eN),this.mod=(0,t.f3M)(T.U),this.uSvc=(0,t.f3M)(G.KD)}enable(e){if(e.preventDefault(),this.busy||!this.totpCode.valid)return void this.cdr.detectChanges();const n={code:this.totpCode.value};this.busy=!0,this.refreshOpen(),this.http.post("/api/v1/auth/totp/enable",n,{params:{noredirect:1}}).pipe((0,h.b)({error:i=>{this.alert.alertError({key:401===i.status?"validationErr":"enableFail",ns:p})},next:()=>{this.alert.alertSuccess({key:"enableOk",ns:p}),this.finaliseChange(!0)}}),(0,d.H)("[TotpSettings.enable]")).subscribe((0,r.d)(()=>{this.busy=!1,this.refreshOpen(),this.cdr.markForCheck()}))}ngOnChanges(e){e.userId&&(this.isOwn=this.userId===this.loggedInId),e.enabled&&(this.staged=this.enabled)}ngOnDestroy(){this.enabledChange.complete()}ngOnInit(){this.uSvc.latest("user","id").subscribe(e=>{this.loggedInId=e,this.isOwn=this.userId===e,this.busy=!1,this.cdr.markForCheck()}),this.totpCode=this.fb.control(null,[l.kI.required,x.totpValidator])}onCheck(e){if(!this.busy&&e!==this.staged&&(this.enabled||this.isOwn))return e===this.enabled?(this.staged=e,void this.refreshOpen()):(this.isNewWorkflow=!0,this.enabled?this.disable():this.setUp(),void this.refreshOpen());this.cdr.detectChanges()}disable(){if(!this.userId)throw this.staged=!0,this.cdr.detectChanges(),new Error("A user ID must be provided in order to disable 2FA");this.busy=!0,this.staged=!1,this.mod.confirmTranslated("disableConfirm",p).pipe((0,b.U)(()=>{this.staged=!0,this.isNewWorkflow=!1}),(0,O.w)(()=>this.http.post(`/api/v1/auth/totp/disable/${this.userId}`,{},{params:{noredirect:1}}).pipe((0,h.b)({error:e=>{this.staged=!0,this.alert.negotiate(e,{defaultMessage:{key:"disableFail",ns:p}})},next:()=>{this.alert.alertSuccess({key:"disableOk",ns:p}),this.finaliseChange(!1)}}))),(0,d.H)("[TotpSettings.disable]")).subscribe((0,r.d)(()=>{this.busy=!1,this.refreshOpen(),this.cdr.markForCheck()}))}finaliseChange(e){this.isNewWorkflow=!1,this.enabled=e,this.enabledChange.emit(e),this.isOwn&&this.userId&&this.uSvc.patchUser({has_totp:e})}refreshOpen(){this.open=this.staged&&this.isNewWorkflow}setUp(){this.staged=!0,this.busy=!0,this.totpResponse=void 0,this.totpCode.reset(null),this.http.get("/api/v1/auth/totp/setup").pipe((0,d.H)("[TotpSettings.setUp]"),(0,h.b)({error:()=>{this.staged=!1,this.alert.alertError({key:"setupFail",ns:p})},next:e=>{this.totpResponse=e}})).subscribe((0,r.d)(()=>{this.busy=!1,this.refreshOpen(),this.cdr.markForCheck()}))}}return o.\u0275fac=function(e){return new(e||o)}
1,o.\u0275cmp=t.Xpm({type:o,selectors:[["tg-totp-settings"]],inputs:{enabled:"enabled",userId:"userId"},outputs:{enabledChange:"enabledChange"},standalone:!0,features:[t._Bn([],[{provide:H.z,useValue:p}]),t.TTD,t.jDz],decls:10,vars:9,consts:[["ngNoForm","",3,"tgPanel","submit"],[1,"fa","fa-fw",3,"ngClass"],[3,"translate"],[1,"checkbox"],["type","checkbox",3,"ngModel","disabled","ngModelOptions","ngModelChange"],[4,"ngIf"],[3,"response"],[1,"form-group"],["type","text",1,"form-control",3,"formControl","autocomplete","disableControl"],["type","submit",1,"btn","btn-primary",3,"disabled","translate"]],template:function(e,n){1&e&&(t.TgZ(0,"form",0),t.NdJ("submit",function(m){return n.enable(m)}),t.TgZ(1,"tg-panel-heading"),t._UZ(2,"i",1)(3,"span",2),t.qZA(),t.TgZ(4,"tg-panel-body")(5,"div",3)(6,"label")(7,"input",4),t.NdJ("ngModelChange",function(m){return n.onCheck(m)}),t.qZA(),t._UZ(8,"span",2),t.qZA()(),t.YNc(9,W,13,17,"div",5),t.qZA()()),2&e&&(t.xp6(2),t.Q6J("ngClass",n.busy?n.SPINNER_CLASS:"fa-shield"),t.xp6(1),t.Q6J("translate","panelHeading"),t.xp6(4),t.Q6J("ngModel",n.staged)("disabled",n.busy||!n.enabled&&!n.isOwn)("ngModelOptions",n.MODEL_OPTS),t.xp6(1),t.ekj("text-muted",n.busy||!n.enabled&&!n.isOwn),t.Q6J("translate","enable2fa"),t.xp6(1),t.Q6J("ngIf",n.open))},dependencies:[c.GlobalModule,u.mk,u.O5,j.r,C.G,Y.d,f.P,z.f,g.jl,g.Av,g.Nk,$.y,v.H,I.S,l.u5,l.Fj,l.Wl,l.JJ,l.On,l.UX,l.oH,Q,R],encapsulation:2,data:{animation:[M.Y,U.b]},changeDetection:0}),o})()}}]);

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.