UNPKG

@mui/x-data-grid

Version:

The Community plan edition of the Data Grid components (MUI X).

137 lines (135 loc) 6.1 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default; var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default; Object.defineProperty(exports, "__esModule", { value: true }); exports.GridCsvExportMenuItem = GridCsvExportMenuItem; exports.GridPrintExportMenuItem = GridPrintExportMenuItem; exports.GridToolbarExport = void 0; var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends")); var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose")); var React = _interopRequireWildcard(require("react")); var _propTypes = _interopRequireDefault(require("prop-types")); var _forwardRef = require("@mui/x-internals/forwardRef"); var _useGridRootProps = require("../../hooks/utils/useGridRootProps"); var _useGridApiContext = require("../../hooks/utils/useGridApiContext"); var _GridToolbarExportContainer = require("./GridToolbarExportContainer"); var _jsxRuntime = require("react/jsx-runtime"); const _excluded = ["hideMenu", "options"], _excluded2 = ["hideMenu", "options"], _excluded3 = ["csvOptions", "printOptions", "excelOptions"]; function GridCsvExportMenuItem(props) { const apiRef = (0, _useGridApiContext.useGridApiContext)(); const rootProps = (0, _useGridRootProps.useGridRootProps)(); const { hideMenu, options } = props, other = (0, _objectWithoutPropertiesLoose2.default)(props, _excluded); return /*#__PURE__*/(0, _jsxRuntime.jsx)(rootProps.slots.baseMenuItem, (0, _extends2.default)({ onClick: () => { apiRef.current.exportDataAsCsv(options); hideMenu?.(); } }, other, { children: apiRef.current.getLocaleText('toolbarExportCSV') })); } process.env.NODE_ENV !== "production" ? GridCsvExportMenuItem.propTypes = { // ----------------------------- Warning -------------------------------- // | These PropTypes are generated from the TypeScript type definitions | // | To update them edit the TypeScript types and run "pnpm proptypes" | // ---------------------------------------------------------------------- hideMenu: _propTypes.default.func, options: _propTypes.default.shape({ allColumns: _propTypes.default.bool, delimiter: _propTypes.default.string, disableToolbarButton: _propTypes.default.bool, escapeFormulas: _propTypes.default.bool, fields: _propTypes.default.arrayOf(_propTypes.default.string), fileName: _propTypes.default.string, getRowsToExport: _propTypes.default.func, includeColumnGroupsHeaders: _propTypes.default.bool, includeHeaders: _propTypes.default.bool, shouldAppendQuotes: _propTypes.default.bool, utf8WithBom: _propTypes.default.bool }) } : void 0; function GridPrintExportMenuItem(props) { const apiRef = (0, _useGridApiContext.useGridApiContext)(); const rootProps = (0, _useGridRootProps.useGridRootProps)(); const { hideMenu, options } = props, other = (0, _objectWithoutPropertiesLoose2.default)(props, _excluded2); return /*#__PURE__*/(0, _jsxRuntime.jsx)(rootProps.slots.baseMenuItem, (0, _extends2.default)({ onClick: () => { apiRef.current.exportDataAsPrint(options); hideMenu?.(); } }, other, { children: apiRef.current.getLocaleText('toolbarExportPrint') })); } process.env.NODE_ENV !== "production" ? GridPrintExportMenuItem.propTypes = { // ----------------------------- Warning -------------------------------- // | These PropTypes are generated from the TypeScript type definitions | // | To update them edit the TypeScript types and run "pnpm proptypes" | // ---------------------------------------------------------------------- hideMenu: _propTypes.default.func, options: _propTypes.default.shape({ allColumns: _propTypes.default.bool, bodyClassName: _propTypes.default.string, copyStyles: _propTypes.default.bool, disableToolbarButton: _propTypes.default.bool, fields: _propTypes.default.arrayOf(_propTypes.default.string), fileName: _propTypes.default.string, getRowsToExport: _propTypes.default.func, hideFooter: _propTypes.default.bool, hideToolbar: _propTypes.default.bool, includeCheckboxes: _propTypes.default.bool, pageStyle: _propTypes.default.oneOfType([_propTypes.default.func, _propTypes.default.string]) }) } : void 0; /** * @deprecated Use the {@link https://mui.com/x/react-data-grid/components/export/ Export} components instead. This component will be removed in a future major release. */ const GridToolbarExport = exports.GridToolbarExport = (0, _forwardRef.forwardRef)(function GridToolbarExport(props, ref) { const _ref = props, { csvOptions = {}, printOptions = {}, excelOptions } = _ref, other = (0, _objectWithoutPropertiesLoose2.default)(_ref, _excluded3); const apiRef = (0, _useGridApiContext.useGridApiContext)(); const preProcessedButtons = apiRef.current.unstable_applyPipeProcessors('exportMenu', [], { excelOptions, csvOptions, printOptions }).sort((a, b) => a.componentName > b.componentName ? 1 : -1); if (preProcessedButtons.length === 0) { return null; } return /*#__PURE__*/(0, _jsxRuntime.jsx)(_GridToolbarExportContainer.GridToolbarExportContainer, (0, _extends2.default)({}, other, { ref: ref, children: preProcessedButtons.map((button, index) => /*#__PURE__*/React.cloneElement(button.component, { key: index })) })); }); process.env.NODE_ENV !== "production" ? GridToolbarExport.propTypes = { // ----------------------------- Warning -------------------------------- // | These PropTypes are generated from the TypeScript type definitions | // | To update them edit the TypeScript types and run "pnpm proptypes" | // ---------------------------------------------------------------------- csvOptions: _propTypes.default.object, printOptions: _propTypes.default.object, /** * The props used for each slot inside. * @default {} */ slotProps: _propTypes.default.object } : void 0;