{"version":3,"sources":["utils.js","detector.js","node.js","navbar-darken-on-scroll.js","zanimation.js","theme.js"],"names":["docReady","fn","document","readyState","addEventListener","setTimeout","isRTL","querySelector","getAttribute","resize","window","isIterableArray","array","Array","isArray","length","camelize","str","text","replace","_","c","toUpperCase","concat","substr","toLowerCase","getData","el","data","JSON","parse","dataset","e","hexToRgb","hexValue","hex","indexOf","substring","result","exec","m","r","g","b","parseInt","rgbaColor","color","arguments","undefined","alpha","getColor","name","dom","documentElement","getComputedStyle","getPropertyValue","trim","getColors","primary","secondary","success","info","warning","danger","light","dark","getSoftColors","getGrays","white","100","200","300","400","500","600","700","800","900","1000","1100","black","hasClass","className","classList","value","includes","addClass","add","getOffset","rect","getBoundingClientRect","scrollLeft","pageXOffset","scrollTop","pageYOffset","top","left","isScrolledIntoView","offsetTop","offsetLeft","width","offsetWidth","height","offsetHeight","offsetParent","all","innerHeight","innerWidth","partial","isElementIntoView","position","bottom","breakpoints","xs","sm","md","lg","xl","getBreakpoint","breakpoint","classes","split","filter","cls","pop","getCurrentScreenBreakpoint","currentBreakpoint","breakpointStartVal","setCookie","expire","expires","Date","setTime","getTime","cookie","toUTCString","getCookie","keyValue","match","settings","tinymce","theme","chart","borderColor","newChart","config","ctx","getContext","Chart","getItemFromStore","key","defaultValue","store","localStorage","getItem","_unused","setItemToStore","payload","setItem","getStoreSpace","parseFloat","escape","encodeURIComponent","stringify","toFixed","getDates","startDate","endDate","interval","from","v","i","valueOf","getPastDates","duration","days","date","setDate","getDate","getRandomNumber","min","max","Math","floor","random","utils","detectorInit","is","html","opera","mobile","firefox","safari","ios","iphone","ipad","ie","edge","chrome","mac","windows","navigator","userAgent","DomNode","node","_classCallCheck","this","isValidNode","remove","toggle","contains","setAttribute","removeAttribute","event","cb","navbarInit","windowHeight","navbarCollapse","bgClassName","shadowName","colorRgb","backgroundImage","transition","Selector","ClassNames","Events","navbar","colorName","style","backgroundColor","breakPoint","CustomEase","create","zanimationInit","zanimation","callback","getController","element","animationBreakpoints","activeBreakpoint","options","controller","hasAttribute","currentBreakpointName","controllerZanim","getAttributeNames","forEach","attribute","startsWith","breakPointName","currentBreakpointVal","push","size","sort","a","userOptions","merge","animation","zanimationEffects","delay","ease","to","timeline","timelineOption","gsap","querySelectorAll","timelineEl","fromTo","pause","imagesLoaded","closest","filterBlur","blur","default","opacity","y","slide-down","slide-left","x","slide-right","zoom-in","scale","zoom-out","zoom-out-slide-right","zoom-out-slide-left","blur-in","triggerZanimation","play"],"mappings":"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","file":"theme.min.js","sourcesContent":["/* -------------------------------------------------------------------------- */\r\n/* Utils */\r\n/* -------------------------------------------------------------------------- */\r\n\r\nconst docReady = fn => {\r\n // see if DOM is already available\r\n if (document.readyState === 'loading') {\r\n document.addEventListener('DOMContentLoaded', fn);\r\n } else {\r\n setTimeout(fn, 1);\r\n }\r\n};\r\n\r\nconst isRTL = () => {\r\n return document.querySelector('html').getAttribute('dir') === 'rtl';\r\n};\r\n\r\nconst resize = fn => window.addEventListener('resize', fn);\r\n/*eslint consistent-return: */\r\nconst isIterableArray = array => Array.isArray(array) && !!array.length;\r\n\r\nconst camelize = str => {\r\n if (str) {\r\n const text = str.replace(/[-_\\s.]+(.)?/g, (_, c) => (c ? c.toUpperCase() : ''));\r\n return `${text.substr(0, 1).toLowerCase()}${text.substr(1)}`;\r\n }\r\n};\r\n\r\nconst getData = (el, data) => {\r\n try {\r\n return JSON.parse(el.dataset[camelize(data)]);\r\n } catch (e) {\r\n return el.dataset[camelize(data)];\r\n }\r\n};\r\n\r\n/* ----------------------------- Colors function ---------------------------- */\r\n\r\nconst hexToRgb = hexValue => {\r\n let hex;\r\n hexValue.indexOf('#') === 0 ? (hex = hexValue.substring(1)) : (hex = hexValue);\r\n // Expand shorthand form (e.g. \"03F\") to full form (e.g. \"0033FF\")\r\n const shorthandRegex = /^#?([a-f\\d])([a-f\\d])([a-f\\d])$/i;\r\n const result = /^#?([a-f\\d]{2})([a-f\\d]{2})([a-f\\d]{2})$/i.exec(\r\n hex.replace(shorthandRegex, (m, r, g, b) => r + r + g + g + b + b)\r\n );\r\n return result\r\n ? [parseInt(result[1], 16), parseInt(result[2], 16), parseInt(result[3], 16)]\r\n : null;\r\n};\r\n\r\nconst rgbaColor = (color = '#fff', alpha = 0.5) => `rgba(${hexToRgb(color)}, ${alpha})`;\r\n\r\n/* --------------------------------- Colors --------------------------------- */\r\n\r\nconst getColor = (name, dom = document.documentElement) =>\r\n getComputedStyle(dom).getPropertyValue(`--gohub-${name}`).trim();\r\n\r\nconst getColors = dom => ({\r\n primary: getColor('primary', dom),\r\n secondary: getColor('secondary', dom),\r\n success: getColor('success', dom),\r\n info: getColor('info', dom),\r\n warning: getColor('warning', dom),\r\n danger: getColor('danger', dom),\r\n light: getColor('light', dom),\r\n dark: getColor('dark', dom)\r\n});\r\n\r\nconst getSoftColors = dom => ({\r\n primary: getColor('soft-primary', dom),\r\n secondary: getColor('soft-secondary', dom),\r\n success: getColor('soft-success', dom),\r\n info: getColor('soft-info', dom),\r\n warning: getColor('soft-warning', dom),\r\n danger: getColor('soft-danger', dom),\r\n light: getColor('soft-light', dom),\r\n dark: getColor('soft-dark', dom)\r\n});\r\n\r\nconst getGrays = dom => ({\r\n white: getColor('white', dom),\r\n 100: getColor('100', dom),\r\n 200: getColor('200', dom),\r\n 300: getColor('300', dom),\r\n 400: getColor('400', dom),\r\n 500: getColor('500', dom),\r\n 600: getColor('600', dom),\r\n 700: getColor('700', dom),\r\n 800: getColor('800', dom),\r\n 900: getColor('900', dom),\r\n 1000: getColor('1000', dom),\r\n 1100: getColor('1100', dom),\r\n black: getColor('black', dom)\r\n});\r\n\r\nconst hasClass = (el, className) => {\r\n !el && false;\r\n return el.classList.value.includes(className);\r\n};\r\n\r\nconst addClass = (el, className) => {\r\n el.classList.add(className);\r\n};\r\n\r\nconst getOffset = el => {\r\n const rect = el.getBoundingClientRect();\r\n const scrollLeft = window.pageXOffset || document.documentElement.scrollLeft;\r\n const scrollTop = window.pageYOffset || document.documentElement.scrollTop;\r\n return { top: rect.top + scrollTop, left: rect.left + scrollLeft };\r\n};\r\n\r\nconst isScrolledIntoView = el => {\r\n let top = el.offsetTop;\r\n let left = el.offsetLeft;\r\n const width = el.offsetWidth;\r\n const height = el.offsetHeight;\r\n\r\n while (el.offsetParent) {\r\n // eslint-disable-next-line no-param-reassign\r\n el = el.offsetParent;\r\n top += el.offsetTop;\r\n left += el.offsetLeft;\r\n }\r\n\r\n return {\r\n all:\r\n top >= window.pageYOffset &&\r\n left >= window.pageXOffset &&\r\n top + height <= window.pageYOffset + window.innerHeight &&\r\n left + width <= window.pageXOffset + window.innerWidth,\r\n partial:\r\n top < window.pageYOffset + window.innerHeight &&\r\n left < window.pageXOffset + window.innerWidth &&\r\n top + height > window.pageYOffset &&\r\n left + width > window.pageXOffset\r\n };\r\n};\r\n\r\nconst isElementIntoView = el => {\r\n const position = el.getBoundingClientRect();\r\n // checking whether fully visible\r\n if (position.top >= 0 && position.bottom <= window.innerHeight) {\r\n return true;\r\n }\r\n\r\n // checking for partial visibility\r\n if (position.top < window.innerHeight && position.bottom >= 0) {\r\n return true;\r\n }\r\n};\r\n\r\nconst breakpoints = {\r\n xs: 0,\r\n sm: 576,\r\n md: 768,\r\n lg: 992,\r\n xl: 1200\r\n};\r\n\r\nconst getBreakpoint = el => {\r\n const classes = el && el.classList.value;\r\n let breakpoint;\r\n if (classes) {\r\n breakpoint =\r\n breakpoints[\r\n classes\r\n .split(' ')\r\n .filter(cls => cls.includes('navbar-expand-'))\r\n .pop()\r\n .split('-')\r\n .pop()\r\n ];\r\n }\r\n return breakpoint;\r\n};\r\n\r\nconst getCurrentScreenBreakpoint = () => {\r\n let currentBreakpoint = '';\r\n if (window.innerWidth >= breakpoints.xl) {\r\n currentBreakpoint = 'xl';\r\n } else if (window.innerWidth >= breakpoints.lg) {\r\n currentBreakpoint = 'lg';\r\n } else if (window.innerWidth >= breakpoints.md) {\r\n currentBreakpoint = 'md';\r\n } else {\r\n currentBreakpoint = 'sm';\r\n }\r\n const breakpointStartVal = breakpoints[currentBreakpoint];\r\n return { currentBreakpoint, breakpointStartVal };\r\n};\r\n\r\n/* --------------------------------- Cookie --------------------------------- */\r\n\r\nconst setCookie = (name, value, expire) => {\r\n const expires = new Date();\r\n expires.setTime(expires.getTime() + expire);\r\n document.cookie = name + '=' + value + ';expires=' + expires.toUTCString();\r\n};\r\n\r\nconst getCookie = name => {\r\n var keyValue = document.cookie.match('(^|;) ?' + name + '=([^;]*)(;|$)');\r\n return keyValue ? keyValue[2] : keyValue;\r\n};\r\n\r\nconst settings = {\r\n tinymce: {\r\n theme: 'oxide'\r\n },\r\n chart: {\r\n borderColor: 'rgba(255, 255, 255, 0.8)'\r\n }\r\n};\r\n\r\n/* -------------------------- Chart Initialization -------------------------- */\r\n\r\nconst newChart = (chart, config) => {\r\n const ctx = chart.getContext('2d');\r\n return new window.Chart(ctx, config);\r\n};\r\n\r\n/* ---------------------------------- Store --------------------------------- */\r\n\r\nconst getItemFromStore = (key, defaultValue, store = localStorage) => {\r\n try {\r\n return JSON.parse(store.getItem(key)) || defaultValue;\r\n } catch {\r\n return store.getItem(key) || defaultValue;\r\n }\r\n};\r\n\r\nconst setItemToStore = (key, payload, store = localStorage) => store.setItem(key, payload);\r\nconst getStoreSpace = (store = localStorage) =>\r\n parseFloat((escape(encodeURIComponent(JSON.stringify(store))).length / (1024 * 1024)).toFixed(2));\r\n\r\n/* get Dates between */\r\n\r\nconst getDates = (startDate, endDate, interval = 1000 * 60 * 60 * 24) => {\r\n const duration = endDate - startDate;\r\n const steps = duration / interval;\r\n return Array.from({ length: steps + 1 }, (v, i) => new Date(startDate.valueOf() + interval * i));\r\n};\r\n\r\nconst getPastDates = duration => {\r\n let days;\r\n\r\n switch (duration) {\r\n case 'week':\r\n days = 7;\r\n break;\r\n case 'month':\r\n days = 30;\r\n break;\r\n case 'year':\r\n days = 365;\r\n break;\r\n\r\n default:\r\n days = duration;\r\n }\r\n\r\n const date = new Date();\r\n const endDate = date;\r\n const startDate = new Date(new Date().setDate(date.getDate() - (days - 1)));\r\n return getDates(startDate, endDate);\r\n};\r\n\r\n/* Get Random Number */\r\nconst getRandomNumber = (min, max) => {\r\n return Math.floor(Math.random() * (max - min) + min);\r\n};\r\n\r\nconst utils = {\r\n docReady,\r\n resize,\r\n isIterableArray,\r\n camelize,\r\n getData,\r\n hasClass,\r\n addClass,\r\n hexToRgb,\r\n rgbaColor,\r\n getColor,\r\n getColors,\r\n getSoftColors,\r\n getGrays,\r\n getOffset,\r\n isScrolledIntoView,\r\n getBreakpoint,\r\n setCookie,\r\n getCookie,\r\n newChart,\r\n settings,\r\n getItemFromStore,\r\n setItemToStore,\r\n getStoreSpace,\r\n getDates,\r\n getPastDates,\r\n getRandomNumber,\r\n getCurrentScreenBreakpoint,\r\n breakpoints,\r\n isElementIntoView,\r\n isRTL\r\n};\r\n\r\nexport default utils;\r\n","import { addClass } from './utils';\n/* -------------------------------------------------------------------------- */\n/* Detector */\n/* -------------------------------------------------------------------------- */\n\nconst detectorInit = () => {\n const { is } = window;\n const html = document.querySelector('html');\n\n is.opera() && addClass(html, 'opera');\n is.mobile() && addClass(html, 'mobile');\n is.firefox() && addClass(html, 'firefox');\n is.safari() && addClass(html, 'safari');\n is.ios() && addClass(html, 'ios');\n is.iphone() && addClass(html, 'iphone');\n is.ipad() && addClass(html, 'ipad');\n is.ie() && addClass(html, 'ie');\n is.edge() && addClass(html, 'edge');\n is.chrome() && addClass(html, 'chrome');\n is.mac() && addClass(html, 'osx');\n is.windows() && addClass(html, 'windows');\n navigator.userAgent.match('CriOS') && addClass(html, 'chrome');\n};\n\nexport default detectorInit;\n","/*-----------------------------------------------\n| DomNode\n-----------------------------------------------*/\nclass DomNode {\n constructor(node) {\n this.node = node;\n }\n\n addClass(className) {\n this.isValidNode() && this.node.classList.add(className);\n }\n\n removeClass(className) {\n this.isValidNode() && this.node.classList.remove(className);\n }\n\n toggleClass(className) {\n this.isValidNode() && this.node.classList.toggle(className);\n }\n\n hasClass(className) {\n this.isValidNode() && this.node.classList.contains(className);\n }\n\n data(key) {\n if (this.isValidNode()) {\n try {\n return JSON.parse(this.node.dataset[this.camelize(key)]);\n } catch (e) {\n return this.node.dataset[this.camelize(key)];\n }\n }\n return null;\n }\n\n attr(name) {\n return this.isValidNode() && this.node[name];\n }\n\n setAttribute(name, value) {\n this.isValidNode() && this.node.setAttribute(name, value);\n }\n\n removeAttribute(name) {\n this.isValidNode() && this.node.removeAttribute(name);\n }\n\n setProp(name, value) {\n this.isValidNode() && (this.node[name] = value);\n }\n\n on(event, cb) {\n this.isValidNode() && this.node.addEventListener(event, cb);\n }\n\n isValidNode() {\n return !!this.node;\n }\n\n // eslint-disable-next-line class-methods-use-this\n camelize(str) {\n const text = str.replace(/[-_\\s.]+(.)?/g, (_, c) => (c ? c.toUpperCase() : ''));\n return `${text.substr(0, 1).toLowerCase()}${text.substr(1)}`;\n }\n}\n\nexport default DomNode;\n","import utils from './utils';\r\n/*-----------------------------------------------\r\n| Top navigation opacity on scroll\r\n-----------------------------------------------*/\r\nconst navbarInit = () => {\r\n const Selector = {\r\n NAVBAR: '[data-navbar-on-scroll]',\r\n NAVBAR_COLLAPSE: '.navbar-collapse',\r\n NAVBAR_TOGGLER: '.navbar-toggler'\r\n };\r\n\r\n const ClassNames = {\r\n COLLAPSED: 'collapsed'\r\n };\r\n\r\n const Events = {\r\n SCROLL: 'scroll',\r\n SHOW_BS_COLLAPSE: 'show.bs.collapse',\r\n HIDE_BS_COLLAPSE: 'hide.bs.collapse',\r\n HIDDEN_BS_COLLAPSE: 'hidden.bs.collapse'\r\n };\r\n\r\n const DataKey = {\r\n NAVBAR_ON_SCROLL: 'navbar-on-scroll'\r\n };\r\n\r\n const navbar = document.querySelector(Selector.NAVBAR);\r\n\r\n if (navbar) {\r\n const windowHeight = window.innerHeight;\r\n const html = document.documentElement;\r\n const navbarCollapse = navbar.querySelector(Selector.NAVBAR_COLLAPSE);\r\n\r\n const name = utils.getData(navbar, DataKey.NAVBAR_ON_SCROLL);\r\n const colorName = name ? name : 'light';\r\n const color = utils.getColor(colorName);\r\n const bgClassName = `bg-${colorName}`;\r\n const shadowName = 'shadow-transition';\r\n const colorRgb = utils.hexToRgb(color);\r\n const { backgroundImage } = window.getComputedStyle(navbar);\r\n const transition = 'background-color 0.35s ease';\r\n navbar.style.backgroundImage = 'none';\r\n\r\n // Change navbar background color on scroll\r\n window.addEventListener(Events.SCROLL, () => {\r\n const { scrollTop } = html;\r\n let alpha = (scrollTop / windowHeight) * 5;\r\n alpha >= 1 && (alpha = 1);\r\n navbar.style.backgroundColor = `rgba(${colorRgb[0]}, ${colorRgb[1]}, ${colorRgb[2]}, ${alpha})`;\r\n navbar.style.backgroundImage =\r\n alpha > 0 || utils.hasClass(navbarCollapse, 'show') ? backgroundImage : 'none';\r\n alpha > 0 || utils.hasClass(navbarCollapse, 'show')\r\n ? navbar.classList.add(shadowName)\r\n : navbar.classList.remove(shadowName);\r\n });\r\n\r\n // Toggle bg class on window resize\r\n utils.resize(() => {\r\n const breakPoint = utils.getBreakpoint(navbar);\r\n if (window.innerWidth > breakPoint) {\r\n navbar.style.backgroundImage = html.scrollTop ? backgroundImage : 'none';\r\n navbar.style.transition = 'none';\r\n } else if (\r\n !utils.hasClass(navbar.querySelector(Selector.NAVBAR_TOGGLER), ClassNames.COLLAPSED)\r\n ) {\r\n navbar.classList.add(bgClassName);\r\n navbar.classList.add(shadowName);\r\n navbar.style.backgroundImage = backgroundImage;\r\n }\r\n\r\n if (window.innerWidth <= breakPoint) {\r\n navbar.style.transition = utils.hasClass(navbarCollapse, 'show') ? transition : 'none';\r\n }\r\n });\r\n\r\n navbarCollapse.addEventListener(Events.SHOW_BS_COLLAPSE, () => {\r\n navbar.classList.add(bgClassName);\r\n navbar.classList.add(shadowName);\r\n navbar.style.backgroundImage = backgroundImage;\r\n navbar.style.transition = transition;\r\n });\r\n\r\n navbarCollapse.addEventListener(Events.HIDE_BS_COLLAPSE, () => {\r\n navbar.classList.remove(bgClassName);\r\n navbar.classList.remove(shadowName);\r\n !html.scrollTop && (navbar.style.backgroundImage = 'none');\r\n });\r\n\r\n navbarCollapse.addEventListener(Events.HIDDEN_BS_COLLAPSE, () => {\r\n navbar.style.transition = 'none';\r\n });\r\n }\r\n};\r\n\r\nexport default navbarInit;\r\n","/*-----------------------------------------------\r\n| Zanimation\r\n-----------------------------------------------*/\r\n\r\nimport utils from \"./utils\";\r\n/*\r\nglobal CustomEase, gsap\r\n*/\r\nCustomEase.create(\"CubicBezier\", \".77,0,.18,1\");\r\n\r\n/*-----------------------------------------------\r\n| Global Functions\r\n-----------------------------------------------*/\r\n\r\nconst zanimationInit = ( ()=>{\r\n\r\n\r\nconst filterBlur = () => {\r\n let blur = \"blur(5px)\";\r\n // (window.is.iphone() || window.is.ipad() || window.is.ipod() && window.is.firefox())\r\n // || (window.is.mac() && window.is.firefox())\r\n const isIpadIphoneMacFirefox =\r\n (window.is.ios() || window.is.mac()) && window.is.firefox();\r\n if (isIpadIphoneMacFirefox) {\r\n blur = \"blur(0px)\";\r\n }\r\n return blur;\r\n};\r\n\r\nconst zanimationEffects = {\r\n default: {\r\n from: {\r\n opacity: 0,\r\n y: 70,\r\n },\r\n to: {\r\n opacity: 1,\r\n y: 0,\r\n },\r\n ease: 'CubicBezier',\r\n duration: 0.8,\r\n delay: 0,\r\n },\r\n\r\n 'slide-down': {\r\n from: {\r\n opacity: 0,\r\n y: -70,\r\n },\r\n to: {\r\n opacity: 1,\r\n y: 0,\r\n },\r\n ease: 'CubicBezier',\r\n duration: 0.8,\r\n delay: 0,\r\n },\r\n\r\n 'slide-left': {\r\n from: {\r\n opacity: 0,\r\n x: 70,\r\n },\r\n to: {\r\n opacity: 1,\r\n x: 0,\r\n },\r\n ease: 'CubicBezier',\r\n duration: 0.8,\r\n delay: 0,\r\n },\r\n\r\n 'slide-right': {\r\n from: {\r\n opacity: 0,\r\n x: -70,\r\n },\r\n to: {\r\n opacity: 1,\r\n x: 0,\r\n },\r\n ease: 'CubicBezier',\r\n duration: 0.8,\r\n delay: 0,\r\n },\r\n\r\n 'zoom-in': {\r\n from: {\r\n scale: 0.9,\r\n opacity: 0,\r\n filter: filterBlur(),\r\n },\r\n to: {\r\n scale: 1,\r\n opacity: 1,\r\n filter: 'blur(0px)',\r\n },\r\n delay: 0,\r\n ease: 'CubicBezier',\r\n duration: 0.8,\r\n },\r\n\r\n 'zoom-out': {\r\n from: {\r\n scale: 1.1,\r\n opacity: 1,\r\n filter: filterBlur(),\r\n },\r\n to: {\r\n scale: 1,\r\n opacity: 1,\r\n filter: 'blur(0px)',\r\n },\r\n delay: 0,\r\n ease: 'CubicBezier',\r\n duration: 0.8,\r\n },\r\n\r\n 'zoom-out-slide-right': {\r\n from: {\r\n scale: 1.1,\r\n opacity: 1,\r\n x: -70,\r\n filter: filterBlur(),\r\n },\r\n to: {\r\n scale: 1,\r\n opacity: 1,\r\n x: 0,\r\n filter: 'blur(0px)',\r\n },\r\n delay: 0,\r\n ease: 'CubicBezier',\r\n duration: 0.8,\r\n },\r\n\r\n 'zoom-out-slide-left': {\r\n from: {\r\n scale: 1.1,\r\n opacity: 1,\r\n x: 70,\r\n filter: filterBlur(),\r\n },\r\n to: {\r\n scale: 1,\r\n opacity: 1,\r\n x: 0,\r\n filter: 'blur(0px)',\r\n },\r\n delay: 0,\r\n ease: 'CubicBezier',\r\n duration: 0.8,\r\n },\r\n\r\n 'blur-in': {\r\n from: {\r\n opacity: 0,\r\n filter: filterBlur(),\r\n },\r\n to: {\r\n opacity: 1,\r\n filter: 'blur(0px)',\r\n },\r\n delay: 0,\r\n ease: 'CubicBezier',\r\n duration: 0.8,\r\n },\r\n};\r\n// if (utils.isRTL()) {\r\n// Object.keys(zanimationEffects).forEach((key) => {\r\n// if (zanimationEffects[key].from.x) {\r\n// zanimationEffects[key].from.x = -zanimationEffects[key].from.x;\r\n// }\r\n// });\r\n// }\r\n\r\n\r\nconst currentBreakpointName = utils.getCurrentScreenBreakpoint().currentBreakpoint;\r\nconst currentBreakpointVal = utils.getCurrentScreenBreakpoint().breakpointStartVal;\r\n\r\n\r\n const zanimation = (el, callback)=>{\r\n \r\n /*-----------------------------------------------\r\n | Get Controller\r\n -----------------------------------------------*/\r\n let controllerZanim;\r\n const getController = (element) => {\r\n let options = {};\r\n let controller = {};\r\n \r\n if (element.hasAttribute(`data-zanim-${currentBreakpointName}`)) {\r\n controllerZanim = `zanim-${currentBreakpointName}`;\r\n }\r\n else {\r\n /*-----------------------------------------------\r\n | Set the mobile first Animation\r\n -----------------------------------------------*/\r\n let animationBreakpoints = [];\r\n\r\n const attributes = element.getAttributeNames()\r\n attributes.forEach( attribute => {\r\n \r\n if( attribute !==\"data-zanim-trigger\" && attribute.startsWith('data-zanim-')){\r\n const breakPointName = attribute.split('data-zanim-')[1];\r\n if (utils.breakpoints[breakPointName] < currentBreakpointVal) {\r\n animationBreakpoints.push({\r\n name: breakPointName,\r\n size: utils.breakpoints[breakPointName],\r\n });\r\n }\r\n }\r\n\r\n })\r\n\r\n controllerZanim = undefined;\r\n if (animationBreakpoints.length !== 0) {\r\n animationBreakpoints = animationBreakpoints.sort((a, b) => a.size - b.size);\r\n const activeBreakpoint = animationBreakpoints.pop();\r\n controllerZanim = `zanim-${activeBreakpoint.name}`;\r\n }\r\n\r\n }\r\n\r\n const userOptions = utils.getData(element, controllerZanim);\r\n controller = window._.merge( options, userOptions )\r\n\r\n if (!(controllerZanim === undefined)) {\r\n if (userOptions.animation) {\r\n options = zanimationEffects[userOptions.animation];\r\n } else {\r\n options = zanimationEffects.default;\r\n }\r\n }\r\n if (controllerZanim === undefined) {\r\n options = {\r\n delay: 0,\r\n duration: 0,\r\n ease: 'Expo.easeOut',\r\n from: {},\r\n to: {},\r\n };\r\n }\r\n\r\n /*-----------------------------------------------\r\n | populating the controller\r\n -----------------------------------------------*/\r\n if (!controller.delay) {\r\n controller.delay = options.delay;\r\n }\r\n if (!controller.duration) {\r\n controller.duration = options.duration;\r\n }\r\n if (!controller.from) {\r\n controller.from = options.from;\r\n }\r\n if (!controller.to) {\r\n controller.to = options.to;\r\n }\r\n\r\n if (controller.ease) {\r\n controller.to.ease = controller.ease;\r\n } else {\r\n controller.to.ease = options.ease;\r\n } \r\n\r\n return controller;\r\n \r\n };\r\n /*-----------------------------------------------\r\n | End of Get Controller\r\n -----------------------------------------------*/\r\n\r\n /*-----------------------------------------------\r\n | For Timeline\r\n -----------------------------------------------*/\r\n const zanimTimeline = el.hasAttribute('data-zanim-timeline')\r\n if(zanimTimeline){\r\n const timelineOption = utils.getData(el, 'zanim-timeline') \r\n const timeline = gsap.timeline(timelineOption)\r\n // const timeline = new TimelineMax(zanimTimeline);\r\n \r\n const timelineElements =el.querySelectorAll(\"[data-zanim-xs], [data-zanim-sm], [data-zanim-md], [data-zanim-lg], [data-zanim-xl]\")\r\n timelineElements.forEach((timelineEl) => {\r\n const controller = getController(timelineEl);\r\n timeline\r\n .fromTo(\r\n timelineEl,\r\n controller.duration,\r\n controller.from,\r\n controller.to,\r\n controller.delay\r\n )\r\n .pause();\r\n window.imagesLoaded( timelineEl, callback(timeline));\r\n\r\n }) \r\n }\r\n else if (!el.closest('[data-zanim-timeline]')){\r\n /*-----------------------------------------------\r\n | For single elements outside timeline\r\n -----------------------------------------------*/\r\n const controller = getController(el); \r\n callback(\r\n gsap\r\n .fromTo(el, controller.duration, controller.from, controller.to)\r\n .delay(controller.delay)\r\n .pause()\r\n );\r\n }\r\n\r\n callback(gsap.timeline());\r\n\r\n }\r\n\r\n /*-----------------------------------------------\r\n | Triggering zanimation when the element enters in the view\r\n -----------------------------------------------*/\r\n const triggerZanimation = () => {\r\n const triggerElement = document.querySelectorAll(\"[data-zanim-trigger = 'scroll']\")\r\n triggerElement.forEach( el =>{\r\n if( utils.isElementIntoView(el) && el.hasAttribute('data-zanim-trigger') ){ \r\n zanimation( el, animation => animation.play());\r\n if(!document.querySelector('[zanim-repeat]')){\r\n el.removeAttribute('data-zanim-trigger')\r\n }\r\n }\r\n })\r\n }\r\n\r\n triggerZanimation();\r\n window.addEventListener(\"scroll\", () =>triggerZanimation() );\r\n\r\n})\r\nexport default zanimationInit","import { docReady } from \"./utils\";\nimport navbarInit from \"./navbar-darken-on-scroll\";\nimport detectorInit from \"./detector\";\nimport zanimationInit from \"./zanimation\";\n\n/* -------------------------------------------------------------------------- */\n/* Theme Initialization */\n/* -------------------------------------------------------------------------- */\ndocReady(navbarInit);\ndocReady(detectorInit);\ndocReady(zanimationInit);\n\n"]}