instaui 0.1.4__py3-none-any.whl → 0.1.6__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- instaui/arco/__init__.py +191 -0
- instaui/arco/_settings.py +25 -0
- instaui/arco/_use_tools/locale.py +50 -0
- instaui/arco/component_types.py +1019 -0
- instaui/arco/components/_utils.py +22 -0
- instaui/arco/components/affix.py +29 -0
- instaui/arco/components/alert.py +42 -0
- instaui/arco/components/anchor.py +42 -0
- instaui/arco/components/auto_complete.py +96 -0
- instaui/arco/components/avatar.py +55 -0
- instaui/arco/components/back_top.py +14 -0
- instaui/arco/components/badge.py +14 -0
- instaui/arco/components/breadcrumb.py +14 -0
- instaui/arco/components/button.py +43 -0
- instaui/arco/components/calendar.py +47 -0
- instaui/arco/components/card.py +14 -0
- instaui/arco/components/carousel.py +33 -0
- instaui/arco/components/cascader.py +111 -0
- instaui/arco/components/checkbox.py +32 -0
- instaui/arco/components/collapse.py +31 -0
- instaui/arco/components/color_picker.py +45 -0
- instaui/arco/components/comment.py +14 -0
- instaui/arco/components/config_provider.py +13 -0
- instaui/arco/components/date_picker.py +111 -0
- instaui/arco/components/descriptions.py +14 -0
- instaui/arco/components/divider.py +13 -0
- instaui/arco/components/drawer.py +98 -0
- instaui/arco/components/dropdown.py +45 -0
- instaui/arco/components/empty.py +14 -0
- instaui/arco/components/form.py +55 -0
- instaui/arco/components/icon.py +17 -0
- instaui/arco/components/image.py +33 -0
- instaui/arco/components/input.py +102 -0
- instaui/arco/components/input_number.py +97 -0
- instaui/arco/components/input_password.py +38 -0
- instaui/arco/components/input_search.py +37 -0
- instaui/arco/components/input_tag.py +110 -0
- instaui/arco/components/layout.py +13 -0
- instaui/arco/components/layout_content.py +6 -0
- instaui/arco/components/layout_footer.py +6 -0
- instaui/arco/components/layout_header.py +6 -0
- instaui/arco/components/layout_sider.py +53 -0
- instaui/arco/components/link.py +36 -0
- instaui/arco/components/list.py +68 -0
- instaui/arco/components/mention.py +97 -0
- instaui/arco/components/menu.py +88 -0
- instaui/arco/components/modal.py +97 -0
- instaui/arco/components/overflow_list.py +29 -0
- instaui/arco/components/page_header.py +29 -0
- instaui/arco/components/pagination.py +45 -0
- instaui/arco/components/pop_confirm.py +58 -0
- instaui/arco/components/popover.py +32 -0
- instaui/arco/components/progress.py +14 -0
- instaui/arco/components/radio.py +40 -0
- instaui/arco/components/radio_group.py +42 -0
- instaui/arco/components/rate.py +45 -0
- instaui/arco/components/resize_box.py +62 -0
- instaui/arco/components/result.py +14 -0
- instaui/arco/components/select.py +179 -0
- instaui/arco/components/skeleton.py +14 -0
- instaui/arco/components/slider.py +38 -0
- instaui/arco/components/space.py +14 -0
- instaui/arco/components/spin.py +14 -0
- instaui/arco/components/split.py +76 -0
- instaui/arco/components/statistic.py +14 -0
- instaui/arco/components/steps.py +32 -0
- instaui/arco/components/switch.py +57 -0
- instaui/arco/components/tab_pane.py +12 -0
- instaui/arco/components/table.py +276 -0
- instaui/arco/components/tabs.py +101 -0
- instaui/arco/components/tag.py +42 -0
- instaui/arco/components/textarea.py +84 -0
- instaui/arco/components/time_picker.py +76 -0
- instaui/arco/components/timeline.py +14 -0
- instaui/arco/components/tooltip.py +29 -0
- instaui/arco/components/transfer.py +58 -0
- instaui/arco/components/tree.py +120 -0
- instaui/arco/components/tree_select.py +86 -0
- instaui/arco/components/trigger.py +58 -0
- instaui/arco/components/typography.py +142 -0
- instaui/arco/components/upload.py +71 -0
- instaui/arco/components/verification_code.py +58 -0
- instaui/arco/components/watermark.py +14 -0
- instaui/arco/locales/__init__.py +4 -0
- instaui/arco/locales/_index.py +31 -0
- instaui/arco/locales/en_us.py +227 -0
- instaui/arco/locales/zh_cn.py +224 -0
- instaui/arco/setup.py +36 -0
- instaui/arco/static/instaui-arco.css +1 -0
- instaui/arco/static/instaui-arco.js +55771 -0
- instaui/arco/types.py +24 -0
- instaui/components/column.py +10 -2
- instaui/components/echarts/echarts.js +128 -0
- instaui/components/echarts/echarts.py +194 -0
- instaui/components/echarts/static/echarts.esm.min.js +45 -0
- instaui/components/element.py +50 -6
- instaui/components/grid.py +81 -0
- instaui/components/html/__init__.py +30 -19
- instaui/components/html/_preset.py +4 -0
- instaui/components/html/heading.py +51 -0
- instaui/components/html/range.py +3 -0
- instaui/components/html/select.py +13 -31
- instaui/components/html/table.py +36 -0
- instaui/components/markdown/static/github-markdown.css +1 -1
- instaui/components/markdown/static/marked.esm.js +0 -1
- instaui/components/row.py +8 -7
- instaui/components/shiki_code/shiki_code.js +126 -0
- instaui/components/shiki_code/shiki_code.py +99 -0
- instaui/components/shiki_code/static/langs/css.mjs +5 -0
- instaui/components/shiki_code/static/langs/markdown.mjs +5 -0
- instaui/components/shiki_code/static/langs/python.mjs +5 -0
- instaui/components/shiki_code/static/langs/shell.mjs +2 -0
- instaui/components/shiki_code/static/langs/shellscript.mjs +5 -0
- instaui/components/shiki_code/static/shiki-core.js +5784 -0
- instaui/components/shiki_code/static/shiki-style.css +179 -0
- instaui/components/shiki_code/static/shiki-transformers.js +461 -0
- instaui/components/shiki_code/static/themes/vitesse-dark.mjs +2 -0
- instaui/components/shiki_code/static/themes/vitesse-light.mjs +2 -0
- instaui/components/value_element.py +7 -3
- instaui/consts.py +2 -1
- instaui/event/js_event.py +1 -0
- instaui/event/web_event.py +6 -7
- instaui/experimental/link_sql/__init__.py +3 -0
- instaui/experimental/link_sql/_base.py +23 -0
- instaui/experimental/link_sql/_duckdb.py +221 -0
- instaui/experimental/link_sql/_types.py +15 -0
- instaui/experimental/link_sql/data_source.js +50 -0
- instaui/fastapi_server/debug_mode_router.py +1 -1
- instaui/fastapi_server/server.py +4 -12
- instaui/handlers/event_handler.py +3 -1
- instaui/handlers/watch_handler.py +4 -0
- instaui/html_tools.py +41 -4
- instaui/runtime/_app.py +37 -3
- instaui/runtime/_link_manager.py +89 -0
- instaui/runtime/resource.py +19 -9
- instaui/runtime/scope.py +28 -7
- instaui/shadcn_classless/_index.py +42 -0
- instaui/shadcn_classless/static/shadcn-classless.css +403 -0
- instaui/static/insta-ui.css +1 -1
- instaui/static/insta-ui.esm-browser.prod.js +3663 -3658
- instaui/static/insta-ui.js.map +1 -1
- instaui/static/instaui-tools-browser.js +511 -0
- instaui/static/templates/debug/sse.html +1 -1
- instaui/static/templates/webview.html +78 -0
- instaui/tailwind/__init__.py +6 -0
- instaui/tailwind/_index.py +24 -0
- instaui/{static/tailwindcss.min.js → tailwind/static/tailwindcss-v3.min.js} +62 -62
- instaui/tailwind/static/tailwindcss-v4.min.js +8 -0
- instaui/template/_utils.py +23 -0
- instaui/template/webview_template.py +50 -0
- instaui/ui/__init__.py +8 -2
- instaui/ui/__init__.pyi +7 -1
- instaui/ui_functions/ui_page.py +1 -1
- instaui/vars/data.py +7 -7
- instaui/vars/element_ref.py +2 -4
- instaui/vars/event_context.py +4 -0
- instaui/vars/js_computed.py +6 -8
- instaui/vars/ref.py +6 -6
- instaui/vars/vue_computed.py +6 -7
- instaui/vars/web_computed.py +31 -32
- instaui/watch/vue_watch.py +23 -7
- instaui/watch/web_watch.py +5 -6
- instaui/webview/__init__.py +1 -0
- instaui/webview/_utils.py +8 -0
- instaui/webview/api.py +72 -0
- instaui/webview/func.py +114 -0
- instaui/webview/index.py +162 -0
- instaui/webview/resource.py +172 -0
- instaui/zero/func.py +19 -12
- instaui/zero/scope.py +29 -28
- {instaui-0.1.4.dist-info → instaui-0.1.6.dist-info}/METADATA +6 -2
- instaui-0.1.6.dist-info/RECORD +286 -0
- instaui/components/highlight_code/code.js +0 -63
- instaui/components/highlight_code/code.py +0 -117
- instaui/components/highlight_code/static/core.min.js +0 -307
- instaui/components/highlight_code/static/languages/css.min.js +0 -31
- instaui/components/highlight_code/static/languages/javascript.min.js +0 -81
- instaui/components/highlight_code/static/languages/json.min.js +0 -8
- instaui/components/highlight_code/static/languages/python-repl.min.js +0 -5
- instaui/components/highlight_code/static/languages/python.min.js +0 -42
- instaui/components/highlight_code/static/languages/shell.min.js +0 -5
- instaui/components/highlight_code/static/styles/default.min.css +0 -9
- instaui/components/highlight_code/static/styles/github-dark-dimmed.min.css +0 -9
- instaui/components/highlight_code/static/styles/github-dark.min.css +0 -10
- instaui/components/highlight_code/static/styles/github.min.css +0 -10
- instaui/daisyui/__init__.py +0 -20
- instaui/daisyui/_index.py +0 -15
- instaui/daisyui/button.py +0 -38
- instaui/daisyui/checkbox.py +0 -17
- instaui/daisyui/static/daisyui.css +0 -1
- instaui/daisyui/static/themes.css +0 -1
- instaui/handlers/computed_handler.py +0 -42
- instaui/handlers/config_handler.py +0 -13
- instaui/ui/__build_init.py +0 -73
- instaui/vars/_utils.py +0 -12
- instaui-0.1.4.dist-info/RECORD +0 -179
- {instaui-0.1.4.dist-info → instaui-0.1.6.dist-info}/LICENSE +0 -0
- {instaui-0.1.4.dist-info → instaui-0.1.6.dist-info}/WHEEL +0 -0
instaui/components/element.py
CHANGED
@@ -7,6 +7,7 @@ from pathlib import Path
|
|
7
7
|
import re
|
8
8
|
from typing import (
|
9
9
|
Any,
|
10
|
+
Callable,
|
10
11
|
Dict,
|
11
12
|
Iterable,
|
12
13
|
List,
|
@@ -358,17 +359,58 @@ class Element(Component):
|
|
358
359
|
*,
|
359
360
|
css: Optional[Iterable[Path]] = None,
|
360
361
|
externals: Optional[Dict[str, Path]] = None,
|
362
|
+
replace: bool = False,
|
361
363
|
):
|
362
364
|
if not self.dependency:
|
363
365
|
return
|
364
366
|
|
367
|
+
app = get_app_slot()
|
368
|
+
dep = self.dependency.copy()
|
369
|
+
if replace:
|
370
|
+
dep.css.clear()
|
371
|
+
dep.externals.clear()
|
372
|
+
|
365
373
|
if css:
|
366
|
-
|
374
|
+
dep.css.update(css)
|
367
375
|
|
368
376
|
if externals:
|
369
|
-
|
377
|
+
dep.externals.update(externals)
|
378
|
+
|
379
|
+
app.add_temp_component_dependency(dep)
|
380
|
+
|
381
|
+
def use(self, *use_fns: Callable[[Self], None]) -> Self:
|
382
|
+
"""Use functions to the component object.
|
370
383
|
|
371
|
-
|
384
|
+
Args:
|
385
|
+
use_fns (Callable[[Self], None]): The list of use functions.
|
386
|
+
|
387
|
+
Examples:
|
388
|
+
.. code-block:: python
|
389
|
+
def use_red_color(element: html.paragraph):
|
390
|
+
element.style('color: red')
|
391
|
+
|
392
|
+
html.paragraph('Hello').use(use_red_color)
|
393
|
+
"""
|
394
|
+
|
395
|
+
for fn in use_fns:
|
396
|
+
fn(self)
|
397
|
+
return self
|
398
|
+
|
399
|
+
@classmethod
|
400
|
+
def use_init(cls, init_fn: Callable[[type[Self]], Self]) -> Self:
|
401
|
+
"""Use this method to initialize the component.
|
402
|
+
|
403
|
+
Args:
|
404
|
+
init_fn (Callable[[type[Self]], Self]): The initialization function.
|
405
|
+
|
406
|
+
Examples:
|
407
|
+
.. code-block:: python
|
408
|
+
def fack_init(cls: type[html.table]) -> html.table:
|
409
|
+
return cls(columns=['name', 'age'],rows = [{'name': 'Alice', 'age': 25}, {'name': 'Bob', 'age': 30}])
|
410
|
+
|
411
|
+
ui.table.use_init(fack_init)
|
412
|
+
"""
|
413
|
+
return init_fn(cls)
|
372
414
|
|
373
415
|
def _to_json_dict(self):
|
374
416
|
data = super()._to_json_dict()
|
@@ -420,12 +462,14 @@ class Element(Component):
|
|
420
462
|
data["dir"] = list(self._directives.keys())
|
421
463
|
|
422
464
|
if self.dependency:
|
423
|
-
get_app_slot()
|
465
|
+
app_slot = get_app_slot()
|
466
|
+
tag_name = self.dependency.tag_name
|
467
|
+
app_slot.use_component_dependency(
|
468
|
+
app_slot.get_temp_component_dependency(tag_name, self.dependency)
|
469
|
+
)
|
424
470
|
|
425
471
|
if self._element_ref:
|
426
472
|
scope = get_current_scope()
|
427
|
-
id = scope.generate_element_ref_id()
|
428
|
-
self._element_ref._set_id(id)
|
429
473
|
data["eRef"] = self._element_ref._to_element_config()
|
430
474
|
scope.register_element_ref(self._element_ref)
|
431
475
|
|
instaui/components/grid.py
CHANGED
@@ -16,9 +16,50 @@ _T = TypeVar("_T")
|
|
16
16
|
class Grid(Element):
|
17
17
|
def __init__(
|
18
18
|
self,
|
19
|
+
*,
|
19
20
|
rows: Optional[TMaybeRef[Union[int, str]]] = None,
|
20
21
|
columns: Optional[TMaybeRef[Union[int, str]]] = None,
|
22
|
+
template: Optional[TMaybeRef[str]] = None,
|
21
23
|
):
|
24
|
+
'''Grid component
|
25
|
+
|
26
|
+
Args:
|
27
|
+
rows (Optional[TMaybeRef[Union[int, str]]], optional): Number of rows or template for rows. Defaults to None.
|
28
|
+
columns (Optional[TMaybeRef[Union[int, str]]], optional): Number of columns or template for columns. Defaults to None.
|
29
|
+
template (Optional[TMaybeRef[str]], optional): Template for grid. Defaults to None.
|
30
|
+
|
31
|
+
# Example:
|
32
|
+
columns example:
|
33
|
+
.. code-block:: python
|
34
|
+
border = "border-2 border-gray-200"
|
35
|
+
|
36
|
+
with ui.grid(columns=2).classes("h-[200px]").classes(border) as g:
|
37
|
+
|
38
|
+
# a in the first row and first column
|
39
|
+
html.paragraph("a value").classes(border)
|
40
|
+
# b in the first row and second column
|
41
|
+
html.paragraph("b value").classes(border)
|
42
|
+
|
43
|
+
# c in the second row and span over 2 columns
|
44
|
+
html.paragraph("c value").use(
|
45
|
+
g.mark_area_position(column_span=2)
|
46
|
+
).classes(border)
|
47
|
+
|
48
|
+
template areas example:
|
49
|
+
.. code-block:: python
|
50
|
+
border = "border-2 border-gray-200"
|
51
|
+
|
52
|
+
template = r"""
|
53
|
+
"a b c" 1fr
|
54
|
+
"a b ." 2fr / 1fr 1fr 2fr
|
55
|
+
"""
|
56
|
+
|
57
|
+
with ui.grid(template=template).classes("h-[200px]").classes(border) as g:
|
58
|
+
html.paragraph("a value").use(g.mark_area("a")).classes(border)
|
59
|
+
html.paragraph("b value").use(g.mark_area("b")).classes(border)
|
60
|
+
html.paragraph("c value").use(g.mark_area("c")).classes(border)
|
61
|
+
'''
|
62
|
+
|
22
63
|
super().__init__("div")
|
23
64
|
self.style("display: grid;")
|
24
65
|
|
@@ -40,6 +81,46 @@ class Grid(Element):
|
|
40
81
|
|
41
82
|
self.style({"grid-template-columns": columns})
|
42
83
|
|
84
|
+
if template is not None:
|
85
|
+
self.style({"grid-template": template})
|
86
|
+
|
87
|
+
def mark_area(self, area: TMaybeRef[str]):
|
88
|
+
"""Marks an area in the grid
|
89
|
+
|
90
|
+
Args:
|
91
|
+
area (TMaybeRef[str]): Area name
|
92
|
+
|
93
|
+
"""
|
94
|
+
|
95
|
+
def use_fn(element: Element):
|
96
|
+
element.style({"grid-area": area})
|
97
|
+
|
98
|
+
return use_fn
|
99
|
+
|
100
|
+
def mark_area_position(
|
101
|
+
self,
|
102
|
+
*,
|
103
|
+
row: Optional[int] = None,
|
104
|
+
column: Optional[int] = None,
|
105
|
+
row_span: Optional[int] = None,
|
106
|
+
column_span: Optional[int] = None,
|
107
|
+
):
|
108
|
+
"""Marks an area in the grid with position
|
109
|
+
|
110
|
+
Args:
|
111
|
+
row (Optional[int], optional): Start position of row, 1-based. Defaults to None.
|
112
|
+
column (Optional[int], optional): Start position of column, 1-based. Defaults to None.
|
113
|
+
row_span (Optional[int], optional): The span value at the end of the row. Defaults to None.
|
114
|
+
column_span (Optional[int], optional): The span value at the end of the column. Defaults to None.
|
115
|
+
"""
|
116
|
+
real_row = "auto" if row is None else row
|
117
|
+
real_column = "auto" if column is None else column
|
118
|
+
real_row_span = "auto" if row_span is None else f"span {row_span}"
|
119
|
+
real_column_span = "auto" if column_span is None else f"span {column_span}"
|
120
|
+
|
121
|
+
area = f"{real_row} / {real_column} / {real_row_span} / {real_column_span}"
|
122
|
+
return self.mark_area(area)
|
123
|
+
|
43
124
|
@classmethod
|
44
125
|
def auto_columns(
|
45
126
|
cls,
|
@@ -1,22 +1,3 @@
|
|
1
|
-
from .span import Span as span
|
2
|
-
from .label import Label as label
|
3
|
-
from .paragraph import Paragraph as paragraph
|
4
|
-
from .input import Input as input
|
5
|
-
from .number import Number as number
|
6
|
-
from .button import Button as button
|
7
|
-
from .checkbox import Checkbox as checkbox
|
8
|
-
from .form import Form as form
|
9
|
-
from .select import Select as select
|
10
|
-
from .ul import Ul as ul
|
11
|
-
from .li import Li as li
|
12
|
-
from .div import Div as div
|
13
|
-
from .range import Range as range
|
14
|
-
from .date import Date as date
|
15
|
-
from .link import Link as link
|
16
|
-
from .textarea import Textarea as textarea
|
17
|
-
|
18
|
-
option = select.Option
|
19
|
-
|
20
1
|
__all__ = [
|
21
2
|
"span",
|
22
3
|
"label",
|
@@ -35,4 +16,34 @@ __all__ = [
|
|
35
16
|
"date",
|
36
17
|
"link",
|
37
18
|
"textarea",
|
19
|
+
"table",
|
20
|
+
"h1",
|
21
|
+
"h2",
|
22
|
+
"h3",
|
23
|
+
"h4",
|
24
|
+
"h5",
|
25
|
+
"h6",
|
38
26
|
]
|
27
|
+
|
28
|
+
from .span import Span as span
|
29
|
+
from .label import Label as label
|
30
|
+
from .paragraph import Paragraph as paragraph
|
31
|
+
from .input import Input as input
|
32
|
+
from .number import Number as number
|
33
|
+
from .button import Button as button
|
34
|
+
from .checkbox import Checkbox as checkbox
|
35
|
+
from .form import Form as form
|
36
|
+
from .select import Select as select
|
37
|
+
from .ul import Ul as ul
|
38
|
+
from .li import Li as li
|
39
|
+
from .div import Div as div
|
40
|
+
from .range import Range as range
|
41
|
+
from .date import Date as date
|
42
|
+
from .link import Link as link
|
43
|
+
from .textarea import Textarea as textarea
|
44
|
+
from .table import Table as table
|
45
|
+
from .heading import H1 as h1, H2 as h2, H3 as h3, H4 as h4, H5 as h5, H6 as h6
|
46
|
+
|
47
|
+
option = select.Option
|
48
|
+
|
49
|
+
from . import _preset # noqa: E402, F401
|
@@ -0,0 +1,51 @@
|
|
1
|
+
from __future__ import annotations
|
2
|
+
from typing import TYPE_CHECKING, Any, Literal, Union
|
3
|
+
from instaui.components.element import Element
|
4
|
+
|
5
|
+
if TYPE_CHECKING:
|
6
|
+
import instaui.vars as ui_vars
|
7
|
+
|
8
|
+
|
9
|
+
class Heading(Element):
|
10
|
+
def __init__(
|
11
|
+
self,
|
12
|
+
text: Union[str, ui_vars.TMaybeRef[Any]],
|
13
|
+
*,
|
14
|
+
level: Literal[1, 2, 3, 4, 5, 6] = 1,
|
15
|
+
):
|
16
|
+
super().__init__(f"h{level}")
|
17
|
+
self.props(
|
18
|
+
{
|
19
|
+
"innerText": text,
|
20
|
+
}
|
21
|
+
)
|
22
|
+
|
23
|
+
|
24
|
+
class H1(Heading):
|
25
|
+
def __init__(self, text: Union[str, ui_vars.TMaybeRef[Any]]):
|
26
|
+
super().__init__(text, level=1)
|
27
|
+
|
28
|
+
|
29
|
+
class H2(Heading):
|
30
|
+
def __init__(self, text: Union[str, ui_vars.TMaybeRef[Any]]):
|
31
|
+
super().__init__(text, level=2)
|
32
|
+
|
33
|
+
|
34
|
+
class H3(Heading):
|
35
|
+
def __init__(self, text: Union[str, ui_vars.TMaybeRef[Any]]):
|
36
|
+
super().__init__(text, level=3)
|
37
|
+
|
38
|
+
|
39
|
+
class H4(Heading):
|
40
|
+
def __init__(self, text: Union[str, ui_vars.TMaybeRef[Any]]):
|
41
|
+
super().__init__(text, level=4)
|
42
|
+
|
43
|
+
|
44
|
+
class H5(Heading):
|
45
|
+
def __init__(self, text: Union[str, ui_vars.TMaybeRef[Any]]):
|
46
|
+
super().__init__(text, level=5)
|
47
|
+
|
48
|
+
|
49
|
+
class H6(Heading):
|
50
|
+
def __init__(self, text: Union[str, ui_vars.TMaybeRef[Any]]):
|
51
|
+
super().__init__(text, level=6)
|
instaui/components/html/range.py
CHANGED
@@ -17,6 +17,7 @@ class Range(InputEventMixin, ValueElement[_T_value]):
|
|
17
17
|
*,
|
18
18
|
min: Union[_T_value, TMaybeRef[_T_value], None] = None,
|
19
19
|
max: Union[_T_value, TMaybeRef[_T_value], None] = None,
|
20
|
+
step: Union[_T_value, TMaybeRef[_T_value], None] = None,
|
20
21
|
):
|
21
22
|
super().__init__("input", value, is_html_component=True)
|
22
23
|
self.props({"type": "range"})
|
@@ -25,6 +26,8 @@ class Range(InputEventMixin, ValueElement[_T_value]):
|
|
25
26
|
self.props({"min": min})
|
26
27
|
if max is not None:
|
27
28
|
self.props({"max": max})
|
29
|
+
if step is not None:
|
30
|
+
self.props({"step": step})
|
28
31
|
|
29
32
|
def vmodel(
|
30
33
|
self,
|
@@ -1,71 +1,53 @@
|
|
1
1
|
from __future__ import annotations
|
2
2
|
from typing import (
|
3
3
|
TYPE_CHECKING,
|
4
|
-
Any,
|
5
4
|
Callable,
|
6
5
|
Dict,
|
7
6
|
List,
|
8
|
-
Literal,
|
9
7
|
Optional,
|
10
8
|
Union,
|
11
9
|
overload,
|
12
10
|
)
|
13
11
|
from typing_extensions import Self
|
14
|
-
|
15
|
-
from instaui.vars import Ref
|
16
12
|
from instaui.components.value_element import ValueElement
|
17
13
|
from instaui.components.element import Element
|
14
|
+
from instaui.event.event_mixin import EventMixin
|
18
15
|
from instaui.vars.types import TMaybeRef
|
19
16
|
from instaui.components.vfor import VFor
|
20
17
|
|
21
|
-
if TYPE_CHECKING:
|
22
|
-
import instaui.vars as ui_vars
|
23
|
-
|
24
|
-
|
25
18
|
_T_Select_Value = Union[List[str], str]
|
26
19
|
|
27
20
|
|
28
21
|
class Select(ValueElement[Union[List[str], str]]):
|
29
22
|
def __init__(
|
30
23
|
self,
|
31
|
-
value: Union[_T_Select_Value,
|
24
|
+
value: Union[_T_Select_Value, TMaybeRef[_T_Select_Value], None] = None,
|
32
25
|
*,
|
33
|
-
model_value: Union[str,
|
26
|
+
model_value: Union[str, TMaybeRef[str], None] = None,
|
34
27
|
):
|
35
28
|
super().__init__("select", value, is_html_component=True)
|
36
29
|
|
37
30
|
if model_value is not None:
|
38
31
|
self.props({"value": model_value})
|
39
32
|
|
40
|
-
@overload
|
41
|
-
def on_change(self, handler: Callable, *, key: Optional[str] = None) -> Self: ...
|
42
|
-
|
43
|
-
@overload
|
44
33
|
def on_change(
|
45
34
|
self,
|
46
|
-
handler:
|
35
|
+
handler: EventMixin,
|
47
36
|
*,
|
48
|
-
|
49
|
-
key: Optional[str] = None,
|
50
|
-
) -> Self: ...
|
51
|
-
|
52
|
-
def on_change(
|
53
|
-
self,
|
54
|
-
handler: Union[Callable, str],
|
55
|
-
*,
|
56
|
-
bindings: Optional[Dict] = None,
|
57
|
-
key: Optional[str] = None,
|
37
|
+
extends: Optional[List] = None,
|
58
38
|
):
|
59
|
-
self.on("change", handler
|
39
|
+
self.on("change", handler)
|
60
40
|
return self
|
61
41
|
|
62
42
|
@classmethod
|
63
43
|
def from_list(
|
64
44
|
cls,
|
65
45
|
options: TMaybeRef[List],
|
66
|
-
value: Union[_T_Select_Value,
|
46
|
+
value: Union[_T_Select_Value, TMaybeRef[_T_Select_Value], None] = None,
|
47
|
+
*,
|
48
|
+
model_value: Union[str, TMaybeRef[str], None] = None,
|
67
49
|
) -> Select:
|
68
|
-
with cls(value) as select:
|
50
|
+
with cls(value, model_value=model_value) as select:
|
69
51
|
with VFor(options) as item:
|
70
52
|
Select.Option(item) # type: ignore
|
71
53
|
|
@@ -74,9 +56,9 @@ class Select(ValueElement[Union[List[str], str]]):
|
|
74
56
|
class Option(Element):
|
75
57
|
def __init__(
|
76
58
|
self,
|
77
|
-
text: Optional[
|
78
|
-
value: Optional[
|
79
|
-
disabled: Optional[
|
59
|
+
text: Optional[TMaybeRef[str]] = None,
|
60
|
+
value: Optional[TMaybeRef[str]] = None,
|
61
|
+
disabled: Optional[TMaybeRef[bool]] = None,
|
80
62
|
):
|
81
63
|
props = {
|
82
64
|
key: value
|
@@ -0,0 +1,36 @@
|
|
1
|
+
from __future__ import annotations
|
2
|
+
from typing import TYPE_CHECKING, Any, List, Optional, Union
|
3
|
+
from instaui.components.element import Element
|
4
|
+
from instaui.components.content import Content
|
5
|
+
from instaui.components.vfor import VFor
|
6
|
+
|
7
|
+
if TYPE_CHECKING:
|
8
|
+
import instaui.vars as ui_vars
|
9
|
+
|
10
|
+
|
11
|
+
class Table(Element):
|
12
|
+
def __init__(
|
13
|
+
self,
|
14
|
+
columns: Union[List[str], ui_vars.TMaybeRef[List[str]], None] = None,
|
15
|
+
rows: Union[List[List[Any]], ui_vars.TMaybeRef[List[List[Any]]], None] = None,
|
16
|
+
):
|
17
|
+
"""Create a table element.
|
18
|
+
|
19
|
+
Args:
|
20
|
+
columns (Union[List[str], ui_vars.TMaybeRef[List[str]], None], optional): A list of column headers or a reactive reference to such a list. Defaults to None.
|
21
|
+
rows (Union[List[List[Any]], ui_vars.TMaybeRef[List[List[Any]]], None], optional): A list of row data, where each row is a list of cell values, or a reactive reference to such a list. Defaults to None.
|
22
|
+
"""
|
23
|
+
super().__init__("table")
|
24
|
+
|
25
|
+
with self:
|
26
|
+
with Element("thead"), Element("tr"):
|
27
|
+
with VFor(columns) as col: # type: ignore
|
28
|
+
with Element("th"):
|
29
|
+
Content(col)
|
30
|
+
|
31
|
+
with Element("tbody"):
|
32
|
+
with VFor(rows) as row: # type: ignore
|
33
|
+
with Element("tr"):
|
34
|
+
with VFor(row) as cell: # type: ignore
|
35
|
+
with Element("td"):
|
36
|
+
Content(cell)
|
@@ -9,4 +9,4 @@ The above copyright notice and this permission notice shall be included in all c
|
|
9
9
|
|
10
10
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
11
11
|
*/
|
12
|
-
.github-md-dark.markdown-body{color-scheme:dark;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;margin:0;color:#f0f6fc;background-color:#0d1117;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans",Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";font-size:16px;line-height:1.5;word-wrap:break-word}.github-md-dark.markdown-body .octicon{display:inline-block;fill:currentColor;vertical-align:text-bottom}.github-md-dark.markdown-body h1:hover .anchor .octicon-link:before,.github-md-dark.markdown-body h2:hover .anchor .octicon-link:before,.github-md-dark.markdown-body h3:hover .anchor .octicon-link:before,.github-md-dark.markdown-body h4:hover .anchor .octicon-link:before,.github-md-dark.markdown-body h5:hover .anchor .octicon-link:before,.github-md-dark.markdown-body h6:hover .anchor .octicon-link:before{width:16px;height:16px;content:' ';display:inline-block;background-color:currentColor;-webkit-mask-image:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' version='1.1' aria-hidden='true'><path fill-rule='evenodd' d='M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z'></path></svg>");mask-image:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' version='1.1' aria-hidden='true'><path fill-rule='evenodd' d='M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z'></path></svg>")}.github-md-dark.markdown-body details,.github-md-dark.markdown-body figcaption,.github-md-dark.markdown-body figure{display:block}.github-md-dark.markdown-body summary{display:list-item}.github-md-dark.markdown-body [hidden]{display:none!important}.github-md-dark.markdown-body a{background-color:transparent;color:#4493f8;text-decoration:none}.github-md-dark.markdown-body abbr[title]{border-bottom:none;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.github-md-dark.markdown-body b,.github-md-dark.markdown-body strong{font-weight:600}.github-md-dark.markdown-body dfn{font-style:italic}.github-md-dark.markdown-body h1{margin:.67em 0;font-weight:600;padding-bottom:.3em;font-size:2em;border-bottom:1px solid #3d444db3}.github-md-dark.markdown-body mark{background-color:#bb800926;color:#f0f6fc}.github-md-dark.markdown-body small{font-size:90%}.github-md-dark.markdown-body sub,.github-md-dark.markdown-body sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}.github-md-dark.markdown-body sub{bottom:-.25em}.github-md-dark.markdown-body sup{top:-.5em}.github-md-dark.markdown-body img{border-style:none;max-width:100%;box-sizing:content-box}.github-md-dark.markdown-body code,.github-md-dark.markdown-body kbd,.github-md-dark.markdown-body pre,.github-md-dark.markdown-body samp{font-family:monospace;font-size:1em}.github-md-dark.markdown-body figure{margin:1em 2.5rem}.github-md-dark.markdown-body hr{box-sizing:content-box;overflow:hidden;background:0 0;border-bottom:1px solid #3d444db3;height:.25em;padding:0;margin:1.5rem 0;background-color:#3d444d;border:0}.github-md-dark.markdown-body input{font:inherit;margin:0;overflow:visible;font-family:inherit;font-size:inherit;line-height:inherit}.github-md-dark.markdown-body [type=button],.github-md-dark.markdown-body [type=reset],.github-md-dark.markdown-body [type=submit]{-webkit-appearance:button;appearance:button}.github-md-dark.markdown-body [type=checkbox],.github-md-dark.markdown-body [type=radio]{box-sizing:border-box;padding:0}.github-md-dark.markdown-body [type=number]::-webkit-inner-spin-button,.github-md-dark.markdown-body [type=number]::-webkit-outer-spin-button{height:auto}.github-md-dark.markdown-body [type=search]::-webkit-search-cancel-button,.github-md-dark.markdown-body [type=search]::-webkit-search-decoration{-webkit-appearance:none;appearance:none}.github-md-dark.markdown-body ::-webkit-input-placeholder{color:inherit;opacity:.54}.github-md-dark.markdown-body ::-webkit-file-upload-button{-webkit-appearance:button;appearance:button;font:inherit}.github-md-dark.markdown-body a:hover{text-decoration:underline}.github-md-dark.markdown-body ::placeholder{color:#9198a1;opacity:1}.github-md-dark.markdown-body hr::before{display:table;content:""}.github-md-dark.markdown-body hr::after{display:table;clear:both;content:""}.github-md-dark.markdown-body table{border-spacing:0;border-collapse:collapse;display:block;width:max-content;max-width:100%;overflow:auto;font-variant:tabular-nums}.github-md-dark.markdown-body td,.github-md-dark.markdown-body th{padding:0}.github-md-dark.markdown-body details summary{cursor:pointer}.github-md-dark.markdown-body [role=button]:focus,.github-md-dark.markdown-body a:focus,.github-md-dark.markdown-body input[type=checkbox]:focus,.github-md-dark.markdown-body input[type=radio]:focus{outline:2px solid #1f6feb;outline-offset:-2px;box-shadow:none}.github-md-dark.markdown-body [role=button]:focus:not(:focus-visible),.github-md-dark.markdown-body a:focus:not(:focus-visible),.github-md-dark.markdown-body input[type=checkbox]:focus:not(:focus-visible),.github-md-dark.markdown-body input[type=radio]:focus:not(:focus-visible){outline:solid 1px transparent}.github-md-dark.markdown-body [role=button]:focus-visible,.github-md-dark.markdown-body a:focus-visible,.github-md-dark.markdown-body input[type=checkbox]:focus-visible,.github-md-dark.markdown-body input[type=radio]:focus-visible{outline:2px solid #1f6feb;outline-offset:-2px;box-shadow:none}.github-md-dark.markdown-body a:not([class]):focus,.github-md-dark.markdown-body a:not([class]):focus-visible,.github-md-dark.markdown-body input[type=checkbox]:focus,.github-md-dark.markdown-body input[type=checkbox]:focus-visible,.github-md-dark.markdown-body input[type=radio]:focus,.github-md-dark.markdown-body input[type=radio]:focus-visible{outline-offset:0}.github-md-dark.markdown-body kbd{display:inline-block;padding:.25rem;font:11px ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,Liberation Mono,monospace;line-height:10px;color:#f0f6fc;vertical-align:middle;background-color:#151b23;border:solid 1px #3d444db3;border-bottom-color:#3d444db3;border-radius:6px;box-shadow:inset 0 -1px 0 #3d444db3}.github-md-dark.markdown-body h1,.github-md-dark.markdown-body h2,.github-md-dark.markdown-body h3,.github-md-dark.markdown-body h4,.github-md-dark.markdown-body h5,.github-md-dark.markdown-body h6{margin-top:1.5rem;margin-bottom:1rem;font-weight:600;line-height:1.25}.github-md-dark.markdown-body h2{font-weight:600;padding-bottom:.3em;font-size:1.5em;border-bottom:1px solid #3d444db3}.github-md-dark.markdown-body h3{font-weight:600;font-size:1.25em}.github-md-dark.markdown-body h4{font-weight:600;font-size:1em}.github-md-dark.markdown-body h5{font-weight:600;font-size:.875em}.github-md-dark.markdown-body h6{font-weight:600;font-size:.85em;color:#9198a1}.github-md-dark.markdown-body p{margin-top:0;margin-bottom:10px}.github-md-dark.markdown-body blockquote{margin:0;padding:0 1em;color:#9198a1;border-left:.25em solid #3d444d}.github-md-dark.markdown-body ol,.github-md-dark.markdown-body ul{margin-top:0;margin-bottom:0;padding-left:2em}.github-md-dark.markdown-body ol ol,.github-md-dark.markdown-body ul ol{list-style-type:lower-roman}.github-md-dark.markdown-body ol ol ol,.github-md-dark.markdown-body ol ul ol,.github-md-dark.markdown-body ul ol ol,.github-md-dark.markdown-body ul ul ol{list-style-type:lower-alpha}.github-md-dark.markdown-body dd{margin-left:0}.github-md-dark.markdown-body code,.github-md-dark.markdown-body samp,.github-md-dark.markdown-body tt{font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,Liberation Mono,monospace;font-size:12px}.github-md-dark.markdown-body pre{margin-top:0;margin-bottom:0;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,Liberation Mono,monospace;font-size:12px;word-wrap:normal}.github-md-dark.markdown-body .octicon{display:inline-block;overflow:visible!important;vertical-align:text-bottom;fill:currentColor}.github-md-dark.markdown-body input::-webkit-inner-spin-button,.github-md-dark.markdown-body input::-webkit-outer-spin-button{margin:0;appearance:none}.github-md-dark.markdown-body .mr-2{margin-right:.5rem!important}.github-md-dark.markdown-body::before{display:table;content:""}.github-md-dark.markdown-body::after{display:table;clear:both;content:""}.github-md-dark.markdown-body>:first-child{margin-top:0!important}.github-md-dark.markdown-body>:last-child{margin-bottom:0!important}.github-md-dark.markdown-body a:not([href]){color:inherit;text-decoration:none}.github-md-dark.markdown-body .absent{color:#f85149}.github-md-dark.markdown-body .anchor{float:left;padding-right:.25rem;margin-left:-20px;line-height:1}.github-md-dark.markdown-body .anchor:focus{outline:0}.github-md-dark.markdown-body blockquote,.github-md-dark.markdown-body details,.github-md-dark.markdown-body dl,.github-md-dark.markdown-body ol,.github-md-dark.markdown-body p,.github-md-dark.markdown-body pre,.github-md-dark.markdown-body table,.github-md-dark.markdown-body ul{margin-top:0;margin-bottom:1rem}.github-md-dark.markdown-body blockquote>:first-child{margin-top:0}.github-md-dark.markdown-body blockquote>:last-child{margin-bottom:0}.github-md-dark.markdown-body h1 .octicon-link,.github-md-dark.markdown-body h2 .octicon-link,.github-md-dark.markdown-body h3 .octicon-link,.github-md-dark.markdown-body h4 .octicon-link,.github-md-dark.markdown-body h5 .octicon-link,.github-md-dark.markdown-body h6 .octicon-link{color:#f0f6fc;vertical-align:middle;visibility:hidden}.github-md-dark.markdown-body h1:hover .anchor,.github-md-dark.markdown-body h2:hover .anchor,.github-md-dark.markdown-body h3:hover .anchor,.github-md-dark.markdown-body h4:hover .anchor,.github-md-dark.markdown-body h5:hover .anchor,.github-md-dark.markdown-body h6:hover .anchor{text-decoration:none}.github-md-dark.markdown-body h1:hover .anchor .octicon-link,.github-md-dark.markdown-body h2:hover .anchor .octicon-link,.github-md-dark.markdown-body h3:hover .anchor .octicon-link,.github-md-dark.markdown-body h4:hover .anchor .octicon-link,.github-md-dark.markdown-body h5:hover .anchor .octicon-link,.github-md-dark.markdown-body h6:hover .anchor .octicon-link{visibility:visible}.github-md-dark.markdown-body h1 code,.github-md-dark.markdown-body h1 tt,.github-md-dark.markdown-body h2 code,.github-md-dark.markdown-body h2 tt,.github-md-dark.markdown-body h3 code,.github-md-dark.markdown-body h3 tt,.github-md-dark.markdown-body h4 code,.github-md-dark.markdown-body h4 tt,.github-md-dark.markdown-body h5 code,.github-md-dark.markdown-body h5 tt,.github-md-dark.markdown-body h6 code,.github-md-dark.markdown-body h6 tt{padding:0 .2em;font-size:inherit}.github-md-dark.markdown-body summary h1,.github-md-dark.markdown-body summary h2,.github-md-dark.markdown-body summary h3,.github-md-dark.markdown-body summary h4,.github-md-dark.markdown-body summary h5,.github-md-dark.markdown-body summary h6{display:inline-block}.github-md-dark.markdown-body summary h1 .anchor,.github-md-dark.markdown-body summary h2 .anchor,.github-md-dark.markdown-body summary h3 .anchor,.github-md-dark.markdown-body summary h4 .anchor,.github-md-dark.markdown-body summary h5 .anchor,.github-md-dark.markdown-body summary h6 .anchor{margin-left:-40px}.github-md-dark.markdown-body summary h1,.github-md-dark.markdown-body summary h2{padding-bottom:0;border-bottom:0}.github-md-dark.markdown-body ol.no-list,.github-md-dark.markdown-body ul.no-list{padding:0;list-style-type:none}.github-md-dark.markdown-body ol[type="a s"]{list-style-type:lower-alpha}.github-md-dark.markdown-body ol[type="A s"]{list-style-type:upper-alpha}.github-md-dark.markdown-body ol[type="i s"]{list-style-type:lower-roman}.github-md-dark.markdown-body ol[type="I s"]{list-style-type:upper-roman}.github-md-dark.markdown-body ol[type="1"]{list-style-type:decimal}.github-md-dark.markdown-body div>ol:not([type]){list-style-type:decimal}.github-md-dark.markdown-body ol ol,.github-md-dark.markdown-body ol ul,.github-md-dark.markdown-body ul ol,.github-md-dark.markdown-body ul ul{margin-top:0;margin-bottom:0}.github-md-dark.markdown-body li>p{margin-top:1rem}.github-md-dark.markdown-body li+li{margin-top:.25em}.github-md-dark.markdown-body dl{padding:0}.github-md-dark.markdown-body dl dt{padding:0;margin-top:1rem;font-size:1em;font-style:italic;font-weight:600}.github-md-dark.markdown-body dl dd{padding:0 1rem;margin-bottom:1rem}.github-md-dark.markdown-body table th{font-weight:600}.github-md-dark.markdown-body table td,.github-md-dark.markdown-body table th{padding:6px 13px;border:1px solid #3d444d}.github-md-dark.markdown-body table td>:last-child{margin-bottom:0}.github-md-dark.markdown-body table tr{background-color:#0d1117;border-top:1px solid #3d444db3}.github-md-dark.markdown-body table tr:nth-child(2n){background-color:#151b23}.github-md-dark.markdown-body table img{background-color:transparent}.github-md-dark.markdown-body img[align=right]{padding-left:20px}.github-md-dark.markdown-body img[align=left]{padding-right:20px}.github-md-dark.markdown-body .emoji{max-width:none;vertical-align:text-top;background-color:transparent}.github-md-dark.markdown-body span.frame{display:block;overflow:hidden}.github-md-dark.markdown-body span.frame>span{display:block;float:left;width:auto;padding:7px;margin:13px 0 0;overflow:hidden;border:1px solid #3d444d}.github-md-dark.markdown-body span.frame span img{display:block;float:left}.github-md-dark.markdown-body span.frame span span{display:block;padding:5px 0 0;clear:both;color:#f0f6fc}.github-md-dark.markdown-body span.align-center{display:block;overflow:hidden;clear:both}.github-md-dark.markdown-body span.align-center>span{display:block;margin:13px auto 0;overflow:hidden;text-align:center}.github-md-dark.markdown-body span.align-center span img{margin:0 auto;text-align:center}.github-md-dark.markdown-body span.align-right{display:block;overflow:hidden;clear:both}.github-md-dark.markdown-body span.align-right>span{display:block;margin:13px 0 0;overflow:hidden;text-align:right}.github-md-dark.markdown-body span.align-right span img{margin:0;text-align:right}.github-md-dark.markdown-body span.float-left{display:block;float:left;margin-right:13px;overflow:hidden}.github-md-dark.markdown-body span.float-left span{margin:13px 0 0}.github-md-dark.markdown-body span.float-right{display:block;float:right;margin-left:13px;overflow:hidden}.github-md-dark.markdown-body span.float-right>span{display:block;margin:13px auto 0;overflow:hidden;text-align:right}.github-md-dark.markdown-body code,.github-md-dark.markdown-body tt{padding:.2em .4em;margin:0;font-size:85%;white-space:break-spaces;background-color:#656c7633;border-radius:6px}.github-md-dark.markdown-body code br,.github-md-dark.markdown-body tt br{display:none}.github-md-dark.markdown-body del code{text-decoration:inherit}.github-md-dark.markdown-body samp{font-size:85%}.github-md-dark.markdown-body pre code{font-size:100%}.github-md-dark.markdown-body pre>code{padding:0;margin:0;word-break:normal;white-space:pre;background:0 0;border:0}.github-md-dark.markdown-body .highlight{margin-bottom:1rem}.github-md-dark.markdown-body .highlight pre{margin-bottom:0;word-break:normal}.github-md-dark.markdown-body .highlight pre,.github-md-dark.markdown-body pre{padding:1rem;overflow:auto;font-size:85%;line-height:1.45;color:#f0f6fc;background-color:#151b23;border-radius:6px}.github-md-dark.markdown-body pre code,.github-md-dark.markdown-body pre tt{display:inline;max-width:auto;padding:0;margin:0;overflow:visible;line-height:inherit;word-wrap:normal;background-color:transparent;border:0}.github-md-dark.markdown-body .csv-data td,.github-md-dark.markdown-body .csv-data th{padding:5px;overflow:hidden;font-size:12px;line-height:1;text-align:left;white-space:nowrap}.github-md-dark.markdown-body .csv-data .blob-num{padding:10px .5rem 9px;text-align:right;background:#0d1117;border:0}.github-md-dark.markdown-body .csv-data tr{border-top:0}.github-md-dark.markdown-body .csv-data th{font-weight:600;background:#151b23;border-top:0}.github-md-dark.markdown-body [data-footnote-ref]::before{content:"["}.github-md-dark.markdown-body [data-footnote-ref]::after{content:"]"}.github-md-dark.markdown-body .footnotes{font-size:12px;color:#9198a1;border-top:1px solid #3d444d}.github-md-dark.markdown-body .footnotes ol{padding-left:1rem}.github-md-dark.markdown-body .footnotes ol ul{display:inline-block;padding-left:1rem;margin-top:1rem}.github-md-dark.markdown-body .footnotes li{position:relative}.github-md-dark.markdown-body .footnotes li:target::before{position:absolute;top:calc(.5rem*-1);right:calc(.5rem*-1);bottom:calc(.5rem*-1);left:calc(1.5rem*-1);pointer-events:none;content:"";border:2px solid #1f6feb;border-radius:6px}.github-md-dark.markdown-body .footnotes li:target{color:#f0f6fc}.github-md-dark.markdown-body .footnotes .data-footnote-backref g-emoji{font-family:monospace}.github-md-dark.markdown-body body:has(:modal){padding-right:var(--dialog-scrollgutter)!important}.github-md-dark.markdown-body .pl-c{color:#9198a1}.github-md-dark.markdown-body .pl-c1,.github-md-dark.markdown-body .pl-s .pl-v{color:#79c0ff}.github-md-dark.markdown-body .pl-e,.github-md-dark.markdown-body .pl-en{color:#d2a8ff}.github-md-dark.markdown-body .pl-s .pl-s1,.github-md-dark.markdown-body .pl-smi{color:#f0f6fc}.github-md-dark.markdown-body .pl-ent{color:#7ee787}.github-md-dark.markdown-body .pl-k{color:#ff7b72}.github-md-dark.markdown-body .pl-pds,.github-md-dark.markdown-body .pl-s,.github-md-dark.markdown-body .pl-s .pl-pse .pl-s1,.github-md-dark.markdown-body .pl-sr,.github-md-dark.markdown-body .pl-sr .pl-cce,.github-md-dark.markdown-body .pl-sr .pl-sra,.github-md-dark.markdown-body .pl-sr .pl-sre{color:#a5d6ff}.github-md-dark.markdown-body .pl-smw,.github-md-dark.markdown-body .pl-v{color:#ffa657}.github-md-dark.markdown-body .pl-bu{color:#f85149}.github-md-dark.markdown-body .pl-ii{color:#f0f6fc;background-color:#8e1519}.github-md-dark.markdown-body .pl-c2{color:#f0f6fc;background-color:#b62324}.github-md-dark.markdown-body .pl-sr .pl-cce{font-weight:700;color:#7ee787}.github-md-dark.markdown-body .pl-ml{color:#f2cc60}.github-md-dark.markdown-body .pl-mh,.github-md-dark.markdown-body .pl-mh .pl-en,.github-md-dark.markdown-body .pl-ms{font-weight:700;color:#1f6feb}.github-md-dark.markdown-body .pl-mi{font-style:italic;color:#f0f6fc}.github-md-dark.markdown-body .pl-mb{font-weight:700;color:#f0f6fc}.github-md-dark.markdown-body .pl-md{color:#ffdcd7;background-color:#67060c}.github-md-dark.markdown-body .pl-mi1{color:#aff5b4;background-color:#033a16}.github-md-dark.markdown-body .pl-mc{color:#ffdfb6;background-color:#5a1e02}.github-md-dark.markdown-body .pl-mi2{color:#f0f6fc;background-color:#1158c7}.github-md-dark.markdown-body .pl-mdr{font-weight:700;color:#d2a8ff}.github-md-dark.markdown-body .pl-ba{color:#9198a1}.github-md-dark.markdown-body .pl-sg{color:#3d444d}.github-md-dark.markdown-body .pl-corl{text-decoration:underline;color:#a5d6ff}.github-md-dark.markdown-body [role=button]:focus:not(:focus-visible),.github-md-dark.markdown-body [role=tabpanel][tabindex="0"]:focus:not(:focus-visible),.github-md-dark.markdown-body a:focus:not(:focus-visible),.github-md-dark.markdown-body button:focus:not(:focus-visible),.github-md-dark.markdown-body summary:focus:not(:focus-visible){outline:0;box-shadow:none}.github-md-dark.markdown-body [tabindex="0"]:focus:not(:focus-visible),.github-md-dark.markdown-body details-dialog:focus:not(:focus-visible){outline:0}.github-md-dark.markdown-body g-emoji{display:inline-block;min-width:1ch;font-family:"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";font-size:1em;font-style:normal!important;font-weight:400;line-height:1;vertical-align:-.075em}.github-md-dark.markdown-body g-emoji img{width:1em;height:1em}.github-md-dark.markdown-body .task-list-item{list-style-type:none}.github-md-dark.markdown-body .task-list-item label{font-weight:400}.github-md-dark.markdown-body .task-list-item.enabled label{cursor:pointer}.github-md-dark.markdown-body .task-list-item+.task-list-item{margin-top:.25rem}.github-md-dark.markdown-body .task-list-item .handle{display:none}.github-md-dark.markdown-body .task-list-item-checkbox{margin:0 .2em .25em -1.4em;vertical-align:middle}.github-md-dark.markdown-body ul:dir(rtl) .task-list-item-checkbox{margin:0 -1.6em .25em .2em}.github-md-dark.markdown-body ol:dir(rtl) .task-list-item-checkbox{margin:0 -1.6em .25em .2em}.github-md-dark.markdown-body .contains-task-list:focus-within .task-list-item-convert-container,.github-md-dark.markdown-body .contains-task-list:hover .task-list-item-convert-container{display:block;width:auto;height:24px;overflow:visible;clip:auto}.github-md-dark.markdown-body ::-webkit-calendar-picker-indicator{filter:invert(50%)}.github-md-dark.markdown-body .markdown-alert{padding:.5rem 1rem;margin-bottom:1rem;color:inherit;border-left:.25em solid #3d444d}.github-md-dark.markdown-body .markdown-alert>:first-child{margin-top:0}.github-md-dark.markdown-body .markdown-alert>:last-child{margin-bottom:0}.github-md-dark.markdown-body .markdown-alert .markdown-alert-title{display:flex;font-weight:500;align-items:center;line-height:1}.github-md-dark.markdown-body .markdown-alert.markdown-alert-note{border-left-color:#1f6feb}.github-md-dark.markdown-body .markdown-alert.markdown-alert-note .markdown-alert-title{color:#4493f8}.github-md-dark.markdown-body .markdown-alert.markdown-alert-important{border-left-color:#8957e5}.github-md-dark.markdown-body .markdown-alert.markdown-alert-important .markdown-alert-title{color:#ab7df8}.github-md-dark.markdown-body .markdown-alert.markdown-alert-warning{border-left-color:#9e6a03}.github-md-dark.markdown-body .markdown-alert.markdown-alert-warning .markdown-alert-title{color:#d29922}.github-md-dark.markdown-body .markdown-alert.markdown-alert-tip{border-left-color:#238636}.github-md-dark.markdown-body .markdown-alert.markdown-alert-tip .markdown-alert-title{color:#3fb950}.github-md-dark.markdown-body .markdown-alert.markdown-alert-caution{border-left-color:#da3633}.github-md-dark.markdown-body .markdown-alert.markdown-alert-caution .markdown-alert-title{color:#f85149}.github-md-dark.markdown-body>:first-child>.heading-element:first-child{margin-top:0!important}.github-md-dark.markdown-body .highlight pre:has(+.zeroclipboard-container){min-height:52px}.markdown-body{color-scheme:light;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;margin:0;color:#1f2328;background-color:#fff;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans",Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";font-size:16px;line-height:1.5;word-wrap:break-word}.markdown-body .octicon{display:inline-block;fill:currentColor;vertical-align:text-bottom}.markdown-body h1:hover .anchor .octicon-link:before,.markdown-body h2:hover .anchor .octicon-link:before,.markdown-body h3:hover .anchor .octicon-link:before,.markdown-body h4:hover .anchor .octicon-link:before,.markdown-body h5:hover .anchor .octicon-link:before,.markdown-body h6:hover .anchor .octicon-link:before{width:16px;height:16px;content:' ';display:inline-block;background-color:currentColor;-webkit-mask-image:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' version='1.1' aria-hidden='true'><path fill-rule='evenodd' d='M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z'></path></svg>");mask-image:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' version='1.1' aria-hidden='true'><path fill-rule='evenodd' d='M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z'></path></svg>")}.markdown-body details,.markdown-body figcaption,.markdown-body figure{display:block}.markdown-body summary{display:list-item}.markdown-body [hidden]{display:none!important}.markdown-body a{background-color:transparent;color:#0969da;text-decoration:none}.markdown-body abbr[title]{border-bottom:none;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.markdown-body b,.markdown-body strong{font-weight:600}.markdown-body dfn{font-style:italic}.markdown-body h1{margin:.67em 0;font-weight:600;padding-bottom:.3em;font-size:2em;border-bottom:1px solid #d1d9e0b3}.markdown-body mark{background-color:#fff8c5;color:#1f2328}.markdown-body small{font-size:90%}.markdown-body sub,.markdown-body sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}.markdown-body sub{bottom:-.25em}.markdown-body sup{top:-.5em}.markdown-body img{border-style:none;max-width:100%;box-sizing:content-box}.markdown-body code,.markdown-body kbd,.markdown-body pre,.markdown-body samp{font-family:monospace;font-size:1em}.markdown-body figure{margin:1em 2.5rem}.markdown-body hr{box-sizing:content-box;overflow:hidden;background:0 0;border-bottom:1px solid #d1d9e0b3;height:.25em;padding:0;margin:1.5rem 0;background-color:#d1d9e0;border:0}.markdown-body input{font:inherit;margin:0;overflow:visible;font-family:inherit;font-size:inherit;line-height:inherit}.markdown-body [type=button],.markdown-body [type=reset],.markdown-body [type=submit]{-webkit-appearance:button;appearance:button}.markdown-body [type=checkbox],.markdown-body [type=radio]{box-sizing:border-box;padding:0}.markdown-body [type=number]::-webkit-inner-spin-button,.markdown-body [type=number]::-webkit-outer-spin-button{height:auto}.markdown-body [type=search]::-webkit-search-cancel-button,.markdown-body [type=search]::-webkit-search-decoration{-webkit-appearance:none;appearance:none}.markdown-body ::-webkit-input-placeholder{color:inherit;opacity:.54}.markdown-body ::-webkit-file-upload-button{-webkit-appearance:button;appearance:button;font:inherit}.markdown-body a:hover{text-decoration:underline}.markdown-body ::placeholder{color:#59636e;opacity:1}.markdown-body hr::before{display:table;content:""}.markdown-body hr::after{display:table;clear:both;content:""}.markdown-body table{border-spacing:0;border-collapse:collapse;display:block;width:max-content;max-width:100%;overflow:auto;font-variant:tabular-nums}.markdown-body td,.markdown-body th{padding:0}.markdown-body details summary{cursor:pointer}.markdown-body [role=button]:focus,.markdown-body a:focus,.markdown-body input[type=checkbox]:focus,.markdown-body input[type=radio]:focus{outline:2px solid #0969da;outline-offset:-2px;box-shadow:none}.markdown-body [role=button]:focus:not(:focus-visible),.markdown-body a:focus:not(:focus-visible),.markdown-body input[type=checkbox]:focus:not(:focus-visible),.markdown-body input[type=radio]:focus:not(:focus-visible){outline:solid 1px transparent}.markdown-body [role=button]:focus-visible,.markdown-body a:focus-visible,.markdown-body input[type=checkbox]:focus-visible,.markdown-body input[type=radio]:focus-visible{outline:2px solid #0969da;outline-offset:-2px;box-shadow:none}.markdown-body a:not([class]):focus,.markdown-body a:not([class]):focus-visible,.markdown-body input[type=checkbox]:focus,.markdown-body input[type=checkbox]:focus-visible,.markdown-body input[type=radio]:focus,.markdown-body input[type=radio]:focus-visible{outline-offset:0}.markdown-body kbd{display:inline-block;padding:.25rem;font:11px ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,Liberation Mono,monospace;line-height:10px;color:#1f2328;vertical-align:middle;background-color:#f6f8fa;border:solid 1px #d1d9e0b3;border-bottom-color:#d1d9e0b3;border-radius:6px;box-shadow:inset 0 -1px 0 #d1d9e0b3}.markdown-body h1,.markdown-body h2,.markdown-body h3,.markdown-body h4,.markdown-body h5,.markdown-body h6{margin-top:1.5rem;margin-bottom:1rem;font-weight:600;line-height:1.25}.markdown-body h2{font-weight:600;padding-bottom:.3em;font-size:1.5em;border-bottom:1px solid #d1d9e0b3}.markdown-body h3{font-weight:600;font-size:1.25em}.markdown-body h4{font-weight:600;font-size:1em}.markdown-body h5{font-weight:600;font-size:.875em}.markdown-body h6{font-weight:600;font-size:.85em;color:#59636e}.markdown-body p{margin-top:0;margin-bottom:10px}.markdown-body blockquote{margin:0;padding:0 1em;color:#59636e;border-left:.25em solid #d1d9e0}.markdown-body ol,.markdown-body ul{margin-top:0;margin-bottom:0;padding-left:2em}.markdown-body ol ol,.markdown-body ul ol{list-style-type:lower-roman}.markdown-body ol ol ol,.markdown-body ol ul ol,.markdown-body ul ol ol,.markdown-body ul ul ol{list-style-type:lower-alpha}.markdown-body dd{margin-left:0}.markdown-body code,.markdown-body samp,.markdown-body tt{font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,Liberation Mono,monospace;font-size:12px}.markdown-body pre{margin-top:0;margin-bottom:0;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,Liberation Mono,monospace;font-size:12px;word-wrap:normal}.markdown-body .octicon{display:inline-block;overflow:visible!important;vertical-align:text-bottom;fill:currentColor}.markdown-body input::-webkit-inner-spin-button,.markdown-body input::-webkit-outer-spin-button{margin:0;appearance:none}.markdown-body .mr-2{margin-right:.5rem!important}.markdown-body::before{display:table;content:""}.markdown-body::after{display:table;clear:both;content:""}.markdown-body>:first-child{margin-top:0!important}.markdown-body>:last-child{margin-bottom:0!important}.markdown-body a:not([href]){color:inherit;text-decoration:none}.markdown-body .absent{color:#d1242f}.markdown-body .anchor{float:left;padding-right:.25rem;margin-left:-20px;line-height:1}.markdown-body .anchor:focus{outline:0}.markdown-body blockquote,.markdown-body details,.markdown-body dl,.markdown-body ol,.markdown-body p,.markdown-body pre,.markdown-body table,.markdown-body ul{margin-top:0;margin-bottom:1rem}.markdown-body blockquote>:first-child{margin-top:0}.markdown-body blockquote>:last-child{margin-bottom:0}.markdown-body h1 .octicon-link,.markdown-body h2 .octicon-link,.markdown-body h3 .octicon-link,.markdown-body h4 .octicon-link,.markdown-body h5 .octicon-link,.markdown-body h6 .octicon-link{color:#1f2328;vertical-align:middle;visibility:hidden}.markdown-body h1:hover .anchor,.markdown-body h2:hover .anchor,.markdown-body h3:hover .anchor,.markdown-body h4:hover .anchor,.markdown-body h5:hover .anchor,.markdown-body h6:hover .anchor{text-decoration:none}.markdown-body h1:hover .anchor .octicon-link,.markdown-body h2:hover .anchor .octicon-link,.markdown-body h3:hover .anchor .octicon-link,.markdown-body h4:hover .anchor .octicon-link,.markdown-body h5:hover .anchor .octicon-link,.markdown-body h6:hover .anchor .octicon-link{visibility:visible}.markdown-body h1 code,.markdown-body h1 tt,.markdown-body h2 code,.markdown-body h2 tt,.markdown-body h3 code,.markdown-body h3 tt,.markdown-body h4 code,.markdown-body h4 tt,.markdown-body h5 code,.markdown-body h5 tt,.markdown-body h6 code,.markdown-body h6 tt{padding:0 .2em;font-size:inherit}.markdown-body summary h1,.markdown-body summary h2,.markdown-body summary h3,.markdown-body summary h4,.markdown-body summary h5,.markdown-body summary h6{display:inline-block}.markdown-body summary h1 .anchor,.markdown-body summary h2 .anchor,.markdown-body summary h3 .anchor,.markdown-body summary h4 .anchor,.markdown-body summary h5 .anchor,.markdown-body summary h6 .anchor{margin-left:-40px}.markdown-body summary h1,.markdown-body summary h2{padding-bottom:0;border-bottom:0}.markdown-body ol.no-list,.markdown-body ul.no-list{padding:0;list-style-type:none}.markdown-body ol[type="a s"]{list-style-type:lower-alpha}.markdown-body ol[type="A s"]{list-style-type:upper-alpha}.markdown-body ol[type="i s"]{list-style-type:lower-roman}.markdown-body ol[type="I s"]{list-style-type:upper-roman}.markdown-body ol[type="1"]{list-style-type:decimal}.markdown-body div>ol:not([type]){list-style-type:decimal}.markdown-body ol ol,.markdown-body ol ul,.markdown-body ul ol,.markdown-body ul ul{margin-top:0;margin-bottom:0}.markdown-body li>p{margin-top:1rem}.markdown-body li+li{margin-top:.25em}.markdown-body dl{padding:0}.markdown-body dl dt{padding:0;margin-top:1rem;font-size:1em;font-style:italic;font-weight:600}.markdown-body dl dd{padding:0 1rem;margin-bottom:1rem}.markdown-body table th{font-weight:600}.markdown-body table td,.markdown-body table th{padding:6px 13px;border:1px solid #d1d9e0}.markdown-body table td>:last-child{margin-bottom:0}.markdown-body table tr{background-color:#fff;border-top:1px solid #d1d9e0b3}.markdown-body table tr:nth-child(2n){background-color:#f6f8fa}.markdown-body table img{background-color:transparent}.markdown-body img[align=right]{padding-left:20px}.markdown-body img[align=left]{padding-right:20px}.markdown-body .emoji{max-width:none;vertical-align:text-top;background-color:transparent}.markdown-body span.frame{display:block;overflow:hidden}.markdown-body span.frame>span{display:block;float:left;width:auto;padding:7px;margin:13px 0 0;overflow:hidden;border:1px solid #d1d9e0}.markdown-body span.frame span img{display:block;float:left}.markdown-body span.frame span span{display:block;padding:5px 0 0;clear:both;color:#1f2328}.markdown-body span.align-center{display:block;overflow:hidden;clear:both}.markdown-body span.align-center>span{display:block;margin:13px auto 0;overflow:hidden;text-align:center}.markdown-body span.align-center span img{margin:0 auto;text-align:center}.markdown-body span.align-right{display:block;overflow:hidden;clear:both}.markdown-body span.align-right>span{display:block;margin:13px 0 0;overflow:hidden;text-align:right}.markdown-body span.align-right span img{margin:0;text-align:right}.markdown-body span.float-left{display:block;float:left;margin-right:13px;overflow:hidden}.markdown-body span.float-left span{margin:13px 0 0}.markdown-body span.float-right{display:block;float:right;margin-left:13px;overflow:hidden}.markdown-body span.float-right>span{display:block;margin:13px auto 0;overflow:hidden;text-align:right}.markdown-body code,.markdown-body tt{padding:.2em .4em;margin:0;font-size:85%;white-space:break-spaces;background-color:#818b981f;border-radius:6px}.markdown-body code br,.markdown-body tt br{display:none}.markdown-body del code{text-decoration:inherit}.markdown-body samp{font-size:85%}.markdown-body pre code{font-size:100%}.markdown-body pre>code{padding:0;margin:0;word-break:normal;white-space:pre;background:0 0;border:0}.markdown-body .highlight{margin-bottom:1rem}.markdown-body .highlight pre{margin-bottom:0;word-break:normal}.markdown-body .highlight pre,.markdown-body pre{padding:1rem;overflow:auto;font-size:85%;line-height:1.45;color:#1f2328;background-color:#f6f8fa;border-radius:6px}.markdown-body pre code,.markdown-body pre tt{display:inline;max-width:auto;padding:0;margin:0;overflow:visible;line-height:inherit;word-wrap:normal;background-color:transparent;border:0}.markdown-body .csv-data td,.markdown-body .csv-data th{padding:5px;overflow:hidden;font-size:12px;line-height:1;text-align:left;white-space:nowrap}.markdown-body .csv-data .blob-num{padding:10px .5rem 9px;text-align:right;background:#fff;border:0}.markdown-body .csv-data tr{border-top:0}.markdown-body .csv-data th{font-weight:600;background:#f6f8fa;border-top:0}.markdown-body [data-footnote-ref]::before{content:"["}.markdown-body [data-footnote-ref]::after{content:"]"}.markdown-body .footnotes{font-size:12px;color:#59636e;border-top:1px solid #d1d9e0}.markdown-body .footnotes ol{padding-left:1rem}.markdown-body .footnotes ol ul{display:inline-block;padding-left:1rem;margin-top:1rem}.markdown-body .footnotes li{position:relative}.markdown-body .footnotes li:target::before{position:absolute;top:calc(.5rem*-1);right:calc(.5rem*-1);bottom:calc(.5rem*-1);left:calc(1.5rem*-1);pointer-events:none;content:"";border:2px solid #0969da;border-radius:6px}.markdown-body .footnotes li:target{color:#1f2328}.markdown-body .footnotes .data-footnote-backref g-emoji{font-family:monospace}.markdown-body body:has(:modal){padding-right:var(--dialog-scrollgutter)!important}.markdown-body .pl-c{color:#59636e}.markdown-body .pl-c1,.markdown-body .pl-s .pl-v{color:#0550ae}.markdown-body .pl-e,.markdown-body .pl-en{color:#6639ba}.markdown-body .pl-s .pl-s1,.markdown-body .pl-smi{color:#1f2328}.markdown-body .pl-ent{color:#0550ae}.markdown-body .pl-k{color:#cf222e}.markdown-body .pl-pds,.markdown-body .pl-s,.markdown-body .pl-s .pl-pse .pl-s1,.markdown-body .pl-sr,.markdown-body .pl-sr .pl-cce,.markdown-body .pl-sr .pl-sra,.markdown-body .pl-sr .pl-sre{color:#0a3069}.markdown-body .pl-smw,.markdown-body .pl-v{color:#953800}.markdown-body .pl-bu{color:#82071e}.markdown-body .pl-ii{color:#f6f8fa;background-color:#82071e}.markdown-body .pl-c2{color:#f6f8fa;background-color:#cf222e}.markdown-body .pl-sr .pl-cce{font-weight:700;color:#116329}.markdown-body .pl-ml{color:#3b2300}.markdown-body .pl-mh,.markdown-body .pl-mh .pl-en,.markdown-body .pl-ms{font-weight:700;color:#0550ae}.markdown-body .pl-mi{font-style:italic;color:#1f2328}.markdown-body .pl-mb{font-weight:700;color:#1f2328}.markdown-body .pl-md{color:#82071e;background-color:#ffebe9}.markdown-body .pl-mi1{color:#116329;background-color:#dafbe1}.markdown-body .pl-mc{color:#953800;background-color:#ffd8b5}.markdown-body .pl-mi2{color:#d1d9e0;background-color:#0550ae}.markdown-body .pl-mdr{font-weight:700;color:#8250df}.markdown-body .pl-ba{color:#59636e}.markdown-body .pl-sg{color:#818b98}.markdown-body .pl-corl{text-decoration:underline;color:#0a3069}.markdown-body [role=button]:focus:not(:focus-visible),.markdown-body [role=tabpanel][tabindex="0"]:focus:not(:focus-visible),.markdown-body a:focus:not(:focus-visible),.markdown-body button:focus:not(:focus-visible),.markdown-body summary:focus:not(:focus-visible){outline:0;box-shadow:none}.markdown-body [tabindex="0"]:focus:not(:focus-visible),.markdown-body details-dialog:focus:not(:focus-visible){outline:0}.markdown-body g-emoji{display:inline-block;min-width:1ch;font-family:"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";font-size:1em;font-style:normal!important;font-weight:400;line-height:1;vertical-align:-.075em}.markdown-body g-emoji img{width:1em;height:1em}.markdown-body .task-list-item{list-style-type:none}.markdown-body .task-list-item label{font-weight:400}.markdown-body .task-list-item.enabled label{cursor:pointer}.markdown-body .task-list-item+.task-list-item{margin-top:.25rem}.markdown-body .task-list-item .handle{display:none}.markdown-body .task-list-item-checkbox{margin:0 .2em .25em -1.4em;vertical-align:middle}.markdown-body ul:dir(rtl) .task-list-item-checkbox{margin:0 -1.6em .25em .2em}.markdown-body ol:dir(rtl) .task-list-item-checkbox{margin:0 -1.6em .25em .2em}.markdown-body .contains-task-list:focus-within .task-list-item-convert-container,.markdown-body .contains-task-list:hover .task-list-item-convert-container{display:block;width:auto;height:24px;overflow:visible;clip:auto}.markdown-body ::-webkit-calendar-picker-indicator{filter:invert(50%)}.markdown-body .markdown-alert{padding:.5rem 1rem;margin-bottom:1rem;color:inherit;border-left:.25em solid #d1d9e0}.markdown-body .markdown-alert>:first-child{margin-top:0}.markdown-body .markdown-alert>:last-child{margin-bottom:0}.markdown-body .markdown-alert .markdown-alert-title{display:flex;font-weight:500;align-items:center;line-height:1}.markdown-body .markdown-alert.markdown-alert-note{border-left-color:#0969da}.markdown-body .markdown-alert.markdown-alert-note .markdown-alert-title{color:#0969da}.markdown-body .markdown-alert.markdown-alert-important{border-left-color:#8250df}.markdown-body .markdown-alert.markdown-alert-important .markdown-alert-title{color:#8250df}.markdown-body .markdown-alert.markdown-alert-warning{border-left-color:#9a6700}.markdown-body .markdown-alert.markdown-alert-warning .markdown-alert-title{color:#9a6700}.markdown-body .markdown-alert.markdown-alert-tip{border-left-color:#1a7f37}.markdown-body .markdown-alert.markdown-alert-tip .markdown-alert-title{color:#1a7f37}.markdown-body .markdown-alert.markdown-alert-caution{border-left-color:#cf222e}.markdown-body .markdown-alert.markdown-alert-caution .markdown-alert-title{color:#d1242f}.markdown-body>:first-child>.heading-element:first-child{margin-top:0!important}.markdown-body .highlight pre:has(+.zeroclipboard-container){min-height:52px}
|
12
|
+
.github-md-dark.markdown-body{color-scheme:dark;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;margin:0;color:#f0f6fc;background-color:#0d1117;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans",Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";font-size:16px;line-height:1.5;word-wrap:break-word}.github-md-dark.markdown-body .octicon{display:inline-block;fill:currentColor;vertical-align:text-bottom}.github-md-dark.markdown-body h1:hover .anchor .octicon-link:before,.github-md-dark.markdown-body h2:hover .anchor .octicon-link:before,.github-md-dark.markdown-body h3:hover .anchor .octicon-link:before,.github-md-dark.markdown-body h4:hover .anchor .octicon-link:before,.github-md-dark.markdown-body h5:hover .anchor .octicon-link:before,.github-md-dark.markdown-body h6:hover .anchor .octicon-link:before{width:16px;height:16px;content:' ';display:inline-block;background-color:currentColor;-webkit-mask-image:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' version='1.1' aria-hidden='true'><path fill-rule='evenodd' d='M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z'></path></svg>");mask-image:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' version='1.1' aria-hidden='true'><path fill-rule='evenodd' d='M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z'></path></svg>")}.github-md-dark.markdown-body details,.github-md-dark.markdown-body figcaption,.github-md-dark.markdown-body figure{display:block}.github-md-dark.markdown-body summary{display:list-item}.github-md-dark.markdown-body [hidden]{display:none!important}.github-md-dark.markdown-body a{background-color:transparent;color:#4493f8;text-decoration:none}.github-md-dark.markdown-body abbr[title]{border-bottom:none;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.github-md-dark.markdown-body b,.github-md-dark.markdown-body strong{font-weight:600}.github-md-dark.markdown-body dfn{font-style:italic}.github-md-dark.markdown-body h1{margin:.67em 0;font-weight:600;padding-bottom:.3em;font-size:2em;border-bottom:1px solid #3d444db3}.github-md-dark.markdown-body mark{background-color:#bb800926;color:#f0f6fc}.github-md-dark.markdown-body small{font-size:90%}.github-md-dark.markdown-body sub,.github-md-dark.markdown-body sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}.github-md-dark.markdown-body sub{bottom:-.25em}.github-md-dark.markdown-body sup{top:-.5em}.github-md-dark.markdown-body img{border-style:none;max-width:100%;box-sizing:content-box}.github-md-dark.markdown-body code,.github-md-dark.markdown-body kbd,.github-md-dark.markdown-body pre,.github-md-dark.markdown-body samp{font-family:monospace;font-size:1em}.github-md-dark.markdown-body figure{margin:1em 2.5rem}.github-md-dark.markdown-body hr{box-sizing:content-box;overflow:hidden;background:0 0;border-bottom:1px solid #3d444db3;height:.25em;padding:0;margin:1.5rem 0;background-color:#3d444d;border:0}.github-md-dark.markdown-body input{font:inherit;margin:0;overflow:visible;font-family:inherit;font-size:inherit;line-height:inherit}.github-md-dark.markdown-body [type=button],.github-md-dark.markdown-body [type=reset],.github-md-dark.markdown-body [type=submit]{-webkit-appearance:button;appearance:button}.github-md-dark.markdown-body [type=checkbox],.github-md-dark.markdown-body [type=radio]{box-sizing:border-box;padding:0}.github-md-dark.markdown-body [type=number]::-webkit-inner-spin-button,.github-md-dark.markdown-body [type=number]::-webkit-outer-spin-button{height:auto}.github-md-dark.markdown-body [type=search]::-webkit-search-cancel-button,.github-md-dark.markdown-body [type=search]::-webkit-search-decoration{-webkit-appearance:none;appearance:none}.github-md-dark.markdown-body ::-webkit-input-placeholder{color:inherit;opacity:.54}.github-md-dark.markdown-body ::-webkit-file-upload-button{-webkit-appearance:button;appearance:button;font:inherit}.github-md-dark.markdown-body a:hover{text-decoration:underline}.github-md-dark.markdown-body ::placeholder{color:#9198a1;opacity:1}.github-md-dark.markdown-body hr::before{display:table;content:""}.github-md-dark.markdown-body hr::after{display:table;clear:both;content:""}.github-md-dark.markdown-body table{border-spacing:0;border-collapse:collapse;display:block;width:max-content;max-width:100%;overflow:auto;font-variant:tabular-nums}.github-md-dark.markdown-body td,.github-md-dark.markdown-body th{padding:0}.github-md-dark.markdown-body details summary{cursor:pointer}.github-md-dark.markdown-body [role=button]:focus,.github-md-dark.markdown-body a:focus,.github-md-dark.markdown-body input[type=checkbox]:focus,.github-md-dark.markdown-body input[type=radio]:focus{outline:2px solid #1f6feb;outline-offset:-2px;box-shadow:none}.github-md-dark.markdown-body [role=button]:focus:not(:focus-visible),.github-md-dark.markdown-body a:focus:not(:focus-visible),.github-md-dark.markdown-body input[type=checkbox]:focus:not(:focus-visible),.github-md-dark.markdown-body input[type=radio]:focus:not(:focus-visible){outline:solid 1px transparent}.github-md-dark.markdown-body [role=button]:focus-visible,.github-md-dark.markdown-body a:focus-visible,.github-md-dark.markdown-body input[type=checkbox]:focus-visible,.github-md-dark.markdown-body input[type=radio]:focus-visible{outline:2px solid #1f6feb;outline-offset:-2px;box-shadow:none}.github-md-dark.markdown-body a:not([class]):focus,.github-md-dark.markdown-body a:not([class]):focus-visible,.github-md-dark.markdown-body input[type=checkbox]:focus,.github-md-dark.markdown-body input[type=checkbox]:focus-visible,.github-md-dark.markdown-body input[type=radio]:focus,.github-md-dark.markdown-body input[type=radio]:focus-visible{outline-offset:0}.github-md-dark.markdown-body kbd{display:inline-block;padding:.25rem;font:11px ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,Liberation Mono,monospace;line-height:10px;color:#f0f6fc;vertical-align:middle;background-color:#151b23;border:solid 1px #3d444db3;border-bottom-color:#3d444db3;border-radius:6px;box-shadow:inset 0 -1px 0 #3d444db3}.github-md-dark.markdown-body h1,.github-md-dark.markdown-body h2,.github-md-dark.markdown-body h3,.github-md-dark.markdown-body h4,.github-md-dark.markdown-body h5,.github-md-dark.markdown-body h6{margin-top:1.5rem;margin-bottom:1rem;font-weight:600;line-height:1.25}.github-md-dark.markdown-body h2{font-weight:600;padding-bottom:.3em;font-size:1.5em;border-bottom:1px solid #3d444db3}.github-md-dark.markdown-body h3{font-weight:600;font-size:1.25em}.github-md-dark.markdown-body h4{font-weight:600;font-size:1em}.github-md-dark.markdown-body h5{font-weight:600;font-size:.875em}.github-md-dark.markdown-body h6{font-weight:600;font-size:.85em;color:#9198a1}.github-md-dark.markdown-body p{margin-top:0;margin-bottom:10px}.github-md-dark.markdown-body blockquote{margin:0;padding:0 1em;color:#9198a1;border-left:.25em solid #3d444d}.github-md-dark.markdown-body ol,.github-md-dark.markdown-body ul{margin-top:0;margin-bottom:0;padding-left:2em}.github-md-dark.markdown-body ol ol,.github-md-dark.markdown-body ul ol{list-style-type:lower-roman}.github-md-dark.markdown-body ol ol ol,.github-md-dark.markdown-body ol ul ol,.github-md-dark.markdown-body ul ol ol,.github-md-dark.markdown-body ul ul ol{list-style-type:lower-alpha}.github-md-dark.markdown-body dd{margin-left:0}.github-md-dark.markdown-body code,.github-md-dark.markdown-body samp,.github-md-dark.markdown-body tt{font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,Liberation Mono,monospace;font-size:12px}.github-md-dark.markdown-body pre{margin-top:0;margin-bottom:0;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,Liberation Mono,monospace;font-size:12px;word-wrap:normal}.github-md-dark.markdown-body .octicon{display:inline-block;overflow:visible!important;vertical-align:text-bottom;fill:currentColor}.github-md-dark.markdown-body input::-webkit-inner-spin-button,.github-md-dark.markdown-body input::-webkit-outer-spin-button{margin:0;appearance:none}.github-md-dark.markdown-body .mr-2{margin-right:.5rem!important}.github-md-dark.markdown-body::before{display:table;content:""}.github-md-dark.markdown-body::after{display:table;clear:both;content:""}.github-md-dark.markdown-body>:first-child{margin-top:0!important}.github-md-dark.markdown-body>:last-child{margin-bottom:0!important}.github-md-dark.markdown-body a:not([href]){color:inherit;text-decoration:none}.github-md-dark.markdown-body .absent{color:#f85149}.github-md-dark.markdown-body .anchor{float:left;padding-right:.25rem;margin-left:-20px;line-height:1}.github-md-dark.markdown-body .anchor:focus{outline:0}.github-md-dark.markdown-body blockquote,.github-md-dark.markdown-body details,.github-md-dark.markdown-body dl,.github-md-dark.markdown-body ol,.github-md-dark.markdown-body p,.github-md-dark.markdown-body pre,.github-md-dark.markdown-body table,.github-md-dark.markdown-body ul{margin-top:0;margin-bottom:1rem}.github-md-dark.markdown-body blockquote>:first-child{margin-top:0}.github-md-dark.markdown-body blockquote>:last-child{margin-bottom:0}.github-md-dark.markdown-body h1 .octicon-link,.github-md-dark.markdown-body h2 .octicon-link,.github-md-dark.markdown-body h3 .octicon-link,.github-md-dark.markdown-body h4 .octicon-link,.github-md-dark.markdown-body h5 .octicon-link,.github-md-dark.markdown-body h6 .octicon-link{color:#f0f6fc;vertical-align:middle;visibility:hidden}.github-md-dark.markdown-body h1:hover .anchor,.github-md-dark.markdown-body h2:hover .anchor,.github-md-dark.markdown-body h3:hover .anchor,.github-md-dark.markdown-body h4:hover .anchor,.github-md-dark.markdown-body h5:hover .anchor,.github-md-dark.markdown-body h6:hover .anchor{text-decoration:none}.github-md-dark.markdown-body h1:hover .anchor .octicon-link,.github-md-dark.markdown-body h2:hover .anchor .octicon-link,.github-md-dark.markdown-body h3:hover .anchor .octicon-link,.github-md-dark.markdown-body h4:hover .anchor .octicon-link,.github-md-dark.markdown-body h5:hover .anchor .octicon-link,.github-md-dark.markdown-body h6:hover .anchor .octicon-link{visibility:visible}.github-md-dark.markdown-body h1 code,.github-md-dark.markdown-body h1 tt,.github-md-dark.markdown-body h2 code,.github-md-dark.markdown-body h2 tt,.github-md-dark.markdown-body h3 code,.github-md-dark.markdown-body h3 tt,.github-md-dark.markdown-body h4 code,.github-md-dark.markdown-body h4 tt,.github-md-dark.markdown-body h5 code,.github-md-dark.markdown-body h5 tt,.github-md-dark.markdown-body h6 code,.github-md-dark.markdown-body h6 tt{padding:0 .2em;font-size:inherit}.github-md-dark.markdown-body summary h1,.github-md-dark.markdown-body summary h2,.github-md-dark.markdown-body summary h3,.github-md-dark.markdown-body summary h4,.github-md-dark.markdown-body summary h5,.github-md-dark.markdown-body summary h6{display:inline-block}.github-md-dark.markdown-body summary h1 .anchor,.github-md-dark.markdown-body summary h2 .anchor,.github-md-dark.markdown-body summary h3 .anchor,.github-md-dark.markdown-body summary h4 .anchor,.github-md-dark.markdown-body summary h5 .anchor,.github-md-dark.markdown-body summary h6 .anchor{margin-left:-40px}.github-md-dark.markdown-body summary h1,.github-md-dark.markdown-body summary h2{padding-bottom:0;border-bottom:0}.github-md-dark.markdown-body ol.no-list,.github-md-dark.markdown-body ul.no-list{padding:0;list-style-type:none}.github-md-dark.markdown-body ol[type="a s"]{list-style-type:lower-alpha}.github-md-dark.markdown-body ol[type="A s"]{list-style-type:upper-alpha}.github-md-dark.markdown-body ol[type="i s"]{list-style-type:lower-roman}.github-md-dark.markdown-body ol[type="I s"]{list-style-type:upper-roman}.github-md-dark.markdown-body ol[type="1"]{list-style-type:decimal}.github-md-dark.markdown-body div>ol:not([type]){list-style-type:decimal}.github-md-dark.markdown-body ol ol,.github-md-dark.markdown-body ol ul,.github-md-dark.markdown-body ul ol,.github-md-dark.markdown-body ul ul{margin-top:0;margin-bottom:0}.github-md-dark.markdown-body li>p{margin-top:1rem}.github-md-dark.markdown-body li+li{margin-top:.25em}.github-md-dark.markdown-body dl{padding:0}.github-md-dark.markdown-body dl dt{padding:0;margin-top:1rem;font-size:1em;font-style:italic;font-weight:600}.github-md-dark.markdown-body dl dd{padding:0 1rem;margin-bottom:1rem}.github-md-dark.markdown-body table th{font-weight:600}.github-md-dark.markdown-body table td,.github-md-dark.markdown-body table th{padding:6px 13px;border:1px solid #3d444d}.github-md-dark.markdown-body table td>:last-child{margin-bottom:0}.github-md-dark.markdown-body table tr{background-color:#0d1117;border-top:1px solid #3d444db3}.github-md-dark.markdown-body table tr:nth-child(2n){background-color:#151b23}.github-md-dark.markdown-body table img{background-color:transparent}.github-md-dark.markdown-body img[align=right]{padding-left:20px}.github-md-dark.markdown-body img[align=left]{padding-right:20px}.github-md-dark.markdown-body .emoji{max-width:none;vertical-align:text-top;background-color:transparent}.github-md-dark.markdown-body span.frame{display:block;overflow:hidden}.github-md-dark.markdown-body span.frame>span{display:block;float:left;width:auto;padding:7px;margin:13px 0 0;overflow:hidden;border:1px solid #3d444d}.github-md-dark.markdown-body span.frame span img{display:block;float:left}.github-md-dark.markdown-body span.frame span span{display:block;padding:5px 0 0;clear:both;color:#f0f6fc}.github-md-dark.markdown-body span.align-center{display:block;overflow:hidden;clear:both}.github-md-dark.markdown-body span.align-center>span{display:block;margin:13px auto 0;overflow:hidden;text-align:center}.github-md-dark.markdown-body span.align-center span img{margin:0 auto;text-align:center}.github-md-dark.markdown-body span.align-right{display:block;overflow:hidden;clear:both}.github-md-dark.markdown-body span.align-right>span{display:block;margin:13px 0 0;overflow:hidden;text-align:right}.github-md-dark.markdown-body span.align-right span img{margin:0;text-align:right}.github-md-dark.markdown-body span.float-left{display:block;float:left;margin-right:13px;overflow:hidden}.github-md-dark.markdown-body span.float-left span{margin:13px 0 0}.github-md-dark.markdown-body span.float-right{display:block;float:right;margin-left:13px;overflow:hidden}.github-md-dark.markdown-body span.float-right>span{display:block;margin:13px auto 0;overflow:hidden;text-align:right}.github-md-dark.markdown-body code,.github-md-dark.markdown-body tt{padding:.2em .4em;margin:0;font-size:85%;white-space:break-spaces;background-color:#656c7633;border-radius:6px}.github-md-dark.markdown-body code br,.github-md-dark.markdown-body tt br{display:none}.github-md-dark.markdown-body del code{text-decoration:inherit}.github-md-dark.markdown-body samp{font-size:85%}.github-md-dark.markdown-body pre code{font-size:100%}.github-md-dark.markdown-body pre>code{padding:0;margin:0;word-break:normal;white-space:pre;background:0 0;border:0}.github-md-dark.markdown-body .highlight{margin-bottom:1rem}.github-md-dark.markdown-body .highlight pre{margin-bottom:0;word-break:normal}.github-md-dark.markdown-body .highlight pre,.github-md-dark.markdown-body pre{padding:1rem;overflow:auto;font-size:85%;line-height:1.45;color:#f0f6fc;background-color:#151b23;border-radius:6px}.github-md-dark.markdown-body pre code,.github-md-dark.markdown-body pre tt{display:inline;max-width:auto;padding:0;margin:0;overflow:visible;line-height:inherit;word-wrap:normal;background-color:transparent;border:0}.github-md-dark.markdown-body .csv-data td,.github-md-dark.markdown-body .csv-data th{padding:5px;overflow:hidden;font-size:12px;line-height:1;text-align:left;white-space:nowrap}.github-md-dark.markdown-body .csv-data .blob-num{padding:10px .5rem 9px;text-align:right;background:#0d1117;border:0}.github-md-dark.markdown-body .csv-data tr{border-top:0}.github-md-dark.markdown-body .csv-data th{font-weight:600;background:#151b23;border-top:0}.github-md-dark.markdown-body [data-footnote-ref]::before{content:"["}.github-md-dark.markdown-body [data-footnote-ref]::after{content:"]"}.github-md-dark.markdown-body .footnotes{font-size:12px;color:#9198a1;border-top:1px solid #3d444d}.github-md-dark.markdown-body .footnotes ol{padding-left:1rem}.github-md-dark.markdown-body .footnotes ol ul{display:inline-block;padding-left:1rem;margin-top:1rem}.github-md-dark.markdown-body .footnotes li{position:relative}.github-md-dark.markdown-body .footnotes li:target::before{position:absolute;top:calc(.5rem*-1);right:calc(.5rem*-1);bottom:calc(.5rem*-1);left:calc(1.5rem*-1);pointer-events:none;content:"";border:2px solid #1f6feb;border-radius:6px}.github-md-dark.markdown-body .footnotes li:target{color:#f0f6fc}.github-md-dark.markdown-body .footnotes .data-footnote-backref g-emoji{font-family:monospace}.github-md-dark.markdown-body body:has(:modal){padding-right:var(--dialog-scrollgutter)!important}.github-md-dark.markdown-body .pl-c{color:#9198a1}.github-md-dark.markdown-body .pl-c1,.github-md-dark.markdown-body .pl-s .pl-v{color:#79c0ff}.github-md-dark.markdown-body .pl-e,.github-md-dark.markdown-body .pl-en{color:#d2a8ff}.github-md-dark.markdown-body .pl-s .pl-s1,.github-md-dark.markdown-body .pl-smi{color:#f0f6fc}.github-md-dark.markdown-body .pl-ent{color:#7ee787}.github-md-dark.markdown-body .pl-k{color:#ff7b72}.github-md-dark.markdown-body .pl-pds,.github-md-dark.markdown-body .pl-s,.github-md-dark.markdown-body .pl-s .pl-pse .pl-s1,.github-md-dark.markdown-body .pl-sr,.github-md-dark.markdown-body .pl-sr .pl-cce,.github-md-dark.markdown-body .pl-sr .pl-sra,.github-md-dark.markdown-body .pl-sr .pl-sre{color:#a5d6ff}.github-md-dark.markdown-body .pl-smw,.github-md-dark.markdown-body .pl-v{color:#ffa657}.github-md-dark.markdown-body .pl-bu{color:#f85149}.github-md-dark.markdown-body .pl-ii{color:#f0f6fc;background-color:#8e1519}.github-md-dark.markdown-body .pl-c2{color:#f0f6fc;background-color:#b62324}.github-md-dark.markdown-body .pl-sr .pl-cce{font-weight:700;color:#7ee787}.github-md-dark.markdown-body .pl-ml{color:#f2cc60}.github-md-dark.markdown-body .pl-mh,.github-md-dark.markdown-body .pl-mh .pl-en,.github-md-dark.markdown-body .pl-ms{font-weight:700;color:#1f6feb}.github-md-dark.markdown-body .pl-mi{font-style:italic;color:#f0f6fc}.github-md-dark.markdown-body .pl-mb{font-weight:700;color:#f0f6fc}.github-md-dark.markdown-body .pl-md{color:#ffdcd7;background-color:#67060c}.github-md-dark.markdown-body .pl-mi1{color:#aff5b4;background-color:#033a16}.github-md-dark.markdown-body .pl-mc{color:#ffdfb6;background-color:#5a1e02}.github-md-dark.markdown-body .pl-mi2{color:#f0f6fc;background-color:#1158c7}.github-md-dark.markdown-body .pl-mdr{font-weight:700;color:#d2a8ff}.github-md-dark.markdown-body .pl-ba{color:#9198a1}.github-md-dark.markdown-body .pl-sg{color:#3d444d}.github-md-dark.markdown-body .pl-corl{text-decoration:underline;color:#a5d6ff}.github-md-dark.markdown-body [role=button]:focus:not(:focus-visible),.github-md-dark.markdown-body [role=tabpanel][tabindex="0"]:focus:not(:focus-visible),.github-md-dark.markdown-body a:focus:not(:focus-visible),.github-md-dark.markdown-body button:focus:not(:focus-visible),.github-md-dark.markdown-body summary:focus:not(:focus-visible){outline:0;box-shadow:none}.github-md-dark.markdown-body [tabindex="0"]:focus:not(:focus-visible),.github-md-dark.markdown-body details-dialog:focus:not(:focus-visible){outline:0}.github-md-dark.markdown-body g-emoji{display:inline-block;min-width:1ch;font-family:"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";font-size:1em;font-style:normal!important;font-weight:400;line-height:1;vertical-align:-.075em}.github-md-dark.markdown-body g-emoji img{width:1em;height:1em}.github-md-dark.markdown-body .task-list-item{list-style-type:none}.github-md-dark.markdown-body .task-list-item label{font-weight:400}.github-md-dark.markdown-body .task-list-item.enabled label{cursor:pointer}.github-md-dark.markdown-body .task-list-item+.task-list-item{margin-top:.25rem}.github-md-dark.markdown-body .task-list-item .handle{display:none}.github-md-dark.markdown-body .task-list-item-checkbox{margin:0 .2em .25em -1.4em;vertical-align:middle}.github-md-dark.markdown-body ul:dir(rtl) .task-list-item-checkbox{margin:0 -1.6em .25em .2em}.github-md-dark.markdown-body ol:dir(rtl) .task-list-item-checkbox{margin:0 -1.6em .25em .2em}.github-md-dark.markdown-body .contains-task-list:focus-within .task-list-item-convert-container,.github-md-dark.markdown-body .contains-task-list:hover .task-list-item-convert-container{display:block;width:auto;height:24px;overflow:visible;clip:auto}.github-md-dark.markdown-body ::-webkit-calendar-picker-indicator{filter:invert(50%)}.github-md-dark.markdown-body .markdown-alert{padding:.5rem 1rem;margin-bottom:1rem;color:inherit;border-left:.25em solid #3d444d}.github-md-dark.markdown-body .markdown-alert>:first-child{margin-top:0}.github-md-dark.markdown-body .markdown-alert>:last-child{margin-bottom:0}.github-md-dark.markdown-body .markdown-alert .markdown-alert-title{display:flex;font-weight:500;align-items:center;line-height:1}.github-md-dark.markdown-body .markdown-alert.markdown-alert-note{border-left-color:#1f6feb}.github-md-dark.markdown-body .markdown-alert.markdown-alert-note .markdown-alert-title{color:#4493f8}.github-md-dark.markdown-body .markdown-alert.markdown-alert-important{border-left-color:#8957e5}.github-md-dark.markdown-body .markdown-alert.markdown-alert-important .markdown-alert-title{color:#ab7df8}.github-md-dark.markdown-body .markdown-alert.markdown-alert-warning{border-left-color:#9e6a03}.github-md-dark.markdown-body .markdown-alert.markdown-alert-warning .markdown-alert-title{color:#d29922}.github-md-dark.markdown-body .markdown-alert.markdown-alert-tip{border-left-color:#238636}.github-md-dark.markdown-body .markdown-alert.markdown-alert-tip .markdown-alert-title{color:#3fb950}.github-md-dark.markdown-body .markdown-alert.markdown-alert-caution{border-left-color:#da3633}.github-md-dark.markdown-body .markdown-alert.markdown-alert-caution .markdown-alert-title{color:#f85149}.github-md-dark.markdown-body>:first-child>.heading-element:first-child{margin-top:0!important}.github-md-dark.markdown-body .highlight pre:has(+.zeroclipboard-container){min-height:52px}.markdown-body{color-scheme:light;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;margin:0;color:#1f2328;background-color:#fff;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans",Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";font-size:16px;line-height:1.5;word-wrap:break-word}.markdown-body .octicon{display:inline-block;fill:currentColor;vertical-align:text-bottom}.markdown-body h1:hover .anchor .octicon-link:before,.markdown-body h2:hover .anchor .octicon-link:before,.markdown-body h3:hover .anchor .octicon-link:before,.markdown-body h4:hover .anchor .octicon-link:before,.markdown-body h5:hover .anchor .octicon-link:before,.markdown-body h6:hover .anchor .octicon-link:before{width:16px;height:16px;content:' ';display:inline-block;background-color:currentColor;-webkit-mask-image:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' version='1.1' aria-hidden='true'><path fill-rule='evenodd' d='M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z'></path></svg>");mask-image:url("data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' version='1.1' aria-hidden='true'><path fill-rule='evenodd' d='M7.775 3.275a.75.75 0 001.06 1.06l1.25-1.25a2 2 0 112.83 2.83l-2.5 2.5a2 2 0 01-2.83 0 .75.75 0 00-1.06 1.06 3.5 3.5 0 004.95 0l2.5-2.5a3.5 3.5 0 00-4.95-4.95l-1.25 1.25zm-4.69 9.64a2 2 0 010-2.83l2.5-2.5a2 2 0 012.83 0 .75.75 0 001.06-1.06 3.5 3.5 0 00-4.95 0l-2.5 2.5a3.5 3.5 0 004.95 4.95l1.25-1.25a.75.75 0 00-1.06-1.06l-1.25 1.25a2 2 0 01-2.83 0z'></path></svg>")}.markdown-body details,.markdown-body figcaption,.markdown-body figure{display:block}.markdown-body summary{display:list-item}.markdown-body [hidden]{display:none!important}.markdown-body a{background-color:transparent;color:#0969da;text-decoration:none}.markdown-body abbr[title]{border-bottom:none;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.markdown-body b,.markdown-body strong{font-weight:600}.markdown-body dfn{font-style:italic}.markdown-body h1{margin:.67em 0;font-weight:600;padding-bottom:.3em;font-size:2em;border-bottom:1px solid #d1d9e0b3}.markdown-body mark{background-color:#fff8c5;color:#1f2328}.markdown-body small{font-size:90%}.markdown-body sub,.markdown-body sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}.markdown-body sub{bottom:-.25em}.markdown-body sup{top:-.5em}.markdown-body img{border-style:none;max-width:100%;box-sizing:content-box}.markdown-body code,.markdown-body kbd,.markdown-body pre,.markdown-body samp{font-family:monospace;font-size:1em}.markdown-body figure{margin:1em 2.5rem}.markdown-body hr{box-sizing:content-box;overflow:hidden;background:0 0;border-bottom:1px solid #d1d9e0b3;height:.25em;padding:0;margin:1.5rem 0;background-color:#d1d9e0;border:0}.markdown-body input{font:inherit;margin:0;overflow:visible;font-family:inherit;font-size:inherit;line-height:inherit}.markdown-body [type=button],.markdown-body [type=reset],.markdown-body [type=submit]{-webkit-appearance:button;appearance:button}.markdown-body [type=checkbox],.markdown-body [type=radio]{box-sizing:border-box;padding:0}.markdown-body [type=number]::-webkit-inner-spin-button,.markdown-body [type=number]::-webkit-outer-spin-button{height:auto}.markdown-body [type=search]::-webkit-search-cancel-button,.markdown-body [type=search]::-webkit-search-decoration{-webkit-appearance:none;appearance:none}.markdown-body ::-webkit-input-placeholder{color:inherit;opacity:.54}.markdown-body ::-webkit-file-upload-button{-webkit-appearance:button;appearance:button;font:inherit}.markdown-body a:hover{text-decoration:underline}.markdown-body ::placeholder{color:#59636e;opacity:1}.markdown-body hr::before{display:table;content:""}.markdown-body hr::after{display:table;clear:both;content:""}.markdown-body table{border-spacing:0;border-collapse:collapse;display:block;width:max-content;max-width:100%;overflow:auto;font-variant:tabular-nums}.markdown-body td,.markdown-body th{padding:0}.markdown-body details summary{cursor:pointer}.markdown-body [role=button]:focus,.markdown-body a:focus,.markdown-body input[type=checkbox]:focus,.markdown-body input[type=radio]:focus{outline:2px solid #0969da;outline-offset:-2px;box-shadow:none}.markdown-body [role=button]:focus:not(:focus-visible),.markdown-body a:focus:not(:focus-visible),.markdown-body input[type=checkbox]:focus:not(:focus-visible),.markdown-body input[type=radio]:focus:not(:focus-visible){outline:solid 1px transparent}.markdown-body [role=button]:focus-visible,.markdown-body a:focus-visible,.markdown-body input[type=checkbox]:focus-visible,.markdown-body input[type=radio]:focus-visible{outline:2px solid #0969da;outline-offset:-2px;box-shadow:none}.markdown-body a:not([class]):focus,.markdown-body a:not([class]):focus-visible,.markdown-body input[type=checkbox]:focus,.markdown-body input[type=checkbox]:focus-visible,.markdown-body input[type=radio]:focus,.markdown-body input[type=radio]:focus-visible{outline-offset:0}.markdown-body kbd{display:inline-block;padding:.25rem;font:11px ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,Liberation Mono,monospace;line-height:10px;color:#1f2328;vertical-align:middle;background-color:#f6f8fa;border:solid 1px #d1d9e0b3;border-bottom-color:#d1d9e0b3;border-radius:6px;box-shadow:inset 0 -1px 0 #d1d9e0b3}.markdown-body h1,.markdown-body h2,.markdown-body h3,.markdown-body h4,.markdown-body h5,.markdown-body h6{margin-top:1.5rem;margin-bottom:1rem;font-weight:600;line-height:1.25}.markdown-body h2{font-weight:600;padding-bottom:.3em;font-size:1.5em;border-bottom:1px solid #d1d9e0b3}.markdown-body h3{font-weight:600;font-size:1.25em}.markdown-body h4{font-weight:600;font-size:1em}.markdown-body h5{font-weight:600;font-size:.875em}.markdown-body h6{font-weight:600;font-size:.85em;color:#59636e}.markdown-body p{margin-top:0;margin-bottom:10px}.markdown-body blockquote{margin:0;padding:0 1em;color:#59636e;border-left:.25em solid #d1d9e0}.markdown-body ol,.markdown-body ul{margin-top:0;margin-bottom:0;padding-left:2em}.markdown-body ol ol,.markdown-body ul ol{list-style-type:lower-roman}.markdown-body ol ol ol,.markdown-body ol ul ol,.markdown-body ul ol ol,.markdown-body ul ul ol{list-style-type:lower-alpha}.markdown-body dd{margin-left:0}.markdown-body code,.markdown-body samp,.markdown-body tt{font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,Liberation Mono,monospace;font-size:12px}.markdown-body pre{margin-top:0;margin-bottom:0;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,Liberation Mono,monospace;font-size:12px;word-wrap:normal}.markdown-body .octicon{display:inline-block;overflow:visible!important;vertical-align:text-bottom;fill:currentColor}.markdown-body input::-webkit-inner-spin-button,.markdown-body input::-webkit-outer-spin-button{margin:0;appearance:none}.markdown-body .mr-2{margin-right:.5rem!important}.markdown-body::before{display:table;content:""}.markdown-body::after{display:table;clear:both;content:""}.markdown-body>:first-child{margin-top:0!important}.markdown-body>:last-child{margin-bottom:0!important}.markdown-body a:not([href]){color:inherit;text-decoration:none}.markdown-body .absent{color:#d1242f}.markdown-body .anchor{float:left;padding-right:.25rem;margin-left:-20px;line-height:1}.markdown-body .anchor:focus{outline:0}.markdown-body blockquote,.markdown-body details,.markdown-body dl,.markdown-body ol,.markdown-body p,.markdown-body pre,.markdown-body table,.markdown-body ul{margin-top:0;margin-bottom:1rem}.markdown-body blockquote>:first-child{margin-top:0}.markdown-body blockquote>:last-child{margin-bottom:0}.markdown-body h1 .octicon-link,.markdown-body h2 .octicon-link,.markdown-body h3 .octicon-link,.markdown-body h4 .octicon-link,.markdown-body h5 .octicon-link,.markdown-body h6 .octicon-link{color:#1f2328;vertical-align:middle;visibility:hidden}.markdown-body h1:hover .anchor,.markdown-body h2:hover .anchor,.markdown-body h3:hover .anchor,.markdown-body h4:hover .anchor,.markdown-body h5:hover .anchor,.markdown-body h6:hover .anchor{text-decoration:none}.markdown-body h1:hover .anchor .octicon-link,.markdown-body h2:hover .anchor .octicon-link,.markdown-body h3:hover .anchor .octicon-link,.markdown-body h4:hover .anchor .octicon-link,.markdown-body h5:hover .anchor .octicon-link,.markdown-body h6:hover .anchor .octicon-link{visibility:visible}.markdown-body h1 code,.markdown-body h1 tt,.markdown-body h2 code,.markdown-body h2 tt,.markdown-body h3 code,.markdown-body h3 tt,.markdown-body h4 code,.markdown-body h4 tt,.markdown-body h5 code,.markdown-body h5 tt,.markdown-body h6 code,.markdown-body h6 tt{padding:0 .2em;font-size:inherit}.markdown-body summary h1,.markdown-body summary h2,.markdown-body summary h3,.markdown-body summary h4,.markdown-body summary h5,.markdown-body summary h6{display:inline-block}.markdown-body summary h1 .anchor,.markdown-body summary h2 .anchor,.markdown-body summary h3 .anchor,.markdown-body summary h4 .anchor,.markdown-body summary h5 .anchor,.markdown-body summary h6 .anchor{margin-left:-40px}.markdown-body summary h1,.markdown-body summary h2{padding-bottom:0;border-bottom:0}.markdown-body ol.no-list,.markdown-body ul.no-list{padding:0;list-style-type:none}.markdown-body ol[type="a s"]{list-style-type:lower-alpha}.markdown-body ol[type="A s"]{list-style-type:upper-alpha}.markdown-body ol[type="i s"]{list-style-type:lower-roman}.markdown-body ol[type="I s"]{list-style-type:upper-roman}.markdown-body ol[type="1"]{list-style-type:decimal}.markdown-body div>ol:not([type]){list-style-type:decimal}.markdown-body ol ol,.markdown-body ol ul,.markdown-body ul ol,.markdown-body ul ul{margin-top:0;margin-bottom:0}.markdown-body li>p{margin-top:1rem}.markdown-body li+li{margin-top:.25em}.markdown-body dl{padding:0}.markdown-body dl dt{padding:0;margin-top:1rem;font-size:1em;font-style:italic;font-weight:600}.markdown-body dl dd{padding:0 1rem;margin-bottom:1rem}.markdown-body table th{font-weight:600}.markdown-body table td,.markdown-body table th{padding:6px 13px;border:1px solid #d1d9e0}.markdown-body table td>:last-child{margin-bottom:0}.markdown-body table tr{background-color:#fff;border-top:1px solid #d1d9e0b3}.markdown-body table tr:nth-child(2n){background-color:#f6f8fa}.markdown-body table img{background-color:transparent}.markdown-body img[align=right]{padding-left:20px}.markdown-body img[align=left]{padding-right:20px}.markdown-body .emoji{max-width:none;vertical-align:text-top;background-color:transparent}.markdown-body span.frame{display:block;overflow:hidden}.markdown-body span.frame>span{display:block;float:left;width:auto;padding:7px;margin:13px 0 0;overflow:hidden;border:1px solid #d1d9e0}.markdown-body span.frame span img{display:block;float:left}.markdown-body span.frame span span{display:block;padding:5px 0 0;clear:both;color:#1f2328}.markdown-body span.align-center{display:block;overflow:hidden;clear:both}.markdown-body span.align-center>span{display:block;margin:13px auto 0;overflow:hidden;text-align:center}.markdown-body span.align-center span img{margin:0 auto;text-align:center}.markdown-body span.align-right{display:block;overflow:hidden;clear:both}.markdown-body span.align-right>span{display:block;margin:13px 0 0;overflow:hidden;text-align:right}.markdown-body span.align-right span img{margin:0;text-align:right}.markdown-body span.float-left{display:block;float:left;margin-right:13px;overflow:hidden}.markdown-body span.float-left span{margin:13px 0 0}.markdown-body span.float-right{display:block;float:right;margin-left:13px;overflow:hidden}.markdown-body span.float-right>span{display:block;margin:13px auto 0;overflow:hidden;text-align:right}.markdown-body code,.markdown-body tt{padding:.2em .4em;margin:0;font-size:85%;white-space:break-spaces;background-color:#818b981f;border-radius:6px}.markdown-body code br,.markdown-body tt br{display:none}.markdown-body del code{text-decoration:inherit}.markdown-body samp{font-size:85%}.markdown-body pre code{font-size:100%}.markdown-body pre>code{padding:0;margin:0;word-break:normal;white-space:pre;background:0 0;border:0}.markdown-body .highlight{margin-bottom:1rem}.markdown-body .highlight pre{margin-bottom:0;word-break:normal}.markdown-body .highlight pre,.markdown-body pre{padding:1rem;overflow:auto;font-size:85%;line-height:1.45;color:#1f2328;background-color:#f6f8fa;border-radius:6px}.markdown-body pre code,.markdown-body pre tt{display:inline;max-width:auto;padding:0;margin:0;overflow:visible;line-height:inherit;word-wrap:normal;background-color:transparent;border:0}.markdown-body .csv-data td,.markdown-body .csv-data th{padding:5px;overflow:hidden;font-size:12px;line-height:1;text-align:left;white-space:nowrap}.markdown-body .csv-data .blob-num{padding:10px .5rem 9px;text-align:right;background:#fff;border:0}.markdown-body .csv-data tr{border-top:0}.markdown-body .csv-data th{font-weight:600;background:#f6f8fa;border-top:0}.markdown-body [data-footnote-ref]::before{content:"["}.markdown-body [data-footnote-ref]::after{content:"]"}.markdown-body .footnotes{font-size:12px;color:#59636e;border-top:1px solid #d1d9e0}.markdown-body .footnotes ol{padding-left:1rem}.markdown-body .footnotes ol ul{display:inline-block;padding-left:1rem;margin-top:1rem}.markdown-body .footnotes li{position:relative}.markdown-body .footnotes li:target::before{position:absolute;top:calc(.5rem*-1);right:calc(.5rem*-1);bottom:calc(.5rem*-1);left:calc(1.5rem*-1);pointer-events:none;content:"";border:2px solid #0969da;border-radius:6px}.markdown-body .footnotes li:target{color:#1f2328}.markdown-body .footnotes .data-footnote-backref g-emoji{font-family:monospace}.markdown-body body:has(:modal){padding-right:var(--dialog-scrollgutter)!important}.markdown-body .pl-c{color:#59636e}.markdown-body .pl-c1,.markdown-body .pl-s .pl-v{color:#0550ae}.markdown-body .pl-e,.markdown-body .pl-en{color:#6639ba}.markdown-body .pl-s .pl-s1,.markdown-body .pl-smi{color:#1f2328}.markdown-body .pl-ent{color:#0550ae}.markdown-body .pl-k{color:#cf222e}.markdown-body .pl-pds,.markdown-body .pl-s,.markdown-body .pl-s .pl-pse .pl-s1,.markdown-body .pl-sr,.markdown-body .pl-sr .pl-cce,.markdown-body .pl-sr .pl-sra,.markdown-body .pl-sr .pl-sre{color:#0a3069}.markdown-body .pl-smw,.markdown-body .pl-v{color:#953800}.markdown-body .pl-bu{color:#82071e}.markdown-body .pl-ii{color:#f6f8fa;background-color:#82071e}.markdown-body .pl-c2{color:#f6f8fa;background-color:#cf222e}.markdown-body .pl-sr .pl-cce{font-weight:700;color:#116329}.markdown-body .pl-ml{color:#3b2300}.markdown-body .pl-mh,.markdown-body .pl-mh .pl-en,.markdown-body .pl-ms{font-weight:700;color:#0550ae}.markdown-body .pl-mi{font-style:italic;color:#1f2328}.markdown-body .pl-mb{font-weight:700;color:#1f2328}.markdown-body .pl-md{color:#82071e;background-color:#ffebe9}.markdown-body .pl-mi1{color:#116329;background-color:#dafbe1}.markdown-body .pl-mc{color:#953800;background-color:#ffd8b5}.markdown-body .pl-mi2{color:#d1d9e0;background-color:#0550ae}.markdown-body .pl-mdr{font-weight:700;color:#8250df}.markdown-body .pl-ba{color:#59636e}.markdown-body .pl-sg{color:#818b98}.markdown-body .pl-corl{text-decoration:underline;color:#0a3069}.markdown-body [role=button]:focus:not(:focus-visible),.markdown-body [role=tabpanel][tabindex="0"]:focus:not(:focus-visible),.markdown-body a:focus:not(:focus-visible),.markdown-body button:focus:not(:focus-visible),.markdown-body summary:focus:not(:focus-visible){outline:0;box-shadow:none}.markdown-body [tabindex="0"]:focus:not(:focus-visible),.markdown-body details-dialog:focus:not(:focus-visible){outline:0}.markdown-body g-emoji{display:inline-block;min-width:1ch;font-family:"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol";font-size:1em;font-style:normal!important;font-weight:400;line-height:1;vertical-align:-.075em}.markdown-body g-emoji img{width:1em;height:1em}.markdown-body .task-list-item{list-style-type:none}.markdown-body .task-list-item label{font-weight:400}.markdown-body .task-list-item.enabled label{cursor:pointer}.markdown-body .task-list-item+.task-list-item{margin-top:.25rem}.markdown-body .task-list-item .handle{display:none}.markdown-body .task-list-item-checkbox{margin:0 .2em .25em -1.4em;vertical-align:middle}.markdown-body ul:dir(rtl) .task-list-item-checkbox{margin:0 -1.6em .25em .2em}.markdown-body ol:dir(rtl) .task-list-item-checkbox{margin:0 -1.6em .25em .2em}.markdown-body .contains-task-list:focus-within .task-list-item-convert-container,.markdown-body .contains-task-list:hover .task-list-item-convert-container{display:block;width:auto;height:24px;overflow:visible;clip:auto}.markdown-body ::-webkit-calendar-picker-indicator{filter:invert(50%)}.markdown-body .markdown-alert{padding:.5rem 1rem;margin-bottom:1rem;color:inherit;border-left:.25em solid #d1d9e0}.markdown-body .markdown-alert>:first-child{margin-top:0}.markdown-body .markdown-alert>:last-child{margin-bottom:0}.markdown-body .markdown-alert .markdown-alert-title{display:flex;font-weight:500;align-items:center;line-height:1}.markdown-body .markdown-alert.markdown-alert-note{border-left-color:#0969da}.markdown-body .markdown-alert.markdown-alert-note .markdown-alert-title{color:#0969da}.markdown-body .markdown-alert.markdown-alert-important{border-left-color:#8250df}.markdown-body .markdown-alert.markdown-alert-important .markdown-alert-title{color:#8250df}.markdown-body .markdown-alert.markdown-alert-warning{border-left-color:#9a6700}.markdown-body .markdown-alert.markdown-alert-warning .markdown-alert-title{color:#9a6700}.markdown-body .markdown-alert.markdown-alert-tip{border-left-color:#1a7f37}.markdown-body .markdown-alert.markdown-alert-tip .markdown-alert-title{color:#1a7f37}.markdown-body .markdown-alert.markdown-alert-caution{border-left-color:#cf222e}.markdown-body .markdown-alert.markdown-alert-caution .markdown-alert-title{color:#d1242f}.markdown-body>:first-child>.heading-element:first-child{margin-top:0!important}.markdown-body .highlight pre:has(+.zeroclipboard-container){min-height:52px}.markdown-body :is(ul,ol,menu){list-style: unset;}
|
@@ -2577,4 +2577,3 @@ const parser = _Parser.parse;
|
|
2577
2577
|
const lexer = _Lexer.lex;
|
2578
2578
|
|
2579
2579
|
export { _Hooks as Hooks, _Lexer as Lexer, Marked, _Parser as Parser, _Renderer as Renderer, _TextRenderer as TextRenderer, _Tokenizer as Tokenizer, _defaults as defaults, _getDefaults as getDefaults, lexer, marked, options, parse, parseInline, parser, setOptions, use, walkTokens };
|
2580
|
-
//# sourceMappingURL=marked.esm.js.map
|