Skip to content
This repository was archived by the owner on Dec 24, 2025. It is now read-only.

Commit fbb41fd

Browse files
authored
fix(docs): update (#16)
* initial commit * remove mdformat from pre-commit * update mkdocs watch items | unshow `Event.get_event_field_type` * fix separate_signature in Enums * fixes * lint dependency group
1 parent e4e2ac9 commit fbb41fd

File tree

11 files changed

+289
-90
lines changed

11 files changed

+289
-90
lines changed

.github/workflows/docs.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@ on:
44
push:
55
branches:
66
- main
7+
- dev
78
paths:
89
- 'LICENSE'
910
- 'CHANGELOG.md'
@@ -52,7 +53,7 @@ jobs:
5253
- name: Install dependencies
5354
run: |
5455
uv pip install -e .
55-
uv pip install --group docs
56+
uv pip install --group docs --group lint
5657
5758
- name: Deploy to GitHub Pages
5859
run: uv run mkdocs gh-deploy --force

.gitignore

Lines changed: 132 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,135 @@
1-
*.egg-info/
1+
# Byte-compiled / optimized / DLL files
2+
__pycache__/
3+
*.py[cod]
4+
*$py.class
5+
6+
# C extensions
7+
*.so
8+
9+
# Distribution / packaging
10+
.Python
211
build/
312
develop-eggs/
413
dist/
5-
.DS_store
6-
.venv/
14+
downloads/
15+
eggs/
16+
.eggs/
17+
lib/
18+
lib64/
19+
parts/
20+
sdist/
21+
var/
22+
wheels/
23+
pip-wheel-metadata/
24+
share/python-wheels/
25+
*.egg-info/
26+
.installed.cfg
27+
*.egg
28+
MANIFEST
29+
30+
# PyInstaller
31+
# Usually these files are written by a python script from a template
32+
# before PyInstaller builds the exe, so as to inject date/other infos into it.
33+
*.manifest
34+
*.spec
35+
36+
# Installer logs
37+
pip-log.txt
38+
pip-delete-this-directory.txt
39+
40+
# Unit test / coverage reports
41+
htmlcov/
42+
.tox/
43+
.nox/
44+
.coverage
45+
.coverage.*
46+
.cache
47+
nosetests.xml
48+
coverage.xml
49+
*.cover
50+
*.py,cover
51+
.hypothesis/
52+
.pytest_cache/
53+
54+
# Translations
55+
*.mo
56+
*.pot
57+
58+
# Django stuff:
59+
*.log
60+
local_settings.py
61+
db.sqlite3
62+
db.sqlite3-journal
63+
64+
# Flask stuff:
65+
instance/
66+
.webassets-cache
67+
68+
# Scrapy stuff:
69+
.scrapy
70+
71+
# Sphinx documentation
72+
docs/_build/
73+
74+
# PyBuilder
75+
target/
76+
77+
# Jupyter Notebook
78+
.ipynb_checkpoints
79+
80+
# IPython
81+
profile_default/
82+
ipython_config.py
83+
84+
# pyenv
85+
.python-version
86+
87+
# pipenv
88+
# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
89+
# However, in case of collaboration, if having platform-specific dependencies or dependencies
90+
# having no cross-platform support, pipenv may install dependencies that don't work, or not
91+
# install all needed dependencies.
92+
#Pipfile.lock
93+
uv.lock
94+
95+
# celery beat schedule file
96+
celerybeat-schedule
97+
98+
# SageMath parsed files
99+
*.sage.py
100+
101+
# Environments
102+
.env
103+
.venv
104+
env/
105+
venv/
106+
ENV/
107+
env.bak/
108+
venv.bak/
109+
110+
# Spyder project settings
111+
.spyderproject
112+
.spyproject
113+
114+
# Rope project settings
115+
.ropeproject
116+
117+
# mkdocs documentation
118+
/site
119+
120+
# mypy
121+
.mypy_cache/
122+
.dmypy.json
123+
dmypy.json
124+
125+
# Pyre type checker
126+
.pyre/
127+
128+
# VS Code
129+
.vscode/
130+
131+
# PDM
132+
.pdm.toml
133+
__pypackages__/
134+
135+
.DS_Store

.pre-commit-config.yaml

Lines changed: 17 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,20 @@
11
repos:
2-
- repo: https://github.com/pycqa/isort
3-
rev: 5.13.2
2+
- repo: https://github.com/astral-sh/ruff-pre-commit
3+
rev: v0.12.5
44
hooks:
5-
- id: isort
6-
- repo: https://github.com/ambv/black
7-
rev: 22.12.0
5+
# Run the linter.
6+
- id: ruff
7+
args: [ --fix ]
8+
# Run the formatter.
9+
- id: ruff-format
10+
11+
- repo: https://github.com/pre-commit/pre-commit-hooks
12+
rev: v5.0.0
813
hooks:
9-
- id: black
14+
- id: end-of-file-fixer
15+
- id: trailing-whitespace
16+
17+
- repo: https://github.com/aio-libs/sort-all
18+
rev: v1.3.0
19+
hooks:
20+
- id: sort-all

docs/types/log_level_severity.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1,3 @@
1-
::: flet_webview.types.LogLevelSeverity
1+
::: flet_webview.types.LogLevelSeverity
2+
options:
3+
separate_signature: false

docs/types/request_method.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1,3 @@
1-
::: flet_webview.types.RequestMethod
1+
::: flet_webview.types.RequestMethod
2+
options:
3+
separate_signature: false

mkdocs.yml

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -95,15 +95,20 @@ validation:
9595
unrecognized_links: warn
9696
anchors: warn
9797

98+
# Watch
9899
watch:
99100
- docs
100-
- src
101+
- src/flet_webview
102+
- CHANGELOG.md
103+
- LICENSE
104+
- README.md
101105

102106
# Plugins
103107
plugins:
104108
# - footnotes
105109
- search:
106110
lang: en
111+
- open-in-new-tab
107112
- mike:
108113
alias_type: symlink
109114
- glightbox
@@ -128,21 +133,17 @@ plugins:
128133
show_labels: false
129134
show_if_no_docstring: true
130135
docstring_section_style: spacy
136+
separate_signature: true
131137
inherited_members: true
132138
preload_modules: [ flet ]
133139
filters:
134140
- "!^_" # Exclude private members starting with only one underscore
135-
- "!before_update"
136-
- "!before_event"
137-
- "!clean"
138-
- "!did_mount"
139-
- "!init"
140-
- "!is_isolated"
141-
- "!update"
142-
- "!will_unmount"
141+
- "!get_event_field_type"
143142
extensions:
144143
- griffe_modernized_annotations
144+
- griffe_warnings_deprecated
145145
inventories:
146+
- url: https://docs.flet.dev/objects.inv
146147
- url: https://docs.python.org/3/objects.inv
147148
domains: [ py, std ]
148149
- url: https://typing-extensions.readthedocs.io/en/latest/objects.inv

pyproject.toml

Lines changed: 35 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -20,22 +20,43 @@ Issues = "https://github.com/flet-dev/flet-webview/issues"
2020
"flutter.flet_webview" = ["**/*"]
2121

2222
[dependency-groups]
23+
test = [
24+
"pytest >=7.2.0",
25+
]
26+
lint = [
27+
"ruff >=0.11.7",
28+
]
2329
dev = [
24-
"pre-commit>=4.2.0",
25-
"ruff>=0.11.7",
30+
"pre-commit >=4.2.0",
31+
{ include-group = 'lint' },
32+
{ include-group = 'test' },
33+
]
34+
docs-coverage = [
35+
"docstr-coverage >=2.3.2",
2636
]
2737
docs = [
28-
"mkdocs",
29-
"mkdocs-material",
30-
"mkdocstrings[python]",
31-
"mkdocstrings-python-xref",
32-
"mike",
33-
"markdown>=3.6",
34-
"pymdown-extensions",
35-
"mkdocs-glightbox",
36-
"mkdocs-section-index",
37-
"griffe-modernized-annotations",
38-
"pygments>=2.16",
38+
"mkdocs >=1.6.1",
39+
"mkdocs-material >=9.6.15",
40+
"mkdocstrings-python >=1.16.12",
41+
"mkdocstrings-python-xref >=1.16.3",
42+
"mike >=2.1.3",
43+
"markdown >=3.6",
44+
"pymdown-extensions >=10.16",
45+
"mkdocs-exclude >=1.0.2",
46+
"mkdocs-glightbox >=0.4.0",
47+
"mkdocs-open-in-new-tab >=1.0.8",
48+
"mkdocs-section-index >=0.3.10",
49+
"griffe-modernized-annotations >=1.0.8",
50+
"griffe-warnings-deprecated >=1.1.0",
51+
"pygments >=2.16",
52+
"markdown-exec[ansi] >=1.11.0",
53+
"pydocstyle >=6.3.0",
54+
"linkcheckmd >=1.4.0",
55+
{ include-group = 'docs-coverage' },
56+
]
57+
all = [
58+
{ include-group = 'dev' },
59+
{ include-group = 'docs' },
3960
]
4061

4162
[build-system]
@@ -64,6 +85,7 @@ select = [
6485
"I"
6586
]
6687
preview = true
88+
pydocstyle = { convention = 'google' }
6789

6890
[tool.ruff.format]
6991
quote-style = "double"

src/flet_webview/__init__.py

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,3 +6,12 @@
66
WebViewScrollEvent,
77
)
88
from .webview import WebView
9+
10+
__all__ = [
11+
"LogLevelSeverity",
12+
"RequestMethod",
13+
"WebView",
14+
"WebViewConsoleMessageEvent",
15+
"WebViewJavaScriptEvent",
16+
"WebViewScrollEvent",
17+
]

src/flet_webview/types.py

Lines changed: 17 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,18 @@
11
from dataclasses import dataclass
22
from enum import Enum
3+
from typing import TYPE_CHECKING
34

45
import flet as ft
56

7+
if TYPE_CHECKING:
8+
from .webview import WebView # noqa
9+
610
__all__ = [
7-
"RequestMethod",
811
"LogLevelSeverity",
9-
"WebViewScrollEvent",
12+
"RequestMethod",
1013
"WebViewConsoleMessageEvent",
1114
"WebViewJavaScriptEvent",
15+
"WebViewScrollEvent",
1216
]
1317

1418

@@ -45,16 +49,22 @@ class LogLevelSeverity(Enum):
4549

4650

4751
@dataclass
48-
class WebViewScrollEvent(ft.Event[ft.EventControlType]):
52+
class WebViewScrollEvent(ft.Event["WebView"]):
4953
x: float
50-
"""The value of the horizontal offset with the origin being at the leftmost of the `WebView`."""
54+
"""
55+
The value of the horizontal offset with the origin being at the
56+
leftmost of the `WebView`.
57+
"""
5158

5259
y: float
53-
"""The value of the vertical offset with the origin being at the topmost of the `WebView`."""
60+
"""
61+
The value of the vertical offset with the origin being at the
62+
topmost of the `WebView`.
63+
"""
5464

5565

5666
@dataclass
57-
class WebViewConsoleMessageEvent(ft.Event[ft.EventControlType]):
67+
class WebViewConsoleMessageEvent(ft.Event["WebView"]):
5868
message: str
5969
"""The message written to the console."""
6070

@@ -63,7 +73,7 @@ class WebViewConsoleMessageEvent(ft.Event[ft.EventControlType]):
6373

6474

6575
@dataclass
66-
class WebViewJavaScriptEvent(ft.Event[ft.EventControlType]):
76+
class WebViewJavaScriptEvent(ft.Event["WebView"]):
6777
message: str
6878
"""The message to be displayed in the window."""
6979

0 commit comments

Comments
 (0)