@vonage/vwc-data-grid 2.30.0 → 2.30.3

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.
@@ -1,6 +1,4 @@
1
- import '@vaadin/vaadin-grid/src/vaadin-grid.js';
2
- import '@vaadin/vaadin-grid/src/vaadin-grid-column.js';
3
- import '@vaadin/vaadin-grid/src/vaadin-grid-tree-column.js';
1
+ import '@vaadin/vaadin-grid/src/all-imports.js';
4
2
  import '../../headers/vwc-data-grid-header.js';
5
3
  import type { EventContext, DataGrid } from '../../vwc-data-grid-api.js';
6
4
  import type { DataGridAdapter } from '../vwc-data-grid-adapter-api.js';
@@ -1,8 +1,6 @@
1
1
  var _VWCDataGridAdapterVaadin_vwcGrid;
2
2
  import { __classPrivateFieldGet, __classPrivateFieldSet } from "tslib";
3
- import '@vaadin/vaadin-grid/src/vaadin-grid.js';
4
- import '@vaadin/vaadin-grid/src/vaadin-grid-column.js';
5
- import '@vaadin/vaadin-grid/src/vaadin-grid-tree-column.js';
3
+ import '@vaadin/vaadin-grid/src/all-imports.js';
6
4
  import '../../headers/vwc-data-grid-header.js';
7
5
  import { GRID_COMPONENT, GRID_ENGINE_ROOT_CLASS } from '../../vwc-data-grid-api.js';
8
6
  import { headerRendererProvider } from './vwc-renderer-provider-header-vaadin.js';
@@ -157,7 +155,6 @@ class VWCDataGridAdapterVaadin {
157
155
  ?resizable="${cc.resizable}"
158
156
  ?auto-width="${cc.autoWidth}"
159
157
  width="${ifDefined(cc.width)}"
160
- .headerRenderer="${this.adaptMetaRenderer(headerRendererProvider, cc, __classPrivateFieldGet(this, _VWCDataGridAdapterVaadin_vwcGrid, "f"))}"
161
158
  .footerRenderer="${this.adaptMetaRenderer(footerRendererProvider, cc, __classPrivateFieldGet(this, _VWCDataGridAdapterVaadin_vwcGrid, "f"))}"
162
159
  .renderer="${this.adaptDataRenderer(cellRendererProvider, cc, __classPrivateFieldGet(this, _VWCDataGridAdapterVaadin_vwcGrid, "f"))}"
163
160
  >
@@ -1 +1 @@
1
- {"version":3,"file":"vwc-data-grid-adapter-vaadin.js","sourceRoot":"","sources":["../../src/adapters/vaadin/vwc-data-grid-adapter-vaadin.ts"],"names":[],"mappings":"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","sourcesContent":["import '@vaadin/vaadin-grid/src/vaadin-grid.js';\nimport '@vaadin/vaadin-grid/src/vaadin-grid-column.js';\nimport '@vaadin/vaadin-grid/src/vaadin-grid-tree-column.js';\nimport '../../headers/vwc-data-grid-header.js';\nimport {\n\tGRID_COMPONENT, GRID_ENGINE_ROOT_CLASS\n} from '../../vwc-data-grid-api.js';\nimport type { GridElement } from '@vaadin/vaadin-grid/src/vaadin-grid.js';\nimport type { GridColumnElement } from '@vaadin/vaadin-grid/src/vaadin-grid-column.js';\nimport type { GridEventContext } from '@vaadin/vaadin-grid/src/interfaces.js';\nimport type { EventContext, DataGrid } from '../../vwc-data-grid-api.js';\nimport type { DataGridColumn } from '../../vwc-data-grid-column-api.js';\nimport type { DataGridAdapter } from '../vwc-data-grid-adapter-api.js';\nimport type { MetaRendererProvider, DataRendererProvider, RowDetailsRendererProvider } from '../vwc-data-grid-render-provider-api.js';\nimport { headerRendererProvider } from './vwc-renderer-provider-header-vaadin.js';\nimport { footerRendererProvider } from './vwc-renderer-provider-footer-vaadin.js';\nimport { cellRendererProvider } from './vwc-renderer-provider-cell-vaadin.js';\nimport { rowDetailsRendererProvider } from './vwc-renderer-provider-row-details-vaadin.js';\nimport { style as vwcDataGridStyleVaadin } from './vwc-data-grid-adapter-vaadin.css.js';\nimport { CSSResult, html, TemplateResult } from 'lit-element';\nimport { ifDefined } from 'lit-html/directives/if-defined.js';\n\nexport {\n\tVWCDataGridAdapterVaadin\n};\n\ninterface VaadinMetaRenderer {\n\t(container: HTMLElement, column: GridColumnElement): void;\n}\n\ninterface VaadinDataRenderer {\n\t(container: HTMLElement, column: GridColumnElement, data: { item: unknown, selected: boolean }): void;\n}\n\ninterface VaadinRowDetailsRenderer {\n\t(container: HTMLElement, grid: GridElement, data: { item: unknown, selected: boolean }): void;\n}\n\n/**\n * VWCDataGridProviderVaadin service implements DataGridProvider API\n * - it provides the whole rendering functionality of Vivid data grid over the Vaadin grid engine\n */\nclass VWCDataGridAdapterVaadin implements DataGridAdapter {\n\tstatic getStylesOverlay(): CSSResult[] {\n\t\treturn [vwcDataGridStyleVaadin];\n\t}\n\n\t#vwcGrid: HTMLElement & DataGrid;\n\n\tconstructor(vwcGrid: HTMLElement & DataGrid) {\n\t\tif (!vwcGrid || vwcGrid.localName !== GRID_COMPONENT) {\n\t\t\tthrow new Error(`'vwcDataGrid' parameter invalid; expected '${GRID_COMPONENT}' component, got '${vwcGrid}'`);\n\t\t}\n\t\tthis.#vwcGrid = vwcGrid;\n\t}\n\n\trender(): TemplateResult {\n\t\tconst _dataProvider = this.#vwcGrid.dataProvider;\n\t\tlet _items = this.#vwcGrid.items;\n\t\tif (this.#vwcGrid.dataProvider && this.#vwcGrid.items) {\n\t\t\tconsole.error('\\'items\\' and \\'dataProvider\\' MUST NOT be used both; \\'dataProvider\\' will be used');\n\t\t\t_items = undefined;\n\t\t}\n\t\treturn html`\n\t\t\t<dom-module id=\"my-grid-styles\" theme-for=\"vaadin-grid\">\n\t\t\t\t<template>\n\t\t\t\t\t<style>\n\t\t\t\t\t\t[part~=\"cell\"] ::slotted(vaadin-grid-cell-content) {\n\t\t\t\t\t\t\tpadding: 4px 16px;\n\t\t\t\t\t\t}\n\t\t\t\t\t\t:host(:not([reordering])) [part~='row'][selected] [part~='body-cell']:not([part~='details-cell']) {\n\t\t\t\t\t\t\tbackground-image: linear-gradient(var(--vvd-color-neutral-30), var(--vvd-color-neutral-30));\n\t\t\t\t\t\t}\n\t\t\t\t\t</style>\n\t\t\t\t</template>\n\t\t\t</dom-module>\n\t\t\t<vaadin-grid\n\t\t\t\tclass=\"${GRID_ENGINE_ROOT_CLASS}\"\n\t\t\t\ttheme=\"no-border\"\n\t\t\t\t?multi-sort=\"${this.#vwcGrid.multiSort}\"\n\t\t\t\t?column-reordering-allowed=\"${this.#vwcGrid.reordering}\"\n\t\t\t\t.rowDetailsRenderer=\"${this.adaptRowDetailsRenderer(rowDetailsRendererProvider, this.#vwcGrid)}\"\n\t\t\t\t.items=\"${_items}\"\n\t\t\t\t.heightByRows=\"${this.#vwcGrid.heightByRows}\"\n\t\t\t\t.dataProvider=\"${_dataProvider}\"\n\t\t\t>\n\n\t\t\t\t${this.#vwcGrid.columns.map(cc => this.renderColumnDef(cc))}\n\t\t\t</vaadin-grid>\n\t\t`;\n\t}\n\n\topenItemDetails(item: unknown): void {\n\t\tconst iGrid = this.getImplementationOrThrow();\n\t\tiGrid.openItemDetails(item);\n\t}\n\n\tcloseItemDetails(item: unknown): void {\n\t\tconst iGrid = this.getImplementationOrThrow();\n\t\tiGrid.closeItemDetails(item);\n\t}\n\n\tgetSelectedItems(): unknown[] {\n\t\tconst iGrid = this.getImplementationOrThrow();\n\t\treturn iGrid.selectedItems || (iGrid.selectedItems = []);\n\t}\n\n\tselectItem(item: unknown, singleSelectMode = false) {\n\t\tconst iGrid = this.getImplementationOrThrow();\n\t\tif (singleSelectMode) {\n\t\t\tif (iGrid.selectedItems?.length !== 1 || iGrid.selectedItems[0] !== item) {\n\t\t\t\tiGrid.selectedItems = [item];\n\t\t\t}\n\t\t} else {\n\t\t\tiGrid.selectItem(item);\n\t\t}\n\t}\n\n\tdeselectItem(item: unknown) {\n\t\tconst iGrid = this.getImplementationOrThrow();\n\t\tiGrid.deselectItem(item);\n\t}\n\n\tselectAll(): void {\n\t\tconst iGrid = this.getImplementationOrThrow();\n\t\tconst selectAllCandidates = Array.isArray(iGrid.items) ? iGrid._filter(iGrid.items) : [];\n\t\tif (selectAllCandidates.length === 0 && iGrid.selectedItems?.length === 0) {\n\t\t\treturn;\n\t\t}\n\t\tiGrid.selectedItems = selectAllCandidates;\n\t}\n\n\tdeselectAll(): void {\n\t\tconst iGrid = this.getImplementationOrThrow();\n\t\tif (iGrid.selectedItems?.length) {\n\t\t\tiGrid.selectedItems = [];\n\t\t}\n\t}\n\n\tgetEventContext(event: Event): EventContext | null {\n\t\tlet result = null;\n\t\tconst iGrid = this.getImplementationOrThrow();\n\t\tconst vContext = iGrid.getEventContext(event) as GridEventContext;\n\t\tif (vContext && typeof vContext.index === 'number') {\n\t\t\tresult = {\n\t\t\t\trow: vContext.index,\n\t\t\t\titem: vContext.item,\n\t\t\t};\n\t\t}\n\t\treturn result;\n\t}\n\n\tprivate getImplementationOrThrow(): GridElement {\n\t\tconst vaadinGrid = this.#vwcGrid.shadowRoot?.querySelector('vaadin-grid');\n\t\tif (!vaadinGrid) {\n\t\t\tthrow new Error(`'${GRID_COMPONENT}' is not yet fully initialized`);\n\t\t} else {\n\t\t\treturn vaadinGrid;\n\t\t}\n\t}\n\n\tprivate renderColumnDef(cc: DataGridColumn): TemplateResult {\n\t\tif (cc.selector) {\n\t\t\treturn html`<vaadin-grid-column\n\t\t\t\twidth=\"56px\"\n\t\t\t\tflex-grow=\"0\"\n\t\t\t\t.headerRenderer=\"${this.adaptMetaRenderer(headerRendererProvider, cc, this.#vwcGrid)}\"\n\t\t\t\t.renderer=\"${this.adaptDataRenderer(cellRendererProvider, cc, this.#vwcGrid)}\"\n\t\t\t>\n\t\t\t</vaadin-grid-column>`;\n\t\t} else if (cc.tree) {\n\t\t\treturn html`<vaadin-grid-tree-column\n\t\t\t\tpath=\"${ifDefined(cc.path)}\"\n\t\t\t\t?hidden=\"${cc.hidden}\"\n\t\t\t\t?frozen=\"${cc.frozen}\"\n\t\t\t\t?resizable=\"${cc.resizable}\"\n\t\t\t\t?auto-width=\"${cc.autoWidth}\"\n\t\t\t\twidth=\"${ifDefined(cc.width)}\"\n\t\t\t\t.headerRenderer=\"${this.adaptMetaRenderer(headerRendererProvider, cc, this.#vwcGrid)}\"\n\t\t\t\t.footerRenderer=\"${this.adaptMetaRenderer(footerRendererProvider, cc, this.#vwcGrid)}\"\n\t\t\t\t.renderer=\"${this.adaptDataRenderer(cellRendererProvider, cc, this.#vwcGrid)}\"\n\t\t\t>\n\t\t\t</vaadin-grid-tree-column>`;\n\t\t} else if (cc.filterable) {\n\t\t\treturn html`<vaadin-grid-filter-column\n\t\t\t\tpath=\"${ifDefined(cc.path)}\"\n\t\t\t\t?hidden=\"${cc.hidden}\"\n\t\t\t\t?frozen=\"${cc.frozen}\"\n\t\t\t\t?resizable=\"${cc.resizable}\"\n\t\t\t\t?auto-width=\"${cc.autoWidth}\"\n\t\t\t\twidth=\"${ifDefined(cc.width)}\"\n\t\t\t\t.headerRenderer=\"${this.adaptMetaRenderer(headerRendererProvider, cc, this.#vwcGrid)}\"\n\t\t\t\t.footerRenderer=\"${this.adaptMetaRenderer(footerRendererProvider, cc, this.#vwcGrid)}\"\n\t\t\t\t.renderer=\"${this.adaptDataRenderer(cellRendererProvider, cc, this.#vwcGrid)}\"\n\t\t\t>\n\t\t\t</vaadin-grid-filter-column>`;\n\t\t} else {\n\t\t\treturn html`<vaadin-grid-column\n\t\t\t\tpath=\"${ifDefined(cc.path)}\"\n\t\t\t\t?hidden=\"${cc.hidden}\"\n\t\t\t\t?frozen=\"${cc.frozen}\"\n\t\t\t\t?resizable=\"${cc.resizable}\"\n\t\t\t\t?auto-width=\"${cc.autoWidth}\"\n\t\t\t\twidth=\"${ifDefined(cc.width)}\"\n\t\t\t\t.headerRenderer=\"${this.adaptMetaRenderer(headerRendererProvider, cc, this.#vwcGrid)}\"\n\t\t\t\t.footerRenderer=\"${this.adaptMetaRenderer(footerRendererProvider, cc, this.#vwcGrid)}\"\n\t\t\t\t.renderer=\"${this.adaptDataRenderer(cellRendererProvider, cc, this.#vwcGrid)}\"\n\t\t\t>\n\t\t\t</vaadin-grid-column>`;\n\t\t}\n\t}\n\n\tprivate adaptMetaRenderer(rendererProvider: MetaRendererProvider, column: DataGridColumn, grid: DataGrid): VaadinMetaRenderer | undefined {\n\t\tconst renderer = rendererProvider(column);\n\t\tif (!renderer) {\n\t\t\treturn;\n\t\t}\n\t\tconst vvdColumnIndex = grid.columns.indexOf(column);\n\t\treturn (container: HTMLElement): void => {\n\t\t\trenderer(container, {\n\t\t\t\tgrid: grid,\n\t\t\t\tcolumn: grid.columns[vvdColumnIndex]\n\t\t\t});\n\t\t};\n\t}\n\n\tprivate adaptDataRenderer(rendererProvider: DataRendererProvider, column: DataGridColumn, grid: DataGrid): VaadinDataRenderer | undefined {\n\t\tconst renderer = rendererProvider(column);\n\t\tif (!renderer) {\n\t\t\treturn;\n\t\t}\n\t\tconst vvdColumnIndex = grid.columns.indexOf(column);\n\t\treturn (container: HTMLElement, _column: GridColumnElement, data: { item: unknown, selected: boolean }): void => {\n\t\t\trenderer(container, {\n\t\t\t\tgrid: grid,\n\t\t\t\tcolumn: grid.columns[vvdColumnIndex]\n\t\t\t}, data);\n\t\t};\n\t}\n\n\tprivate adaptRowDetailsRenderer(rendererProvider: RowDetailsRendererProvider, grid: DataGrid): VaadinRowDetailsRenderer | undefined {\n\t\tconst renderer = rendererProvider(grid);\n\t\tif (!renderer) {\n\t\t\treturn;\n\t\t}\n\t\treturn (container: HTMLElement, _grid: GridElement, data: { item: unknown, selected: boolean }): void => {\n\t\t\trenderer(container, {\n\t\t\t\tgrid: grid\n\t\t\t}, data);\n\t\t};\n\t}\n}\n"]}
1
+ {"version":3,"file":"vwc-data-grid-adapter-vaadin.js","sourceRoot":"","sources":["../../src/adapters/vaadin/vwc-data-grid-adapter-vaadin.ts"],"names":[],"mappings":"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","sourcesContent":["import '@vaadin/vaadin-grid/src/all-imports.js';\nimport '../../headers/vwc-data-grid-header.js';\nimport {\n\tGRID_COMPONENT, GRID_ENGINE_ROOT_CLASS\n} from '../../vwc-data-grid-api.js';\nimport type { GridElement } from '@vaadin/vaadin-grid/src/vaadin-grid.js';\nimport type { GridColumnElement } from '@vaadin/vaadin-grid/src/vaadin-grid-column.js';\nimport type { GridEventContext } from '@vaadin/vaadin-grid/src/interfaces.js';\nimport type { EventContext, DataGrid } from '../../vwc-data-grid-api.js';\nimport type { DataGridColumn } from '../../vwc-data-grid-column-api.js';\nimport type { DataGridAdapter } from '../vwc-data-grid-adapter-api.js';\nimport type { MetaRendererProvider, DataRendererProvider, RowDetailsRendererProvider } from '../vwc-data-grid-render-provider-api.js';\nimport { headerRendererProvider } from './vwc-renderer-provider-header-vaadin.js';\nimport { footerRendererProvider } from './vwc-renderer-provider-footer-vaadin.js';\nimport { cellRendererProvider } from './vwc-renderer-provider-cell-vaadin.js';\nimport { rowDetailsRendererProvider } from './vwc-renderer-provider-row-details-vaadin.js';\nimport { style as vwcDataGridStyleVaadin } from './vwc-data-grid-adapter-vaadin.css.js';\nimport { CSSResult, html, TemplateResult } from 'lit-element';\nimport { ifDefined } from 'lit-html/directives/if-defined.js';\n\nexport {\n\tVWCDataGridAdapterVaadin\n};\n\ninterface VaadinMetaRenderer {\n\t(container: HTMLElement, column: GridColumnElement): void;\n}\n\ninterface VaadinDataRenderer {\n\t(container: HTMLElement, column: GridColumnElement, data: { item: unknown, selected: boolean }): void;\n}\n\ninterface VaadinRowDetailsRenderer {\n\t(container: HTMLElement, grid: GridElement, data: { item: unknown, selected: boolean }): void;\n}\n\n/**\n * VWCDataGridProviderVaadin service implements DataGridProvider API\n * - it provides the whole rendering functionality of Vivid data grid over the Vaadin grid engine\n */\nclass VWCDataGridAdapterVaadin implements DataGridAdapter {\n\tstatic getStylesOverlay(): CSSResult[] {\n\t\treturn [vwcDataGridStyleVaadin];\n\t}\n\n\t#vwcGrid: HTMLElement & DataGrid;\n\n\tconstructor(vwcGrid: HTMLElement & DataGrid) {\n\t\tif (!vwcGrid || vwcGrid.localName !== GRID_COMPONENT) {\n\t\t\tthrow new Error(`'vwcDataGrid' parameter invalid; expected '${GRID_COMPONENT}' component, got '${vwcGrid}'`);\n\t\t}\n\t\tthis.#vwcGrid = vwcGrid;\n\t}\n\n\trender(): TemplateResult {\n\t\tconst _dataProvider = this.#vwcGrid.dataProvider;\n\t\tlet _items = this.#vwcGrid.items;\n\t\tif (this.#vwcGrid.dataProvider && this.#vwcGrid.items) {\n\t\t\tconsole.error('\\'items\\' and \\'dataProvider\\' MUST NOT be used both; \\'dataProvider\\' will be used');\n\t\t\t_items = undefined;\n\t\t}\n\t\treturn html`\n\t\t\t<dom-module id=\"my-grid-styles\" theme-for=\"vaadin-grid\">\n\t\t\t\t<template>\n\t\t\t\t\t<style>\n\t\t\t\t\t\t[part~=\"cell\"] ::slotted(vaadin-grid-cell-content) {\n\t\t\t\t\t\t\tpadding: 4px 16px;\n\t\t\t\t\t\t}\n\t\t\t\t\t\t:host(:not([reordering])) [part~='row'][selected] [part~='body-cell']:not([part~='details-cell']) {\n\t\t\t\t\t\t\tbackground-image: linear-gradient(var(--vvd-color-neutral-30), var(--vvd-color-neutral-30));\n\t\t\t\t\t\t}\n\t\t\t\t\t</style>\n\t\t\t\t</template>\n\t\t\t</dom-module>\n\t\t\t<vaadin-grid\n\t\t\t\tclass=\"${GRID_ENGINE_ROOT_CLASS}\"\n\t\t\t\ttheme=\"no-border\"\n\t\t\t\t?multi-sort=\"${this.#vwcGrid.multiSort}\"\n\t\t\t\t?column-reordering-allowed=\"${this.#vwcGrid.reordering}\"\n\t\t\t\t.rowDetailsRenderer=\"${this.adaptRowDetailsRenderer(rowDetailsRendererProvider, this.#vwcGrid)}\"\n\t\t\t\t.items=\"${_items}\"\n\t\t\t\t.heightByRows=\"${this.#vwcGrid.heightByRows}\"\n\t\t\t\t.dataProvider=\"${_dataProvider}\"\n\t\t\t>\n\n\t\t\t\t${this.#vwcGrid.columns.map(cc => this.renderColumnDef(cc))}\n\t\t\t</vaadin-grid>\n\t\t`;\n\t}\n\n\topenItemDetails(item: unknown): void {\n\t\tconst iGrid = this.getImplementationOrThrow();\n\t\tiGrid.openItemDetails(item);\n\t}\n\n\tcloseItemDetails(item: unknown): void {\n\t\tconst iGrid = this.getImplementationOrThrow();\n\t\tiGrid.closeItemDetails(item);\n\t}\n\n\tgetSelectedItems(): unknown[] {\n\t\tconst iGrid = this.getImplementationOrThrow();\n\t\treturn iGrid.selectedItems || (iGrid.selectedItems = []);\n\t}\n\n\tselectItem(item: unknown, singleSelectMode = false) {\n\t\tconst iGrid = this.getImplementationOrThrow();\n\t\tif (singleSelectMode) {\n\t\t\tif (iGrid.selectedItems?.length !== 1 || iGrid.selectedItems[0] !== item) {\n\t\t\t\tiGrid.selectedItems = [item];\n\t\t\t}\n\t\t} else {\n\t\t\tiGrid.selectItem(item);\n\t\t}\n\t}\n\n\tdeselectItem(item: unknown) {\n\t\tconst iGrid = this.getImplementationOrThrow();\n\t\tiGrid.deselectItem(item);\n\t}\n\n\tselectAll(): void {\n\t\tconst iGrid = this.getImplementationOrThrow();\n\t\tconst selectAllCandidates = Array.isArray(iGrid.items) ? iGrid._filter(iGrid.items) : [];\n\t\tif (selectAllCandidates.length === 0 && iGrid.selectedItems?.length === 0) {\n\t\t\treturn;\n\t\t}\n\t\tiGrid.selectedItems = selectAllCandidates;\n\t}\n\n\tdeselectAll(): void {\n\t\tconst iGrid = this.getImplementationOrThrow();\n\t\tif (iGrid.selectedItems?.length) {\n\t\t\tiGrid.selectedItems = [];\n\t\t}\n\t}\n\n\tgetEventContext(event: Event): EventContext | null {\n\t\tlet result = null;\n\t\tconst iGrid = this.getImplementationOrThrow();\n\t\tconst vContext = iGrid.getEventContext(event) as GridEventContext;\n\t\tif (vContext && typeof vContext.index === 'number') {\n\t\t\tresult = {\n\t\t\t\trow: vContext.index,\n\t\t\t\titem: vContext.item,\n\t\t\t};\n\t\t}\n\t\treturn result;\n\t}\n\n\tprivate getImplementationOrThrow(): GridElement {\n\t\tconst vaadinGrid = this.#vwcGrid.shadowRoot?.querySelector('vaadin-grid');\n\t\tif (!vaadinGrid) {\n\t\t\tthrow new Error(`'${GRID_COMPONENT}' is not yet fully initialized`);\n\t\t} else {\n\t\t\treturn vaadinGrid;\n\t\t}\n\t}\n\n\tprivate renderColumnDef(cc: DataGridColumn): TemplateResult {\n\t\tif (cc.selector) {\n\t\t\treturn html`<vaadin-grid-column\n\t\t\t\twidth=\"56px\"\n\t\t\t\tflex-grow=\"0\"\n\t\t\t\t.headerRenderer=\"${this.adaptMetaRenderer(headerRendererProvider, cc, this.#vwcGrid)}\"\n\t\t\t\t.renderer=\"${this.adaptDataRenderer(cellRendererProvider, cc, this.#vwcGrid)}\"\n\t\t\t>\n\t\t\t</vaadin-grid-column>`;\n\t\t} else if (cc.tree) {\n\t\t\treturn html`<vaadin-grid-tree-column\n\t\t\t\tpath=\"${ifDefined(cc.path)}\"\n\t\t\t\t?hidden=\"${cc.hidden}\"\n\t\t\t\t?frozen=\"${cc.frozen}\"\n\t\t\t\t?resizable=\"${cc.resizable}\"\n\t\t\t\t?auto-width=\"${cc.autoWidth}\"\n\t\t\t\twidth=\"${ifDefined(cc.width)}\"\n\t\t\t\t.headerRenderer=\"${this.adaptMetaRenderer(headerRendererProvider, cc, this.#vwcGrid)}\"\n\t\t\t\t.footerRenderer=\"${this.adaptMetaRenderer(footerRendererProvider, cc, this.#vwcGrid)}\"\n\t\t\t\t.renderer=\"${this.adaptDataRenderer(cellRendererProvider, cc, this.#vwcGrid)}\"\n\t\t\t>\n\t\t\t</vaadin-grid-tree-column>`;\n\t\t} else if (cc.filterable) {\n\t\t\treturn html`<vaadin-grid-filter-column\n\t\t\t\tpath=\"${ifDefined(cc.path)}\"\n\t\t\t\t?hidden=\"${cc.hidden}\"\n\t\t\t\t?frozen=\"${cc.frozen}\"\n\t\t\t\t?resizable=\"${cc.resizable}\"\n\t\t\t\t?auto-width=\"${cc.autoWidth}\"\n\t\t\t\twidth=\"${ifDefined(cc.width)}\"\n\t\t\t\t.footerRenderer=\"${this.adaptMetaRenderer(footerRendererProvider, cc, this.#vwcGrid)}\"\n\t\t\t\t.renderer=\"${this.adaptDataRenderer(cellRendererProvider, cc, this.#vwcGrid)}\"\n\t\t\t>\n\t\t\t</vaadin-grid-filter-column>`;\n\t\t} else {\n\t\t\treturn html`<vaadin-grid-column\n\t\t\t\tpath=\"${ifDefined(cc.path)}\"\n\t\t\t\t?hidden=\"${cc.hidden}\"\n\t\t\t\t?frozen=\"${cc.frozen}\"\n\t\t\t\t?resizable=\"${cc.resizable}\"\n\t\t\t\t?auto-width=\"${cc.autoWidth}\"\n\t\t\t\twidth=\"${ifDefined(cc.width)}\"\n\t\t\t\t.headerRenderer=\"${this.adaptMetaRenderer(headerRendererProvider, cc, this.#vwcGrid)}\"\n\t\t\t\t.footerRenderer=\"${this.adaptMetaRenderer(footerRendererProvider, cc, this.#vwcGrid)}\"\n\t\t\t\t.renderer=\"${this.adaptDataRenderer(cellRendererProvider, cc, this.#vwcGrid)}\"\n\t\t\t>\n\t\t\t</vaadin-grid-column>`;\n\t\t}\n\t}\n\n\tprivate adaptMetaRenderer(rendererProvider: MetaRendererProvider, column: DataGridColumn, grid: DataGrid): VaadinMetaRenderer | undefined {\n\t\tconst renderer = rendererProvider(column);\n\t\tif (!renderer) {\n\t\t\treturn;\n\t\t}\n\t\tconst vvdColumnIndex = grid.columns.indexOf(column);\n\t\treturn (container: HTMLElement): void => {\n\t\t\trenderer(container, {\n\t\t\t\tgrid: grid,\n\t\t\t\tcolumn: grid.columns[vvdColumnIndex]\n\t\t\t});\n\t\t};\n\t}\n\n\tprivate adaptDataRenderer(rendererProvider: DataRendererProvider, column: DataGridColumn, grid: DataGrid): VaadinDataRenderer | undefined {\n\t\tconst renderer = rendererProvider(column);\n\t\tif (!renderer) {\n\t\t\treturn;\n\t\t}\n\t\tconst vvdColumnIndex = grid.columns.indexOf(column);\n\t\treturn (container: HTMLElement, _column: GridColumnElement, data: { item: unknown, selected: boolean }): void => {\n\t\t\trenderer(container, {\n\t\t\t\tgrid: grid,\n\t\t\t\tcolumn: grid.columns[vvdColumnIndex]\n\t\t\t}, data);\n\t\t};\n\t}\n\n\tprivate adaptRowDetailsRenderer(rendererProvider: RowDetailsRendererProvider, grid: DataGrid): VaadinRowDetailsRenderer | undefined {\n\t\tconst renderer = rendererProvider(grid);\n\t\tif (!renderer) {\n\t\t\treturn;\n\t\t}\n\t\treturn (container: HTMLElement, _grid: GridElement, data: { item: unknown, selected: boolean }): void => {\n\t\t\trenderer(container, {\n\t\t\t\tgrid: grid\n\t\t\t}, data);\n\t\t};\n\t}\n}\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@vonage/vwc-data-grid",
3
- "version": "2.30.0",
3
+ "version": "2.30.3",
4
4
  "description": "Data Grid component - highly efficient and feature full columnar data view",
5
5
  "homepage": "https://github.com/Vonage/vivid/tree/master/components/data-grid#readme",
6
6
  "license": "ISC",
@@ -29,21 +29,21 @@
29
29
  },
30
30
  "dependencies": {
31
31
  "@vaadin/vaadin-grid": "6.0.1",
32
- "@vonage/vvd-core": "2.30.0",
33
- "@vonage/vwc-checkbox": "2.30.0",
34
- "@vonage/vwc-icon": "2.30.0",
32
+ "@vonage/vvd-core": "2.30.3",
33
+ "@vonage/vwc-checkbox": "2.30.3",
34
+ "@vonage/vwc-icon": "2.30.3",
35
35
  "lit-element": "^2.4.0",
36
36
  "lit-html": "^1.3.0",
37
37
  "tslib": "^2.3.0"
38
38
  },
39
39
  "devDependencies": {
40
- "@vonage/vvd-design-tokens": "2.30.0",
41
- "@vonage/vvd-typography": "2.30.0",
42
- "@vonage/vvd-umbrella": "2.30.0",
40
+ "@vonage/vvd-design-tokens": "2.30.3",
41
+ "@vonage/vvd-typography": "2.30.3",
42
+ "@vonage/vvd-umbrella": "2.30.3",
43
43
  "typescript": "^4.3.2"
44
44
  },
45
45
  "vaadin": {
46
46
  "disableUsageStatistics": true
47
47
  },
48
- "gitHead": "1dd4407dcd2fd301e5cb53b55bb0e552c3fc91d4"
48
+ "gitHead": "3c1857d58e9fae3f4d4645f59d8248f7b9347515"
49
49
  }