## Description
This PR introduces a feature flag to control the ESLint migration.
Fixes#36542
## Automation
/test js sanity
### 🔍 Cypress test results
<!-- This is an auto-generated comment: Cypress test results -->
> [!TIP]
> 🟢🟢🟢 All cypress tests have passed! 🎉🎉🎉
> Workflow run:
<https://github.com/appsmithorg/appsmith/actions/runs/11795470649>
> Commit: ac773e1ccb4a3e67159ac21e4abc757f5f959693
> <a
href="https://internal.appsmith.com/app/cypress-dashboard/rundetails-65890b3c81d7400d08fa9ee5?branch=master&workflowId=11795470649&attempt=2"
target="_blank">Cypress dashboard</a>.
> Tags: `@tag.JS, @tag.Sanity`
> Spec:
> <hr>Tue, 12 Nov 2024 11:58:31 UTC
<!-- end of auto-generated comment: Cypress test results -->
## Communication
Should the DevRel and Marketing teams inform users about this change?
- [ ] Yes
- [x] No
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
- **New Features**
- Introduced a new feature flag, `rollout_eslint_enabled`, for managing
ESLint functionality.
- Added an enumeration for linter versions, including `"JSHINT"` and
`"ESLINT"`.
- Implemented a function to dynamically determine the linter version
based on the feature flag.
- **Bug Fixes**
- Enhanced linting error handling by updating the linter version
dynamically instead of using a hardcoded value.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->