UNPKG

@serenity-is/sleekgrid

Version:

A modern Data Grid / Spreadsheet component

669 lines (665 loc) 27.6 kB
var Slick = Slick || {}; Slick._ = (() => { var __defProp = Object.defineProperty; var __getOwnPropDesc = Object.getOwnPropertyDescriptor; var __getOwnPropNames = Object.getOwnPropertyNames; var __hasOwnProp = Object.prototype.hasOwnProperty; var __export = (target, all) => { for (var name in all) __defProp(target, name, { get: all[name], enumerable: true }); }; var __copyProps = (to, from, except, desc) => { if (from && typeof from === "object" || typeof from === "function") { for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); } return to; }; var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); // src/layouts/frozenlayout.ts var frozenlayout_exports = {}; __export(frozenlayout_exports, { FrozenLayout: () => FrozenLayout }); // global-externals:_ var { disableSelection, H, parsePx, spacerDiv } = Slick; // src/layouts/frozenlayout.ts var FrozenLayout = function() { var canvasWidth; var canvasWidthL; var canvasWidthR; var frozenBottom; var frozenRowIdx; var frozenCols; var frozenRows; var headersWidthL; var headersWidthR; var viewportTopH; var canvasBottomL; var canvasBottomR; var canvasTopL; var canvasTopR; var headerColsL; var headerColsR; var headerRowColsL; var headerRowColsR; var headerRowSpacerL; var headerRowSpacerR; var footerRowColsL; var footerRowColsR; var footerRowSpacerL; var footerRowSpacerR; var paneBottomL; var paneBottomR; var paneHeaderL; var paneHeaderR; var paneTopL; var paneTopR; var scrollContainerX; var scrollContainerY; var topPanelL; var topPanelR; var viewportBottomL; var viewportBottomR; var viewportTopL; var viewportTopR; function appendCachedRow(row, rowNodeL, rowNodeR) { var bottom = frozenRows && row >= frozenRowIdx + (frozenBottom ? 0 : 1); if (bottom) { rowNodeL && canvasBottomL.appendChild(rowNodeL); frozenCols && rowNodeR && canvasBottomR.appendChild(rowNodeR); } else { rowNodeL && canvasTopL.appendChild(rowNodeL); frozenCols && rowNodeR && canvasTopR.appendChild(rowNodeR); } } const calcCanvasWidth = () => { var cols = host.getColumns(), i = cols.length; canvasWidthL = canvasWidthR = 0; while (i--) { if (frozenCols > 0 && i >= frozenCols) { canvasWidthR += cols[i].width; } else { canvasWidthL += cols[i].width; } } var totalRowWidth = canvasWidthL + canvasWidthR; return host.getOptions().fullWidthRows ? Math.max(totalRowWidth, host.getAvailableWidth()) : totalRowWidth; }; var host; function init(hostGrid) { host = hostGrid; const spacerW = calcCanvasWidth() + host.getScrollDims().width + "px"; const options = host.getOptions(); const uisd = options.useLegacyUI ? " ui-state-default" : ""; headerColsL = H("div", { class: "slick-header-columns slick-header-columns-left", style: (options.rtl ? "right" : "left") + ":-1000px" }); paneHeaderL = H( "div", { class: "slick-pane slick-pane-header slick-pane-left", tabIndex: "0" }, H("div", { class: "slick-header slick-header-left" + uisd, style: !options.showColumnHeader && "display: none" }, headerColsL) ); headerColsR = H("div", { class: "slick-header-columns slick-header-columns-right", style: (options.rtl ? "right" : "left") + ":-1000px" }); paneHeaderR = H( "div", { class: "slick-pane slick-pane-header slick-pane-right", tabIndex: "0" }, H("div", { class: "slick-header slick-header-right" + uisd, style: !options.showColumnHeader && "display: none" }, headerColsR) ); headerRowColsL = H("div", { class: "slick-headerrow-columns slick-headerrow-columns-left" }); headerRowSpacerL = spacerDiv(spacerW); var headerRowL = H("div", { class: "slick-headerrow" + uisd, style: !options.showHeaderRow && "display: none" }, headerRowColsL, headerRowSpacerL); topPanelL = H("div", { class: "slick-top-panel", style: "width: 10000px" }); var topPanelLS = H("div", { class: "slick-top-panel-scroller" + uisd, style: !options.showTopPanel && "display: none" }, topPanelL); canvasTopL = H("div", { class: "grid-canvas grid-canvas-top grid-canvas-left", tabIndex: "0", hideFocus: "" }); viewportTopL = H("div", { class: "slick-viewport slick-viewport-top slick-viewport-left", tabIndex: "0", hideFocus: "" }, canvasTopL); footerRowColsL = H("div", { class: "slick-footerrow-columns slick-footerrow-columns-left" }); footerRowSpacerL = spacerDiv(spacerW); var footerRowL = H("div", { class: "slick-footerrow" + uisd, style: !options.showFooterRow && "display: none" }, footerRowColsL, footerRowSpacerL); paneTopL = H("div", { class: "slick-pane slick-pane-top slick-pane-left", tabIndex: "0" }, headerRowL, topPanelLS, viewportTopL, footerRowL); headerRowColsR = H("div", { class: "slick-headerrow-columns slick-headerrow-columns-right" }); headerRowSpacerR = spacerDiv(spacerW); var headerRowR = H("div", { class: "slick-headerrow" + uisd, style: !options.showHeaderRow && "display: none" }, headerRowColsR, headerRowSpacerR); topPanelR = H("div", { class: "slick-top-panel", style: "width: 10000px" }); var topPanelRS = H("div", { class: "slick-top-panel-scroller" + uisd, style: !options.showTopPanel && "display: none" }, topPanelR); canvasTopR = H("div", { class: "grid-canvas grid-canvas-top grid-canvas-right", tabIndex: "0", hideFocus: "" }); viewportTopR = H("div", { class: "slick-viewport slick-viewport-top slick-viewport-right", tabIndex: "0", hideFocus: "" }, canvasTopR); footerRowColsR = H("div", { class: "slick-footerrow-columns slick-footerrow-columns-right" }); footerRowSpacerR = H("div", { style: "display:block;height:1px;position:absolute;top:0;left:0;", width: spacerW }); var footerRowR = H("div", { class: "slick-footer-row" + uisd, style: !options.showFooterRow && "display: none" }, footerRowColsR, footerRowSpacerR); paneTopR = H("div", { class: "slick-pane slick-pane-top slick-pane-right", tabIndex: "0" }, headerRowR, topPanelRS, viewportTopR, footerRowR); canvasBottomL = H("div", { class: "grid-canvas grid-canvas-bottom grid-canvas-left", tabIndex: "0", hideFocus: "" }); viewportBottomL = H("div", { class: "slick-viewport slick-viewport-bottom slick-viewport-left", tabIndex: "0", hideFocus: "" }, canvasBottomL); paneBottomL = H("div", { class: "slick-pane slick-pane-bottom slick-pane-left", tabIndex: "0" }, viewportBottomL); canvasBottomR = H("div", { class: "grid-canvas grid-canvas-bottom grid-canvas-right", tabIndex: "0", hideFocus: "" }); viewportBottomR = H("div", { class: "slick-viewport slick-viewport-bottom slick-viewport-right", tabIndex: "0", hideFocus: "" }); paneBottomR = H("div", { class: "slick-pane slick-pane-bottom slick-pane-right", tabIndex: "0" }, viewportBottomR); host.getContainerNode().append( paneHeaderL, paneHeaderR, paneTopL, paneTopR, paneBottomL, paneBottomR ); disableSelection(headerColsL); disableSelection(headerColsR); adjustFrozenRowOption(); } function getHeaderCols() { return [headerColsL, headerColsR]; } function getHeaderRowCols() { return [headerRowColsL, headerRowColsR]; } function getFooterRowCols() { return [footerRowColsL, footerRowColsR]; } const getCanvasNodeFor = (cell, row) => { if (row == null && cell == null) return canvasTopL; var rightSide = cell >= frozenCols; if (frozenRows > 0 && row >= frozenRowIdx + (frozenBottom ? 0 : 1)) return rightSide ? canvasBottomR : canvasBottomL; return rightSide ? canvasTopR : canvasTopL; }; function getCanvasWidth() { return canvasWidth; } function getCanvasNodes() { return [canvasTopL, canvasTopR, canvasBottomL, canvasBottomR]; } function getScrollContainerX() { return scrollContainerX; } function getScrollContainerY() { return scrollContainerY; } function getViewportNodeFor(cell, row) { if (row == null && cell == null) return canvasTopL; var rightSide = cell >= frozenCols; if (frozenRows > 0 && row >= frozenRowIdx + (frozenBottom ? 0 : 1)) return rightSide ? canvasBottomR : canvasBottomL; return rightSide ? canvasTopR : canvasTopL; } function getViewportNodes() { return [viewportTopL, viewportTopR, viewportBottomL, viewportBottomR]; } const updateCanvasWidth = () => { var oldCanvasWidth = canvasWidth; var oldCanvasWidthL = canvasWidthL; var oldCanvasWidthR = canvasWidthR; var widthChanged; canvasWidth = calcCanvasWidth(); var scrollWidth = host.getScrollDims().width; widthChanged = canvasWidth !== oldCanvasWidth || canvasWidthL !== oldCanvasWidthL || canvasWidthR !== oldCanvasWidthR; var vpi = host.getViewportInfo(); if (widthChanged || frozenCols || frozenRows) { var cwlPX = canvasWidthL + "px"; var cwrPX = canvasWidthR + "px"; canvasTopL.style.width = cwlPX; calcHeaderWidths(); if (frozenCols) { var vpminusPX = vpi.width - canvasWidthL + "px"; const rtl = host.getOptions().rtl; canvasTopR.style.width = cwrPX; paneHeaderL.style.width = cwlPX; paneHeaderR.style[rtl ? "right" : "left"] = cwlPX; paneHeaderR.style.width = vpminusPX; paneTopL.style.width = cwlPX; paneTopR.style[rtl ? "right" : "left"] = cwlPX; paneTopR.style.width = vpminusPX; headerRowColsL.style.width = cwlPX; headerRowColsL.parentElement.style.width = cwlPX; headerRowColsR.style.width = cwrPX; headerRowColsR.parentElement.style.width = vpminusPX; footerRowColsL.style.width = cwlPX; footerRowColsL.parentElement.style.width = cwlPX; footerRowColsR.style.width = cwrPX; footerRowColsR.parentElement.style.width = vpminusPX; viewportTopL.style.width = cwlPX; viewportTopR.style.width = vpminusPX; if (frozenRows) { paneBottomL.style.width = cwlPX; paneBottomR.style[rtl ? "right" : "left"] = cwlPX; viewportBottomL.style.width = cwlPX; viewportBottomR.style.width = vpminusPX; canvasBottomL.style.width = cwlPX; canvasBottomR.style.width = cwrPX; } } else { paneHeaderL.style.width = "100%"; paneTopL.style.width = "100%"; headerRowColsL.parentElement.style.width = "100%"; headerRowColsL.style.width = canvasWidth + "px"; footerRowColsL.parentElement.style.width = "100%"; footerRowColsL.style.width = canvasWidth + "px"; viewportTopL.style.width = "100%"; if (frozenRows) { viewportBottomL.style.width = "100%"; canvasBottomL.style.width = cwlPX; } } vpi.hasHScroll = canvasWidth > vpi.width - scrollWidth; } var w = canvasWidth + (vpi.hasHScroll ? scrollWidth : 0) + "px"; headerRowSpacerL.style.width = w; headerRowSpacerR.style.width = w; footerRowSpacerL.style.width = w; footerRowSpacerR.style.width = w; return widthChanged; }; const getHeaderColumn = (cell) => { return frozenCols > 0 && cell >= frozenCols ? headerColsR.children.item(cell - frozenCols) : headerColsL.children.item(cell); }; const getHeaderRowColumn = (cell) => { var target; if (frozenCols <= 0 || cell < frozenCols) { target = headerRowColsL; } else { target = headerRowColsR; cell -= frozenCols; } return target.childNodes.item(cell); }; const getFooterRowColumn = (cell) => { var target; if (frozenCols <= 0 || cell < frozenCols) { target = footerRowColsL; } else { target = footerRowColsR; cell -= frozenCols; } return target.childNodes.item(cell); }; const getHeaderRowColsFor = (cell) => { return frozenCols > 0 && cell >= frozenCols ? headerRowColsR : headerRowColsL; }; const getFooterRowColsFor = (cell) => { return frozenCols > 0 && cell >= frozenCols ? footerRowColsR : footerRowColsL; }; const calcHeaderWidths = () => { headersWidthL = headersWidthR = 0; var scrollWidth = host.getScrollDims().width; var cols = host.getColumns(); for (var i = 0, ii = cols.length; i < ii; i++) { var width = cols[i].width; if (frozenCols > 0 && i >= frozenCols) { headersWidthR += width; } else { headersWidthL += width; } } const vs = host.getViewportInfo(); if (frozenCols > 0) { headersWidthL = headersWidthL + 1e3; headersWidthR = Math.max(headersWidthR, vs.width) + headersWidthL; headersWidthR += scrollWidth; } else { headersWidthL += scrollWidth; headersWidthL = Math.max(headersWidthL, vs.width) + 1e3; } headerColsL.style.width = headersWidthL + "px"; headerColsR.style.width = headersWidthR + "px"; }; const getHeaderColsFor = (cell) => { return frozenCols > 0 && cell >= frozenCols ? headerColsR : headerColsL; }; const handleScrollH = () => { const options = host.getOptions(); const scrollLeft = host.getScrollLeft(); if (frozenCols) { options.showColumnHeader && (headerColsR.parentElement.scrollLeft = scrollLeft); options.showTopPanel && (topPanelR.parentElement.scrollLeft = scrollLeft); options.showHeaderRow && (headerRowColsR.parentElement.scrollLeft = scrollLeft); options.showFooterRow && (footerRowColsR.parentElement.scrollLeft = scrollLeft); if (frozenRows) { viewportTopR.scrollLeft = scrollLeft; } } else { options.showColumnHeader && (headerColsL.parentElement.scrollLeft = scrollLeft); options.showTopPanel && (topPanelL.parentElement.scrollLeft = scrollLeft); options.showHeaderRow && (headerRowColsL.parentElement.scrollLeft = scrollLeft); options.showFooterRow && (footerRowColsL.parentElement.scrollLeft = scrollLeft); if (frozenRows) { viewportTopL.scrollLeft = scrollLeft; } } }; const handleScrollV = () => { if (frozenCols) { if (frozenRows && !frozenBottom) { viewportBottomL.scrollTop = host.getScrollTop(); } else { viewportTopL.scrollTop = host.getScrollTop(); } } }; const setScroller = () => { if (frozenCols) { if (frozenRows) { if (frozenBottom) { scrollContainerX = viewportBottomR; scrollContainerY = viewportTopR; } else { scrollContainerX = scrollContainerY = viewportBottomR; } } else { scrollContainerX = scrollContainerY = viewportTopR; } } else { if (frozenRows) { if (frozenBottom) { scrollContainerX = viewportBottomL; scrollContainerY = viewportTopL; } else { scrollContainerX = scrollContainerY = viewportBottomL; } } else { scrollContainerX = scrollContainerY = viewportTopL; } } }; const setPaneVisibility = () => { paneHeaderR.style.display = paneTopR.style.display = frozenCols ? "" : "none"; paneBottomL.style.display = frozenRows ? "" : "none"; paneBottomR.style.display = frozenRows && frozenCols ? "" : "none"; }; const setOverflow = () => { const options = host.getOptions(); var alwaysHS = options.alwaysAllowHorizontalScroll; var alwaysVS = options.alwaysShowVerticalScroll; viewportTopL.style.overflowX = viewportTopR.style.overflowX = frozenRows && !alwaysHS ? "hidden" : frozenCols ? "scroll" : "auto"; viewportTopL.style.overflowY = viewportBottomL.style.overflowY = !frozenCols && alwaysVS ? "scroll" : frozenCols ? "hidden" : frozenRows ? "scroll" : options.autoHeight ? "hidden" : "auto"; viewportTopR.style.overflowY = alwaysVS || frozenRows ? "scroll" : options.autoHeight ? "hidden" : "auto"; viewportBottomL.style.overflowX = viewportBottomR.style.overflowX = frozenCols && !alwaysHS ? "scroll" : "auto"; viewportBottomR.style.overflowY = alwaysVS ? "scroll" : "auto"; }; const bindAncestorScrollEvents = () => { var elem = frozenRows && !frozenBottom ? canvasBottomL : canvasTopL; while ((elem = elem.parentNode) != document.body && elem != null) { if (elem == viewportTopL || elem.scrollWidth != elem.clientWidth || elem.scrollHeight != elem.clientHeight) { host.bindAncestorScroll(elem); } } }; const afterHeaderColumnDrag = () => { const oldCanvasWidthL = canvasWidthL; canvasWidth = calcCanvasWidth(); if (frozenCols && canvasWidthL != oldCanvasWidthL) { headerColsL.style.width = canvasWidthL + 1e3 + "px"; paneHeaderR.style[host.getOptions().rtl ? "right" : "left"] = canvasWidthL + "px"; } }; const applyColumnWidths = () => { var x = 0, w, rule, cols = host.getColumns(), opts = host.getOptions(), rtl = opts.rtl, s = rtl ? "right" : "left", e = rtl ? "left" : "right"; if (opts.useCssVars) { var styles = host.getContainerNode().style; for (var i = 0; i < cols.length; i++) { if (frozenCols == i) x = 0; w = cols[i].width; var prop = "--l" + i; var oldVal = styles.getPropertyValue(prop); var newVal = x + "px"; if (oldVal !== newVal) styles.setProperty(prop, newVal); prop = "--r" + i; oldVal = styles.getPropertyValue(prop); newVal = (frozenCols > 0 && i >= frozenCols ? canvasWidthR : canvasWidthL) - x - w + "px"; if (oldVal !== newVal) styles.setProperty(prop, newVal); x += w; } } else { for (var i = 0; i < cols.length; i++) { if (frozenCols == i) x = 0; w = cols[i].width; rule = host.getColumnCssRules(i); rule[s].style[s] = x + "px"; rule[e].style[e] = (frozenCols > 0 && i >= frozenCols ? canvasWidthR : canvasWidthL) - x - w + "px"; x += w; } } }; const getTopPanelFor = (cell) => { return frozenCols > 0 && cell >= frozenCols ? topPanelR : topPanelL; }; const getTopPanelNodes = () => [topPanelL, topPanelR]; const resizeCanvas = () => { var _paneTopH = 0; var _paneBottomH = 0; const vs = host.getViewportInfo(); const options = host.getOptions(); if (frozenRows) { const frozenRowsHeight = frozenRows * options.rowHeight; if (frozenBottom) { _paneTopH = vs.height - frozenRowsHeight; _paneBottomH = frozenRowsHeight + host.getScrollDims().height; } else { _paneTopH = frozenRowsHeight; _paneBottomH = vs.height - frozenRowsHeight; } } else { _paneTopH = vs.height; } _paneTopH += vs.topPanelHeight + vs.headerRowHeight + vs.footerRowHeight; viewportTopH = _paneTopH - vs.topPanelHeight - vs.headerRowHeight - vs.footerRowHeight; if (options.autoHeight) { host.getContainerNode().style.height = _paneTopH + vs.groupingPanelHeight + parsePx(getComputedStyle(headerColsL.parentElement).height) + "px"; } paneTopL.style.top = vs.groupingPanelHeight + (parsePx(getComputedStyle(paneHeaderL).height) || vs.headerHeight) + "px"; paneTopL.style.height = _paneTopH + "px"; var paneBottomTop = paneTopL.offsetTop + _paneTopH; if (options.autoHeight) { viewportTopL.style.height = ""; } else { viewportTopL.style.height = viewportTopH + "px"; } if (frozenCols) { paneTopR.style.top = paneTopL.style.top; paneTopR.style.height = paneTopL.style.height; viewportTopR.style.height = viewportTopL.style.height; if (frozenRows) { paneBottomL.style.top = paneBottomR.style.top = paneBottomTop + "px"; paneBottomL.style.height = paneBottomR.style.height = viewportBottomR.style.height = _paneBottomH + "px"; } } else { if (frozenRows) { paneBottomL.style.width = "100%"; paneBottomL.style.height = _paneBottomH + "px"; paneBottomL.style.top = paneBottomTop + "px"; } } if (frozenRows) { viewportBottomL.style.height = _paneBottomH + "px"; const frozenRowsHeight = frozenRows * options.rowHeight; if (frozenBottom) { canvasBottomL.style.height = frozenRowsHeight + "px"; if (frozenCols) { canvasBottomR.style.height = frozenRowsHeight + "px"; } } else { canvasTopL.style.height = frozenRowsHeight + "px"; if (frozenCols) { canvasTopR.style.height = frozenRowsHeight + "px"; } } } else { viewportTopR.style.height = viewportTopH + "px"; } }; function reorderViewColumns(viewCols, options) { options = options || (host == null ? void 0 : host.getOptions()); if ((options == null ? void 0 : options.frozenColumns) == null) { options == null ? true : delete options.frozenColumns; } else { var toFreeze = options.frozenColumns; options.frozenColumns = 0; var i = 0; while (i < viewCols.length) { var col = viewCols[i++]; if (toFreeze > 0 && col.visible !== false) { col.frozen = true; options.frozenColumns++; toFreeze--; } else if (col.frozen !== void 0) delete col.frozen; } } var frozenColumns = viewCols.filter((x) => x.frozen); frozenCols = frozenColumns.length; if (frozenCols) return frozenColumns.concat(viewCols.filter((x) => !x.frozen)); return viewCols; } function afterSetOptions(arg) { if (arg.frozenRows != null || arg.frozenBottom != null) adjustFrozenRowOption(); } function adjustFrozenRowOption() { const options = host.getOptions(); if (options.autoHeight) { frozenRows = 0; return; } frozenRows = options.frozenRows > 0 && options.frozenRows <= host.getViewportInfo().numVisibleRows ? options.frozenRows : 0; if (frozenRows) { frozenRowIdx = options.frozenBottom ? host.getDataLength() - frozenRows : frozenRows - 1; } } function getScrollCanvasY() { return frozenRows && !frozenBottom ? canvasBottomL : canvasTopL; } function realScrollHeightChange() { const h = host.getViewportInfo().realScrollHeight; if (frozenRows && !frozenBottom) { canvasBottomL.style.height = h + "px"; if (frozenCols) { canvasBottomR.style.height = h + "px"; } } else { canvasTopL.style.height = h + "px"; canvasTopR.style.height = h + "px"; } } function isFrozenRow(row) { return frozenRows && (frozenBottom && row >= frozenRowIdx || !frozenBottom && row <= frozenRowIdx); } function beforeCleanupAndRenderCells(rendered) { if (frozenRows) { var renderedFrozenRows = Object.assign({}, rendered); if (frozenBottom) { renderedFrozenRows.top = frozenRowIdx; renderedFrozenRows.bottom = host.getDataLength() - 1; } else { renderedFrozenRows.top = 0; renderedFrozenRows.bottom = frozenRowIdx; } host.cleanUpAndRenderCells(renderedFrozenRows); } } function afterRenderRows(rendered) { if (frozenRows) { if (frozenBottom) { host.renderRows({ top: frozenRowIdx, bottom: host.getDataLength() - 1, leftPx: rendered.leftPx, rightPx: rendered.rightPx }); } else { host.renderRows({ top: 0, bottom: frozenRowIdx, leftPx: rendered.leftPx, rightPx: rendered.rightPx }); } } } function getRowOffset(row) { if (!frozenRows || frozenBottom && row < frozenRowIdx || !frozenBottom && row <= frozenRowIdx) return 0; if (!frozenBottom) return frozenRows * host.getOptions().rowHeight; var realScrollHeight = host.getViewportInfo().realScrollHeight; if (realScrollHeight >= viewportTopH) return realScrollHeight; return frozenRowIdx * host.getOptions().rowHeight; } function getRowFromCellNode(cellNode, clientX, clientY) { var row = host.getRowFromNode(cellNode.parentNode); if (frozenRows) { var bcr = cellNode.closest(".grid-canvas").getBoundingClientRect(); var rowOffset = 0; var isBottom = cellNode.closest(".grid-canvas-bottom") != null; if (isBottom) { rowOffset = frozenBottom ? Math.round(parsePx(getComputedStyle(canvasTopL).height)) : frozenRows * host.getOptions().rowHeight; } return host.getCellFromPoint(clientX - bcr[host.getOptions().rtl ? "right" : "left"] - document.body.scrollLeft, clientY - bcr.top + document.body.scrollTop + rowOffset + document.body.scrollTop).row; } return row; } function getFrozenCols() { return frozenCols; } function getFrozenRows() { return frozenRows; } function destroy() { host = null; } return { afterHeaderColumnDrag, afterRenderRows, afterSetOptions, appendCachedRow, applyColumnWidths, bindAncestorScrollEvents, beforeCleanupAndRenderCells, calcCanvasWidth, updateHeadersWidth: calcHeaderWidths, isFrozenRow, destroy, getCanvasNodeFor, getCanvasNodes, getCanvasWidth, getFooterRowCols, getFooterRowColsFor, getFooterRowColumn, getFrozenCols, getFrozenRows, getHeaderCols, getHeaderColsFor, getHeaderColumn, getHeaderRowCols, getHeaderRowColsFor, getHeaderRowColumn, getRowFromCellNode, getFrozenRowOffset: getRowOffset, getScrollCanvasY, getScrollContainerX, getScrollContainerY, getTopPanelFor, getTopPanelNodes, getViewportNodeFor, getViewportNodes, handleScrollH, handleScrollV, init, layoutName: "frozen", realScrollHeightChange, reorderViewColumns, resizeCanvas, setPaneVisibility, setScroller, setOverflow, updateCanvasWidth }; }; return __toCommonJS(frozenlayout_exports); })(); ["Data", "Editors", "Formatters", "Plugins"].forEach(ns => Slick._[ns] && (Slick[ns] = Object.assign(Slick[ns] || {}, Slick._[ns])) && delete Slick._[ns]); Object.assign(Slick, Slick._); delete Slick._; //# sourceMappingURL=slick.frozenlayout.js.map