@antv/s2-react
Version:
use S2 with react
28 lines • 1.39 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.GridAnalysisSheet = void 0;
const tslib_1 = require("tslib");
const s2_1 = require("@antv/s2");
const react_1 = tslib_1.__importDefault(require("react"));
const base_sheet_1 = require("../base-sheet");
const custom_cell_1 = require("./custom-cell");
const theme_1 = require("./theme");
exports.GridAnalysisSheet = react_1.default.memo((props) => {
const { options: defaultOptions, themeCfg } = props, restProps = tslib_1.__rest(props, ["options", "themeCfg"]);
const s2Options = react_1.default.useMemo(() => {
const options = {
dataCell: (viewMeta, spreadsheet) => new custom_cell_1.GridAnalysisSheetDataCell(viewMeta, spreadsheet),
showDefaultHeaderActionIcon: false,
style: {
colCell: {
hideValue: true,
},
},
};
return (0, s2_1.customMerge)(defaultOptions, options);
}, [defaultOptions]);
const s2ThemeCfg = react_1.default.useMemo(() => (0, s2_1.customMerge)(themeCfg, { theme: theme_1.GridAnalysisTheme }), [themeCfg]);
return (react_1.default.createElement(base_sheet_1.BaseSheet, Object.assign({ options: s2Options, themeCfg: s2ThemeCfg }, restProps)));
});
exports.GridAnalysisSheet.displayName = 'GridAnalysisSheet';
//# sourceMappingURL=index.js.map