403Webshell
Server IP : 80.87.202.40  /  Your IP : 216.73.216.169
Web Server : Apache
System : Linux rospirotorg.ru 5.14.0-539.el9.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Dec 5 22:26:13 UTC 2024 x86_64
User : bitrix ( 600)
PHP Version : 8.2.27
Disable Function : NONE
MySQL : OFF |  cURL : ON |  WGET : ON |  Perl : ON |  Python : OFF |  Sudo : ON |  Pkexec : ON
Directory :  /home/bitrix/ext_www/rospirotorg.ru/bitrix/js/ui/countdown/dist/

Upload File :
current_dir [ Writeable] document_root [ Writeable]

 

Command :


[ Back ]     

Current File : /home/bitrix/ext_www/rospirotorg.ru/bitrix/js/ui/countdown/dist/countdown.bundle.js.map
{"version":3,"file":"countdown.bundle.js","sources":["../src/countdown.js"],"sourcesContent":["import { Dom, Tag, Type } from 'main.core';\nimport 'ui.icon-set.main';\n\nimport './style.css';\n\ntype CountdownOptions = {\n\tseconds: number;\n\tshowIcon: boolean;\n\ticonClass: string;\n\tshowMinutes: boolean;\n\tcssClass: string;\n\tinterval: number;\n\tnode: HTMLElement;\n\tneedStartImmediately: boolean;\n\thideAfterEnd: boolean;\n\tonTimerEnd: Function;\n\tonTimerUpdate: Function;\n}\n\nexport class Countdown\n{\n\tseconds: number;\n\tshowIcon: boolean;\n\ticonClass: ?string;\n\tshowMinutes: boolean;\n\tcssClass: ?string;\n\tinterval: number;\n\tnode: HTMLElement;\n\tneedStartImmediately: boolean;\n\thideAfterEnd: boolean;\n\tonTimerEnd: ?function;\n\tonTimerUpdate: ?function;\n\ttimerElement: HTMLElement;\n\tintervalId: number;\n\n\tconstructor(props: CountdownOptions)\n\t{\n\t\tthis.seconds = props.seconds ?? 0;\n\t\tthis.showIcon = props.showIcon ?? true;\n\t\tthis.iconClass = props.iconClass ?? 'ui-icon-set --clock-2';\n\t\tthis.showMinutes = props.showMinutes ?? true;\n\t\tthis.cssClass = props.cssClass ?? null;\n\t\tthis.interval = props.interval ?? 1000;\n\t\tthis.node = props.node ?? null;\n\t\tthis.needStartImmediately = props.needStartImmediately ?? true;\n\t\tthis.hideAfterEnd = props.hideAfterEnd ?? false;\n\n\t\tthis.onTimerEnd = null;\n\t\tif (Type.isFunction(props.onTimerEnd))\n\t\t{\n\t\t\tthis.onTimerEnd = props.onTimerEnd;\n\t\t}\n\n\t\tthis.onTimerUpdate = null;\n\t\tif (Type.isFunction(props.onTimerUpdate))\n\t\t{\n\t\t\tthis.onTimerUpdate = props.onTimerUpdate;\n\t\t}\n\n\t\tthis.timerElement = null;\n\t\tthis.intervalId = null;\n\n\t\tthis.init();\n\t}\n\n\tinit(): HTMLElement\n\t{\n\t\tthis.timerElement = Tag.render`\n\t\t\t<div class=\"ui-countdown ${this.cssClass}\">\n\t\t\t\t${this.showIcon ? Tag.render`<div class=\"ui-countdown__icon ${this.iconClass}\"></div>` : ''}\n\t\t\t\t<span class=\"ui-countdown__time\">${this.formatTime(this.seconds)}</span>\n\t\t\t</div>\n\t\t`;\n\n\t\tif (this.needStartImmediately)\n\t\t{\n\t\t\tthis.start();\n\t\t}\n\t\tDom.clean(this.node);\n\t\tDom.append(this.timerElement, this.node);\n\n\t\treturn this.node;\n\t}\n\n\tsetSeconds(seconds: number)\n\t{\n\t\tthis.seconds = seconds;\n\t}\n\n\tformatTime(seconds): string\n\t{\n\t\tif (this.showMinutes)\n\t\t{\n\t\t\tconst minutes = Math.floor(seconds / 60);\n\t\t\tconst remainingSeconds = seconds % 60;\n\n\t\t\treturn `${minutes < 10 ? '0' : ''}${minutes}:${remainingSeconds < 10 ? '0' : ''}${remainingSeconds}`;\n\t\t}\n\n\t\treturn seconds;\n\t}\n\n\tstart()\n\t{\n\t\tthis.lastTimestamp = Date.now();\n\t\tthis.update();\n\t}\n\n\tupdate()\n\t{\n\t\tconst now = Date.now();\n\t\tconst elapsed = now - this.lastTimestamp;\n\n\t\tif (elapsed >= this.interval)\n\t\t{\n\t\t\tthis.seconds -= Math.floor(elapsed / this.interval);\n\t\t\tthis.lastTimestamp = now - (elapsed % this.interval);\n\n\t\t\tif (this.seconds <= 0)\n\t\t\t{\n\t\t\t\tthis.seconds = 0;\n\t\t\t}\n\t\t\tconst timeElement = this.timerElement.querySelector('.ui-countdown__time');\n\t\t\tconst formattedTime = this.formatTime(this.seconds);\n\t\t\ttimeElement.textContent = formattedTime;\n\t\t\tif (Type.isFunction(this.onTimerUpdate))\n\t\t\t{\n\t\t\t\tthis.onTimerUpdate({\n\t\t\t\t\tseconds: this.seconds,\n\t\t\t\t\tformatted: formattedTime,\n\t\t\t\t});\n\t\t\t}\n\n\t\t\tif (this.seconds <= 0)\n\t\t\t{\n\t\t\t\tthis.stop();\n\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\n\t\tthis.intervalId = requestAnimationFrame(this.update.bind(this));\n\t}\n\n\tstop(): void\n\t{\n\t\tif (Type.isFunction(this.onTimerEnd))\n\t\t{\n\t\t\tthis.onTimerEnd();\n\t\t}\n\n\t\tif (this.hideAfterEnd)\n\t\t{\n\t\t\tDom.clean(this.node);\n\t\t}\n\t\tcancelAnimationFrame(this.intervalId);\n\t}\n\n\tgetElement(): HTMLElement\n\t{\n\t\treturn this.timerElement;\n\t}\n}\n"],"names":["Countdown","props","babelHelpers","this","seconds","showIcon","iconClass","showMinutes","cssClass","interval","node","needStartImmediately","hideAfterEnd","onTimerEnd","Type","isFunction","onTimerUpdate","timerElement","intervalId","init","key","value","Tag","render","formatTime","start","Dom","clean","append","minutes","Math","floor","remainingSeconds","lastTimestamp","Date","now","update","elapsed","timeElement","querySelector","formattedTime","textContent","formatted","stop","requestAnimationFrame","bind","cancelAnimationFrame"],"mappings":"uDAmBaA,aAgBZ,WAAYC,GACZ,sBAAAC,oCACCC,KAAKC,kBAAUH,EAAMG,uBAAW,EAChCD,KAAKE,mBAAWJ,EAAMI,yBACtBF,KAAKG,oBAAYL,EAAMK,yBAAa,wBACpCH,KAAKI,sBAAcN,EAAMM,4BACzBJ,KAAKK,mBAAWP,EAAMO,wBAAY,KAClCL,KAAKM,mBAAWR,EAAMQ,wBAAY,IAClCN,KAAKO,eAAOT,EAAMS,oBAAQ,KAC1BP,KAAKQ,+BAAuBV,EAAMU,qCAClCR,KAAKS,uBAAeX,EAAMW,6BAE1BT,KAAKU,WAAa,KACdC,OAAKC,WAAWd,EAAMY,cAEzBV,KAAKU,WAAaZ,EAAMY,YAGzBV,KAAKa,cAAgB,KACjBF,OAAKC,WAAWd,EAAMe,iBAEzBb,KAAKa,cAAgBf,EAAMe,eAG5Bb,KAAKc,aAAe,KACpBd,KAAKe,WAAa,KAElBf,KAAKgB,OAmGL,OAlGAjB,6BAAAkB,WAAAC,iBAkBA,OAdAlB,KAAKc,aAAeK,MAAIC,mLACIpB,KAAKK,SAC7BL,KAAKE,SAAWiB,MAAIC,iGAAwCpB,KAAKG,WAAsB,GACtDH,KAAKqB,WAAWrB,KAAKC,UAItDD,KAAKQ,sBAERR,KAAKsB,QAENC,MAAIC,MAAMxB,KAAKO,MACfgB,MAAIE,OAAOzB,KAAKc,aAAcd,KAAKO,MAE5BP,KAAKO,QACZU,iBAAAC,eAEUjB,GAEVD,KAAKC,QAAUA,KACfgB,iBAAAC,eAEUjB,GAEV,GAAID,KAAKI,YACT,CACC,IAAMsB,EAAUC,KAAKC,MAAM3B,EAAU,IAC/B4B,EAAmB5B,EAAU,GAEnC,gBAAUyB,EAAU,GAAK,IAAM,WAAKA,cAAWG,EAAmB,GAAK,IAAM,WAAKA,GAGnF,OAAO5B,KACPgB,YAAAC,iBAIAlB,KAAK8B,cAAgBC,KAAKC,MAC1BhC,KAAKiC,YACLhB,aAAAC,iBAIA,IAAMc,EAAMD,KAAKC,MACXE,EAAUF,EAAMhC,KAAK8B,cAE3B,GAAII,GAAWlC,KAAKM,SACpB,CACCN,KAAKC,SAAW0B,KAAKC,MAAMM,EAAUlC,KAAKM,UAC1CN,KAAK8B,cAAgBE,EAAOE,EAAUlC,KAAKM,SAEvCN,KAAKC,SAAW,IAEnBD,KAAKC,QAAU,GAEhB,IAAMkC,EAAcnC,KAAKc,aAAasB,cAAc,uBAC9CC,EAAgBrC,KAAKqB,WAAWrB,KAAKC,SAU3C,GATAkC,EAAYG,YAAcD,EACtB1B,OAAKC,WAAWZ,KAAKa,gBAExBb,KAAKa,cAAc,CAClBZ,QAASD,KAAKC,QACdsC,UAAWF,IAITrC,KAAKC,SAAW,EAInB,YAFAD,KAAKwC,OAMPxC,KAAKe,WAAa0B,sBAAsBzC,KAAKiC,OAAOS,KAAK1C,UACzDiB,WAAAC,iBAIIP,OAAKC,WAAWZ,KAAKU,aAExBV,KAAKU,aAGFV,KAAKS,cAERc,MAAIC,MAAMxB,KAAKO,MAEhBoC,qBAAqB3C,KAAKe,eAC1BE,iBAAAC,iBAIA,OAAOlB,KAAKc"}

Youez - 2016 - github.com/yon3zu
LinuXploit