UNPKG

@mui/x-data-grid-premium

Version:

The Premium plan edition of the MUI X Data Grid Components.

85 lines (84 loc) 3.12 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default; Object.defineProperty(exports, "__esModule", { value: true }); exports.GridAiAssistantPanelSuggestions = GridAiAssistantPanelSuggestions; var _xDataGridPro = require("@mui/x-data-grid-pro"); var _composeClasses = _interopRequireDefault(require("@mui/utils/composeClasses")); var _styles = require("@mui/material/styles"); var _internals = require("@mui/x-data-grid-pro/internals"); var _useGridRootProps = require("../../hooks/utils/useGridRootProps"); var _useGridApiContext = require("../../hooks/utils/useGridApiContext"); var _jsxRuntime = require("react/jsx-runtime"); const useUtilityClasses = ownerState => { const { classes } = ownerState; const slots = { root: ['aiAssistantPanelSuggestions'], list: ['aiAssistantPanelSuggestionsList'], item: ['aiAssistantPanelSuggestionsItem'], label: ['aiAssistantPanelSuggestionsLabel'] }; return (0, _composeClasses.default)(slots, _xDataGridPro.getDataGridUtilityClass, classes); }; const AiAssistantPanelSuggestionsRoot = (0, _styles.styled)('div', { name: 'MuiDataGrid', slot: 'AiAssistantPanelSuggestions' })({ display: 'flex', flexDirection: 'column', gap: _internals.vars.spacing(0.75) }); const AiAssistantPanelSuggestionsList = (0, _styles.styled)('div', { name: 'MuiDataGrid', slot: 'AiAssistantPanelSuggestionsList' })({ display: 'flex', gap: _internals.vars.spacing(0.75), overflow: 'auto', padding: _internals.vars.spacing(1), margin: _internals.vars.spacing(-1), scrollbarWidth: 'thin' }); const AiAssistantPanelSuggestionsLabel = (0, _styles.styled)('div', { name: 'MuiDataGrid', slot: 'AiAssistantPanelSuggestionsLabel' })({ display: 'flex', alignItems: 'center', gap: _internals.vars.spacing(1), font: _internals.vars.typography.font.body, color: _internals.vars.colors.foreground.muted, paddingLeft: _internals.vars.spacing(0.5) }); function GridAiAssistantPanelSuggestions(props) { const { suggestions } = props; const rootProps = (0, _useGridRootProps.useGridRootProps)(); const apiRef = (0, _useGridApiContext.useGridApiContext)(); const ownerState = { classes: rootProps.classes }; const classes = useUtilityClasses(ownerState); return /*#__PURE__*/(0, _jsxRuntime.jsxs)(AiAssistantPanelSuggestionsRoot, { className: classes.root, ownerState: ownerState, children: [/*#__PURE__*/(0, _jsxRuntime.jsx)(AiAssistantPanelSuggestionsLabel, { className: classes.label, ownerState: ownerState, children: apiRef.current.getLocaleText('aiAssistantSuggestions') }), /*#__PURE__*/(0, _jsxRuntime.jsx)(AiAssistantPanelSuggestionsList, { className: classes.list, ownerState: ownerState, children: suggestions.map(suggestion => /*#__PURE__*/(0, _jsxRuntime.jsx)(rootProps.slots.baseChip, { label: suggestion.value, className: classes.item, onClick: () => apiRef.current.aiAssistant.processPrompt(suggestion.value), variant: "outlined" }, suggestion.value)) })] }); }