UNPKG

handsontable

Version:

Handsontable is a JavaScript Data Grid available for React, Angular and Vue.

62 lines (59 loc) 2.51 kB
"use strict"; exports.__esModule = true; require("core-js/modules/es.error.cause.js"); function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; } function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; } function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); } /** * Row utils class contains all necessary information about sizes of the rows. * * @class {RowUtils} */ class RowUtils { /** * @param {TableDao} dataAccessObject The table Data Access Object. * @param {Settings} wtSettings The walkontable settings. */ constructor(dataAccessObject, wtSettings) { /** * @type {TableDao} */ _defineProperty(this, "dataAccessObject", void 0); /** * @type {Settings} */ _defineProperty(this, "wtSettings", void 0); this.dataAccessObject = dataAccessObject; this.wtSettings = wtSettings; } /** * Returns row height based on passed source index. * * @param {number} sourceIndex Row source index. * @returns {number} */ getHeight(sourceIndex) { let height = this.wtSettings.getSetting('rowHeight', sourceIndex); const oversizedHeight = this.dataAccessObject.wtViewport.oversizedRows[sourceIndex]; if (oversizedHeight !== undefined) { height = height === undefined ? oversizedHeight : Math.max(height, oversizedHeight); } return height; } /** * Returns row height based on passed source index for the specified overlay type. * * @param {number} sourceIndex Row source index. * @param {'inline_start'|'top'|'top_inline_start_corner'|'bottom'|'bottom_inline_start_corner'|'master'} overlayName The overlay name. * @returns {number} */ getHeightByOverlayName(sourceIndex, overlayName) { let height = this.wtSettings.getSetting('rowHeightByOverlayName', sourceIndex, overlayName); const oversizedHeight = this.dataAccessObject.wtViewport.oversizedRows[sourceIndex]; if (oversizedHeight !== undefined) { height = height === undefined ? oversizedHeight : Math.max(height, oversizedHeight); } return height; } } exports.default = RowUtils;