import React, { memo } from 'react'; import { TerminalSquareIcon } from 'lucide-react'; import { CheckboxButton } from '@librechat/client'; import { PermissionTypes, Permissions } from 'librechat-data-provider'; import { useLocalize, useHasAccess } from '~/hooks'; import { useBadgeRowContext } from '~/Providers'; function CodeInterpreter() { const localize = useLocalize(); const { codeInterpreter, codeApiKeyForm } = useBadgeRowContext(); const { toggleState: runCode, debouncedChange, isPinned } = codeInterpreter; const { badgeTriggerRef } = codeApiKeyForm; const canRunCode = useHasAccess({ permissionType: PermissionTypes.RUN_CODE, permission: Permissions.USE, }); if (!canRunCode) { return null; } return ( (runCode || isPinned) && ( } /> ) ); } export default memo(CodeInterpreter);