name: 💎 Feature Request
description: Request a new feature or enhancement
type: enhancement
labels: [triage]
title: 'Feature: '
body:
  - type: markdown
    attributes:
      value: |
        Thanks for taking the time to file an enhancement report! Please fill this template out as completely as possible.
        * If you are not requesting a new feature or enhancement, but want to ask a general question, use [discussions](https://github.com/videojs/v10/discussions) instead.
        * Check the [docs](https://videojs.org/docs).
        * Please check to see if there's an existing issue or discussion and, if so, reply there instead.
        * Please provide as much detail as you can.
  - type: checkboxes
    attributes:
      label: Should this be a feature proposal discussion?
      description: |
        Video.js 10 currently uses [feature proposal discussions](https://github.com/videojs/v10/discussions) for larger feature requests, proposals, and discussions
      options:
        - label: This is not a substantial change
          required: true
  - type: checkboxes
    attributes:
      label: Is there an existing issue for this?
      description: Please search to see if an issue already exists for the bug you encountered.
      options:
        - label: I have searched the existing issues and discussions
          required: true
  - type: dropdown
    id: packages
    validations:
      required: true
    attributes:
      label: Which package(s) does this apply to? Select all that apply
      multiple: true
      options:
        - Core (@videojs/core)
        - Icons (@videojs/icons)
        - HTML (@videojs/html)
        - Media (@videojs/media)
        - React (@videojs/react)
        - SPF (@videojs/spf)
        - Utils (@videojs/utils)
  - type: textarea
    id: motivation
    validations:
      required: true
    attributes:
      label: Motivation
      description: |
        What are you trying to accomplish? Which kind of user is this for? Providing context helps us come up with a solution that is more useful in the real world.
  - type: textarea
    id: description
    validations:
      required: true
    attributes:
      label: Description
      description: |
        Please provide as much information about the feature or enhancement as
        possible. Include images or screenshots if needed.
  - type: textarea
    id: expectedbehavior
    validations:
      required: true
    attributes:
      label: Expected Behavior
  - type: textarea
    id: alternatives
    validations:
      required: true
    attributes:
      label: Alternatives and Workarounds
      description: |
        Please describe any alternatives or workarounds you have considered that could be used instead of this feature.
      placeholder: |
        It's possible to achieve the same result by waiting for the `loadstart` event and manually invoking the `foo()` method, but this is creates significantly more complexity for developers compared to the proposal.
  - type: textarea
    id: prior-art
    validations:
      required: false
    attributes:
      label: Examples in other libraries
      description: |
        Provide links to any equivalent examples of this feature or functionality implemented in other libraries (if applicable).
