@atlaskit/editor-core
Version:
A package contains Atlassian editor core functionality
118 lines (111 loc) • 5.99 kB
JavaScript
import _defineProperty from "@babel/runtime/helpers/defineProperty";
/* eslint-disable @atlaskit/ui-styling-standard/use-compiled */
import { css } from '@emotion/react';
import { scrollbarStyles } from './scrollbarStyles';
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-exported-styles
export var tableLayoutFixes = css({
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors, @atlaskit/ui-styling-standard/no-unsafe-selectors
'.pm-table-header-content-wrap :not(.fabric-editor-alignment), .pm-table-header-content-wrap :not(p, .fabric-editor-block-mark) + div.fabric-editor-block-mark, .pm-table-cell-content-wrap :not(p, .fabric-editor-block-mark) + div.fabric-editor-block-mark': {
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors, @atlaskit/ui-styling-standard/no-unsafe-selectors
'p:first-of-type': {
marginTop: 0
}
},
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
'.pm-table-cell-content-wrap .mediaGroupView-content-wrap': {
clear: 'both'
}
});
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-exported-styles
export var tableLayoutFixesWithFontSize = css({
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors, @atlaskit/ui-styling-standard/no-unsafe-selectors
'.pm-table-header-content-wrap :not(.fabric-editor-alignment, .fabric-editor-font-size), .pm-table-header-content-wrap :not(p, .fabric-editor-block-mark) + div.fabric-editor-block-mark, .pm-table-cell-content-wrap :not(p, .fabric-editor-block-mark) + div.fabric-editor-block-mark': {
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors, @atlaskit/ui-styling-standard/no-unsafe-selectors
'p:first-of-type': {
marginTop: 0
}
},
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
'.pm-table-cell-content-wrap .mediaGroupView-content-wrap': {
clear: 'both'
}
});
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-exported-styles
export var tableCommentEditorMarginOverride = css({
marginLeft: 0,
marginRight: 0
});
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-exported-styles
export var tableCommentEditorStyles = css(_defineProperty({}, ".ProseMirror .pm-table-wrapper > table", [tableCommentEditorMarginOverride, scrollbarStyles]));
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-exported-styles
export var tableContainerStyles = css({
/* Fix for HOT-119925: Ensure table containers have proper width constraints and overflow handling */
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
'.ProseMirror .pm-table-wrapper': {
maxWidth: '100%',
overflowX: 'auto',
// Ensure the wrapper doesn't grow beyond its container
width: '100%',
boxSizing: 'border-box'
},
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
'.ProseMirror .pm-table-wrapper.pm-table-wrapper-no-overflow': {
overflowX: 'visible'
},
/* Fix for HOT-119925: Ensure table elements are responsive and don't overflow */
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
'.ProseMirror .pm-table-wrapper table': {
maxWidth: '100%',
width: '100%',
tableLayout: 'fixed',
// Ensure tables can be scrolled horizontally if needed
minWidth: 'auto'
}
});
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-exported-styles
export var tableEmptyRowStyles = css({
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
'.ProseMirror .pm-table-wrapper': {
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
'.pm-table-cell-content-wrap, .pm-table-header-content-wrap': {
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
'p:empty': {
/* add a minimum height to empty table rows in SSR */
minHeight: '1.714em'
}
}
}
});
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-exported-styles
export var tableContentModeStyles = css({
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors, @atlaskit/ui-styling-standard/no-unsafe-selectors
'.pm-table-resizer-container:has(table[data-initial-width-mode="content"])': {
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-important-styles
width: 'max-content !important',
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-unsafe-values
'--ak-editor-table-width': 'max-content'
},
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors, @atlaskit/ui-styling-standard/no-unsafe-selectors
'.resizer-item:has(table[data-initial-width-mode="content"])': {
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-important-styles
width: 'max-content !important'
},
// Reset the extended hover zone padding for content-mode tables so it doesn't
// inflate the max-content width of parent elements (resizer-container, wrapper).
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors, @atlaskit/ui-styling-standard/no-unsafe-selectors
'.resizer-item:has(table[data-initial-width-mode="content"]) > .resizer-hover-zone.resizer-is-extended': {
padding: 'unset',
left: 'unset'
},
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
'.ProseMirror .pm-table-wrapper table[data-initial-width-mode="content"]': {
tableLayout: 'auto',
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-important-styles
width: 'max-content !important'
},
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-nested-selectors
'.ProseMirror .pm-table-wrapper table[data-initial-width-mode="content"] > colgroup > col': {
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-important-styles
width: 'unset !important'
}
});