Metadata-Version: 2.1
Name: widgetastic.patternfly5
Version: 24.2.29.0
Summary: Patternfly5 widget library for Widgetastic.
Project-URL: repository, https://github.com/RedHatQE/widgetastic.patternfly5
Maintainer-email: Nikhil Dhandre <ndhandre@redhat.com>, Egor Shamardin <eshamard@redhat.com>, Mike Shriver <mshriver@redhat.com>
License: Copyright 2023 Red Hat, Inc. and/or its affiliates
        
        Licensed under the Apache License, Version 2.0 (the "License");
        you may not use this file except in compliance with the License.
        You may obtain a copy of the License at
        
            http://www.apache.org/licenses/LICENSE-2.0
        
        Unless required by applicable law or agreed to in writing, software
        distributed under the License is distributed on an "AS IS" BASIS,
        WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
        See the License for the specific language governing permissions and
        limitations under the License.
License-File: LICENSE
Keywords: patternfly,patternfly5,widgetastic
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: Software Development :: Quality Assurance
Classifier: Topic :: Software Development :: Testing
Requires-Python: >=3.8
Requires-Dist: widgetastic-core>=1.0.6
Provides-Extra: dev
Requires-Dist: codecov; extra == 'dev'
Requires-Dist: pre-commit; extra == 'dev'
Requires-Dist: pytest; extra == 'dev'
Requires-Dist: pytest-cov; extra == 'dev'
Requires-Dist: pytest-xdist; extra == 'dev'
Provides-Extra: doc
Requires-Dist: sphinx; extra == 'doc'
Description-Content-Type: text/markdown

<h1 align="center"> widgetastic.patternfly5 </h1>

<p align="center">
    <a href="https://pypi.org/project/widgetastic.patternfly5/">
    <img alt="Python Versions" src="https://img.shields.io/pypi/pyversions/widgetastic.patternfly5.svg?style=flat">
    </a>
    <a href="https://pypi.org/project/widgetastic.patternfly5/#history">
    <img alt="PyPI version" src="https://badge.fury.io/py/widgetastic.patternfly5.svg">
    </a>
    <a href="https://codecov.io/github/RedHatQE/widgetastic.patternfly5">
      <img src="https://codecov.io/github/RedHatQE/widgetastic.patternfly5/graph/badge.svg?token=cWuTXniIPm"/>
    </a>
    <a href="https://github.com/RedHatQE/widgetastic.patternfly5/actions/workflows/tests.yaml">
    <img alt="github actions" src="https://github.com/RedHatQE/widgetastic.patternfly5/actions/workflows/tests.yaml/badge.svg">
    </a>
    <a href="https://pypi.org/project/black">
    <img alt="Code style: black" src="https://img.shields.io/badge/code%20style-black-000000.svg">
    </a>
    <a href="https://results.pre-commit.ci/latest/github/RedHatQE/widgetastic.patternfly5/main">
    <img alt="pre: black" src="https://results.pre-commit.ci/badge/github/RedHatQE/widgetastic.patternfly5/main.svg">
    </a>
</p>

This library offers Widgetastic Widgets for [PatternFly v5](https://www.patternfly.org/), serving as an extended
itteration of [widgetastic.patternfly4](https://github.com/RedHatQE/widgetastic.patternfly4).


### Components:
- [alert](https://www.patternfly.org/components/alert)
- [breadcrumb](https://www.patternfly.org/components/breadcrumb)
- [button](https://www.patternfly.org/components/button)
- [card](https://www.patternfly.org/components/card)
- [chip](https://www.patternfly.org/components/chip)
- [clipboard-copy](https://www.patternfly.org/components/clipboard-copy)
- date and time
  - [calendar-month](https://www.patternfly.org/components/date-and-time/calendar-month)
- [description-list](https://www.patternfly.org/components/description-list)
- [drawer](https://www.patternfly.org/components/drawer)
- [dual-list-selector](https://www.patternfly.org/components/dual-list-selector)
- forms
  - [form-select](https://www.patternfly.org/components/forms/form-select)
  - [radio](https://www.patternfly.org/components/forms/radio)
- menus
  - [dropdown](https://www.patternfly.org/components/menus/dropdown)
  - [menu](https://www.patternfly.org/components/menus/menu)
  - [menu-toggle](https://www.patternfly.org/components/menus/menu-toggle)
  - [options-menu](https://www.patternfly.org/components/menus/options-menu/)
  - [select](https://www.patternfly.org/components/menus/select)
  - [typeahedselect](https://www.patternfly.org/components/menus/select/#typeahead)
- [modal](https://www.patternfly.org/components/modal)
- [navigation](https://www.patternfly.org/components/navigation)
- [pagination](https://www.patternfly.org/components/pagination/)
- [popover](https://www.patternfly.org/components/popover)
- [progress](https://www.patternfly.org/components/progress)
- [slider](https://www.patternfly.org/components/slider)
- [switch](https://www.patternfly.org/components/switch)
- [table](https://www.patternfly.org/components/table)
- [tabs](https://www.patternfly.org/components/tabs)
- [title](https://www.patternfly.org/components/title)


### Charts:
- [bullet-chart](https://www.patternfly.org/charts/bullet-chart)
- [donut-chart](https://www.patternfly.org/charts/donut-chart)
- [legends](https://www.patternfly.org/charts/legends)
- [line-chart](https://www.patternfly.org/charts/line-chart)
- [pie-chart](https://www.patternfly.org/charts/pie-chart)

### Patterns:
- [card-view](https://patternfly-react-main.surge.sh/patterns/card-view)


### Contribution guide

```bash
# clone the repo
git clone https://github.com/RedHatQE/widgetastic.patternfly5.git
cd widgetastic.patternfly5

# create a virtual environment
python3 -m venv .venv_pfy5
source .venv_pfy5/bin/activate

# update pip and its friends
pip install -U pip setuptools wheel

# install the package in editable mode
pip install -e .[dev]
pre-commit install
```

### Testing

The library has selenium tests that are performed against [Patternfly React docs](https://patternfly-react-main.surge.sh).
It's also configured to run the tests every time when a new version of that page is released.

Tests spawn a container from official selenium image - [selenium/standalone-{chrome/firefox}](https://hub.docker.com/u/selenium).
We can check local runs via vnc `http://localhost:7900`

**Note:** Tests use `podman` to manage containers. Please install it before running.

It's possible to run tests in parallel to speed up the execution. Make sure that you have **xdist** python plugin installed.

Use `-n` key to specify a number
of workers:

```bash
BROWSER=firefox pytest -v testing -n 4
```
