@refinitiv-ui/efx-grid 6.0.108 → 6.0.109

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.
@@ -127,7 +127,6 @@ let Core = function (opt_initializer) {
127
127
  _t._onRowHightlighted = _t._onRowHightlighted.bind(_t);
128
128
  _t._onGridClicked = _t._onGridClicked.bind(_t);
129
129
  _t._onKeyDown = _t._onKeyDown.bind(_t);
130
- _t._onKeyUp = _t._onKeyUp.bind(_t);
131
130
 
132
131
  _t._onWindowResize = _t._onWindowResize.bind(_t);
133
132
  _t._onSectionDataChanged = _t._onSectionDataChanged.bind(_t);
@@ -215,7 +214,6 @@ let Core = function (opt_initializer) {
215
214
 
216
215
 
217
216
  _t._element.addEventListener("keydown", _t._onKeyDown);
218
- _t._element.addEventListener("keyup", _t._onKeyUp);
219
217
  if (Util.isMobile || Util.isTouchDevice) {
220
218
  _t._element.addEventListener("touchmove", _t._onMouseMove, false);
221
219
  } else {
@@ -622,7 +620,7 @@ Core.prototype._hasPendingRowChange = false;
622
620
  * @return {string}
623
621
  */
624
622
  Core.getVersion = function () {
625
- return "5.1.110";
623
+ return "5.1.111";
626
624
  };
627
625
  /** {@link ElementWrapper#dispose}
628
626
  * @override
@@ -5463,31 +5461,9 @@ Core.prototype._onKeyDown = function (e) {
5463
5461
 
5464
5462
  if(onTheEdge && !e.defaultPrevented) {
5465
5463
  if(onTheEdge > 0 && e.shiftKey) {
5466
- this._firstHiddenInput.focus(); // jump to the top
5467
- e.preventDefault();
5464
+ this._firstHiddenInput.focus(); // jump to the top and move out of grid
5468
5465
  } else if(onTheEdge < 0 && !e.shiftKey) {
5469
- this._lastHiddenInput.focus(); // skip to the end
5470
- e.preventDefault();
5471
- }
5472
- }
5473
- };
5474
- /** @private
5475
- * @param {Object} e
5476
- */
5477
- Core.prototype._onKeyUp = function (e) {
5478
- if(!_isTabCommand(e)) {
5479
- return;
5480
- }
5481
- var activeElem = _getActiveElement(this._element);
5482
- if(e.shiftKey) {
5483
- if(activeElem === this._lastHiddenInput) {
5484
- this._firstHiddenInput.focus();
5485
- e.preventDefault();
5486
- }
5487
- } else {
5488
- if(activeElem === this._firstHiddenInput) {
5489
- this._lastHiddenInput.focus();
5490
- e.preventDefault();
5466
+ this._lastHiddenInput.focus(); // skip to the end and move out of grid
5491
5467
  }
5492
5468
  }
5493
5469
  };
package/lib/grid/index.js CHANGED
@@ -1,3 +1,3 @@
1
1
  import {Grid} from "./lib/efx-grid.js";
2
2
  export {Grid}
3
- window.EFX_GRID = { version: "6.0.108" };
3
+ window.EFX_GRID = { version: "6.0.109" };
@@ -17,6 +17,7 @@ import ColumnDraggingPlugin from "../../column-dragging/es6/ColumnDragging.js";
17
17
  import cssStr from "../../core/es6/tr-grid-theme.js";
18
18
 
19
19
  const coreGridStyle = css`${unsafeCSS(cssStr)}`;
20
+ let preloadPromise = null;
20
21
 
21
22
  /**
22
23
  * @typedef {Object} Grid~Config
@@ -89,7 +90,18 @@ class Grid extends ResponsiveElement {
89
90
 
90
91
  this._onResizeHandler = this._onResizeHandler.bind(this);
91
92
  this.resizedCallback = this.resizedCallback.bind(this);
93
+ this._preloadElfIcon = this._preloadElfIcon.bind(this);
92
94
  }
95
+
96
+ /**
97
+ * @protected
98
+ * @ignore
99
+ */
100
+ firstUpdated() {
101
+ // pre load elf svg icon
102
+ this._preloadElfIcon();
103
+ }
104
+
93
105
  /**
94
106
  * @protected
95
107
  * @ignore
@@ -221,7 +233,7 @@ class Grid extends ResponsiveElement {
221
233
  /**
222
234
  * @private
223
235
  */
224
- async _configChange() {
236
+ _configChange() {
225
237
  let gridElem;
226
238
  if (this.api) {
227
239
  // Remove old grid element and Realtime Grid's API
@@ -308,15 +320,6 @@ class Grid extends ResponsiveElement {
308
320
  // Inject icons and theme name
309
321
  ElfUtil.injectIcons(options, this);
310
322
 
311
- // pre load elf svg icon
312
- const { preloadd } = await import("@refinitiv-ui/elements/icon");
313
- if (preloadd) {
314
- const iconList = ElfUtil.prepareIconPreloading();
315
- if (iconList) {
316
- preload(...iconList);
317
- }
318
- }
319
-
320
323
  if (ElfUtil.isHaloTheme()) {
321
324
  if (options.borders == null) {
322
325
  options.borders = false;
@@ -369,6 +372,25 @@ class Grid extends ResponsiveElement {
369
372
  }
370
373
  }
371
374
 
375
+ /**
376
+ * @private
377
+ * Load preload icon for element framework v7
378
+ */
379
+ _preloadElfIcon() {
380
+ // pre load elf svg icon
381
+ if(!preloadPromise) { // import only one time
382
+ preloadPromise = import("@refinitiv-ui/elements/icon").then(function(e) {
383
+ let preload = e.preload;
384
+ if (preloadd) {
385
+ const iconList = ElfUtil.prepareIconPreloading();
386
+ if (iconList) {
387
+ preload(...iconList);
388
+ }
389
+ }
390
+ }).catch(function(){});
391
+ }
392
+ }
393
+
372
394
  /** Called when the element's size has changed
373
395
  * @public
374
396
  * @return {void}