{"version":3,"file":"GridFunctions.mjs","names":["GridStateTypeEnums","useGridFormat","gridFormat","gridApi","type","expandAll","collapseAll","sizeColumnsToFit","useGridClear","gridClear","gridColumnApi","setRowGroupColumns","setFilterModel","setQuickFilter","resetColumnState","useQuickFilter","quickFilter","event","target","value","useExport","gridExport","exportDataAsExcel","exportDataAsCsv","saveGridState","gridId","execute","columnState","getColumnState","columnGroupState","getColumnGroupState","sortModel","getSortModel","filterModel","getFilterModel","isPivotMode","gridState","columnGridConfiguration","gridStateTypeId","Column","values","JSON","stringify","columnGroupGridConfiguration","Column_Group","columnSortGridConfiguration","Column_Sort","columnFilterGridConfiguration","Column_Filter","pivotGridConfiguration","Pivot_Mode","push","data","getGridState","deleteGridState","clearGridState","resetColumnGroupState","setSortModel","setPivotMode","onFirstDataRendered","gridStates","length","forEach","state","setColumnState","parse","setColumnGroupState"],"sources":["../../../src/utilities/aggrid/GridFunctions.js"],"sourcesContent":["import { GridStateTypeEnums } from '../../enums/unitySystemEnums.ts';\n\nexport const useGridFormat = () => {\n  const gridFormat = (gridApi, type) => {\n    type === 'expand' && gridApi.expandAll()\n    type === 'collapse' && gridApi.collapseAll()\n    type === 'resize' && gridApi.sizeColumnsToFit()\n  }\n  return [gridFormat]\n}\n\nexport const useGridClear = () => {\n  const gridClear = (gridApi, gridColumnApi) => {\n    gridColumnApi.setRowGroupColumns([])\n    gridApi.setFilterModel(null)\n    gridApi.setQuickFilter('')\n    gridApi.sizeColumnsToFit()\n    gridColumnApi.resetColumnState()\n  }\n  return [gridClear]\n}\n\nexport const useQuickFilter = () => {\n  const quickFilter = (gridApi, event) => {\n    gridApi.setQuickFilter(event?.target.value)\n  }\n  return [quickFilter]\n}\n\nexport const useExport = () => {\n  const gridExport = (gridApi, type) => {\n    type === 'excel' && gridApi.exportDataAsExcel()\n    type === 'csv' && gridApi.exportDataAsCsv()\n  }\n  return [gridExport]\n}\n\nexport const saveGridState = async (\n  gridId,\n  gridApi,\n  gridColumnApi,\n  execute\n) => {\n  const columnState = gridColumnApi?.getColumnState();\n  const columnGroupState = gridColumnApi?.getColumnGroupState();\n  const sortModel = gridApi.getSortModel();\n  const filterModel = gridApi.getFilterModel();\n  const isPivotMode = gridColumnApi.isPivotMode();\n\n  const gridState = [];\n  const columnGridConfiguration = {\n    gridStateTypeId: GridStateTypeEnums.Column,\n    gridId: gridId,\n    values: JSON.stringify(columnState),\n  };\n  const columnGroupGridConfiguration = {\n    gridStateTypeId: GridStateTypeEnums.Column_Group,\n    gridId: gridId,\n    values: JSON.stringify(columnGroupState),\n  };\n  const columnSortGridConfiguration = {\n    gridStateTypeId: GridStateTypeEnums.Column_Sort,\n    gridId: gridId,\n    values: JSON.stringify(sortModel),\n  };\n  const columnFilterGridConfiguration = {\n    gridStateTypeId: GridStateTypeEnums.Column_Filter,\n    gridId: gridId,\n    values: JSON.stringify(filterModel),\n  };\n  const pivotGridConfiguration = {\n    gridStateTypeId: GridStateTypeEnums.Pivot_Mode,\n    gridId: gridId,\n    values: JSON.stringify(isPivotMode),\n  };\n  gridState.push(columnGridConfiguration);\n  gridState.push(columnGroupGridConfiguration);\n  gridState.push(columnSortGridConfiguration);\n  gridState.push(columnFilterGridConfiguration);\n  gridState.push(pivotGridConfiguration);\n\n  return await execute({ data: gridState });\n};\n\n\nexport const getGridState = (gridApi, gridColumnApi, gridId) => {\n  const columnState = gridColumnApi?.getColumnState();\n  const columnGroupState = gridColumnApi?.getColumnGroupState();\n  const sortModel = gridApi.getSortModel();\n  const filterModel = gridApi.getFilterModel();\n  const isPivotMode = gridColumnApi.isPivotMode();\n\n  const gridState = [];\n  const columnGridConfiguration = {\n    gridStateTypeId: GridStateTypeEnums.Column,\n    gridId: gridId,\n    values: JSON.stringify(columnState),\n  };\n  const columnGroupGridConfiguration = {\n    gridStateTypeId: GridStateTypeEnums.Column_Group,\n    gridId: gridId,\n    values: JSON.stringify(columnGroupState),\n  };\n  const columnSortGridConfiguration = {\n    gridStateTypeId: GridStateTypeEnums.Column_Sort,\n    gridId: gridId,\n    values: JSON.stringify(sortModel),\n  };\n  const columnFilterGridConfiguration = {\n    gridStateTypeId: GridStateTypeEnums.Column_Filter,\n    gridId: gridId,\n    values: JSON.stringify(filterModel),\n  };\n  const pivotGridConfiguration = {\n    gridStateTypeId: GridStateTypeEnums.Pivot_Mode,\n    gridId: gridId,\n    values: JSON.stringify(isPivotMode),\n  };\n  gridState.push(columnGridConfiguration);\n  gridState.push(columnGroupGridConfiguration);\n  gridState.push(columnSortGridConfiguration);\n  gridState.push(columnFilterGridConfiguration);\n  gridState.push(pivotGridConfiguration);\n\n  return gridState;\n}\n\nexport const deleteGridState = async (\n  gridApi,\n  gridColumnApi,\n  deleteGridState\n) => {\n  clearGridState(gridApi, gridColumnApi);\n  return await deleteGridState();\n};\n\nexport const clearGridState = (gridApi, gridColumnApi) => {\n  gridColumnApi.resetColumnState();\n  gridColumnApi.resetColumnGroupState();\n  gridApi.setFilterModel({});\n  gridApi.setSortModel([]);\n  gridColumnApi.setPivotMode(false);\n  gridApi.sizeColumnsToFit();\n};\n\nexport const onFirstDataRendered = (gridApi, gridColumnApi, gridStates) => {\n  if (gridStates && gridStates.length) {\n    gridStates.forEach(state => {\n      switch (state.gridStateTypeId) {\n        case GridStateTypeEnums.Column:\n          gridColumnApi.setColumnState(JSON.parse(state.values));\n          break;\n        case GridStateTypeEnums.Column_Group:\n          gridColumnApi.setColumnGroupState(JSON.parse(state.values));\n          break;\n        case GridStateTypeEnums.Pivot_Mode:\n          gridColumnApi.setPivotMode(JSON.parse(state.values));\n          break;\n        case GridStateTypeEnums.Column_Sort:\n          gridApi.setSortModel(JSON.parse(state.values));\n          break;\n        case GridStateTypeEnums.Column_Filter:\n          gridApi.setFilterModel(JSON.parse(state.values));\n          break;\n        default:\n          break;\n      }\n    });\n  }\n};"],"mappings":"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"}