UNPKG

@atlaskit/editor-plugin-table

Version:

Table plugin for the @atlaskit/editor

57 lines (53 loc) 2.65 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.maybeUpdateColumnControlsSelectedDecoration = exports.buildColumnControlsDecorations = void 0; var _cellSelection = require("@atlaskit/editor-tables/cell-selection"); var _types = require("../../../types"); var _decoration = require("../../utils/decoration"); var _composeDecorations = require("./compose-decorations"); // @ts-ignore -- ReadonlyTransaction is a local declaration and will cause a TS2305 error in CCFE typecheck var isColumnSelected = function isColumnSelected(tr) { return tr.selection instanceof _cellSelection.CellSelection && tr.selection.isColSelection(); }; // @see: https://product-fabric.atlassian.net/browse/ED-3796 var removeControlsHoverDecoration = function removeControlsHoverDecoration(_ref) { var decorationSet = _ref.decorationSet; return decorationSet.remove((0, _decoration.findControlsHoverDecoration)(decorationSet)); }; var maybeUpdateColumnSelectedDecoration = function maybeUpdateColumnSelectedDecoration(_ref2) { var decorationSet = _ref2.decorationSet, tr = _ref2.tr; if (!isColumnSelected(tr)) { return decorationSet; } return (0, _decoration.updateDecorations)(tr.doc, decorationSet, (0, _decoration.createColumnSelectedDecoration)(tr), _types.TableDecorations.COLUMN_SELECTED); }; // @see: https://product-fabric.atlassian.net/browse/ED-7304 var removeColumnControlsSelectedDecoration = function removeColumnControlsSelectedDecoration(_ref3) { var decorationSet = _ref3.decorationSet; return decorationSet.remove((0, _decoration.findColumnControlSelectedDecoration)(decorationSet)); }; var hasColumnSelectedDecorations = function hasColumnSelectedDecorations(decorationSet) { return !!(0, _decoration.findColumnControlSelectedDecoration)(decorationSet).length; }; var maybeUpdateColumnControlsSelectedDecoration = exports.maybeUpdateColumnControlsSelectedDecoration = function maybeUpdateColumnControlsSelectedDecoration(_ref4) { var decorationSet = _ref4.decorationSet, tr = _ref4.tr; if (!hasColumnSelectedDecorations(decorationSet)) { return decorationSet; } return removeColumnControlsSelectedDecoration({ decorationSet: decorationSet, tr: tr }); }; var buildColumnControlsDecorations = exports.buildColumnControlsDecorations = function buildColumnControlsDecorations(_ref5) { var decorationSet = _ref5.decorationSet, tr = _ref5.tr; return (0, _composeDecorations.composeDecorations)([removeColumnControlsSelectedDecoration, removeControlsHoverDecoration, maybeUpdateColumnSelectedDecoration])({ decorationSet: decorationSet, tr: tr }); };