reactpy 2.0.0b6__py3-none-any.whl → 2.0.0b7__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.
- reactpy/__init__.py +2 -2
- reactpy/config.py +1 -1
- reactpy/core/_thread_local.py +1 -1
- reactpy/core/hooks.py +11 -19
- reactpy/executors/asgi/pyscript.py +4 -1
- reactpy/executors/asgi/standalone.py +1 -1
- reactpy/{pyscript → executors/pyscript}/component_template.py +1 -1
- reactpy/{pyscript → executors/pyscript}/components.py +1 -1
- reactpy/executors/utils.py +32 -7
- reactpy/reactjs/__init__.py +2 -4
- reactpy/reactjs/module.py +106 -42
- reactpy/reactjs/utils.py +49 -20
- reactpy/static/{index-sbddj6ms.js → index-64wy0fss.js} +4 -4
- reactpy/static/{index-sbddj6ms.js.map → index-64wy0fss.js.map} +1 -1
- reactpy/static/index-beq660xy.js +5 -0
- reactpy/static/index-beq660xy.js.map +12 -0
- reactpy/static/index.js +2 -2
- reactpy/static/index.js.map +6 -5
- reactpy/static/preact-dom.js +4 -0
- reactpy/static/{react-dom.js.map → preact-dom.js.map} +3 -3
- reactpy/static/preact-jsx-runtime.js +4 -0
- reactpy/static/{react-jsx-runtime.js.map → preact-jsx-runtime.js.map} +1 -1
- reactpy/static/preact.js +4 -0
- reactpy/static/{react.js.map → preact.js.map} +3 -3
- reactpy/templatetags/jinja.py +4 -1
- reactpy/testing/__init__.py +2 -7
- reactpy/testing/backend.py +20 -8
- reactpy/testing/common.py +1 -9
- reactpy/testing/display.py +68 -32
- {reactpy-2.0.0b6.dist-info → reactpy-2.0.0b7.dist-info}/METADATA +1 -1
- {reactpy-2.0.0b6.dist-info → reactpy-2.0.0b7.dist-info}/RECORD +37 -40
- reactpy/static/index-h31022cd.js +0 -5
- reactpy/static/index-h31022cd.js.map +0 -11
- reactpy/static/index-y71bxs88.js +0 -5
- reactpy/static/index-y71bxs88.js.map +0 -10
- reactpy/static/react-dom.js +0 -4
- reactpy/static/react-jsx-runtime.js +0 -4
- reactpy/static/react.js +0 -4
- reactpy/testing/utils.py +0 -27
- /reactpy/{pyscript → executors/pyscript}/__init__.py +0 -0
- /reactpy/{pyscript → executors/pyscript}/layout_handler.py +0 -0
- /reactpy/{pyscript → executors/pyscript}/utils.py +0 -0
- {reactpy-2.0.0b6.dist-info → reactpy-2.0.0b7.dist-info}/WHEEL +0 -0
- {reactpy-2.0.0b6.dist-info → reactpy-2.0.0b7.dist-info}/entry_points.txt +0 -0
- {reactpy-2.0.0b6.dist-info → reactpy-2.0.0b7.dist-info}/licenses/LICENSE +0 -0
reactpy/__init__.py
CHANGED
|
@@ -19,11 +19,11 @@ from reactpy.core.hooks import (
|
|
|
19
19
|
use_state,
|
|
20
20
|
)
|
|
21
21
|
from reactpy.core.vdom import Vdom
|
|
22
|
-
from reactpy.pyscript.components import pyscript_component
|
|
22
|
+
from reactpy.executors.pyscript.components import pyscript_component
|
|
23
23
|
from reactpy.utils import Ref, reactpy_to_string, string_to_reactpy
|
|
24
24
|
|
|
25
25
|
__author__ = "The Reactive Python Team"
|
|
26
|
-
__version__ = "2.0.
|
|
26
|
+
__version__ = "2.0.0b7"
|
|
27
27
|
|
|
28
28
|
__all__ = [
|
|
29
29
|
"Ref",
|
reactpy/config.py
CHANGED
reactpy/core/_thread_local.py
CHANGED
|
@@ -8,7 +8,7 @@ _StateType = TypeVar("_StateType")
|
|
|
8
8
|
|
|
9
9
|
class ThreadLocal(Generic[_StateType]): # nocov
|
|
10
10
|
"""Utility for managing per-thread state information. This is only used in
|
|
11
|
-
environments where ContextVars are not available, such as the `
|
|
11
|
+
environments where ContextVars are not available, such as the `pyscript`
|
|
12
12
|
executor."""
|
|
13
13
|
|
|
14
14
|
def __init__(self, default: Callable[[], _StateType]):
|
reactpy/core/hooks.py
CHANGED
|
@@ -84,11 +84,7 @@ class _CurrentState(Generic[_Type]):
|
|
|
84
84
|
self,
|
|
85
85
|
initial_value: _Type | Callable[[], _Type],
|
|
86
86
|
) -> None:
|
|
87
|
-
if callable(initial_value)
|
|
88
|
-
self.value = initial_value()
|
|
89
|
-
else:
|
|
90
|
-
self.value = initial_value
|
|
91
|
-
|
|
87
|
+
self.value = initial_value() if callable(initial_value) else initial_value
|
|
92
88
|
hook = HOOK_STACK.current_hook()
|
|
93
89
|
|
|
94
90
|
def dispatch(new: _Type | Callable[[_Type], _Type]) -> None:
|
|
@@ -434,10 +430,7 @@ def use_callback(
|
|
|
434
430
|
def setup(function: _CallbackFunc) -> _CallbackFunc:
|
|
435
431
|
return memoize(lambda: function)
|
|
436
432
|
|
|
437
|
-
if function is not None
|
|
438
|
-
return setup(function)
|
|
439
|
-
else:
|
|
440
|
-
return setup
|
|
433
|
+
return setup(function) if function is not None else setup
|
|
441
434
|
|
|
442
435
|
|
|
443
436
|
class _LambdaCaller(Protocol):
|
|
@@ -553,17 +546,16 @@ def _try_to_infer_closure_values(
|
|
|
553
546
|
func: Callable[..., Any] | None,
|
|
554
547
|
values: Sequence[Any] | ellipsis | None,
|
|
555
548
|
) -> Sequence[Any] | None:
|
|
556
|
-
if values is ...:
|
|
557
|
-
if isinstance(func, FunctionType):
|
|
558
|
-
return (
|
|
559
|
-
[cell.cell_contents for cell in func.__closure__]
|
|
560
|
-
if func.__closure__
|
|
561
|
-
else []
|
|
562
|
-
)
|
|
563
|
-
else:
|
|
564
|
-
return None
|
|
565
|
-
else:
|
|
549
|
+
if values is not ...:
|
|
566
550
|
return values
|
|
551
|
+
if isinstance(func, FunctionType):
|
|
552
|
+
return (
|
|
553
|
+
[cell.cell_contents for cell in func.__closure__]
|
|
554
|
+
if func.__closure__
|
|
555
|
+
else []
|
|
556
|
+
)
|
|
557
|
+
else:
|
|
558
|
+
return None
|
|
567
559
|
|
|
568
560
|
|
|
569
561
|
def strictly_equal(x: Any, y: Any) -> bool:
|
|
@@ -13,8 +13,11 @@ from reactpy import html
|
|
|
13
13
|
from reactpy.executors.asgi.middleware import ReactPyMiddleware
|
|
14
14
|
from reactpy.executors.asgi.standalone import ReactPy, ReactPyApp
|
|
15
15
|
from reactpy.executors.asgi.types import AsgiWebsocketScope
|
|
16
|
+
from reactpy.executors.pyscript.utils import (
|
|
17
|
+
pyscript_component_html,
|
|
18
|
+
pyscript_setup_html,
|
|
19
|
+
)
|
|
16
20
|
from reactpy.executors.utils import vdom_head_to_html
|
|
17
|
-
from reactpy.pyscript.utils import pyscript_component_html, pyscript_setup_html
|
|
18
21
|
from reactpy.types import ReactPyConfig, VdomDict
|
|
19
22
|
|
|
20
23
|
|
|
@@ -23,8 +23,8 @@ from reactpy.executors.asgi.types import (
|
|
|
23
23
|
AsgiV3WebsocketApp,
|
|
24
24
|
AsgiWebsocketScope,
|
|
25
25
|
)
|
|
26
|
+
from reactpy.executors.pyscript.utils import pyscript_setup_html
|
|
26
27
|
from reactpy.executors.utils import server_side_component_html, vdom_head_to_html
|
|
27
|
-
from reactpy.pyscript.utils import pyscript_setup_html
|
|
28
28
|
from reactpy.types import (
|
|
29
29
|
PyScriptOptions,
|
|
30
30
|
ReactPyConfig,
|
|
@@ -4,7 +4,7 @@ from pathlib import Path
|
|
|
4
4
|
from typing import TYPE_CHECKING
|
|
5
5
|
|
|
6
6
|
from reactpy import component, hooks
|
|
7
|
-
from reactpy.pyscript.utils import pyscript_component_html
|
|
7
|
+
from reactpy.executors.pyscript.utils import pyscript_component_html
|
|
8
8
|
from reactpy.types import Component, Key
|
|
9
9
|
from reactpy.utils import string_to_reactpy
|
|
10
10
|
|
reactpy/executors/utils.py
CHANGED
|
@@ -64,16 +64,41 @@ def server_side_component_html(
|
|
|
64
64
|
) -> str:
|
|
65
65
|
return (
|
|
66
66
|
f'<div id="{element_id}" class="{class_}"></div>'
|
|
67
|
+
"<script>"
|
|
68
|
+
'if (!document.querySelector("#reactpy-importmap")) {'
|
|
69
|
+
" console.debug("
|
|
70
|
+
' "ReactPy did not detect a suitable JavaScript import map. Falling back to ReactPy\'s internal framework (Preact)."'
|
|
71
|
+
" );"
|
|
72
|
+
' const im = document.createElement("script");'
|
|
73
|
+
' im.type = "importmap";'
|
|
74
|
+
f" im.textContent = '{default_import_map()}';"
|
|
75
|
+
' im.id = "reactpy-importmap";'
|
|
76
|
+
" document.head.appendChild(im);"
|
|
77
|
+
" delete im;"
|
|
78
|
+
"}"
|
|
79
|
+
"</script>"
|
|
67
80
|
'<script type="module" crossorigin="anonymous">'
|
|
68
81
|
f'import {{ mountReactPy }} from "{REACTPY_PATH_PREFIX.current}static/index.js";'
|
|
69
82
|
"mountReactPy({"
|
|
70
|
-
f'
|
|
71
|
-
f'
|
|
72
|
-
f'
|
|
73
|
-
f"
|
|
74
|
-
f"
|
|
75
|
-
f"
|
|
76
|
-
f"
|
|
83
|
+
f' mountElement: document.getElementById("{element_id}"),'
|
|
84
|
+
f' pathPrefix: "{REACTPY_PATH_PREFIX.current}",'
|
|
85
|
+
f' componentPath: "{component_path}",'
|
|
86
|
+
f" reconnectInterval: {REACTPY_RECONNECT_INTERVAL.current},"
|
|
87
|
+
f" reconnectMaxInterval: {REACTPY_RECONNECT_MAX_INTERVAL.current},"
|
|
88
|
+
f" reconnectMaxRetries: {REACTPY_RECONNECT_MAX_RETRIES.current},"
|
|
89
|
+
f" reconnectBackoffMultiplier: {REACTPY_RECONNECT_BACKOFF_MULTIPLIER.current},"
|
|
77
90
|
"});"
|
|
78
91
|
"</script>"
|
|
79
92
|
)
|
|
93
|
+
|
|
94
|
+
|
|
95
|
+
def default_import_map() -> str:
|
|
96
|
+
path_prefix = REACTPY_PATH_PREFIX.current.strip("/")
|
|
97
|
+
return f"""{{
|
|
98
|
+
"imports": {{
|
|
99
|
+
"react": "/{path_prefix}/static/preact.js",
|
|
100
|
+
"react-dom": "/{path_prefix}/static/preact-dom.js",
|
|
101
|
+
"react-dom/client": "/{path_prefix}/static/preact-dom.js",
|
|
102
|
+
"react/jsx-runtime": "/{path_prefix}/static/preact-jsx-runtime.js"
|
|
103
|
+
}}
|
|
104
|
+
}}""".replace("\n", "").replace(" ", "")
|
reactpy/reactjs/__init__.py
CHANGED
|
@@ -175,10 +175,8 @@ def component_from_npm(
|
|
|
175
175
|
url = f"{cdn}/{package}@{version}"
|
|
176
176
|
|
|
177
177
|
if "esm.sh" in cdn:
|
|
178
|
-
if "?" in url
|
|
179
|
-
|
|
180
|
-
else:
|
|
181
|
-
url += "?external=react,react-dom"
|
|
178
|
+
url += "&" if "?" in url else "?"
|
|
179
|
+
url += "external=react,react-dom,react/jsx-runtime&bundle&target=es2020"
|
|
182
180
|
|
|
183
181
|
return component_from_url(
|
|
184
182
|
url,
|
reactpy/reactjs/module.py
CHANGED
|
@@ -1,21 +1,20 @@
|
|
|
1
1
|
from __future__ import annotations
|
|
2
2
|
|
|
3
3
|
import logging
|
|
4
|
-
from pathlib import Path
|
|
5
|
-
from typing import Any
|
|
4
|
+
from pathlib import Path, PurePosixPath
|
|
5
|
+
from typing import Any, Literal
|
|
6
6
|
|
|
7
|
-
from reactpy import
|
|
8
|
-
from reactpy.config import REACTPY_WEB_MODULES_DIR
|
|
7
|
+
from reactpy.config import REACTPY_DEBUG, REACTPY_WEB_MODULES_DIR
|
|
9
8
|
from reactpy.core.vdom import Vdom
|
|
10
9
|
from reactpy.reactjs.types import NAME_SOURCE, URL_SOURCE
|
|
11
10
|
from reactpy.reactjs.utils import (
|
|
12
11
|
are_files_identical,
|
|
13
12
|
copy_file,
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
13
|
+
file_lock,
|
|
14
|
+
resolve_names_from_file,
|
|
15
|
+
resolve_names_from_url,
|
|
17
16
|
)
|
|
18
|
-
from reactpy.types import ImportSourceDict, JavaScriptModule, VdomConstructor
|
|
17
|
+
from reactpy.types import ImportSourceDict, JavaScriptModule, VdomConstructor, VdomDict
|
|
19
18
|
|
|
20
19
|
logger = logging.getLogger(__name__)
|
|
21
20
|
|
|
@@ -33,7 +32,7 @@ def url_to_module(
|
|
|
33
32
|
default_fallback=fallback,
|
|
34
33
|
file=None,
|
|
35
34
|
import_names=(
|
|
36
|
-
|
|
35
|
+
resolve_names_from_url(url, resolve_imports_depth)
|
|
37
36
|
if resolve_imports
|
|
38
37
|
else None
|
|
39
38
|
),
|
|
@@ -54,19 +53,20 @@ def file_to_module(
|
|
|
54
53
|
|
|
55
54
|
source_file = Path(file).resolve()
|
|
56
55
|
target_file = get_module_path(name)
|
|
57
|
-
if not source_file.exists():
|
|
58
|
-
msg = f"Source file does not exist: {source_file}"
|
|
59
|
-
raise FileNotFoundError(msg)
|
|
60
56
|
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
target_file
|
|
69
|
-
|
|
57
|
+
with file_lock(target_file.with_name(f"{target_file.name}.lock")):
|
|
58
|
+
if not source_file.exists():
|
|
59
|
+
msg = f"Source file does not exist: {source_file}"
|
|
60
|
+
raise FileNotFoundError(msg)
|
|
61
|
+
|
|
62
|
+
if not target_file.exists():
|
|
63
|
+
copy_file(target_file, source_file, symlink)
|
|
64
|
+
elif not are_files_identical(source_file, target_file):
|
|
65
|
+
logger.info(
|
|
66
|
+
f"Existing web module {name!r} will "
|
|
67
|
+
f"be replaced with {target_file.resolve()}"
|
|
68
|
+
)
|
|
69
|
+
copy_file(target_file, source_file, symlink)
|
|
70
70
|
|
|
71
71
|
return JavaScriptModule(
|
|
72
72
|
source=name,
|
|
@@ -74,7 +74,7 @@ def file_to_module(
|
|
|
74
74
|
default_fallback=fallback,
|
|
75
75
|
file=target_file,
|
|
76
76
|
import_names=(
|
|
77
|
-
|
|
77
|
+
resolve_names_from_file(source_file, resolve_imports_depth)
|
|
78
78
|
if resolve_imports
|
|
79
79
|
else None
|
|
80
80
|
),
|
|
@@ -110,7 +110,7 @@ def string_to_module(
|
|
|
110
110
|
default_fallback=fallback,
|
|
111
111
|
file=target_file,
|
|
112
112
|
import_names=(
|
|
113
|
-
|
|
113
|
+
resolve_names_from_file(target_file, resolve_imports_depth)
|
|
114
114
|
if resolve_imports
|
|
115
115
|
else None
|
|
116
116
|
),
|
|
@@ -178,26 +178,90 @@ def make_module(
|
|
|
178
178
|
)
|
|
179
179
|
|
|
180
180
|
|
|
181
|
+
def import_reactjs(
|
|
182
|
+
framework: Literal["preact", "react"] | None = None,
|
|
183
|
+
version: str | None = None,
|
|
184
|
+
use_local: bool = False,
|
|
185
|
+
) -> VdomDict:
|
|
186
|
+
"""
|
|
187
|
+
Return an import map script tag for ReactJS or Preact.
|
|
188
|
+
Parameters:
|
|
189
|
+
framework:
|
|
190
|
+
The framework to use, either "preact" or "react". Defaults to "preact" for
|
|
191
|
+
performance reasons. Set this to `react` if you are experiencing compatibility
|
|
192
|
+
issues with your component library.
|
|
193
|
+
version:
|
|
194
|
+
The version of the framework to use. Example values include "18", "10.2.4",
|
|
195
|
+
or "latest". If left as `None`, a default version will be used depending on the
|
|
196
|
+
selected framework.
|
|
197
|
+
use_local:
|
|
198
|
+
Whether to use the local framework ReactPy is bundled with (Preact).
|
|
199
|
+
Raises:
|
|
200
|
+
ValueError:
|
|
201
|
+
If both `framework` and `react_url_prefix` are provided, or if
|
|
202
|
+
`framework` is not one of "preact" or "react".
|
|
203
|
+
Returns:
|
|
204
|
+
A VDOM script tag containing the import map.
|
|
205
|
+
"""
|
|
206
|
+
from reactpy import html
|
|
207
|
+
from reactpy.executors.utils import default_import_map
|
|
208
|
+
|
|
209
|
+
if use_local and (framework or version): # nocov
|
|
210
|
+
raise ValueError("use_local cannot be used with framework or version")
|
|
211
|
+
|
|
212
|
+
framework = framework or "preact"
|
|
213
|
+
if framework and framework not in {"preact", "react"}: # nocov
|
|
214
|
+
raise ValueError("framework must be 'preact' or 'react'")
|
|
215
|
+
|
|
216
|
+
# Import map for ReactPy's local framework (re-exported/bundled/minified version of Preact)
|
|
217
|
+
if use_local:
|
|
218
|
+
return html.script(
|
|
219
|
+
{"type": "importmap", "id": "reactpy-importmap"},
|
|
220
|
+
default_import_map(),
|
|
221
|
+
)
|
|
222
|
+
|
|
223
|
+
# Import map for ReactJS from esm.sh
|
|
224
|
+
if framework == "react":
|
|
225
|
+
version = version or "19"
|
|
226
|
+
postfix = "?dev" if REACTPY_DEBUG.current else ""
|
|
227
|
+
return html.script(
|
|
228
|
+
{"type": "importmap", "id": "reactpy-importmap"},
|
|
229
|
+
f"""{{
|
|
230
|
+
"imports": {{
|
|
231
|
+
"react": "https://esm.sh/react@{version}{postfix}",
|
|
232
|
+
"react-dom": "https://esm.sh/react-dom@{version}{postfix}",
|
|
233
|
+
"react-dom/client": "https://esm.sh/react-dom@{version}/client{postfix}",
|
|
234
|
+
"react/jsx-runtime": "https://esm.sh/react@{version}/jsx-runtime{postfix}"
|
|
235
|
+
}}
|
|
236
|
+
}}""".replace("\n", "").replace(" ", ""),
|
|
237
|
+
)
|
|
238
|
+
|
|
239
|
+
# Import map for Preact from esm.sh
|
|
240
|
+
if framework == "preact":
|
|
241
|
+
version = version or "10"
|
|
242
|
+
postfix = "?dev" if REACTPY_DEBUG.current else ""
|
|
243
|
+
return html.script(
|
|
244
|
+
{"type": "importmap", "id": "reactpy-importmap"},
|
|
245
|
+
f"""{{
|
|
246
|
+
"imports": {{
|
|
247
|
+
"react": "https://esm.sh/preact@{version}/compat{postfix}",
|
|
248
|
+
"react-dom": "https://esm.sh/preact@{version}/compat{postfix}",
|
|
249
|
+
"react-dom/client": "https://esm.sh/preact@{version}/compat/client{postfix}",
|
|
250
|
+
"react/jsx-runtime": "https://esm.sh/preact@{version}/compat/jsx-runtime{postfix}"
|
|
251
|
+
}}
|
|
252
|
+
}}""".replace("\n", "").replace(" ", ""),
|
|
253
|
+
)
|
|
254
|
+
|
|
255
|
+
|
|
256
|
+
def module_name_suffix(name: str) -> str:
|
|
257
|
+
if name.startswith("@"):
|
|
258
|
+
name = name[1:]
|
|
259
|
+
head, _, tail = name.partition("@") # handle version identifier
|
|
260
|
+
_, _, tail = tail.partition("/") # get section after version
|
|
261
|
+
return PurePosixPath(tail or head).suffix or ".js"
|
|
262
|
+
|
|
263
|
+
|
|
181
264
|
def get_module_path(name: str) -> Path:
|
|
182
265
|
directory = REACTPY_WEB_MODULES_DIR.current
|
|
183
266
|
path = directory.joinpath(*name.split("/"))
|
|
184
267
|
return path.with_suffix(path.suffix)
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
def import_reactjs():
|
|
188
|
-
from reactpy import html
|
|
189
|
-
|
|
190
|
-
base_url = config.REACTPY_PATH_PREFIX.current.strip("/")
|
|
191
|
-
return html.script(
|
|
192
|
-
{"type": "importmap"},
|
|
193
|
-
f"""
|
|
194
|
-
{{
|
|
195
|
-
"imports": {{
|
|
196
|
-
"react": "/{base_url}/static/react.js",
|
|
197
|
-
"react-dom": "/{base_url}/static/react-dom.js",
|
|
198
|
-
"react-dom/client": "/{base_url}/static/react-dom.js",
|
|
199
|
-
"react/jsx-runtime": "/{base_url}/static/react-jsx-runtime.js"
|
|
200
|
-
}}
|
|
201
|
-
}}
|
|
202
|
-
""",
|
|
203
|
-
)
|
reactpy/reactjs/utils.py
CHANGED
|
@@ -1,8 +1,11 @@
|
|
|
1
1
|
import filecmp
|
|
2
2
|
import logging
|
|
3
|
+
import os
|
|
3
4
|
import re
|
|
4
5
|
import shutil
|
|
5
|
-
|
|
6
|
+
import time
|
|
7
|
+
from contextlib import contextmanager, suppress
|
|
8
|
+
from pathlib import Path
|
|
6
9
|
from urllib.parse import urlparse, urlunparse
|
|
7
10
|
|
|
8
11
|
import requests
|
|
@@ -10,15 +13,7 @@ import requests
|
|
|
10
13
|
logger = logging.getLogger(__name__)
|
|
11
14
|
|
|
12
15
|
|
|
13
|
-
def
|
|
14
|
-
if name.startswith("@"):
|
|
15
|
-
name = name[1:]
|
|
16
|
-
head, _, tail = name.partition("@") # handle version identifier
|
|
17
|
-
_, _, tail = tail.partition("/") # get section after version
|
|
18
|
-
return PurePosixPath(tail or head).suffix or ".js"
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
def resolve_from_module_file(
|
|
16
|
+
def resolve_names_from_file(
|
|
22
17
|
file: Path,
|
|
23
18
|
max_depth: int,
|
|
24
19
|
is_regex_import: bool = False,
|
|
@@ -30,25 +25,25 @@ def resolve_from_module_file(
|
|
|
30
25
|
logger.warning(f"Did not resolve imports for unknown file {file}")
|
|
31
26
|
return set()
|
|
32
27
|
|
|
33
|
-
names, references =
|
|
28
|
+
names, references = resolve_names_from_source(
|
|
34
29
|
file.read_text(encoding="utf-8"), exclude_default=is_regex_import
|
|
35
30
|
)
|
|
36
31
|
|
|
37
32
|
for ref in references:
|
|
38
33
|
if urlparse(ref).scheme: # is an absolute URL
|
|
39
34
|
names.update(
|
|
40
|
-
|
|
35
|
+
resolve_names_from_url(ref, max_depth - 1, is_regex_import=True)
|
|
41
36
|
)
|
|
42
37
|
else:
|
|
43
38
|
path = file.parent.joinpath(*ref.split("/"))
|
|
44
39
|
names.update(
|
|
45
|
-
|
|
40
|
+
resolve_names_from_file(path, max_depth - 1, is_regex_import=True)
|
|
46
41
|
)
|
|
47
42
|
|
|
48
43
|
return names
|
|
49
44
|
|
|
50
45
|
|
|
51
|
-
def
|
|
46
|
+
def resolve_names_from_url(
|
|
52
47
|
url: str,
|
|
53
48
|
max_depth: int,
|
|
54
49
|
is_regex_import: bool = False,
|
|
@@ -64,18 +59,16 @@ def resolve_from_module_url(
|
|
|
64
59
|
logger.warning(f"Did not resolve imports for url {url} {reason}")
|
|
65
60
|
return set()
|
|
66
61
|
|
|
67
|
-
names, references =
|
|
68
|
-
text, exclude_default=is_regex_import
|
|
69
|
-
)
|
|
62
|
+
names, references = resolve_names_from_source(text, exclude_default=is_regex_import)
|
|
70
63
|
|
|
71
64
|
for ref in references:
|
|
72
65
|
url = normalize_url_path(url, ref)
|
|
73
|
-
names.update(
|
|
66
|
+
names.update(resolve_names_from_url(url, max_depth - 1, is_regex_import=True))
|
|
74
67
|
|
|
75
68
|
return names
|
|
76
69
|
|
|
77
70
|
|
|
78
|
-
def
|
|
71
|
+
def resolve_names_from_source(
|
|
79
72
|
content: str, exclude_default: bool
|
|
80
73
|
) -> tuple[set[str], set[str]]:
|
|
81
74
|
"""Find names exported by the given JavaScript module content to assist with ReactPy import resolution.
|
|
@@ -167,9 +160,26 @@ def are_files_identical(f1: Path, f2: Path) -> bool:
|
|
|
167
160
|
def copy_file(target: Path, source: Path, symlink: bool) -> None:
|
|
168
161
|
target.parent.mkdir(parents=True, exist_ok=True)
|
|
169
162
|
if symlink:
|
|
163
|
+
if target.exists():
|
|
164
|
+
target.unlink()
|
|
170
165
|
target.symlink_to(source)
|
|
171
166
|
else:
|
|
172
|
-
|
|
167
|
+
temp_target = target.with_suffix(f"{target.suffix}.tmp")
|
|
168
|
+
shutil.copy(source, temp_target)
|
|
169
|
+
try:
|
|
170
|
+
temp_target.replace(target)
|
|
171
|
+
except OSError:
|
|
172
|
+
# On Windows, replace might fail if the file is open
|
|
173
|
+
# Retry once after a short delay
|
|
174
|
+
time.sleep(0.1)
|
|
175
|
+
try:
|
|
176
|
+
temp_target.replace(target)
|
|
177
|
+
except OSError:
|
|
178
|
+
# If it still fails, try to unlink and rename
|
|
179
|
+
# This is not atomic, but it's a fallback
|
|
180
|
+
if target.exists():
|
|
181
|
+
target.unlink()
|
|
182
|
+
temp_target.rename(target)
|
|
173
183
|
|
|
174
184
|
|
|
175
185
|
_JS_DEFAULT_EXPORT_PATTERN = re.compile(
|
|
@@ -181,3 +191,22 @@ _JS_FUNC_OR_CLS_EXPORT_PATTERN = re.compile(
|
|
|
181
191
|
_JS_GENERAL_EXPORT_PATTERN = re.compile(
|
|
182
192
|
r"(?:^|;|})\s*export(?=\s+|{)(.*?)(?=;|$)", re.MULTILINE
|
|
183
193
|
)
|
|
194
|
+
|
|
195
|
+
|
|
196
|
+
@contextmanager
|
|
197
|
+
def file_lock(lock_file: Path, timeout: float = 10.0):
|
|
198
|
+
start_time = time.time()
|
|
199
|
+
while True:
|
|
200
|
+
try:
|
|
201
|
+
fd = os.open(lock_file, os.O_CREAT | os.O_EXCL | os.O_RDWR)
|
|
202
|
+
os.close(fd)
|
|
203
|
+
break
|
|
204
|
+
except OSError as e:
|
|
205
|
+
if time.time() - start_time > timeout:
|
|
206
|
+
raise TimeoutError(f"Could not acquire lock {lock_file}") from e
|
|
207
|
+
time.sleep(0.1)
|
|
208
|
+
try:
|
|
209
|
+
yield
|
|
210
|
+
finally:
|
|
211
|
+
with suppress(OSError):
|
|
212
|
+
os.unlink(lock_file)
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import{
|
|
2
|
-
export{K as
|
|
1
|
+
import{h as B,k as D}from"./index-beq660xy.js";var G=/["&<]/;function C(b){if(b.length===0||G.test(b)===!1)return b;for(var h=0,k=0,y="",q="";k<b.length;k++){switch(b.charCodeAt(k)){case 34:q=""";break;case 38:q="&";break;case 60:q="<";break;default:continue}k!==h&&(y+=b.slice(h,k)),y+=q,h=k+1}return k!==h&&(y+=b.slice(h,k)),y}var H=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,I=0,J=Array.isArray;function K(b,h,k,y,q,A){h||(h={});var z,v,w=h;if("ref"in w)for(v in w={},h)v=="ref"?z=h[v]:w[v]=h[v];var E={type:b,props:w,key:k,ref:z,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:--I,__i:-1,__u:0,__source:q,__self:A};if(typeof b=="function"&&(z=b.defaultProps))for(v in z)w[v]===void 0&&(w[v]=z[v]);return B.vnode&&B.vnode(E),E}function Q(b){var h=K(D,{tpl:b,exprs:[].slice.call(arguments,1)});return h.key=h.__v,h}var F={},N=/[A-Z]/g;function S(b,h){if(B.attr){var k=B.attr(b,h);if(typeof k=="string")return k}if(h=function(w){return w!==null&&typeof w=="object"&&typeof w.valueOf=="function"?w.valueOf():w}(h),b==="ref"||b==="key")return"";if(b==="style"&&typeof h=="object"){var y="";for(var q in h){var A=h[q];if(A!=null&&A!==""){var z=q[0]=="-"?q:F[q]||(F[q]=q.replace(N,"-$&").toLowerCase()),v=";";typeof A!="number"||z.startsWith("--")||H.test(z)||(v="px;"),y=y+z+":"+A+v}}return b+'="'+C(y)+'"'}return h==null||h===!1||typeof h=="function"||typeof h=="object"?"":h===!0?b:b+'="'+C(""+h)+'"'}function O(b){if(b==null||typeof b=="boolean"||typeof b=="function")return null;if(typeof b=="object"){if(b.constructor===void 0)return b;if(J(b)){for(var h=0;h<b.length;h++)b[h]=O(b[h]);return b}}return C(""+b)}
|
|
2
|
+
export{K as a,Q as b,S as c,O as d};
|
|
3
3
|
|
|
4
|
-
//# debugId=
|
|
5
|
-
//# sourceMappingURL=index-
|
|
4
|
+
//# debugId=87FF749D2D1F353A64756E2164756E21
|
|
5
|
+
//# sourceMappingURL=index-64wy0fss.js.map
|
|
@@ -5,6 +5,6 @@
|
|
|
5
5
|
"import{options as r,Fragment as e}from\"preact\";export{Fragment}from\"preact\";var t=/[\"&<]/;function n(r){if(0===r.length||!1===t.test(r))return r;for(var e=0,n=0,o=\"\",f=\"\";n<r.length;n++){switch(r.charCodeAt(n)){case 34:f=\""\";break;case 38:f=\"&\";break;case 60:f=\"<\";break;default:continue}n!==e&&(o+=r.slice(e,n)),o+=f,e=n+1}return n!==e&&(o+=r.slice(e,n)),o}var o=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,f=0,i=Array.isArray;function u(e,t,n,o,i,u){t||(t={});var a,c,p=t;if(\"ref\"in p)for(c in p={},t)\"ref\"==c?a=t[c]:p[c]=t[c];var l={type:e,props:p,key:n,ref:a,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:--f,__i:-1,__u:0,__source:i,__self:u};if(\"function\"==typeof e&&(a=e.defaultProps))for(c in a)void 0===p[c]&&(p[c]=a[c]);return r.vnode&&r.vnode(l),l}function a(r){var t=u(e,{tpl:r,exprs:[].slice.call(arguments,1)});return t.key=t.__v,t}var c={},p=/[A-Z]/g;function l(e,t){if(r.attr){var f=r.attr(e,t);if(\"string\"==typeof f)return f}if(t=function(r){return null!==r&&\"object\"==typeof r&&\"function\"==typeof r.valueOf?r.valueOf():r}(t),\"ref\"===e||\"key\"===e)return\"\";if(\"style\"===e&&\"object\"==typeof t){var i=\"\";for(var u in t){var a=t[u];if(null!=a&&\"\"!==a){var l=\"-\"==u[0]?u:c[u]||(c[u]=u.replace(p,\"-$&\").toLowerCase()),s=\";\";\"number\"!=typeof a||l.startsWith(\"--\")||o.test(l)||(s=\"px;\"),i=i+l+\":\"+a+s}}return e+'=\"'+n(i)+'\"'}return null==t||!1===t||\"function\"==typeof t||\"object\"==typeof t?\"\":!0===t?e:e+'=\"'+n(\"\"+t)+'\"'}function s(r){if(null==r||\"boolean\"==typeof r||\"function\"==typeof r)return null;if(\"object\"==typeof r){if(void 0===r.constructor)return r;if(i(r)){for(var e=0;e<r.length;e++)r[e]=s(r[e]);return r}}return n(\"\"+r)}export{u as jsx,l as jsxAttr,u as jsxDEV,s as jsxEscape,a as jsxTemplate,u as jsxs};\n//# sourceMappingURL=jsxRuntime.module.js.map\n"
|
|
6
6
|
],
|
|
7
7
|
"mappings": "+CAA4E,IAAI,EAAE,QAAQ,SAAS,CAAC,CAAC,EAAE,CAAC,GAAO,EAAE,SAAN,GAAmB,EAAE,KAAK,CAAC,IAAb,GAAe,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE,OAAO,IAAI,CAAC,OAAO,EAAE,WAAW,CAAC,OAAQ,IAAG,EAAE,SAAS,UAAW,IAAG,EAAE,QAAQ,UAAW,IAAG,EAAE,OAAO,cAAc,SAAS,IAAI,IAAI,GAAG,EAAE,MAAM,EAAE,CAAC,GAAG,GAAG,EAAE,EAAE,EAAE,EAAE,OAAO,IAAI,IAAI,GAAG,EAAE,MAAM,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,oEAAoE,EAAE,EAAE,EAAE,MAAM,QAAQ,SAAS,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,EAAE,EAAE,EAAE,GAAG,QAAQ,EAAE,IAAI,KAAK,EAAE,CAAC,EAAE,EAAS,GAAP,MAAS,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,KAAK,GAAG,KAAK,IAAI,EAAE,IAAI,KAAK,IAAI,KAAK,YAAiB,OAAE,IAAI,EAAE,EAAE,IAAI,GAAG,IAAI,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,GAAe,OAAO,GAAnB,aAAuB,EAAE,EAAE,cAAc,IAAI,KAAK,EAAW,EAAE,KAAN,SAAW,EAAE,GAAG,EAAE,IAAI,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC,EAAE,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,EAAE,MAAM,KAAK,UAAU,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,SAAS,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,GAAa,OAAO,GAAjB,SAAmB,OAAO,EAAE,GAAG,EAAE,QAAQ,CAAC,EAAE,CAAC,OAAc,IAAP,MAAoB,OAAO,GAAjB,UAAgC,OAAO,EAAE,SAArB,WAA6B,EAAE,QAAQ,EAAE,GAAG,CAAC,EAAU,IAAR,OAAmB,IAAR,MAAU,MAAM,GAAG,GAAa,IAAV,SAAuB,OAAO,GAAjB,SAAmB,CAAC,IAAI,EAAE,GAAG,QAAQ,KAAK,EAAE,CAAC,IAAI,EAAE,EAAE,GAAG,GAAS,GAAN,MAAc,IAAL,GAAO,CAAC,IAAI,EAAO,EAAE,IAAP,IAAU,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,QAAQ,EAAE,KAAK,EAAE,YAAY,GAAG,EAAE,IAAc,OAAO,GAAjB,UAAoB,EAAE,WAAW,IAAI,GAAG,EAAE,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,OAAa,GAAN,MAAc,IAAL,IAAoB,OAAO,GAAnB,YAAgC,OAAO,GAAjB,SAAmB,GAAQ,IAAL,GAAO,EAAE,EAAE,KAAK,EAAE,GAAG,CAAC,EAAE,IAAI,SAAS,CAAC,CAAC,EAAE,CAAC,GAAS,GAAN,MAAoB,OAAO,GAAlB,WAAiC,OAAO,GAAnB,WAAqB,OAAO,KAAK,GAAa,OAAO,GAAjB,SAAmB,CAAC,GAAY,EAAE,cAAN,OAAkB,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC,QAAQ,EAAE,EAAE,EAAE,EAAE,OAAO,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,OAAO,GAAG,OAAO,EAAE,GAAG,CAAC",
|
|
8
|
-
"debugId": "
|
|
8
|
+
"debugId": "87FF749D2D1F353A64756E2164756E21",
|
|
9
9
|
"names": []
|
|
10
10
|
}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
var H1=Object.create;var{getPrototypeOf:z1,defineProperty:w0,getOwnPropertyNames:T1}=Object;var $1=Object.prototype.hasOwnProperty;var q2=(X,Y,Z)=>{Z=X!=null?H1(z1(X)):{};let K=Y||!X||!X.__esModule?w0(Z,"default",{value:X,enumerable:!0}):Z;for(let Q of T1(X))if(!$1.call(K,Q))w0(K,Q,{get:()=>X[Q],enumerable:!0});return K};var F2=(X,Y)=>()=>(Y||X((Y={exports:{}}).exports,Y),Y.exports);var V2=((X)=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(X,{get:(Y,Z)=>(typeof require<"u"?require:Y)[Z]}):X)(function(X){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+X+'" is not supported')});var f,O,S0,L1,j,C0,_0,x0,k0,J0,K0,Q0,b0,s={},m0=[],B1=/acit|ex(?:s|g|n|p|$)|rph|grid|ows|mnc|ntw|ine[ch]|zoo|^ord|itera/i,a=Array.isArray;function g(X,Y){for(var Z in Y)X[Z]=Y[Z];return X}function q0(X){X&&X.parentNode&&X.parentNode.removeChild(X)}function L(X,Y,Z){var K,Q,W,G={};for(W in Y)W=="key"?K=Y[W]:W=="ref"?Q=Y[W]:G[W]=Y[W];if(arguments.length>2&&(G.children=arguments.length>3?f.call(arguments,2):Z),typeof X=="function"&&X.defaultProps!=null)for(W in X.defaultProps)G[W]===void 0&&(G[W]=X.defaultProps[W]);return d(X,G,K,Q,null)}function d(X,Y,Z,K,Q){var W={type:X,props:Y,key:Z,ref:K,__k:null,__:null,__b:0,__e:null,__c:null,constructor:void 0,__v:Q==null?++S0:Q,__i:-1,__u:0};return Q==null&&O.vnode!=null&&O.vnode(W),W}function F0(){return{current:null}}function B(X){return X.children}function T(X,Y){this.props=X,this.context=Y}function x(X,Y){if(Y==null)return X.__?x(X.__,X.__i+1):null;for(var Z;Y<X.__k.length;Y++)if((Z=X.__k[Y])!=null&&Z.__e!=null)return Z.__e;return typeof X.type=="function"?x(X):null}function y0(X){var Y,Z;if((X=X.__)!=null&&X.__c!=null){for(X.__e=X.__c.base=null,Y=0;Y<X.__k.length;Y++)if((Z=X.__k[Y])!=null&&Z.__e!=null){X.__e=X.__c.base=Z.__e;break}return y0(X)}}function W0(X){(!X.__d&&(X.__d=!0)&&j.push(X)&&!l.__r++||C0!=O.debounceRendering)&&((C0=O.debounceRendering)||_0)(l)}function l(){for(var X,Y,Z,K,Q,W,G,F=1;j.length;)j.length>F&&j.sort(x0),X=j.shift(),F=j.length,X.__d&&(Z=void 0,K=void 0,Q=(K=(Y=X).__v).__e,W=[],G=[],Y.__P&&((Z=g({},K)).__v=K.__v+1,O.vnode&&O.vnode(Z),V0(Y.__P,Z,K,Y.__n,Y.__P.namespaceURI,32&K.__u?[Q]:null,W,Q==null?x(K):Q,!!(32&K.__u),G),Z.__v=K.__v,Z.__.__k[Z.__i]=Z,s0(W,Z,G),K.__e=K.__=null,Z.__e!=Q&&y0(Z)));l.__r=0}function p0(X,Y,Z,K,Q,W,G,F,V,q,U){var J,A,I,H,$,z,N,E=K&&K.__k||m0,C=Y.length;for(V=P1(Z,Y,E,V,C),J=0;J<C;J++)(I=Z.__k[J])!=null&&(A=I.__i==-1?s:E[I.__i]||s,I.__i=J,z=V0(X,I,A,Q,W,G,F,V,q,U),H=I.__e,I.ref&&A.ref!=I.ref&&(A.ref&&I0(A.ref,null,I),U.push(I.ref,I.__c||H,I)),$==null&&H!=null&&($=H),(N=!!(4&I.__u))||A.__k===I.__k?V=d0(I,V,X,N):typeof I.type=="function"&&z!==void 0?V=z:H&&(V=H.nextSibling),I.__u&=-7);return Z.__e=$,V}function P1(X,Y,Z,K,Q){var W,G,F,V,q,U=Z.length,J=U,A=0;for(X.__k=Array(Q),W=0;W<Q;W++)(G=Y[W])!=null&&typeof G!="boolean"&&typeof G!="function"?(typeof G=="string"||typeof G=="number"||typeof G=="bigint"||G.constructor==String?G=X.__k[W]=d(null,G,null,null,null):a(G)?G=X.__k[W]=d(B,{children:G},null,null,null):G.constructor==null&&G.__b>0?G=X.__k[W]=d(G.type,G.props,G.key,G.ref?G.ref:null,G.__v):X.__k[W]=G,V=W+A,G.__=X,G.__b=X.__b+1,(q=G.__i=g1(G,Z,V,J))!=-1&&(J--,(F=Z[q])&&(F.__u|=2)),F==null||F.__v==null?(q==-1&&(Q>U?A--:Q<U&&A++),typeof G.type!="function"&&(G.__u|=4)):q!=V&&(q==V-1?A--:q==V+1?A++:(q>V?A--:A++,G.__u|=4))):X.__k[W]=null;if(J)for(W=0;W<U;W++)(F=Z[W])!=null&&(2&F.__u)==0&&(F.__e==K&&(K=x(F)),a0(F,F));return K}function d0(X,Y,Z,K){var Q,W;if(typeof X.type=="function"){for(Q=X.__k,W=0;Q&&W<Q.length;W++)Q[W]&&(Q[W].__=X,Y=d0(Q[W],Y,Z,K));return Y}X.__e!=Y&&(K&&(Y&&X.type&&!Y.parentNode&&(Y=x(X)),Z.insertBefore(X.__e,Y||null)),Y=X.__e);do Y=Y&&Y.nextSibling;while(Y!=null&&Y.nodeType==8);return Y}function v(X,Y){return Y=Y||[],X==null||typeof X=="boolean"||(a(X)?X.some(function(Z){v(Z,Y)}):Y.push(X)),Y}function g1(X,Y,Z,K){var Q,W,G,F=X.key,V=X.type,q=Y[Z],U=q!=null&&(2&q.__u)==0;if(q===null&&F==null||U&&F==q.key&&V==q.type)return Z;if(K>(U?1:0)){for(Q=Z-1,W=Z+1;Q>=0||W<Y.length;)if((q=Y[G=Q>=0?Q--:W++])!=null&&(2&q.__u)==0&&F==q.key&&V==q.type)return G}return-1}function M0(X,Y,Z){Y[0]=="-"?X.setProperty(Y,Z==null?"":Z):X[Y]=Z==null?"":typeof Z!="number"||B1.test(Y)?Z:Z+"px"}function e(X,Y,Z,K,Q){var W,G;X:if(Y=="style")if(typeof Z=="string")X.style.cssText=Z;else{if(typeof K=="string"&&(X.style.cssText=K=""),K)for(Y in K)Z&&Y in Z||M0(X.style,Y,"");if(Z)for(Y in Z)K&&Z[Y]==K[Y]||M0(X.style,Y,Z[Y])}else if(Y[0]=="o"&&Y[1]=="n")W=Y!=(Y=Y.replace(k0,"$1")),G=Y.toLowerCase(),Y=G in X||Y=="onFocusOut"||Y=="onFocusIn"?G.slice(2):Y.slice(2),X.l||(X.l={}),X.l[Y+W]=Z,Z?K?Z.u=K.u:(Z.u=J0,X.addEventListener(Y,W?Q0:K0,W)):X.removeEventListener(Y,W?Q0:K0,W);else{if(Q=="http://www.w3.org/2000/svg")Y=Y.replace(/xlink(H|:h)/,"h").replace(/sName$/,"s");else if(Y!="width"&&Y!="height"&&Y!="href"&&Y!="list"&&Y!="form"&&Y!="tabIndex"&&Y!="download"&&Y!="rowSpan"&&Y!="colSpan"&&Y!="role"&&Y!="popover"&&Y in X)try{X[Y]=Z==null?"":Z;break X}catch(F){}typeof Z=="function"||(Z==null||Z===!1&&Y[4]!="-"?X.removeAttribute(Y):X.setAttribute(Y,Y=="popover"&&Z==1?"":Z))}}function j0(X){return function(Y){if(this.l){var Z=this.l[Y.type+X];if(Y.t==null)Y.t=J0++;else if(Y.t<Z.u)return;return Z(O.event?O.event(Y):Y)}}}function V0(X,Y,Z,K,Q,W,G,F,V,q){var U,J,A,I,H,$,z,N,E,C,M,r,y,v0,i,p,Z0,P=Y.type;if(Y.constructor!=null)return null;128&Z.__u&&(V=!!(32&Z.__u),W=[F=Y.__e=Z.__e]),(U=O.__b)&&U(Y);X:if(typeof P=="function")try{if(N=Y.props,E="prototype"in P&&P.prototype.render,C=(U=P.contextType)&&K[U.__c],M=U?C?C.props.value:U.__:K,Z.__c?z=(J=Y.__c=Z.__c).__=J.__E:(E?Y.__c=J=new P(N,M):(Y.__c=J=new T(N,M),J.constructor=P,J.render=w1),C&&C.sub(J),J.state||(J.state={}),J.__n=K,A=J.__d=!0,J.__h=[],J._sb=[]),E&&J.__s==null&&(J.__s=J.state),E&&P.getDerivedStateFromProps!=null&&(J.__s==J.state&&(J.__s=g({},J.__s)),g(J.__s,P.getDerivedStateFromProps(N,J.__s))),I=J.props,H=J.state,J.__v=Y,A)E&&P.getDerivedStateFromProps==null&&J.componentWillMount!=null&&J.componentWillMount(),E&&J.componentDidMount!=null&&J.__h.push(J.componentDidMount);else{if(E&&P.getDerivedStateFromProps==null&&N!==I&&J.componentWillReceiveProps!=null&&J.componentWillReceiveProps(N,M),Y.__v==Z.__v||!J.__e&&J.shouldComponentUpdate!=null&&J.shouldComponentUpdate(N,J.__s,M)===!1){for(Y.__v!=Z.__v&&(J.props=N,J.state=J.__s,J.__d=!1),Y.__e=Z.__e,Y.__k=Z.__k,Y.__k.some(function(_){_&&(_.__=Y)}),r=0;r<J._sb.length;r++)J.__h.push(J._sb[r]);J._sb=[],J.__h.length&&G.push(J);break X}J.componentWillUpdate!=null&&J.componentWillUpdate(N,J.__s,M),E&&J.componentDidUpdate!=null&&J.__h.push(function(){J.componentDidUpdate(I,H,$)})}if(J.context=M,J.props=N,J.__P=X,J.__e=!1,y=O.__r,v0=0,E){for(J.state=J.__s,J.__d=!1,y&&y(Y),U=J.render(J.props,J.state,J.context),i=0;i<J._sb.length;i++)J.__h.push(J._sb[i]);J._sb=[]}else do J.__d=!1,y&&y(Y),U=J.render(J.props,J.state,J.context),J.state=J.__s;while(J.__d&&++v0<25);J.state=J.__s,J.getChildContext!=null&&(K=g(g({},K),J.getChildContext())),E&&!A&&J.getSnapshotBeforeUpdate!=null&&($=J.getSnapshotBeforeUpdate(I,H)),p=U,U!=null&&U.type===B&&U.key==null&&(p=f0(U.props.children)),F=p0(X,a(p)?p:[p],Y,Z,K,Q,W,G,F,V,q),J.base=Y.__e,Y.__u&=-161,J.__h.length&&G.push(J),z&&(J.__E=J.__=null)}catch(_){if(Y.__v=null,V||W!=null)if(_.then){for(Y.__u|=V?160:128;F&&F.nodeType==8&&F.nextSibling;)F=F.nextSibling;W[W.indexOf(F)]=null,Y.__e=F}else{for(Z0=W.length;Z0--;)q0(W[Z0]);G0(Y)}else Y.__e=Z.__e,Y.__k=Z.__k,_.then||G0(Y);O.__e(_,Y,Z)}else W==null&&Y.__v==Z.__v?(Y.__k=Z.__k,Y.__e=Z.__e):F=Y.__e=v1(Z.__e,Y,Z,K,Q,W,G,V,q);return(U=O.diffed)&&U(Y),128&Y.__u?void 0:F}function G0(X){X&&X.__c&&(X.__c.__e=!0),X&&X.__k&&X.__k.forEach(G0)}function s0(X,Y,Z){for(var K=0;K<Z.length;K++)I0(Z[K],Z[++K],Z[++K]);O.__c&&O.__c(Y,X),X.some(function(Q){try{X=Q.__h,Q.__h=[],X.some(function(W){W.call(Q)})}catch(W){O.__e(W,Q.__v)}})}function f0(X){return typeof X!="object"||X==null||X.__b&&X.__b>0?X:a(X)?X.map(f0):g({},X)}function v1(X,Y,Z,K,Q,W,G,F,V){var q,U,J,A,I,H,$,z=Z.props||s,N=Y.props,E=Y.type;if(E=="svg"?Q="http://www.w3.org/2000/svg":E=="math"?Q="http://www.w3.org/1998/Math/MathML":Q||(Q="http://www.w3.org/1999/xhtml"),W!=null){for(q=0;q<W.length;q++)if((I=W[q])&&"setAttribute"in I==!!E&&(E?I.localName==E:I.nodeType==3)){X=I,W[q]=null;break}}if(X==null){if(E==null)return document.createTextNode(N);X=document.createElementNS(Q,E,N.is&&N),F&&(O.__m&&O.__m(Y,W),F=!1),W=null}if(E==null)z===N||F&&X.data==N||(X.data=N);else{if(W=W&&f.call(X.childNodes),!F&&W!=null)for(z={},q=0;q<X.attributes.length;q++)z[(I=X.attributes[q]).name]=I.value;for(q in z)if(I=z[q],q=="children");else if(q=="dangerouslySetInnerHTML")J=I;else if(!(q in N)){if(q=="value"&&"defaultValue"in N||q=="checked"&&"defaultChecked"in N)continue;e(X,q,null,I,Q)}for(q in N)I=N[q],q=="children"?A=I:q=="dangerouslySetInnerHTML"?U=I:q=="value"?H=I:q=="checked"?$=I:F&&typeof I!="function"||z[q]===I||e(X,q,I,z[q],Q);if(U)F||J&&(U.__html==J.__html||U.__html==X.innerHTML)||(X.innerHTML=U.__html),Y.__k=[];else if(J&&(X.innerHTML=""),p0(Y.type=="template"?X.content:X,a(A)?A:[A],Y,Z,K,E=="foreignObject"?"http://www.w3.org/1999/xhtml":Q,W,G,W?W[0]:Z.__k&&x(Z,0),F,V),W!=null)for(q=W.length;q--;)q0(W[q]);F||(q="value",E=="progress"&&H==null?X.removeAttribute("value"):H!=null&&(H!==X[q]||E=="progress"&&!H||E=="option"&&H!=z[q])&&e(X,q,H,z[q],Q),q="checked",$!=null&&$!=X[q]&&e(X,q,$,z[q],Q))}return X}function I0(X,Y,Z){try{if(typeof X=="function"){var K=typeof X.__u=="function";K&&X.__u(),K&&Y==null||(X.__u=X(Y))}else X.current=Y}catch(Q){O.__e(Q,Z)}}function a0(X,Y,Z){var K,Q;if(O.unmount&&O.unmount(X),(K=X.ref)&&(K.current&&K.current!=X.__e||I0(K,null,Y)),(K=X.__c)!=null){if(K.componentWillUnmount)try{K.componentWillUnmount()}catch(W){O.__e(W,Y)}K.base=K.__P=null}if(K=X.__k)for(Q=0;Q<K.length;Q++)K[Q]&&a0(K[Q],Y,Z||typeof X.type!="function");Z||q0(X.__e),X.__c=X.__=X.__e=void 0}function w1(X,Y,Z){return this.constructor(X,Z)}function k(X,Y,Z){var K,Q,W,G;Y==document&&(Y=document.documentElement),O.__&&O.__(X,Y),Q=(K=typeof Z=="function")?null:Z&&Z.__k||Y.__k,W=[],G=[],V0(Y,X=(!K&&Z||Y).__k=L(B,null,[X]),Q||s,s,Y.namespaceURI,!K&&Z?[Z]:Q?null:Y.firstChild?f.call(Y.childNodes):null,W,!K&&Z?Z:Q?Q.__e:Y.firstChild,K,G),s0(W,X,G)}function O0(X,Y){k(X,Y,O0)}function h0(X,Y,Z){var K,Q,W,G,F=g({},X.props);for(W in X.type&&X.type.defaultProps&&(G=X.type.defaultProps),Y)W=="key"?K=Y[W]:W=="ref"?Q=Y[W]:F[W]=Y[W]===void 0&&G!=null?G[W]:Y[W];return arguments.length>2&&(F.children=arguments.length>3?f.call(arguments,2):Z),d(X.type,F,K||X.key,Q||X.ref,null)}function U0(X){function Y(Z){var K,Q;return this.getChildContext||(K=new Set,(Q={})[Y.__c]=this,this.getChildContext=function(){return Q},this.componentWillUnmount=function(){K=null},this.shouldComponentUpdate=function(W){this.props.value!=W.value&&K.forEach(function(G){G.__e=!0,W0(G)})},this.sub=function(W){K.add(W);var G=W.componentWillUnmount;W.componentWillUnmount=function(){K&&K.delete(W),G&&G.call(W)}}),Z.children}return Y.__c="__cC"+b0++,Y.__=X,Y.Provider=Y.__l=(Y.Consumer=function(Z,K){return Z.children(K)}).contextType=Y,Y}f=m0.slice,O={__e:function(X,Y,Z,K){for(var Q,W,G;Y=Y.__;)if((Q=Y.__c)&&!Q.__)try{if((W=Q.constructor)&&W.getDerivedStateFromError!=null&&(Q.setState(W.getDerivedStateFromError(X)),G=Q.__d),Q.componentDidCatch!=null&&(Q.componentDidCatch(X,K||{}),G=Q.__d),G)return Q.__E=Q}catch(F){X=F}throw X}},S0=0,L1=function(X){return X!=null&&X.constructor==null},T.prototype.setState=function(X,Y){var Z;Z=this.__s!=null&&this.__s!=this.state?this.__s:this.__s=g({},this.state),typeof X=="function"&&(X=X(g({},Z),this.props)),X&&g(Z,X),X!=null&&this.__v&&(Y&&this._sb.push(Y),W0(this))},T.prototype.forceUpdate=function(X){this.__v&&(this.__e=!0,X&&this.__h.push(X),W0(this))},T.prototype.render=B,j=[],_0=typeof Promise=="function"?Promise.prototype.then.bind(Promise.resolve()):setTimeout,x0=function(X,Y){return X.__v.__b-Y.__v.__b},l.__r=0,k0=/(PointerCapture)$|Capture$/i,J0=0,K0=j0(!1),Q0=j0(!0),b0=0;var w,D,A0,c0,b=0,n0=[],R=O,o0=R.__b,r0=R.__r,i0=R.diffed,e0=R.__c,l0=R.unmount,t0=R.__;function S(X,Y){R.__h&&R.__h(D,X,b||Y),b=0;var Z=D.__H||(D.__H={__:[],__h:[]});return X>=Z.__.length&&Z.__.push({}),Z.__[X]}function h(X){return b=1,u(X1,X)}function u(X,Y,Z){var K=S(w++,2);if(K.t=X,!K.__c&&(K.__=[Z?Z(Y):X1(void 0,Y),function(F){var V=K.__N?K.__N[0]:K.__[0],q=K.t(V,F);V!==q&&(K.__N=[q,K.__[1]],K.__c.setState({}))}],K.__c=D,!D.__f)){var Q=function(F,V,q){if(!K.__c.__H)return!0;var U=K.__c.__H.__.filter(function(A){return!!A.__c});if(U.every(function(A){return!A.__N}))return!W||W.call(this,F,V,q);var J=K.__c.props!==F;return U.forEach(function(A){if(A.__N){var I=A.__[0];A.__=A.__N,A.__N=void 0,I!==A.__[0]&&(J=!0)}}),W&&W.call(this,F,V,q)||J};D.__f=!0;var{shouldComponentUpdate:W,componentWillUpdate:G}=D;D.componentWillUpdate=function(F,V,q){if(this.__e){var U=W;W=void 0,Q(F,V,q),W=U}G&&G.call(this,F,V,q)},D.shouldComponentUpdate=Q}return K.__N||K.__}function n(X,Y){var Z=S(w++,3);!R.__s&&$0(Z.__H,Y)&&(Z.__=X,Z.u=Y,D.__H.__h.push(Z))}function m(X,Y){var Z=S(w++,4);!R.__s&&$0(Z.__H,Y)&&(Z.__=X,Z.u=Y,D.__h.push(Z))}function E0(X){return b=5,c(function(){return{current:X}},[])}function N0(X,Y,Z){b=6,m(function(){if(typeof X=="function"){var K=X(Y());return function(){X(null),K&&typeof K=="function"&&K()}}if(X)return X.current=Y(),function(){return X.current=null}},Z==null?Z:Z.concat(X))}function c(X,Y){var Z=S(w++,7);return $0(Z.__H,Y)&&(Z.__=X(),Z.__H=Y,Z.__h=X),Z.__}function R0(X,Y){return b=8,c(function(){return X},Y)}function H0(X){var Y=D.context[X.__c],Z=S(w++,9);return Z.c=X,Y?(Z.__==null&&(Z.__=!0,Y.sub(D)),Y.props.value):X.__}function z0(X,Y){R.useDebugValue&&R.useDebugValue(Y?Y(X):X)}function A2(X){var Y=S(w++,10),Z=h();return Y.__=X,D.componentDidCatch||(D.componentDidCatch=function(K,Q){Y.__&&Y.__(K,Q),Z[1](K)}),[Z[0],function(){Z[1](void 0)}]}function T0(){var X=S(w++,11);if(!X.__){for(var Y=D.__v;Y!==null&&!Y.__m&&Y.__!==null;)Y=Y.__;var Z=Y.__m||(Y.__m=[0,0]);X.__="P"+Z[0]+"-"+Z[1]++}return X.__}function C1(){for(var X;X=n0.shift();)if(X.__P&&X.__H)try{X.__H.__h.forEach(t),X.__H.__h.forEach(D0),X.__H.__h=[]}catch(Y){X.__H.__h=[],R.__e(Y,X.__v)}}R.__b=function(X){D=null,o0&&o0(X)},R.__=function(X,Y){X&&Y.__k&&Y.__k.__m&&(X.__m=Y.__k.__m),t0&&t0(X,Y)},R.__r=function(X){r0&&r0(X),w=0;var Y=(D=X.__c).__H;Y&&(A0===D?(Y.__h=[],D.__h=[],Y.__.forEach(function(Z){Z.__N&&(Z.__=Z.__N),Z.u=Z.__N=void 0})):(Y.__h.forEach(t),Y.__h.forEach(D0),Y.__h=[],w=0)),A0=D},R.diffed=function(X){i0&&i0(X);var Y=X.__c;Y&&Y.__H&&(Y.__H.__h.length&&(n0.push(Y)!==1&&c0===R.requestAnimationFrame||((c0=R.requestAnimationFrame)||M1)(C1)),Y.__H.__.forEach(function(Z){Z.u&&(Z.__H=Z.u),Z.u=void 0})),A0=D=null},R.__c=function(X,Y){Y.some(function(Z){try{Z.__h.forEach(t),Z.__h=Z.__h.filter(function(K){return!K.__||D0(K)})}catch(K){Y.some(function(Q){Q.__h&&(Q.__h=[])}),Y=[],R.__e(K,Z.__v)}}),e0&&e0(X,Y)},R.unmount=function(X){l0&&l0(X);var Y,Z=X.__c;Z&&Z.__H&&(Z.__H.__.forEach(function(K){try{t(K)}catch(Q){Y=Q}}),Z.__H=void 0,Y&&R.__e(Y,Z.__v))};var u0=typeof requestAnimationFrame=="function";function M1(X){var Y,Z=function(){clearTimeout(K),u0&&cancelAnimationFrame(Y),setTimeout(X)},K=setTimeout(Z,35);u0&&(Y=requestAnimationFrame(Z))}function t(X){var Y=D,Z=X.__c;typeof Z=="function"&&(X.__c=void 0,Z()),D=Y}function D0(X){var Y=D;X.__c=X.__(),D=Y}function $0(X,Y){return!X||X.length!==Y.length||Y.some(function(Z,K){return Z!==X[K]})}function X1(X,Y){return typeof Y=="function"?Y(X):Y}function F1(X,Y){for(var Z in Y)X[Z]=Y[Z];return X}function B0(X,Y){for(var Z in X)if(Z!=="__source"&&!(Z in Y))return!0;for(var K in Y)if(K!=="__source"&&X[K]!==Y[K])return!0;return!1}function V1(X,Y){var Z=Y(),K=h({t:{__:Z,u:Y}}),Q=K[0].t,W=K[1];return m(function(){Q.__=Z,Q.u=Y,L0(Q)&&W({t:Q})},[X,Z,Y]),n(function(){return L0(Q)&&W({t:Q}),X(function(){L0(Q)&&W({t:Q})})},[X]),Z}function L0(X){var Y,Z,K=X.u,Q=X.__;try{var W=K();return!((Y=Q)===(Z=W)&&(Y!==0||1/Y==1/Z)||Y!=Y&&Z!=Z)}catch(G){return!0}}function I1(X){X()}function O1(X){return X}function U1(){return[!1,I1]}var A1=m;function P0(X,Y){this.props=X,this.context=Y}function j1(X,Y){function Z(Q){var W=this.props.ref,G=W==Q.ref;return!G&&W&&(W.call?W(null):W.current=null),Y?!Y(this.props,Q)||!G:B0(this.props,Q)}function K(Q){return this.shouldComponentUpdate=Z,L(X,Q)}return K.displayName="Memo("+(X.displayName||X.name)+")",K.prototype.isReactComponent=!0,K.__f=!0,K.type=X,K}(P0.prototype=new T).isPureReactComponent=!0,P0.prototype.shouldComponentUpdate=function(X,Y){return B0(this.props,X)||B0(this.state,Y)};var Y1=O.__b;O.__b=function(X){X.type&&X.type.__f&&X.ref&&(X.props.ref=X.ref,X.ref=null),Y1&&Y1(X)};var S1=typeof Symbol<"u"&&Symbol.for&&Symbol.for("react.forward_ref")||3911;function _1(X){function Y(Z){var K=F1({},Z);return delete K.ref,X(K,Z.ref||null)}return Y.$$typeof=S1,Y.render=X,Y.prototype.isReactComponent=Y.__f=!0,Y.displayName="ForwardRef("+(X.displayName||X.name)+")",Y}var Z1=function(X,Y){return X==null?null:v(v(X).map(Y))},x1={map:Z1,forEach:Z1,count:function(X){return X?v(X).length:0},only:function(X){var Y=v(X);if(Y.length!==1)throw"Children.only";return Y[0]},toArray:v},k1=O.__e;O.__e=function(X,Y,Z,K){if(X.then){for(var Q,W=Y;W=W.__;)if((Q=W.__c)&&Q.__c)return Y.__e==null&&(Y.__e=Z.__e,Y.__k=Z.__k),Q.__c(X,Y)}k1(X,Y,Z,K)};var K1=O.unmount;function D1(X,Y,Z){return X&&(X.__c&&X.__c.__H&&(X.__c.__H.__.forEach(function(K){typeof K.__c=="function"&&K.__c()}),X.__c.__H=null),(X=F1({},X)).__c!=null&&(X.__c.__P===Z&&(X.__c.__P=Y),X.__c.__e=!0,X.__c=null),X.__k=X.__k&&X.__k.map(function(K){return D1(K,Y,Z)})),X}function E1(X,Y,Z){return X&&Z&&(X.__v=null,X.__k=X.__k&&X.__k.map(function(K){return E1(K,Y,Z)}),X.__c&&X.__c.__P===Y&&(X.__e&&Z.appendChild(X.__e),X.__c.__e=!0,X.__c.__P=Z)),X}function X0(){this.__u=0,this.o=null,this.__b=null}function N1(X){var Y=X.__.__c;return Y&&Y.__a&&Y.__a(X)}function b1(X){var Y,Z,K,Q=null;function W(G){if(Y||(Y=X()).then(function(F){F&&(Q=F.default||F),K=!0},function(F){Z=F,K=!0}),Z)throw Z;if(!K)throw Y;return Q?L(Q,G):null}return W.displayName="Lazy",W.__f=!0,W}function o(){this.i=null,this.l=null}O.unmount=function(X){var Y=X.__c;Y&&Y.__R&&Y.__R(),Y&&32&X.__u&&(X.type=null),K1&&K1(X)},(X0.prototype=new T).__c=function(X,Y){var Z=Y.__c,K=this;K.o==null&&(K.o=[]),K.o.push(Z);var Q=N1(K.__v),W=!1,G=function(){W||(W=!0,Z.__R=null,Q?Q(F):F())};Z.__R=G;var F=function(){if(!--K.__u){if(K.state.__a){var V=K.state.__a;K.__v.__k[0]=E1(V,V.__c.__P,V.__c.__O)}var q;for(K.setState({__a:K.__b=null});q=K.o.pop();)q.forceUpdate()}};K.__u++||32&Y.__u||K.setState({__a:K.__b=K.__v.__k[0]}),X.then(G,G)},X0.prototype.componentWillUnmount=function(){this.o=[]},X0.prototype.render=function(X,Y){if(this.__b){if(this.__v.__k){var Z=document.createElement("div"),K=this.__v.__k[0].__c;this.__v.__k[0]=D1(this.__b,Z,K.__O=K.__P)}this.__b=null}var Q=Y.__a&&L(B,null,X.fallback);return Q&&(Q.__u&=-33),[L(B,null,Y.__a?null:X.children),Q]};var Q1=function(X,Y,Z){if(++Z[1]===Z[0]&&X.l.delete(Y),X.props.revealOrder&&(X.props.revealOrder[0]!=="t"||!X.l.size))for(Z=X.i;Z;){for(;Z.length>3;)Z.pop()();if(Z[1]<Z[0])break;X.i=Z=Z[2]}};function m1(X){return this.getChildContext=function(){return X.context},X.children}function y1(X){var Y=this,Z=X.h;if(Y.componentWillUnmount=function(){k(null,Y.v),Y.v=null,Y.h=null},Y.h&&Y.h!==Z&&Y.componentWillUnmount(),!Y.v){for(var K=Y.__v;K!==null&&!K.__m&&K.__!==null;)K=K.__;Y.h=Z,Y.v={nodeType:1,parentNode:Z,childNodes:[],__k:{__m:K.__m},contains:function(){return!0},insertBefore:function(Q,W){this.childNodes.push(Q),Y.h.insertBefore(Q,W)},removeChild:function(Q){this.childNodes.splice(this.childNodes.indexOf(Q)>>>1,1),Y.h.removeChild(Q)}}}k(L(m1,{context:Y.context},X.__v),Y.v)}function p1(X,Y){var Z=L(y1,{__v:X,h:Y});return Z.containerInfo=Y,Z}(o.prototype=new T).__a=function(X){var Y=this,Z=N1(Y.__v),K=Y.l.get(X);return K[0]++,function(Q){var W=function(){Y.props.revealOrder?(K.push(Q),Q1(Y,X,K)):Q()};Z?Z(W):W()}},o.prototype.render=function(X){this.i=null,this.l=new Map;var Y=v(X.children);X.revealOrder&&X.revealOrder[0]==="b"&&Y.reverse();for(var Z=Y.length;Z--;)this.l.set(Y[Z],this.i=[1,0,this.i]);return X.children},o.prototype.componentDidUpdate=o.prototype.componentDidMount=function(){var X=this;this.l.forEach(function(Y,Z){Q1(X,Z,Y)})};var R1=typeof Symbol<"u"&&Symbol.for&&Symbol.for("react.element")||60103,d1=/^(?:accent|alignment|arabic|baseline|cap|clip(?!PathU)|color|dominant|fill|flood|font|glyph(?!R)|horiz|image(!S)|letter|lighting|marker(?!H|W|U)|overline|paint|pointer|shape|stop|strikethrough|stroke|text(?!L)|transform|underline|unicode|units|v|vector|vert|word|writing|x(?!C))[A-Z]/,s1=/^on(Ani|Tra|Tou|BeforeInp|Compo)/,f1=/[A-Z0-9]/g,a1=typeof document<"u",h1=function(X){return(typeof Symbol<"u"&&typeof Symbol()=="symbol"?/fil|che|rad/:/fil|che|ra/).test(X)};function c1(X,Y,Z){return Y.__k==null&&(Y.textContent=""),k(X,Y),typeof Z=="function"&&Z(),X?X.__c:null}function o1(X,Y,Z){return O0(X,Y),typeof Z=="function"&&Z(),X?X.__c:null}T.prototype.isReactComponent={},["componentWillMount","componentWillReceiveProps","componentWillUpdate"].forEach(function(X){Object.defineProperty(T.prototype,X,{configurable:!0,get:function(){return this["UNSAFE_"+X]},set:function(Y){Object.defineProperty(this,X,{configurable:!0,writable:!0,value:Y})}})});var W1=O.event;function r1(){}function i1(){return this.cancelBubble}function e1(){return this.defaultPrevented}O.event=function(X){return W1&&(X=W1(X)),X.persist=r1,X.isPropagationStopped=i1,X.isDefaultPrevented=e1,X.nativeEvent=X};var g0,l1={enumerable:!1,configurable:!0,get:function(){return this.class}},G1=O.vnode;O.vnode=function(X){typeof X.type=="string"&&function(Y){var{props:Z,type:K}=Y,Q={},W=K.indexOf("-")===-1;for(var G in Z){var F=Z[G];if(!(G==="value"&&("defaultValue"in Z)&&F==null||a1&&G==="children"&&K==="noscript"||G==="class"||G==="className")){var V=G.toLowerCase();G==="defaultValue"&&"value"in Z&&Z.value==null?G="value":G==="download"&&F===!0?F="":V==="translate"&&F==="no"?F=!1:V[0]==="o"&&V[1]==="n"?V==="ondoubleclick"?G="ondblclick":V!=="onchange"||K!=="input"&&K!=="textarea"||h1(Z.type)?V==="onfocus"?G="onfocusin":V==="onblur"?G="onfocusout":s1.test(G)&&(G=V):V=G="oninput":W&&d1.test(G)?G=G.replace(f1,"-$&").toLowerCase():F===null&&(F=void 0),V==="oninput"&&Q[G=V]&&(G="oninputCapture"),Q[G]=F}}K=="select"&&Q.multiple&&Array.isArray(Q.value)&&(Q.value=v(Z.children).forEach(function(q){q.props.selected=Q.value.indexOf(q.props.value)!=-1})),K=="select"&&Q.defaultValue!=null&&(Q.value=v(Z.children).forEach(function(q){q.props.selected=Q.multiple?Q.defaultValue.indexOf(q.props.value)!=-1:Q.defaultValue==q.props.value})),Z.class&&!Z.className?(Q.class=Z.class,Object.defineProperty(Q,"className",l1)):(Z.className&&!Z.class||Z.class&&Z.className)&&(Q.class=Q.className=Z.className),Y.props=Q}(X),X.$$typeof=R1,G1&&G1(X)};var J1=O.__r;O.__r=function(X){J1&&J1(X),g0=X.__c};var q1=O.diffed;O.diffed=function(X){q1&&q1(X);var{props:Y,__e:Z}=X;Z!=null&&X.type==="textarea"&&"value"in Y&&Y.value!==Z.value&&(Z.value=Y.value==null?"":Y.value),g0=null};var t1={ReactCurrentDispatcher:{current:{readContext:function(X){return g0.__n[X.__c].props.value},useCallback:R0,useContext:H0,useDebugValue:z0,useDeferredValue:O1,useEffect:n,useId:T0,useImperativeHandle:N0,useInsertionEffect:A1,useLayoutEffect:m,useMemo:c,useReducer:u,useRef:E0,useState:h,useSyncExternalStore:V1,useTransition:U1}}},R2="18.3.1";function u1(X){return L.bind(null,X)}function Y0(X){return!!X&&X.$$typeof===R1}function n1(X){return Y0(X)&&X.type===B}function X2(X){return!!X&&!!X.displayName&&(typeof X.displayName=="string"||X.displayName instanceof String)&&X.displayName.startsWith("Memo(")}function Y2(X){return Y0(X)?h0.apply(null,arguments):X}function Z2(X){return!!X.__k&&(k(null,X),!0)}function K2(X){return X&&(X.base||X.nodeType===1&&X)||null}var Q2=function(X,Y){return X(Y)},W2=function(X,Y){return X(Y)},G2=B,J2=Y0,H2={useState:h,useId:T0,useReducer:u,useEffect:n,useLayoutEffect:m,useInsertionEffect:A1,useTransition:U1,useDeferredValue:O1,useSyncExternalStore:V1,startTransition:I1,useRef:E0,useImperativeHandle:N0,useMemo:c,useCallback:R0,useContext:H0,useDebugValue:z0,version:"18.3.1",Children:x1,render:c1,hydrate:o1,unmountComponentAtNode:Z2,createPortal:p1,createElement:L,createContext:U0,createFactory:u1,cloneElement:Y2,createRef:F0,Fragment:B,isValidElement:Y0,isElement:J2,isFragment:n1,isMemo:X2,findDOMNode:K2,Component:T,PureComponent:P0,memo:j1,forwardRef:_1,flushSync:W2,unstable_batchedUpdates:Q2,StrictMode:G2,Suspense:X0,SuspenseList:o,lazy:b1,__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED:t1};
|
|
2
|
+
export{q2 as e,F2 as f,V2 as g,O as h,L as i,F0 as j,B as k,T as l,k as m,U0 as n,h as o,u as p,n as q,m as r,E0 as s,N0 as t,c as u,R0 as v,H0 as w,z0 as x,A2 as y,T0 as z,V1 as A,I1 as B,O1 as C,U1 as D,A1 as E,P0 as F,j1 as G,_1 as H,x1 as I,X0 as J,b1 as K,o as L,p1 as M,c1 as N,o1 as O,t1 as P,R2 as Q,u1 as R,Y0 as S,n1 as T,X2 as U,Y2 as V,Z2 as W,K2 as X,Q2 as Y,W2 as Z,G2 as _,J2 as $,H2 as aa};
|
|
3
|
+
|
|
4
|
+
//# debugId=5C7A6249FF48B20564756E2164756E21
|
|
5
|
+
//# sourceMappingURL=index-beq660xy.js.map
|