1"use strict";(self.webpackChunknfj=self.webpackChunknfj||[]).push([[3504],{81520(P,y,n){n.d(y,{E:()=>c});var _=n(49769),e=n(35547),u=n(68018),E=n(89448),p=n(47266);const o=["*"],h=t=>({$implicit:t});function v(t,s){if(1&t&&e.eu8(0,2),2&t){const i=s.$implicit,r=e.XpG();e.Y8G("ngTemplateOutlet",r.templateRef)("ngTemplateOutletContext",e.eq3(2,h,i))}}function M(t,s){if(1&t){const i=e.RV6();e.j41(0,"span",6),e.bIt("click",function(){p.eBV(i);const m=e.XpG(2);return p.Njj(m.isLimitEnabled=!1)}),e.EFF(1),e.nI1(2,"translate"),e.k0s()}2&t&&(e.R7$(),e.SpI("+ ",e.bMT(2,1,"GLOBAL.MORE")))}function d(t,s){if(1&t){const i=e.RV6();e.j41(0,"span",7),e.bIt("click",function(){p.eBV(i);const m=e.XpG(2);return p.Njj(m.isLimitEnabled=!0)}),e.EFF(1),e.nI1(2,"translate"),e.k0s()}2&t&&(e.R7$(),e.SpI("- ",e.bMT(2,1,"GLOBAL.LESS")))}function l(t,s){if(1&t&&(e.j41(0,"div",3),e.DNE(1,M,3,3,"span",4)(2,d,3,3,"span",5),e.k0s()),2&t){const i=e.XpG();e.Y8G("ngClass",i.controlContainerClassName),e.R7$(),e.Y8G("ngIf",i.isLimitEnabled),e.R7$(),e.Y8G("ngIf",!i.isLimitEnabled)}}let c=(()=>{var t;class s{constructor(){this.controlContainerClassName="col",this.isLimitEnabled=!0}static#t=t=()=>(this.\u0275fac=function(m){return new(m||s)},this.\u0275cmp=e.VBU({type:s,selectors:[["","common-limited-list",""]],contentQueries:function(m,O,I){if(1&m&&e.wni(I,e.C4Q,5),2&m){let L;e.mGM(L=e.lsd())&&(O.templateRef=L.first)}},inputs:{list:"list",limit:"limit",controlContainerClassName:"controlContainerClassName"},ngContentSelectors:o,decls:4,vars:6,consts:[[3,"ngTemplateOutlet","ngTemplateOutletContext",4,"ngFor","ngForOf"],["class","limited-list-controls !tw-p-0",3,"ngClass",4,"ngIf"],[3,"ngTemplateOutlet","ngTemplateOutletContext"],[1,"limited-list-controls","!tw-p-0",3,"ngClass"],["class","limited-list-control-more tw-cursor-pointer tw-text-nowrap",3,"click",4,"ngIf"],["class","limited-list-control-less tw-cursor-pointer",3,"click",4,"ngIf"],[1,"limited-list-control-more","tw-cursor-pointer","tw-text-nowrap",3,"click"],[1,"limited-list-control-less","tw-cursor-pointer",3,"click"]],template:function(m,O){1&m&&(e.NAR(),e.DNE(0,v,1,4,"ng-container",0),e.nI1(1,"limitTo"),e.DNE(2,l,3,3,"div",1),e.SdG(3)),2&m&&(e.Y8G("ngForOf",e.brH(1,2,O.list,O.limit,O.isLimitEnabled)),e.R7$(2),e.Y8G("ngIf",O.limit&&O.list.length>O.limit))},dependencies:[_.MD,_.YU,_.Sq,_.bT,_.T3,u.h,u.D9,E.z],encapsulation:2}))}return t(),s})()},20802(P,y,n){n.d(y,{t:()=>d});var _=n(49769),e=n(20149),u=n(88652),E=n(65157),p=n(47266),o=n(35547);const h=(l,c)=>({active:l,"focus:tw-outline-none":c});function v(l,c){if(1&l){const t=o.RV6();o.j41(0,"button",2),o.bIt("click",function(){p.eBV(t);const i=o.XpG();return p.Njj(i.onClick())}),o.EFF(1),o.k0s()}if(2&l){const t=o.XpG();o.Y8G("ngClass",o.l_i(2,h,t.checked,!t.checked)),o.R7$(),o.SpI(" ",t.name,"\n")}}function M(l,c){if(1&l){const t=o.RV6();o.j41(0,"nfj-checkbox",3),o.bIt("checkedChange",function(){p.eBV(t);const i=o.XpG();return p.Njj(i.onClick())}),o.EFF(1),o.k0s()}if(2&l){const t=o.XpG();o.Y8G("checked",t.checked),o.R7$(),o.SpI(" ",t.name,"\n")}}let d=(()=>{var l;class c{get class(){return`filter-control filter-control--${this.type}`}get dataCyAttr(){return this.dataCy||null}get clickMeasureOptOut(){return this.dataCy?"":null}constructor(s){this.cdr=s,this.type="button"}onClick(){void 0!==this.value?(this.checked=!this.checked,this.fn(this.checked?this.value:null)):(this.checked=!this.checked,this.fn(this.checked))}registerOnChange(s){this.fn=s}registerOnTouched(){}setDisabledState(){}writeValue(s){void 0!==this.value?this.checked=s===this.value:!!s!==this.checked&&(this.checked=!!s),this.cdr.detectChanges()}static#t=l=()=>(this.\u0275fac=function(i){return new(i||c)(o.rXU(E.gRc))},this.\u0275cmp=o.VBU({type:c,selectors:[["nfj-filter-control"]],hostVars:4,hostBindings:function(i,r){2&i&&(o.BMQ("data-cy",r.dataCyAttr)("data-custom-click-measure",r.clickMeasureOptOut),o.HbH(r.class))},inputs:{type:"type",name:"name",value:"value",checked:"checked",dataCy:"dataCy"},features:[o.Jv_([(0,u.Ml)(c)])],decls:2,vars:2,consts:[["class","filters-btn tw-btn tw-btn-sm tw-btn-secondary-outline",3,"ngClass","click",4,"ngIf"],[3,"checked","checkedChange",4,"ngIf"],[1,"filters-btn","tw-btn","tw-btn-sm","tw-btn-secondary-outline",3,"click","ngClass"],[3,"checkedChange","checked"]],template:function(i,r){1&i&&o.DNE(0,v,2,5,"button",0)(1,M,2,2,"nfj-checkbox",1),2&i&&(o.Y8G("ngIf","button"===r.type),o.R7$(),o.Y8G("ngIf","checkbox"===r.type))},dependencies:[_.bT,_.YU,e.P],styles:[".tw-btn[_ngcontent-%COMP%]:not(.active):hover{--%NS%tw-border-opacity: 1;border-color:rgb(221 221 221 / var(--%NS%tw-border-opacity, 1));--%NS%tw-text-opacity: 1;color:rgb(117 117 117 / var(--%NS%tw-text-opacity, 1))}.tw-btn.active[_ngcontent-%COMP%]{--%NS%tw-border-opacity: 1;border-color:rgb(18 113 237 / var(--%NS%tw-border-opacity, 1));--%NS%tw-text-opacity: 1;color:rgb(18 113 237 / var(--%NS%tw-text-opacity, 1))}.tw-btn[_ngcontent-%COMP%]{transition-property:none}nfj-checkbox[_ngcontent-%COMP%] input+span{color:#757575}"]}))}return l(),c})()},59278(P,y,n){n.d(y,{h:()=>M,o:()=>v});var _=n(65157),e=n(47266),u=n(7673),E=n(96354),p=n(99172),o=n(88141),h=n(35547);let v=(()=>{var d;class l{constructor(){this.filtersValueChanged=new e.bkB,this.filtersApplied=new e.bkB,this.selectedFilters$=(0,u.of)([]),this.cdr=(0,e.WQX)(_.gRc)}apply(){const t=this.getNewState();this.filtersApplied.emit({action:"apply",state:t})}reset(){this.form.reset(null,{emitEvent:!1});const t=this.getNewState();this.filtersApplied.emit({action:"reset",state:t}),this.cdr&&this.cdr.markForCheck()}getSelectedFilters$(){return this.form.valueChanges.pipe((0,p.Z)(this.form.value),(0,o.M)(()=>this.filtersValueChanged.emit()),(0,E.T)(()=>this.getSelectedFilters()))}getSelectedFilters(){if(!this.sectionKey)return[];const t=this.getNewState()[this.sectionKey];return Array.isArray(t)?t:t?.picked&&t?.custom?[...t.picked,...t.custom].sort():[]}static#t=d=()=>(this.\u0275fac=function(s){return new(s||l)},this.\u0275dir=h.FsC({type:l,outputs:{filtersValueChanged:"filtersValueChanged",filtersApplied:"filtersApplied"}}))}return d(),l})();function M(d){return{provide:v,useExisting:d}}},46004(P,y,n){n.d(y,{d:()=>d});var _=n(21413),e=n(84412),u=n(23294),E=n(96354),p=n(89085),o=n(44668),h=n(47266),v=n(89417),M=n(64523);let d=(()=>{var l;class c{get filters(){return this.filtersSubject.getValue()}constructor(s,i){this.fb=s,this.region=i,this.initialState=this.getInitialState(),this.filtersSubject=ne
1w e.t(this.initialState),this.filters$=this.filtersSubject.asObservable().pipe((0,u.F)((r,m)=>r===m||JSON.stringify(r)===JSON.stringify(m)),(0,o.t)({refCount:!0,bufferSize:1})),this.filtersApplied$=this.filters$.pipe((0,E.T)(r=>JSON.stringify(r)!==this.initialStateStamp),(0,u.F)(),(0,o.t)({bufferSize:1,refCount:!0})),this.initialStateStamp=JSON.stringify(this.initialState),this.filtersChangeSubject$=new _.B,this.filtersChange$=this.filtersChangeSubject$.asObservable()}select(s){return this.filters$.pipe((0,p.E)(s),(0,u.F)(),(0,o.t)({bufferSize:1,refCount:!0}))}setFiltersState(s){s?this.filtersSubject.next({...s}):this.resetAll()}updateFiltersState(s){const i=this.filtersSubject.getValue(),r={...i,...s};JSON.stringify(r)!==JSON.stringify(i)&&(this.filtersSubject.next(r),this.filtersChangeSubject$.next(r))}resetAll(){this.setFiltersState(this.initialState)}createFormGroup(s=[]){const i=s.reduce((r,m)=>(r[m.key]=this.fb.control(!1),r),{});return this.fb.group(i)}convertArrayToSelectedControls(s){return s.reduce((i,r)=>(i[r]=!0,i),{})}convertSelectedControlsKeysToArray(s){return Object.entries(s).filter(([i,r])=>!!r).map(([i])=>i)}static#t=l=()=>(this.\u0275fac=function(i){return new(i||c)(h.KVO(v.ze),h.KVO(M.xP))},this.\u0275prov=h.jDH({token:c,factory:c.\u0275fac,providedIn:"root"}))}return l(),c})()},53198(P,y,n){const _=i=>i.reduce((r,m)=>(r[m]=!0,r),{}),u=["electronics","automation","telecommunication","electrical-eng","mechanics"],E=["Java","React","Python","React native",".NET","Angular","C#","Vue.js","SQL","JavaScript","Golang","TypeScript","Scala","HTML","Kotlin","PHP","C","Ruby","C++","Ruby on Rails","Azure","Android","AWS","iOS","Elixir","Flutter"],p=["hr","finance","office-administration","marketing","customer-service","law","logistics","consulting","sales"],o=["backend","artificial-intelligence","frontend","data","fullstack","business-intelligence","mobile","business-analyst","embedded","product-management","testing","project-manager","devops","agile","sys-administrator","ux","security","support","architecture","erp","game-dev","other"],h=["Laravel"],M=_(u),d=_(o),l=_(E),c=_(["hr","marketing","sales","finance"]),t=_(p),s=_(h);n.d(y,["CZ",0,E,"Cv",0,d,"DW",0,c,"Dd",0,t,"Ie",0,M,"Ix",0,l,"LZ",0,[["backend","frontend","fullstack","mobile","embedded","testing","devops","sys-administrator","security","architecture","game-dev"],["artificial-intelligence","data","business-intelligence","business-analyst","product-management","project-manager","agile","ux","support","erp","other"],["electronics","telecommunication","electrical-eng","automation","mechanics"],["hr","marketing","sales","finance","customer-service","office-administration","consulting"]],"Xx",0,p,"YX",0,o,"fN",0,s,"g7",0,u,"r3",0,h])},35756(P,y,n){n.d(y,{d:()=>l});var _=n(44668),e=n(96354),u=n(46004),E=n(53198);const p=c=>{const t={remote:!0,hybrid:!0,fieldwork:!0};return[{controls:Object.keys(t).map(s=>({name:s,key:s})),i18n:"workMode"},{controls:c.filter(s=>s.trending&&!t[s.key]).concat(c.filter(s=>s.trendingOther)).sort((s,i)=>s.key<i.key?-1:s.key>i.key?1:0),i18n:"Location"}]};var h=n(47266),v=n(31839),M=n(89417),d=n(64523);let l=(()=>{var c;class t extends u.d{constructor(i,r,m){super(r,m),this.postings=i,this.formBuilder=r,this.region=m,this.universalSections$=this.getUniversalSections$().pipe((0,_.t)({bufferSize:1,refCount:!0})),this.technologySuggestions$=this.postings.getJobOffersAutocompleteConfig().pipe((0,e.T)(O=>O.requirements.map(I=>I.name)),(0,_.t)({bufferSize:1,refCount:!0})),this.locationSuggestions$=this.postings.getJobOffersAutocompleteConfig().pipe((0,e.T)(O=>O.cities),(0,_.t)({bufferSize:1,refCount:!0}))}getSalaryLimits$(){return this.postings.getJobOffersAutocompleteConfig().pipe((0,e.T)(i=>i.salaries.limits))}getUniversalSections$(){return this.postings.getJobOffersAutocompleteConfig().pipe((0,e.T)(i=>(c=>({category:{sections:Object.values(c.categories.reduce((t,s)=>(s.group&&(t[s.group]=t[s.group]||{controls:[]},t[s.group].controls.push(s)),t),{}))},city:{sections:p(c.cities)},requirement:{sections:[{controls:c.requirements.filter(t=>t.trending||t.trendingOther||E.r3.includes(t.name)).map(t=>({...t,key:t.name}))}]},more:{more:{i18n:"Benefits",controls:c.more.general.map(t=>({key:t}))},benefits:{i18n:"More",controls:c.more.benefits.map(t=>({key:t}))}},applicationStatus:{sections:[{i18n:"applicationStatus",controls:[{key:"exclude-applied"}]}]},seniority:{sections:[{i18n:"Seniority",controls:c.seniorities.map(t=>({key:t}))}]},employment:{sections:[{controls:c.salaries.contractTypes.map(t=>({key:t}))}]},jobLanguage:{sections:[{controls:c.jobLanguage.filter(t=>"be"!==t).map(t=>({key:t}))}]}}))(i)))}getInitialState(){return{city:[],company:[],category:[],country:[],employment:[],seniority:[],requirement:[],salary:[],more:[],applicationStatus:[],keyword:[],jobLanguage:[],jobPosition:[],province:[],id:[],withSalaryMatch:[]}}static#t=c=()=>(this.\u0275fac=function(r){return new(r||t)(h.KVO(v.z),h.KVO(M.ze),h.KVO(d.xP))},this.\u0275prov=h.jDH({token:t,factory:t.\u0275fac}))}return c(),t})()},83504(P,y,n){n.d(y,{Q:()=>R});var _=n(15215),e=n(49769),u=n(89417),E=n(49894),p=n(68018),o=n(10977),h=n(11765),v=n(88141),M=n(81520),d=n(20802),l=n(59278),c=n(47266),t=n(35547),s=n(35756),i=n(97163);const r=g=>
1({"tw-grid tw-grid-cols-12 tw-gap-x-8":g});function m(g,S){if(1&g&&(t.j41(0,"h5"),t.EFF(1),t.nI1(2,"translate"),t.k0s()),2&g){const C=t.XpG(2).$implicit;t.R7$(),t.SpI(" ",t.bMT(2,1,"search-filters."+C.i18n)," ")}}function O(g,S){if(1&g){const C=t.RV6();t.j41(0,"nfj-filter-control",6),t.nI1(1,"translate"),t.bIt("click",function(){const f=c.eBV(C).$implicit,T=t.XpG(4);return c.Njj(T.handleFilterClick(f.key,T.sectionKey))}),t.k0s(),t.qAN()}if(2&g){const C=S.$implicit,a=t.XpG(4);t.Y8G("ngClass","checkbox"===a.controlsType?a.columnCssClass:"")("type",a.controlsType)("dataCy","filterControl-"+a.sectionKey+"-"+C.key)("formControlName",C.key)("name",a.useJsonTranslations?t.bMT(1,5,a.i18nNamespace+"."+C.key):C.key),t.QXe()}}function I(g,S){if(1&g&&(t.qex(0),t.DNE(1,m,3,3,"h5",4),t.j41(2,"div",5),t.DNE(3,O,2,7,"ng-template"),t.k0s(),t.bVm()),2&g){const C=t.XpG().$implicit,a=t.XpG(2);t.R7$(),t.Y8G("ngIf",!a.hideHeader&&C.i18n),t.R7$(),t.Y8G("ngClass",t.eq3(4,r,"checkbox"===a.controlsType))("list",C.controls)("limit",a.limit)}}function L(g,S){if(1&g&&(t.j41(0,"section",3),t.DNE(1,I,4,6,"ng-container",4),t.k0s()),2&g){const C=S.$implicit,a=t.XpG(2);t.Y8G("ngClass",a.sectionCssClass),t.R7$(),t.Y8G("ngIf",C.controls?.length)}}function j(g,S){if(1&g&&(t.qex(0,1),t.j41(1,"div"),t.DNE(2,L,2,2,"section",2),t.k0s(),t.bVm()),2&g){const C=t.XpG();t.Y8G("formGroup",C.form),t.R7$(2),t.Y8G("ngForOf",C.sections)}}let R=(()=>{var g;let S=(class b extends l.o{constructor(a,f,T){super(),this.fb=a,this.filtersSv=f,this.measurementSv=T,this.i18nNamespace="search-filters",this.controlsType="button",this.columnCssClass="tw-col-span-12 desktop:tw-col-span-6",this.sectionCssClass="tw-col-span-12",this.sections=[]}ngOnInit(){if(this.isLimitEnabled=!!this.limit,!this.sectionKey)throw Error("FilterUniversalContainerComponent: Missing sectionKey!");this.sections=(this.config?.sections??[]).map(a=>({...a,controls:[...a.controls??[]]})),this.form=this.filtersSv.createFormGroup(this.allControls()),this.filtersSv.filters$.pipe((0,h.w)(this.sectionKey,(a,f)=>(0,o.A)(a,f)),(0,v.M)(a=>{this.patchState(a),this.selectedFilters$=this.getSelectedFilters$()}),(0,E.s)(this)).subscribe()}patchState(a){const f=a[this.sectionKey]??[];this.addMissingControls(f),this.form.reset(null,{emitEvent:!1}),this.form.patchValue(this.filtersSv.convertArrayToSelectedControls(f),{emitEvent:!1})}addMissingControls(a){const f=a.filter(D=>!this.form.get(D));if(!f.length)return;f.forEach(D=>this.form.addControl(D,this.fb.control(!1),{emitEvent:!1}));const T=this.sections.length-1;this.sections=this.sections.map((D,A)=>A===T?{...D,controls:[...D.controls,...f.map(k=>({key:k}))]}:D),this.cdr?.markForCheck()}allControls(){return this.sections.reduce((a,f)=>a.concat(f.controls??[]),[])}getNewState(){return{[this.sectionKey]:this.filtersSv.convertSelectedControlsKeysToArray(this.form.value)}}handleFilterClick(a,f){this.measurementSv.misc.dataCyElementClicked({dataCySection:`btnFilters-${f}`,dataCy:`btnFilters-${f}-${a}`})}static#t=g=()=>(this.\u0275fac=function(f){return new(f||b)(t.rXU(u.ze),t.rXU(s.d),t.rXU(i.G))},this.\u0275cmp=t.VBU({type:b,selectors:[["nfj-filter-universal-section"]],inputs:{config:"config",sectionKey:"sectionKey",useJsonTranslations:"useJsonTranslations",i18nNamespace:"i18nNamespace",hideHeader:"hideHeader",controlsType:"controlsType",columnCssClass:"columnCssClass",sectionCssClass:"sectionCssClass",limit:"limit"},features:[t.Jv_([(0,l.h)(b)]),t.Vt3],decls:1,vars:1,consts:[[3,"formGroup",4,"ngIf"],[3,"formGroup"],[3,"ngClass",4,"ngFor","ngForOf"],[3,"ngClass"],[4,"ngIf"],["common-limited-list","",3,"ngClass","list","limit"],[3,"click","ngClass","type","dataCy","formControlName","name"]],template:function(f,T){1&f&&t.DNE(0,j,3,2,"ng-container",0),2&f&&t.Y8G("ngIf",T.form)},dependencies:[e.bT,u.X1,u.BC,u.cb,u.j4,u.JD,e.Sq,e.YU,M.E,d.t,p.h,p.D9],styles:["[_nghost-%COMP%] h5[_ngcontent-%COMP%]{font-weight:500}"]}),this)},g());return S=(0,_.Cg)([(0,E.d)()],S),S})()}}]);
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.