UNPKG

@visactor/vtable

Version:

canvas table width high performance

778 lines (771 loc) 38.4 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: !0 }), exports.TableTheme = void 0; const helper_1 = require("../tools/helper"), util_1 = require("../tools/util"), global_1 = require("../tools/global"), component_1 = require("./component"); function getProp(obj, superObj, names, defNames) { var _a, _b, _c; return null !== (_c = null !== (_b = null !== (_a = (0, helper_1.getChainSafe)(obj, ...names)) && void 0 !== _a ? _a : (0, helper_1.getChainSafe)(superObj, ...names)) && void 0 !== _b ? _b : defNames && (0, helper_1.getChainSafe)(obj, ...defNames)) && void 0 !== _c ? _c : defNames && (0, helper_1.getChainSafe)(superObj, ...defNames); } class TableTheme { constructor(obj, superTheme) { this._defaultStyle = null, this._header = null, this._cornerHeader = null, this._cornerRightTopCell = null, this._cornerLeftBottomCell = null, this._cornerRightBottomCell = null, this._rightFrozen = null, this._bottomFrozen = null, this._rowHeader = null, this._body = null, this._groupTitle = null, this._scroll = null, this._tooltip = null, this._frameStyle = null, this._columnResize = null, this._dragHeaderSplitLine = null, this._frozenColumnLine = null, this._selectionStyle = null, this._axisStyle = null, this._checkboxStyle = null, this._radioStyle = null, this._switchStyle = null, this._buttonStyle = null, this._textPopTipStyle = null, this._internalIconsStyle = null, this.isPivot = !1, this.name = "", this.internalTheme = { obj: obj, superTheme: superTheme }, this.name = getProp(obj, superTheme, [ "name" ]); } getExtendTheme() { return this.internalTheme.obj; } clearBodyStyleCache() { this._body = null; } get font() { const {obj: obj, superTheme: superTheme} = this.internalTheme; return getProp(obj, superTheme, [ "font" ], [ "bodyStyle", "font" ]); } get underlayBackgroundColor() { const {obj: obj, superTheme: superTheme} = this.internalTheme; return getProp(obj, superTheme, [ "underlayBackgroundColor" ]); } get cellInnerBorder() { var _a; const {obj: obj, superTheme: superTheme} = this.internalTheme; return null === (_a = getProp(obj, superTheme, [ "cellInnerBorder" ])) || void 0 === _a || _a; } get cellBorderClipDirection() { var _a; const {obj: obj, superTheme: superTheme} = this.internalTheme; return null !== (_a = getProp(obj, superTheme, [ "cellBorderClipDirection" ])) && void 0 !== _a ? _a : "top-left"; } get _contentOffset() { var _a; const {obj: obj, superTheme: superTheme} = this.internalTheme; return null !== (_a = getProp(obj, superTheme, [ "_contentOffset" ])) && void 0 !== _a ? _a : 0; } get defaultStyle() { const that = this; if (!this._defaultStyle) { const {obj: obj, superTheme: superTheme} = this.internalTheme, defaultStyle = (0, util_1.ingoreNoneValueMerge)({}, superTheme.defaultStyle, obj.defaultStyle); this._defaultStyle = { get fontSize() { var _a; return null !== (_a = defaultStyle.fontSize) && void 0 !== _a ? _a : global_1.DEFAULTFONTSIZE; }, get fontFamily() { var _a; return null !== (_a = defaultStyle.fontFamily) && void 0 !== _a ? _a : global_1.DEFAULTFONTFAMILY; }, get fontWeight() { return defaultStyle.fontWeight; }, get fontVariant() { return defaultStyle.fontVariant; }, get fontStyle() { return defaultStyle.fontStyle; }, get bgColor() { var _a; return null !== (_a = defaultStyle.bgColor) && void 0 !== _a ? _a : global_1.DEFAULTBGCOLOR; }, get color() { var _a; return null !== (_a = defaultStyle.color) && void 0 !== _a ? _a : global_1.DEFAULTFONTCOLOR; }, get borderColor() { var _a; return null !== (_a = defaultStyle.borderColor) && void 0 !== _a ? _a : global_1.DEFAULTBORDERCOLOR; }, get borderLineWidth() { var _a; return null !== (_a = defaultStyle.borderLineWidth) && void 0 !== _a ? _a : global_1.DEFAULTBORDERLINEWIDTH; }, get borderLineDash() { var _a; return null !== (_a = defaultStyle.borderLineDash) && void 0 !== _a ? _a : global_1.DEFAULTBORDERLINEDASH; }, get hover() { if (defaultStyle.hover) return { get cellBgColor() { var _a, _b; return null !== (_b = null === (_a = defaultStyle.hover) || void 0 === _a ? void 0 : _a.cellBgColor) && void 0 !== _b ? _b : void 0; }, get inlineColumnBgColor() { var _a, _b, _c, _d, _e, _f; return null !== (_f = null !== (_b = null === (_a = defaultStyle.hover) || void 0 === _a ? void 0 : _a.inlineColumnBgColor) && void 0 !== _b ? _b : (null === (_c = defaultStyle.hover) || void 0 === _c ? void 0 : _c.cellBgColor) && "string" == typeof (null === (_d = defaultStyle.hover) || void 0 === _d ? void 0 : _d.cellBgColor) ? (0, util_1.changeColor)(null === (_e = defaultStyle.hover) || void 0 === _e ? void 0 : _e.cellBgColor, .1, !1) : void 0) && void 0 !== _f ? _f : void 0; }, get inlineRowBgColor() { var _a, _b, _c, _d, _e, _f; return null !== (_f = null !== (_b = null === (_a = defaultStyle.hover) || void 0 === _a ? void 0 : _a.inlineRowBgColor) && void 0 !== _b ? _b : (null === (_c = defaultStyle.hover) || void 0 === _c ? void 0 : _c.cellBgColor) && "string" == typeof (null === (_d = defaultStyle.hover) || void 0 === _d ? void 0 : _d.cellBgColor) ? (0, util_1.changeColor)(null === (_e = defaultStyle.hover) || void 0 === _e ? void 0 : _e.cellBgColor, .1, !1) : void 0) && void 0 !== _f ? _f : void 0; } }; }, get select() { if (defaultStyle.select) return { get inlineColumnBgColor() { var _a, _b, _c, _d, _e, _f; return null !== (_f = null !== (_d = null !== (_b = null === (_a = defaultStyle.select) || void 0 === _a ? void 0 : _a.inlineColumnBgColor) && void 0 !== _b ? _b : null === (_c = that.selectionStyle) || void 0 === _c ? void 0 : _c.inlineColumnBgColor) && void 0 !== _d ? _d : (null === (_e = that.selectionStyle) || void 0 === _e ? void 0 : _e.cellBgColor) && "string" == typeof that.selectionStyle.cellBgColor ? (0, util_1.changeColor)(that.selectionStyle.cellBgColor, .1, !1) : void 0) && void 0 !== _f ? _f : void 0; }, get inlineRowBgColor() { var _a, _b, _c, _d, _e; return null !== (_e = null !== (_c = null !== (_b = null === (_a = defaultStyle.select) || void 0 === _a ? void 0 : _a.inlineRowBgColor) && void 0 !== _b ? _b : that.selectionStyle.inlineRowBgColor) && void 0 !== _c ? _c : (null === (_d = that.selectionStyle) || void 0 === _d ? void 0 : _d.cellBgColor) && "string" == typeof that.selectionStyle.cellBgColor ? (0, util_1.changeColor)(that.selectionStyle.cellBgColor, .1, !1) : void 0) && void 0 !== _e ? _e : void 0; } }; }, get padding() { var _a; return null !== (_a = defaultStyle.padding) && void 0 !== _a ? _a : [ 10, 16, 10, 16 ]; }, get textAlign() { var _a; return null !== (_a = defaultStyle.textAlign) && void 0 !== _a ? _a : "left"; }, get textBaseline() { var _a; return null !== (_a = defaultStyle.textBaseline) && void 0 !== _a ? _a : "middle"; }, get textOverflow() { var _a; return null !== (_a = defaultStyle.textOverflow) && void 0 !== _a ? _a : "ellipsis"; }, get lineHeight() { return defaultStyle.lineHeight; }, get autoWrapText() { var _a; return null !== (_a = defaultStyle.autoWrapText) && void 0 !== _a && _a; }, get lineClamp() { var _a; return null !== (_a = defaultStyle.lineClamp) && void 0 !== _a ? _a : "auto"; }, get linkColor() { var _a; return null !== (_a = defaultStyle.linkColor) && void 0 !== _a ? _a : "#3772ff"; }, get cursor() { var _a; return null !== (_a = defaultStyle.cursor) && void 0 !== _a ? _a : "auto"; }, get marked() { var _a; return null !== (_a = defaultStyle.marked) && void 0 !== _a && _a; }, get underline() { var _a; return null !== (_a = defaultStyle.underline) && void 0 !== _a && _a; }, get underlineColor() { return defaultStyle.underlineColor; }, get underlineDash() { return defaultStyle.underlineDash; }, get underlineOffset() { return defaultStyle.underlineOffset; }, get lineThrough() { var _a; return null !== (_a = defaultStyle.lineThrough) && void 0 !== _a && _a; }, get lineThroughColor() { return defaultStyle.lineThroughColor; }, get lineThroughDash() { return defaultStyle.lineThroughDash; } }; } return this._defaultStyle; } get cornerHeaderStyle() { if (!this._cornerHeader) { const {obj: obj, superTheme: superTheme} = this.internalTheme, header = (0, util_1.ingoreNoneValueMerge)({}, this.defaultStyle, superTheme.cornerHeaderStyle, obj.cornerHeaderStyle); this._cornerHeader = this.getStyle(header); } return this._cornerHeader; } get cornerRightTopCellStyle() { if (!this._cornerRightTopCell) { const {obj: obj, superTheme: superTheme} = this.internalTheme; if (!superTheme.cornerRightTopCellStyle && !obj.cornerRightTopCellStyle) return this._cornerRightTopCell; const header = (0, util_1.ingoreNoneValueMerge)({}, this.defaultStyle, superTheme.cornerRightTopCellStyle, obj.cornerRightTopCellStyle); this._cornerRightTopCell = this.getStyle(header); } return this._cornerRightTopCell; } get cornerLeftBottomCellStyle() { if (!this._cornerLeftBottomCell) { const {obj: obj, superTheme: superTheme} = this.internalTheme; if (!superTheme.cornerLeftBottomCellStyle && !obj.cornerLeftBottomCellStyle) return this._cornerLeftBottomCell; const header = (0, util_1.ingoreNoneValueMerge)({}, this.defaultStyle, superTheme.cornerLeftBottomCellStyle, obj.cornerLeftBottomCellStyle); this._cornerLeftBottomCell = this.getStyle(header); } return this._cornerLeftBottomCell; } get cornerRightBottomCellStyle() { if (!this._cornerRightBottomCell) { const {obj: obj, superTheme: superTheme} = this.internalTheme; if (!superTheme.cornerRightBottomCellStyle && !obj.cornerRightBottomCellStyle) return this._cornerRightBottomCell; const header = (0, util_1.ingoreNoneValueMerge)({}, this.defaultStyle, superTheme.cornerRightBottomCellStyle, obj.cornerRightBottomCellStyle); this._cornerRightBottomCell = this.getStyle(header); } return this._cornerRightBottomCell; } get rightFrozenStyle() { if (!this._rightFrozen) { const {obj: obj, superTheme: superTheme} = this.internalTheme; if (!superTheme.rightFrozenStyle && !obj.rightFrozenStyle) return this._rightFrozen; const header = (0, util_1.ingoreNoneValueMerge)({}, this.defaultStyle, this.rowHeaderStyle, superTheme.rightFrozenStyle, obj.rightFrozenStyle); this._rightFrozen = this.getStyle(header); } return this._rightFrozen; } get bottomFrozenStyle() { if (!this._bottomFrozen) { const {obj: obj, superTheme: superTheme} = this.internalTheme; if (!superTheme.bottomFrozenStyle && !obj.bottomFrozenStyle) return this._bottomFrozen; const header = (0, util_1.ingoreNoneValueMerge)({}, this.defaultStyle, this.headerStyle, superTheme.bottomFrozenStyle, obj.bottomFrozenStyle); this._bottomFrozen = this.getStyle(header); } return this._bottomFrozen; } get rowHeaderStyle() { var _a; if (!this._rowHeader) { const {obj: obj, superTheme: superTheme} = this.internalTheme, header = (0, util_1.ingoreNoneValueMerge)({}, this.defaultStyle, superTheme.rowHeaderStyle, null !== (_a = obj.rowHeaderStyle) && void 0 !== _a ? _a : this.isPivot ? null : obj.headerStyle); this._rowHeader = this.getStyle(header); } return this._rowHeader; } get headerStyle() { if (!this._header) { const {obj: obj, superTheme: superTheme} = this.internalTheme, header = (0, util_1.ingoreNoneValueMerge)({}, this.defaultStyle, superTheme.headerStyle, obj.headerStyle); this._header = this.getStyle(header); } return this._header; } get bodyStyle() { if (!this._body) { const {obj: obj, superTheme: superTheme} = this.internalTheme, body = (0, util_1.ingoreNoneValueMerge)({}, this.defaultStyle, superTheme.bodyStyle, obj.bodyStyle); this._body = this.getStyle(body); } return this._body; } get groupTitleStyle() { if (!this._groupTitle) { const {obj: obj, superTheme: superTheme} = this.internalTheme; if (!superTheme.groupTitleStyle && !obj.groupTitleStyle) return this._groupTitle; const groupTitle = (0, util_1.ingoreNoneValueMerge)({}, this.defaultStyle, superTheme.groupTitleStyle, obj.groupTitleStyle); this._groupTitle = this.getStyle(groupTitle); } return this._groupTitle; } get frameStyle() { if (!this._frameStyle) { const {obj: obj, superTheme: superTheme} = this.internalTheme, frameStyle = (0, util_1.ingoreNoneValueMerge)({}, superTheme.frameStyle, obj.frameStyle); this._frameStyle = { get borderColor() { return frameStyle.borderColor; }, get borderLineWidth() { return frameStyle.borderLineWidth; }, get borderLineDash() { return frameStyle.borderLineDash; }, get innerBorder() { return frameStyle.innerBorder; }, get shadowBlur() { return frameStyle.shadowBlur; }, get shadowColor() { return frameStyle.shadowColor; }, get shadowOffsetX() { return frameStyle.shadowOffsetX; }, get shadowOffsetY() { return frameStyle.shadowOffsetY; }, get cornerRadius() { return frameStyle.cornerRadius; } }; } return this._frameStyle; } get scrollStyle() { if (!this._scroll) { const {obj: obj, superTheme: superTheme} = this.internalTheme, scroll = (0, util_1.ingoreNoneValueMerge)({}, superTheme.scrollStyle, obj.scrollStyle); this._scroll = { get scrollSliderColor() { var _a; return null !== (_a = scroll.scrollSliderColor) && void 0 !== _a ? _a : "#C0C0C0"; }, get scrollSliderCornerRadius() { return scroll.scrollSliderCornerRadius; }, get scrollRailColor() { return scroll.scrollRailColor; }, get visible() { var _a; return null !== (_a = scroll.visible) && void 0 !== _a ? _a : "scrolling"; }, get verticalVisible() { return scroll.verticalVisible; }, get horizontalVisible() { return scroll.horizontalVisible; }, get width() { var _a; return null !== (_a = scroll.width) && void 0 !== _a ? _a : 7; }, get hoverOn() { var _a; return null === (_a = scroll.hoverOn) || void 0 === _a || _a; }, get barToSide() { var _a; return null !== (_a = scroll.barToSide) && void 0 !== _a && _a; }, get horizontalPadding() { var _a; return null !== (_a = scroll.horizontalPadding) && void 0 !== _a ? _a : 0; }, get verticalPadding() { var _a; return null !== (_a = scroll.verticalPadding) && void 0 !== _a ? _a : 0; } }; } return this._scroll; } get tooltipStyle() { if (!this._tooltip) { const {obj: obj, superTheme: superTheme} = this.internalTheme, tooltip = (0, util_1.ingoreNoneValueMerge)({}, superTheme.tooltipStyle, obj.tooltipStyle); this._tooltip = { get fontFamily() { var _a; return null !== (_a = tooltip.fontFamily) && void 0 !== _a ? _a : global_1.DEFAULTFONTFAMILY; }, get fontSize() { var _a; return null !== (_a = tooltip.fontSize) && void 0 !== _a ? _a : global_1.DEFAULTFONTSIZE; }, get bgColor() { var _a; return null !== (_a = tooltip.bgColor) && void 0 !== _a ? _a : "#000"; }, get padding() { var _a; return null !== (_a = tooltip.padding) && void 0 !== _a ? _a : [ 6, 8 ]; }, get color() { var _a; return null !== (_a = tooltip.color) && void 0 !== _a ? _a : "#FFF"; }, get maxWidth() { return tooltip.maxWidth; }, get maxHeight() { return tooltip.maxHeight; } }; } return this._tooltip; } get columnResize() { if (!this._columnResize) { const {obj: obj, superTheme: superTheme} = this.internalTheme, columnResize = (0, util_1.ingoreNoneValueMerge)({}, superTheme.columnResize, obj.columnResize); this._columnResize = { get lineColor() { var _a; return null !== (_a = columnResize.lineColor) && void 0 !== _a ? _a : "#416EFF"; }, get bgColor() { var _a; return null !== (_a = columnResize.bgColor) && void 0 !== _a ? _a : "#D9E2FF"; }, get lineWidth() { var _a; return null !== (_a = columnResize.lineWidth) && void 0 !== _a ? _a : 1; }, get width() { var _a; return null !== (_a = columnResize.width) && void 0 !== _a ? _a : columnResize.lineWidth + 2; }, get resizeHotSpotSize() { var _a; return null !== (_a = columnResize.resizeHotSpotSize) && void 0 !== _a ? _a : 16; }, get labelColor() { var _a; return null !== (_a = columnResize.labelColor) && void 0 !== _a ? _a : "#FFF"; }, get labelFontSize() { var _a; return null !== (_a = columnResize.labelFontSize) && void 0 !== _a ? _a : 10; }, get labelFontFamily() { var _a; return null !== (_a = columnResize.labelFontFamily) && void 0 !== _a ? _a : "sans-serif"; }, get labelBackgroundFill() { var _a; return null !== (_a = columnResize.labelBackgroundFill) && void 0 !== _a ? _a : "#3073F2"; }, get labelBackgroundCornerRadius() { var _a; return null !== (_a = columnResize.labelBackgroundCornerRadius) && void 0 !== _a ? _a : 5; }, get labelVisible() { var _a; return null === (_a = columnResize.labelVisible) || void 0 === _a || _a; }, get visibleOnHover() { var _a; return null !== (_a = columnResize.visibleOnHover) && void 0 !== _a && _a; } }; } return this._columnResize; } get dragHeaderSplitLine() { if (!this._dragHeaderSplitLine) { const {obj: obj, superTheme: superTheme} = this.internalTheme, dragHeaderSplitLine = (0, util_1.ingoreNoneValueMerge)({}, superTheme.dragHeaderSplitLine, obj.dragHeaderSplitLine); this._dragHeaderSplitLine = { get lineColor() { var _a; return null !== (_a = dragHeaderSplitLine.lineColor) && void 0 !== _a ? _a : "blue"; }, get lineWidth() { var _a; return null !== (_a = dragHeaderSplitLine.lineWidth) && void 0 !== _a ? _a : 2; }, get shadowBlockColor() { var _a; return null !== (_a = dragHeaderSplitLine.shadowBlockColor) && void 0 !== _a ? _a : "rgba(204,204,204,0.3)"; } }; } return this._dragHeaderSplitLine; } get frozenColumnLine() { if (!this._frozenColumnLine) { const {obj: obj, superTheme: superTheme} = this.internalTheme, frozenColumnLine = (0, util_1.ingoreNoneValueMerge)({}, superTheme.frozenColumnLine, obj.frozenColumnLine); this._frozenColumnLine = { get shadow() { if (frozenColumnLine.shadow) return { get width() { var _a, _b; return null !== (_b = null === (_a = frozenColumnLine.shadow) || void 0 === _a ? void 0 : _a.width) && void 0 !== _b ? _b : 24; }, get startColor() { var _a, _b; return null !== (_b = null === (_a = frozenColumnLine.shadow) || void 0 === _a ? void 0 : _a.startColor) && void 0 !== _b ? _b : "rgba(00, 24, 47, 0.06)"; }, get endColor() { var _a, _b; return null !== (_b = null === (_a = frozenColumnLine.shadow) || void 0 === _a ? void 0 : _a.endColor) && void 0 !== _b ? _b : "rgba(00, 24, 47, 0)"; } }; }, get border() { if (frozenColumnLine.border) return { get lineColor() { var _a, _b; return null !== (_b = null === (_a = frozenColumnLine.border) || void 0 === _a ? void 0 : _a.lineColor) && void 0 !== _b ? _b : "rgba(00, 24, 47, 0.06)"; }, get bgColor() { var _a, _b, _c, _d; return null !== (_d = null !== (_b = null === (_a = frozenColumnLine.border) || void 0 === _a ? void 0 : _a.bgColor) && void 0 !== _b ? _b : null === (_c = frozenColumnLine.border) || void 0 === _c ? void 0 : _c.lineColor) && void 0 !== _d ? _d : "rgba(00, 24, 47, 0.06)"; }, get lineWidth() { var _a, _b; return null !== (_b = null === (_a = frozenColumnLine.border) || void 0 === _a ? void 0 : _a.lineWidth) && void 0 !== _b ? _b : 4; }, get width() { var _a, _b, _c, _d; return null !== (_d = null !== (_b = null === (_a = frozenColumnLine.border) || void 0 === _a ? void 0 : _a.width) && void 0 !== _b ? _b : null === (_c = frozenColumnLine.border) || void 0 === _c ? void 0 : _c.lineWidth) && void 0 !== _d ? _d : 4; } }; } }; } return this._frozenColumnLine; } get selectionStyle() { if (!this._selectionStyle) { const {obj: obj, superTheme: superTheme} = this.internalTheme, selectionStyle = (0, util_1.ingoreNoneValueMerge)({}, superTheme.selectionStyle, obj.selectionStyle); this._selectionStyle = { get cellBgColor() { var _a; return null !== (_a = null == selectionStyle ? void 0 : selectionStyle.cellBgColor) && void 0 !== _a ? _a : "rgba(0, 0, 255,0.1)"; }, get cellBorderColor() { var _a; return null !== (_a = null == selectionStyle ? void 0 : selectionStyle.cellBorderColor) && void 0 !== _a ? _a : "#3073f2"; }, get cellBorderLineWidth() { var _a; return null !== (_a = null == selectionStyle ? void 0 : selectionStyle.cellBorderLineWidth) && void 0 !== _a ? _a : 2; }, get inlineColumnBgColor() { return null == selectionStyle ? void 0 : selectionStyle.inlineColumnBgColor; }, get inlineRowBgColor() { return null == selectionStyle ? void 0 : selectionStyle.inlineRowBgColor; }, get selectionFillMode() { var _a; return null !== (_a = null == selectionStyle ? void 0 : selectionStyle.selectionFillMode) && void 0 !== _a ? _a : "overlay"; } }; } return this._selectionStyle; } get axisStyle() { if (!this._axisStyle) { const {obj: obj, superTheme: superTheme} = this.internalTheme, axisStyle = (0, util_1.ingoreNoneValueMerge)({}, superTheme.axisStyle, obj.axisStyle); this._axisStyle = (0, component_1.getAxisStyle)(axisStyle); } return this._axisStyle; } get checkboxStyle() { if (!this._checkboxStyle) { const {obj: obj, superTheme: superTheme} = this.internalTheme, checkboxStyle = (0, util_1.ingoreNoneValueMerge)({}, superTheme.checkboxStyle, obj.checkboxStyle); this._checkboxStyle = checkboxStyle; } return this._checkboxStyle; } get radioStyle() { if (!this._radioStyle) { const {obj: obj, superTheme: superTheme} = this.internalTheme, radioStyle = (0, util_1.ingoreNoneValueMerge)({}, superTheme.radioStyle, obj.radioStyle); this._radioStyle = radioStyle; } return this._radioStyle; } get switchStyle() { if (!this._switchStyle) { const {obj: obj, superTheme: superTheme} = this.internalTheme, switchStyle = (0, util_1.ingoreNoneValueMerge)({}, superTheme.switchStyle, obj.switchStyle); this._switchStyle = switchStyle; } return this._switchStyle; } get buttonStyle() { if (!this._buttonStyle) { const {obj: obj, superTheme: superTheme} = this.internalTheme, buttonStyle = (0, util_1.ingoreNoneValueMerge)({}, superTheme.buttonStyle, obj.buttonStyle); this._buttonStyle = buttonStyle; } return this._buttonStyle; } get textPopTipStyle() { if (!this._textPopTipStyle) { const {obj: obj, superTheme: superTheme} = this.internalTheme, textPopTipStyle = (0, util_1.ingoreNoneValueMerge)({}, component_1.defalutPoptipStyle, superTheme.textPopTipStyle, obj.textPopTipStyle); this._textPopTipStyle = textPopTipStyle; } return this._textPopTipStyle; } get functionalIconsStyle() { if (!this._internalIconsStyle) { const {obj: obj, superTheme: superTheme} = this.internalTheme, functionalIconsStyle = (0, util_1.ingoreNoneValueMerge)({}, superTheme.functionalIconsStyle, obj.functionalIconsStyle); this._internalIconsStyle = functionalIconsStyle; } return this._internalIconsStyle; } hasProperty(names) { const {obj: obj, superTheme: superTheme} = this.internalTheme; return hasThemeProperty(obj, names) || hasThemeProperty(superTheme, names); } extends(obj) { return new TableTheme((0, util_1.ingoreNoneValueMerge)({}, obj), (0, util_1.ingoreNoneValueMerge)(this.internalTheme.superTheme, this.internalTheme.obj)); } getStyle(style) { const that = this; return { get fontSize() { return style.fontSize; }, get fontFamily() { return style.fontFamily; }, get fontWeight() { return style.fontWeight; }, get fontVariant() { return style.fontVariant; }, get fontStyle() { return style.fontStyle; }, get bgColor() { return style.bgColor; }, get color() { return style.color; }, get strokeColor() { return style.strokeColor; }, get borderColor() { return style.borderColor; }, get borderLineWidth() { return style.borderLineWidth; }, get borderLineDash() { return style.borderLineDash; }, get hover() { if (style.hover) return { get cellBgColor() { var _a, _b; return null !== (_b = null === (_a = style.hover) || void 0 === _a ? void 0 : _a.cellBgColor) && void 0 !== _b ? _b : void 0; }, get inlineColumnBgColor() { var _a, _b, _c, _d, _e, _f; return null !== (_f = null !== (_b = null === (_a = style.hover) || void 0 === _a ? void 0 : _a.inlineColumnBgColor) && void 0 !== _b ? _b : (null === (_c = style.hover) || void 0 === _c ? void 0 : _c.cellBgColor) && "string" == typeof (null === (_d = style.hover) || void 0 === _d ? void 0 : _d.cellBgColor) ? (0, util_1.changeColor)(null === (_e = style.hover) || void 0 === _e ? void 0 : _e.cellBgColor, .1, !1) : void 0) && void 0 !== _f ? _f : void 0; }, get inlineRowBgColor() { var _a, _b, _c, _d, _e, _f; return null !== (_f = null !== (_b = null === (_a = style.hover) || void 0 === _a ? void 0 : _a.inlineRowBgColor) && void 0 !== _b ? _b : (null === (_c = style.hover) || void 0 === _c ? void 0 : _c.cellBgColor) && "string" == typeof (null === (_d = style.hover) || void 0 === _d ? void 0 : _d.cellBgColor) ? (0, util_1.changeColor)(null === (_e = style.hover) || void 0 === _e ? void 0 : _e.cellBgColor, .1, !1) : void 0) && void 0 !== _f ? _f : void 0; } }; }, get select() { return { get inlineColumnBgColor() { var _a, _b, _c, _d, _e, _f; return null !== (_f = null !== (_d = null !== (_b = null === (_a = style.select) || void 0 === _a ? void 0 : _a.inlineColumnBgColor) && void 0 !== _b ? _b : null === (_c = that.selectionStyle) || void 0 === _c ? void 0 : _c.inlineColumnBgColor) && void 0 !== _d ? _d : (null === (_e = that.selectionStyle) || void 0 === _e ? void 0 : _e.cellBgColor) && "string" == typeof that.selectionStyle.cellBgColor ? (0, util_1.changeColor)(that.selectionStyle.cellBgColor, .1, !1) : void 0) && void 0 !== _f ? _f : void 0; }, get inlineRowBgColor() { var _a, _b, _c, _d, _e; return null !== (_e = null !== (_c = null !== (_b = null === (_a = style.select) || void 0 === _a ? void 0 : _a.inlineRowBgColor) && void 0 !== _b ? _b : that.selectionStyle.inlineRowBgColor) && void 0 !== _c ? _c : (null === (_d = that.selectionStyle) || void 0 === _d ? void 0 : _d.cellBgColor) && "string" == typeof that.selectionStyle.cellBgColor ? (0, util_1.changeColor)(that.selectionStyle.cellBgColor, .1, !1) : void 0) && void 0 !== _e ? _e : void 0; }, get cellBgColor() { var _a, _b, _c; if ("replace" === that.selectionStyle.selectionFillMode) return null !== (_c = null !== (_b = null === (_a = style.select) || void 0 === _a ? void 0 : _a.cellBgColor) && void 0 !== _b ? _b : that.selectionStyle.cellBgColor) && void 0 !== _c ? _c : void 0; } }; }, get frameStyle() { if (style.frameStyle) return { get borderColor() { var _a, _b; return null !== (_b = null === (_a = style.frameStyle) || void 0 === _a ? void 0 : _a.borderColor) && void 0 !== _b ? _b : void 0; }, get borderLineWidth() { var _a, _b; return null !== (_b = null === (_a = style.frameStyle) || void 0 === _a ? void 0 : _a.borderLineWidth) && void 0 !== _b ? _b : void 0; }, get borderLineDash() { var _a, _b; return null !== (_b = null === (_a = style.frameStyle) || void 0 === _a ? void 0 : _a.borderLineDash) && void 0 !== _b ? _b : void 0; } }; }, get padding() { return style.padding; }, get textAlign() { return style.textAlign; }, get textBaseline() { return style.textBaseline; }, get textOverflow() { return style.textOverflow; }, get lineHeight() { return style.lineHeight; }, get autoWrapText() { return style.autoWrapText; }, get lineClamp() { return style.lineClamp; }, get linkColor() { return style.linkColor; }, get cursor() { return style.cursor; }, get textStick() { return style.textStick; }, get marked() { return style.marked; }, get underline() { var _a; return null !== (_a = style.underline) && void 0 !== _a && _a; }, get underlineColor() { return style.underlineColor; }, get underlineDash() { return style.underlineDash; }, get underlineOffset() { return style.underlineOffset; }, get lineThrough() { var _a; return null !== (_a = style.lineThrough) && void 0 !== _a && _a; }, get lineThroughColor() { return style.lineThroughColor; }, get lineThroughDash() { return style.lineThroughDash; } }; } } function hasThemeProperty(obj, names) { if (obj instanceof TableTheme) return obj.hasProperty(names); let o = obj; if (!o) return !1; for (let index = 0; index < names.length; index++) { if (o = o[names[index]], !o) return !1; } return !!o; } exports.TableTheme = TableTheme; //# sourceMappingURL=theme.js.map