@atlaskit/editor-plugin-table 7.6.3 → 7.6.5
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 +13 -0
- package/dist/cjs/commands/column-resize.js +62 -16
- package/dist/cjs/commands/go-to-next-cell.js +5 -2
- package/dist/cjs/commands/misc.js +3 -2
- package/dist/cjs/commands-with-analytics.js +8 -2
- package/dist/cjs/nodeviews/ExternalDropTargets.js +2 -0
- package/dist/cjs/nodeviews/TableComponent.js +8 -6
- package/dist/cjs/nodeviews/TableContainer.js +32 -20
- package/dist/cjs/nodeviews/TableResizer.js +40 -28
- package/dist/cjs/plugin.js +60 -58
- package/dist/cjs/pm-plugins/keymap.js +26 -8
- package/dist/cjs/pm-plugins/main.js +15 -4
- package/dist/cjs/pm-plugins/table-resizing/event-handlers.js +4 -2
- package/dist/cjs/toolbar.js +5 -4
- package/dist/cjs/ui/DragHandle/index.js +2 -2
- package/dist/cjs/ui/DragPreview/index.js +2 -0
- package/dist/cjs/ui/FloatingContextualButton/FixedButton.js +10 -6
- package/dist/cjs/ui/FloatingContextualMenu/ContextualMenu.js +16 -16
- package/dist/cjs/ui/FloatingDeleteButton/index.js +2 -0
- package/dist/cjs/ui/FloatingDragMenu/DragMenu.js +3 -3
- package/dist/cjs/ui/FloatingDragMenu/DropdownMenu.js +21 -28
- package/dist/cjs/ui/FloatingInsertButton/InsertButton.js +1 -0
- package/dist/cjs/ui/LayoutButton/index.js +2 -0
- package/dist/cjs/ui/TableFloatingColumnControls/ColumnControls/index.js +2 -0
- package/dist/cjs/ui/TableFloatingColumnControls/ColumnDropTargets/ColumnDropTarget.js +3 -0
- package/dist/cjs/ui/TableFloatingControls/CornerControls/ClassicCornerControls.js +1 -0
- package/dist/cjs/ui/TableFloatingControls/NumberColumn/index.js +1 -0
- package/dist/cjs/ui/TableFloatingControls/RowControls/ClassicControls.js +4 -0
- package/dist/cjs/ui/TableFloatingControls/RowControls/DragControls.js +3 -1
- package/dist/cjs/ui/common-styles.js +4 -0
- package/dist/cjs/ui/ui-styles.js +93 -37
- package/dist/cjs/utils/guidelines.js +1 -1
- package/dist/es2019/commands/column-resize.js +53 -4
- package/dist/es2019/commands/go-to-next-cell.js +5 -2
- package/dist/es2019/commands/misc.js +6 -2
- package/dist/es2019/commands-with-analytics.js +8 -2
- package/dist/es2019/nodeviews/ExternalDropTargets.js +2 -0
- package/dist/es2019/nodeviews/TableComponent.js +9 -7
- package/dist/es2019/nodeviews/TableContainer.js +17 -3
- package/dist/es2019/nodeviews/TableResizer.js +27 -17
- package/dist/es2019/plugin.js +6 -3
- package/dist/es2019/pm-plugins/keymap.js +25 -9
- package/dist/es2019/pm-plugins/main.js +15 -4
- package/dist/es2019/pm-plugins/table-resizing/event-handlers.js +4 -2
- package/dist/es2019/toolbar.js +5 -4
- package/dist/es2019/ui/DragHandle/index.js +2 -2
- package/dist/es2019/ui/DragPreview/index.js +2 -0
- package/dist/es2019/ui/FloatingContextualButton/FixedButton.js +10 -6
- package/dist/es2019/ui/FloatingContextualMenu/ContextualMenu.js +16 -16
- package/dist/es2019/ui/FloatingDeleteButton/index.js +2 -0
- package/dist/es2019/ui/FloatingDragMenu/DragMenu.js +3 -3
- package/dist/es2019/ui/FloatingDragMenu/DropdownMenu.js +20 -27
- package/dist/es2019/ui/FloatingInsertButton/InsertButton.js +1 -0
- package/dist/es2019/ui/LayoutButton/index.js +2 -0
- package/dist/es2019/ui/TableFloatingColumnControls/ColumnControls/index.js +2 -0
- package/dist/es2019/ui/TableFloatingColumnControls/ColumnDropTargets/ColumnDropTarget.js +3 -0
- package/dist/es2019/ui/TableFloatingControls/CornerControls/ClassicCornerControls.js +1 -0
- package/dist/es2019/ui/TableFloatingControls/NumberColumn/index.js +1 -0
- package/dist/es2019/ui/TableFloatingControls/RowControls/ClassicControls.js +4 -0
- package/dist/es2019/ui/TableFloatingControls/RowControls/DragControls.js +3 -1
- package/dist/es2019/ui/common-styles.js +4 -0
- package/dist/es2019/ui/ui-styles.js +66 -70
- package/dist/es2019/utils/guidelines.js +1 -1
- package/dist/esm/commands/column-resize.js +62 -16
- package/dist/esm/commands/go-to-next-cell.js +5 -2
- package/dist/esm/commands/misc.js +3 -2
- package/dist/esm/commands-with-analytics.js +8 -2
- package/dist/esm/nodeviews/ExternalDropTargets.js +2 -0
- package/dist/esm/nodeviews/TableComponent.js +9 -7
- package/dist/esm/nodeviews/TableContainer.js +32 -20
- package/dist/esm/nodeviews/TableResizer.js +41 -29
- package/dist/esm/plugin.js +60 -58
- package/dist/esm/pm-plugins/keymap.js +26 -8
- package/dist/esm/pm-plugins/main.js +15 -4
- package/dist/esm/pm-plugins/table-resizing/event-handlers.js +4 -2
- package/dist/esm/toolbar.js +5 -4
- package/dist/esm/ui/DragHandle/index.js +2 -2
- package/dist/esm/ui/DragPreview/index.js +2 -0
- package/dist/esm/ui/FloatingContextualButton/FixedButton.js +10 -6
- package/dist/esm/ui/FloatingContextualMenu/ContextualMenu.js +16 -16
- package/dist/esm/ui/FloatingDeleteButton/index.js +2 -0
- package/dist/esm/ui/FloatingDragMenu/DragMenu.js +3 -3
- package/dist/esm/ui/FloatingDragMenu/DropdownMenu.js +21 -28
- package/dist/esm/ui/FloatingInsertButton/InsertButton.js +1 -0
- package/dist/esm/ui/LayoutButton/index.js +2 -0
- package/dist/esm/ui/TableFloatingColumnControls/ColumnControls/index.js +2 -0
- package/dist/esm/ui/TableFloatingColumnControls/ColumnDropTargets/ColumnDropTarget.js +3 -0
- package/dist/esm/ui/TableFloatingControls/CornerControls/ClassicCornerControls.js +1 -0
- package/dist/esm/ui/TableFloatingControls/NumberColumn/index.js +1 -0
- package/dist/esm/ui/TableFloatingControls/RowControls/ClassicControls.js +4 -0
- package/dist/esm/ui/TableFloatingControls/RowControls/DragControls.js +3 -1
- package/dist/esm/ui/common-styles.js +4 -0
- package/dist/esm/ui/ui-styles.js +93 -37
- package/dist/esm/utils/guidelines.js +1 -1
- package/dist/types/commands/column-resize.d.ts +23 -4
- package/dist/types/commands/go-to-next-cell.d.ts +2 -1
- package/dist/types/commands/misc.d.ts +2 -1
- package/dist/types/commands-with-analytics.d.ts +2 -1
- package/dist/types/nodeviews/TableResizer.d.ts +3 -1
- package/dist/types/pm-plugins/keymap.d.ts +3 -1
- package/dist/types/types.d.ts +13 -3
- package/dist/types-ts4.5/commands/column-resize.d.ts +23 -4
- package/dist/types-ts4.5/commands/go-to-next-cell.d.ts +2 -1
- package/dist/types-ts4.5/commands/misc.d.ts +2 -1
- package/dist/types-ts4.5/commands-with-analytics.d.ts +2 -1
- package/dist/types-ts4.5/nodeviews/TableResizer.d.ts +3 -1
- package/dist/types-ts4.5/pm-plugins/keymap.d.ts +3 -1
- package/dist/types-ts4.5/types.d.ts +13 -3
- package/package.json +3 -6
- package/src/commands/column-resize.ts +105 -29
- package/src/commands/go-to-next-cell.ts +10 -2
- package/src/commands/misc.ts +6 -3
- package/src/commands-with-analytics.ts +11 -5
- package/src/nodeviews/ExternalDropTargets.tsx +2 -0
- package/src/nodeviews/TableComponent.tsx +14 -16
- package/src/nodeviews/TableContainer.tsx +18 -3
- package/src/nodeviews/TableResizer.tsx +35 -21
- package/src/plugin.tsx +4 -1
- package/src/pm-plugins/keymap.ts +44 -6
- package/src/pm-plugins/main.ts +18 -4
- package/src/pm-plugins/table-resizing/event-handlers.ts +6 -2
- package/src/toolbar.tsx +20 -19
- package/src/types.ts +14 -2
- package/src/ui/DragHandle/index.tsx +2 -2
- package/src/ui/DragPreview/index.tsx +2 -0
- package/src/ui/FloatingContextualButton/FixedButton.tsx +9 -6
- package/src/ui/FloatingContextualMenu/ContextualMenu.tsx +66 -112
- package/src/ui/FloatingDeleteButton/index.tsx +2 -0
- package/src/ui/FloatingDragMenu/DragMenu.tsx +3 -12
- package/src/ui/FloatingDragMenu/DropdownMenu.tsx +19 -28
- package/src/ui/FloatingInsertButton/InsertButton.tsx +1 -0
- package/src/ui/LayoutButton/index.tsx +2 -0
- package/src/ui/TableFloatingColumnControls/ColumnControls/index.tsx +2 -0
- package/src/ui/TableFloatingColumnControls/ColumnDropTargets/ColumnDropTarget.tsx +3 -0
- package/src/ui/TableFloatingControls/CornerControls/ClassicCornerControls.tsx +1 -0
- package/src/ui/TableFloatingControls/NumberColumn/index.tsx +1 -0
- package/src/ui/TableFloatingControls/RowControls/ClassicControls.tsx +4 -0
- package/src/ui/TableFloatingControls/RowControls/DragControls.tsx +5 -1
- package/src/ui/common-styles.ts +2 -0
- package/src/ui/ui-styles.ts +90 -79
- package/src/utils/guidelines.ts +5 -4
|
@@ -126,11 +126,9 @@ export class ContextualMenu extends Component<
|
|
|
126
126
|
const { isOpen, mountPoint, offset, boundariesElement, editorView } =
|
|
127
127
|
this.props;
|
|
128
128
|
const { isDragAndDropEnabled } = getPluginState(editorView.state);
|
|
129
|
-
const items =
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
? this.createNewContextMenuItems()
|
|
133
|
-
: this.createOriginalContextMenuItems();
|
|
129
|
+
const items = isDragAndDropEnabled
|
|
130
|
+
? this.createNewContextMenuItems()
|
|
131
|
+
: this.createOriginalContextMenuItems();
|
|
134
132
|
|
|
135
133
|
return (
|
|
136
134
|
<div
|
|
@@ -161,9 +159,6 @@ export class ContextualMenu extends Component<
|
|
|
161
159
|
offset={offset}
|
|
162
160
|
section={
|
|
163
161
|
isDragAndDropEnabled &&
|
|
164
|
-
getBooleanFF(
|
|
165
|
-
'platform.editor.table.new-cell-context-menu-styling',
|
|
166
|
-
) &&
|
|
167
162
|
getBooleanFF('platform.editor.menu.group-items')
|
|
168
163
|
? { hasSeparator: true }
|
|
169
164
|
: undefined
|
|
@@ -210,33 +205,24 @@ export class ContextualMenu extends Component<
|
|
|
210
205
|
node?.attrs?.background || '#ffffff',
|
|
211
206
|
);
|
|
212
207
|
return {
|
|
213
|
-
content:
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
? formatMessage(messages.backgroundColor)
|
|
217
|
-
: formatMessage(messages.cellBackground),
|
|
208
|
+
content: isDragAndDropEnabled
|
|
209
|
+
? formatMessage(messages.backgroundColor)
|
|
210
|
+
: formatMessage(messages.cellBackground),
|
|
218
211
|
value: { name: 'background' },
|
|
219
|
-
elemBefore:
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
size="medium"
|
|
228
|
-
/>
|
|
229
|
-
</span>
|
|
230
|
-
) : undefined,
|
|
212
|
+
elemBefore: isDragAndDropEnabled ? (
|
|
213
|
+
<span css={elementBeforeIconStyles}>
|
|
214
|
+
<EditorBackgroundColorIcon
|
|
215
|
+
label={formatMessage(messages.backgroundColor)}
|
|
216
|
+
size="medium"
|
|
217
|
+
/>
|
|
218
|
+
</span>
|
|
219
|
+
) : undefined,
|
|
231
220
|
elemAfter: (
|
|
232
221
|
<div className={DropdownMenuSharedCssClassName.SUBMENU}>
|
|
233
222
|
<div
|
|
234
223
|
css={cellColourPreviewStyles(background)}
|
|
235
224
|
className={
|
|
236
|
-
isDragAndDropEnabled
|
|
237
|
-
getBooleanFF(
|
|
238
|
-
'platform.editor.table.new-cell-context-menu-styling',
|
|
239
|
-
)
|
|
225
|
+
isDragAndDropEnabled
|
|
240
226
|
? ClassName.CONTEXTUAL_MENU_ICON_SMALL
|
|
241
227
|
: ClassName.CONTEXTUAL_MENU_ICON
|
|
242
228
|
}
|
|
@@ -280,29 +266,21 @@ export class ContextualMenu extends Component<
|
|
|
280
266
|
content: formatMessage(messages.mergeCells),
|
|
281
267
|
value: { name: 'merge' },
|
|
282
268
|
isDisabled: !canMergeCells(state.tr),
|
|
283
|
-
elemBefore:
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
<span css={elementBeforeIconStyles}>
|
|
289
|
-
<MergeCellsIcon />
|
|
290
|
-
</span>
|
|
291
|
-
) : undefined,
|
|
269
|
+
elemBefore: isDragAndDropEnabled ? (
|
|
270
|
+
<span css={elementBeforeIconStyles}>
|
|
271
|
+
<MergeCellsIcon />
|
|
272
|
+
</span>
|
|
273
|
+
) : undefined,
|
|
292
274
|
},
|
|
293
275
|
{
|
|
294
276
|
content: formatMessage(messages.splitCell),
|
|
295
277
|
value: { name: 'split' },
|
|
296
278
|
isDisabled: !splitCell(state),
|
|
297
|
-
elemBefore:
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
<span css={elementBeforeIconStyles}>
|
|
303
|
-
<SplitCellIcon />
|
|
304
|
-
</span>
|
|
305
|
-
) : undefined,
|
|
279
|
+
elemBefore: isDragAndDropEnabled ? (
|
|
280
|
+
<span css={elementBeforeIconStyles}>
|
|
281
|
+
<SplitCellIcon />
|
|
282
|
+
</span>
|
|
283
|
+
) : undefined,
|
|
306
284
|
},
|
|
307
285
|
] as MenuItem[];
|
|
308
286
|
}
|
|
@@ -318,20 +296,15 @@ export class ContextualMenu extends Component<
|
|
|
318
296
|
|
|
319
297
|
return {
|
|
320
298
|
content: formatMessage(
|
|
321
|
-
isDragAndDropEnabled
|
|
322
|
-
getBooleanFF('platform.editor.table.new-cell-context-menu-styling')
|
|
323
|
-
? messages.addColumnRight
|
|
324
|
-
: messages.insertColumn,
|
|
299
|
+
isDragAndDropEnabled ? messages.addColumnRight : messages.insertColumn,
|
|
325
300
|
),
|
|
326
301
|
value: { name: 'insert_column' },
|
|
327
302
|
elemAfter: <div css={shortcutStyle}>{tooltip(addColumnAfter)}</div>,
|
|
328
|
-
elemBefore:
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
</span>
|
|
334
|
-
) : undefined,
|
|
303
|
+
elemBefore: isDragAndDropEnabled ? (
|
|
304
|
+
<span css={elementBeforeIconStyles}>
|
|
305
|
+
<AddColRightIcon />
|
|
306
|
+
</span>
|
|
307
|
+
) : undefined,
|
|
335
308
|
} as MenuItem;
|
|
336
309
|
};
|
|
337
310
|
|
|
@@ -344,20 +317,15 @@ export class ContextualMenu extends Component<
|
|
|
344
317
|
|
|
345
318
|
return {
|
|
346
319
|
content: formatMessage(
|
|
347
|
-
isDragAndDropEnabled
|
|
348
|
-
getBooleanFF('platform.editor.table.new-cell-context-menu-styling')
|
|
349
|
-
? messages.addRowBelow
|
|
350
|
-
: messages.insertRow,
|
|
320
|
+
isDragAndDropEnabled ? messages.addRowBelow : messages.insertRow,
|
|
351
321
|
),
|
|
352
322
|
value: { name: 'insert_row' },
|
|
353
323
|
elemAfter: <div css={shortcutStyle}>{tooltip(addRowAfter)}</div>,
|
|
354
|
-
elemBefore:
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
</span>
|
|
360
|
-
) : undefined,
|
|
324
|
+
elemBefore: isDragAndDropEnabled ? (
|
|
325
|
+
<span css={elementBeforeIconStyles}>
|
|
326
|
+
<AddRowBelowIcon />
|
|
327
|
+
</span>
|
|
328
|
+
) : undefined,
|
|
361
329
|
} as MenuItem;
|
|
362
330
|
};
|
|
363
331
|
|
|
@@ -378,17 +346,15 @@ export class ContextualMenu extends Component<
|
|
|
378
346
|
}),
|
|
379
347
|
value: { name: 'clear' },
|
|
380
348
|
elemAfter: <div css={shortcutStyle}>{tooltip(backspace)}</div>,
|
|
381
|
-
elemBefore:
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
</span>
|
|
391
|
-
) : undefined,
|
|
349
|
+
elemBefore: isDragAndDropEnabled ? (
|
|
350
|
+
<span css={elementBeforeIconStyles}>
|
|
351
|
+
<CrossCircleIcon
|
|
352
|
+
label={formatMessage(messages.clearCells, {
|
|
353
|
+
0: Math.max(noOfColumns, noOfRows),
|
|
354
|
+
})}
|
|
355
|
+
/>
|
|
356
|
+
</span>
|
|
357
|
+
) : undefined,
|
|
392
358
|
} as MenuItem;
|
|
393
359
|
};
|
|
394
360
|
|
|
@@ -408,17 +374,15 @@ export class ContextualMenu extends Component<
|
|
|
408
374
|
0: noOfColumns,
|
|
409
375
|
}),
|
|
410
376
|
value: { name: 'delete_column' },
|
|
411
|
-
elemBefore:
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
</span>
|
|
421
|
-
) : undefined,
|
|
377
|
+
elemBefore: isDragAndDropEnabled ? (
|
|
378
|
+
<span css={elementBeforeIconStyles}>
|
|
379
|
+
<RemoveIcon
|
|
380
|
+
label={formatMessage(messages.removeColumns, {
|
|
381
|
+
0: noOfColumns,
|
|
382
|
+
})}
|
|
383
|
+
/>
|
|
384
|
+
</span>
|
|
385
|
+
) : undefined,
|
|
422
386
|
} as MenuItem;
|
|
423
387
|
};
|
|
424
388
|
|
|
@@ -438,17 +402,15 @@ export class ContextualMenu extends Component<
|
|
|
438
402
|
0: noOfRows,
|
|
439
403
|
}),
|
|
440
404
|
value: { name: 'delete_row' },
|
|
441
|
-
elemBefore:
|
|
442
|
-
|
|
443
|
-
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
</span>
|
|
451
|
-
) : undefined,
|
|
405
|
+
elemBefore: isDragAndDropEnabled ? (
|
|
406
|
+
<span css={elementBeforeIconStyles}>
|
|
407
|
+
<RemoveIcon
|
|
408
|
+
label={formatMessage(messages.removeRows, {
|
|
409
|
+
0: noOfRows,
|
|
410
|
+
})}
|
|
411
|
+
/>
|
|
412
|
+
</span>
|
|
413
|
+
) : undefined,
|
|
452
414
|
} as MenuItem;
|
|
453
415
|
};
|
|
454
416
|
|
|
@@ -463,11 +425,7 @@ export class ContextualMenu extends Component<
|
|
|
463
425
|
isDragAndDropEnabled,
|
|
464
426
|
pluginConfig: { allowDistributeColumns },
|
|
465
427
|
} = getPluginState(editorView.state);
|
|
466
|
-
if (
|
|
467
|
-
allowDistributeColumns &&
|
|
468
|
-
(!isDragAndDropEnabled ||
|
|
469
|
-
!getBooleanFF('platform.editor.table.new-cell-context-menu-styling'))
|
|
470
|
-
) {
|
|
428
|
+
if (allowDistributeColumns && !isDragAndDropEnabled) {
|
|
471
429
|
const { isTableScalingEnabled = false } = getPluginState(
|
|
472
430
|
editorView.state,
|
|
473
431
|
);
|
|
@@ -498,11 +456,7 @@ export class ContextualMenu extends Component<
|
|
|
498
456
|
} = this.props;
|
|
499
457
|
const { isDragAndDropEnabled } = getPluginState(editorView.state);
|
|
500
458
|
|
|
501
|
-
if (
|
|
502
|
-
allowColumnSorting &&
|
|
503
|
-
(!isDragAndDropEnabled ||
|
|
504
|
-
!getBooleanFF('platform.editor.table.new-cell-context-menu-styling'))
|
|
505
|
-
) {
|
|
459
|
+
if (allowColumnSorting && !isDragAndDropEnabled) {
|
|
506
460
|
const hasMergedCellsInTable =
|
|
507
461
|
getMergedCellsPositions(editorView.state.tr).length > 0;
|
|
508
462
|
const warning = hasMergedCellsInTable
|
|
@@ -347,8 +347,10 @@ class FloatingDeleteButton extends Component<Props, State> {
|
|
|
347
347
|
<div
|
|
348
348
|
style={{
|
|
349
349
|
position: 'fixed',
|
|
350
|
+
// eslint-disable-next-line @atlaskit/design-system/ensure-design-token-usage/preview
|
|
350
351
|
top: pos.top,
|
|
351
352
|
zIndex: stickyRowZIndex,
|
|
353
|
+
// eslint-disable-next-line @atlaskit/design-system/ensure-design-token-usage/preview
|
|
352
354
|
left:
|
|
353
355
|
rect.left +
|
|
354
356
|
(pos.left || 0) -
|
|
@@ -620,27 +620,18 @@ export const DragMenu = React.memo(
|
|
|
620
620
|
return null;
|
|
621
621
|
}
|
|
622
622
|
|
|
623
|
-
if (
|
|
624
|
-
allowBackgroundColor &&
|
|
625
|
-
getBooleanFF('platform.editor.table.new-cell-context-menu-styling')
|
|
626
|
-
) {
|
|
623
|
+
if (allowBackgroundColor) {
|
|
627
624
|
menuItems[0].items.unshift(createBackgroundColorMenuItem());
|
|
628
625
|
}
|
|
629
626
|
|
|
630
627
|
// If first row, add toggle for Header row, default is true
|
|
631
628
|
// If first column, add toggle for Header column, default is false
|
|
632
|
-
if (
|
|
633
|
-
getBooleanFF('platform.editor.table.new-cell-context-menu-styling') &&
|
|
634
|
-
index === 0
|
|
635
|
-
) {
|
|
629
|
+
if (index === 0) {
|
|
636
630
|
menuItems.push({ items: [createHeaderRowColumnMenuItem(direction)] });
|
|
637
631
|
}
|
|
638
632
|
|
|
639
633
|
// All rows, add toggle for numbered rows, default is false
|
|
640
|
-
if (
|
|
641
|
-
getBooleanFF('platform.editor.table.new-cell-context-menu-styling') &&
|
|
642
|
-
direction === 'row'
|
|
643
|
-
) {
|
|
634
|
+
if (direction === 'row') {
|
|
644
635
|
index === 0
|
|
645
636
|
? menuItems[menuItems.length - 1].items.push(createRowNumbersMenuItem())
|
|
646
637
|
: menuItems.push({ items: [createRowNumbersMenuItem()] });
|
|
@@ -11,7 +11,6 @@ import {
|
|
|
11
11
|
import { withReactEditorViewOuterListeners } from '@atlaskit/editor-common/ui-react';
|
|
12
12
|
import { akEditorFloatingPanelZIndex } from '@atlaskit/editor-shared-styles';
|
|
13
13
|
import { MenuGroup, Section } from '@atlaskit/menu';
|
|
14
|
-
import { getBooleanFF } from '@atlaskit/platform-feature-flags';
|
|
15
14
|
|
|
16
15
|
import { dragMenuDropdownWidth } from '../consts';
|
|
17
16
|
|
|
@@ -150,39 +149,31 @@ export const DropdownMenu = ({
|
|
|
150
149
|
// The logic below normalises the index value based on the number
|
|
151
150
|
// of menu items with 2 focusable elements, and adjusts the index to ensure
|
|
152
151
|
// the correct menu item is sent in onItemActivated callback
|
|
153
|
-
|
|
154
|
-
|
|
155
|
-
'platform.editor.table.new-cell-context-menu-styling',
|
|
156
|
-
)
|
|
157
|
-
) {
|
|
158
|
-
const keys = ['row_numbers', 'header_row', 'header_column'];
|
|
159
|
-
let doubleItemCount = 0;
|
|
152
|
+
const keys = ['row_numbers', 'header_row', 'header_column'];
|
|
153
|
+
let doubleItemCount = 0;
|
|
160
154
|
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
155
|
+
const firstIndex = results.findIndex((value) =>
|
|
156
|
+
keys.includes(value.key!),
|
|
157
|
+
);
|
|
158
|
+
|
|
159
|
+
if (firstIndex === -1 || index <= firstIndex) {
|
|
160
|
+
onItemActivated && onItemActivated({ item: results[index] });
|
|
161
|
+
return;
|
|
162
|
+
}
|
|
164
163
|
|
|
165
|
-
|
|
166
|
-
|
|
164
|
+
for (let i = firstIndex; i < results.length; i += 1) {
|
|
165
|
+
if (keys.includes(results[i].key!)) {
|
|
166
|
+
doubleItemCount += 1;
|
|
167
|
+
}
|
|
168
|
+
if (firstIndex % 2 === 0 && index - doubleItemCount === i) {
|
|
169
|
+
onItemActivated && onItemActivated({ item: results[i] });
|
|
167
170
|
return;
|
|
168
171
|
}
|
|
169
172
|
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
}
|
|
174
|
-
if (firstIndex % 2 === 0 && index - doubleItemCount === i) {
|
|
175
|
-
onItemActivated && onItemActivated({ item: results[i] });
|
|
176
|
-
return;
|
|
177
|
-
}
|
|
178
|
-
|
|
179
|
-
if (firstIndex % 2 === 1 && index - doubleItemCount === i) {
|
|
180
|
-
onItemActivated && onItemActivated({ item: results[i] });
|
|
181
|
-
return;
|
|
182
|
-
}
|
|
173
|
+
if (firstIndex % 2 === 1 && index - doubleItemCount === i) {
|
|
174
|
+
onItemActivated && onItemActivated({ item: results[i] });
|
|
175
|
+
return;
|
|
183
176
|
}
|
|
184
|
-
} else {
|
|
185
|
-
onItemActivated && onItemActivated({ item: results[index] });
|
|
186
177
|
}
|
|
187
178
|
}}
|
|
188
179
|
>
|
|
@@ -125,7 +125,9 @@ class LayoutButton extends React.Component<Props & WrappedComponentProps, any> {
|
|
|
125
125
|
aria-label={title}
|
|
126
126
|
style={{
|
|
127
127
|
position: 'fixed',
|
|
128
|
+
// eslint-disable-next-line @atlaskit/design-system/ensure-design-token-usage/preview
|
|
128
129
|
top: pos.top + 22,
|
|
130
|
+
// eslint-disable-next-line @atlaskit/design-system/ensure-design-token-usage/preview
|
|
129
131
|
left: tablePos.right,
|
|
130
132
|
}}
|
|
131
133
|
>
|
|
@@ -304,7 +304,9 @@ export const ColumnControls = ({
|
|
|
304
304
|
data-testid="table-floating-column-controls"
|
|
305
305
|
style={{
|
|
306
306
|
gridTemplateColumns: widths,
|
|
307
|
+
// eslint-disable-next-line @atlaskit/design-system/ensure-design-token-usage/preview
|
|
307
308
|
marginTop,
|
|
309
|
+
// eslint-disable-next-line @atlaskit/design-system/ensure-design-token-usage/preview
|
|
308
310
|
width: stickyTop ? containerWidth : undefined,
|
|
309
311
|
overflowX: stickyTop ? 'hidden' : 'visible',
|
|
310
312
|
pointerEvents: isDragging ? 'none' : undefined,
|
|
@@ -95,8 +95,11 @@ export const ColumnDropTarget = ({
|
|
|
95
95
|
<div
|
|
96
96
|
ref={dropTargetRef}
|
|
97
97
|
style={{
|
|
98
|
+
// eslint-disable-next-line @atlaskit/design-system/ensure-design-token-usage/preview
|
|
98
99
|
width: width && `${width - 1}px`,
|
|
100
|
+
// eslint-disable-next-line @atlaskit/design-system/ensure-design-token-usage/preview
|
|
99
101
|
height: height && `${height}px`,
|
|
102
|
+
// eslint-disable-next-line @atlaskit/design-system/ensure-design-token-usage/preview
|
|
100
103
|
marginTop: marginTop && `${marginTop}px`,
|
|
101
104
|
pointerEvents: 'auto',
|
|
102
105
|
flexShrink: 0,
|
|
@@ -41,6 +41,7 @@ class CornerControlComponent extends Component<
|
|
|
41
41
|
sticky: this.props.stickyTop !== undefined,
|
|
42
42
|
})}
|
|
43
43
|
style={{
|
|
44
|
+
// eslint-disable-next-line @atlaskit/design-system/ensure-design-token-usage/preview
|
|
44
45
|
top:
|
|
45
46
|
this.props.stickyTop !== undefined
|
|
46
47
|
? `${this.props.stickyTop}px`
|
|
@@ -41,6 +41,7 @@ export default class NumberColumn extends Component<Props, any> {
|
|
|
41
41
|
<div
|
|
42
42
|
className={ClassName.NUMBERED_COLUMN}
|
|
43
43
|
style={{
|
|
44
|
+
// eslint-disable-next-line @atlaskit/design-system/ensure-design-token-usage/preview
|
|
44
45
|
marginTop:
|
|
45
46
|
hasHeaderRow && this.props.stickyTop !== undefined
|
|
46
47
|
? rowHeights[0]
|
|
@@ -82,11 +82,15 @@ class RowControlsComponent extends Component<Props & WrappedComponentProps> {
|
|
|
82
82
|
)} ${thisRowSticky ? 'sticky' : ''}`}
|
|
83
83
|
key={startIndex}
|
|
84
84
|
style={{
|
|
85
|
+
// eslint-disable-next-line @atlaskit/design-system/ensure-design-token-usage/preview
|
|
85
86
|
height: height,
|
|
87
|
+
// eslint-disable-next-line @atlaskit/design-system/ensure-design-token-usage/preview
|
|
86
88
|
marginTop: `${marginTop}px`,
|
|
89
|
+
// eslint-disable-next-line @atlaskit/design-system/ensure-design-token-usage/preview
|
|
87
90
|
top: thisRowSticky
|
|
88
91
|
? `${this.props.stickyTop! + 3}px`
|
|
89
92
|
: undefined,
|
|
93
|
+
// eslint-disable-next-line @atlaskit/design-system/ensure-design-token-usage/preview
|
|
90
94
|
paddingTop: thisRowSticky
|
|
91
95
|
? `${tableControlsSpacing}px`
|
|
92
96
|
: undefined,
|
|
@@ -215,6 +215,7 @@ const DragControlsComponent = ({
|
|
|
215
215
|
width: '9px',
|
|
216
216
|
height: '100%',
|
|
217
217
|
position: 'relative',
|
|
218
|
+
// eslint-disable-next-line @atlaskit/design-system/ensure-design-token-usage/preview
|
|
218
219
|
right: '-0.5px',
|
|
219
220
|
}}
|
|
220
221
|
data-testid={`table-floating-row-${
|
|
@@ -297,7 +298,10 @@ const DragControlsComponent = ({
|
|
|
297
298
|
gridTemplateColumns: isDragging
|
|
298
299
|
? `${dropTargetExtendedWidth}px 14px ${tableWidth}px`
|
|
299
300
|
: '0px 14px 0px',
|
|
300
|
-
|
|
301
|
+
// eslint-disable-next-line @atlaskit/design-system/ensure-design-token-usage/preview
|
|
302
|
+
left: isDragging
|
|
303
|
+
? `-${dropTargetExtendedWidth + 2}px`
|
|
304
|
+
: token('space.negative.025', '-2px'),
|
|
301
305
|
}}
|
|
302
306
|
onMouseMove={handleMouseMove}
|
|
303
307
|
contentEditable={false}
|
package/src/ui/common-styles.ts
CHANGED
|
@@ -211,6 +211,7 @@ const tableBorderStyles = () => {
|
|
|
211
211
|
}
|
|
212
212
|
};
|
|
213
213
|
|
|
214
|
+
// eslint-disable-next-line @atlaskit/design-system/ensure-design-token-usage/preview
|
|
214
215
|
const tableStickyHeaderColumnControlsDecorationsStyle = () => {
|
|
215
216
|
if (getBooleanFF('platform.editor.table.column-controls-styles-updated')) {
|
|
216
217
|
return css`
|
|
@@ -1116,6 +1117,7 @@ export const tableStyles = (props: { featureFlags?: FeatureFlags }) => css`
|
|
|
1116
1117
|
${shadowSentinelStyles}
|
|
1117
1118
|
`;
|
|
1118
1119
|
|
|
1120
|
+
// eslint-disable-next-line @atlaskit/design-system/ensure-design-token-usage/preview
|
|
1119
1121
|
export const tableFullPageEditorStyles = css`
|
|
1120
1122
|
.ProseMirror .${ClassName.TABLE_NODE_WRAPPER} > table {
|
|
1121
1123
|
margin-left: 0;
|