# EuiDisableContentComponent

## Overview

The `EuiDisableContentComponent` is an Angular component that provides functionality to disable content sections and display visual feedback to users. It acts as a wrapper component that can overlay content with a semi-transparent layer and manage focus states when content becomes unavailable.

## Core Features

### Content Disabling
- Toggles content accessibility through the `isDisabled` input property
- Adds/removes CSS classes (`eui-disable-content--disabled`) to control visual state
- Uses Angular's `booleanAttribute` transformer for flexible boolean input handling

### Focus Management
- Captures and stores the currently focused element before disabling
- Disables focused elements by setting appropriate attributes:
    - `disabled="true"`
    - `tabindex="-1"`
    - `aria-disabled="true"`
- Restores focus and accessibility attributes when re-enabling content

### User Feedback
- Displays informational notifications via `EuiGrowlService` when disabled content is clicked
- Configurable notification text through the `disabledText` input property
- Only shows notifications when both content is disabled AND notification text is provided

### Accessibility Support
- Proper ARIA attributes management (`aria-disabled`)
- Tabindex manipulation for keyboard navigation control
- Focus restoration when content becomes available again

## Business Value

### User Experience Enhancement
- **Visual Feedback**: Clear indication when content is temporarily unavailable
- **Prevent User Confusion**: Users understand why certain actions are not available
- **Guided Interaction**: Informational messages explain the disabled state

### Development Efficiency
- **Reusable Component**: Can wrap any content that needs conditional disabling
- **Consistent Behavior**: Standardized way to handle disabled states across the application
- **Easy Integration**: Simple boolean property to control the disabled state

### Accessibility Compliance
- **WCAG Compliance**: Proper handling of disabled states for screen readers
- **Keyboard Navigation**: Maintains logical tab order when content is disabled
- **Semantic Markup**: Uses appropriate ARIA attributes for assistive technologies
