mirror of
https://github.com/makeplane/plane
synced 2024-06-14 14:31:34 +00:00
32 lines
743 B
TypeScript
32 lines
743 B
TypeScript
|
import { TableCell } from "@tiptap/extension-table-cell";
|
||
|
|
||
|
export const CustomTableCell = TableCell.extend({
|
||
|
addAttributes() {
|
||
|
return {
|
||
|
...this.parent?.(),
|
||
|
isHeader: {
|
||
|
default: false,
|
||
|
parseHTML: (element) => { isHeader: element.tagName === "TD" },
|
||
|
renderHTML: (attributes) => { tag: attributes.isHeader ? "th" : "td" }
|
||
|
},
|
||
|
};
|
||
|
},
|
||
|
renderHTML({ HTMLAttributes }) {
|
||
|
if (HTMLAttributes.isHeader) {
|
||
|
return [
|
||
|
"th",
|
||
|
{
|
||
|
...HTMLAttributes,
|
||
|
class: `relative ${HTMLAttributes.class}`,
|
||
|
},
|
||
|
[
|
||
|
"span",
|
||
|
{ class: "absolute top-0 right-0" },
|
||
|
],
|
||
|
0,
|
||
|
];
|
||
|
}
|
||
|
return ["td", HTMLAttributes, 0];
|
||
|
},
|
||
|
});
|