@vaadin/grid
Advanced tools
Comparing version 24.5.0-alpha1 to 24.5.0-alpha10
{ | ||
"name": "@vaadin/grid", | ||
"version": "24.5.0-alpha1", | ||
"version": "24.5.0-alpha10", | ||
"publishConfig": { | ||
@@ -49,16 +49,16 @@ "access": "public" | ||
"@polymer/polymer": "^3.0.0", | ||
"@vaadin/a11y-base": "24.5.0-alpha1", | ||
"@vaadin/checkbox": "24.5.0-alpha1", | ||
"@vaadin/component-base": "24.5.0-alpha1", | ||
"@vaadin/lit-renderer": "24.5.0-alpha1", | ||
"@vaadin/text-field": "24.5.0-alpha1", | ||
"@vaadin/vaadin-lumo-styles": "24.5.0-alpha1", | ||
"@vaadin/vaadin-material-styles": "24.5.0-alpha1", | ||
"@vaadin/vaadin-themable-mixin": "24.5.0-alpha1", | ||
"@vaadin/a11y-base": "24.5.0-alpha10", | ||
"@vaadin/checkbox": "24.5.0-alpha10", | ||
"@vaadin/component-base": "24.5.0-alpha10", | ||
"@vaadin/lit-renderer": "24.5.0-alpha10", | ||
"@vaadin/text-field": "24.5.0-alpha10", | ||
"@vaadin/vaadin-lumo-styles": "24.5.0-alpha10", | ||
"@vaadin/vaadin-material-styles": "24.5.0-alpha10", | ||
"@vaadin/vaadin-themable-mixin": "24.5.0-alpha10", | ||
"lit": "^3.0.0" | ||
}, | ||
"devDependencies": { | ||
"@esm-bundle/chai": "^4.3.4", | ||
"@vaadin/testing-helpers": "^0.6.0", | ||
"sinon": "^13.0.2" | ||
"@vaadin/chai-plugins": "24.5.0-alpha10", | ||
"@vaadin/testing-helpers": "^1.0.0", | ||
"sinon": "^18.0.0" | ||
}, | ||
@@ -69,3 +69,3 @@ "web-types": [ | ||
], | ||
"gitHead": "57806caac5468532a3b4e3dbdda730cd0fca193a" | ||
"gitHead": "6f9c37308031af872a98017bfab4de89aeacda51" | ||
} |
@@ -90,3 +90,3 @@ # @vaadin/grid | ||
Read the [contributing guide](https://vaadin.com/docs/latest/contributing/overview) to learn about our development process, how to propose bugfixes and improvements, and how to test your changes to Vaadin components. | ||
Read the [contributing guide](https://vaadin.com/docs/latest/contributing) to learn about our development process, how to propose bugfixes and improvements, and how to test your changes to Vaadin components. | ||
@@ -93,0 +93,0 @@ ## License |
@@ -7,2 +7,4 @@ /** | ||
import { isElementFocusable } from '@vaadin/a11y-base/src/focus-utils.js'; | ||
/** | ||
@@ -14,17 +16,7 @@ * @param {!Element} target | ||
export const isFocusable = (target) => { | ||
if (!target.parentNode) { | ||
return false; | ||
} | ||
const focusables = Array.from( | ||
target.parentNode.querySelectorAll( | ||
'[tabindex], button, input, select, textarea, object, iframe, a[href], area[href]', | ||
), | ||
).filter((element) => { | ||
const part = element.getAttribute('part'); | ||
return !(part && part.includes('body-cell')); | ||
}); | ||
const isFocusableElement = focusables.includes(target); | ||
return ( | ||
!target.disabled && isFocusableElement && target.offsetParent && getComputedStyle(target).visibility !== 'hidden' | ||
target.offsetParent && | ||
!target.part.contains('body-cell') && | ||
isElementFocusable(target) && | ||
getComputedStyle(target).visibility !== 'hidden' | ||
); | ||
@@ -31,0 +23,0 @@ }; |
@@ -151,3 +151,3 @@ /** | ||
this._dataProviderController = new DataProviderController(this, { | ||
size: this.size, | ||
size: this.size || 0, | ||
pageSize: this.pageSize, | ||
@@ -238,2 +238,8 @@ getItemId: this.getItemId.bind(this), | ||
updateCellsPart(cells, 'loading-row-cell', loading); | ||
if (loading) { | ||
// Run style generators for the loading row to have custom names cleared | ||
this._generateCellClassNames(row); | ||
this._generateCellPartNames(row); | ||
} | ||
} | ||
@@ -268,3 +274,3 @@ | ||
/** @private */ | ||
__computeExpandedKeys(itemIdPath, expandedItems) { | ||
__computeExpandedKeys(_itemIdPath, expandedItems) { | ||
const expanded = expandedItems || []; | ||
@@ -271,0 +277,0 @@ const expandedKeys = new Set(); |
@@ -106,2 +106,7 @@ /** | ||
}, | ||
/** @private */ | ||
__draggedItems: { | ||
value: () => [], | ||
}, | ||
}; | ||
@@ -174,2 +179,4 @@ } | ||
this.__draggedItems = rows.map((row) => row._item); | ||
// Set the default transfer data | ||
@@ -186,2 +193,3 @@ e.dataTransfer.setData('text', this.__formatDefaultTransferData(rows)); | ||
this.style.setProperty('--_grid-drag-start-y', ''); | ||
this.requestContentUpdate(); | ||
}); | ||
@@ -191,3 +199,3 @@ | ||
detail: { | ||
draggedItems: rows.map((row) => row._item), | ||
draggedItems: [...this.__draggedItems], | ||
setDragData: (type, data) => e.dataTransfer.setData(type, data), | ||
@@ -209,2 +217,5 @@ setDraggedItemsCount: (count) => row.setAttribute('dragstart', count), | ||
this.dispatchEvent(event); | ||
this.__draggedItems = []; | ||
this.requestContentUpdate(); | ||
} | ||
@@ -340,2 +351,7 @@ | ||
/** @private */ | ||
__updateDragSourceParts(row, model) { | ||
updateBooleanRowStates(row, { 'drag-source': this.__draggedItems.includes(model.item) }); | ||
} | ||
/** @private */ | ||
_onDrop(e) { | ||
@@ -342,0 +358,0 @@ if (this.dropMode) { |
@@ -971,2 +971,3 @@ /** | ||
this._filterDragAndDrop(row, model); | ||
this.__updateDragSourceParts(row, model); | ||
@@ -973,0 +974,0 @@ iterateChildren(row, (cell) => { |
@@ -97,3 +97,3 @@ /** | ||
/** @private */ | ||
_detailsOpenedItemsChanged(detailsOpenedItems, rowDetailsRenderer) { | ||
_detailsOpenedItemsChanged(_detailsOpenedItems, rowDetailsRenderer) { | ||
iterateChildren(this.$.items, (row) => { | ||
@@ -100,0 +100,0 @@ // Re-renders the row to possibly close the previously opened details. |
@@ -352,3 +352,3 @@ /** | ||
*/ | ||
_selectItem(item) {} | ||
_selectItem(_item) {} | ||
@@ -360,3 +360,3 @@ /** | ||
*/ | ||
_deselectItem(item) {} | ||
_deselectItem(_item) {} | ||
@@ -363,0 +363,0 @@ /** |
@@ -94,3 +94,3 @@ /** | ||
/** @private */ | ||
__computeSelectedKeys(itemIdPath, selectedItems) { | ||
__computeSelectedKeys(_itemIdPath, selectedItems) { | ||
const selected = selectedItems || []; | ||
@@ -97,0 +97,0 @@ const selectedKeys = new Set(); |
@@ -92,3 +92,3 @@ /** | ||
iterateChildren(this.$.items, (row) => { | ||
if (!row.hidden && !row.hasAttribute('loading')) { | ||
if (!row.hidden) { | ||
this._generateCellClassNames(row, this.__getRowModel(row)); | ||
@@ -107,3 +107,3 @@ } | ||
iterateChildren(this.$.items, (row) => { | ||
if (!row.hidden && !row.hasAttribute('loading')) { | ||
if (!row.hidden) { | ||
this._generateCellPartNames(row, this.__getRowModel(row)); | ||
@@ -120,3 +120,3 @@ } | ||
} | ||
if (this.cellClassNameGenerator) { | ||
if (this.cellClassNameGenerator && !row.hasAttribute('loading')) { | ||
const result = this.cellClassNameGenerator(cell._column, model); | ||
@@ -140,3 +140,3 @@ cell.__generatedClasses = result && result.split(' ').filter((className) => className.length > 0); | ||
} | ||
if (this.cellPartNameGenerator) { | ||
if (this.cellPartNameGenerator && !row.hasAttribute('loading')) { | ||
const result = this.cellPartNameGenerator(cell._column, model); | ||
@@ -143,0 +143,0 @@ cell.__generatedParts = result && result.split(' ').filter((partName) => partName.length > 0); |
@@ -193,3 +193,4 @@ /** | ||
* `details-opened-row-cell` | Cell in an row with details open | ||
* `dragstart-row-cell` | Cell in a row that user started to drag (set for one frame) | ||
* `dragstart-row-cell` | Cell in the ghost image row, but not in a source row | ||
* `drag-source-row-cell` | Cell in a source row, but not in the ghost image | ||
* `dragover-above-row-cell` | Cell in a row that has another row dragged over above | ||
@@ -196,0 +197,0 @@ * `dragover-below-row-cell` | Cell in a row that has another row dragged over below |
@@ -31,3 +31,5 @@ import '@vaadin/vaadin-material-styles/color.js'; | ||
line-height: 18px; | ||
transition: 0.1s opacity cubic-bezier(0.4, 0, 0.2, 0.1), 0.1s width cubic-bezier(0.4, 0, 0.2, 0.1); | ||
transition: | ||
0.1s opacity cubic-bezier(0.4, 0, 0.2, 0.1), | ||
0.1s width cubic-bezier(0.4, 0, 0.2, 0.1); | ||
opacity: 0.5; | ||
@@ -34,0 +36,0 @@ } |
Sorry, the diff of this file is too big to display
Sorry, the diff of this file is too big to display
675653
16223
+ Added@vaadin/a11y-base@24.5.0-alpha10(transitive)
+ Added@vaadin/checkbox@24.5.0-alpha10(transitive)
+ Added@vaadin/component-base@24.5.0-alpha10(transitive)
+ Added@vaadin/field-base@24.5.0-alpha10(transitive)
+ Added@vaadin/icon@24.5.0-alpha10(transitive)
+ Added@vaadin/input-container@24.5.0-alpha10(transitive)
+ Added@vaadin/lit-renderer@24.5.0-alpha10(transitive)
+ Added@vaadin/text-field@24.5.0-alpha10(transitive)
+ Added@vaadin/vaadin-lumo-styles@24.5.0-alpha10(transitive)
+ Added@vaadin/vaadin-material-styles@24.5.0-alpha10(transitive)
+ Added@vaadin/vaadin-themable-mixin@24.5.0-alpha10(transitive)
- Removed@vaadin/a11y-base@24.5.0-alpha1(transitive)
- Removed@vaadin/checkbox@24.5.0-alpha1(transitive)
- Removed@vaadin/component-base@24.5.0-alpha1(transitive)
- Removed@vaadin/field-base@24.5.0-alpha1(transitive)
- Removed@vaadin/icon@24.5.0-alpha1(transitive)
- Removed@vaadin/input-container@24.5.0-alpha1(transitive)
- Removed@vaadin/lit-renderer@24.5.0-alpha1(transitive)
- Removed@vaadin/text-field@24.5.0-alpha1(transitive)
- Removed@vaadin/vaadin-lumo-styles@24.5.0-alpha1(transitive)
- Removed@vaadin/vaadin-material-styles@24.5.0-alpha1(transitive)
- Removed@vaadin/vaadin-themable-mixin@24.5.0-alpha1(transitive)