import{l as g,t as v,i as f,a as p,p as k,b as h,w as b,x,y as m}from"./checkTypingFunction-087f80ba.js";const O=[{text:"Advisering, onderzoek en overige specialistische zakelijke dienstverlening",value:"Advisering, onderzoek en overige specialistische zakelijke dienstverlening"},{text:"Bouwnijverheid",value:"Bouwnijverheid"},{text:"Cultuur, sport en recreatie",value:"Cultuur, sport en recreatie"},{text:"Extraterritoriale organisaties en lichamen",value:"Extraterritoriale organisaties en lichamen"},{text:"Financiële instellingen",value:"Financiële instellingen"},{text:"Gezondheids- en welzijnszorg",value:"Gezondheids- en welzijnszorg"},{text:"Groot- en detailhandel; reparatie van auto's",value:"Groot- en detailhandel; reparatie van auto's"},{text:"Huishoudens als werkgever; niet-gedifferentieerde productie van goederen en diensten door huishoudens voor eigen gebruik",value:"Huishoudens als werkgever; niet-gedifferentieerde productie van goederen en diensten door huishoudens voor eigen gebruik"},{text:"Informatie en communicatie",value:"Informatie en communicatie"},{text:"Industrie",value:"Industrie"},{text:"Landbouw, bosbouw en visserij",value:"Landbouw, bosbouw en visserij"},{text:"Logies-, maaltijd- en drankverstrekking",value:"Logies-, maaltijd- en drankverstrekking"},{text:"Onderwijs",value:"Onderwijs"},{text:"Openbaar bestuur, overheidsdiensten en verplichte sociale verzekeringen",value:"Openbaar bestuur, overheidsdiensten en verplichte sociale verzekeringen"},{text:"Overige dienstverlening",value:"Overige dienstverlening"},{text:"Productie en distributie van en handel in elektriciteit, aardgas, stoom en gekoelde lucht",value:"Productie en distributie van en handel in elektriciteit, aardgas, stoom en gekoelde lucht"},{text:"Vervoer en opslag",value:"Vervoer en opslag"},{text:"Verhuur van en handel in onroerend goed",value:"Verhuur van en handel in onroerend goed"},{text:"Verhuur van roerende goederen en overige zakelijke dienstverlening",value:"Verhuur van roerende goederen en overige zakelijke dienstverlening"},{text:"Winning en distributie van water; afval- en afvalwaterbeheer en sanering",value:"Winning en distributie van water; afval- en afvalwaterbeheer en sanering"},{text:"Winning van delfstoffen",value:"Winning van delfstoffen"}],j=[{text:"Subsidie",value:"Subsidie"},{text:"Beurs",value:"Beurs"},{text:"Lening",value:"Lening"},{text:"Iets anders",value:"Anders"}],z=[{text:"Persoon",value:"Persoon"},{text:"Onderneming",value:"Onderneming"}],y=[{text:"Laag",value:"Laag"},{text:"Middelbaar",value:"Middelbaar"},{text:"Hoog",value:"Hoog"}],w=[{text:"Afstand tot arbeidsmarkt",value:"Afstand tot arbeidsmarkt"},{text:"Ontvangt uitkering",value:"Ontvangt uitkering"},{text:"Student",value:"Student"},{text:"Werknemer",value:"Werknemer"},{text:"Werkzoekend",value:"Werkzoekend"},{text:"Zelfstandige/zzp'er",value:"Zelfstandige/zzp'er"}],i=",",a=["studieduur","elearning","instructietaal","keurmerk","leertraject","niveau","location","studieduur_dagen","soort_diploma","thema","zoekargument","sorteren","page","erkenningen","excludes"],o=["leeftijd","opleidingsniveau","postcode","sector","status_gebruiker","type_aanvrager","type_subsidie","zoekargument","sorteren","page"],S=[...g.flatMap(e=>e.children?[e.value,...e.children.map(n=>n.value)]:[e.value]),...v.map(e=>e.value),...f.map(e=>e.value),...p.flatMap(e=>e.options.map(n=>n.value)),...k.flatMap(e=>e.options.map(n=>n.value)),...h.map(e=>e.value),...y.map(e=>e.value),...O.map(e=>e.value),...w.map(e=>e.value),...z.map(e=>e.value),...j.map(e=>e.value)],_=S.map(e=>({value:e,slug:l(e)}));function l(e){return e.toString().toLowerCase().replace(/[^\w\s\-+]/g,"").trim().replace(/[\s-]+/g,"-")}function J(e,n){const t=Object.keys(e),s=Object.keys(n);if(t.length!==s.length)return!1;for(const u of t)if(e[u]!==n[u])return!1;return!0}function R(e){return!e||Object.keys(e).length===0?!1:Object.keys(e).some(n=>a.includes(n)||o.includes(n))}function B(e){const n={};return Object.keys(e).forEach(t=>{const s=e[t];s==null||!T(t)||!F(t,s)||(n[t]=P(s))}),{query:n}}function P(e){return A(e)||L(e)?JSON.stringify(e):Array.isArray(e)?e.map(l).join(i):d(e)?`${e.search_term}${i}${e.distance}`:Q(e)?`${e.min}${i}${e.max}`:E(e)&&e.veld?`${e.veld}${i}${e.type??"asc"}`:e.toString()}function T(e){return a.includes(e)||o.includes(e)}function F(e,n){return!(!n||e==="excludes"&&Object.keys(n).length===0||Array.isArray(n)&&n.length===0||d(n)&&n.search_term===""||e==="leeftijd"&&n===-1)}function d(e){return!!e&&typeof e!="string"&&typeof e!="number"&&Object.hasOwn(e,"search_term")}function A(e){return e!==null&&typeof e=="object"&&a.includes(Object.keys(e)[0])}function L(e){return Array.isArray(e)&&typeof e[0]=="object"&&Object.hasOwn(e[0],"code")}function Q(e){return e===null||typeof e=="number"||typeof e=="string"?!1:Object.hasOwn(e,"min")&&Object.hasOwn(e,"max")}function E(e){return!!e&&typeof e!="number"&&typeof e!="string"&&Object.hasOwn(e,"veld")}function K(e){return{studieduur_dagen:W(e.studieduur_dagen),elearning:r(e.elearning),instructietaal:r(e.instructietaal),keurmerk:r(e.keurmerk),leertraject:r(e.leertraject),niveau:r(e.niveau),location:V(e.location),erkenningen:M(e.erkenningen),soort_diploma:r(e.soort_diploma),thema:r(e.thema),zoekargument:e.zoekargument??"",sorteren:c(e.sorteren),excludes:$(e.excludes)}}function Z(e){return{leeftijd:e.leeftijd?+e.leeftijd:-1,opleidingsniveau:r(e.opleidingsniveau),postcode:e.postcode??"",sector:r(e.sector),status_gebruiker:r(e.status_gebruiker),type_aanvrager:r(e.type_aanvrager),type_subsidie:r(e.type_subsidie),zoekargument:e.zoekargument??"",sorteren:c(e.sorteren),page:I(e.page,1)}}function r(e){return e?e.split(i).map(n=>_.find(t=>n===t.slug)).filter(G).map(n=>n.value):[]}function I(e,n){return isNaN(parseInt(e,10))?n:parseInt(e,10)}function V(e){if(!e)return{search_term:"",distance:1};const n=e.split(i);return{search_term:n[0].toString(),distance:parseInt(n[1],10)}}function $(e){return e?JSON.parse(e):{}}function M(e){return e?JSON.parse(e):[]}function c(e){if(!e)return null;const[n,t]=e.split(i);return!N(n)||!C(t)?null:{veld:n,type:t}}function W(e){if(!e)return null;const[n,t]=e.split(i);return{min:parseInt(n,10),max:parseInt(t,10)}}function N(e){return b.includes(e)||x.includes(e)}function C(e){return!!e&&m.includes(e)}function G(e){return!!e}export{B as a,Z as b,z as c,w as d,O as e,J as i,K as m,y as o,I as p,R as q,j as s};