handsontable 0.0.0-next-1c936db-20240912 → 0.0.0-next-108000e-20240912
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 +12 -0
- package/core.js +152 -0
- package/core.mjs +152 -0
- package/dist/handsontable.css +2 -2
- package/dist/handsontable.full.css +2 -2
- package/dist/handsontable.full.js +213 -19
- package/dist/handsontable.full.min.css +2 -2
- package/dist/handsontable.full.min.js +5 -5
- package/dist/handsontable.js +213 -19
- package/dist/handsontable.min.css +2 -2
- package/dist/handsontable.min.js +11 -11
- package/helpers/mixed.js +1 -1
- package/helpers/mixed.mjs +1 -1
- package/package.json +1 -1
- package/plugins/contextMenu/contextMenu.js +7 -0
- package/plugins/contextMenu/contextMenu.mjs +7 -0
- package/plugins/contextMenu/menu/menu.js +47 -14
- package/plugins/contextMenu/menu/menu.mjs +48 -15
- package/plugins/filters/filters.js +2 -0
- package/plugins/filters/filters.mjs +2 -0
package/base.js
CHANGED
@@ -45,8 +45,8 @@ Handsontable.hooks = _pluginHooks.default.getSingleton();
|
|
45
45
|
Handsontable.CellCoords = _src.CellCoords;
|
46
46
|
Handsontable.CellRange = _src.CellRange;
|
47
47
|
Handsontable.packageName = 'handsontable';
|
48
|
-
Handsontable.buildDate = "12/09/2024
|
49
|
-
Handsontable.version = "0.0.0-next-
|
48
|
+
Handsontable.buildDate = "12/09/2024 19:03:58";
|
49
|
+
Handsontable.version = "0.0.0-next-108000e-20240912";
|
50
50
|
Handsontable.languages = {
|
51
51
|
dictionaryKeys: _registry.dictionaryKeys,
|
52
52
|
getLanguageDictionary: _registry.getLanguageDictionary,
|
package/base.mjs
CHANGED
@@ -35,8 +35,8 @@ Handsontable.hooks = Hooks.getSingleton();
|
|
35
35
|
Handsontable.CellCoords = CellCoords;
|
36
36
|
Handsontable.CellRange = CellRange;
|
37
37
|
Handsontable.packageName = 'handsontable';
|
38
|
-
Handsontable.buildDate = "12/09/2024
|
39
|
-
Handsontable.version = "0.0.0-next-
|
38
|
+
Handsontable.buildDate = "12/09/2024 19:04:03";
|
39
|
+
Handsontable.version = "0.0.0-next-108000e-20240912";
|
40
40
|
Handsontable.languages = {
|
41
41
|
dictionaryKeys,
|
42
42
|
getLanguageDictionary,
|
package/core.d.ts
CHANGED
@@ -81,8 +81,20 @@ export default class Core {
|
|
81
81
|
getDataAtRowProp(row: number, prop: string): CellValue;
|
82
82
|
getDataType(rowFrom: number, columnFrom: number, rowTo: number, columnTo: number): CellType | 'mixed';
|
83
83
|
getDirectionFactor(): 1 | -1;
|
84
|
+
getFirstFullyVisibleColumn(): number | null;
|
85
|
+
getFirstFullyVisibleRow(): number | null;
|
86
|
+
getFirstPartiallyVisibleColumn(): number | null;
|
87
|
+
getFirstPartiallyVisibleRow(): number | null;
|
88
|
+
getFirstRenderedVisibleColumn(): number | null;
|
89
|
+
getFirstRenderedVisibleRow(): number | null;
|
84
90
|
getFocusManager(): FocusManager;
|
85
91
|
getInstance(): Core;
|
92
|
+
getLastFullyVisibleColumn(): number | null;
|
93
|
+
getLastFullyVisibleRow(): number | null;
|
94
|
+
getLastPartiallyVisibleColumn(): number | null;
|
95
|
+
getLastPartiallyVisibleRow(): number | null;
|
96
|
+
getLastRenderedVisibleColumn(): number | null;
|
97
|
+
getLastRenderedVisibleRow(): number | null;
|
86
98
|
getPlugin<T extends keyof Plugins>(pluginName: T): Plugins[T];
|
87
99
|
getPlugin(pluginName: string): Plugins['basePlugin'];
|
88
100
|
getRowHeader(): Array<string | number>;
|
package/core.js
CHANGED
@@ -4241,6 +4241,158 @@ function Core(rootElement, userSettings) {
|
|
4241
4241
|
return editorManager.getActiveEditor();
|
4242
4242
|
};
|
4243
4243
|
|
4244
|
+
/**
|
4245
|
+
* Returns the first rendered row in the DOM (usually, it is not visible in the table's viewport).
|
4246
|
+
*
|
4247
|
+
* @since 14.6.0
|
4248
|
+
* @memberof Core#
|
4249
|
+
* @function getFirstRenderedVisibleRow
|
4250
|
+
* @returns {number | null}
|
4251
|
+
*/
|
4252
|
+
this.getFirstRenderedVisibleRow = function () {
|
4253
|
+
return instance.view.getFirstRenderedVisibleRow();
|
4254
|
+
};
|
4255
|
+
|
4256
|
+
/**
|
4257
|
+
* Returns the last rendered row in the DOM (usually, it is not visible in the table's viewport).
|
4258
|
+
*
|
4259
|
+
* @since 14.6.0
|
4260
|
+
* @memberof Core#
|
4261
|
+
* @function getLastRenderedVisibleRow
|
4262
|
+
* @returns {number | null}
|
4263
|
+
*/
|
4264
|
+
this.getLastRenderedVisibleRow = function () {
|
4265
|
+
return instance.view.getLastRenderedVisibleRow();
|
4266
|
+
};
|
4267
|
+
|
4268
|
+
/**
|
4269
|
+
* Returns the first rendered column in the DOM (usually, it is not visible in the table's viewport).
|
4270
|
+
*
|
4271
|
+
* @since 14.6.0
|
4272
|
+
* @memberof Core#
|
4273
|
+
* @function getFirstRenderedVisibleColumn
|
4274
|
+
* @returns {number | null}
|
4275
|
+
*/
|
4276
|
+
this.getFirstRenderedVisibleColumn = function () {
|
4277
|
+
return instance.view.getFirstRenderedVisibleColumn();
|
4278
|
+
};
|
4279
|
+
|
4280
|
+
/**
|
4281
|
+
* Returns the last rendered column in the DOM (usually, it is not visible in the table's viewport).
|
4282
|
+
*
|
4283
|
+
* @since 14.6.0
|
4284
|
+
* @memberof Core#
|
4285
|
+
* @function getLastRenderedVisibleColumn
|
4286
|
+
* @returns {number | null}
|
4287
|
+
*/
|
4288
|
+
this.getLastRenderedVisibleColumn = function () {
|
4289
|
+
return instance.view.getLastRenderedVisibleColumn();
|
4290
|
+
};
|
4291
|
+
|
4292
|
+
/**
|
4293
|
+
* Returns the first fully visible row in the table viewport. When the table has overlays the method returns
|
4294
|
+
* the first row of the main table that is not overlapped by overlay.
|
4295
|
+
*
|
4296
|
+
* @since 14.6.0
|
4297
|
+
* @memberof Core#
|
4298
|
+
* @function getFirstFullyVisibleRow
|
4299
|
+
* @returns {number | null}
|
4300
|
+
*/
|
4301
|
+
this.getFirstFullyVisibleRow = function () {
|
4302
|
+
return instance.view.getFirstFullyVisibleRow();
|
4303
|
+
};
|
4304
|
+
|
4305
|
+
/**
|
4306
|
+
* Returns the last fully visible row in the table viewport. When the table has overlays the method returns
|
4307
|
+
* the first row of the main table that is not overlapped by overlay.
|
4308
|
+
*
|
4309
|
+
* @since 14.6.0
|
4310
|
+
* @memberof Core#
|
4311
|
+
* @function getLastFullyVisibleRow
|
4312
|
+
* @returns {number | null}
|
4313
|
+
*/
|
4314
|
+
this.getLastFullyVisibleRow = function () {
|
4315
|
+
return instance.view.getLastFullyVisibleRow();
|
4316
|
+
};
|
4317
|
+
|
4318
|
+
/**
|
4319
|
+
* Returns the first fully visible column in the table viewport. When the table has overlays the method returns
|
4320
|
+
* the first row of the main table that is not overlapped by overlay.
|
4321
|
+
*
|
4322
|
+
* @since 14.6.0
|
4323
|
+
* @memberof Core#
|
4324
|
+
* @function getFirstFullyVisibleColumn
|
4325
|
+
* @returns {number | null}
|
4326
|
+
*/
|
4327
|
+
this.getFirstFullyVisibleColumn = function () {
|
4328
|
+
return instance.view.getFirstFullyVisibleColumn();
|
4329
|
+
};
|
4330
|
+
|
4331
|
+
/**
|
4332
|
+
* Returns the last fully visible column in the table viewport. When the table has overlays the method returns
|
4333
|
+
* the first row of the main table that is not overlapped by overlay.
|
4334
|
+
*
|
4335
|
+
* @since 14.6.0
|
4336
|
+
* @memberof Core#
|
4337
|
+
* @function getLastFullyVisibleColumn
|
4338
|
+
* @returns {number | null}
|
4339
|
+
*/
|
4340
|
+
this.getLastFullyVisibleColumn = function () {
|
4341
|
+
return instance.view.getLastFullyVisibleColumn();
|
4342
|
+
};
|
4343
|
+
|
4344
|
+
/**
|
4345
|
+
* Returns the first partially visible row in the table viewport. When the table has overlays the method returns
|
4346
|
+
* the first row of the main table that is not overlapped by overlay.
|
4347
|
+
*
|
4348
|
+
* @since 14.6.0
|
4349
|
+
* @memberof Core#
|
4350
|
+
* @function getFirstPartiallyVisibleRow
|
4351
|
+
* @returns {number | null}
|
4352
|
+
*/
|
4353
|
+
this.getFirstPartiallyVisibleRow = function () {
|
4354
|
+
return instance.view.getFirstPartiallyVisibleRow();
|
4355
|
+
};
|
4356
|
+
|
4357
|
+
/**
|
4358
|
+
* Returns the last partially visible row in the table viewport. When the table has overlays the method returns
|
4359
|
+
* the first row of the main table that is not overlapped by overlay.
|
4360
|
+
*
|
4361
|
+
* @since 14.6.0
|
4362
|
+
* @memberof Core#
|
4363
|
+
* @function getLastPartiallyVisibleRow
|
4364
|
+
* @returns {number | null}
|
4365
|
+
*/
|
4366
|
+
this.getLastPartiallyVisibleRow = function () {
|
4367
|
+
return instance.view.getLastPartiallyVisibleRow();
|
4368
|
+
};
|
4369
|
+
|
4370
|
+
/**
|
4371
|
+
* Returns the first partially visible column in the table viewport. When the table has overlays the method returns
|
4372
|
+
* the first row of the main table that is not overlapped by overlay.
|
4373
|
+
*
|
4374
|
+
* @since 14.6.0
|
4375
|
+
* @memberof Core#
|
4376
|
+
* @function getFirstPartiallyVisibleColumn
|
4377
|
+
* @returns {number | null}
|
4378
|
+
*/
|
4379
|
+
this.getFirstPartiallyVisibleColumn = function () {
|
4380
|
+
return instance.view.getFirstPartiallyVisibleColumn();
|
4381
|
+
};
|
4382
|
+
|
4383
|
+
/**
|
4384
|
+
* Returns the last partially visible column in the table viewport. When the table has overlays the method returns
|
4385
|
+
* the first row of the main table that is not overlapped by overlay.
|
4386
|
+
*
|
4387
|
+
* @since 14.6.0
|
4388
|
+
* @memberof Core#
|
4389
|
+
* @function getLastPartiallyVisibleColumn
|
4390
|
+
* @returns {number | null}
|
4391
|
+
*/
|
4392
|
+
this.getLastPartiallyVisibleColumn = function () {
|
4393
|
+
return instance.view.getLastPartiallyVisibleColumn();
|
4394
|
+
};
|
4395
|
+
|
4244
4396
|
/**
|
4245
4397
|
* Returns plugin instance by provided its name.
|
4246
4398
|
*
|
package/core.mjs
CHANGED
@@ -4236,6 +4236,158 @@ export default function Core(rootElement, userSettings) {
|
|
4236
4236
|
return editorManager.getActiveEditor();
|
4237
4237
|
};
|
4238
4238
|
|
4239
|
+
/**
|
4240
|
+
* Returns the first rendered row in the DOM (usually, it is not visible in the table's viewport).
|
4241
|
+
*
|
4242
|
+
* @since 14.6.0
|
4243
|
+
* @memberof Core#
|
4244
|
+
* @function getFirstRenderedVisibleRow
|
4245
|
+
* @returns {number | null}
|
4246
|
+
*/
|
4247
|
+
this.getFirstRenderedVisibleRow = function () {
|
4248
|
+
return instance.view.getFirstRenderedVisibleRow();
|
4249
|
+
};
|
4250
|
+
|
4251
|
+
/**
|
4252
|
+
* Returns the last rendered row in the DOM (usually, it is not visible in the table's viewport).
|
4253
|
+
*
|
4254
|
+
* @since 14.6.0
|
4255
|
+
* @memberof Core#
|
4256
|
+
* @function getLastRenderedVisibleRow
|
4257
|
+
* @returns {number | null}
|
4258
|
+
*/
|
4259
|
+
this.getLastRenderedVisibleRow = function () {
|
4260
|
+
return instance.view.getLastRenderedVisibleRow();
|
4261
|
+
};
|
4262
|
+
|
4263
|
+
/**
|
4264
|
+
* Returns the first rendered column in the DOM (usually, it is not visible in the table's viewport).
|
4265
|
+
*
|
4266
|
+
* @since 14.6.0
|
4267
|
+
* @memberof Core#
|
4268
|
+
* @function getFirstRenderedVisibleColumn
|
4269
|
+
* @returns {number | null}
|
4270
|
+
*/
|
4271
|
+
this.getFirstRenderedVisibleColumn = function () {
|
4272
|
+
return instance.view.getFirstRenderedVisibleColumn();
|
4273
|
+
};
|
4274
|
+
|
4275
|
+
/**
|
4276
|
+
* Returns the last rendered column in the DOM (usually, it is not visible in the table's viewport).
|
4277
|
+
*
|
4278
|
+
* @since 14.6.0
|
4279
|
+
* @memberof Core#
|
4280
|
+
* @function getLastRenderedVisibleColumn
|
4281
|
+
* @returns {number | null}
|
4282
|
+
*/
|
4283
|
+
this.getLastRenderedVisibleColumn = function () {
|
4284
|
+
return instance.view.getLastRenderedVisibleColumn();
|
4285
|
+
};
|
4286
|
+
|
4287
|
+
/**
|
4288
|
+
* Returns the first fully visible row in the table viewport. When the table has overlays the method returns
|
4289
|
+
* the first row of the main table that is not overlapped by overlay.
|
4290
|
+
*
|
4291
|
+
* @since 14.6.0
|
4292
|
+
* @memberof Core#
|
4293
|
+
* @function getFirstFullyVisibleRow
|
4294
|
+
* @returns {number | null}
|
4295
|
+
*/
|
4296
|
+
this.getFirstFullyVisibleRow = function () {
|
4297
|
+
return instance.view.getFirstFullyVisibleRow();
|
4298
|
+
};
|
4299
|
+
|
4300
|
+
/**
|
4301
|
+
* Returns the last fully visible row in the table viewport. When the table has overlays the method returns
|
4302
|
+
* the first row of the main table that is not overlapped by overlay.
|
4303
|
+
*
|
4304
|
+
* @since 14.6.0
|
4305
|
+
* @memberof Core#
|
4306
|
+
* @function getLastFullyVisibleRow
|
4307
|
+
* @returns {number | null}
|
4308
|
+
*/
|
4309
|
+
this.getLastFullyVisibleRow = function () {
|
4310
|
+
return instance.view.getLastFullyVisibleRow();
|
4311
|
+
};
|
4312
|
+
|
4313
|
+
/**
|
4314
|
+
* Returns the first fully visible column in the table viewport. When the table has overlays the method returns
|
4315
|
+
* the first row of the main table that is not overlapped by overlay.
|
4316
|
+
*
|
4317
|
+
* @since 14.6.0
|
4318
|
+
* @memberof Core#
|
4319
|
+
* @function getFirstFullyVisibleColumn
|
4320
|
+
* @returns {number | null}
|
4321
|
+
*/
|
4322
|
+
this.getFirstFullyVisibleColumn = function () {
|
4323
|
+
return instance.view.getFirstFullyVisibleColumn();
|
4324
|
+
};
|
4325
|
+
|
4326
|
+
/**
|
4327
|
+
* Returns the last fully visible column in the table viewport. When the table has overlays the method returns
|
4328
|
+
* the first row of the main table that is not overlapped by overlay.
|
4329
|
+
*
|
4330
|
+
* @since 14.6.0
|
4331
|
+
* @memberof Core#
|
4332
|
+
* @function getLastFullyVisibleColumn
|
4333
|
+
* @returns {number | null}
|
4334
|
+
*/
|
4335
|
+
this.getLastFullyVisibleColumn = function () {
|
4336
|
+
return instance.view.getLastFullyVisibleColumn();
|
4337
|
+
};
|
4338
|
+
|
4339
|
+
/**
|
4340
|
+
* Returns the first partially visible row in the table viewport. When the table has overlays the method returns
|
4341
|
+
* the first row of the main table that is not overlapped by overlay.
|
4342
|
+
*
|
4343
|
+
* @since 14.6.0
|
4344
|
+
* @memberof Core#
|
4345
|
+
* @function getFirstPartiallyVisibleRow
|
4346
|
+
* @returns {number | null}
|
4347
|
+
*/
|
4348
|
+
this.getFirstPartiallyVisibleRow = function () {
|
4349
|
+
return instance.view.getFirstPartiallyVisibleRow();
|
4350
|
+
};
|
4351
|
+
|
4352
|
+
/**
|
4353
|
+
* Returns the last partially visible row in the table viewport. When the table has overlays the method returns
|
4354
|
+
* the first row of the main table that is not overlapped by overlay.
|
4355
|
+
*
|
4356
|
+
* @since 14.6.0
|
4357
|
+
* @memberof Core#
|
4358
|
+
* @function getLastPartiallyVisibleRow
|
4359
|
+
* @returns {number | null}
|
4360
|
+
*/
|
4361
|
+
this.getLastPartiallyVisibleRow = function () {
|
4362
|
+
return instance.view.getLastPartiallyVisibleRow();
|
4363
|
+
};
|
4364
|
+
|
4365
|
+
/**
|
4366
|
+
* Returns the first partially visible column in the table viewport. When the table has overlays the method returns
|
4367
|
+
* the first row of the main table that is not overlapped by overlay.
|
4368
|
+
*
|
4369
|
+
* @since 14.6.0
|
4370
|
+
* @memberof Core#
|
4371
|
+
* @function getFirstPartiallyVisibleColumn
|
4372
|
+
* @returns {number | null}
|
4373
|
+
*/
|
4374
|
+
this.getFirstPartiallyVisibleColumn = function () {
|
4375
|
+
return instance.view.getFirstPartiallyVisibleColumn();
|
4376
|
+
};
|
4377
|
+
|
4378
|
+
/**
|
4379
|
+
* Returns the last partially visible column in the table viewport. When the table has overlays the method returns
|
4380
|
+
* the first row of the main table that is not overlapped by overlay.
|
4381
|
+
*
|
4382
|
+
* @since 14.6.0
|
4383
|
+
* @memberof Core#
|
4384
|
+
* @function getLastPartiallyVisibleColumn
|
4385
|
+
* @returns {number | null}
|
4386
|
+
*/
|
4387
|
+
this.getLastPartiallyVisibleColumn = function () {
|
4388
|
+
return instance.view.getLastPartiallyVisibleColumn();
|
4389
|
+
};
|
4390
|
+
|
4239
4391
|
/**
|
4240
4392
|
* Returns plugin instance by provided its name.
|
4241
4393
|
*
|
package/dist/handsontable.css
CHANGED
@@ -25,8 +25,8 @@
|
|
25
25
|
* INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER ARISING FROM
|
26
26
|
* USE OR INABILITY TO USE THIS SOFTWARE.
|
27
27
|
*
|
28
|
-
* Version: 0.0.0-next-
|
29
|
-
* Release date: 30/07/2024 (built at 12/09/2024
|
28
|
+
* Version: 0.0.0-next-108000e-20240912
|
29
|
+
* Release date: 30/07/2024 (built at 12/09/2024 19:04:08)
|
30
30
|
*/
|
31
31
|
/**
|
32
32
|
* Fix for bootstrap styles
|
@@ -25,8 +25,8 @@
|
|
25
25
|
* INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER ARISING FROM
|
26
26
|
* USE OR INABILITY TO USE THIS SOFTWARE.
|
27
27
|
*
|
28
|
-
* Version: 0.0.0-next-
|
29
|
-
* Release date: 30/07/2024 (built at 12/09/2024
|
28
|
+
* Version: 0.0.0-next-108000e-20240912
|
29
|
+
* Release date: 30/07/2024 (built at 12/09/2024 19:04:08)
|
30
30
|
*/
|
31
31
|
/**
|
32
32
|
* Fix for bootstrap styles
|
@@ -25,8 +25,8 @@
|
|
25
25
|
* INDIRECT, SPECIAL, INCIDENTAL, OR CONSEQUENTIAL DAMAGES OF ANY CHARACTER ARISING FROM
|
26
26
|
* USE OR INABILITY TO USE THIS SOFTWARE.
|
27
27
|
*
|
28
|
-
* Version: 0.0.0-next-
|
29
|
-
* Release date: 30/07/2024 (built at 12/09/2024
|
28
|
+
* Version: 0.0.0-next-108000e-20240912
|
29
|
+
* Release date: 30/07/2024 (built at 12/09/2024 19:04:08)
|
30
30
|
*/
|
31
31
|
(function webpackUniversalModuleDefinition(root, factory) {
|
32
32
|
if(typeof exports === 'object' && typeof module === 'object')
|
@@ -42675,8 +42675,8 @@ Handsontable.hooks = _pluginHooks.default.getSingleton();
|
|
42675
42675
|
Handsontable.CellCoords = _src.CellCoords;
|
42676
42676
|
Handsontable.CellRange = _src.CellRange;
|
42677
42677
|
Handsontable.packageName = 'handsontable';
|
42678
|
-
Handsontable.buildDate = "12/09/2024
|
42679
|
-
Handsontable.version = "0.0.0-next-
|
42678
|
+
Handsontable.buildDate = "12/09/2024 19:04:08";
|
42679
|
+
Handsontable.version = "0.0.0-next-108000e-20240912";
|
42680
42680
|
Handsontable.languages = {
|
42681
42681
|
dictionaryKeys: _registry.dictionaryKeys,
|
42682
42682
|
getLanguageDictionary: _registry.getLanguageDictionary,
|
@@ -46970,6 +46970,158 @@ function Core(rootElement, userSettings) {
|
|
46970
46970
|
return editorManager.getActiveEditor();
|
46971
46971
|
};
|
46972
46972
|
|
46973
|
+
/**
|
46974
|
+
* Returns the first rendered row in the DOM (usually, it is not visible in the table's viewport).
|
46975
|
+
*
|
46976
|
+
* @since 14.6.0
|
46977
|
+
* @memberof Core#
|
46978
|
+
* @function getFirstRenderedVisibleRow
|
46979
|
+
* @returns {number | null}
|
46980
|
+
*/
|
46981
|
+
this.getFirstRenderedVisibleRow = function () {
|
46982
|
+
return instance.view.getFirstRenderedVisibleRow();
|
46983
|
+
};
|
46984
|
+
|
46985
|
+
/**
|
46986
|
+
* Returns the last rendered row in the DOM (usually, it is not visible in the table's viewport).
|
46987
|
+
*
|
46988
|
+
* @since 14.6.0
|
46989
|
+
* @memberof Core#
|
46990
|
+
* @function getLastRenderedVisibleRow
|
46991
|
+
* @returns {number | null}
|
46992
|
+
*/
|
46993
|
+
this.getLastRenderedVisibleRow = function () {
|
46994
|
+
return instance.view.getLastRenderedVisibleRow();
|
46995
|
+
};
|
46996
|
+
|
46997
|
+
/**
|
46998
|
+
* Returns the first rendered column in the DOM (usually, it is not visible in the table's viewport).
|
46999
|
+
*
|
47000
|
+
* @since 14.6.0
|
47001
|
+
* @memberof Core#
|
47002
|
+
* @function getFirstRenderedVisibleColumn
|
47003
|
+
* @returns {number | null}
|
47004
|
+
*/
|
47005
|
+
this.getFirstRenderedVisibleColumn = function () {
|
47006
|
+
return instance.view.getFirstRenderedVisibleColumn();
|
47007
|
+
};
|
47008
|
+
|
47009
|
+
/**
|
47010
|
+
* Returns the last rendered column in the DOM (usually, it is not visible in the table's viewport).
|
47011
|
+
*
|
47012
|
+
* @since 14.6.0
|
47013
|
+
* @memberof Core#
|
47014
|
+
* @function getLastRenderedVisibleColumn
|
47015
|
+
* @returns {number | null}
|
47016
|
+
*/
|
47017
|
+
this.getLastRenderedVisibleColumn = function () {
|
47018
|
+
return instance.view.getLastRenderedVisibleColumn();
|
47019
|
+
};
|
47020
|
+
|
47021
|
+
/**
|
47022
|
+
* Returns the first fully visible row in the table viewport. When the table has overlays the method returns
|
47023
|
+
* the first row of the main table that is not overlapped by overlay.
|
47024
|
+
*
|
47025
|
+
* @since 14.6.0
|
47026
|
+
* @memberof Core#
|
47027
|
+
* @function getFirstFullyVisibleRow
|
47028
|
+
* @returns {number | null}
|
47029
|
+
*/
|
47030
|
+
this.getFirstFullyVisibleRow = function () {
|
47031
|
+
return instance.view.getFirstFullyVisibleRow();
|
47032
|
+
};
|
47033
|
+
|
47034
|
+
/**
|
47035
|
+
* Returns the last fully visible row in the table viewport. When the table has overlays the method returns
|
47036
|
+
* the first row of the main table that is not overlapped by overlay.
|
47037
|
+
*
|
47038
|
+
* @since 14.6.0
|
47039
|
+
* @memberof Core#
|
47040
|
+
* @function getLastFullyVisibleRow
|
47041
|
+
* @returns {number | null}
|
47042
|
+
*/
|
47043
|
+
this.getLastFullyVisibleRow = function () {
|
47044
|
+
return instance.view.getLastFullyVisibleRow();
|
47045
|
+
};
|
47046
|
+
|
47047
|
+
/**
|
47048
|
+
* Returns the first fully visible column in the table viewport. When the table has overlays the method returns
|
47049
|
+
* the first row of the main table that is not overlapped by overlay.
|
47050
|
+
*
|
47051
|
+
* @since 14.6.0
|
47052
|
+
* @memberof Core#
|
47053
|
+
* @function getFirstFullyVisibleColumn
|
47054
|
+
* @returns {number | null}
|
47055
|
+
*/
|
47056
|
+
this.getFirstFullyVisibleColumn = function () {
|
47057
|
+
return instance.view.getFirstFullyVisibleColumn();
|
47058
|
+
};
|
47059
|
+
|
47060
|
+
/**
|
47061
|
+
* Returns the last fully visible column in the table viewport. When the table has overlays the method returns
|
47062
|
+
* the first row of the main table that is not overlapped by overlay.
|
47063
|
+
*
|
47064
|
+
* @since 14.6.0
|
47065
|
+
* @memberof Core#
|
47066
|
+
* @function getLastFullyVisibleColumn
|
47067
|
+
* @returns {number | null}
|
47068
|
+
*/
|
47069
|
+
this.getLastFullyVisibleColumn = function () {
|
47070
|
+
return instance.view.getLastFullyVisibleColumn();
|
47071
|
+
};
|
47072
|
+
|
47073
|
+
/**
|
47074
|
+
* Returns the first partially visible row in the table viewport. When the table has overlays the method returns
|
47075
|
+
* the first row of the main table that is not overlapped by overlay.
|
47076
|
+
*
|
47077
|
+
* @since 14.6.0
|
47078
|
+
* @memberof Core#
|
47079
|
+
* @function getFirstPartiallyVisibleRow
|
47080
|
+
* @returns {number | null}
|
47081
|
+
*/
|
47082
|
+
this.getFirstPartiallyVisibleRow = function () {
|
47083
|
+
return instance.view.getFirstPartiallyVisibleRow();
|
47084
|
+
};
|
47085
|
+
|
47086
|
+
/**
|
47087
|
+
* Returns the last partially visible row in the table viewport. When the table has overlays the method returns
|
47088
|
+
* the first row of the main table that is not overlapped by overlay.
|
47089
|
+
*
|
47090
|
+
* @since 14.6.0
|
47091
|
+
* @memberof Core#
|
47092
|
+
* @function getLastPartiallyVisibleRow
|
47093
|
+
* @returns {number | null}
|
47094
|
+
*/
|
47095
|
+
this.getLastPartiallyVisibleRow = function () {
|
47096
|
+
return instance.view.getLastPartiallyVisibleRow();
|
47097
|
+
};
|
47098
|
+
|
47099
|
+
/**
|
47100
|
+
* Returns the first partially visible column in the table viewport. When the table has overlays the method returns
|
47101
|
+
* the first row of the main table that is not overlapped by overlay.
|
47102
|
+
*
|
47103
|
+
* @since 14.6.0
|
47104
|
+
* @memberof Core#
|
47105
|
+
* @function getFirstPartiallyVisibleColumn
|
47106
|
+
* @returns {number | null}
|
47107
|
+
*/
|
47108
|
+
this.getFirstPartiallyVisibleColumn = function () {
|
47109
|
+
return instance.view.getFirstPartiallyVisibleColumn();
|
47110
|
+
};
|
47111
|
+
|
47112
|
+
/**
|
47113
|
+
* Returns the last partially visible column in the table viewport. When the table has overlays the method returns
|
47114
|
+
* the first row of the main table that is not overlapped by overlay.
|
47115
|
+
*
|
47116
|
+
* @since 14.6.0
|
47117
|
+
* @memberof Core#
|
47118
|
+
* @function getLastPartiallyVisibleColumn
|
47119
|
+
* @returns {number | null}
|
47120
|
+
*/
|
47121
|
+
this.getLastPartiallyVisibleColumn = function () {
|
47122
|
+
return instance.view.getLastPartiallyVisibleColumn();
|
47123
|
+
};
|
47124
|
+
|
46973
47125
|
/**
|
46974
47126
|
* Returns plugin instance by provided its name.
|
46975
47127
|
*
|
@@ -53247,7 +53399,7 @@ const domMessages = {
|
|
53247
53399
|
function _injectProductInfo(key, element) {
|
53248
53400
|
const hasValidType = !isEmpty(key);
|
53249
53401
|
const isNonCommercial = typeof key === 'string' && key.toLowerCase() === 'non-commercial-and-evaluation';
|
53250
|
-
const hotVersion = "0.0.0-next-
|
53402
|
+
const hotVersion = "0.0.0-next-108000e-20240912";
|
53251
53403
|
let keyValidityDate;
|
53252
53404
|
let consoleMessageState = 'invalid';
|
53253
53405
|
let domMessageState = 'invalid';
|
@@ -113830,6 +113982,13 @@ class ContextMenu extends _base.BasePlugin {
|
|
113830
113982
|
}
|
113831
113983
|
this.prepareMenuItems();
|
113832
113984
|
this.menu.open();
|
113985
|
+
const themeHasTableBorder = this.menu.tableBorderWidth > 0;
|
113986
|
+
if (!themeHasTableBorder) {
|
113987
|
+
offset.below += 1;
|
113988
|
+
offset.right += 1;
|
113989
|
+
offset.above -= 1;
|
113990
|
+
offset.left -= 1;
|
113991
|
+
}
|
113833
113992
|
(0, _object.objectEach)(offset, (value, key) => {
|
113834
113993
|
this.menu.setOffset(key, value);
|
113835
113994
|
});
|
@@ -114366,7 +114525,21 @@ const MIN_WIDTH = 215;
|
|
114366
114525
|
*/
|
114367
114526
|
var _navigator = /*#__PURE__*/new WeakMap();
|
114368
114527
|
var _shortcutsCtrl = /*#__PURE__*/new WeakMap();
|
114528
|
+
var _tableBorderWidth = /*#__PURE__*/new WeakMap();
|
114369
114529
|
class Menu {
|
114530
|
+
/**
|
114531
|
+
* Getter for the table border width.
|
114532
|
+
* This getter retrieves the border width of the table used in the menu.
|
114533
|
+
*
|
114534
|
+
* @returns {number} The border width of the table in pixels.
|
114535
|
+
*/
|
114536
|
+
get tableBorderWidth() {
|
114537
|
+
if (_classPrivateFieldGet(_tableBorderWidth, this) === undefined && this.hotMenu) {
|
114538
|
+
_classPrivateFieldSet(_tableBorderWidth, this, parseInt((0, _element.getComputedStyle)(this.hotMenu.view._wt.wtTable.TABLE).borderWidth, 10));
|
114539
|
+
}
|
114540
|
+
return _classPrivateFieldGet(_tableBorderWidth, this);
|
114541
|
+
}
|
114542
|
+
|
114370
114543
|
/**
|
114371
114544
|
* @param {Core} hotInstance Handsontable instance.
|
114372
114545
|
* @param {MenuOptions} [options] Menu options.
|
@@ -114439,6 +114612,12 @@ class Menu {
|
|
114439
114612
|
* @type {KeyboardShortcutsMenuController}
|
114440
114613
|
*/
|
114441
114614
|
_classPrivateFieldInitSpec(this, _shortcutsCtrl, void 0);
|
114615
|
+
/**
|
114616
|
+
* The border width of the table used in the menu.
|
114617
|
+
*
|
114618
|
+
* @type {number}
|
114619
|
+
*/
|
114620
|
+
_classPrivateFieldInitSpec(this, _tableBorderWidth, void 0);
|
114442
114621
|
this.hot = hotInstance;
|
114443
114622
|
this.options = options || {
|
114444
114623
|
parent: null,
|
@@ -114595,7 +114774,7 @@ class Menu {
|
|
114595
114774
|
this.openSubMenu(coords.row);
|
114596
114775
|
}
|
114597
114776
|
},
|
114598
|
-
rowHeights: row => filteredItems[row].name === _predefinedItems.SEPARATOR ? 1 :
|
114777
|
+
rowHeights: row => filteredItems[row].name === _predefinedItems.SEPARATOR ? 1 : undefined,
|
114599
114778
|
afterOnCellContextMenu: event => {
|
114600
114779
|
event.preventDefault();
|
114601
114780
|
|
@@ -114860,6 +115039,31 @@ class Menu {
|
|
114860
115039
|
this.positioner.setElement(this.container).updatePosition(coords);
|
114861
115040
|
}
|
114862
115041
|
|
115042
|
+
/**
|
115043
|
+
* Updates the dimensions of the menu based on its content.
|
115044
|
+
* This method calculates the real height of the menu by summing up the heights of its items,
|
115045
|
+
* and adjusts the width and height of the menu's holder and hider elements accordingly.
|
115046
|
+
*/
|
115047
|
+
updateMenuDimensions() {
|
115048
|
+
const {
|
115049
|
+
wtTable
|
115050
|
+
} = this.hotMenu.view._wt;
|
115051
|
+
const data = this.hotMenu.getSettings().data;
|
115052
|
+
const hiderStyle = wtTable.hider.style;
|
115053
|
+
const holderStyle = wtTable.holder.style;
|
115054
|
+
const currentHiderWidth = parseInt(hiderStyle.width, 10);
|
115055
|
+
const realHeight = (0, _array.arrayReduce)(data, (accumulator, value, index) => {
|
115056
|
+
const itemCell = this.hotMenu.getCell(index, 0);
|
115057
|
+
const currentRowHeight = itemCell ? (0, _element.outerHeight)(this.hotMenu.getCell(index, 0)) : 0;
|
115058
|
+
return accumulator + (value.name === _predefinedItems.SEPARATOR ? 1 : currentRowHeight);
|
115059
|
+
}, 0);
|
115060
|
+
|
115061
|
+
// Additional 3px to menu's size because of additional border around its `table.htCore`.
|
115062
|
+
holderStyle.width = `${currentHiderWidth + 3}px`;
|
115063
|
+
holderStyle.height = `${realHeight + 3}px`;
|
115064
|
+
hiderStyle.height = holderStyle.height;
|
115065
|
+
}
|
115066
|
+
|
114863
115067
|
/**
|
114864
115068
|
* Create container/wrapper for handsontable.
|
114865
115069
|
*
|
@@ -114902,19 +115106,7 @@ class Menu {
|
|
114902
115106
|
* @private
|
114903
115107
|
*/
|
114904
115108
|
onAfterInit() {
|
114905
|
-
|
114906
|
-
wtTable
|
114907
|
-
} = this.hotMenu.view._wt;
|
114908
|
-
const data = this.hotMenu.getSettings().data;
|
114909
|
-
const hiderStyle = wtTable.hider.style;
|
114910
|
-
const holderStyle = wtTable.holder.style;
|
114911
|
-
const currentHiderWidth = parseInt(hiderStyle.width, 10);
|
114912
|
-
const realHeight = (0, _array.arrayReduce)(data, (accumulator, value) => accumulator + (value.name === _predefinedItems.SEPARATOR ? 1 : 26), 0);
|
114913
|
-
|
114914
|
-
// Additional 3px to menu's size because of additional border around its `table.htCore`.
|
114915
|
-
holderStyle.width = `${currentHiderWidth + 3}px`;
|
114916
|
-
holderStyle.height = `${realHeight + 3}px`;
|
114917
|
-
hiderStyle.height = holderStyle.height;
|
115109
|
+
this.updateMenuDimensions();
|
114918
115110
|
|
114919
115111
|
// Replace the default accessibility tags with the context menu's
|
114920
115112
|
if (this.hot.getSettings().ariaTags) {
|
@@ -120826,7 +121018,9 @@ function _onAfterChange(changes) {
|
|
120826
121018
|
}
|
120827
121019
|
}
|
120828
121020
|
function _onAfterDropdownMenuShow() {
|
121021
|
+
const menu = this.dropdownMenuPlugin.menu;
|
120829
121022
|
this.restoreComponents(Array.from(this.components.values()));
|
121023
|
+
menu.updateMenuDimensions();
|
120830
121024
|
}
|
120831
121025
|
/**
|
120832
121026
|
* After dropdown menu hide listener.
|