\n {isPartLibraryEnabled ? (\n <>\n
\n \n \n \n \n \n ),\n }}\n label={t('Search part ID or name')}\n size=\"small\"\n sx={classes.searchInput}\n value={partLibraryIdOrNameSearch}\n variant=\"outlined\"\n onChange={handleSearchPartLibraryIdOrName}\n >\n\n \n {materials.map((option) => (\n \n ))}\n \n\n \n {thickness.map((option) => (\n \n ))}\n \n\n \n {\n setFilterByLastQuotePeriodFrom(null)\n setFilterByLastQuotePeriodTo(null)\n },\n },\n }}\n sx={classes.textFieldDate}\n timezone={userTimeZone}\n value={filterByLastQuotePeriodFrom ? dayjs(filterByLastQuotePeriodFrom) : null}\n onChange={handleChangeFilterByLastQuotePeriodFrom}\n />\n\n {\n setFilterByLastQuotePeriodFrom(null)\n setFilterByLastQuotePeriodTo(null)\n },\n },\n }}\n sx={classes.textFieldDate}\n timezone={userTimeZone}\n value={filterByLastQuotePeriodTo ? dayjs(filterByLastQuotePeriodTo) : null}\n onChange={handleChangeFilterByLastQuotePeriodTo}\n />\n \n \n {t('Show archived parts')}\n \n \n \n {!isOnFreePlan ? (\n
\n ) : null}\n >\n ) : null}\n\n
\n\n
\n
\n )\n}\n\nPartLibraryTab.propTypes = {\n customerId: PropTypes.string.isRequired,\n}\n\nexport default PartLibraryTab\n","import { useTranslation } from 'react-i18next'\nimport { Button, Typography } from '@mui/material'\nimport PropTypes from 'prop-types'\n\nimport { Dialog } from '@/common/components'\n\nconst ArchiveQuoteDialog = ({ mode = 'archive', name = undefined, onCancelClose, onConfirmClose }) => {\n const { t } = useTranslation()\n\n const handleDeleteButtonClick = () => {\n if (typeof onConfirmClose === 'function') {\n onConfirmClose()\n }\n }\n\n return (\n