{"version":3,"file":"application-Cs-lIIsU.js","sources":["../../../app/javascript/components/profiles/search.vue","../../../app/javascript/entrypoints/application.js"],"sourcesContent":["\n \n \n \n
\n\n\n\n\n","console.info('Vite ⚡️ Rails');\n\nimport './style.css';\nimport '../controllers';\nimport * as Turbo from '@hotwired/turbo';\nTurbo.start();\nTurbo.session.drive = false;\n\nimport { inputValidationListener } from '../components/profiles/input-validation.js';\nimport { createApp } from 'vue';\nimport Search from '../components/profiles/search.vue';\n\nexport function resumeSubmitButton() {\n const form = document.getElementById('resume_form');\n const check = document.getElementById('checkbox');\n\n if (form !== null) {\n if (check == null || check.checked) {\n form.submit();\n } else {\n document.getElementById('error_message').classList.remove('tw-hidden');\n }\n }\n}\n\ndocument.addEventListener('turbo:load', function () {\n globalSearchListener();\n toggleOverflowMenu();\n sortSelect();\n closeFlashMessage();\n closeModal();\n checkCookie();\n emailConfirmation();\n searchAutoComplete();\n});\n\nconst getAttributeById = (id, attribute) => {\n const element = document.getElementById(id);\n return element && element.getAttribute(attribute);\n};\n\ndocument.addEventListener('turbo:load', () => {\n inputValidationListener();\n\n const mounts = [\n { selector: '#search', component: Search },\n { selector: '#search_box_sidebar', component: Search },\n ];\n\n const isEnglishLocale = getAttributeById('search', 'data') === 'en' || getAttributeById('search_box_sidebar', 'data') === 'en';\n\n mounts.forEach(({ selector, component }) => {\n if (component) {\n createApp(Search, {\n search: isEnglishLocale ? 'Search for resources on ApprenticeSearch.com' : 'Rechercher des ressources sur ApprenticeSearch.com',\n }).mount(selector);\n }\n });\n\n const resumeSubmitButtonElement = document.getElementById('resume_submit_button');\n if (resumeSubmitButtonElement) {\n resumeSubmitButtonElement.addEventListener('click', (event) => {\n event.preventDefault();\n resumeSubmitButton();\n });\n }\n});\n\ndocument.addEventListener('DOMContentLoaded', function () {\n if (document.getElementById('profile_resume')) {\n document.getElementById('profile_resume').onchange = function () {\n document.getElementById('resume_form').submit();\n };\n }\n});\n\nexport function checkCookie() {\n let cookieEnabled = navigator.cookieEnabled;\n if (cookieEnabled) {\n return true;\n } else {\n document.cookie = 'testcookie';\n cookieEnabled = document.cookie.indexOf('testcookie') !== -1;\n\n if (!cookieEnabled) {\n return showCookieFail();\n } else {\n document.getElementById('cookieModal').style.display = 'none';\n return true;\n }\n }\n}\n\nfunction showCookieFail() {\n function openModal() {\n document.getElementById('cookieModal').style.display = 'block';\n }\n function closeModal() {\n document.getElementById('cookieModal').style.display = 'none';\n }\n function checkCookie() {\n const cookieEnabled = navigator.cookieEnabled;\n if (!cookieEnabled) {\n openModal();\n }\n }\n window.onload = function () {\n checkCookie();\n document.querySelector('.close-cookie-message').addEventListener('click', closeModal);\n };\n return false;\n}\n\nconst closeFlashMessage = () => {\n const closeLinks = document.querySelectorAll('.flash_message a#close');\n closeLinks.forEach((link) => {\n link.addEventListener('click', () => {\n const flashMessage = link.closest('.flash_message');\n if (flashMessage) {\n flashMessage.style.display = 'none';\n }\n });\n });\n};\n\nexport function closeModal(message) {\n if (document.getElementById('modal-close')) {\n const modals = document.querySelectorAll('.modal');\n const closeButton = document.getElementById('modal-close');\n const background = document.getElementById('modal-background');\n const close = () => {\n if (message && message.classList.contains('unread') && document.querySelector('.modal.is-active')) {\n modals.forEach((modal) => {\n modal.classList.remove('is-active');\n });\n setTimeout(() => {\n location.href = location.href;\n }, 10);\n } else {\n modals.forEach((modal) => {\n modal.classList.remove('is-active');\n });\n }\n };\n closeButton.addEventListener('click', close);\n background.addEventListener('click', close);\n document.onkeydown = function (event) {\n event = event || window.event;\n let isEscape = false;\n if ('key' in event) {\n isEscape = event.key === 'Escape' || event.key === 'Esc';\n } else {\n isEscape = event.keyCode === 27;\n }\n if (isEscape) {\n close();\n }\n };\n }\n}\n\nconst sortSelect = () => {\n if (document.getElementById('sort')) {\n const sort = document.getElementById('sort');\n sort.addEventListener('change', () => {\n document.forms['sort'].dispatchEvent(new Event('submit', { bubbles: true }));\n });\n }\n};\n\nconst toggleOverflowMenu = () => {\n const $ellipsis = Array.prototype.slice.call(document.querySelectorAll('.v-ellipsis'), 0);\n\n if ($ellipsis.length > 0) {\n $ellipsis.forEach((el) => {\n el.addEventListener('click', () => {\n const target = el.dataset.target;\n const $target = document.getElementById(target);\n $target.classList.toggle('is-active');\n el.style.display = 'none';\n });\n });\n }\n};\n\nconst globalSearchListener = () => {\n const icon = document.getElementById('globalSearchIcon');\n const searchBar = document.getElementById('globalSearch');\n if (icon !== null) {\n icon.addEventListener('click', () => {\n searchBar.style.display = 'inline-block';\n });\n }\n};\n\nconst emailConfirmation = () => {\n const myInput = document.getElementById('email_confirmation');\n if (myInput) {\n myInput.onpaste = (e) => e.preventDefault();\n }\n};\n\nconst searchAutoComplete = () => {\n const form = document.getElementById('trade-search-form');\n if (!form) {\n return;\n }\n const words = JSON.parse(document.getElementById('trades-list').dataset.data);\n const autocomplete = document.getElementById('autocomplete');\n const search = document.getElementById('search_');\n let match = '';\n search.addEventListener('keyup', () => {\n if (search.value.length > 0) {\n const input = search.value;\n autocomplete.innerHTML = input;\n\n const regex = new RegExp('^' + input + '.*', 'i');\n\n for (let i = 0; i < words.length; i++) {\n if (words[i].match(regex)) {\n match = words[i];\n autocomplete.innerHTML += words[i].slice(input.length, words[i].length);\n break;\n }\n }\n }\n });\n search.addEventListener('keydown', (e) => {\n if (search.value.length <= 1 && e.key === 'Backspace') {\n autocomplete.innerHTML = '';\n } else if (e.key === 'Tab' && match.length > 0) {\n search.value = match;\n match = '';\n autocomplete.innerHTML = '';\n form.submit();\n }\n });\n};\n"],"names":["_sfc_main","Multiselect","phrase","self","response","data","error","res","jobsData","tradesData","articlesData","element","_hoisted_1","_openBlock","_createElementBlock","_createVNode","_component_multiselect","$data","$props","$options","Turbo.start","Turbo.session","resumeSubmitButton","form","check","globalSearchListener","toggleOverflowMenu","sortSelect","closeFlashMessage","closeModal","checkCookie","emailConfirmation","searchAutoComplete","getAttributeById","id","attribute","inputValidationListener","mounts","Search","isEnglishLocale","selector","component","createApp","resumeSubmitButtonElement","event","cookieEnabled","showCookieFail","openModal","link","flashMessage","message","modals","closeButton","background","close","modal","isEscape","$ellipsis","el","target","icon","searchBar","myInput","e","words","autocomplete","search","match","input","regex","i"],"mappings":"kMA6BA,MAAKA,EAAU,CACb,WAAY,CACV,YAAAC,CACD,EACD,MAAO,CACL,OAAQ,CACN,KAAM,OACN,QAAS,8CACV,CACF,EACD,MAAO,CACL,MAAO,CACL,QAAS,CAAE,EACX,MAAO,CAAE,CACV,CACF,EACD,SAAU,CACR,KAAK,OAAS,SAAS,eAAe,QAAQ,EAAE,aAAa,MAAM,EACnE,KAAK,aAAc,EACnB,KAAK,QAAS,CACf,EACD,QAAS,CACP,aAAaC,EAAQ,CAEnB,GADA,KAAK,MAAQA,EACT,CAACA,EAAQ,CACX,KAAK,QAAU,CAAE,EACjB,MACF,CACA,MAAMC,EAAO,KACb,KAAK,UAAY,GACjB,MAAM,oBAAoB,KAAK,MAAM,MAAMD,CAAM,EAAE,EAChD,KAAME,GAAaA,EAAS,KAAI,CAAE,EAClC,KAAMC,GAASF,EAAK,WAAWE,CAAI,CAAC,EACpC,MAAOC,GAAU,CAChB,QAAQ,MAAMA,CAAK,EACnBH,EAAK,UAAY,GACjBA,EAAK,QAAU,CAAE,CACnB,CAAC,CACJ,EACD,WAAWI,EAAK,CAGd,GAFA,KAAK,UAAY,GACjB,KAAK,QAAU,CAAE,EACb,KAAK,OAAS,MAAQ,KAAK,QAAU,GACvC,OAEF,MAAMC,EAAW,CACf,SAAU,KAAK,SAAW,KAAO,UAAY,OAC7C,KAAMD,EAAI,KAAK,IAChB,EACKE,EAAa,CACjB,SAAU,KAAK,SAAW,KAAO,aAAe,YAChD,KAAMF,EAAI,OAAO,IAClB,EACKG,EAAe,CACnB,SAAU,KAAK,SAAW,KAAO,0BAA4B,gBAC7D,KAAMH,EAAI,SAAS,IACpB,EACGA,EAAI,KAAK,KAAK,OAAS,GACzB,KAAK,QAAQ,KAAKC,CAAQ,EAExBD,EAAI,OAAO,KAAK,OAAS,GAC3B,KAAK,QAAQ,KAAKE,CAAU,EAE1BF,EAAI,SAAS,KAAK,OAAS,GAC7B,KAAK,QAAQ,KAAKG,CAAY,CAEjC,EACD,aAAaH,EAAK,CAChB,OAAO,SAAS,KAAOA,EAAI,GAC5B,EACD,SAAU,CACmB,KAAK,MAAM,UAAU,IACJ,cAAc,uBAAuB,EAChD,iBAAiB,sBAAsB,EAChE,QAASI,GAAY,CACvBA,EAAQ,YAAc,mBACxBA,EAAQ,UAAY,KAAK,SAAW,KAAO,4CAA8C,+BAE7F,CAAC,CACF,CACF,CACH,EA7GOC,EAAA,CAAA,MAAM,eAAe,mDAA1B,OAAAC,EAAA,EAAAC,EAsBM,MAtBNF,EAsBM,CArBJG,EAoBcC,EAAA,CAnBZ,GAAG,eACH,IAAI,YACH,QAASC,EAAO,QAChB,SAAU,GACX,eAAa,OACb,cAAY,WACX,eAAc,GACd,YAAaC,EAAM,OACpB,WAAS,QACT,MAAM,QACN,KAAK,eACJ,kBAAiB,GACjB,kBAAiB,GAClB,eAAa,GACb,MAAM,qBACL,kBAAiB,GACjB,eAAeC,EAAY,aAC3B,SAAQA,EAAY,0ICpB3B,QAAQ,KAAK,eAAe,EAK5BC,EAAa,EACbC,EAAc,MAAQ,GAMf,SAASC,GAAqB,CACnC,MAAMC,EAAO,SAAS,eAAe,aAAa,EAC5CC,EAAQ,SAAS,eAAe,UAAU,EAE5CD,IAAS,OACPC,GAAS,MAAQA,EAAM,QACzBD,EAAK,OAAQ,EAEb,SAAS,eAAe,eAAe,EAAE,UAAU,OAAO,WAAW,EAG3E,CAEA,SAAS,iBAAiB,aAAc,UAAY,CAClDE,EAAsB,EACtBC,EAAoB,EACpBC,EAAY,EACZC,EAAmB,EACnBC,EAAY,EACZC,EAAa,EACbC,EAAmB,EACnBC,EAAoB,CACtB,CAAC,EAED,MAAMC,EAAmB,CAACC,EAAIC,IAAc,CAC1C,MAAMxB,EAAU,SAAS,eAAeuB,CAAE,EAC1C,OAAOvB,GAAWA,EAAQ,aAAawB,CAAS,CAClD,EAEA,SAAS,iBAAiB,aAAc,IAAM,CAC5CC,EAAyB,EAEzB,MAAMC,EAAS,CACb,CAAE,SAAU,UAAW,UAAWC,CAAQ,EAC1C,CAAE,SAAU,sBAAuB,UAAWA,CAAQ,CACvD,EAEKC,EAAkBN,EAAiB,SAAU,MAAM,IAAM,MAAQA,EAAiB,qBAAsB,MAAM,IAAM,KAE1HI,EAAO,QAAQ,CAAC,CAAE,SAAAG,EAAU,UAAAC,CAAS,IAAO,CACtCA,GACFC,EAAUJ,EAAQ,CAChB,OAAQC,EAAkB,+CAAiD,oDACnF,CAAO,EAAE,MAAMC,CAAQ,CAEvB,CAAG,EAED,MAAMG,EAA4B,SAAS,eAAe,sBAAsB,EAC5EA,GACFA,EAA0B,iBAAiB,QAAUC,GAAU,CAC7DA,EAAM,eAAgB,EACtBtB,EAAoB,CAC1B,CAAK,CAEL,CAAC,EAED,SAAS,iBAAiB,mBAAoB,UAAY,CACpD,SAAS,eAAe,gBAAgB,IAC1C,SAAS,eAAe,gBAAgB,EAAE,SAAW,UAAY,CAC/D,SAAS,eAAe,aAAa,EAAE,OAAQ,CAChD,EAEL,CAAC,EAEM,SAASQ,GAAc,CAC5B,IAAIe,EAAgB,UAAU,cAC9B,OAAIA,EACK,IAEP,SAAS,OAAS,aAClBA,EAAgB,SAAS,OAAO,QAAQ,YAAY,IAAM,GAErDA,GAGH,SAAS,eAAe,aAAa,EAAE,MAAM,QAAU,OAChD,IAHAC,EAAgB,EAM7B,CAEA,SAASA,GAAiB,CACxB,SAASC,GAAY,CACnB,SAAS,eAAe,aAAa,EAAE,MAAM,QAAU,OAC3D,CACE,SAASlB,GAAa,CACpB,SAAS,eAAe,aAAa,EAAE,MAAM,QAAU,MAC3D,CACE,SAASC,GAAc,CACC,UAAU,eAE9BiB,EAAW,CAEjB,CACE,cAAO,OAAS,UAAY,CAC1BjB,EAAa,EACb,SAAS,cAAc,uBAAuB,EAAE,iBAAiB,QAASD,CAAU,CACrF,EACM,EACT,CAEA,MAAMD,EAAoB,IAAM,CACX,SAAS,iBAAiB,wBAAwB,EAC1D,QAASoB,GAAS,CAC3BA,EAAK,iBAAiB,QAAS,IAAM,CACnC,MAAMC,EAAeD,EAAK,QAAQ,gBAAgB,EAC9CC,IACFA,EAAa,MAAM,QAAU,OAErC,CAAK,CACL,CAAG,CACH,EAEO,SAASpB,EAAWqB,EAAS,CAClC,GAAI,SAAS,eAAe,aAAa,EAAG,CAC1C,MAAMC,EAAS,SAAS,iBAAiB,QAAQ,EAC3CC,EAAc,SAAS,eAAe,aAAa,EACnDC,EAAa,SAAS,eAAe,kBAAkB,EACvDC,EAAQ,IAAM,CACdJ,GAAWA,EAAQ,UAAU,SAAS,QAAQ,GAAK,SAAS,cAAc,kBAAkB,GAC9FC,EAAO,QAASI,GAAU,CACxBA,EAAM,UAAU,OAAO,WAAW,CAC5C,CAAS,EACD,WAAW,IAAM,CACf,SAAS,KAAO,SAAS,IAC1B,EAAE,EAAE,GAELJ,EAAO,QAASI,GAAU,CACxBA,EAAM,UAAU,OAAO,WAAW,CAC5C,CAAS,CAEJ,EACDH,EAAY,iBAAiB,QAASE,CAAK,EAC3CD,EAAW,iBAAiB,QAASC,CAAK,EAC1C,SAAS,UAAY,SAAUV,EAAO,CACpCA,EAAQA,GAAS,OAAO,MACxB,IAAIY,EAAW,GACX,QAASZ,EACXY,EAAWZ,EAAM,MAAQ,UAAYA,EAAM,MAAQ,MAEnDY,EAAWZ,EAAM,UAAY,GAE3BY,GACFF,EAAO,CAEV,CACL,CACA,CAEA,MAAM3B,EAAa,IAAM,CACnB,SAAS,eAAe,MAAM,GACnB,SAAS,eAAe,MAAM,EACtC,iBAAiB,SAAU,IAAM,CACpC,SAAS,MAAM,KAAQ,cAAc,IAAI,MAAM,SAAU,CAAE,QAAS,EAAI,CAAE,CAAC,CACjF,CAAK,CAEL,EAEMD,EAAqB,IAAM,CAC/B,MAAM+B,EAAY,MAAM,UAAU,MAAM,KAAK,SAAS,iBAAiB,aAAa,EAAG,CAAC,EAEpFA,EAAU,OAAS,GACrBA,EAAU,QAASC,GAAO,CACxBA,EAAG,iBAAiB,QAAS,IAAM,CACjC,MAAMC,EAASD,EAAG,QAAQ,OACV,SAAS,eAAeC,CAAM,EACtC,UAAU,OAAO,WAAW,EACpCD,EAAG,MAAM,QAAU,MAC3B,CAAO,CACP,CAAK,CAEL,EAEMjC,EAAuB,IAAM,CACjC,MAAMmC,EAAO,SAAS,eAAe,kBAAkB,EACjDC,EAAY,SAAS,eAAe,cAAc,EACpDD,IAAS,MACXA,EAAK,iBAAiB,QAAS,IAAM,CACnCC,EAAU,MAAM,QAAU,cAChC,CAAK,CAEL,EAEM9B,EAAoB,IAAM,CAC9B,MAAM+B,EAAU,SAAS,eAAe,oBAAoB,EACxDA,IACFA,EAAQ,QAAWC,GAAMA,EAAE,eAAgB,EAE/C,EAEM/B,EAAqB,IAAM,CAC/B,MAAMT,EAAO,SAAS,eAAe,mBAAmB,EACxD,GAAI,CAACA,EACH,OAEF,MAAMyC,EAAQ,KAAK,MAAM,SAAS,eAAe,aAAa,EAAE,QAAQ,IAAI,EACtEC,EAAe,SAAS,eAAe,cAAc,EACrDC,EAAS,SAAS,eAAe,SAAS,EAChD,IAAIC,EAAQ,GACZD,EAAO,iBAAiB,QAAS,IAAM,CACrC,GAAIA,EAAO,MAAM,OAAS,EAAG,CAC3B,MAAME,EAAQF,EAAO,MACrBD,EAAa,UAAYG,EAEzB,MAAMC,EAAQ,IAAI,OAAO,IAAMD,EAAQ,KAAM,GAAG,EAEhD,QAASE,EAAI,EAAGA,EAAIN,EAAM,OAAQM,IAChC,GAAIN,EAAMM,CAAC,EAAE,MAAMD,CAAK,EAAG,CACzBF,EAAQH,EAAMM,CAAC,EACfL,EAAa,WAAaD,EAAMM,CAAC,EAAE,MAAMF,EAAM,OAAQJ,EAAMM,CAAC,EAAE,MAAM,EACtE,KACV,CAEA,CACA,CAAG,EACDJ,EAAO,iBAAiB,UAAYH,GAAM,CACpCG,EAAO,MAAM,QAAU,GAAKH,EAAE,MAAQ,YACxCE,EAAa,UAAY,GAChBF,EAAE,MAAQ,OAASI,EAAM,OAAS,IAC3CD,EAAO,MAAQC,EACfA,EAAQ,GACRF,EAAa,UAAY,GACzB1C,EAAK,OAAQ,EAEnB,CAAG,CACH"}