{"version":3,"file":"comparators-37e6f987.js","sources":["../../../app/javascript/composeables/ag_grid/comparators.js"],"sourcesContent":["//to add different comparators for the ag-grid BaseTable component\n\nexport function dateComparator(valueA, valueB, nodeA, nodeB, isDescending) {\n if (valueA === null || valueA === undefined || valueA == '') valueA = '-';\n if (valueB === null || valueB === undefined || valueB == '') valueB = '-';\n if (valueA !== '-' && valueB === '-') {\n return isDescending ? 1 : -1;\n } else if (valueA === '-' && valueB !== '-') {\n return isDescending ? -1 : 1;\n } else if (valueA == valueB) {\n return isDescending ? -1 : 1;\n } else if (new Date(valueA) > new Date(valueB)) {\n return 1;\n } else {\n return new Date(valueA) - new Date(valueB);\n }\n}\n\nexport function numberComparator(valueA, valueB, nodeA, nodeB, isDescending) {\n if ((valueA === null || valueA === undefined || isNaN(valueA)) && isDescending) {\n return -1;\n } else if ((valueA === null || valueA === undefined || isNaN(valueA)) && !isDescending) {\n return 1;\n }\n\n if ((valueB === null || valueB === undefined || isNaN(valueB)) && isDescending) {\n return 1;\n } else if ((valueB === null || valueB === undefined || isNaN(valueB)) && !isDescending) {\n return -1;\n }\n\n return valueA - valueB;\n}\n\nexport function textComparator(valueA, valueB, nodeA, nodeB, isDescending) {\n if (valueA === null || valueA === undefined || valueA == '') valueA = '-';\n if (valueB === null || valueB === undefined || valueB == '') valueB = '-';\n if (valueA !== '-' && valueB === '-') {\n return isDescending ? 1 : -1;\n } else if (valueA === '-' && valueB !== '-') {\n return isDescending ? -1 : 1;\n } else if (valueA == valueB) {\n return isDescending ? -1 : 1;\n } else if (valueA > valueB) {\n return 1;\n } else if (valueA < valueB) {\n return -1;\n }\n}\n\nexport function sectorComparator(valueA, valueB, nodeA, nodeB, isDescending) {\n valueA = valueA?.map(i => i.text).join(', ');\n valueB = valueB?.map(i => i.text).join(', ');\n return textComparator(valueA, valueB, nodeA, nodeB, isDescending);\n}\n"],"names":["dateComparator","valueA","valueB","nodeA","nodeB","isDescending","numberComparator","textComparator","sectorComparator"],"mappings":"AAEO,SAASA,EAAeC,EAAQC,EAAQC,EAAOC,EAAOC,EAAc,CAGzE,OAFIJ,GAAW,MAAgCA,GAAU,MAAIA,EAAS,MAClEC,GAAW,MAAgCA,GAAU,MAAIA,EAAS,KAClED,IAAW,KAAOC,IAAW,IACxBG,EAAe,EAAI,GACjBJ,IAAW,KAAOC,IAAW,KAE7BD,GAAUC,EADZG,EAAe,GAAK,EAGlB,IAAI,KAAKJ,CAAM,EAAI,IAAI,KAAKC,CAAM,EACpC,EAEA,IAAI,KAAKD,CAAM,EAAI,IAAI,KAAKC,CAAM,CAE7C,CAEO,SAASI,EAAiBL,EAAQC,EAAQC,EAAOC,EAAOC,EAAc,CAC3E,OAAKJ,GAAW,MAAgC,MAAMA,CAAM,IAAMI,EACzD,IACGJ,GAAW,MAAgC,MAAMA,CAAM,IAAM,CAACI,IAIrEH,GAAW,MAAgC,MAAMA,CAAM,IAAMG,EACzD,GACGH,GAAW,MAAgC,MAAMA,CAAM,IAAM,CAACG,EACjE,GAGFJ,EAASC,CAClB,CAEO,SAASK,EAAeN,EAAQC,EAAQC,EAAOC,EAAOC,EAAc,CAGzE,IAFIJ,GAAW,MAAgCA,GAAU,MAAIA,EAAS,MAClEC,GAAW,MAAgCA,GAAU,MAAIA,EAAS,KAClED,IAAW,KAAOC,IAAW,IAC/B,OAAOG,EAAe,EAAI,GACrB,GAAIJ,IAAW,KAAOC,IAAW,IACtC,OAAOG,EAAe,GAAK,EACtB,GAAIJ,GAAUC,EACnB,OAAOG,EAAe,GAAK,EACtB,GAAIJ,EAASC,EAClB,MAAO,GACF,GAAID,EAASC,EAClB,MAAO,EAEX,CAEO,SAASM,EAAiBP,EAAQC,EAAQC,EAAOC,EAAOC,EAAc,CAC3E,OAAAJ,EAASA,GAAA,YAAAA,EAAQ,IAAI,GAAK,EAAE,MAAM,KAAK,MACvCC,EAASA,GAAA,YAAAA,EAAQ,IAAI,GAAK,EAAE,MAAM,KAAK,MAChCK,EAAeN,EAAQC,EAAQC,EAAOC,EAAOC,CAAY,CAClE"}