Skip to content

dcc.Input type="color" raises error #2772

Open

Description

@luggie

dcc.Input(type="color")

is implemented and works correctly. However the components description, doc string (except for on ReadOnly section) and type checking is not up to date as it raises:

Invalid argument `type` passed into Input with ID "set-color-input".
Expected one of ["text","number","password","email","range","search","tel","url","hidden"].
Value provided: "color"

Activity

  1. alexcjohnson commented on Mar 1, 2024

    @alexcjohnson
    Collaborator

    Thanks @luggie (transferred the issue to dash, dcc has been merged in here so the other repo is obsolete)

    When you say it's implemented, you mean it works correctly if you disable prop checking? If so, we should be able to just add color as an option here:

    type: PropTypes.oneOf([
    // Only allowing the input types with wide browser compatibility
    'text',
    'number',
    'password',
    'email',
    'range',
    'search',
    'tel',
    'url',
    'hidden',
    ]),

    We will want to check on the comment // Only allowing the input types with wide browser compatibility - perhaps when we first wrote this component color was poorly supported but now it's close to universal?

  2. AnnMarieW commented on Mar 1, 2024

    @AnnMarieW
    Collaborator

    One issue with adding the color prop is that if someone clicks and drags on the color picker, it will fire the callback a bazillion times. Not sure if there is a way to prevent that, or maybe just recommend people use this option in a clientside callback only?

  3. alexcjohnson commented on Mar 1, 2024

    @alexcjohnson
    Collaborator

    dcc.Input has a debounce prop, which should help with that.

  4. luggie commented on Mar 2, 2024

    @luggie
    Author

    When you say it's implemented, you mean it works correctly if you disable prop checking? If so, we should be able to just add color as an option here:

    yep, that's what I thought

  5. qlandman commented on Jul 12, 2024

    @qlandman

    Would it also be possible to also add the date type as an alternative for the Dash DatePicker?

  6. removed their assignment
    on Aug 2, 2024
  7. budescode commented on Nov 3, 2026

    @budescode

    I have opened #4115 for this. It adds color to the allowed type values of dcc.Input, with a test, so dcc.Input(type="color") renders the native colour picker and the chosen colour reaches the callback as #rrggbb.

    On the concern about the callback firing on every change while dragging in the picker: debounce=True already covers that, the value is sent when the picker closes.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    P3backlogbugsomething broken

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions