{"version":3,"file":"VirtualTableColumnDefs.mjs","names":["toTitleCase","defaultGridColumn","headerName","field","minWidth","autoHeight","sortable","fallbackT","key","options","defaultValue","VirtualTableColumnDefs","tableDescription","actionList","columnName","crudTableActionRenderName","panelDirection","t","tr","columnDefs","reduce","defs","element","push","name","filter","pinned","width","maxWidth","cellRenderer","cellRendererParams","valueGetter","params","data","suppressMenu","cellStyle","display","alignItems","defaultColActionsDef","resizable","editable","floatingFilter","enableRowGroup"],"sources":["../../../src/maintenanceEngine/virtualBrowser/VirtualTableColumnDefs.js"],"sourcesContent":["import { toTitleCase } from '../../utilities/input/StringUtilities';\n\nconst defaultGridColumn = {\n  headerName: '',\n  field: '',\n  minWidth: 80,\n  autoHeight: false,\n  sortable: true\n};\n\n// `t` is optional so non-React callers (and existing call sites) keep working:\n// the fallback resolves each key to its English defaultValue.\nconst fallbackT = (key, options) => options?.defaultValue ?? key;\n\nexport const VirtualTableColumnDefs = (\n  tableDescription,\n  actionList,\n  columnName = 'Actions',\n  crudTableActionRenderName = 'actionsRenderer',\n  panelDirection = 'right',\n  t\n) => {\n  // Guard: some callers pass a non-function in this position (historically\n  // ignored), so never invoke it blindly.\n  const tr = typeof t === 'function' ? t : fallbackT;\n  let columnDefs =\n    tableDescription?.reduce((defs, element) => {\n      defs.push({\n        ...defaultGridColumn,\n        headerName: toTitleCase(element?.name || ''),\n        field: element?.name\n      });\n      return defs;\n    }, []) || [];\n\n  columnDefs.push({\n    headerName:\n      crudTableActionRenderName === 'actionsRenderer'\n        ? tr('common.actions', { defaultValue: 'Actions' })\n        : columnName,\n    filter: false,\n    pinned: panelDirection,\n    width: 150,\n    maxWidth: 180,\n    cellRenderer: crudTableActionRenderName,\n    cellRendererParams: {\n      actionList\n    },\n    valueGetter: (params) => params.data,\n    suppressMenu: true,\n    sortable: false,\n    cellStyle: { display: 'flex', alignItems: 'center' }\n  });\n\n  return columnDefs;\n};\n\nexport const defaultColActionsDef = {\n  resizable: true,\n  editable: false,\n  sortable: true,\n  filter: true,\n  floatingFilter: false,\n  enableRowGroup: true\n};\n"],"mappings":";;AAEA,MAAMC,oBAAoB;CACxBC,YAAY;CACZC,OAAO;CACPC,UAAU;CACVC,YAAY;CACZC,UAAU;CACX;AAID,MAAMC,aAAaC,KAAKC,YAAYA,SAASC,gBAAgBF;AAE7D,MAAaG,0BACXC,kBACAC,YACAC,aAAa,WACbC,4BAA4B,mBAC5BC,iBAAiB,SACjBC,MACG;CAGH,MAAMC,KAAK,OAAOD,MAAM,aAAaA,IAAIV;CACzC,IAAIY,aACFP,kBAAkBQ,QAAQC,MAAMC,YAAY;AAC1CD,OAAKE,KAAK;GACR,GAAGtB;GACHC,YAAYF,YAAYsB,SAASE,QAAQ,GAAG;GAC5CrB,OAAOmB,SAASE;GACjB,CAAC;AACF,SAAOH;IACN,EAAE,CAAC,IAAI,EAAE;AAEdF,YAAWI,KAAK;EACdrB,YACEa,8BAA8B,oBAC1BG,GAAG,kBAAkB,EAAER,cAAc,WAAW,CAAC,GACjDI;EACNW,QAAQ;EACRC,QAAQV;EACRW,OAAO;EACPC,UAAU;EACVC,cAAcd;EACde,oBAAoB,EAClBjB,YACD;EACDkB,cAAcC,WAAWA,OAAOC;EAChCC,cAAc;EACd5B,UAAU;EACV6B,WAAW;GAAEC,SAAS;GAAQC,YAAY;GAAS;EACpD,CAAC;AAEF,QAAOlB"}