{"version":3,"file":"chunks/1cb49567969d04.js","mappings":"uoCAA4B,IAEPA,EAAgB,WAUnC,SAAAA,EAAYC,EAAsBC,I,4FAAaC,CAAA,KAAAH,GAC7CI,KAAKH,QAAUI,EAAEJ,GACjBG,KAAKF,O,+VAAMI,CAAA,GAAQJ,GACnBE,KAAKG,aAAeF,EAAE,iBAAkBD,KAAKH,SAC7CG,KAAKI,kBAAoBJ,KAAKF,OAAOK,aAAaE,OAClDL,KAAKM,UAAY,IACjBN,KAAKO,UAAY,IACjBP,KAAKQ,MAAQ,EACbR,KAAKS,UACLT,KAAKU,MACP,C,QAmEC,O,EAnEAd,G,EAAA,EAAAe,IAAA,OAAAC,MAED,WACEZ,KAAKS,UAAYI,YACf,WACEb,KAAKc,eACP,EAAEC,KAAKf,MACPA,KAAKF,OAAOkB,SAEhB,GAAC,CAAAL,IAAA,gBAAAC,MAED,WACE,OAAQZ,KAAKF,OAAOmB,OAClB,IAAK,SACHjB,KAAKkB,aACL,MACF,IAAK,aACHlB,KAAKmB,iBAKX,GAAC,CAAAR,IAAA,aAAAC,MAED,WACMZ,KAAKQ,QAAUR,KAAKI,kBAAoB,EACtCJ,KAAKF,OAAOsB,KACdpB,KAAKQ,MAAQ,EAEba,cAAcrB,KAAKS,WAGrBT,KAAKQ,MAAQR,KAAKQ,MAAQ,CAE9B,GAAC,CAAAG,IAAA,aAAAC,MAED,WACEZ,KAAKG,aAAamB,QAChB,CAAEC,QAAS,GACXvB,KAAKM,UACL,WACEN,KAAKG,aACFqB,KAAKxB,KAAKF,OAAOK,aAAaH,KAAKQ,QACnCc,QAAQ,CAAEC,QAAS,GAAKvB,KAAKM,WAChCN,KAAKyB,YACP,EAAEV,KAAKf,MAEX,GAAC,CAAAW,IAAA,iBAAAC,MAED,WACE,IAAIc,EAAa1B,KAAKF,OAAOK,aAAaH,KAAKQ,OAAOmB,MAAM,IACxDC,EAAmBF,EAAWrB,OAC9BwB,EAAU,EACVL,EAAO,GACPM,EAASjB,YACX,WACEW,GAAcE,EAAWG,GACzB7B,KAAKG,aAAaqB,KAAKA,GACnBK,EAAUD,EAAmB,EAC/BC,GAAoB,EAEpBR,cAAcS,EAElB,EAAEf,KAAKf,MACPA,KAAKO,WAEPP,KAAKyB,YACP,M,oEAAC7B,CAAA,CAvFkC,E","sources":["webpack:///./resources/js/components/generic/heading-animation.ts"],"sourcesContent":["import * as $ from \"jquery\";\n\nexport default class HeadingAnimation {\n domRoot: JQuery<any>;\n params: any;\n animatedText: JQuery<HTMLElement>;\n replacementLength: any;\n fadeSpeed: number;\n typeSpeed: number;\n index: number;\n animation: any;\n\n constructor(domRoot: HTMLElement, params: any) {\n this.domRoot = $(domRoot);\n this.params = { ...params };\n this.animatedText = $(\".animated-text\", this.domRoot);\n this.replacementLength = this.params.animatedText.length;\n this.fadeSpeed = 200;\n this.typeSpeed = 100;\n this.index = 1;\n this.animation;\n this.init();\n }\n\n init() {\n this.animation = setInterval(\n function () {\n this.playAnimation();\n }.bind(this),\n this.params.duration\n );\n }\n\n playAnimation() {\n switch (this.params.style) {\n case \"fadeIn\":\n this.fadeInText();\n break;\n case \"typewriter\":\n this.typewriterText();\n break;\n default:\n break;\n }\n }\n\n handleLoop() {\n if (this.index === this.replacementLength - 1) {\n if (this.params.loop) {\n this.index = 0;\n } else {\n clearInterval(this.animation);\n }\n } else {\n this.index = this.index + 1;\n }\n }\n\n fadeInText() {\n this.animatedText.animate(\n { opacity: 0 },\n this.fadeSpeed,\n function () {\n this.animatedText\n .text(this.params.animatedText[this.index])\n .animate({ opacity: 1 }, this.fadeSpeed);\n this.handleLoop();\n }.bind(this)\n );\n }\n\n typewriterText() {\n var characters = this.params.animatedText[this.index].split(\"\");\n var charactersLength = characters.length;\n var counter = 0;\n var text = \"\";\n var typing = setInterval(\n function () {\n text = text + characters[counter];\n this.animatedText.text(text);\n if (counter < charactersLength - 1) {\n counter = counter + 1;\n } else {\n clearInterval(typing);\n }\n }.bind(this),\n this.typeSpeed\n );\n this.handleLoop();\n }\n}\n"],"names":["HeadingAnimation","domRoot","params","_classCallCheck","this","$","_objectSpread","animatedText","replacementLength","length","fadeSpeed","typeSpeed","index","animation","init","key","value","setInterval","playAnimation","bind","duration","style","fadeInText","typewriterText","loop","clearInterval","animate","opacity","text","handleLoop","characters","split","charactersLength","counter","typing"],"sourceRoot":""}