{"version":3,"file":"arrayUtils-C7bzVivr.js","sources":["../../../app/javascript/src/utils/arrayUtils.ts"],"sourcesContent":["import { xor, union, difference } from 'lodash';\n\nexport const toggleArray = (array: any[], values: any[], force: boolean | null = null) => {\n  if (force === true) return union(array, values);\n  if (force === false) return difference(array, values);\n  return xor(array, values);\n}\n\nexport const toggleValue = (array: any[], value: any, force: boolean | null = null) => toggleArray(array, [value], force);\n\nexport const sortById = (array: any[], sortOrder: string = 'asc') => {\n  const multiplier = sortOrder === 'desc' ? -1 : 1;\n  return array.slice().sort((a, b) => multiplier * (parseInt(a.id) - parseInt(b.id)));\n}\n\nexport function arrFilterPrefixes(arr: string[], prefixes: string[], removePrefix: boolean = false): string[] {\n  return arr\n    .map(item => {\n      const prefix = prefixes.find(prefix => item.startsWith(prefix));\n      return prefix ? { prefix, item } : null;\n    })\n    .filter(Boolean)\n    .map(({ prefix, item }: any) =>\n      removePrefix ? item.slice(prefix.length).trim() : item\n    );\n}\n\nexport function arrExcludePrefixes(arr: string[], prefixes: string[]): string[] {\n  return arr.filter((item: string) => {\n    return !prefixes.some(prefix => item.startsWith(prefix));\n  });\n}"],"names":["toggleArray","array","values","force","union","difference","xor","toggleValue","value","sortById","sortOrder","multiplier","a","b","arrFilterPrefixes","arr","prefixes","removePrefix","item","prefix","arrExcludePrefixes"],"mappings":"yCAEO,MAAMA,EAAc,CAACC,EAAcC,EAAeC,EAAwB,OAC3EA,IAAU,GAAaC,EAAAA,MAAMH,EAAOC,CAAM,EAC1CC,IAAU,GAAcE,EAAAA,WAAWJ,EAAOC,CAAM,EAC7CI,EAAA,IAAIL,EAAOC,CAAM,EAGbK,EAAc,CAACN,EAAcO,EAAYL,EAAwB,OAASH,EAAYC,EAAO,CAACO,CAAK,EAAGL,CAAK,EAE3GM,EAAW,CAACR,EAAcS,EAAoB,QAAU,CAC7D,MAAAC,EAAaD,IAAc,OAAS,GAAK,EAC/C,OAAOT,EAAM,MAAQ,EAAA,KAAK,CAACW,EAAGC,IAAMF,GAAc,SAASC,EAAE,EAAE,EAAI,SAASC,EAAE,EAAE,EAAE,CACpF,EAEO,SAASC,EAAkBC,EAAeC,EAAoBC,EAAwB,GAAiB,CACrG,OAAAF,EACJ,IAAYG,GAAA,CACL,MAAAC,EAASH,EAAS,KAAKG,GAAUD,EAAK,WAAWC,CAAM,CAAC,EAC9D,OAAOA,EAAS,CAAE,OAAAA,EAAQ,KAAAD,CAAS,EAAA,IAAA,CACpC,EACA,OAAO,OAAO,EACd,IAAI,CAAC,CAAE,OAAAC,EAAQ,KAAAD,CACd,IAAAD,EAAeC,EAAK,MAAMC,EAAO,MAAM,EAAE,OAASD,CACpD,CACJ,CAEgB,SAAAE,EAAmBL,EAAeC,EAA8B,CACvE,OAAAD,EAAI,OAAQG,GACV,CAACF,EAAS,QAAeE,EAAK,WAAWC,CAAM,CAAC,CACxD,CACH"}