UNPKG

@atlaskit/editor-plugin-table

Version:

Table plugin for the @atlaskit/editor

40 lines 2 kB
import { createTable } from '@atlaskit/editor-tables/utils'; import { expValEquals } from '@atlaskit/tmp-editor-statsig/exp-val-equals'; import { TABLE_MAX_WIDTH, TABLE_FULL_WIDTH } from '../table-resizing/utils/consts'; const NESTED_TABLE_DEFAULT_ROWS = 2; const NESTED_TABLE_DEFAULT_COLS = 2; export const createTableWithWidth = ({ isTableScalingEnabled, isTableAlignmentEnabled, isFullWidthModeEnabled, isMaxWidthModeEnabled, isCommentEditor, isChromelessEditor, isTableResizingEnabled, isNestedTable, createTableProps }) => schema => { const attrsOverrides = {}; if (isNestedTable) { attrsOverrides.rowsCount = createTableProps !== null && createTableProps !== void 0 && createTableProps.rowsCount ? createTableProps === null || createTableProps === void 0 ? void 0 : createTableProps.rowsCount : NESTED_TABLE_DEFAULT_ROWS; attrsOverrides.colsCount = createTableProps !== null && createTableProps !== void 0 && createTableProps.colsCount ? createTableProps === null || createTableProps === void 0 ? void 0 : createTableProps.colsCount : NESTED_TABLE_DEFAULT_COLS; } if (isTableScalingEnabled && !isCommentEditor) { if ((expValEquals('editor_tinymce_full_width_mode', 'isEnabled', true) || expValEquals('confluence_max_width_content_appearance', 'isEnabled', true)) && isMaxWidthModeEnabled) { attrsOverrides.tableWidth = TABLE_MAX_WIDTH; } else if (isFullWidthModeEnabled) { attrsOverrides.tableWidth = TABLE_FULL_WIDTH; } } if (isTableAlignmentEnabled && (isFullWidthModeEnabled || (expValEquals('editor_tinymce_full_width_mode', 'isEnabled', true) || expValEquals('confluence_max_width_content_appearance', 'isEnabled', true)) && isMaxWidthModeEnabled || isCommentEditor)) { attrsOverrides.layout = 'align-start'; } if (isCommentEditor && isTableResizingEnabled || isChromelessEditor) { attrsOverrides.tableWidth = 'inherit'; } return createTable({ schema, ...createTableProps, ...attrsOverrides }); };