handsontable 0.0.0-next-b02b3d1-20230710 → 0.0.0-next-3b33ccd-20230710
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of handsontable might be problematic. Click here for more details.
- package/base.js +2 -2
- package/base.mjs +2 -2
- package/core.d.ts +1 -0
- package/core.js +31 -24
- package/core.mjs +31 -24
- package/dataMap/metaManager/metaSchema.js +0 -22
- package/dataMap/metaManager/metaSchema.mjs +0 -22
- package/dist/handsontable.css +2 -13
- package/dist/handsontable.full.css +2 -13
- package/dist/handsontable.full.js +4811 -4809
- package/dist/handsontable.full.min.css +3 -3
- package/dist/handsontable.full.min.js +61 -61
- package/dist/handsontable.js +13683 -13681
- package/dist/handsontable.min.css +3 -3
- package/dist/handsontable.min.js +4 -4
- package/editorManager.js +4 -10
- package/editorManager.mjs +4 -10
- package/helpers/mixed.js +1 -1
- package/helpers/mixed.mjs +1 -1
- package/package.json +1 -1
- package/pluginHooks.d.ts +1 -1
- package/pluginHooks.js +7 -10
- package/pluginHooks.mjs +7 -10
- package/plugins/comments/commentEditor.js +1 -0
- package/plugins/comments/commentEditor.mjs +1 -0
- package/plugins/comments/comments.js +289 -231
- package/plugins/comments/comments.mjs +297 -241
- package/plugins/comments/contextMenuItem/addEditComment.js +51 -0
- package/plugins/comments/contextMenuItem/addEditComment.mjs +35 -0
- package/plugins/comments/contextMenuItem/readOnlyComment.js +63 -0
- package/plugins/comments/contextMenuItem/readOnlyComment.mjs +55 -0
- package/plugins/comments/contextMenuItem/removeComment.js +48 -0
- package/plugins/comments/contextMenuItem/removeComment.mjs +32 -0
- package/plugins/contextMenu/contextMenu.js +1 -0
- package/plugins/contextMenu/contextMenu.mjs +1 -0
- package/plugins/copyPaste/copyPaste.js +1 -1
- package/plugins/copyPaste/copyPaste.mjs +1 -1
- package/plugins/dropdownMenu/dropdownMenu.js +0 -1
- package/plugins/dropdownMenu/dropdownMenu.mjs +0 -1
- package/plugins/formulas/engine/settings.js +2 -2
- package/plugins/formulas/engine/settings.mjs +2 -2
- package/plugins/formulas/formulas.js +2 -2
- package/plugins/formulas/formulas.mjs +2 -2
- package/plugins/manualRowResize/manualRowResize.js +2 -2
- package/plugins/manualRowResize/manualRowResize.mjs +2 -2
- package/settings.d.ts +0 -1
- package/shortcutContexts/commands/extendCellsSelection/toMostBottom.js +7 -2
- package/shortcutContexts/commands/extendCellsSelection/toMostBottom.mjs +7 -2
- package/shortcutContexts/commands/extendCellsSelection/toMostLeft.js +7 -2
- package/shortcutContexts/commands/extendCellsSelection/toMostLeft.mjs +7 -2
- package/shortcutContexts/commands/extendCellsSelection/toMostRight.js +7 -2
- package/shortcutContexts/commands/extendCellsSelection/toMostRight.mjs +7 -2
- package/shortcutContexts/commands/extendCellsSelection/toMostTop.js +7 -2
- package/shortcutContexts/commands/extendCellsSelection/toMostTop.mjs +7 -2
- package/shortcutContexts/constants.js +6 -1
- package/shortcutContexts/constants.mjs +4 -0
- package/tableView.js +9 -4
- package/tableView.mjs +9 -4
- package/core/focusCatcher/focusDetector.js +0 -62
- package/core/focusCatcher/focusDetector.mjs +0 -58
- package/core/focusCatcher/index.js +0 -133
- package/core/focusCatcher/index.mjs +0 -129
- package/core/index.js +0 -12
- package/core/index.mjs +0 -1
@@ -1,10 +1,24 @@
|
|
1
1
|
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
2
|
-
|
2
|
+
import "core-js/modules/es.array.concat.js";
|
3
|
+
import "core-js/modules/es.array.iterator.js";
|
4
|
+
import "core-js/modules/es.object.to-string.js";
|
5
|
+
import "core-js/modules/es.string.iterator.js";
|
6
|
+
import "core-js/modules/es.weak-map.js";
|
7
|
+
import "core-js/modules/web.dom-collections.iterator.js";
|
8
|
+
import "core-js/modules/es.symbol.to-primitive.js";
|
9
|
+
import "core-js/modules/es.date.to-primitive.js";
|
10
|
+
import "core-js/modules/es.symbol.js";
|
11
|
+
import "core-js/modules/es.symbol.description.js";
|
12
|
+
import "core-js/modules/es.number.constructor.js";
|
13
|
+
import "core-js/modules/es.object.set-prototype-of.js";
|
14
|
+
import "core-js/modules/es.object.get-prototype-of.js";
|
15
|
+
import "core-js/modules/es.reflect.construct.js";
|
16
|
+
import "core-js/modules/es.reflect.get.js";
|
17
|
+
import "core-js/modules/es.object.get-own-property-descriptor.js";
|
18
|
+
import "core-js/modules/es.symbol.iterator.js";
|
3
19
|
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
|
4
20
|
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
|
5
21
|
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
|
6
|
-
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
|
7
|
-
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
8
22
|
function _get() { if (typeof Reflect !== "undefined" && Reflect.get) { _get = Reflect.get.bind(); } else { _get = function _get(target, property, receiver) { var base = _superPropBase(target, property); if (!base) return; var desc = Object.getOwnPropertyDescriptor(base, property); if (desc.get) { return desc.get.call(arguments.length < 3 ? target : receiver); } return desc.value; }; } return _get.apply(this, arguments); }
|
9
23
|
function _superPropBase(object, property) { while (!Object.prototype.hasOwnProperty.call(object, property)) { object = _getPrototypeOf(object); if (object === null) break; } return object; }
|
10
24
|
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); Object.defineProperty(subClass, "prototype", { writable: false }); if (superClass) _setPrototypeOf(subClass, superClass); }
|
@@ -14,37 +28,35 @@ function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) ===
|
|
14
28
|
function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
|
15
29
|
function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
|
16
30
|
function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
import "core-js/modules/es.symbol.to-primitive.js";
|
28
|
-
import "core-js/modules/es.date.to-primitive.js";
|
29
|
-
import "core-js/modules/es.symbol.js";
|
30
|
-
import "core-js/modules/es.symbol.description.js";
|
31
|
-
import "core-js/modules/es.number.constructor.js";
|
32
|
-
import "core-js/modules/es.symbol.iterator.js";
|
31
|
+
function _classPrivateFieldInitSpec(obj, privateMap, value) { _checkPrivateRedeclaration(obj, privateMap); privateMap.set(obj, value); }
|
32
|
+
function _checkPrivateRedeclaration(obj, privateCollection) { if (privateCollection.has(obj)) { throw new TypeError("Cannot initialize the same private elements twice on an object"); } }
|
33
|
+
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
34
|
+
function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return _typeof(key) === "symbol" ? key : String(key); }
|
35
|
+
function _toPrimitive(input, hint) { if (_typeof(input) !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (_typeof(res) !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
|
36
|
+
function _classPrivateFieldSet(receiver, privateMap, value) { var descriptor = _classExtractFieldDescriptor(receiver, privateMap, "set"); _classApplyDescriptorSet(receiver, descriptor, value); return value; }
|
37
|
+
function _classApplyDescriptorSet(receiver, descriptor, value) { if (descriptor.set) { descriptor.set.call(receiver, value); } else { if (!descriptor.writable) { throw new TypeError("attempted to set read only private field"); } descriptor.value = value; } }
|
38
|
+
function _classPrivateFieldGet(receiver, privateMap) { var descriptor = _classExtractFieldDescriptor(receiver, privateMap, "get"); return _classApplyDescriptorGet(receiver, descriptor); }
|
39
|
+
function _classExtractFieldDescriptor(receiver, privateMap, action) { if (!privateMap.has(receiver)) { throw new TypeError("attempted to " + action + " private field on non-instance"); } return privateMap.get(receiver); }
|
40
|
+
function _classApplyDescriptorGet(receiver, descriptor) { if (descriptor.get) { return descriptor.get.call(receiver); } return descriptor.value; }
|
33
41
|
import { addClass, closest, isChildOf, hasClass, outerWidth, outerHeight } from "../../helpers/dom/element.mjs";
|
42
|
+
import { stopImmediatePropagation } from "../../helpers/dom/event.mjs";
|
34
43
|
import { deepClone, deepExtend, isObject } from "../../helpers/object.mjs";
|
35
44
|
import EventManager from "../../eventManager.mjs";
|
36
45
|
import { BasePlugin } from "../base/index.mjs";
|
37
46
|
import CommentEditor from "./commentEditor.mjs";
|
38
|
-
import { checkSelectionConsistency, markLabelAsSelected } from "../contextMenu/utils.mjs";
|
39
47
|
import DisplaySwitch from "./displaySwitch.mjs";
|
40
|
-
import
|
48
|
+
import { SEPARATOR } from "../contextMenu/predefinedItems.mjs";
|
49
|
+
import addEditCommentItem from "./contextMenuItem/addEditComment.mjs";
|
50
|
+
import removeCommentItem from "./contextMenuItem/removeComment.mjs";
|
51
|
+
import readOnlyCommentItem from "./contextMenuItem/readOnlyComment.mjs";
|
41
52
|
export var PLUGIN_KEY = 'comments';
|
42
53
|
export var PLUGIN_PRIORITY = 60;
|
43
|
-
var
|
44
|
-
var
|
45
|
-
var
|
46
|
-
var
|
47
|
-
var
|
54
|
+
export var META_COMMENT = 'comment';
|
55
|
+
export var META_COMMENT_VALUE = 'value';
|
56
|
+
export var META_STYLE = 'style';
|
57
|
+
export var META_READONLY = 'readOnly';
|
58
|
+
var SHORTCUTS_GROUP = PLUGIN_KEY;
|
59
|
+
var SHORTCUTS_CONTEXT_NAME = "plugin:".concat(PLUGIN_KEY);
|
48
60
|
|
49
61
|
/* eslint-disable jsdoc/require-description-complete-sentence */
|
50
62
|
/**
|
@@ -136,63 +148,119 @@ var META_READONLY = 'readOnly';
|
|
136
148
|
* ```
|
137
149
|
* :::
|
138
150
|
*/
|
151
|
+
var _editor = /*#__PURE__*/new WeakMap();
|
152
|
+
var _displaySwitch = /*#__PURE__*/new WeakMap();
|
153
|
+
var _preventEditorAutoSwitch = /*#__PURE__*/new WeakMap();
|
154
|
+
var _preventEditorHiding = /*#__PURE__*/new WeakMap();
|
155
|
+
var _tempEditorDimensions = /*#__PURE__*/new WeakMap();
|
156
|
+
var _cellBelowCursor = /*#__PURE__*/new WeakMap();
|
157
|
+
var _commentValueBeforeSave = /*#__PURE__*/new WeakMap();
|
139
158
|
export var Comments = /*#__PURE__*/function (_BasePlugin) {
|
140
159
|
_inherits(Comments, _BasePlugin);
|
141
160
|
var _super = _createSuper(Comments);
|
142
|
-
function Comments(
|
161
|
+
function Comments() {
|
143
162
|
var _this;
|
144
163
|
_classCallCheck(this, Comments);
|
145
|
-
|
164
|
+
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
|
165
|
+
args[_key] = arguments[_key];
|
166
|
+
}
|
167
|
+
_this = _super.call.apply(_super, [this].concat(args));
|
168
|
+
/**
|
169
|
+
* Current cell range, an object with `from` property, with `row` and `col` properties (e.q. `{from: {row: 1, col: 6}}`).
|
170
|
+
*
|
171
|
+
* @type {object}
|
172
|
+
*/
|
173
|
+
_defineProperty(_assertThisInitialized(_this), "range", {});
|
174
|
+
/**
|
175
|
+
* Instance of {@link EventManager}.
|
176
|
+
*
|
177
|
+
* @protected
|
178
|
+
* @type {EventManager}
|
179
|
+
*/
|
180
|
+
_defineProperty(_assertThisInitialized(_this), "eventManager", null);
|
146
181
|
/**
|
147
182
|
* Instance of {@link CommentEditor}.
|
148
183
|
*
|
149
184
|
* @private
|
150
185
|
* @type {CommentEditor}
|
151
186
|
*/
|
152
|
-
_this
|
187
|
+
_classPrivateFieldInitSpec(_assertThisInitialized(_this), _editor, {
|
188
|
+
writable: true,
|
189
|
+
value: null
|
190
|
+
});
|
153
191
|
/**
|
154
192
|
* Instance of {@link DisplaySwitch}.
|
155
193
|
*
|
156
194
|
* @private
|
157
195
|
* @type {DisplaySwitch}
|
158
196
|
*/
|
159
|
-
_this
|
197
|
+
_classPrivateFieldInitSpec(_assertThisInitialized(_this), _displaySwitch, {
|
198
|
+
writable: true,
|
199
|
+
value: null
|
200
|
+
});
|
160
201
|
/**
|
161
|
-
*
|
202
|
+
* Prevents showing/hiding editor that reacts on the logic triggered by the "mouseover" events.
|
162
203
|
*
|
163
204
|
* @private
|
164
|
-
* @type {
|
205
|
+
* @type {boolean}
|
165
206
|
*/
|
166
|
-
_this
|
207
|
+
_classPrivateFieldInitSpec(_assertThisInitialized(_this), _preventEditorAutoSwitch, {
|
208
|
+
writable: true,
|
209
|
+
value: false
|
210
|
+
});
|
167
211
|
/**
|
168
|
-
*
|
212
|
+
* Prevents hiding editor when the table viewport is scrolled and that scroll is triggered by the
|
213
|
+
* keyboard shortcut that insert or edits the comment.
|
214
|
+
*
|
215
|
+
* @private
|
216
|
+
* @type {boolean}
|
217
|
+
*/
|
218
|
+
_classPrivateFieldInitSpec(_assertThisInitialized(_this), _preventEditorHiding, {
|
219
|
+
writable: true,
|
220
|
+
value: false
|
221
|
+
});
|
222
|
+
/**
|
223
|
+
* The property for holding editor dimensions for further processing.
|
169
224
|
*
|
225
|
+
* @private
|
170
226
|
* @type {object}
|
171
227
|
*/
|
172
|
-
_this
|
228
|
+
_classPrivateFieldInitSpec(_assertThisInitialized(_this), _tempEditorDimensions, {
|
229
|
+
writable: true,
|
230
|
+
value: {}
|
231
|
+
});
|
173
232
|
/**
|
174
|
-
*
|
233
|
+
* The flag that allows processing mousedown event correctly when comments editor is triggered.
|
175
234
|
*
|
176
235
|
* @private
|
177
236
|
* @type {boolean}
|
178
237
|
*/
|
179
|
-
_this
|
180
|
-
|
181
|
-
|
182
|
-
|
238
|
+
_classPrivateFieldInitSpec(_assertThisInitialized(_this), _cellBelowCursor, {
|
239
|
+
writable: true,
|
240
|
+
value: null
|
241
|
+
});
|
242
|
+
/**
|
243
|
+
* Holds the comment value before it's actually saved to the cell meta.
|
244
|
+
*
|
245
|
+
* @private
|
246
|
+
* @type {string}
|
247
|
+
*/
|
248
|
+
_classPrivateFieldInitSpec(_assertThisInitialized(_this), _commentValueBeforeSave, {
|
249
|
+
writable: true,
|
250
|
+
value: ''
|
183
251
|
});
|
184
252
|
return _this;
|
185
253
|
}
|
186
|
-
|
187
|
-
/**
|
188
|
-
* Checks if the plugin is enabled in the handsontable settings. This method is executed in {@link Hooks#beforeInit}
|
189
|
-
* hook and if it returns `true` then the {@link Comments#enablePlugin} method is called.
|
190
|
-
*
|
191
|
-
* @returns {boolean}
|
192
|
-
*/
|
193
254
|
_createClass(Comments, [{
|
194
255
|
key: "isEnabled",
|
195
|
-
value:
|
256
|
+
value:
|
257
|
+
/**
|
258
|
+
* Checks if the plugin is enabled in the handsontable settings. This method is executed in {@link Hooks#beforeInit}
|
259
|
+
* hook and if it returns `true` then the {@link Comments#enablePlugin} method is called.
|
260
|
+
*
|
261
|
+
* @returns {boolean}
|
262
|
+
*/
|
263
|
+
function isEnabled() {
|
196
264
|
return !!this.hot.getSettings()[PLUGIN_KEY];
|
197
265
|
}
|
198
266
|
|
@@ -206,14 +274,14 @@ export var Comments = /*#__PURE__*/function (_BasePlugin) {
|
|
206
274
|
if (this.enabled) {
|
207
275
|
return;
|
208
276
|
}
|
209
|
-
if (!this
|
210
|
-
this
|
277
|
+
if (!_classPrivateFieldGet(this, _editor)) {
|
278
|
+
_classPrivateFieldSet(this, _editor, new CommentEditor(this.hot.rootDocument, this.hot.isRtl()));
|
211
279
|
}
|
212
280
|
if (!this.eventManager) {
|
213
281
|
this.eventManager = new EventManager(this);
|
214
282
|
}
|
215
|
-
if (!this
|
216
|
-
this
|
283
|
+
if (!_classPrivateFieldGet(this, _displaySwitch)) {
|
284
|
+
_classPrivateFieldSet(this, _displaySwitch, new DisplaySwitch(this.getDisplayDelaySetting()));
|
217
285
|
}
|
218
286
|
this.addHook('afterContextMenuDefaultOptions', function (options) {
|
219
287
|
return _this2.addToContextMenu(options);
|
@@ -221,21 +289,22 @@ export var Comments = /*#__PURE__*/function (_BasePlugin) {
|
|
221
289
|
this.addHook('afterRenderer', function (TD, row, col, prop, value, cellProperties) {
|
222
290
|
return _this2.onAfterRenderer(TD, cellProperties);
|
223
291
|
});
|
224
|
-
this.addHook('
|
225
|
-
return _this2.
|
226
|
-
});
|
227
|
-
this.addHook('afterScrollVertically', function () {
|
228
|
-
return _this2.hide();
|
292
|
+
this.addHook('afterScroll', function () {
|
293
|
+
return _this2.onAfterScroll();
|
229
294
|
});
|
230
295
|
this.addHook('afterBeginEditing', function () {
|
231
296
|
return _this2.hide();
|
232
297
|
});
|
233
|
-
this.
|
298
|
+
this.addHook('afterDocumentKeyDown', function (event) {
|
299
|
+
return _this2.onAfterDocumentKeyDown(event);
|
300
|
+
});
|
301
|
+
_classPrivateFieldGet(this, _displaySwitch).addLocalHook('hide', function () {
|
234
302
|
return _this2.hide();
|
235
303
|
});
|
236
|
-
this.
|
304
|
+
_classPrivateFieldGet(this, _displaySwitch).addLocalHook('show', function (row, col) {
|
237
305
|
return _this2.showAtCell(row, col);
|
238
306
|
});
|
307
|
+
this.registerShortcuts();
|
239
308
|
this.registerListeners();
|
240
309
|
_get(_getPrototypeOf(Comments.prototype), "enablePlugin", this).call(this);
|
241
310
|
}
|
@@ -249,10 +318,8 @@ export var Comments = /*#__PURE__*/function (_BasePlugin) {
|
|
249
318
|
}, {
|
250
319
|
key: "updatePlugin",
|
251
320
|
value: function updatePlugin() {
|
252
|
-
this.
|
253
|
-
this.enablePlugin();
|
321
|
+
_classPrivateFieldGet(this, _displaySwitch).updateDelay(this.getDisplayDelaySetting());
|
254
322
|
_get(_getPrototypeOf(Comments.prototype), "updatePlugin", this).call(this);
|
255
|
-
this.displaySwitch.updateDelay(this.getDisplayDelaySetting());
|
256
323
|
}
|
257
324
|
|
258
325
|
/**
|
@@ -261,9 +328,82 @@ export var Comments = /*#__PURE__*/function (_BasePlugin) {
|
|
261
328
|
}, {
|
262
329
|
key: "disablePlugin",
|
263
330
|
value: function disablePlugin() {
|
331
|
+
this.unregisterShortcuts();
|
264
332
|
_get(_getPrototypeOf(Comments.prototype), "disablePlugin", this).call(this);
|
265
333
|
}
|
266
334
|
|
335
|
+
/**
|
336
|
+
* Register shortcuts responsible for toggling context menu.
|
337
|
+
*
|
338
|
+
* @private
|
339
|
+
*/
|
340
|
+
}, {
|
341
|
+
key: "registerShortcuts",
|
342
|
+
value: function registerShortcuts() {
|
343
|
+
var _this3 = this;
|
344
|
+
var manager = this.hot.getShortcutManager();
|
345
|
+
var gridContext = manager.getContext('grid');
|
346
|
+
var pluginContext = manager.addContext(SHORTCUTS_CONTEXT_NAME);
|
347
|
+
gridContext.addShortcut({
|
348
|
+
keys: [['Control', 'Alt', 'M']],
|
349
|
+
callback: function callback() {
|
350
|
+
var range = _this3.hot.getSelectedRangeLast();
|
351
|
+
_classPrivateFieldSet(_this3, _preventEditorHiding, true);
|
352
|
+
_this3.hot.scrollToFocusedCell(function () {
|
353
|
+
_this3.setRange(range);
|
354
|
+
_this3.show();
|
355
|
+
_this3.focusEditor();
|
356
|
+
manager.setActiveContextName(SHORTCUTS_CONTEXT_NAME);
|
357
|
+
_this3.hot._registerTimeout(function () {
|
358
|
+
_classPrivateFieldSet(_this3, _preventEditorHiding, false);
|
359
|
+
});
|
360
|
+
});
|
361
|
+
},
|
362
|
+
stopPropagation: true,
|
363
|
+
runOnlyIf: function runOnlyIf() {
|
364
|
+
var _this3$hot$getSelecte;
|
365
|
+
return ((_this3$hot$getSelecte = _this3.hot.getSelectedRangeLast()) === null || _this3$hot$getSelecte === void 0 ? void 0 : _this3$hot$getSelecte.highlight.isCell()) && !_classPrivateFieldGet(_this3, _editor).isVisible();
|
366
|
+
},
|
367
|
+
group: SHORTCUTS_GROUP
|
368
|
+
});
|
369
|
+
pluginContext.addShortcut({
|
370
|
+
keys: [['Escape']],
|
371
|
+
callback: function callback() {
|
372
|
+
_classPrivateFieldGet(_this3, _editor).setValue(_classPrivateFieldGet(_this3, _commentValueBeforeSave));
|
373
|
+
_this3.hide();
|
374
|
+
manager.setActiveContextName('grid');
|
375
|
+
},
|
376
|
+
runOnlyIf: function runOnlyIf() {
|
377
|
+
var _this3$hot$getSelecte2;
|
378
|
+
return ((_this3$hot$getSelecte2 = _this3.hot.getSelectedRangeLast()) === null || _this3$hot$getSelecte2 === void 0 ? void 0 : _this3$hot$getSelecte2.highlight.isCell()) && _classPrivateFieldGet(_this3, _editor).isVisible();
|
379
|
+
},
|
380
|
+
group: SHORTCUTS_GROUP
|
381
|
+
});
|
382
|
+
pluginContext.addShortcut({
|
383
|
+
keys: [['Control/Meta', 'Enter']],
|
384
|
+
callback: function callback() {
|
385
|
+
_this3.hide();
|
386
|
+
manager.setActiveContextName('grid');
|
387
|
+
},
|
388
|
+
runOnlyIf: function runOnlyIf() {
|
389
|
+
var _this3$hot$getSelecte3;
|
390
|
+
return ((_this3$hot$getSelecte3 = _this3.hot.getSelectedRangeLast()) === null || _this3$hot$getSelecte3 === void 0 ? void 0 : _this3$hot$getSelecte3.highlight.isCell()) && _classPrivateFieldGet(_this3, _editor).isVisible();
|
391
|
+
},
|
392
|
+
group: SHORTCUTS_GROUP
|
393
|
+
});
|
394
|
+
}
|
395
|
+
|
396
|
+
/**
|
397
|
+
* Unregister shortcuts responsible for toggling context menu.
|
398
|
+
*
|
399
|
+
* @private
|
400
|
+
*/
|
401
|
+
}, {
|
402
|
+
key: "unregisterShortcuts",
|
403
|
+
value: function unregisterShortcuts() {
|
404
|
+
this.hot.getShortcutManager().getContext('grid').removeShortcutsByGroup(SHORTCUTS_GROUP);
|
405
|
+
}
|
406
|
+
|
267
407
|
/**
|
268
408
|
* Registers all necessary DOM listeners.
|
269
409
|
*
|
@@ -272,25 +412,29 @@ export var Comments = /*#__PURE__*/function (_BasePlugin) {
|
|
272
412
|
}, {
|
273
413
|
key: "registerListeners",
|
274
414
|
value: function registerListeners() {
|
275
|
-
var
|
415
|
+
var _this4 = this;
|
276
416
|
var rootDocument = this.hot.rootDocument;
|
417
|
+
var editorElement = this.getEditorInputElement();
|
277
418
|
this.eventManager.addEventListener(rootDocument, 'mouseover', function (event) {
|
278
|
-
return
|
419
|
+
return _this4.onMouseOver(event);
|
279
420
|
});
|
280
421
|
this.eventManager.addEventListener(rootDocument, 'mousedown', function (event) {
|
281
|
-
return
|
422
|
+
return _this4.onMouseDown(event);
|
282
423
|
});
|
283
424
|
this.eventManager.addEventListener(rootDocument, 'mouseup', function () {
|
284
|
-
return
|
425
|
+
return _this4.onMouseUp();
|
426
|
+
});
|
427
|
+
this.eventManager.addEventListener(editorElement, 'focus', function () {
|
428
|
+
return _this4.onEditorFocus();
|
285
429
|
});
|
286
|
-
this.eventManager.addEventListener(
|
287
|
-
return
|
430
|
+
this.eventManager.addEventListener(editorElement, 'blur', function () {
|
431
|
+
return _this4.onEditorBlur();
|
288
432
|
});
|
289
|
-
this.eventManager.addEventListener(
|
290
|
-
return
|
433
|
+
this.eventManager.addEventListener(editorElement, 'mousedown', function (event) {
|
434
|
+
return _this4.onEditorMouseDown(event);
|
291
435
|
});
|
292
|
-
this.eventManager.addEventListener(
|
293
|
-
return
|
436
|
+
this.eventManager.addEventListener(editorElement, 'mouseup', function (event) {
|
437
|
+
return _this4.onEditorMouseUp(event);
|
294
438
|
});
|
295
439
|
}
|
296
440
|
|
@@ -338,7 +482,7 @@ export var Comments = /*#__PURE__*/function (_BasePlugin) {
|
|
338
482
|
}, {
|
339
483
|
key: "targetIsCommentTextArea",
|
340
484
|
value: function targetIsCommentTextArea(event) {
|
341
|
-
return this.
|
485
|
+
return this.getEditorInputElement() === event.target;
|
342
486
|
}
|
343
487
|
|
344
488
|
/**
|
@@ -352,7 +496,7 @@ export var Comments = /*#__PURE__*/function (_BasePlugin) {
|
|
352
496
|
if (!this.range.from) {
|
353
497
|
throw new Error('Before using this method, first set cell range (hot.getPlugin("comment").setRange())');
|
354
498
|
}
|
355
|
-
var editorValue = this.
|
499
|
+
var editorValue = _classPrivateFieldGet(this, _editor).getValue();
|
356
500
|
var comment = '';
|
357
501
|
if (value !== null && value !== void 0) {
|
358
502
|
comment = value;
|
@@ -461,8 +605,9 @@ export var Comments = /*#__PURE__*/function (_BasePlugin) {
|
|
461
605
|
return false;
|
462
606
|
}
|
463
607
|
var meta = this.hot.getCellMeta(this.range.from.row, this.range.from.col);
|
464
|
-
this.
|
465
|
-
this.
|
608
|
+
_classPrivateFieldGet(this, _displaySwitch).cancelHiding();
|
609
|
+
_classPrivateFieldGet(this, _editor).setValue(meta[META_COMMENT] ? meta[META_COMMENT][META_COMMENT_VALUE] : null || '');
|
610
|
+
_classPrivateFieldGet(this, _editor).show();
|
466
611
|
this.refreshEditor(true);
|
467
612
|
return true;
|
468
613
|
}
|
@@ -489,7 +634,7 @@ export var Comments = /*#__PURE__*/function (_BasePlugin) {
|
|
489
634
|
}, {
|
490
635
|
key: "hide",
|
491
636
|
value: function hide() {
|
492
|
-
this.
|
637
|
+
_classPrivateFieldGet(this, _editor).hide();
|
493
638
|
}
|
494
639
|
|
495
640
|
/**
|
@@ -502,7 +647,7 @@ export var Comments = /*#__PURE__*/function (_BasePlugin) {
|
|
502
647
|
value: function refreshEditor() {
|
503
648
|
var _renderableRow, _renderableColumn;
|
504
649
|
var force = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
|
505
|
-
if (!force && (!this.range.from || !this.
|
650
|
+
if (!force && (!this.range.from || !_classPrivateFieldGet(this, _editor).isVisible())) {
|
506
651
|
return;
|
507
652
|
}
|
508
653
|
var _this$hot = this.hot,
|
@@ -518,7 +663,7 @@ export var Comments = /*#__PURE__*/function (_BasePlugin) {
|
|
518
663
|
|
519
664
|
// Reset the editor position to (0, 0) so the opening direction calculation wouldn't be influenced by its
|
520
665
|
// previous position
|
521
|
-
this.
|
666
|
+
_classPrivateFieldGet(this, _editor).setPosition(0, 0);
|
522
667
|
if (renderableRow === null) {
|
523
668
|
renderableRow = rowIndexMapper.getRenderableFromVisualIndex(rowIndexMapper.getNearestNotHiddenIndex(visualRow, -1));
|
524
669
|
}
|
@@ -541,9 +686,9 @@ export var Comments = /*#__PURE__*/function (_BasePlugin) {
|
|
541
686
|
}, true);
|
542
687
|
var commentStyle = this.getCommentMeta(visualRow, visualColumn, META_STYLE);
|
543
688
|
if (commentStyle) {
|
544
|
-
this.
|
689
|
+
_classPrivateFieldGet(this, _editor).setSize(commentStyle.width, commentStyle.height);
|
545
690
|
} else {
|
546
|
-
this.
|
691
|
+
_classPrivateFieldGet(this, _editor).resetSize();
|
547
692
|
}
|
548
693
|
var lastColWidth = isBeforeRenderedColumns ? 0 : wtTable.getStretchedColumnWidth(renderableColumn);
|
549
694
|
var lastRowHeight = targetingPreviousRow && !isBeforeRenderedRows ? outerHeight(TD) : 0;
|
@@ -552,9 +697,9 @@ export var Comments = /*#__PURE__*/function (_BasePlugin) {
|
|
552
697
|
top = _TD$getBoundingClient.top,
|
553
698
|
cellWidth = _TD$getBoundingClient.width,
|
554
699
|
cellHeight = _TD$getBoundingClient.height;
|
555
|
-
var
|
556
|
-
editorWidth =
|
557
|
-
editorHeight =
|
700
|
+
var _classPrivateFieldGet2 = _classPrivateFieldGet(this, _editor).getSize(),
|
701
|
+
editorWidth = _classPrivateFieldGet2.width,
|
702
|
+
editorHeight = _classPrivateFieldGet2.height;
|
558
703
|
var _this$hot$rootWindow = this.hot.rootWindow,
|
559
704
|
innerWidth = _this$hot$rootWindow.innerWidth,
|
560
705
|
innerHeight = _this$hot$rootWindow.innerHeight;
|
@@ -574,30 +719,17 @@ export var Comments = /*#__PURE__*/function (_BasePlugin) {
|
|
574
719
|
if (top + editorHeight > innerHeight) {
|
575
720
|
y -= editorHeight - cellHeight + 1;
|
576
721
|
}
|
577
|
-
this.
|
578
|
-
this.
|
722
|
+
_classPrivateFieldGet(this, _editor).setPosition(x, y);
|
723
|
+
_classPrivateFieldGet(this, _editor).setReadOnlyState(this.getCommentMeta(visualRow, visualColumn, META_READONLY));
|
579
724
|
}
|
580
725
|
|
581
726
|
/**
|
582
|
-
*
|
583
|
-
*
|
584
|
-
* @private
|
585
|
-
* @returns {boolean}
|
727
|
+
* Focuses the comments editor element.
|
586
728
|
*/
|
587
729
|
}, {
|
588
|
-
key: "
|
589
|
-
value: function
|
590
|
-
|
591
|
-
if (!selected) {
|
592
|
-
return false;
|
593
|
-
}
|
594
|
-
var hasComment = false;
|
595
|
-
var cell = selected.getTopStartCorner(); // IN EXCEL THERE IS COMMENT ONLY FOR TOP LEFT CELL IN SELECTION
|
596
|
-
|
597
|
-
if (this.getCommentMeta(cell.row, cell.col, META_COMMENT_VALUE)) {
|
598
|
-
hasComment = true;
|
599
|
-
}
|
600
|
-
return hasComment;
|
730
|
+
key: "focusEditor",
|
731
|
+
value: function focusEditor() {
|
732
|
+
_classPrivateFieldGet(this, _editor).focus();
|
601
733
|
}
|
602
734
|
|
603
735
|
/**
|
@@ -651,7 +783,7 @@ export var Comments = /*#__PURE__*/function (_BasePlugin) {
|
|
651
783
|
if (!this.hot.view || !this.hot.view._wt) {
|
652
784
|
return;
|
653
785
|
}
|
654
|
-
if (!this
|
786
|
+
if (!_classPrivateFieldGet(this, _preventEditorAutoSwitch) && !this.targetIsCommentTextArea(event)) {
|
655
787
|
var eventCell = closest(event.target, 'TD', 'TBODY');
|
656
788
|
var coordinates = null;
|
657
789
|
if (eventCell) {
|
@@ -672,17 +804,16 @@ export var Comments = /*#__PURE__*/function (_BasePlugin) {
|
|
672
804
|
}, {
|
673
805
|
key: "onMouseOver",
|
674
806
|
value: function onMouseOver(event) {
|
675
|
-
var priv = privatePool.get(this);
|
676
807
|
var rootDocument = this.hot.rootDocument;
|
677
|
-
if (this
|
808
|
+
if (_classPrivateFieldGet(this, _preventEditorAutoSwitch) || _classPrivateFieldGet(this, _editor).isFocused() || hasClass(event.target, 'wtBorder') || _classPrivateFieldGet(this, _cellBelowCursor) === event.target || !_classPrivateFieldGet(this, _editor)) {
|
678
809
|
return;
|
679
810
|
}
|
680
|
-
|
811
|
+
_classPrivateFieldSet(this, _cellBelowCursor, rootDocument.elementFromPoint(event.clientX, event.clientY));
|
681
812
|
if (this.targetIsCellWithComment(event)) {
|
682
813
|
var range = this.hot._createCellRange(this.hot.getCoords(event.target));
|
683
|
-
this.
|
814
|
+
_classPrivateFieldGet(this, _displaySwitch).show(range);
|
684
815
|
} else if (isChildOf(event.target, rootDocument) && !this.targetIsCommentTextArea(event)) {
|
685
|
-
this.
|
816
|
+
_classPrivateFieldGet(this, _displaySwitch).hide();
|
686
817
|
}
|
687
818
|
}
|
688
819
|
|
@@ -694,7 +825,7 @@ export var Comments = /*#__PURE__*/function (_BasePlugin) {
|
|
694
825
|
}, {
|
695
826
|
key: "onMouseUp",
|
696
827
|
value: function onMouseUp() {
|
697
|
-
this
|
828
|
+
_classPrivateFieldSet(this, _preventEditorAutoSwitch, false);
|
698
829
|
}
|
699
830
|
|
700
831
|
/**
|
@@ -713,16 +844,33 @@ export var Comments = /*#__PURE__*/function (_BasePlugin) {
|
|
713
844
|
}
|
714
845
|
|
715
846
|
/**
|
716
|
-
*
|
847
|
+
* Hook observer the "blur" event from the comments editor element. The hook clears the
|
848
|
+
* editor content and gives back the keyboard shortcuts control by switching to the "grid" context.
|
717
849
|
*
|
718
850
|
* @private
|
719
851
|
*/
|
720
852
|
}, {
|
721
853
|
key: "onEditorBlur",
|
722
854
|
value: function onEditorBlur() {
|
855
|
+
_classPrivateFieldSet(this, _commentValueBeforeSave, '');
|
856
|
+
this.hot.getShortcutManager().setActiveContextName('grid');
|
723
857
|
this.setComment();
|
724
858
|
}
|
725
859
|
|
860
|
+
/**
|
861
|
+
* Hook observer the "focus" event from the comments editor element. The hook takes the control of
|
862
|
+
* the keyboard shortcuts by switching the context to plugins one.
|
863
|
+
*
|
864
|
+
* @private
|
865
|
+
*/
|
866
|
+
}, {
|
867
|
+
key: "onEditorFocus",
|
868
|
+
value: function onEditorFocus() {
|
869
|
+
_classPrivateFieldSet(this, _commentValueBeforeSave, this.getComment());
|
870
|
+
this.hot.listen();
|
871
|
+
this.hot.getShortcutManager().setActiveContextName(SHORTCUTS_CONTEXT_NAME);
|
872
|
+
}
|
873
|
+
|
726
874
|
/**
|
727
875
|
* `mousedown` hook. Along with `onEditorMouseUp` used to simulate the textarea resizing event.
|
728
876
|
*
|
@@ -732,11 +880,10 @@ export var Comments = /*#__PURE__*/function (_BasePlugin) {
|
|
732
880
|
}, {
|
733
881
|
key: "onEditorMouseDown",
|
734
882
|
value: function onEditorMouseDown(event) {
|
735
|
-
|
736
|
-
priv.tempEditorDimensions = {
|
883
|
+
_classPrivateFieldSet(this, _tempEditorDimensions, {
|
737
884
|
width: outerWidth(event.target),
|
738
885
|
height: outerHeight(event.target)
|
739
|
-
};
|
886
|
+
});
|
740
887
|
}
|
741
888
|
|
742
889
|
/**
|
@@ -748,10 +895,9 @@ export var Comments = /*#__PURE__*/function (_BasePlugin) {
|
|
748
895
|
}, {
|
749
896
|
key: "onEditorMouseUp",
|
750
897
|
value: function onEditorMouseUp(event) {
|
751
|
-
var priv = privatePool.get(this);
|
752
898
|
var currentWidth = outerWidth(event.target);
|
753
899
|
var currentHeight = outerHeight(event.target);
|
754
|
-
if (currentWidth !==
|
900
|
+
if (currentWidth !== _classPrivateFieldGet(this, _tempEditorDimensions).width + 1 || currentHeight !== _classPrivateFieldGet(this, _tempEditorDimensions).height + 2) {
|
755
901
|
this.updateCommentMeta(this.range.from.row, this.range.from.col, _defineProperty({}, META_STYLE, {
|
756
902
|
width: currentWidth,
|
757
903
|
height: currentHeight
|
@@ -760,144 +906,42 @@ export var Comments = /*#__PURE__*/function (_BasePlugin) {
|
|
760
906
|
}
|
761
907
|
|
762
908
|
/**
|
763
|
-
*
|
764
|
-
*
|
765
|
-
* @private
|
766
|
-
*/
|
767
|
-
}, {
|
768
|
-
key: "onContextMenuAddComment",
|
769
|
-
value: function onContextMenuAddComment() {
|
770
|
-
var coords = this.hot.getSelectedRangeLast();
|
771
|
-
this.preventEditorAutoSwitch = true;
|
772
|
-
this.displaySwitch.cancelHiding();
|
773
|
-
this.setRange({
|
774
|
-
from: coords.highlight
|
775
|
-
});
|
776
|
-
this.show();
|
777
|
-
this.hot.deselectCell();
|
778
|
-
this.editor.focus();
|
779
|
-
}
|
780
|
-
|
781
|
-
/**
|
782
|
-
* Context Menu's "remove comment" callback.
|
909
|
+
* Observes the pressed keys and if there is already opened the comment editor prevents open
|
910
|
+
* the table editor into the fast edit mode.
|
783
911
|
*
|
784
|
-
* @
|
912
|
+
* @param {Event} event The keydown event.
|
785
913
|
*/
|
786
914
|
}, {
|
787
|
-
key: "
|
788
|
-
value: function
|
789
|
-
|
790
|
-
|
791
|
-
|
792
|
-
coords.forAll(function (row, column) {
|
793
|
-
if (row >= 0 && column >= 0) {
|
794
|
-
_this4.removeCommentAtCell(row, column, false);
|
795
|
-
}
|
796
|
-
});
|
797
|
-
this.hot.render();
|
915
|
+
key: "onAfterDocumentKeyDown",
|
916
|
+
value: function onAfterDocumentKeyDown(event) {
|
917
|
+
if (_classPrivateFieldGet(this, _editor).isVisible()) {
|
918
|
+
stopImmediatePropagation(event);
|
919
|
+
}
|
798
920
|
}
|
799
921
|
|
800
922
|
/**
|
801
|
-
*
|
802
|
-
*
|
803
|
-
* @private
|
923
|
+
* Observes the changes in the scroll position if triggered it hides the comment editor.
|
804
924
|
*/
|
805
925
|
}, {
|
806
|
-
key: "
|
807
|
-
value: function
|
808
|
-
|
809
|
-
|
810
|
-
|
811
|
-
coords.forAll(function (row, column) {
|
812
|
-
if (row >= 0 && column >= 0) {
|
813
|
-
var currentState = !!_this5.getCommentMeta(row, column, META_READONLY);
|
814
|
-
_this5.updateCommentMeta(row, column, _defineProperty({}, META_READONLY, !currentState));
|
815
|
-
}
|
816
|
-
});
|
926
|
+
key: "onAfterScroll",
|
927
|
+
value: function onAfterScroll() {
|
928
|
+
if (!_classPrivateFieldGet(this, _preventEditorHiding)) {
|
929
|
+
this.hide();
|
930
|
+
}
|
817
931
|
}
|
818
932
|
|
819
933
|
/**
|
820
934
|
* Add Comments plugin options to the Context Menu.
|
821
935
|
*
|
822
936
|
* @private
|
823
|
-
* @param {object}
|
937
|
+
* @param {object} options The menu options.
|
824
938
|
*/
|
825
939
|
}, {
|
826
940
|
key: "addToContextMenu",
|
827
|
-
value: function addToContextMenu(
|
828
|
-
|
829
|
-
|
830
|
-
|
831
|
-
if (!range) {
|
832
|
-
return false;
|
833
|
-
}
|
834
|
-
if (range.isSingleHeader() || range.highlight.isHeader()) {
|
835
|
-
return false;
|
836
|
-
}
|
837
|
-
return _this6.hot.rowIndexMapper.getRenderableIndexesLength() > 0 && _this6.hot.columnIndexMapper.getRenderableIndexesLength() > 0;
|
838
|
-
};
|
839
|
-
defaultOptions.items.push({
|
840
|
-
name: '---------'
|
841
|
-
}, {
|
842
|
-
key: 'commentsAddEdit',
|
843
|
-
name: function name() {
|
844
|
-
if (_this6.checkSelectionCommentsConsistency()) {
|
845
|
-
return _this6.hot.getTranslatedPhrase(C.CONTEXTMENU_ITEMS_EDIT_COMMENT);
|
846
|
-
}
|
847
|
-
return _this6.hot.getTranslatedPhrase(C.CONTEXTMENU_ITEMS_ADD_COMMENT);
|
848
|
-
},
|
849
|
-
callback: function callback() {
|
850
|
-
return _this6.onContextMenuAddComment();
|
851
|
-
},
|
852
|
-
disabled: function disabled() {
|
853
|
-
if (!isThereAnySelectedCellToProcess()) {
|
854
|
-
return true;
|
855
|
-
}
|
856
|
-
return !(_this6.hot.getSelectedLast() && !_this6.hot.selection.isSelectedByCorner());
|
857
|
-
}
|
858
|
-
}, {
|
859
|
-
key: 'commentsRemove',
|
860
|
-
name: function name() {
|
861
|
-
return this.getTranslatedPhrase(C.CONTEXTMENU_ITEMS_REMOVE_COMMENT);
|
862
|
-
},
|
863
|
-
callback: function callback() {
|
864
|
-
return _this6.onContextMenuRemoveComment();
|
865
|
-
},
|
866
|
-
disabled: function disabled() {
|
867
|
-
if (!isThereAnySelectedCellToProcess()) {
|
868
|
-
return true;
|
869
|
-
}
|
870
|
-
return !(_this6.hot.getSelectedLast() && !_this6.hot.selection.isSelectedByCorner());
|
871
|
-
}
|
872
|
-
}, {
|
873
|
-
key: 'commentsReadOnly',
|
874
|
-
name: function name() {
|
875
|
-
var _this7 = this;
|
876
|
-
var label = this.getTranslatedPhrase(C.CONTEXTMENU_ITEMS_READ_ONLY_COMMENT);
|
877
|
-
var hasProperty = checkSelectionConsistency(this.getSelectedRangeLast(), function (row, col) {
|
878
|
-
var readOnlyProperty = _this7.getCellMeta(row, col)[META_COMMENT];
|
879
|
-
if (readOnlyProperty) {
|
880
|
-
readOnlyProperty = readOnlyProperty[META_READONLY];
|
881
|
-
}
|
882
|
-
if (readOnlyProperty) {
|
883
|
-
return true;
|
884
|
-
}
|
885
|
-
});
|
886
|
-
if (hasProperty) {
|
887
|
-
label = markLabelAsSelected(label);
|
888
|
-
}
|
889
|
-
return label;
|
890
|
-
},
|
891
|
-
callback: function callback() {
|
892
|
-
return _this6.onContextMenuMakeReadOnly();
|
893
|
-
},
|
894
|
-
disabled: function disabled() {
|
895
|
-
if (!isThereAnySelectedCellToProcess()) {
|
896
|
-
return true;
|
897
|
-
}
|
898
|
-
return !(_this6.hot.getSelectedLast() && !_this6.hot.selection.isSelectedByCorner()) || !_this6.checkSelectionCommentsConsistency();
|
899
|
-
}
|
900
|
-
});
|
941
|
+
value: function addToContextMenu(options) {
|
942
|
+
options.items.push({
|
943
|
+
name: SEPARATOR
|
944
|
+
}, addEditCommentItem(this), removeCommentItem(this), readOnlyCommentItem(this));
|
901
945
|
}
|
902
946
|
|
903
947
|
/**
|
@@ -915,17 +959,29 @@ export var Comments = /*#__PURE__*/function (_BasePlugin) {
|
|
915
959
|
}
|
916
960
|
}
|
917
961
|
|
962
|
+
/**
|
963
|
+
* Gets the editors input element.
|
964
|
+
*
|
965
|
+
* @private
|
966
|
+
* @returns {HTMLTextAreaElement}
|
967
|
+
*/
|
968
|
+
}, {
|
969
|
+
key: "getEditorInputElement",
|
970
|
+
value: function getEditorInputElement() {
|
971
|
+
return _classPrivateFieldGet(this, _editor).getInputElement();
|
972
|
+
}
|
973
|
+
|
918
974
|
/**
|
919
975
|
* Destroys the plugin instance.
|
920
976
|
*/
|
921
977
|
}, {
|
922
978
|
key: "destroy",
|
923
979
|
value: function destroy() {
|
924
|
-
if (this
|
925
|
-
this.
|
980
|
+
if (_classPrivateFieldGet(this, _editor)) {
|
981
|
+
_classPrivateFieldGet(this, _editor).destroy();
|
926
982
|
}
|
927
|
-
if (this
|
928
|
-
this.
|
983
|
+
if (_classPrivateFieldGet(this, _displaySwitch)) {
|
984
|
+
_classPrivateFieldGet(this, _displaySwitch).destroy();
|
929
985
|
}
|
930
986
|
_get(_getPrototypeOf(Comments.prototype), "destroy", this).call(this);
|
931
987
|
}
|