@atlaskit/editor-plugin-table 10.10.6 → 10.11.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +21 -0
- package/dist/cjs/nodeviews/TableComponent.js +49 -25
- package/dist/cjs/nodeviews/TableRow.js +29 -20
- package/dist/cjs/ui/common-styles.js +1 -1
- package/dist/es2019/nodeviews/TableComponent.js +23 -1
- package/dist/es2019/nodeviews/TableRow.js +24 -16
- package/dist/es2019/ui/common-styles.js +8 -8
- package/dist/esm/nodeviews/TableComponent.js +49 -25
- package/dist/esm/nodeviews/TableRow.js +29 -20
- package/dist/esm/ui/common-styles.js +1 -1
- package/dist/types/nodeviews/TableRow.d.ts +2 -0
- package/dist/types-ts4.5/nodeviews/TableRow.d.ts +2 -0
- package/package.json +6 -6
- package/src/nodeviews/TableComponent.tsx +29 -6
- package/src/nodeviews/TableRow.ts +27 -25
- package/src/ui/common-styles.ts +8 -10
|
@@ -2,9 +2,11 @@ import _defineProperty from "@babel/runtime/helpers/defineProperty";
|
|
|
2
2
|
import debounce from 'lodash/debounce';
|
|
3
3
|
import throttle from 'lodash/throttle';
|
|
4
4
|
import { getParentOfTypeCount } from '@atlaskit/editor-common/nesting';
|
|
5
|
+
import { nodeVisibilityManager } from '@atlaskit/editor-common/node-visibility';
|
|
5
6
|
import { findOverflowScrollParent } from '@atlaskit/editor-common/ui';
|
|
6
7
|
import { findParentNodeClosestToPos } from '@atlaskit/editor-prosemirror/utils';
|
|
7
8
|
import { fg } from '@atlaskit/platform-feature-flags';
|
|
9
|
+
import { editorExperiment } from '@atlaskit/tmp-editor-statsig/experiments';
|
|
8
10
|
import { getPluginState } from '../pm-plugins/plugin-factory';
|
|
9
11
|
import { pluginKey as tablePluginKey } from '../pm-plugins/plugin-key';
|
|
10
12
|
import { updateStickyState } from '../pm-plugins/sticky-headers/commands';
|
|
@@ -69,12 +71,30 @@ export default class TableRow extends TableNodeView {
|
|
|
69
71
|
this.isInNestedTable = getParentOfTypeCount(view.state.schema.nodes.table)(view.state.doc.resolve(pos)) > 1;
|
|
70
72
|
}
|
|
71
73
|
if (this.isHeaderRow) {
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
74
|
+
if (editorExperiment('platform_editor_nodevisibility', false)) {
|
|
75
|
+
this.subscribeWhenRowVisible();
|
|
76
|
+
} else {
|
|
77
|
+
const {
|
|
78
|
+
observe
|
|
79
|
+
} = nodeVisibilityManager(view.dom);
|
|
80
|
+
this.nodeVisibilityObserverCleanupFn = observe({
|
|
81
|
+
element: this.contentDOM,
|
|
82
|
+
onFirstVisible: () => {
|
|
83
|
+
this.subscribeWhenRowVisible();
|
|
84
|
+
}
|
|
85
|
+
});
|
|
75
86
|
}
|
|
76
87
|
}
|
|
77
88
|
}
|
|
89
|
+
subscribeWhenRowVisible() {
|
|
90
|
+
if (this.listening) {
|
|
91
|
+
return;
|
|
92
|
+
}
|
|
93
|
+
this.dom.setAttribute('data-header-row', 'true');
|
|
94
|
+
if (this.isStickyHeaderEnabled) {
|
|
95
|
+
this.subscribe();
|
|
96
|
+
}
|
|
97
|
+
}
|
|
78
98
|
|
|
79
99
|
/**
|
|
80
100
|
* Variables
|
|
@@ -117,6 +137,7 @@ export default class TableRow extends TableNodeView {
|
|
|
117
137
|
destroy() {
|
|
118
138
|
if (this.isStickyHeaderEnabled) {
|
|
119
139
|
this.unsubscribe();
|
|
140
|
+
this.nodeVisibilityObserverCleanupFn && this.nodeVisibilityObserverCleanupFn();
|
|
120
141
|
const tree = getTree(this.dom);
|
|
121
142
|
if (tree) {
|
|
122
143
|
this.makeRowHeaderNotSticky(tree.table, true);
|
|
@@ -481,7 +502,6 @@ export default class TableRow extends TableNodeView {
|
|
|
481
502
|
/* receive external events */
|
|
482
503
|
|
|
483
504
|
onTablePluginState(state) {
|
|
484
|
-
var _parentContainer$pare, _parentContainer$pare2;
|
|
485
505
|
const tableRef = state.tableRef;
|
|
486
506
|
const tree = getTree(this.dom);
|
|
487
507
|
if (!tree) {
|
|
@@ -510,9 +530,6 @@ export default class TableRow extends TableNodeView {
|
|
|
510
530
|
const tableContentWrapper = tableContainer === null || tableContainer === void 0 ? void 0 : tableContainer.parentElement;
|
|
511
531
|
const parentContainer = tableContentWrapper && tableContentWrapper.parentElement;
|
|
512
532
|
const isTableInsideLayout = parentContainer && parentContainer.getAttribute('data-layout-content');
|
|
513
|
-
const isNestedTable = parentContainer && (parentContainer.className === 'pm-table-header-content-wrap' || parentContainer.className === 'pm-table-cell-content-wrap');
|
|
514
|
-
const isNestedDataTable = parentContainer && parentContainer.getAttribute('data-mark-type') === 'fragment' && (((_parentContainer$pare = parentContainer.parentElement) === null || _parentContainer$pare === void 0 ? void 0 : _parentContainer$pare.className) === 'pm-table-header-content-wrap' || ((_parentContainer$pare2 = parentContainer.parentElement) === null || _parentContainer$pare2 === void 0 ? void 0 : _parentContainer$pare2.className) === 'pm-table-cell-content-wrap');
|
|
515
|
-
const isTableInsideTable = isNestedTable || isNestedDataTable;
|
|
516
533
|
if (tableContentWrapper) {
|
|
517
534
|
if (isCurrentTableSelected) {
|
|
518
535
|
this.colControlsOffset = tableControlsSpacing;
|
|
@@ -521,17 +538,11 @@ export default class TableRow extends TableNodeView {
|
|
|
521
538
|
// to provide spacing for table controls
|
|
522
539
|
if (isTableInsideLayout) {
|
|
523
540
|
tableContentWrapper.style.paddingLeft = '11px';
|
|
524
|
-
} else if (isTableInsideTable && !fg('nested_table_control_padding_with_css')) {
|
|
525
|
-
tableContentWrapper.style.paddingLeft = '15px';
|
|
526
|
-
tableContentWrapper.style.paddingRight = '4px';
|
|
527
541
|
}
|
|
528
542
|
} else {
|
|
529
543
|
this.colControlsOffset = 0;
|
|
530
544
|
if (isTableInsideLayout) {
|
|
531
545
|
tableContentWrapper.style.removeProperty('padding-left');
|
|
532
|
-
} else if (isTableInsideTable && !fg('nested_table_control_padding_with_css')) {
|
|
533
|
-
tableContentWrapper.style.removeProperty('padding-left');
|
|
534
|
-
tableContentWrapper.style.removeProperty('padding-right');
|
|
535
546
|
}
|
|
536
547
|
}
|
|
537
548
|
}
|
|
@@ -567,9 +578,6 @@ export default class TableRow extends TableNodeView {
|
|
|
567
578
|
makeHeaderRowSticky(tree, scrollTop) {
|
|
568
579
|
var _tbody$firstChild;
|
|
569
580
|
// If header row height is more than 50% of viewport height don't do this
|
|
570
|
-
// TODO: ED-26961 - When cleaning up 'nested_table_control_padding_with_css' FG
|
|
571
|
-
// move this check to the constructor of the TableRow so that we don't subscribe to
|
|
572
|
-
// clicks and scrolls for nested tables.
|
|
573
581
|
if (this.isSticky || this.stickyRowHeight && this.stickyRowHeight > window.innerHeight / 2 || this.isInNestedTable) {
|
|
574
582
|
return;
|
|
575
583
|
}
|
|
@@ -385,15 +385,15 @@ export const baseTableStyles = props => {
|
|
|
385
385
|
padding-bottom: ${tableToolbarSize}px;
|
|
386
386
|
}
|
|
387
387
|
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
388
|
+
.tableView-content-wrap:has(.tableView-content-wrap):has(
|
|
389
|
+
.${ClassName.NESTED_TABLE_WITH_CONTROLS}
|
|
390
|
+
) {
|
|
391
|
+
padding-left: unset;
|
|
392
|
+
}
|
|
392
393
|
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
` : ''}
|
|
394
|
+
.tableView-content-wrap:has(.${ClassName.NESTED_TABLE_WITH_CONTROLS}) {
|
|
395
|
+
padding-left: 15px;
|
|
396
|
+
}
|
|
397
397
|
|
|
398
398
|
tr.sticky th {
|
|
399
399
|
border-bottom: ${stickyHeaderBorderBottomWidth}px solid ${tableBorderColor};
|
|
@@ -20,6 +20,7 @@ import { injectIntl } from 'react-intl-next';
|
|
|
20
20
|
import { ACTION_SUBJECT, EVENT_TYPE, TABLE_ACTION } from '@atlaskit/editor-common/analytics';
|
|
21
21
|
import { tintDirtyTransaction } from '@atlaskit/editor-common/collab';
|
|
22
22
|
import { getParentOfTypeCount } from '@atlaskit/editor-common/nesting';
|
|
23
|
+
import { nodeVisibilityManager } from '@atlaskit/editor-common/node-visibility';
|
|
23
24
|
import { getParentNodeWidth, getTableContainerWidth } from '@atlaskit/editor-common/node-width';
|
|
24
25
|
import { tableMarginSides } from '@atlaskit/editor-common/styles';
|
|
25
26
|
import { browser, isValidPosition } from '@atlaskit/editor-common/utils';
|
|
@@ -27,6 +28,7 @@ import { akEditorTableNumberColumnWidth, akEditorTableToolbarSize as tableToolba
|
|
|
27
28
|
import { findTable, isTableSelected } from '@atlaskit/editor-tables/utils';
|
|
28
29
|
import { fg } from '@atlaskit/platform-feature-flags';
|
|
29
30
|
import { combine } from '@atlaskit/pragmatic-drag-and-drop/combine';
|
|
31
|
+
import { editorExperiment } from '@atlaskit/tmp-editor-statsig/experiments';
|
|
30
32
|
import { autoSizeTable, clearHoverSelection } from '../pm-plugins/commands';
|
|
31
33
|
import { autoScrollerFactory } from '../pm-plugins/drag-and-drop/utils/autoscrollers';
|
|
32
34
|
import { getPluginState } from '../pm-plugins/plugin-factory';
|
|
@@ -344,7 +346,7 @@ var TableComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
344
346
|
_this.node = _getNode();
|
|
345
347
|
_this.containerWidth = _containerWidth;
|
|
346
348
|
var tablePos = props.getPos();
|
|
347
|
-
_this.isNestedInTable = tablePos
|
|
349
|
+
_this.isNestedInTable = tablePos ? getParentOfTypeCount(props.view.state.schema.nodes.table)(props.view.state.doc.resolve(tablePos)) > 0 : false;
|
|
348
350
|
_this.isInitialOverflowSent = false;
|
|
349
351
|
if (!_this.updateColGroupFromFullWidthChange) {
|
|
350
352
|
_this.updateColGroupFromFullWidthChange = (_options === null || _options === void 0 ? void 0 : _options.isFullWidthModeEnabled) && !(_options !== null && _options !== void 0 && _options.wasFullWidthModeEnabled);
|
|
@@ -394,10 +396,29 @@ var TableComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
394
396
|
return _createClass(TableComponent, [{
|
|
395
397
|
key: "componentDidMount",
|
|
396
398
|
value: function componentDidMount() {
|
|
399
|
+
var _this2 = this;
|
|
400
|
+
if (editorExperiment('platform_editor_nodevisibility', false)) {
|
|
401
|
+
this.initialiseEventListenersAfterMount();
|
|
402
|
+
return;
|
|
403
|
+
}
|
|
404
|
+
var _nodeVisibilityManage = nodeVisibilityManager(this.props.view.dom),
|
|
405
|
+
observe = _nodeVisibilityManage.observe;
|
|
406
|
+
if (this.table) {
|
|
407
|
+
this.nodeVisibilityObserverCleanupFn = observe({
|
|
408
|
+
element: this.table,
|
|
409
|
+
onFirstVisible: function onFirstVisible() {
|
|
410
|
+
_this2.initialiseEventListenersAfterMount();
|
|
411
|
+
}
|
|
412
|
+
});
|
|
413
|
+
}
|
|
414
|
+
}
|
|
415
|
+
}, {
|
|
416
|
+
key: "initialiseEventListenersAfterMount",
|
|
417
|
+
value: function initialiseEventListenersAfterMount() {
|
|
397
418
|
var _this$table,
|
|
398
419
|
_this$table2,
|
|
399
420
|
_this$table3,
|
|
400
|
-
|
|
421
|
+
_this3 = this;
|
|
401
422
|
var _this$props7 = this.props,
|
|
402
423
|
allowColumnResizing = _this$props7.allowColumnResizing,
|
|
403
424
|
allowTableResizing = _this$props7.allowTableResizing,
|
|
@@ -435,7 +456,7 @@ var TableComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
435
456
|
for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
|
|
436
457
|
var _entry$contentRect3;
|
|
437
458
|
var entry = _step2.value;
|
|
438
|
-
|
|
459
|
+
_this3.wrapperWidth = (_entry$contentRect3 = entry.contentRect) === null || _entry$contentRect3 === void 0 ? void 0 : _entry$contentRect3.width;
|
|
439
460
|
}
|
|
440
461
|
} catch (err) {
|
|
441
462
|
_iterator2.e(err);
|
|
@@ -509,6 +530,9 @@ var TableComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
509
530
|
if (isDragAndDropEnabled && this.dragAndDropCleanupFn) {
|
|
510
531
|
this.dragAndDropCleanupFn();
|
|
511
532
|
}
|
|
533
|
+
if (this.nodeVisibilityObserverCleanupFn) {
|
|
534
|
+
this.nodeVisibilityObserverCleanupFn();
|
|
535
|
+
}
|
|
512
536
|
(_this$resizeObserver = this.resizeObserver) === null || _this$resizeObserver === void 0 || _this$resizeObserver.disconnect();
|
|
513
537
|
(_this$wrapperReisizeO = this.wrapperReisizeObserver) === null || _this$wrapperReisizeO === void 0 || _this$wrapperReisizeO.disconnect();
|
|
514
538
|
if (this.stickyScrollbar) {
|
|
@@ -578,7 +602,7 @@ var TableComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
578
602
|
key: "handleColgroupUpdates",
|
|
579
603
|
value: function handleColgroupUpdates() {
|
|
580
604
|
var _this$containerWidth,
|
|
581
|
-
|
|
605
|
+
_this4 = this;
|
|
582
606
|
var force = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
|
|
583
607
|
var _this$props10 = this.props,
|
|
584
608
|
getNode = _this$props10.getNode,
|
|
@@ -655,26 +679,26 @@ var TableComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
655
679
|
}
|
|
656
680
|
var scalePercent = 1;
|
|
657
681
|
requestAnimationFrame(function () {
|
|
658
|
-
var
|
|
682
|
+
var _this4$props$options, _this4$props$options2;
|
|
659
683
|
// Scaling percent has to be calculated inside requestAnimationFrame, otherwise
|
|
660
684
|
// renderWidth calculated as `tableRef?.parentElement?.clientWidth`
|
|
661
685
|
// inside of getTableScalingPercent returns 0.
|
|
662
|
-
if (!((
|
|
686
|
+
if (!((_this4$props$options = _this4.props.options) !== null && _this4$props$options !== void 0 && _this4$props$options.isCommentEditor) || (_this4$props$options2 = _this4.props.options) !== null && _this4$props$options2 !== void 0 && _this4$props$options2.isCommentEditor && tableNode.attrs.width) {
|
|
663
687
|
scalePercent = getTableScalingPercent(tableNode,
|
|
664
688
|
// Ignored via go/ees005
|
|
665
689
|
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
666
|
-
|
|
690
|
+
_this4.table, shouldUseIncreasedScalingPercent);
|
|
667
691
|
} else {
|
|
668
692
|
// Ignored via go/ees005
|
|
669
693
|
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
670
|
-
scalePercent = getScalingPercentForTableWithoutWidth(tableNode,
|
|
694
|
+
scalePercent = getScalingPercentForTableWithoutWidth(tableNode, _this4.table);
|
|
671
695
|
}
|
|
672
696
|
|
|
673
697
|
// Request animation frame required for Firefox
|
|
674
698
|
updateColgroup(resizeState,
|
|
675
699
|
// Ignored via go/ees005
|
|
676
700
|
// eslint-disable-next-line @typescript-eslint/no-non-null-assertion
|
|
677
|
-
|
|
701
|
+
_this4.table, tableNode, shouldScaleOnColgroupUpdate, scalePercent);
|
|
678
702
|
});
|
|
679
703
|
}
|
|
680
704
|
}
|
|
@@ -694,7 +718,7 @@ var TableComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
694
718
|
var _this$props$options8,
|
|
695
719
|
_this$props$options9,
|
|
696
720
|
_this$wrapper,
|
|
697
|
-
|
|
721
|
+
_this5 = this;
|
|
698
722
|
var _this$props11 = this.props,
|
|
699
723
|
view = _this$props11.view,
|
|
700
724
|
getNode = _this$props11.getNode,
|
|
@@ -742,10 +766,10 @@ var TableComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
742
766
|
// that happens when a table is nested in expand and expand's width is
|
|
743
767
|
// changed via breakout button
|
|
744
768
|
window.requestAnimationFrame(function () {
|
|
745
|
-
|
|
769
|
+
_this5.overflowShadowsObserver = new OverflowShadowsObserver(fg('platform_editor_nested_tables_view_mode_sort') ? _this5.updateShadowStateDebounced : _this5.updateShadowState,
|
|
746
770
|
// Ignored via go/ees005
|
|
747
771
|
// eslint-disable-next-line @atlaskit/editor/no-as-casting
|
|
748
|
-
|
|
772
|
+
_this5.table, _this5.wrapper);
|
|
749
773
|
});
|
|
750
774
|
} else {
|
|
751
775
|
this.overflowShadowsObserver = new OverflowShadowsObserver(this.updateShadowState, this.table, this.wrapper);
|
|
@@ -822,7 +846,7 @@ var TableComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
822
846
|
}, {
|
|
823
847
|
key: "render",
|
|
824
848
|
value: function render() {
|
|
825
|
-
var
|
|
849
|
+
var _this6 = this,
|
|
826
850
|
_this$props$options10;
|
|
827
851
|
var _this$props12 = this.props,
|
|
828
852
|
view = _this$props12.view,
|
|
@@ -912,8 +936,8 @@ var TableComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
912
936
|
tableContainerWidth: tableContainerWidth,
|
|
913
937
|
isNumberColumnEnabled: node.attrs.isNumberColumnEnabled,
|
|
914
938
|
getScrollOffset: function getScrollOffset() {
|
|
915
|
-
var
|
|
916
|
-
return ((
|
|
939
|
+
var _this6$wrapper;
|
|
940
|
+
return ((_this6$wrapper = _this6.wrapper) === null || _this6$wrapper === void 0 ? void 0 : _this6$wrapper.scrollLeft) || 0;
|
|
917
941
|
},
|
|
918
942
|
tableWrapperHeight: this.state.tableWrapperHeight,
|
|
919
943
|
api: pluginInjectionApi,
|
|
@@ -985,12 +1009,12 @@ var TableComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
985
1009
|
editorView: view,
|
|
986
1010
|
node: node,
|
|
987
1011
|
getScrollOffset: function getScrollOffset() {
|
|
988
|
-
var
|
|
989
|
-
return ((
|
|
1012
|
+
var _this6$wrapper2;
|
|
1013
|
+
return ((_this6$wrapper2 = _this6.wrapper) === null || _this6$wrapper2 === void 0 ? void 0 : _this6$wrapper2.scrollLeft) || 0;
|
|
990
1014
|
},
|
|
991
1015
|
getTableWrapperWidth: function getTableWrapperWidth() {
|
|
992
|
-
var
|
|
993
|
-
return ((
|
|
1016
|
+
var _this6$wrapper3;
|
|
1017
|
+
return ((_this6$wrapper3 = _this6.wrapper) === null || _this6$wrapper3 === void 0 ? void 0 : _this6$wrapper3.clientWidth) || 760;
|
|
994
1018
|
}
|
|
995
1019
|
}), /*#__PURE__*/React.createElement("div", {
|
|
996
1020
|
contentEditable: false
|
|
@@ -1012,14 +1036,14 @@ var TableComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
1012
1036
|
// eslint-disable-next-line @atlaskit/ui-styling-standard/no-classname-prop -- Ignored via go/DSP-18766
|
|
1013
1037
|
className: classnames(ClassName.TABLE_NODE_WRAPPER),
|
|
1014
1038
|
ref: function ref(elem) {
|
|
1015
|
-
|
|
1039
|
+
_this6.wrapper = elem;
|
|
1016
1040
|
if (elem) {
|
|
1017
|
-
|
|
1041
|
+
_this6.props.contentDOM(elem);
|
|
1018
1042
|
var tableElement = elem.querySelector('table');
|
|
1019
|
-
if (tableElement !==
|
|
1020
|
-
|
|
1021
|
-
|
|
1022
|
-
|
|
1043
|
+
if (tableElement !== _this6.table) {
|
|
1044
|
+
_this6.table = tableElement;
|
|
1045
|
+
_this6.createShadowSentinels(_this6.table);
|
|
1046
|
+
_this6.observeTable(_this6.table);
|
|
1023
1047
|
}
|
|
1024
1048
|
}
|
|
1025
1049
|
}
|
|
@@ -9,9 +9,11 @@ function _isNativeReflectConstruct() { try { var t = !Boolean.prototype.valueOf.
|
|
|
9
9
|
import debounce from 'lodash/debounce';
|
|
10
10
|
import throttle from 'lodash/throttle';
|
|
11
11
|
import { getParentOfTypeCount } from '@atlaskit/editor-common/nesting';
|
|
12
|
+
import { nodeVisibilityManager } from '@atlaskit/editor-common/node-visibility';
|
|
12
13
|
import { findOverflowScrollParent } from '@atlaskit/editor-common/ui';
|
|
13
14
|
import { findParentNodeClosestToPos } from '@atlaskit/editor-prosemirror/utils';
|
|
14
15
|
import { fg } from '@atlaskit/platform-feature-flags';
|
|
16
|
+
import { editorExperiment } from '@atlaskit/tmp-editor-statsig/experiments';
|
|
15
17
|
import { getPluginState } from '../pm-plugins/plugin-factory';
|
|
16
18
|
import { pluginKey as tablePluginKey } from '../pm-plugins/plugin-key';
|
|
17
19
|
import { updateStickyState } from '../pm-plugins/sticky-headers/commands';
|
|
@@ -77,19 +79,38 @@ var TableRow = /*#__PURE__*/function (_TableNodeView) {
|
|
|
77
79
|
_this.isInNestedTable = getParentOfTypeCount(view.state.schema.nodes.table)(view.state.doc.resolve(pos)) > 1;
|
|
78
80
|
}
|
|
79
81
|
if (_this.isHeaderRow) {
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
82
|
+
if (editorExperiment('platform_editor_nodevisibility', false)) {
|
|
83
|
+
_this.subscribeWhenRowVisible();
|
|
84
|
+
} else {
|
|
85
|
+
var _nodeVisibilityManage = nodeVisibilityManager(view.dom),
|
|
86
|
+
observe = _nodeVisibilityManage.observe;
|
|
87
|
+
_this.nodeVisibilityObserverCleanupFn = observe({
|
|
88
|
+
element: _this.contentDOM,
|
|
89
|
+
onFirstVisible: function onFirstVisible() {
|
|
90
|
+
_this.subscribeWhenRowVisible();
|
|
91
|
+
}
|
|
92
|
+
});
|
|
83
93
|
}
|
|
84
94
|
}
|
|
85
95
|
return _this;
|
|
86
96
|
}
|
|
87
|
-
|
|
88
|
-
/**
|
|
89
|
-
* Variables
|
|
90
|
-
*/
|
|
91
97
|
_inherits(TableRow, _TableNodeView);
|
|
92
98
|
return _createClass(TableRow, [{
|
|
99
|
+
key: "subscribeWhenRowVisible",
|
|
100
|
+
value: function subscribeWhenRowVisible() {
|
|
101
|
+
if (this.listening) {
|
|
102
|
+
return;
|
|
103
|
+
}
|
|
104
|
+
this.dom.setAttribute('data-header-row', 'true');
|
|
105
|
+
if (this.isStickyHeaderEnabled) {
|
|
106
|
+
this.subscribe();
|
|
107
|
+
}
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
/**
|
|
111
|
+
* Variables
|
|
112
|
+
*/
|
|
113
|
+
}, {
|
|
93
114
|
key: "update",
|
|
94
115
|
value:
|
|
95
116
|
/**
|
|
@@ -131,6 +152,7 @@ var TableRow = /*#__PURE__*/function (_TableNodeView) {
|
|
|
131
152
|
value: function destroy() {
|
|
132
153
|
if (this.isStickyHeaderEnabled) {
|
|
133
154
|
this.unsubscribe();
|
|
155
|
+
this.nodeVisibilityObserverCleanupFn && this.nodeVisibilityObserverCleanupFn();
|
|
134
156
|
var tree = getTree(this.dom);
|
|
135
157
|
if (tree) {
|
|
136
158
|
this.makeRowHeaderNotSticky(tree.table, true);
|
|
@@ -514,7 +536,6 @@ var TableRow = /*#__PURE__*/function (_TableNodeView) {
|
|
|
514
536
|
}, {
|
|
515
537
|
key: "onTablePluginState",
|
|
516
538
|
value: function onTablePluginState(state) {
|
|
517
|
-
var _parentContainer$pare, _parentContainer$pare2;
|
|
518
539
|
var tableRef = state.tableRef;
|
|
519
540
|
var tree = getTree(this.dom);
|
|
520
541
|
if (!tree) {
|
|
@@ -541,9 +562,6 @@ var TableRow = /*#__PURE__*/function (_TableNodeView) {
|
|
|
541
562
|
var tableContentWrapper = tableContainer === null || tableContainer === void 0 ? void 0 : tableContainer.parentElement;
|
|
542
563
|
var parentContainer = tableContentWrapper && tableContentWrapper.parentElement;
|
|
543
564
|
var isTableInsideLayout = parentContainer && parentContainer.getAttribute('data-layout-content');
|
|
544
|
-
var isNestedTable = parentContainer && (parentContainer.className === 'pm-table-header-content-wrap' || parentContainer.className === 'pm-table-cell-content-wrap');
|
|
545
|
-
var isNestedDataTable = parentContainer && parentContainer.getAttribute('data-mark-type') === 'fragment' && (((_parentContainer$pare = parentContainer.parentElement) === null || _parentContainer$pare === void 0 ? void 0 : _parentContainer$pare.className) === 'pm-table-header-content-wrap' || ((_parentContainer$pare2 = parentContainer.parentElement) === null || _parentContainer$pare2 === void 0 ? void 0 : _parentContainer$pare2.className) === 'pm-table-cell-content-wrap');
|
|
546
|
-
var isTableInsideTable = isNestedTable || isNestedDataTable;
|
|
547
565
|
if (tableContentWrapper) {
|
|
548
566
|
if (isCurrentTableSelected) {
|
|
549
567
|
this.colControlsOffset = tableControlsSpacing;
|
|
@@ -552,17 +570,11 @@ var TableRow = /*#__PURE__*/function (_TableNodeView) {
|
|
|
552
570
|
// to provide spacing for table controls
|
|
553
571
|
if (isTableInsideLayout) {
|
|
554
572
|
tableContentWrapper.style.paddingLeft = '11px';
|
|
555
|
-
} else if (isTableInsideTable && !fg('nested_table_control_padding_with_css')) {
|
|
556
|
-
tableContentWrapper.style.paddingLeft = '15px';
|
|
557
|
-
tableContentWrapper.style.paddingRight = '4px';
|
|
558
573
|
}
|
|
559
574
|
} else {
|
|
560
575
|
this.colControlsOffset = 0;
|
|
561
576
|
if (isTableInsideLayout) {
|
|
562
577
|
tableContentWrapper.style.removeProperty('padding-left');
|
|
563
|
-
} else if (isTableInsideTable && !fg('nested_table_control_padding_with_css')) {
|
|
564
|
-
tableContentWrapper.style.removeProperty('padding-left');
|
|
565
|
-
tableContentWrapper.style.removeProperty('padding-right');
|
|
566
578
|
}
|
|
567
579
|
}
|
|
568
580
|
}
|
|
@@ -606,9 +618,6 @@ var TableRow = /*#__PURE__*/function (_TableNodeView) {
|
|
|
606
618
|
var _tbody$firstChild,
|
|
607
619
|
_this6 = this;
|
|
608
620
|
// If header row height is more than 50% of viewport height don't do this
|
|
609
|
-
// TODO: ED-26961 - When cleaning up 'nested_table_control_padding_with_css' FG
|
|
610
|
-
// move this check to the constructor of the TableRow so that we don't subscribe to
|
|
611
|
-
// clicks and scrolls for nested tables.
|
|
612
621
|
if (this.isSticky || this.stickyRowHeight && this.stickyRowHeight > window.innerHeight / 2 || this.isInNestedTable) {
|
|
613
622
|
return;
|
|
614
623
|
}
|
|
@@ -62,7 +62,7 @@ var tableStickyHeaderFirefoxFixStyle = function tableStickyHeaderFirefoxFixStyle
|
|
|
62
62
|
// re-exporting these styles to use in Gemini test when table node view is rendered outside of PM
|
|
63
63
|
export var baseTableStyles = function baseTableStyles(props) {
|
|
64
64
|
var _props$featureFlags, _props$featureFlags2;
|
|
65
|
-
return css(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral(["\n\t", ";\n\t", ";\n\t", ";\n\t", ";\n\t", ";\n\t", ";\n\t", ";\n\t", ";\n\t", ";\n\n\t.", " {\n\t\tmargin-bottom: 0;\n\t}\n\n\t.", " {\n\t\ttd.", ", th.", " {\n\t\t\tposition: relative;\n\t\t\toverflow: visible;\n\t\t}\n\n\t\ttd.", " {\n\t\t\tbackground-color: ", ";\n\n\t\t\t&::after {\n\t\t\t\theight: 100%;\n\t\t\t\tcontent: '';\n\t\t\t\tborder-left: 1px solid ", ";\n\t\t\t\tborder-bottom: 1px solid ", ";\n\t\t\t\tposition: absolute;\n\t\t\t\tright: 0px;\n\t\t\t\ttop: 0px;\n\t\t\t\tbottom: 0;\n\t\t\t\twidth: 100%;\n\t\t\t\tdisplay: inline-block;\n\t\t\t\tpointer-events: none;\n\t\t\t}\n\t\t}\n\t}\n\n\t.", " {\n\t\t", "\n\t}\n\n\t.", " {\n\t\t", "\n\t}\n\n\t", "\n\n\t", "\n\n\t/* Delete button */\n\t", "\n\t/* Ends Delete button */\n\n\t/* sticky styles */\n\t", "\n\n\t.", " .", ".sticky {\n\t\tposition: fixed !important;\n\t\t/* needs to be above row controls */\n\t\tz-index: ", " !important;\n\t\tbackground: ", ";\n\n\t\twidth: ", "px;\n\t\theight: ", "px;\n\t}\n\n\t.", ".sticky .", " {\n\t\tborder-bottom: 0px none;\n\t\tborder-right: 0px none;\n\n\t\theight: ", "px;\n\t\twidth: ", "px;\n\t}\n\n\t", "\n\n\t", "\n\n .", "\n .", "\n .", ".sticky {\n\t\tposition: fixed !important;\n\t\tz-index: ", " !important;\n\t\tdisplay: flex;\n\t\tborder-left: ", "px solid ", ";\n\t\tmargin-left: -", "px;\n\t}\n\n\t.", " col:first-of-type {\n\t\t/* moving rows out of a table layout does weird things in Chrome */\n\t\tborder-right: 1px solid ", ";\n\t}\n\n\ttr.sticky {\n\t\tpadding-top: ", "px;\n\t\tposition: fixed;\n\t\tdisplay: grid;\n\n\t\t/* to keep it above cell selection but below date and other nodes popups that are inside sticky header */\n\t\tz-index: ", ";\n\n\t\toverflow-y: visible;\n\t\toverflow-x: hidden;\n\n\t\tgrid-auto-flow: column;\n\n\t\t/* background for where controls apply */\n\t\tbackground: ", ";\n\t\tbox-sizing: content-box;\n\t\tbox-shadow: 0 6px 4px -4px ", ";\n\t\tmargin-left: -1px;\n\n\t\t&.no-pointer-events {\n\t\t\tpointer-events: none;\n\t\t}\n\t}\n\n\t.", " .", " {\n\t\tleft: unset;\n\t\tposition: fixed;\n\t\t/* needs to be above sticky header row and below date and other nodes popups that are inside sticky header */\n\t\tz-index: ", ";\n\t}\n\n\t.", ".", " .", " {\n\t\tpadding-bottom: ", "px;\n\t}\n\n\t", "\n\n\ttr.sticky th {\n\t\tborder-bottom: ", "px solid ", ";\n\t\tmargin-right: -1px;\n\t}\n\n\t.", " tr.sticky > th:last-child {\n\t\tborder-right-width: 1px;\n\t}\n\n\t/* add left edge for first cell */\n\t.", " tr.sticky > th:first-of-type {\n\t\tmargin-left: 0px;\n\t}\n\n\t/* add a little bit so the scroll lines up with the table */\n\t.", " tr.sticky::after {\n\t\tcontent: ' ';\n\t\twidth: ", "px;\n\t}\n\n\t/* To fix jumpiness caused in Chrome Browsers for sticky headers */\n\t.", " .sticky + tr {\n\t\tmin-height: 0px;\n\t}\n\n\t/* move resize line a little in sticky bar */\n\t.", ".", " {\n\t\ttr.sticky td.", ", tr.sticky th.", " {\n\t\t\t.", "::after {\n\t\t\t\tright: ", "px;\n\t\t\t}\n\t\t}\n\n\t\t/* when selected put it back to normal -- :not selector would be nicer */\n\t\ttr.sticky\n\t\t\ttd.", ".", ",\n\t\t\ttr.sticky\n\t\t\tth.", ".", " {\n\t\t\t.", "::after {\n\t\t\t\tright: ", "px;\n\t\t\t}\n\t\t}\n\t}\n\n\ttr.sticky .", ", tr.sticky .", " {\n\t\tz-index: 1;\n\t}\n\n\t.", " tr.sticky {\n\t\tpadding-top: ", "px;\n\t}\n\n\t", "\n\n\t.", ".sticky {\n\t\tborder-top: ", "px\n\t\t\tsolid ", ";\n\t}\n\n\t", "\n\t", "\n ", "\n\n .", " .", " {\n\t\theight: 0; /* stop overflow flash & set correct height in update-overflow-shadows.ts */\n\t}\n\n\t.less-padding {\n\t\tpadding: 0 ", "px;\n\n\t\t.", ", .", " {\n\t\t\tpadding: 0 ", "px;\n\n\t\t\t/* https://product-fabric.atlassian.net/browse/ED-16386\n\t\t\tFixes issue where the extra padding that is added here throws off the position\n\t\t\tof the rows control dot */\n\t\t\t&::after {\n\t\t\t\tright: 6px !important;\n\t\t\t}\n\t\t}\n\n\t\t.", ".", " {\n\t\t\tleft: -4px;\n\t\t}\n\n\t\t.", " {\n\t\t\tpadding: 0 ", "px;\n\t\t}\n\n\t\t.", ".", " {\n\t\t\tleft: -8px;\n\t\t}\n\n\t\t&.", "[data-number-column='true'] {\n\t\t\tpadding-left: ", "px;\n\t\t}\n\t\t.", ", .", " {\n\t\t\twidth: ", "px;\n\t\t}\n\n\t\t.", " {\n\t\t\tleft: 6px;\n\t\t}\n\t\t.", ".", " {\n\t\t\tleft: 8px;\n\t\t}\n\n\t\t.", " {\n\t\t\tleft: calc(100% - 6px);\n\t\t}\n\t\t.", ".", " {\n\t\t\tleft: calc(100% - 16px);\n\t\t}\n\t}\n\n\t> .", " {\n\t\t/**\n * Prevent margins collapsing, aids with placing the gap-cursor correctly\n * @see https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Box_Model/Mastering_margin_collapsing\n *\n * TODO: Enable this, many tests will fail!\n * border-top: 1px solid transparent;\n */\n\t}\n\n\t/* Breakout only works on top level unless wrapped in fragment mark */\n\t", "\n\n\t", ";\n\t", ";\n\n\t/* Corner controls */\n\t.", " {\n\t\twidth: ", "px;\n\t\theight: ", "px;\n\t\tdisplay: none;\n\n\t\t.", " {\n\t\t\tposition: relative;\n\n\t\t\t", ";\n\t\t}\n\t}\n\n\t.", ".sticky {\n\t\t.", " {\n\t\t\t/* sticky row insert dot overlaps other row insert and messes things up */\n\t\t\tdisplay: none !important;\n\t\t}\n\t}\n\n\t.", " {\n\t\tposition: absolute;\n\t\ttop: 0;\n\t\twidth: ", "px;\n\t\theight: ", "px;\n\t\tborder: 1px solid ", ";\n\t\tborder-radius: 0;\n\t\tborder-top-left-radius: ", "px;\n\t\tbackground: ", ";\n\t\tbox-sizing: border-box;\n\t\tpadding: 0;\n\t\t:focus {\n\t\t\toutline: none;\n\t\t}\n\t}\n\t.active .", " {\n\t\tborder-color: ", ";\n\t\tbackground: ", ";\n\t}\n\n\t.", "[data-number-column='true'] {\n\t\t.", ", .", " {\n\t\t\twidth: ", "px;\n\t\t}\n\t\t.", " .", " {\n\t\t\tborder-right-width: 0;\n\t\t}\n\t}\n\n\t:not(.", ") .", ":hover {\n\t\tborder-color: ", ";\n\t\tbackground: ", ";\n\t\tcursor: pointer;\n\t}\n\n\t:not(.", ")\n\t\t.", ".", " {\n\t\tborder-color: ", ";\n\t\tbackground: ", ";\n\t}\n\n\t/* Row controls */\n\t.", " {\n\t\twidth: ", "px;\n\t\tbox-sizing: border-box;\n\t\tdisplay: none;\n\t\tposition: relative;\n\n\t\t", ";\n\n\t\t.", " {\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: column;\n\t\t}\n\t\t.", ":last-child > button {\n\t\t\tborder-bottom-left-radius: ", "px;\n\t\t}\n\t\t.", " {\n\t\t\tposition: relative;\n\t\t\tmargin-top: -1px;\n\t\t}\n\t\t.", ":hover,\n\t\t\t.", ".active,\n\t\t\t.", ":hover {\n\t\t\tz-index: ", ";\n\t\t}\n\n\t\t", "\n\t}\n\n\t.", " {\n\t\tdisplay: grid;\n\t\talign-items: center;\n\t\tposition: absolute;\n\t\tz-index: ", ";\n\n\t\t.", " {\n\t\t\tposition: absolute;\n\t\t\talign-self: end;\n\t\t\theight: 100%;\n\t\t\twidth: 18px;\n\t\t}\n\n\t\t.", " {\n\t\t\tposition: absolute;\n\t\t\tbottom: -3px;\n\t\t\tleft: 2px;\n\t\t\tbackground-color: ", ";\n\t\t\theight: 4px;\n\t\t\twidth: 4px;\n\t\t\tborder-radius: 50%;\n\t\t\tpointer-events: none;\n\t\t}\n\t}\n\n\t.", " {\n\t\t.", " {\n\t\t\theight: 24px;\n\t\t\tposition: absolute;\n\t\t\ttop: ", ";\n\t\t\tz-index: ", ";\n\t\t}\n\n\t\t.", " {\n\t\t\tposition: absolute;\n\t\t\theight: 24px;\n\t\t\twidth: 100%;\n\t\t}\n\n\t\t.", " {\n\t\t\tbackground-color: ", ";\n\t\t\theight: 4px;\n\t\t\twidth: 4px;\n\t\t\tborder-radius: 50%;\n\t\t\tposition: absolute;\n\t\t\tright: -2px;\n\t\t}\n\t}\n\n\t.", " {\n\t\tbackground: none;\n\t\tborder: none;\n\t\toutline: none;\n\t\tposition: absolute;\n\t\tmargin: 0;\n\t\tpadding: 0;\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tcursor: pointer;\n\n\t\t:focus {\n\t\t\toutline: none;\n\t\t}\n\t}\n\n\t.", " {\n\t\tcursor: grab;\n\t\tpointer-events: auto;\n\n\t\tline-height: 0;\n\t\tpadding: 0;\n\t\tborder-radius: 6px;\n\t\twidth: max-content;\n\t\tborder: 2px solid ", ";\n\n\t\tdisplay: flex;\n\t\tjustify-content: center;\n\t\talign-items: center;\n\t\tbackground: transparent;\n\t\toutline: none;\n\n\t\t&.placeholder {\n\t\t\tbackground-color: transparent;\n\t\t\tborder: 2px solid transparent;\n\t\t}\n\n\t\t&.", " {\n\t\t\tcursor: pointer;\n\t\t\t& svg {\n\t\t\t\t& > rect.", " {\n\t\t\t\t\tfill: ", ";\n\t\t\t\t}\n\t\t\t\t& > rect {\n\t\t\t\t\tfill: ", ";\n\t\t\t\t}\n\t\t\t\t& > g > rect {\n\t\t\t\t\tfill: ", ";\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t&:not(.", ") {\n\t\t\t& svg {\n\t\t\t\trect {\n\t\t\t\t\tfill: ", ";\n\t\t\t\t}\n\t\t\t\tg {\n\t\t\t\t\tfill: ", ";\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t&:hover {\n\t\t\t\tsvg {\n\t\t\t\t\trect {\n\t\t\t\t\t\tfill: ", ";\n\t\t\t\t\t}\n\t\t\t\t\tg {\n\t\t\t\t\t\tfill: ", ";\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t&:active {\n\t\t\t\tcursor: grabbing;\n\t\t\t}\n\n\t\t\t&.selected {\n\t\t\t\t:focus {\n\t\t\t\t\toutline: 2px solid ", ";\n\t\t\t\t\toutline-offset: 1px;\n\t\t\t\t}\n\n\t\t\t\t&:active {\n\t\t\t\t\toutline: none;\n\t\t\t\t}\n\n\t\t\t\tsvg {\n\t\t\t\t\trect {\n\t\t\t\t\t\tfill: ", ";\n\t\t\t\t\t}\n\t\t\t\t\tg {\n\t\t\t\t\t\tfill: ", ";\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t&.danger {\n\t\t\t\tsvg {\n\t\t\t\t\trect {\n\t\t\t\t\t\tfill: ", ";\n\t\t\t\t\t}\n\t\t\t\t\tg {\n\t\t\t\t\t\tfill: ", ";\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t", "\n\n\t:not(.", ") .", " {\n\t\t", "\n\t\t", "\n\t}\n\n\t/* Numbered column */\n\t.", " {\n\t\tposition: relative;\n\t\tfloat: right;\n\t\tmargin-left: ", "px;\n\t\ttop: ", "px;\n\t\twidth: ", "px;\n\t\tbox-sizing: border-box;\n\t}\n\n\t.", " {\n\t\tborder: 1px solid ", ";\n\t\tbox-sizing: border-box;\n\t\tmargin-top: -1px;\n\t\tpadding-bottom: 2px;\n\t\tpadding: 10px 2px;\n\t\ttext-align: center;\n\t\tfont-size: ", ";\n\t\tbackground-color: ", ";\n\t\tcolor: ", ";\n\t\tborder-color: ", ";\n\n\t\t:first-child:not(style),\n\t\tstyle:first-child + * {\n\t\t\tmargin-top: 0;\n\t\t}\n\t\t:last-child {\n\t\t\tborder-bottom: 1px solid ", ";\n\t\t}\n\t}\n\n\t/* add a background above the first numbered column cell when sticky header is engaged\n\twhich hides the table when scrolling */\n\t", "\n\n\t.", " {\n\t\t.", ", .", " {\n\t\t\tdisplay: block;\n\t\t}\n\t\t.", " {\n\t\t\tpadding-left: 0px;\n\n\t\t\t.", " {\n\t\t\t\tborder-left: 0 none;\n\t\t\t}\n\n\t\t\t.", ".active {\n\t\t\t\tborder-bottom: 1px solid ", ";\n\t\t\t\tborder-color: ", ";\n\t\t\t\tbackground-color: ", ";\n\t\t\t\tposition: relative;\n\t\t\t\tz-index: ", ";\n\t\t\t\tcolor: ", ";\n\t\t\t}\n\t\t}\n\n\t\t/* nested tables should be ignored when we apply border-left: 0 to the parent table */\n\t\t.", " {\n\t\t\t.", " {\n\t\t\t\tborder-left: 1px solid ", ";\n\t\t\t}\n\t\t}\n\t}\n\t:not(.", ") .", " {\n\t\t.", ":not(.", ") {\n\t\t\tcursor: pointer;\n\t\t}\n\t\t.", ":not(.", "):hover {\n\t\t\tborder-bottom: 1px solid ", ";\n\t\t\tborder-color: ", ";\n\t\t\tbackground-color: ", ";\n\t\t\tposition: relative;\n\t\t\tz-index: ", ";\n\t\t\tcolor: ", ";\n\t\t}\n\t\t.", ".", " {\n\t\t\tbackground-color: ", ";\n\t\t\tborder: 1px solid ", ";\n\t\t\tborder-left: 0;\n\t\t\tcolor: ", ";\n\t\t\tposition: relative;\n\t\t\tz-index: ", ";\n\t\t}\n\t}\n\n\t/* Table */\n\t.", " > table {\n\t\ttable-layout: fixed;\n\t\twhite-space: normal;\n\t\tborder-top: none;\n\t\t/* 1px border width offset added here to prevent unwanted overflow and scolling - ED-16212 */\n\t\tmargin-right: -1px;\n\t\t/* Allows better positioning for the shadow sentinels - ED-16668 */\n\t\tposition: relative;\n\n\t\t> tbody > tr {\n\t\t\twhite-space: pre-wrap;\n\t\t}\n\n\t\t.", " + * {\n\t\t\tmargin-top: 0;\n\t\t}\n\n\t\t/*\n * Headings have a top margin by default, but we don't want this on the\n * first heading within table header cells.\n *\n * This specifically sets margin-top for the first heading within a header\n * cell when center/right aligned.\n */\n\t\tth.", " > .fabric-editor-block-mark {\n\t\t\t> h1:first-of-type,\n\t\t\t> h2:first-of-type,\n\t\t\t> h3:first-of-type,\n\t\t\t> h4:first-of-type,\n\t\t\t> h5:first-of-type,\n\t\t\t> h6:first-of-type {\n\t\t\t\tmargin-top: 0;\n\t\t\t}\n\t\t}\n\n\t\t.", ", .", " {\n\t\t\tposition: relative;\n\t\t}\n\t\t/* Give selected cells a blue overlay */\n\t\t.", "::after, .", "::after {\n\t\t\tz-index: ", ";\n\t\t\tposition: absolute;\n\t\t\tcontent: '';\n\t\t\tleft: 0;\n\t\t\tright: 0;\n\t\t\ttop: 0;\n\t\t\tbottom: 0;\n\t\t\twidth: 100%;\n\t\t\tpointer-events: none;\n\t\t}\n\t\t.", " {\n\t\t\tborder: 1px solid ", ";\n\t\t}\n\t\t.", "::after {\n\t\t\tbackground: ", ";\n\t\t\tz-index: ", ";\n\t\t}\n\t\tth.", "::after, td.", "::after {\n\t\t\tbackground: ", ";\n\t\t\tz-index: ", ";\n\t\t}\n\t\ttd.", ",\n\t\t\ttd.", ",\n\t\t\tth.", ".", ",\n\t\t\tth.", ".", " {\n\t\t\t&::after {\n\t\t\t\theight: 100%;\n\t\t\t\twidth: 100%;\n\t\t\t\tborder: 1px solid ", ";\n\t\t\t\tcontent: '';\n\t\t\t\tposition: absolute;\n\t\t\t\tleft: -1px;\n\t\t\t\ttop: -1px;\n\t\t\t\tbottom: 0;\n\t\t\t\tz-index: ", ";\n\t\t\t\tdisplay: inline-block;\n\t\t\t\tpointer-events: none;\n\t\t\t}\n\t\t\t&.", "::after {\n\t\t\t\t", ";\n\t\t\t\tz-index: ", ";\n\t\t\t}\n\n\t\t\t&.", ".", "::after {\n\t\t\t\t", ";\n\t\t\t\tz-index: ", ";\n\t\t\t}\n\t\t}\n\t}\n\n\t/* override for DnD controls */\n\t.", " {\n\t\tposition: absolute;\n\t\tmargin-top: ", "px;\n\t\tleft: -", "px;\n\t\t", "\n\t}\n\n\t.", " {\n\t\tposition: absolute;\n\t\t/* this is to fix the misalignment of the numbered column in live page view mode */\n\t\t", "\n\t}\n\n\t.", ".", ",\n\t\t.", ".", " {\n\t\tz-index: ", ";\n\t}\n\n\t.", " {\n\t\tposition: absolute;\n\t\ttop: ", "px;\n\t}\n\n\t.", " .", " {\n\t\tposition: fixed;\n\t\t/* higher zIndex than sticky header which is akEditorTableCellOnStickyHeaderZIndex - 5 */\n\t\tz-index: ", ";\n\t}\n\n\t/* nested tables */\n\t", "\n\n\t.", " {\n\t\tpadding-bottom: 0px;\n\t\t/* fixes gap cursor height */\n\t\toverflow: auto;\n\t\toverflow-y: hidden;\n\t\tposition: relative;\n\t}\n"])), tableSharedStyle(), columnControlsLineMarker(), hoveredDeleteButton(), hoveredCell(), hoveredWarningCell, insertLine(), resizeHandle(), rangeSelectionStyles, viewModeSortStyles(), ClassName.LAST_ITEM_IN_CELL, ClassName.TABLE_NODE_WRAPPER, ClassName.TABLE_CELL, ClassName.TABLE_HEADER_CELL, ClassName.TABLE_CELL, tableCellBackgroundColor, tableBorderColor, tableBorderColor, ClassName.CONTROLS_FLOATING_BUTTON_COLUMN, insertColumnButtonWrapper(), ClassName.CONTROLS_FLOATING_BUTTON_ROW, insertRowButtonWrapper(), dragInsertButtonWrapper(), dragCornerControlButton(), DeleteButton(), fg('platform_editor_nested_tables_sticky_header_bug') ? "\n\t\t".concat(fg('platform_editor_number_column_sticky_header_broken') ? ".".concat(ClassName.TABLE_STICKY, " > .").concat(props.isDragAndDropEnabled ? ClassName.DRAG_ROW_CONTROLS_WRAPPER : ClassName.ROW_CONTROLS_WRAPPER, " .").concat(ClassName.NUMBERED_COLUMN, " .").concat(ClassName.NUMBERED_COLUMN_BUTTON, ":first-of-type {") : ".".concat(ClassName.TABLE_STICKY, " > .").concat(ClassName.DRAG_ROW_CONTROLS_WRAPPER, " .").concat(ClassName.NUMBERED_COLUMN, " .").concat(ClassName.NUMBERED_COLUMN_BUTTON, ":first-of-type {"), "\n\t\t\tmargin-top: ").concat(fg('platform_editor_number_column_sticky_header_bug') ? stickyRowOffsetTop : stickyRowOffsetTop + 2, "px;\n\t\t\twidth: ").concat(akEditorTableNumberColumnWidth, "px;\n\n\t\t\tposition: fixed !important;\n\t\t\tz-index: ").concat(akEditorStickyHeaderZIndex, " !important;\n\t\t\tbox-shadow: 0px -").concat(stickyRowOffsetTop, "px ", "var(--ds-surface, white)", ";\n\t\t\tborder-right: 0 none;\n\t\t\t/* top set by NumberColumn component */\n\t\t}\n\t\t") : "\n \t.".concat(ClassName.TABLE_STICKY, " .").concat(ClassName.NUMBERED_COLUMN, " .").concat(ClassName.NUMBERED_COLUMN_BUTTON, ":first-of-type {\n\t\t\tmargin-top: ").concat(fg('platform_editor_number_column_sticky_header_bug') ? stickyRowOffsetTop : stickyRowOffsetTop + 2, "px;\n\t\t\twidth: ").concat(akEditorTableNumberColumnWidth, "px;\n\n\t\t\tposition: fixed !important;\n\t\t\tz-index: ").concat(akEditorStickyHeaderZIndex, " !important;\n\t\t\tbox-shadow: 0px -").concat(stickyRowOffsetTop, "px ", "var(--ds-surface, white)", ";\n\t\t\tborder-right: 0 none;\n\t\t\t/* top set by NumberColumn component */\n\t\t}\n\t\t"), ClassName.TABLE_STICKY, ClassName.CORNER_CONTROLS, akEditorSmallZIndex, "var(--ds-surface, white)", tableToolbarSize, tableToolbarSize, ClassName.CORNER_CONTROLS, ClassName.CONTROLS_CORNER_BUTTON, tableToolbarSize, tableToolbarSize, tableStickyHeaderColumnControlsDecorationsStyle(), tableStickyHeaderFirefoxFixStyle(), ClassName.TABLE_STICKY, ClassName.ROW_CONTROLS, ClassName.ROW_CONTROLS_BUTTON_WRAP, akEditorStickyHeaderZIndex, tableToolbarSize, "var(--ds-surface, white)", tableToolbarSize, ClassName.TABLE_STICKY, "var(--ds-surface, green)", stickyRowOffsetTop, akEditorTableCellOnStickyHeaderZIndex - 5, "var(--ds-surface, white)", "var(--ds-shadow-overflow-perimeter, ".concat(N40A, ")"), ClassName.TABLE_STICKY, ClassName.TABLE_STICKY_SHADOW, akEditorTableCellOnStickyHeaderZIndex, ClassName.WITH_CONTROLS, ClassName.TABLE_STICKY, ClassName.TABLE_STICKY_SHADOW, tableToolbarSize, fg('nested_table_control_padding_with_css') ? "\n\t\t.tableView-content-wrap:has(.tableView-content-wrap):has(.".concat(ClassName.NESTED_TABLE_WITH_CONTROLS, ") {\n\t\t\tpadding-left: unset;\n\t\t}\n\n\t\t.tableView-content-wrap:has(.").concat(ClassName.NESTED_TABLE_WITH_CONTROLS, ") {\n\t\t\tpadding-left: 15px;\n\t\t}\n\t\t") : '', stickyHeaderBorderBottomWidth, tableBorderColor, ClassName.TABLE_STICKY, ClassName.TABLE_STICKY, ClassName.TABLE_STICKY, insertColumnButtonOffset + 1, ClassName.TABLE_STICKY, ClassName.TABLE_CONTAINER, ClassName.TABLE_STICKY, ClassName.WITH_RESIZE_LINE, ClassName.WITH_RESIZE_LINE, ClassName.RESIZE_HANDLE_DECORATION, (resizeHandlerAreaWidth - resizeLineWidth) / 2 + 1, ClassName.WITH_RESIZE_LINE, ClassName.SELECTED_CELL, ClassName.WITH_RESIZE_LINE, ClassName.SELECTED_CELL, ClassName.RESIZE_HANDLE_DECORATION, (resizeHandlerAreaWidth - resizeLineWidth) / 2, ClassName.HOVERED_CELL, ClassName.SELECTED_CELL, ClassName.WITH_CONTROLS, tableControlsSpacing, fg('platform_editor_nested_tables_sticky_header_bug') ? "\n\t\t.".concat(ClassName.WITH_CONTROLS, ".").concat(ClassName.TABLE_STICKY, " > .").concat(ClassName.DRAG_ROW_CONTROLS_WRAPPER, "\n\t\t\t.").concat(ClassName.NUMBERED_COLUMN, "\n\t\t\t.").concat(ClassName.NUMBERED_COLUMN_BUTTON, ":first-of-type {\n\t\t\tmargin-top: ").concat(fg('platform_editor_number_column_sticky_header_bug') ? tableControlsSpacing : tableControlsSpacing + 2, "px;\n\t\t}\n\t\t") : "\n\t\t.".concat(ClassName.WITH_CONTROLS, ".").concat(ClassName.TABLE_STICKY, "\n\t\t\t.").concat(ClassName.NUMBERED_COLUMN, "\n\t\t\t.").concat(ClassName.NUMBERED_COLUMN_BUTTON, ":first-of-type {\n\t\t\tmargin-top: ").concat(fg('platform_editor_number_column_sticky_header_bug') ? tableControlsSpacing : tableControlsSpacing + 2, "px;\n\t\t}\n\t\t"), ClassName.CORNER_CONTROLS, fg('platform_editor_number_column_sticky_header_bug') ? tableControlsSpacing - tableToolbarSize : tableControlsSpacing - tableToolbarSize + 2, "var(--ds-surface, white)", sentinelStyles, OverflowShadow((_props$featureFlags = props.featureFlags) === null || _props$featureFlags === void 0 ? void 0 : _props$featureFlags.tableDragAndDrop), stickyScrollbarStyles, ClassName.TABLE_STICKY, ClassName.TABLE_STICKY_SHADOW, tablePadding, ClassName.DRAG_ROW_CONTROLS_WRAPPER, ClassName.ROW_CONTROLS_WRAPPER, tablePadding, ClassName.DRAG_ROW_CONTROLS_WRAPPER, ClassName.TABLE_CHROMELESS, ClassName.DRAG_COLUMN_CONTROLS_WRAPPER, tablePadding, ClassName.DRAG_COLUMN_CONTROLS_WRAPPER, ClassName.TABLE_CHROMELESS, ClassName.TABLE_CONTAINER, akEditorTableNumberColumnWidth + tablePadding - 1, ClassName.TABLE_LEFT_SHADOW, ClassName.TABLE_RIGHT_SHADOW, tableOverflowShadowWidth, ClassName.TABLE_LEFT_SHADOW, ClassName.TABLE_LEFT_SHADOW, ClassName.TABLE_CHROMELESS, ClassName.TABLE_RIGHT_SHADOW, ClassName.TABLE_RIGHT_SHADOW, ClassName.TABLE_CHROMELESS, ClassName.NODEVIEW_WRAPPER, breakoutWidthStyling(), columnControlsDecoration(), rowControlsWrapperDotStyle(), ClassName.CORNER_CONTROLS, tableToolbarSize + 1, cornerControlHeight, ClassName.CORNER_CONTROLS_INSERT_ROW_MARKER, InsertMarker("\n left: -11px;\n top: 9px;\n "), ClassName.CORNER_CONTROLS, ClassName.CORNER_CONTROLS_INSERT_ROW_MARKER, ClassName.CONTROLS_CORNER_BUTTON, tableToolbarSize + 1, tableToolbarSize + 1, tableBorderColor, tableBorderRadiusSize, tableHeaderCellBackgroundColor, ClassName.CONTROLS_CORNER_BUTTON, tableBorderSelectedColor, tableToolbarSelectedColor, ClassName.TABLE_CONTAINER, ClassName.CORNER_CONTROLS, ClassName.CONTROLS_CORNER_BUTTON, akEditorTableToolbarSize + akEditorTableNumberColumnWidth + 1, ClassName.ROW_CONTROLS, ClassName.CONTROLS_BUTTON, ClassName.IS_RESIZING, ClassName.CONTROLS_CORNER_BUTTON, tableBorderSelectedColor, tableToolbarSelectedColor, ClassName.IS_RESIZING, ClassName.CONTROLS_CORNER_BUTTON, ClassName.HOVERED_CELL_IN_DANGER, tableBorderDeleteColor, tableToolbarDeleteColor, ClassName.ROW_CONTROLS, tableToolbarSize, InsertMarker("\n bottom: -1px;\n left: -11px;\n "), ClassName.ROW_CONTROLS_INNER, ClassName.ROW_CONTROLS_BUTTON_WRAP, tableBorderRadiusSize, ClassName.ROW_CONTROLS_BUTTON_WRAP, ClassName.ROW_CONTROLS_BUTTON_WRAP, ClassName.ROW_CONTROLS_BUTTON_WRAP, ClassName.CONTROLS_BUTTON, akEditorUnitZIndex, HeaderButton("\n border-bottom: 1px solid ".concat(tableBorderColor, ";\n border-right: 0px;\n border-radius: 0;\n height: 100%;\n width: ").concat(tableToolbarSize, "px;\n\n .").concat(ClassName.CONTROLS_BUTTON_OVERLAY, " {\n position: absolute;\n width: 30px;\n height: 50%;\n right: 0;\n bottom: 0;\n }\n .").concat(ClassName.CONTROLS_BUTTON_OVERLAY, ":first-of-type {\n top: 0;\n }\n ")), ClassName.DRAG_ROW_CONTROLS, fg('platform_editor_table_column_selected_state_fix') ? rowControlsZIndex + 4 : akEditorUnitZIndex, ClassName.DRAG_ROW_FLOATING_INSERT_DOT_WRAPPER, ClassName.DRAG_ROW_FLOATING_INSERT_DOT, "var(--ds-background-accent-gray-subtler, #C1C7D0)", ClassName.DRAG_COLUMN_CONTROLS, ClassName.DRAG_COLUMN_CONTROLS_INNER, "var(--ds-space-negative-150, -12px)", resizeHandlerZIndex, ClassName.DRAG_COLUMN_FLOATING_INSERT_DOT_WRAPPER, ClassName.DRAG_COLUMN_FLOATING_INSERT_DOT, "var(--ds-background-accent-gray-subtler, #C1C7D0)", ClassName.DRAG_HANDLE_BUTTON_CLICKABLE_ZONE, ClassName.DRAG_HANDLE_BUTTON_CONTAINER, "var(--ds-surface, ".concat(N0, ")"), ClassName.DRAG_HANDLE_DISABLED, ClassName.DRAG_HANDLE_MINIMISED, "var(--ds-background-accent-gray-subtler, #DCDFE4)", "var(--ds-background-accent-gray-subtlest, #F4F5F7)", "var(--ds-icon-disabled, #BFDBF847)", ClassName.DRAG_HANDLE_DISABLED, "var(--ds-background-accent-gray-subtler, #DCDFE4)", "var(--ds-icon-subtle, #626f86)", "var(--ds-background-accent-blue-subtle, #579DFF)", "var(--ds-icon-inverse, #FFF)", "var(--ds-border-focused, #2684FF)", "var(--ds-background-accent-blue-subtle, #579dff)", "var(--ds-icon-inverse, #fff)", "var(--ds-background-accent-red-subtler-pressed, #F87462)", "var(--ds-border-inverse, #FFF)", floatingColumnControls(), ClassName.IS_RESIZING, ClassName.ROW_CONTROLS, HeaderButtonHover(), HeaderButtonDanger(), ClassName.NUMBERED_COLUMN, akEditorTableToolbarSize, (fg('platform_editor_number_column_sticky_header_broken') ? props.isDragAndDropEnabled : (_props$featureFlags2 = props.featureFlags) === null || _props$featureFlags2 === void 0 ? void 0 : _props$featureFlags2.tableDragAndDrop) || editorExperiment('support_table_in_comment_jira', true) ? 0 : akEditorTableToolbarSize, akEditorTableNumberColumnWidth + 1, ClassName.NUMBERED_COLUMN_BUTTON, tableBorderColor, relativeFontSizeToBase16(14), tableHeaderCellBackgroundColor, tableTextColor, tableBorderColor, tableBorderColor, fg('platform_editor_nested_tables_sticky_header_bug') ? "\n\t\t".concat(fg('platform_editor_number_column_sticky_header_broken') ? ".".concat(ClassName.TABLE_STICKY, " > .").concat(props.isDragAndDropEnabled ? ClassName.DRAG_ROW_CONTROLS_WRAPPER : ClassName.ROW_CONTROLS_WRAPPER, " {\n\t\t\t\t.").concat(ClassName.NUMBERED_COLUMN_BUTTON_DISABLED, ":first-of-type::after {") : ".".concat(ClassName.TABLE_STICKY, " > .").concat(ClassName.DRAG_ROW_CONTROLS_WRAPPER, " {\n\t\t\t\t.").concat(ClassName.NUMBERED_COLUMN_BUTTON_DISABLED, ":first-of-type::after {"), "\n\t\t\t\tcontent: '';\n\t\t\t\tdisplay: block;\n\t\t\t\theight: 33px;\n\t\t\t\twidth: 100%;\n\t\t\t\tbackground-color: ", "var(--ds-surface, white)", ";\n\t\t\t\tposition: absolute;\n\n\t\t\t\t/* the extra pixel is accounting for borders */\n\t\t\t\ttop: -34px;\n\t\t\t\tleft: -1px;\n\t\t\t}\n\t\t}\n\t\t") : "\n\t\t.".concat(ClassName.TABLE_STICKY, " {\n\t\t\t.").concat(ClassName.NUMBERED_COLUMN_BUTTON_DISABLED, ":first-of-type::after {\n\t\t\t\tcontent: '';\n\t\t\t\tdisplay: block;\n\t\t\t\theight: 33px;\n\t\t\t\twidth: 100%;\n\t\t\t\tbackground-color: ", "var(--ds-surface, white)", ";\n\t\t\t\tposition: absolute;\n\n\t\t\t\t/* the extra pixel is accounting for borders */\n\t\t\t\ttop: -34px;\n\t\t\t\tleft: -1px;\n\t\t\t}\n\t\t}\n\t\t"), ClassName.WITH_CONTROLS, ClassName.CORNER_CONTROLS, ClassName.ROW_CONTROLS, ClassName.NUMBERED_COLUMN, ClassName.NUMBERED_COLUMN_BUTTON, ClassName.NUMBERED_COLUMN_BUTTON, tableBorderSelectedColor, tableBorderSelectedColor, tableToolbarSelectedColor, akEditorUnitZIndex, "var(--ds-text-selected, ".concat(N0, ")"), ClassName.TABLE_CONTAINER, ClassName.NUMBERED_COLUMN_BUTTON, tableBorderColor, ClassName.IS_RESIZING, ClassName.WITH_CONTROLS, ClassName.NUMBERED_COLUMN_BUTTON, ClassName.NUMBERED_COLUMN_BUTTON_DISABLED, ClassName.NUMBERED_COLUMN_BUTTON, ClassName.NUMBERED_COLUMN_BUTTON_DISABLED, tableBorderSelectedColor, tableBorderSelectedColor, tableToolbarSelectedColor, akEditorUnitZIndex, "var(--ds-text-selected, ".concat(N0, ")"), ClassName.NUMBERED_COLUMN_BUTTON, ClassName.HOVERED_CELL_IN_DANGER, tableToolbarDeleteColor, tableBorderDeleteColor, "var(--ds-text-danger, ".concat(R500, ")"), akEditorUnitZIndex, ClassName.TABLE_NODE_WRAPPER, ClassName.COLUMN_CONTROLS_DECORATIONS, ClassName.TABLE_HEADER_CELL, ClassName.SELECTED_CELL, ClassName.HOVERED_CELL_IN_DANGER, ClassName.SELECTED_CELL, ClassName.HOVERED_CELL_IN_DANGER, akEditorSmallZIndex, ClassName.SELECTED_CELL, tableBorderSelectedColor, ClassName.SELECTED_CELL, tableCellSelectedColor, akEditorSmallZIndex, ClassName.HOVERED_CELL_IN_DANGER, ClassName.HOVERED_CELL_IN_DANGER, tableCellDeleteColor, akEditorUnitZIndex * 100, ClassName.HOVERED_CELL, ClassName.SELECTED_CELL, ClassName.TABLE_HEADER_CELL, ClassName.SELECTED_CELL, ClassName.TABLE_HEADER_CELL, ClassName.HOVERED_CELL, tableBorderSelectedColor, akEditorSmallZIndex, ClassName.HOVERED_CELL_IN_DANGER, tableBorderStyles(), akEditorUnitZIndex * 100, ClassName.HOVERED_NO_HIGHLIGHT, ClassName.HOVERED_CELL_IN_DANGER, tableBorderStyles(), akEditorUnitZIndex * 100, ClassName.DRAG_ROW_CONTROLS_WRAPPER, tableMarginTop, tableToolbarSize + 1, fg('platform_editor_table_column_selected_state_fix') ? '' : "z-index: ".concat(rowControlsZIndex + 4), ClassName.ROW_CONTROLS_WRAPPER, props.isDragAndDropEnabled && fg('platform_editor_numbered_column_misalignment') ? "\n\t\t\tmargin-top: ".concat(tableMarginTop, "px;\n\t\t\ttop: 0;\n\t\t\tleft: -").concat(tableToolbarSize + 1, "px;\n\t\t") : "\n\t\t\t/* top of corner control is table margin top - corner control height + 1 pixel of table border. */\n\t\t\ttop: ".concat(tableMarginTop - cornerControlHeight + 1, "px;\n\t\t\tmargin-top: 0;\n\t\t\tleft: -").concat(tableToolbarSize, "px;\n\t\t"), ClassName.DRAG_ROW_CONTROLS_WRAPPER, ClassName.TABLE_LEFT_SHADOW, ClassName.ROW_CONTROLS_WRAPPER, ClassName.TABLE_LEFT_SHADOW, akEditorUnitZIndex, ClassName.DRAG_COLUMN_CONTROLS_WRAPPER, tableMarginTop, ClassName.TABLE_STICKY, ClassName.DRAG_COLUMN_CONTROLS_WRAPPER, akEditorTableCellOnStickyHeaderZIndex - 4, fg('platform_editor_nested_table_drag_controls') ? "\n\t\t.".concat(ClassName.TABLE_CONTAINER, " {\n\t\t\t.").concat(ClassName.TABLE_STICKY, " .").concat(ClassName.DRAG_COLUMN_CONTROLS_WRAPPER, " {\n\t\t\t\tposition: absolute;\n\t\t\t\tz-index: ").concat(akEditorUnitZIndex, ";\n\t\t\t}\n\t\t}\n\t\t") : '', ClassName.TABLE_NODE_WRAPPER);
|
|
65
|
+
return css(_templateObject6 || (_templateObject6 = _taggedTemplateLiteral(["\n\t", ";\n\t", ";\n\t", ";\n\t", ";\n\t", ";\n\t", ";\n\t", ";\n\t", ";\n\t", ";\n\n\t.", " {\n\t\tmargin-bottom: 0;\n\t}\n\n\t.", " {\n\t\ttd.", ", th.", " {\n\t\t\tposition: relative;\n\t\t\toverflow: visible;\n\t\t}\n\n\t\ttd.", " {\n\t\t\tbackground-color: ", ";\n\n\t\t\t&::after {\n\t\t\t\theight: 100%;\n\t\t\t\tcontent: '';\n\t\t\t\tborder-left: 1px solid ", ";\n\t\t\t\tborder-bottom: 1px solid ", ";\n\t\t\t\tposition: absolute;\n\t\t\t\tright: 0px;\n\t\t\t\ttop: 0px;\n\t\t\t\tbottom: 0;\n\t\t\t\twidth: 100%;\n\t\t\t\tdisplay: inline-block;\n\t\t\t\tpointer-events: none;\n\t\t\t}\n\t\t}\n\t}\n\n\t.", " {\n\t\t", "\n\t}\n\n\t.", " {\n\t\t", "\n\t}\n\n\t", "\n\n\t", "\n\n\t/* Delete button */\n\t", "\n\t/* Ends Delete button */\n\n\t/* sticky styles */\n\t", "\n\n\t.", " .", ".sticky {\n\t\tposition: fixed !important;\n\t\t/* needs to be above row controls */\n\t\tz-index: ", " !important;\n\t\tbackground: ", ";\n\n\t\twidth: ", "px;\n\t\theight: ", "px;\n\t}\n\n\t.", ".sticky .", " {\n\t\tborder-bottom: 0px none;\n\t\tborder-right: 0px none;\n\n\t\theight: ", "px;\n\t\twidth: ", "px;\n\t}\n\n\t", "\n\n\t", "\n\n .", "\n .", "\n .", ".sticky {\n\t\tposition: fixed !important;\n\t\tz-index: ", " !important;\n\t\tdisplay: flex;\n\t\tborder-left: ", "px solid ", ";\n\t\tmargin-left: -", "px;\n\t}\n\n\t.", " col:first-of-type {\n\t\t/* moving rows out of a table layout does weird things in Chrome */\n\t\tborder-right: 1px solid ", ";\n\t}\n\n\ttr.sticky {\n\t\tpadding-top: ", "px;\n\t\tposition: fixed;\n\t\tdisplay: grid;\n\n\t\t/* to keep it above cell selection but below date and other nodes popups that are inside sticky header */\n\t\tz-index: ", ";\n\n\t\toverflow-y: visible;\n\t\toverflow-x: hidden;\n\n\t\tgrid-auto-flow: column;\n\n\t\t/* background for where controls apply */\n\t\tbackground: ", ";\n\t\tbox-sizing: content-box;\n\t\tbox-shadow: 0 6px 4px -4px ", ";\n\t\tmargin-left: -1px;\n\n\t\t&.no-pointer-events {\n\t\t\tpointer-events: none;\n\t\t}\n\t}\n\n\t.", " .", " {\n\t\tleft: unset;\n\t\tposition: fixed;\n\t\t/* needs to be above sticky header row and below date and other nodes popups that are inside sticky header */\n\t\tz-index: ", ";\n\t}\n\n\t.", ".", " .", " {\n\t\tpadding-bottom: ", "px;\n\t}\n\n\t.tableView-content-wrap:has(.tableView-content-wrap):has(\n\t\t\t.", "\n\t\t) {\n\t\tpadding-left: unset;\n\t}\n\n\t.tableView-content-wrap:has(.", ") {\n\t\tpadding-left: 15px;\n\t}\n\n\ttr.sticky th {\n\t\tborder-bottom: ", "px solid ", ";\n\t\tmargin-right: -1px;\n\t}\n\n\t.", " tr.sticky > th:last-child {\n\t\tborder-right-width: 1px;\n\t}\n\n\t/* add left edge for first cell */\n\t.", " tr.sticky > th:first-of-type {\n\t\tmargin-left: 0px;\n\t}\n\n\t/* add a little bit so the scroll lines up with the table */\n\t.", " tr.sticky::after {\n\t\tcontent: ' ';\n\t\twidth: ", "px;\n\t}\n\n\t/* To fix jumpiness caused in Chrome Browsers for sticky headers */\n\t.", " .sticky + tr {\n\t\tmin-height: 0px;\n\t}\n\n\t/* move resize line a little in sticky bar */\n\t.", ".", " {\n\t\ttr.sticky td.", ", tr.sticky th.", " {\n\t\t\t.", "::after {\n\t\t\t\tright: ", "px;\n\t\t\t}\n\t\t}\n\n\t\t/* when selected put it back to normal -- :not selector would be nicer */\n\t\ttr.sticky\n\t\t\ttd.", ".", ",\n\t\t\ttr.sticky\n\t\t\tth.", ".", " {\n\t\t\t.", "::after {\n\t\t\t\tright: ", "px;\n\t\t\t}\n\t\t}\n\t}\n\n\ttr.sticky .", ", tr.sticky .", " {\n\t\tz-index: 1;\n\t}\n\n\t.", " tr.sticky {\n\t\tpadding-top: ", "px;\n\t}\n\n\t", "\n\n\t.", ".sticky {\n\t\tborder-top: ", "px\n\t\t\tsolid ", ";\n\t}\n\n\t", "\n\t", "\n ", "\n\n .", " .", " {\n\t\theight: 0; /* stop overflow flash & set correct height in update-overflow-shadows.ts */\n\t}\n\n\t.less-padding {\n\t\tpadding: 0 ", "px;\n\n\t\t.", ", .", " {\n\t\t\tpadding: 0 ", "px;\n\n\t\t\t/* https://product-fabric.atlassian.net/browse/ED-16386\n\t\t\tFixes issue where the extra padding that is added here throws off the position\n\t\t\tof the rows control dot */\n\t\t\t&::after {\n\t\t\t\tright: 6px !important;\n\t\t\t}\n\t\t}\n\n\t\t.", ".", " {\n\t\t\tleft: -4px;\n\t\t}\n\n\t\t.", " {\n\t\t\tpadding: 0 ", "px;\n\t\t}\n\n\t\t.", ".", " {\n\t\t\tleft: -8px;\n\t\t}\n\n\t\t&.", "[data-number-column='true'] {\n\t\t\tpadding-left: ", "px;\n\t\t}\n\t\t.", ", .", " {\n\t\t\twidth: ", "px;\n\t\t}\n\n\t\t.", " {\n\t\t\tleft: 6px;\n\t\t}\n\t\t.", ".", " {\n\t\t\tleft: 8px;\n\t\t}\n\n\t\t.", " {\n\t\t\tleft: calc(100% - 6px);\n\t\t}\n\t\t.", ".", " {\n\t\t\tleft: calc(100% - 16px);\n\t\t}\n\t}\n\n\t> .", " {\n\t\t/**\n * Prevent margins collapsing, aids with placing the gap-cursor correctly\n * @see https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Box_Model/Mastering_margin_collapsing\n *\n * TODO: Enable this, many tests will fail!\n * border-top: 1px solid transparent;\n */\n\t}\n\n\t/* Breakout only works on top level unless wrapped in fragment mark */\n\t", "\n\n\t", ";\n\t", ";\n\n\t/* Corner controls */\n\t.", " {\n\t\twidth: ", "px;\n\t\theight: ", "px;\n\t\tdisplay: none;\n\n\t\t.", " {\n\t\t\tposition: relative;\n\n\t\t\t", ";\n\t\t}\n\t}\n\n\t.", ".sticky {\n\t\t.", " {\n\t\t\t/* sticky row insert dot overlaps other row insert and messes things up */\n\t\t\tdisplay: none !important;\n\t\t}\n\t}\n\n\t.", " {\n\t\tposition: absolute;\n\t\ttop: 0;\n\t\twidth: ", "px;\n\t\theight: ", "px;\n\t\tborder: 1px solid ", ";\n\t\tborder-radius: 0;\n\t\tborder-top-left-radius: ", "px;\n\t\tbackground: ", ";\n\t\tbox-sizing: border-box;\n\t\tpadding: 0;\n\t\t:focus {\n\t\t\toutline: none;\n\t\t}\n\t}\n\t.active .", " {\n\t\tborder-color: ", ";\n\t\tbackground: ", ";\n\t}\n\n\t.", "[data-number-column='true'] {\n\t\t.", ", .", " {\n\t\t\twidth: ", "px;\n\t\t}\n\t\t.", " .", " {\n\t\t\tborder-right-width: 0;\n\t\t}\n\t}\n\n\t:not(.", ") .", ":hover {\n\t\tborder-color: ", ";\n\t\tbackground: ", ";\n\t\tcursor: pointer;\n\t}\n\n\t:not(.", ")\n\t\t.", ".", " {\n\t\tborder-color: ", ";\n\t\tbackground: ", ";\n\t}\n\n\t/* Row controls */\n\t.", " {\n\t\twidth: ", "px;\n\t\tbox-sizing: border-box;\n\t\tdisplay: none;\n\t\tposition: relative;\n\n\t\t", ";\n\n\t\t.", " {\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: column;\n\t\t}\n\t\t.", ":last-child > button {\n\t\t\tborder-bottom-left-radius: ", "px;\n\t\t}\n\t\t.", " {\n\t\t\tposition: relative;\n\t\t\tmargin-top: -1px;\n\t\t}\n\t\t.", ":hover,\n\t\t\t.", ".active,\n\t\t\t.", ":hover {\n\t\t\tz-index: ", ";\n\t\t}\n\n\t\t", "\n\t}\n\n\t.", " {\n\t\tdisplay: grid;\n\t\talign-items: center;\n\t\tposition: absolute;\n\t\tz-index: ", ";\n\n\t\t.", " {\n\t\t\tposition: absolute;\n\t\t\talign-self: end;\n\t\t\theight: 100%;\n\t\t\twidth: 18px;\n\t\t}\n\n\t\t.", " {\n\t\t\tposition: absolute;\n\t\t\tbottom: -3px;\n\t\t\tleft: 2px;\n\t\t\tbackground-color: ", ";\n\t\t\theight: 4px;\n\t\t\twidth: 4px;\n\t\t\tborder-radius: 50%;\n\t\t\tpointer-events: none;\n\t\t}\n\t}\n\n\t.", " {\n\t\t.", " {\n\t\t\theight: 24px;\n\t\t\tposition: absolute;\n\t\t\ttop: ", ";\n\t\t\tz-index: ", ";\n\t\t}\n\n\t\t.", " {\n\t\t\tposition: absolute;\n\t\t\theight: 24px;\n\t\t\twidth: 100%;\n\t\t}\n\n\t\t.", " {\n\t\t\tbackground-color: ", ";\n\t\t\theight: 4px;\n\t\t\twidth: 4px;\n\t\t\tborder-radius: 50%;\n\t\t\tposition: absolute;\n\t\t\tright: -2px;\n\t\t}\n\t}\n\n\t.", " {\n\t\tbackground: none;\n\t\tborder: none;\n\t\toutline: none;\n\t\tposition: absolute;\n\t\tmargin: 0;\n\t\tpadding: 0;\n\t\tdisplay: flex;\n\t\talign-items: center;\n\t\tcursor: pointer;\n\n\t\t:focus {\n\t\t\toutline: none;\n\t\t}\n\t}\n\n\t.", " {\n\t\tcursor: grab;\n\t\tpointer-events: auto;\n\n\t\tline-height: 0;\n\t\tpadding: 0;\n\t\tborder-radius: 6px;\n\t\twidth: max-content;\n\t\tborder: 2px solid ", ";\n\n\t\tdisplay: flex;\n\t\tjustify-content: center;\n\t\talign-items: center;\n\t\tbackground: transparent;\n\t\toutline: none;\n\n\t\t&.placeholder {\n\t\t\tbackground-color: transparent;\n\t\t\tborder: 2px solid transparent;\n\t\t}\n\n\t\t&.", " {\n\t\t\tcursor: pointer;\n\t\t\t& svg {\n\t\t\t\t& > rect.", " {\n\t\t\t\t\tfill: ", ";\n\t\t\t\t}\n\t\t\t\t& > rect {\n\t\t\t\t\tfill: ", ";\n\t\t\t\t}\n\t\t\t\t& > g > rect {\n\t\t\t\t\tfill: ", ";\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\t&:not(.", ") {\n\t\t\t& svg {\n\t\t\t\trect {\n\t\t\t\t\tfill: ", ";\n\t\t\t\t}\n\t\t\t\tg {\n\t\t\t\t\tfill: ", ";\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t&:hover {\n\t\t\t\tsvg {\n\t\t\t\t\trect {\n\t\t\t\t\t\tfill: ", ";\n\t\t\t\t\t}\n\t\t\t\t\tg {\n\t\t\t\t\t\tfill: ", ";\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t&:active {\n\t\t\t\tcursor: grabbing;\n\t\t\t}\n\n\t\t\t&.selected {\n\t\t\t\t:focus {\n\t\t\t\t\toutline: 2px solid ", ";\n\t\t\t\t\toutline-offset: 1px;\n\t\t\t\t}\n\n\t\t\t\t&:active {\n\t\t\t\t\toutline: none;\n\t\t\t\t}\n\n\t\t\t\tsvg {\n\t\t\t\t\trect {\n\t\t\t\t\t\tfill: ", ";\n\t\t\t\t\t}\n\t\t\t\t\tg {\n\t\t\t\t\t\tfill: ", ";\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t&.danger {\n\t\t\t\tsvg {\n\t\t\t\t\trect {\n\t\t\t\t\t\tfill: ", ";\n\t\t\t\t\t}\n\t\t\t\t\tg {\n\t\t\t\t\t\tfill: ", ";\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\t", "\n\n\t:not(.", ") .", " {\n\t\t", "\n\t\t", "\n\t}\n\n\t/* Numbered column */\n\t.", " {\n\t\tposition: relative;\n\t\tfloat: right;\n\t\tmargin-left: ", "px;\n\t\ttop: ", "px;\n\t\twidth: ", "px;\n\t\tbox-sizing: border-box;\n\t}\n\n\t.", " {\n\t\tborder: 1px solid ", ";\n\t\tbox-sizing: border-box;\n\t\tmargin-top: -1px;\n\t\tpadding-bottom: 2px;\n\t\tpadding: 10px 2px;\n\t\ttext-align: center;\n\t\tfont-size: ", ";\n\t\tbackground-color: ", ";\n\t\tcolor: ", ";\n\t\tborder-color: ", ";\n\n\t\t:first-child:not(style),\n\t\tstyle:first-child + * {\n\t\t\tmargin-top: 0;\n\t\t}\n\t\t:last-child {\n\t\t\tborder-bottom: 1px solid ", ";\n\t\t}\n\t}\n\n\t/* add a background above the first numbered column cell when sticky header is engaged\n\twhich hides the table when scrolling */\n\t", "\n\n\t.", " {\n\t\t.", ", .", " {\n\t\t\tdisplay: block;\n\t\t}\n\t\t.", " {\n\t\t\tpadding-left: 0px;\n\n\t\t\t.", " {\n\t\t\t\tborder-left: 0 none;\n\t\t\t}\n\n\t\t\t.", ".active {\n\t\t\t\tborder-bottom: 1px solid ", ";\n\t\t\t\tborder-color: ", ";\n\t\t\t\tbackground-color: ", ";\n\t\t\t\tposition: relative;\n\t\t\t\tz-index: ", ";\n\t\t\t\tcolor: ", ";\n\t\t\t}\n\t\t}\n\n\t\t/* nested tables should be ignored when we apply border-left: 0 to the parent table */\n\t\t.", " {\n\t\t\t.", " {\n\t\t\t\tborder-left: 1px solid ", ";\n\t\t\t}\n\t\t}\n\t}\n\t:not(.", ") .", " {\n\t\t.", ":not(.", ") {\n\t\t\tcursor: pointer;\n\t\t}\n\t\t.", ":not(.", "):hover {\n\t\t\tborder-bottom: 1px solid ", ";\n\t\t\tborder-color: ", ";\n\t\t\tbackground-color: ", ";\n\t\t\tposition: relative;\n\t\t\tz-index: ", ";\n\t\t\tcolor: ", ";\n\t\t}\n\t\t.", ".", " {\n\t\t\tbackground-color: ", ";\n\t\t\tborder: 1px solid ", ";\n\t\t\tborder-left: 0;\n\t\t\tcolor: ", ";\n\t\t\tposition: relative;\n\t\t\tz-index: ", ";\n\t\t}\n\t}\n\n\t/* Table */\n\t.", " > table {\n\t\ttable-layout: fixed;\n\t\twhite-space: normal;\n\t\tborder-top: none;\n\t\t/* 1px border width offset added here to prevent unwanted overflow and scolling - ED-16212 */\n\t\tmargin-right: -1px;\n\t\t/* Allows better positioning for the shadow sentinels - ED-16668 */\n\t\tposition: relative;\n\n\t\t> tbody > tr {\n\t\t\twhite-space: pre-wrap;\n\t\t}\n\n\t\t.", " + * {\n\t\t\tmargin-top: 0;\n\t\t}\n\n\t\t/*\n * Headings have a top margin by default, but we don't want this on the\n * first heading within table header cells.\n *\n * This specifically sets margin-top for the first heading within a header\n * cell when center/right aligned.\n */\n\t\tth.", " > .fabric-editor-block-mark {\n\t\t\t> h1:first-of-type,\n\t\t\t> h2:first-of-type,\n\t\t\t> h3:first-of-type,\n\t\t\t> h4:first-of-type,\n\t\t\t> h5:first-of-type,\n\t\t\t> h6:first-of-type {\n\t\t\t\tmargin-top: 0;\n\t\t\t}\n\t\t}\n\n\t\t.", ", .", " {\n\t\t\tposition: relative;\n\t\t}\n\t\t/* Give selected cells a blue overlay */\n\t\t.", "::after, .", "::after {\n\t\t\tz-index: ", ";\n\t\t\tposition: absolute;\n\t\t\tcontent: '';\n\t\t\tleft: 0;\n\t\t\tright: 0;\n\t\t\ttop: 0;\n\t\t\tbottom: 0;\n\t\t\twidth: 100%;\n\t\t\tpointer-events: none;\n\t\t}\n\t\t.", " {\n\t\t\tborder: 1px solid ", ";\n\t\t}\n\t\t.", "::after {\n\t\t\tbackground: ", ";\n\t\t\tz-index: ", ";\n\t\t}\n\t\tth.", "::after, td.", "::after {\n\t\t\tbackground: ", ";\n\t\t\tz-index: ", ";\n\t\t}\n\t\ttd.", ",\n\t\t\ttd.", ",\n\t\t\tth.", ".", ",\n\t\t\tth.", ".", " {\n\t\t\t&::after {\n\t\t\t\theight: 100%;\n\t\t\t\twidth: 100%;\n\t\t\t\tborder: 1px solid ", ";\n\t\t\t\tcontent: '';\n\t\t\t\tposition: absolute;\n\t\t\t\tleft: -1px;\n\t\t\t\ttop: -1px;\n\t\t\t\tbottom: 0;\n\t\t\t\tz-index: ", ";\n\t\t\t\tdisplay: inline-block;\n\t\t\t\tpointer-events: none;\n\t\t\t}\n\t\t\t&.", "::after {\n\t\t\t\t", ";\n\t\t\t\tz-index: ", ";\n\t\t\t}\n\n\t\t\t&.", ".", "::after {\n\t\t\t\t", ";\n\t\t\t\tz-index: ", ";\n\t\t\t}\n\t\t}\n\t}\n\n\t/* override for DnD controls */\n\t.", " {\n\t\tposition: absolute;\n\t\tmargin-top: ", "px;\n\t\tleft: -", "px;\n\t\t", "\n\t}\n\n\t.", " {\n\t\tposition: absolute;\n\t\t/* this is to fix the misalignment of the numbered column in live page view mode */\n\t\t", "\n\t}\n\n\t.", ".", ",\n\t\t.", ".", " {\n\t\tz-index: ", ";\n\t}\n\n\t.", " {\n\t\tposition: absolute;\n\t\ttop: ", "px;\n\t}\n\n\t.", " .", " {\n\t\tposition: fixed;\n\t\t/* higher zIndex than sticky header which is akEditorTableCellOnStickyHeaderZIndex - 5 */\n\t\tz-index: ", ";\n\t}\n\n\t/* nested tables */\n\t", "\n\n\t.", " {\n\t\tpadding-bottom: 0px;\n\t\t/* fixes gap cursor height */\n\t\toverflow: auto;\n\t\toverflow-y: hidden;\n\t\tposition: relative;\n\t}\n"])), tableSharedStyle(), columnControlsLineMarker(), hoveredDeleteButton(), hoveredCell(), hoveredWarningCell, insertLine(), resizeHandle(), rangeSelectionStyles, viewModeSortStyles(), ClassName.LAST_ITEM_IN_CELL, ClassName.TABLE_NODE_WRAPPER, ClassName.TABLE_CELL, ClassName.TABLE_HEADER_CELL, ClassName.TABLE_CELL, tableCellBackgroundColor, tableBorderColor, tableBorderColor, ClassName.CONTROLS_FLOATING_BUTTON_COLUMN, insertColumnButtonWrapper(), ClassName.CONTROLS_FLOATING_BUTTON_ROW, insertRowButtonWrapper(), dragInsertButtonWrapper(), dragCornerControlButton(), DeleteButton(), fg('platform_editor_nested_tables_sticky_header_bug') ? "\n\t\t".concat(fg('platform_editor_number_column_sticky_header_broken') ? ".".concat(ClassName.TABLE_STICKY, " > .").concat(props.isDragAndDropEnabled ? ClassName.DRAG_ROW_CONTROLS_WRAPPER : ClassName.ROW_CONTROLS_WRAPPER, " .").concat(ClassName.NUMBERED_COLUMN, " .").concat(ClassName.NUMBERED_COLUMN_BUTTON, ":first-of-type {") : ".".concat(ClassName.TABLE_STICKY, " > .").concat(ClassName.DRAG_ROW_CONTROLS_WRAPPER, " .").concat(ClassName.NUMBERED_COLUMN, " .").concat(ClassName.NUMBERED_COLUMN_BUTTON, ":first-of-type {"), "\n\t\t\tmargin-top: ").concat(fg('platform_editor_number_column_sticky_header_bug') ? stickyRowOffsetTop : stickyRowOffsetTop + 2, "px;\n\t\t\twidth: ").concat(akEditorTableNumberColumnWidth, "px;\n\n\t\t\tposition: fixed !important;\n\t\t\tz-index: ").concat(akEditorStickyHeaderZIndex, " !important;\n\t\t\tbox-shadow: 0px -").concat(stickyRowOffsetTop, "px ", "var(--ds-surface, white)", ";\n\t\t\tborder-right: 0 none;\n\t\t\t/* top set by NumberColumn component */\n\t\t}\n\t\t") : "\n \t.".concat(ClassName.TABLE_STICKY, " .").concat(ClassName.NUMBERED_COLUMN, " .").concat(ClassName.NUMBERED_COLUMN_BUTTON, ":first-of-type {\n\t\t\tmargin-top: ").concat(fg('platform_editor_number_column_sticky_header_bug') ? stickyRowOffsetTop : stickyRowOffsetTop + 2, "px;\n\t\t\twidth: ").concat(akEditorTableNumberColumnWidth, "px;\n\n\t\t\tposition: fixed !important;\n\t\t\tz-index: ").concat(akEditorStickyHeaderZIndex, " !important;\n\t\t\tbox-shadow: 0px -").concat(stickyRowOffsetTop, "px ", "var(--ds-surface, white)", ";\n\t\t\tborder-right: 0 none;\n\t\t\t/* top set by NumberColumn component */\n\t\t}\n\t\t"), ClassName.TABLE_STICKY, ClassName.CORNER_CONTROLS, akEditorSmallZIndex, "var(--ds-surface, white)", tableToolbarSize, tableToolbarSize, ClassName.CORNER_CONTROLS, ClassName.CONTROLS_CORNER_BUTTON, tableToolbarSize, tableToolbarSize, tableStickyHeaderColumnControlsDecorationsStyle(), tableStickyHeaderFirefoxFixStyle(), ClassName.TABLE_STICKY, ClassName.ROW_CONTROLS, ClassName.ROW_CONTROLS_BUTTON_WRAP, akEditorStickyHeaderZIndex, tableToolbarSize, "var(--ds-surface, white)", tableToolbarSize, ClassName.TABLE_STICKY, "var(--ds-surface, green)", stickyRowOffsetTop, akEditorTableCellOnStickyHeaderZIndex - 5, "var(--ds-surface, white)", "var(--ds-shadow-overflow-perimeter, ".concat(N40A, ")"), ClassName.TABLE_STICKY, ClassName.TABLE_STICKY_SHADOW, akEditorTableCellOnStickyHeaderZIndex, ClassName.WITH_CONTROLS, ClassName.TABLE_STICKY, ClassName.TABLE_STICKY_SHADOW, tableToolbarSize, ClassName.NESTED_TABLE_WITH_CONTROLS, ClassName.NESTED_TABLE_WITH_CONTROLS, stickyHeaderBorderBottomWidth, tableBorderColor, ClassName.TABLE_STICKY, ClassName.TABLE_STICKY, ClassName.TABLE_STICKY, insertColumnButtonOffset + 1, ClassName.TABLE_STICKY, ClassName.TABLE_CONTAINER, ClassName.TABLE_STICKY, ClassName.WITH_RESIZE_LINE, ClassName.WITH_RESIZE_LINE, ClassName.RESIZE_HANDLE_DECORATION, (resizeHandlerAreaWidth - resizeLineWidth) / 2 + 1, ClassName.WITH_RESIZE_LINE, ClassName.SELECTED_CELL, ClassName.WITH_RESIZE_LINE, ClassName.SELECTED_CELL, ClassName.RESIZE_HANDLE_DECORATION, (resizeHandlerAreaWidth - resizeLineWidth) / 2, ClassName.HOVERED_CELL, ClassName.SELECTED_CELL, ClassName.WITH_CONTROLS, tableControlsSpacing, fg('platform_editor_nested_tables_sticky_header_bug') ? "\n\t\t.".concat(ClassName.WITH_CONTROLS, ".").concat(ClassName.TABLE_STICKY, " > .").concat(ClassName.DRAG_ROW_CONTROLS_WRAPPER, "\n\t\t\t.").concat(ClassName.NUMBERED_COLUMN, "\n\t\t\t.").concat(ClassName.NUMBERED_COLUMN_BUTTON, ":first-of-type {\n\t\t\tmargin-top: ").concat(fg('platform_editor_number_column_sticky_header_bug') ? tableControlsSpacing : tableControlsSpacing + 2, "px;\n\t\t}\n\t\t") : "\n\t\t.".concat(ClassName.WITH_CONTROLS, ".").concat(ClassName.TABLE_STICKY, "\n\t\t\t.").concat(ClassName.NUMBERED_COLUMN, "\n\t\t\t.").concat(ClassName.NUMBERED_COLUMN_BUTTON, ":first-of-type {\n\t\t\tmargin-top: ").concat(fg('platform_editor_number_column_sticky_header_bug') ? tableControlsSpacing : tableControlsSpacing + 2, "px;\n\t\t}\n\t\t"), ClassName.CORNER_CONTROLS, fg('platform_editor_number_column_sticky_header_bug') ? tableControlsSpacing - tableToolbarSize : tableControlsSpacing - tableToolbarSize + 2, "var(--ds-surface, white)", sentinelStyles, OverflowShadow((_props$featureFlags = props.featureFlags) === null || _props$featureFlags === void 0 ? void 0 : _props$featureFlags.tableDragAndDrop), stickyScrollbarStyles, ClassName.TABLE_STICKY, ClassName.TABLE_STICKY_SHADOW, tablePadding, ClassName.DRAG_ROW_CONTROLS_WRAPPER, ClassName.ROW_CONTROLS_WRAPPER, tablePadding, ClassName.DRAG_ROW_CONTROLS_WRAPPER, ClassName.TABLE_CHROMELESS, ClassName.DRAG_COLUMN_CONTROLS_WRAPPER, tablePadding, ClassName.DRAG_COLUMN_CONTROLS_WRAPPER, ClassName.TABLE_CHROMELESS, ClassName.TABLE_CONTAINER, akEditorTableNumberColumnWidth + tablePadding - 1, ClassName.TABLE_LEFT_SHADOW, ClassName.TABLE_RIGHT_SHADOW, tableOverflowShadowWidth, ClassName.TABLE_LEFT_SHADOW, ClassName.TABLE_LEFT_SHADOW, ClassName.TABLE_CHROMELESS, ClassName.TABLE_RIGHT_SHADOW, ClassName.TABLE_RIGHT_SHADOW, ClassName.TABLE_CHROMELESS, ClassName.NODEVIEW_WRAPPER, breakoutWidthStyling(), columnControlsDecoration(), rowControlsWrapperDotStyle(), ClassName.CORNER_CONTROLS, tableToolbarSize + 1, cornerControlHeight, ClassName.CORNER_CONTROLS_INSERT_ROW_MARKER, InsertMarker("\n left: -11px;\n top: 9px;\n "), ClassName.CORNER_CONTROLS, ClassName.CORNER_CONTROLS_INSERT_ROW_MARKER, ClassName.CONTROLS_CORNER_BUTTON, tableToolbarSize + 1, tableToolbarSize + 1, tableBorderColor, tableBorderRadiusSize, tableHeaderCellBackgroundColor, ClassName.CONTROLS_CORNER_BUTTON, tableBorderSelectedColor, tableToolbarSelectedColor, ClassName.TABLE_CONTAINER, ClassName.CORNER_CONTROLS, ClassName.CONTROLS_CORNER_BUTTON, akEditorTableToolbarSize + akEditorTableNumberColumnWidth + 1, ClassName.ROW_CONTROLS, ClassName.CONTROLS_BUTTON, ClassName.IS_RESIZING, ClassName.CONTROLS_CORNER_BUTTON, tableBorderSelectedColor, tableToolbarSelectedColor, ClassName.IS_RESIZING, ClassName.CONTROLS_CORNER_BUTTON, ClassName.HOVERED_CELL_IN_DANGER, tableBorderDeleteColor, tableToolbarDeleteColor, ClassName.ROW_CONTROLS, tableToolbarSize, InsertMarker("\n bottom: -1px;\n left: -11px;\n "), ClassName.ROW_CONTROLS_INNER, ClassName.ROW_CONTROLS_BUTTON_WRAP, tableBorderRadiusSize, ClassName.ROW_CONTROLS_BUTTON_WRAP, ClassName.ROW_CONTROLS_BUTTON_WRAP, ClassName.ROW_CONTROLS_BUTTON_WRAP, ClassName.CONTROLS_BUTTON, akEditorUnitZIndex, HeaderButton("\n border-bottom: 1px solid ".concat(tableBorderColor, ";\n border-right: 0px;\n border-radius: 0;\n height: 100%;\n width: ").concat(tableToolbarSize, "px;\n\n .").concat(ClassName.CONTROLS_BUTTON_OVERLAY, " {\n position: absolute;\n width: 30px;\n height: 50%;\n right: 0;\n bottom: 0;\n }\n .").concat(ClassName.CONTROLS_BUTTON_OVERLAY, ":first-of-type {\n top: 0;\n }\n ")), ClassName.DRAG_ROW_CONTROLS, fg('platform_editor_table_column_selected_state_fix') ? rowControlsZIndex + 4 : akEditorUnitZIndex, ClassName.DRAG_ROW_FLOATING_INSERT_DOT_WRAPPER, ClassName.DRAG_ROW_FLOATING_INSERT_DOT, "var(--ds-background-accent-gray-subtler, #C1C7D0)", ClassName.DRAG_COLUMN_CONTROLS, ClassName.DRAG_COLUMN_CONTROLS_INNER, "var(--ds-space-negative-150, -12px)", resizeHandlerZIndex, ClassName.DRAG_COLUMN_FLOATING_INSERT_DOT_WRAPPER, ClassName.DRAG_COLUMN_FLOATING_INSERT_DOT, "var(--ds-background-accent-gray-subtler, #C1C7D0)", ClassName.DRAG_HANDLE_BUTTON_CLICKABLE_ZONE, ClassName.DRAG_HANDLE_BUTTON_CONTAINER, "var(--ds-surface, ".concat(N0, ")"), ClassName.DRAG_HANDLE_DISABLED, ClassName.DRAG_HANDLE_MINIMISED, "var(--ds-background-accent-gray-subtler, #DCDFE4)", "var(--ds-background-accent-gray-subtlest, #F4F5F7)", "var(--ds-icon-disabled, #BFDBF847)", ClassName.DRAG_HANDLE_DISABLED, "var(--ds-background-accent-gray-subtler, #DCDFE4)", "var(--ds-icon-subtle, #626f86)", "var(--ds-background-accent-blue-subtle, #579DFF)", "var(--ds-icon-inverse, #FFF)", "var(--ds-border-focused, #2684FF)", "var(--ds-background-accent-blue-subtle, #579dff)", "var(--ds-icon-inverse, #fff)", "var(--ds-background-accent-red-subtler-pressed, #F87462)", "var(--ds-border-inverse, #FFF)", floatingColumnControls(), ClassName.IS_RESIZING, ClassName.ROW_CONTROLS, HeaderButtonHover(), HeaderButtonDanger(), ClassName.NUMBERED_COLUMN, akEditorTableToolbarSize, (fg('platform_editor_number_column_sticky_header_broken') ? props.isDragAndDropEnabled : (_props$featureFlags2 = props.featureFlags) === null || _props$featureFlags2 === void 0 ? void 0 : _props$featureFlags2.tableDragAndDrop) || editorExperiment('support_table_in_comment_jira', true) ? 0 : akEditorTableToolbarSize, akEditorTableNumberColumnWidth + 1, ClassName.NUMBERED_COLUMN_BUTTON, tableBorderColor, relativeFontSizeToBase16(14), tableHeaderCellBackgroundColor, tableTextColor, tableBorderColor, tableBorderColor, fg('platform_editor_nested_tables_sticky_header_bug') ? "\n\t\t".concat(fg('platform_editor_number_column_sticky_header_broken') ? ".".concat(ClassName.TABLE_STICKY, " > .").concat(props.isDragAndDropEnabled ? ClassName.DRAG_ROW_CONTROLS_WRAPPER : ClassName.ROW_CONTROLS_WRAPPER, " {\n\t\t\t\t.").concat(ClassName.NUMBERED_COLUMN_BUTTON_DISABLED, ":first-of-type::after {") : ".".concat(ClassName.TABLE_STICKY, " > .").concat(ClassName.DRAG_ROW_CONTROLS_WRAPPER, " {\n\t\t\t\t.").concat(ClassName.NUMBERED_COLUMN_BUTTON_DISABLED, ":first-of-type::after {"), "\n\t\t\t\tcontent: '';\n\t\t\t\tdisplay: block;\n\t\t\t\theight: 33px;\n\t\t\t\twidth: 100%;\n\t\t\t\tbackground-color: ", "var(--ds-surface, white)", ";\n\t\t\t\tposition: absolute;\n\n\t\t\t\t/* the extra pixel is accounting for borders */\n\t\t\t\ttop: -34px;\n\t\t\t\tleft: -1px;\n\t\t\t}\n\t\t}\n\t\t") : "\n\t\t.".concat(ClassName.TABLE_STICKY, " {\n\t\t\t.").concat(ClassName.NUMBERED_COLUMN_BUTTON_DISABLED, ":first-of-type::after {\n\t\t\t\tcontent: '';\n\t\t\t\tdisplay: block;\n\t\t\t\theight: 33px;\n\t\t\t\twidth: 100%;\n\t\t\t\tbackground-color: ", "var(--ds-surface, white)", ";\n\t\t\t\tposition: absolute;\n\n\t\t\t\t/* the extra pixel is accounting for borders */\n\t\t\t\ttop: -34px;\n\t\t\t\tleft: -1px;\n\t\t\t}\n\t\t}\n\t\t"), ClassName.WITH_CONTROLS, ClassName.CORNER_CONTROLS, ClassName.ROW_CONTROLS, ClassName.NUMBERED_COLUMN, ClassName.NUMBERED_COLUMN_BUTTON, ClassName.NUMBERED_COLUMN_BUTTON, tableBorderSelectedColor, tableBorderSelectedColor, tableToolbarSelectedColor, akEditorUnitZIndex, "var(--ds-text-selected, ".concat(N0, ")"), ClassName.TABLE_CONTAINER, ClassName.NUMBERED_COLUMN_BUTTON, tableBorderColor, ClassName.IS_RESIZING, ClassName.WITH_CONTROLS, ClassName.NUMBERED_COLUMN_BUTTON, ClassName.NUMBERED_COLUMN_BUTTON_DISABLED, ClassName.NUMBERED_COLUMN_BUTTON, ClassName.NUMBERED_COLUMN_BUTTON_DISABLED, tableBorderSelectedColor, tableBorderSelectedColor, tableToolbarSelectedColor, akEditorUnitZIndex, "var(--ds-text-selected, ".concat(N0, ")"), ClassName.NUMBERED_COLUMN_BUTTON, ClassName.HOVERED_CELL_IN_DANGER, tableToolbarDeleteColor, tableBorderDeleteColor, "var(--ds-text-danger, ".concat(R500, ")"), akEditorUnitZIndex, ClassName.TABLE_NODE_WRAPPER, ClassName.COLUMN_CONTROLS_DECORATIONS, ClassName.TABLE_HEADER_CELL, ClassName.SELECTED_CELL, ClassName.HOVERED_CELL_IN_DANGER, ClassName.SELECTED_CELL, ClassName.HOVERED_CELL_IN_DANGER, akEditorSmallZIndex, ClassName.SELECTED_CELL, tableBorderSelectedColor, ClassName.SELECTED_CELL, tableCellSelectedColor, akEditorSmallZIndex, ClassName.HOVERED_CELL_IN_DANGER, ClassName.HOVERED_CELL_IN_DANGER, tableCellDeleteColor, akEditorUnitZIndex * 100, ClassName.HOVERED_CELL, ClassName.SELECTED_CELL, ClassName.TABLE_HEADER_CELL, ClassName.SELECTED_CELL, ClassName.TABLE_HEADER_CELL, ClassName.HOVERED_CELL, tableBorderSelectedColor, akEditorSmallZIndex, ClassName.HOVERED_CELL_IN_DANGER, tableBorderStyles(), akEditorUnitZIndex * 100, ClassName.HOVERED_NO_HIGHLIGHT, ClassName.HOVERED_CELL_IN_DANGER, tableBorderStyles(), akEditorUnitZIndex * 100, ClassName.DRAG_ROW_CONTROLS_WRAPPER, tableMarginTop, tableToolbarSize + 1, fg('platform_editor_table_column_selected_state_fix') ? '' : "z-index: ".concat(rowControlsZIndex + 4), ClassName.ROW_CONTROLS_WRAPPER, props.isDragAndDropEnabled && fg('platform_editor_numbered_column_misalignment') ? "\n\t\t\tmargin-top: ".concat(tableMarginTop, "px;\n\t\t\ttop: 0;\n\t\t\tleft: -").concat(tableToolbarSize + 1, "px;\n\t\t") : "\n\t\t\t/* top of corner control is table margin top - corner control height + 1 pixel of table border. */\n\t\t\ttop: ".concat(tableMarginTop - cornerControlHeight + 1, "px;\n\t\t\tmargin-top: 0;\n\t\t\tleft: -").concat(tableToolbarSize, "px;\n\t\t"), ClassName.DRAG_ROW_CONTROLS_WRAPPER, ClassName.TABLE_LEFT_SHADOW, ClassName.ROW_CONTROLS_WRAPPER, ClassName.TABLE_LEFT_SHADOW, akEditorUnitZIndex, ClassName.DRAG_COLUMN_CONTROLS_WRAPPER, tableMarginTop, ClassName.TABLE_STICKY, ClassName.DRAG_COLUMN_CONTROLS_WRAPPER, akEditorTableCellOnStickyHeaderZIndex - 4, fg('platform_editor_nested_table_drag_controls') ? "\n\t\t.".concat(ClassName.TABLE_CONTAINER, " {\n\t\t\t.").concat(ClassName.TABLE_STICKY, " .").concat(ClassName.DRAG_COLUMN_CONTROLS_WRAPPER, " {\n\t\t\t\tposition: absolute;\n\t\t\t\tz-index: ").concat(akEditorUnitZIndex, ";\n\t\t\t}\n\t\t}\n\t\t") : '', ClassName.TABLE_NODE_WRAPPER);
|
|
66
66
|
};
|
|
67
67
|
|
|
68
68
|
// TODO: DSP-4139 - Remove this when we have a better solution for the table toolbar
|
|
@@ -3,7 +3,9 @@ import type { Node as PMNode } from '@atlaskit/editor-prosemirror/model';
|
|
|
3
3
|
import type { EditorView, NodeView } from '@atlaskit/editor-prosemirror/view';
|
|
4
4
|
import TableNodeView from './TableNodeViewBase';
|
|
5
5
|
export default class TableRow extends TableNodeView<HTMLTableRowElement> implements NodeView {
|
|
6
|
+
private nodeVisibilityObserverCleanupFn?;
|
|
6
7
|
constructor(node: PMNode, view: EditorView, getPos: () => number | undefined, eventDispatcher: EventDispatcher);
|
|
8
|
+
subscribeWhenRowVisible(): void;
|
|
7
9
|
/**
|
|
8
10
|
* Variables
|
|
9
11
|
*/
|
|
@@ -3,7 +3,9 @@ import type { Node as PMNode } from '@atlaskit/editor-prosemirror/model';
|
|
|
3
3
|
import type { EditorView, NodeView } from '@atlaskit/editor-prosemirror/view';
|
|
4
4
|
import TableNodeView from './TableNodeViewBase';
|
|
5
5
|
export default class TableRow extends TableNodeView<HTMLTableRowElement> implements NodeView {
|
|
6
|
+
private nodeVisibilityObserverCleanupFn?;
|
|
6
7
|
constructor(node: PMNode, view: EditorView, getPos: () => number | undefined, eventDispatcher: EventDispatcher);
|
|
8
|
+
subscribeWhenRowVisible(): void;
|
|
7
9
|
/**
|
|
8
10
|
* Variables
|
|
9
11
|
*/
|