{"version":3,"file":"search-C1CAKx1W.js","sources":["../../../app/frontend/entrypoints/pages/search/search.js"],"sourcesContent":["import loadBefore from \"@/javascript/components/load\"\nimport $ from \"jquery\"\n\nconst selectsIds = {\n jobCategories: 'search_job_category_ids',\n certifications: 'search_certification_ids',\n industries: 'search_industry_ids',\n country: 'search_country_code',\n skills: 'search_skill_ids',\n workedAt: 'search_worked_at_ids'\n}\n\nconst fieldsIds = {\n budget: 'search_budget',\n page: 'search_page',\n radius: 'search_radius',\n location: 'search_location'\n}\n\nconst cvPhrasesId = 'search_cv_query'\nconst excludeNotLookingId = 'search_exclude_not_looking'\nconst activeWithinLastYearId = 'search_active_within_last_year'\nconst includeUnapprovedId = 'search_include_unvetted'\n\nwindow.selects = {}\nwindow.fields = {}\n\nconst performSearch = (options = {}) => {\n // TODO: Should it get the required skill IDs via the SkilLSelect API?\n const required_skill_ids = []\n if(options.requireSkill) {\n required_skill_ids.push(options.requireSkill)\n }\n\n document.querySelectorAll('[name=\"required_skill_ids\"]:checked').forEach((checkbox) => {\n required_skill_ids.push(checkbox.value)\n })\n\n const params = {\n job_category_ids: selects.jobCategories.getValue().join(','),\n skill_ids: selects.skills.getValue().join(','),\n required_skill_ids: required_skill_ids.join(','),\n industry_ids: selects.industries.getValue().join(','),\n certification_ids: selects.certifications.getValue().join(','),\n budget: fields.budget.value,\n country_code: selects.country.getValue(),\n worked_at_ids: selects.workedAt.getValue().join(','),\n page: fields.page.value,\n location: fields.location.value,\n radius: fields.radius.value\n }\n\n if(!document.getElementById(excludeNotLookingId).checked) {\n params.exclude_not_looking = 0\n }\n if(document.getElementById(activeWithinLastYearId)?.checked) {\n params.active_within_last_year = 1\n }\n if(document.getElementById(includeUnapprovedId)?.checked) {\n params.include_unvetted = 1\n }\n\n const cp_phrases_element = document.getElementById(cvPhrasesId)\n if(cp_phrases_element && cp_phrases_element.value) {\n params.cv_query = cp_phrases_element.value\n }\n\n location.href = `/search/results?${$.param(params)}#perform-search`\n}\n\nloadBefore(() => {\n for (const [key, id] of Object.entries(selectsIds)) {\n selects[key] = document.getElementById(id).selectize\n }\n for (const [key, id] of Object.entries(fieldsIds)) {\n fields[key] = document.getElementById(id)\n }\n\n document.getElementById('perform-search').addEventListener('click', (e) => {\n performSearch()\n })\n\n document.addEventListener('click', (e) => {\n if(!e.target.matches('.missing-requirements a[data-skill-id]')) {\n return\n }\n performSearch({requireSkill: e.target.dataset.skillId})\n })\n\n document.addEventListener('locationSelected', (e) => {\n fields.radius.selectize.enable()\n })\n\n document.addEventListener('locationRemoved', (e) => {\n fields.radius.selectize.disable()\n })\n})\n"],"names":["selectsIds","fieldsIds","cvPhrasesId","excludeNotLookingId","activeWithinLastYearId","includeUnapprovedId","performSearch","options","required_skill_ids","checkbox","params","_a","_b","cp_phrases_element","$","loadBefore","key","id"],"mappings":"qMAGA,MAAMA,EAAa,CACjB,cAAe,0BACf,eAAgB,2BAChB,WAAY,sBACZ,QAAS,sBACT,OAAQ,mBACR,SAAU,sBACZ,EAEMC,EAAY,CAChB,OAAQ,gBACR,KAAM,cACN,OAAQ,gBACR,SAAU,iBACZ,EAEMC,EAAc,kBACdC,EAAsB,6BACtBC,EAAyB,iCACzBC,EAAsB,0BAE5B,OAAO,QAAU,CAAA,EACjB,OAAO,OAAS,CAAA,EAEhB,MAAMC,EAAgB,CAACC,EAAU,KAAO,SAEtC,MAAMC,EAAqB,CAAA,EACxBD,EAAQ,cACTC,EAAmB,KAAKD,EAAQ,YAAY,EAG9C,SAAS,iBAAiB,qCAAqC,EAAE,QAASE,GAAa,CACrFD,EAAmB,KAAKC,EAAS,KAAK,CACvC,CAAA,EAED,MAAMC,EAAS,CACb,iBAAkB,QAAQ,cAAc,SAAQ,EAAG,KAAK,GAAG,EAC3D,UAAW,QAAQ,OAAO,SAAQ,EAAG,KAAK,GAAG,EAC7C,mBAAoBF,EAAmB,KAAK,GAAG,EAC/C,aAAc,QAAQ,WAAW,SAAQ,EAAG,KAAK,GAAG,EACpD,kBAAmB,QAAQ,eAAe,SAAQ,EAAG,KAAK,GAAG,EAC7D,OAAQ,OAAO,OAAO,MACtB,aAAc,QAAQ,QAAQ,SAAU,EACxC,cAAe,QAAQ,SAAS,SAAQ,EAAG,KAAK,GAAG,EACnD,KAAM,OAAO,KAAK,MAClB,SAAU,OAAO,SAAS,MAC1B,OAAQ,OAAO,OAAO,KAC1B,EAEM,SAAS,eAAeL,CAAmB,EAAE,UAC/CO,EAAO,oBAAsB,IAE5BC,EAAA,SAAS,eAAeP,CAAsB,IAA9C,MAAAO,EAAiD,UAClDD,EAAO,wBAA0B,IAEhCE,EAAA,SAAS,eAAeP,CAAmB,IAA3C,MAAAO,EAA8C,UAC/CF,EAAO,iBAAmB,GAG5B,MAAMG,EAAqB,SAAS,eAAeX,CAAW,EAC3DW,GAAsBA,EAAmB,QAC1CH,EAAO,SAAWG,EAAmB,OAGvC,SAAS,KAAO,mBAAmBC,EAAE,MAAMJ,CAAM,CAAC,iBACpD,EAEAK,EAAW,IAAM,CACf,SAAW,CAACC,EAAKC,CAAE,IAAK,OAAO,QAAQjB,CAAU,EAC/C,QAAQgB,CAAG,EAAI,SAAS,eAAeC,CAAE,EAAE,UAE7C,SAAW,CAACD,EAAKC,CAAE,IAAK,OAAO,QAAQhB,CAAS,EAC9C,OAAOe,CAAG,EAAI,SAAS,eAAeC,CAAE,EAG1C,SAAS,eAAe,gBAAgB,EAAE,iBAAiB,QAAU,GAAM,CACzEX,EAAa,CACd,CAAA,EAED,SAAS,iBAAiB,QAAU,GAAM,CACpC,EAAE,OAAO,QAAQ,wCAAwC,GAG7DA,EAAc,CAAC,aAAc,EAAE,OAAO,QAAQ,OAAO,CAAC,CACvD,CAAA,EAED,SAAS,iBAAiB,mBAAqB,GAAM,CACnD,OAAO,OAAO,UAAU,OAAM,CAC/B,CAAA,EAED,SAAS,iBAAiB,kBAAoB,GAAM,CAClD,OAAO,OAAO,UAAU,QAAO,CAChC,CAAA,CACH,CAAC"}