Skip to main content

Custom components for Plotly Dash

Project description

dash-holoniq-components

A set of house-keeping components for Dash that make the implementation of forms and larger, multi-page applications a little easier.

The following components are available:

Alert The Alert component is hidden if it has no children. When children are injected the Alert component sets its style to become visible

ButtonLink Allows you to create a clickable link within a multi-page app in the same way as dcc.Link. The standard dcc.Button attributes n_clicks and n_clicks_timestamp have been added to ButtonLink. These attributes can be used for notification that the ButtonLink has been clicked. ButtonLink can be enabled/disabled allowing conditional control of the link via a Dash callback

Form The Form components normal submit action can be inhibited. The form data, as it would be reported by the a submit action, is available in a Dash callback via the components form_data attribute.

InputWithIcon Adds a font awesome glyph and tooltip to the end of a standard input box

LayoutRouter The children of LayoutRouter are each wrapped in a Div that is is hidden/shown based on the current value of the LayoutRouter 'switch' attribute.

The advantage of LayoutRouter over the standard approach to dynamic layout is that ALL the applications layout is rendered, but hidden, when the Dash application starts. LayoutRouter overcomes the problem with the standard approach were callbacks linked to dynamic content are difficult to realise.

PageTitle Sets the page title:

PasswordWithShow Password input with a show/hide icon that can be clicked to reveal the password

Location A modified version of dash-core-components Location component. Allows multiple instances to co-exist. In the dash-core-components version the last instance is the only one to get history event notifications.

Button

A modified version of dash-core-components Button component. The component has a boolean focus attribute that is set true when the button gains focus and false when it looses it. The focus attribute can be used in a dash callback to hide an associated dropdown whenever the user clicks the application background or makes a selection from the dropdown.

Example dropdown callback

    @callback(Output(ids.container(MATCH), 'className'),
            Input(ids.button(MATCH), 'n_clicks'),
            Input(ids.button(MATCH), 'focus'),
            State(ids.container(MATCH), 'className'))
    def show_dropdown(button_clicks, button_focus, className):
        logging.info('show_dropdown: button_clicks=%s, className = %s', button_clicks, className)

        if not button_clicks:
            return className

        if 'show' in className and button_focus == False:
            return className.replace(' show', '')
        else:
            return className + ' show'

Installation

PyPI

You can install dash-holoniq-components with pip:

pip install dash-holoniq-components

Documentation

Head over to the README for more details.

Contributing

The source code for dash-bootstrap-components is available on GitHub. If you find a bug or something is unclear, we encourage you to raise an issue. We also welcome contributions, to contribute, fork the repository and open a pull request.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dash_holoniq_components-0.0.19.tar.gz (617.8 kB view details)

Uploaded Source

Built Distribution

dash_holoniq_components-0.0.19-py3-none-any.whl (632.6 kB view details)

Uploaded Python 3

File details

Details for the file dash_holoniq_components-0.0.19.tar.gz.

File metadata

  • Download URL: dash_holoniq_components-0.0.19.tar.gz
  • Upload date:
  • Size: 617.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.12

File hashes

Hashes for dash_holoniq_components-0.0.19.tar.gz
Algorithm Hash digest
SHA256 06e781ab4dac101611c48294c5a1b0adb280f163b38c7e23895e1f50ad902f41
MD5 19d277f0c5b3bc2a8aa18ad256fc2bf7
BLAKE2b-256 2fd0a3db300e73683d2ed0a61d3a097ecaa5e08b97c257da24f00494c0252deb

See more details on using hashes here.

File details

Details for the file dash_holoniq_components-0.0.19-py3-none-any.whl.

File metadata

  • Download URL: dash_holoniq_components-0.0.19-py3-none-any.whl
  • Upload date:
  • Size: 632.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.3 CPython/3.8.12

File hashes

Hashes for dash_holoniq_components-0.0.19-py3-none-any.whl
Algorithm Hash digest
SHA256 619423674c51948ae38a7ca6e9089f2a2ac24330a6157b672d53a48bb6412939
MD5 fdb5c1f0beeaee4ac1445ac69f5175c0
BLAKE2b-256 525626e0e972dbb740d600122f0236b332c7ad6ee6f1ae228c0e6ad5e9f5ef86

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page