Skip to content

Commit 296e8ff

Browse files
committed
Add output transformer docs
1 parent caa861e commit 296e8ff

File tree

3 files changed

+36
-14
lines changed

3 files changed

+36
-14
lines changed

docs/_quartodoc.yml

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -125,6 +125,22 @@ quartodoc:
125125
- render.data_frame
126126
- render.DataGrid
127127
- render.DataTable
128+
- kind: page
129+
path: OutputRender
130+
flatten: true
131+
summary:
132+
name: "Create output render methods"
133+
desc: ""
134+
contents:
135+
- render.transformer.output_transformer
136+
- render.transformer.OutputTransformer
137+
- render.transformer.TransformerMetadata
138+
- render.transformer.TransformerParams
139+
- render.transformer.OutputRenderer
140+
- render.transformer.is_async_callable
141+
- render.transformer.resolve_value_fn
142+
- render.transformer.ValueFn
143+
- render.transformer.TransformFn
128144
- title: Reactive programming
129145
desc: ""
130146
contents:

shiny/render/transformer/__init__.py

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,24 @@
1-
from ._transformer import (
1+
from ._transformer import ( # noqa: F401
22
TransformerMetadata,
33
TransformerParams,
44
OutputRenderer,
55
OutputTransformer,
6-
ValueFn,
76
output_transformer,
87
is_async_callable,
98
resolve_value_fn,
9+
ValueFn, # pyright: ignore[reportUnusedImport]
10+
ValueFnSync, # pyright: ignore[reportUnusedImport]
11+
ValueFnAsync, # pyright: ignore[reportUnusedImport]
12+
TransformFn, # pyright: ignore[reportUnusedImport]
13+
OutputRendererSync, # pyright: ignore[reportUnusedImport]
14+
OutputRendererAsync, # pyright: ignore[reportUnusedImport]
1015
)
1116

1217
__all__ = (
1318
"TransformerMetadata",
1419
"TransformerParams",
1520
"OutputRenderer",
1621
"OutputTransformer",
17-
"ValueFn",
1822
"output_transformer",
1923
"is_async_callable",
2024
"resolve_value_fn",

shiny/render/transformer/_transformer.py

Lines changed: 13 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -182,7 +182,7 @@ class OutputRenderer(Generic[OT], ABC):
182182
syntax.
183183
184184
The transform function (`transform_fn`) is given `meta` information
185-
(:class:`~shiny.render.tranformer.TranformerMetadata`), the (app-supplied) value
185+
(:class:`~shiny.render.transformer.TranformerMetadata`), the (app-supplied) value
186186
function (`ValueFn[IT]`), and any keyword arguments supplied to the render decorator
187187
(`P`). For consistency, the first two parameters have been (arbitrarily) implemented
188188
as `_meta` and `_fn`.
@@ -283,7 +283,7 @@ async def _run(self) -> OT:
283283
`**kwargs` of type `P`.
284284
285285
Note: `*args` will always be empty as it is an expansion of
286-
:class:`~shiny.render.tranformer.TransformerParams` which does not allow positional arguments.
286+
:class:`~shiny.render.transformer.TransformerParams` which does not allow positional arguments.
287287
`*args` is required to use with `**kwargs` when using
288288
`typing.ParamSpec`.
289289
"""
@@ -309,8 +309,8 @@ class OutputRendererSync(OutputRenderer[OT]):
309309
310310
See Also
311311
--------
312-
* :class:`~shiny.render.tranformer.OutputRenderer`
313-
* :class:`~shiny.render.tranformer.OutputRendererAsync`
312+
* :class:`~shiny.render.transformer.OutputRenderer`
313+
* :class:`~shiny.render.transformer.OutputRendererAsync`
314314
"""
315315

316316
def __init__(
@@ -346,8 +346,8 @@ class OutputRendererAsync(OutputRenderer[OT]):
346346
347347
See Also
348348
--------
349-
* :class:`~shiny.render.tranformer.OutputRenderer`
350-
* :class:`~shiny.render.tranformer.OutputRendererSync`
349+
* :class:`~shiny.render.transformer.OutputRenderer`
350+
* :class:`~shiny.render.transformer.OutputRendererSync`
351351
"""
352352

353353
def __init__(
@@ -488,8 +488,8 @@ class OutputTransformer(Generic[IT, OT, P]):
488488
See Also
489489
--------
490490
* :func:`~shiny.render.transformer.output_transformer`
491-
* :class:`~shiny.render.tranformer.TransformerParams`
492-
* :class:`~shiny.render.tranformer.OutputRenderer`
491+
* :class:`~shiny.render.transformer.TransformerParams`
492+
* :class:`~shiny.render.transformer.OutputRenderer`
493493
"""
494494

495495
def params(
@@ -537,7 +537,8 @@ def output_transformer(
537537
decorator is called without parentheses and another for when it is called with
538538
parentheses where app authors can pass in parameters to the renderer.
539539
540-
## Transform function
540+
Transform function
541+
------------------
541542
542543
The output renderer's transform function (`transform_fn`) is the key building block
543544
for `output_transformer`. It is a package author function that calls the app-defined
@@ -546,8 +547,9 @@ def output_transformer(
546547
547548
The transform function is supplied meta output information, the (app-supplied) value
548549
function, and any keyword arguments supplied to the output tranformer decorator:
550+
549551
* The first parameter to the handler function has the class
550-
:class:`~shiny.render.tranformer.TransformerMetadata` and is typically called
552+
:class:`~shiny.render.transformer.TransformerMetadata` and is typically called
551553
`_meta`. This information gives context the to the handler while trying to
552554
resolve the app-supplied value function (typically called `_fn`).
553555
* The second parameter is the app-defined output value function (e.g. `_fn`). It's
@@ -594,7 +596,7 @@ def output_transformer(
594596
Returns
595597
-------
596598
:
597-
A :class:`~shiny.render.tranformer.OutputTransformer` object that can be used to
599+
An :class:`~shiny.render.transformer.OutputTransformer` object that can be used to
598600
define two overloads for your renderer function. One overload is for when the
599601
renderer is called without parentheses and the other is for when the renderer is
600602
called with parentheses.

0 commit comments

Comments
 (0)