{"version":3,"sources":["countdown.js","helper.js","lazy.js","menu.js","scroll.js","title.js","script.js"],"names":["countdown","elm","i","init","helper","element","seconds","undefined","length","setInterval","calc","classList","add","sec","span","Date","getTime","dt","days","Math","floor","hours","minutes","clearInterval","elmdays","elmhours","elmminutes","elmseconds","innerText","toString","padStart","context","name","document","querySelector","e","console","log","event","events","listener","params","split","iLen","addEventListener","all","substring","getElementsByClassName","getElementById","getElementsByTagName","validate","fields","checkall","success","Object","values","forEach","item","k","contains","pattern","RegExp","getAttribute","value","trim","test","remove","c","group","delay","duration","Promise","resolve","setTimeout","lazy","elms","io","IntersectionObserver","exec","Array","prototype","call","observe","style","animationDelay","items","intersectionRatio","target","menu","nav","btn","btnimg","links","header","close","src","replace","window","scrollY","pageYOffset","documentElement","scrollTop","pause","type","then","body","key","scroll","dir","parallax","pos","lines","top","title","titles","cnt","ln","innerHTML","map","char","ceil","abs","join","com","eventvalidation","form","evt","preventDefault","submit","push"],"mappings":"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","sourcesContent":["var countdown = {\n\n elm : null,\n i : null,\n\n init: () => {\n\n countdown.elm = helper.element(\".countdown\", false);\n let seconds = 0;\n if (countdown.elm && countdown.elm.length === undefined) {\n countdown.i = setInterval(function() {\n countdown.calc(seconds);\n countdown.elm.classList.add(\"show\");\n seconds += 1;\n }, 1000);\n }\n\n\n\n },\n\n calc: (sec) => {\n\n let todate = new Date(\"June 5, 2026 10:00:00\").getTime();\n\n let now = new Date(dt).getTime();\n let span = todate - now - (sec * 1000);\n\n let days = Math.floor(span / (1000 * 60 * 60 * 24));\n let hours = Math.floor((span % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60));\n let minutes = Math.floor((span % (1000 * 60 * 60)) / (1000 * 60));\n let seconds = Math.floor((span % (1000 * 60)) / 1000);\n\n if (span < 0) {\n clearInterval(countdown.i);\n days = 0;\n hours = 0;\n minutes = 0;\n seconds = 0;\n }\n\n let elmdays = helper.element(\".js-day\");\n let elmhours = helper.element(\".js-hour\");\n let elmminutes = helper.element(\".js-minute\");\n let elmseconds = helper.element(\".js-second\");\n\n if (elmdays && elmhours && elmminutes && elmseconds) {\n elmdays.innerText = days.toString().padStart(2, \"0\");\n elmhours.innerText = hours.toString().padStart(2, \"0\");\n elmminutes.innerText = minutes.toString().padStart(2, \"0\");\n elmseconds.innerText = seconds.toString().padStart(2, \"0\");\n }\n\n }\n};\n","var helper = {\r\n\r\n /*\r\n * usage :\r\n * return DOM element\r\n */\r\n context: (name) => {\r\n try {\r\n return document.querySelector(`[${name}]`);\r\n } catch (e) {\r\n console.log(e, name);\r\n }\r\n\r\n return null;\r\n },\r\n\r\n /*\r\n * usage :\r\n * return -\r\n */\r\n event: (element, events, listener, params = null) => {\r\n if (element !== null) {\r\n var event = events.split(' ');\r\n for (let i = 0, iLen = event.length; i < iLen; i++) {\r\n element.addEventListener(event[i], listener, false);\r\n if (params !== null) {\r\n element.addEventListener(event[i], listener, params);\r\n }\r\n }\r\n }\r\n },\r\n\r\n /*\r\n * usage :\r\n * return DOM element\r\n */\r\n element: (name, all = false) => {\r\n try {\r\n let elm = null;\r\n if (name.substring(0,1) === \".\") {\r\n elm = document.getElementsByClassName(name.substring(1));\r\n } else if (name.substring(0,1) === \"#\") {\r\n elm = document.getElementById(name.substring(1));\r\n } else {\r\n elm = document.getElementsByTagName(name);\r\n if (elm.length === 0) {\r\n elm = document.querySelector(name);\r\n }\r\n }\r\n if (elm && elm.length > 0) {\r\n return all ? elm : elm[0];\r\n } else {\r\n return elm;\r\n }\r\n } catch (e) {\r\n // error.. ignore..\r\n }\r\n\r\n return null;\r\n },\r\n\r\n /*\r\n * usage :\r\n * return true/false\r\n */\r\n validate: (fields, checkall = false) => {\r\n let success = true;\r\n Object.values(fields).forEach(function(item, k) {\r\n if (item.classList.contains(\"js-required\") || item.classList.contains(\"js-validate\")) {\r\n let pattern = new RegExp(item.getAttribute(\"pattern\"));\r\n if (((item.value.trim() === \"\" && item.classList.contains(\"js-required\")) || (item.getAttribute(\"pattern\") !== null) ? !pattern.test(item.value.trim()) : false) && item.getAttribute(\"type\") !== \"radio\" && item.getAttribute(\"type\") !== \"checkbox\") {\r\n if ((item.value.trim() === \"\" && item.classList.contains(\"js-required\")) || (item.value.trim() !== \"\" && item.classList.contains(\"js-validate\"))) {\r\n success = false;\r\n }\r\n if (item.classList.contains(\"validated\") || checkall) {\r\n item.classList.add(\"error\");\r\n item.classList.remove(\"valid\");\r\n }\r\n if (item.value.trim() === \"\" && item.classList.contains(\"js-validate\")) {\r\n item.classList.remove(\"error\");\r\n item.classList.add(\"valid\");\r\n }\r\n } else {\r\n item.classList.remove(\"error\");\r\n item.classList.add(\"valid\");\r\n }\r\n\r\n if (checkall) {\r\n if (item.getAttribute(\"type\") === \"radio\" || item.getAttribute(\"type\") === \"checkbox\") {\r\n const c = document.querySelector(`input[name=\"${item.name}\"]:checked`);\r\n const group = helper.element(`.js-group-${item.name}`, false);\r\n if (group) {\r\n if (c !== null) {\r\n group.classList.remove(\"error\");\r\n group.classList.add(\"valid\");\r\n } else {\r\n success = false;\r\n group.classList.add(\"error\");\r\n group.classList.remove(\"valid\");\r\n }\r\n }\r\n }\r\n }\r\n }\r\n });\r\n\r\n return success;\r\n },\r\n\r\n /*\r\n * usage :\r\n * delay(0.5).then(function() { });\r\n *\r\n * return -\r\n */\r\n delay: (duration) => {\r\n return new Promise(resolve => setTimeout(resolve, duration));\r\n }\r\n};\r\n","var lazy = {\n\n init : () => {\n const elms = helper.element(\".lazy\", true);\n const io = new IntersectionObserver(lazy.exec);\n let k = 0\n Array.prototype.forEach.call(elms, elm => {\n io.observe(elm);\n elm.style.animationDelay = k + \"s\";\n k = k + .16;\n if (k > .64) {\n k = .64;\n }\n });\n },\n\n exec : (items) => {\n items.forEach((item) => {\n if (item.intersectionRatio > 0) {\n item.target.classList.add(\"show\");\n }\n });\n }\n};","var menu = {\n nav : null,\n btn : null,\n btnimg : null,\n links : null,\n header : null,\n\n close: (e) => {\n\n menu.nav.classList.remove(\"active\");\n menu.btnimg.src = menu.btnimg.src.replace(\"close\", \"hamburger\");\n let scroll = window.scrollY || window.pageYOffset || document.documentElement.scrollTop;\n if (scroll > 30) {\n menu.header.classList.add(\"scroll\");\n } else {\n menu.header.classList.remove(\"scroll\");\n }\n\n },\n init: function() {\n menu.nav = helper.element(\".nav\", false);\n menu.btn = helper.element(\".nav-btn\", false);\n menu.btnimg = helper.element(\".nav-btn-img\", false);\n menu.links = helper.element(\".nav-link\", true);\n menu.header = helper.element(\"header\");\n menu.pause = false\n\n if (menu.nav && menu.btn && menu.btnimg && menu.links && menu.header) {\n helper.event(menu.btn, \"click touchstart\", function(e) {\n if (!menu.pause) {\n menu.pause = true;\n if (menu.nav.classList.contains(\"active\")) {\n menu.close(e);\n } else {\n menu.nav.classList.add(\"active\");\n menu.btnimg.src = menu.btnimg.src.replace(\"hamburger\", \"close\");\n menu.header.classList.remove(\"scroll\");\n }\n if (e.type === \"touchstart\") {\n helper.delay(640).then(() => {\n menu.pause = false;\n });\n } else {\n menu.pause = false;\n }\n\n }\n\n });\n\n\n helper.event(document.body, \"keydown\", function(e) {\n if (menu.nav.classList.contains(\"active\") && e.key === \"Escape\" ) {\n menu.close(e);\n }\n });\n\n let k = 0;\n Array.prototype.forEach.call(menu.links, item => {\n item.style.animationDelay = k + \"s\";\n k = k + .16;\n });\n }\n }\n};","var scroll = {\n dir : 0,\n\n parallax : ()=>{\n let pos = window.scrollY || window.pageYOffset || document.documentElement.scrollTop;\n let header = helper.element(\"header\");\n let lines = helper.element(\".background-lines\");\n let nav = helper.element(\".nav\", false);\n\n let apple = helper.element(\".apple\", false);\n\n if (header) {\n if (pos > 30 && !nav.classList.contains(\"active\")) {\n header.classList.add(\"scroll\");\n } else {\n header.classList.remove(\"scroll\");\n }\n\n if (pos > scroll.dir && pos > 150 && !nav.classList.contains(\"active\")) {\n header.classList.add(\"hidden\");\n } else {\n header.classList.remove(\"hidden\");\n }\n }\n lines.style.top = (pos * -.64) + \"px\";\n scroll.dir = pos;\n }\n};","var title = {\n init: function () {\n let titles = helper.element(\"h1\", true);\n if (titles) {\n Array.prototype.forEach.call(titles, title => {\n if (title) {\n let cnt = 0;\n let ln = title.innerText.length;\n let i = 0;\n\n title.innerHTML = title.innerText\n .split(\"\")\n .map((char) => {\n if (cnt > Math.floor(ln / 2)) {\n i++;\n } else {\n if (cnt < Math.ceil(ln / 2)) {\n i--;\n }\n }\n cnt++;\n return `${char}`;\n })\n .join(\"\");\n }\n });\n }\n\n }\n};\n","\"use strict\";\r\n(function (window, document, com, undefined) {\r\n\r\n const init = () => {\r\n lazy.init();\r\n title.init();\r\n menu.init();\r\n countdown.init();\r\n helper.event(document, 'scroll', scroll.parallax);\r\n\r\n // form validation\r\n let btn = helper.element(\".validate\", false);\r\n let fields = [];\r\n Object.values(helper.element(\".js-required\", true)).forEach(function(item, k) {\r\n fields.push(item);\r\n });\r\n Object.values(helper.element(\".js-validate\", true)).forEach(function(item, k) {\r\n fields.push(item);\r\n });\r\n let form = helper.element(\".js-form\", false);\r\n eventvalidation(btn, fields, form);\r\n\r\n }\r\n\r\n const eventvalidation = (btn, fields, form) => {\r\n if (btn && (btn.length > 0 || typeof btn.length === \"undefined\") && form) {\r\n\r\n if (fields) {\r\n if (helper.validate(fields, false)) {\r\n btn.classList.remove(\"disabled\");\r\n } else {\r\n btn.classList.add(\"disabled\");\r\n }\r\n }\r\n\r\n Object.values(fields).forEach(function (item, k) {\r\n if (item.type !== \"radio\" && item.type !== \"checkbox\" && item.type !== \"password\") {\r\n item.addEventListener( \"input\", event => {\r\n item.value = item.value.replace(/[^a-zA-Z0-9.!@#$%&'*+\\/=?^_{|}-\\s]/gm, '');\r\n });\r\n item.addEventListener( \"paste\", event => {\r\n item.value = item.value.replace(/[^a-zA-Z0-9.!@#$%&'*+\\/=?^_{|}-\\s]/gm, '');\r\n });\r\n }\r\n\r\n ['keyup', 'blur', 'touchstart', 'click'].forEach(function (e) {\r\n item.addEventListener(e, function (evt) {\r\n item.classList.add(\"validated\");\r\n if (fields) {\r\n if (helper.validate(fields, false)) {\r\n btn.classList.remove(\"disabled\");\r\n } else {\r\n btn.classList.add(\"disabled\");\r\n }\r\n }\r\n });\r\n });\r\n });\r\n\r\n helper.event(btn, 'click touchstart', function (e) {\r\n if (!btn.classList.contains(\"disabled\")) {\r\n if (helper.validate(fields, true)) {\r\n e.preventDefault();\r\n form.submit();\r\n } else {\r\n btn.classList.add(\"disabled\");\r\n }\r\n }\r\n });\r\n\r\n }\r\n };\r\n\r\n\r\n init();\r\n\r\n})(\r\n window,\r\n document,\r\n {\r\n helper,\r\n title,\r\n scroll,\r\n lazy,\r\n menu,\r\n countdown\r\n },\r\n undefined\r\n);"]}