UNPKG

@antv/s2-react

Version:
58 lines 2.14 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.ChartSheet = void 0; const tslib_1 = require("tslib"); const s2_1 = require("@antv/s2"); const extends_1 = require("@antv/s2/extends"); const react_1 = tslib_1.__importDefault(require("react")); const base_sheet_1 = require("../base-sheet"); exports.ChartSheet = react_1.default.memo((props) => { const { options: customOptions, themeCfg: customThemeCfg } = props, restProps = tslib_1.__rest(props, ["options", "themeCfg"]); const s2Options = react_1.default.useMemo(() => { const defaultOptions = { style: { rowCell: { width: 100, }, dataCell: { width: 400, height: 400, }, }, tooltip: { enable: true, }, }; const options = { dataCell: (viewMeta, spreadsheet) => new extends_1.ChartDataCell(viewMeta, spreadsheet), showDefaultHeaderActionIcon: false, interaction: { hoverFocus: false, brushSelection: { dataCell: false, }, }, }; return (0, s2_1.customMerge)(defaultOptions, customOptions, options); }, [customOptions]); const themeCfg = react_1.default.useMemo(() => { const defaultTheme = { dataCell: { cell: { interactionState: { hoverFocus: { borderOpacity: 0, }, selected: { borderOpacity: 0, }, }, }, }, }; return (0, s2_1.customMerge)(defaultTheme, customThemeCfg); }, [customThemeCfg]); return react_1.default.createElement(base_sheet_1.BaseSheet, Object.assign({}, restProps, { options: s2Options, themeCfg: themeCfg })); }); exports.ChartSheet.displayName = 'ChartSheet'; //# sourceMappingURL=index.js.map