@grafana/ui
Version:
Grafana Components Library
1 lines • 1.82 kB
Source Map (JSON)
{"version":3,"file":"table.mjs","sources":["../../../src/utils/table.ts"],"sourcesContent":["import { Row } from 'react-table';\n\nimport { Field, LinkModel } from '@grafana/data';\n\n/**\n * @internal\n */\nexport const getCellLinks = (field: Field, row: Row) => {\n let links: Array<LinkModel<Field>> | undefined;\n if (field.getLinks) {\n links = field.getLinks({\n valueRowIndex: row.index,\n });\n }\n\n if (!links) {\n return;\n }\n\n for (let i = 0; i < links?.length; i++) {\n if (links[i].onClick) {\n const origOnClick = links[i].onClick;\n\n links[i].onClick = (event) => {\n // Allow opening in new tab\n if (!(event.ctrlKey || event.metaKey || event.shiftKey)) {\n event.preventDefault();\n origOnClick!(event, {\n field,\n rowIndex: row.index,\n });\n }\n };\n }\n }\n\n return links.filter((link) => link.href || link.onClick != null);\n};\n"],"names":[],"mappings":"AAOa,MAAA,YAAA,GAAe,CAAC,KAAA,EAAc,GAAa,KAAA;AACtD,EAAI,IAAA,KAAA;AACJ,EAAA,IAAI,MAAM,QAAU,EAAA;AAClB,IAAA,KAAA,GAAQ,MAAM,QAAS,CAAA;AAAA,MACrB,eAAe,GAAI,CAAA;AAAA,KACpB,CAAA;AAAA;AAGH,EAAA,IAAI,CAAC,KAAO,EAAA;AACV,IAAA;AAAA;AAGF,EAAA,KAAA,IAAS,CAAI,GAAA,CAAA,EAAG,CAAI,IAAA,KAAA,IAAA,IAAA,GAAA,KAAA,CAAA,GAAA,KAAA,CAAO,SAAQ,CAAK,EAAA,EAAA;AACtC,IAAI,IAAA,KAAA,CAAM,CAAC,CAAA,CAAE,OAAS,EAAA;AACpB,MAAM,MAAA,WAAA,GAAc,KAAM,CAAA,CAAC,CAAE,CAAA,OAAA;AAE7B,MAAA,KAAA,CAAM,CAAC,CAAA,CAAE,OAAU,GAAA,CAAC,KAAU,KAAA;AAE5B,QAAA,IAAI,EAAE,KAAM,CAAA,OAAA,IAAW,KAAM,CAAA,OAAA,IAAW,MAAM,QAAW,CAAA,EAAA;AACvD,UAAA,KAAA,CAAM,cAAe,EAAA;AACrB,UAAA,WAAA,CAAa,KAAO,EAAA;AAAA,YAClB,KAAA;AAAA,YACA,UAAU,GAAI,CAAA;AAAA,WACf,CAAA;AAAA;AACH,OACF;AAAA;AACF;AAGF,EAAO,OAAA,KAAA,CAAM,OAAO,CAAC,IAAA,KAAS,KAAK,IAAQ,IAAA,IAAA,CAAK,WAAW,IAAI,CAAA;AACjE;;;;"}