streamlit-nightly 1.35.1.dev20240530__py2.py3-none-any.whl → 1.35.1.dev20240601__py2.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.
Files changed (58) hide show
  1. streamlit/__init__.py +2 -0
  2. streamlit/commands/execution_control.py +23 -13
  3. streamlit/commands/navigation.py +191 -0
  4. streamlit/components/v1/custom_component.py +2 -2
  5. streamlit/elements/media.py +2 -2
  6. streamlit/elements/plotly_chart.py +1 -1
  7. streamlit/elements/widgets/button.py +49 -40
  8. streamlit/elements/widgets/camera_input.py +1 -1
  9. streamlit/elements/widgets/chat.py +1 -1
  10. streamlit/elements/widgets/checkbox.py +1 -1
  11. streamlit/elements/widgets/color_picker.py +1 -1
  12. streamlit/elements/widgets/data_editor.py +1 -1
  13. streamlit/elements/widgets/file_uploader.py +1 -1
  14. streamlit/elements/widgets/multiselect.py +1 -1
  15. streamlit/elements/widgets/number_input.py +1 -1
  16. streamlit/elements/widgets/radio.py +1 -1
  17. streamlit/elements/widgets/select_slider.py +1 -1
  18. streamlit/elements/widgets/selectbox.py +1 -1
  19. streamlit/elements/widgets/slider.py +1 -1
  20. streamlit/elements/widgets/text_widgets.py +2 -2
  21. streamlit/elements/widgets/time_widgets.py +2 -2
  22. streamlit/navigation/__init__.py +13 -0
  23. streamlit/navigation/page.py +197 -0
  24. streamlit/proto/AppPage_pb2.py +3 -3
  25. streamlit/proto/AppPage_pb2.pyi +11 -1
  26. streamlit/proto/ForwardMsg_pb2.py +10 -9
  27. streamlit/proto/ForwardMsg_pb2.pyi +17 -5
  28. streamlit/proto/Navigation_pb2.py +29 -0
  29. streamlit/proto/Navigation_pb2.pyi +79 -0
  30. streamlit/proto/NewSession_pb2.py +24 -24
  31. streamlit/proto/NewSession_pb2.pyi +5 -1
  32. streamlit/runtime/app_session.py +35 -21
  33. streamlit/runtime/fragment.py +18 -2
  34. streamlit/runtime/pages_manager.py +354 -0
  35. streamlit/runtime/scriptrunner/script_run_context.py +13 -2
  36. streamlit/runtime/scriptrunner/script_runner.py +23 -37
  37. streamlit/source_util.py +25 -11
  38. streamlit/static/asset-manifest.json +4 -4
  39. streamlit/static/index.html +1 -1
  40. streamlit/static/static/js/8571.cfc22b99.chunk.js +1 -0
  41. streamlit/static/static/js/9945.47d54f35.chunk.js +2 -0
  42. streamlit/static/static/js/{main.9978e612.js → main.707da454.js} +2 -2
  43. streamlit/testing/v1/app_test.py +7 -1
  44. streamlit/testing/v1/local_script_runner.py +6 -1
  45. streamlit/watcher/local_sources_watcher.py +20 -10
  46. streamlit/web/bootstrap.py +1 -19
  47. streamlit/web/server/routes.py +23 -25
  48. streamlit/web/server/server.py +9 -8
  49. {streamlit_nightly-1.35.1.dev20240530.dist-info → streamlit_nightly-1.35.1.dev20240601.dist-info}/METADATA +1 -1
  50. {streamlit_nightly-1.35.1.dev20240530.dist-info → streamlit_nightly-1.35.1.dev20240601.dist-info}/RECORD +56 -50
  51. streamlit/static/static/js/5117.04bfe5d3.chunk.js +0 -1
  52. streamlit/static/static/js/6950.70fe55c2.chunk.js +0 -2
  53. /streamlit/static/static/js/{6950.70fe55c2.chunk.js.LICENSE.txt → 9945.47d54f35.chunk.js.LICENSE.txt} +0 -0
  54. /streamlit/static/static/js/{main.9978e612.js.LICENSE.txt → main.707da454.js.LICENSE.txt} +0 -0
  55. {streamlit_nightly-1.35.1.dev20240530.data → streamlit_nightly-1.35.1.dev20240601.data}/scripts/streamlit.cmd +0 -0
  56. {streamlit_nightly-1.35.1.dev20240530.dist-info → streamlit_nightly-1.35.1.dev20240601.dist-info}/WHEEL +0 -0
  57. {streamlit_nightly-1.35.1.dev20240530.dist-info → streamlit_nightly-1.35.1.dev20240601.dist-info}/entry_points.txt +0 -0
  58. {streamlit_nightly-1.35.1.dev20240530.dist-info → streamlit_nightly-1.35.1.dev20240601.dist-info}/top_level.txt +0 -0
@@ -31,6 +31,7 @@ from streamlit.runtime.caching.storage.dummy_cache_storage import (
31
31
  )
32
32
  from streamlit.runtime.media_file_manager import MediaFileManager
33
33
  from streamlit.runtime.memory_media_file_storage import MemoryMediaFileStorage
34
+ from streamlit.runtime.pages_manager import PagesManager
34
35
  from streamlit.runtime.secrets import Secrets
35
36
  from streamlit.runtime.state.common import TESTING_KEY
36
37
  from streamlit.runtime.state.safe_session_state import SafeSessionState
@@ -321,6 +322,7 @@ class AppTest:
321
322
  )
322
323
  mock_runtime.cache_storage_manager = MemoryCacheStorageManager()
323
324
  Runtime._instance = mock_runtime
325
+ pages_manager = PagesManager(self._script_path, setup_watcher=False)
324
326
  with source_util._pages_cache_lock:
325
327
  saved_cached_pages = source_util._cached_pages
326
328
  source_util._cached_pages = None
@@ -333,7 +335,11 @@ class AppTest:
333
335
  st.secrets = new_secrets
334
336
 
335
337
  script_runner = LocalScriptRunner(
336
- self._script_path, self.session_state, args=self.args, kwargs=self.kwargs
338
+ self._script_path,
339
+ self.session_state,
340
+ pages_manager,
341
+ args=self.args,
342
+ kwargs=self.kwargs,
337
343
  )
338
344
  with patch_config_options({"global.appTest": True}):
339
345
  self._tree = script_runner.run(
@@ -16,7 +16,7 @@ from __future__ import annotations
16
16
  import os
17
17
  import time
18
18
  import types
19
- from typing import Any
19
+ from typing import TYPE_CHECKING, Any
20
20
  from urllib import parse
21
21
 
22
22
  from streamlit import runtime
@@ -31,6 +31,9 @@ from streamlit.runtime.scriptrunner.script_run_context import ScriptRunContext
31
31
  from streamlit.runtime.state.safe_session_state import SafeSessionState
32
32
  from streamlit.testing.v1.element_tree import ElementTree, parse_tree_from_messages
33
33
 
34
+ if TYPE_CHECKING:
35
+ from streamlit.runtime.pages_manager import PagesManager
36
+
34
37
 
35
38
  class LocalScriptRunner(ScriptRunner):
36
39
  """Subclasses ScriptRunner to provide some testing features."""
@@ -39,6 +42,7 @@ class LocalScriptRunner(ScriptRunner):
39
42
  self,
40
43
  script_path: str,
41
44
  session_state: SafeSessionState,
45
+ pages_manager: "PagesManager",
42
46
  args=None,
43
47
  kwargs=None,
44
48
  ):
@@ -61,6 +65,7 @@ class LocalScriptRunner(ScriptRunner):
61
65
  initial_rerun_data=RerunData(),
62
66
  user_info={"email": "test@test.com"},
63
67
  fragment_storage=MemoryFragmentStorage(),
68
+ pages_manager=pages_manager,
64
69
  )
65
70
 
66
71
  # Accumulates all ScriptRunnerEvents emitted by us.
@@ -19,17 +19,19 @@ import os
19
19
  import sys
20
20
  import types
21
21
  from pathlib import Path
22
- from typing import Callable, Final
22
+ from typing import TYPE_CHECKING, Callable, Final
23
23
 
24
24
  from streamlit import config, file_util
25
25
  from streamlit.folder_black_list import FolderBlackList
26
26
  from streamlit.logger import get_logger
27
- from streamlit.source_util import get_pages
28
27
  from streamlit.watcher.path_watcher import (
29
28
  NoOpPathWatcher,
30
29
  get_default_path_watcher_class,
31
30
  )
32
31
 
32
+ if TYPE_CHECKING:
33
+ from streamlit.runtime.pages_manager import PagesManager
34
+
33
35
  _LOGGER: Final = get_logger(__name__)
34
36
 
35
37
  WatchedModule = collections.namedtuple("WatchedModule", ["watcher", "module_name"])
@@ -40,8 +42,9 @@ PathWatcher = None
40
42
 
41
43
 
42
44
  class LocalSourcesWatcher:
43
- def __init__(self, main_script_path: str):
44
- self._main_script_path = os.path.abspath(main_script_path)
45
+ def __init__(self, pages_manager: "PagesManager"):
46
+ self._pages_manager = pages_manager
47
+ self._main_script_path = os.path.abspath(self._pages_manager.main_script_path)
45
48
  self._script_folder = os.path.dirname(self._main_script_path)
46
49
  self._on_file_changed: list[Callable[[str], None]] = []
47
50
  self._is_closed = False
@@ -58,22 +61,29 @@ class LocalSourcesWatcher:
58
61
  self.update_watched_pages()
59
62
 
60
63
  def update_watched_pages(self) -> None:
61
- old_watched_pages = self._watched_pages
64
+ old_page_paths = self._watched_pages.copy()
62
65
  new_pages_paths: set[str] = set()
63
66
 
64
- for page_info in get_pages(self._main_script_path).values():
67
+ for page_info in self._pages_manager.get_pages().values():
68
+ if not page_info["script_path"]:
69
+ continue
70
+
65
71
  new_pages_paths.add(page_info["script_path"])
66
- if page_info["script_path"] not in old_watched_pages:
72
+ if page_info["script_path"] not in self._watched_pages:
67
73
  self._register_watcher(
68
74
  page_info["script_path"],
69
75
  module_name=None,
70
76
  )
71
77
 
72
- for old_page_path in old_watched_pages:
73
- if old_page_path not in new_pages_paths:
78
+ for old_page_path in old_page_paths:
79
+ # Only remove pages that are no longer valid files
80
+ if old_page_path not in new_pages_paths and not os.path.isfile(
81
+ old_page_path
82
+ ):
74
83
  self._deregister_watcher(old_page_path)
84
+ self._watched_pages.remove(old_page_path)
75
85
 
76
- self._watched_pages = new_pages_paths
86
+ self._watched_pages = self._watched_pages.union(new_pages_paths)
77
87
 
78
88
  def register_file_change_callback(self, cb: Callable[[str], None]) -> None:
79
89
  self._on_file_changed.append(cb)
@@ -18,7 +18,6 @@ import asyncio
18
18
  import os
19
19
  import signal
20
20
  import sys
21
- from pathlib import Path
22
21
  from typing import Any, Final
23
22
 
24
23
  from streamlit import (
@@ -34,8 +33,7 @@ from streamlit import (
34
33
  from streamlit.config import CONFIG_FILENAMES
35
34
  from streamlit.git_util import MIN_GIT_VERSION, GitRepo
36
35
  from streamlit.logger import get_logger
37
- from streamlit.source_util import invalidate_pages_cache
38
- from streamlit.watcher import report_watchdog_availability, watch_dir, watch_file
36
+ from streamlit.watcher import report_watchdog_availability, watch_file
39
37
  from streamlit.web.server import Server, server_address_is_unix_socket, server_util
40
38
 
41
39
  _LOGGER: Final = get_logger(__name__)
@@ -348,21 +346,6 @@ def _install_config_watchers(flag_options: dict[str, Any]) -> None:
348
346
  watch_file(filename, on_config_changed)
349
347
 
350
348
 
351
- def _install_pages_watcher(main_script_path_str: str) -> None:
352
- def _on_pages_changed(_path: str) -> None:
353
- invalidate_pages_cache()
354
-
355
- main_script_path = Path(main_script_path_str)
356
- pages_dir = main_script_path.parent / "pages"
357
-
358
- watch_dir(
359
- str(pages_dir),
360
- _on_pages_changed,
361
- glob_pattern="*.py",
362
- allow_nonexistent=True,
363
- )
364
-
365
-
366
349
  def run(
367
350
  main_script_path: str,
368
351
  is_hello: bool,
@@ -379,7 +362,6 @@ def run(
379
362
  _fix_pydeck_mapbox_api_warning()
380
363
  _fix_pydantic_duplicate_validators_error()
381
364
  _install_config_watchers(flag_options)
382
- _install_pages_watcher(main_script_path)
383
365
 
384
366
  # Create the server. It won't start running yet.
385
367
  server = Server(main_script_path, is_hello)
@@ -41,10 +41,15 @@ def allow_cross_origin_requests() -> bool:
41
41
 
42
42
 
43
43
  class StaticFileHandler(tornado.web.StaticFileHandler):
44
- def initialize(self, path, default_filename, get_pages):
45
- self._pages = get_pages()
44
+ def initialize(
45
+ self,
46
+ path: str,
47
+ default_filename: str | None = None,
48
+ reserved_paths: list[str] = [],
49
+ ):
50
+ self._reserved_paths = reserved_paths
46
51
 
47
- super().initialize(path=path, default_filename=default_filename)
52
+ super().initialize(path, default_filename)
48
53
 
49
54
  def set_extra_headers(self, path: str) -> None:
50
55
  """Disable cache for HTML files.
@@ -59,28 +64,21 @@ class StaticFileHandler(tornado.web.StaticFileHandler):
59
64
  else:
60
65
  self.set_header("Cache-Control", "public")
61
66
 
62
- def parse_url_path(self, url_path: str) -> str:
63
- url_parts = url_path.split("/")
64
-
65
- maybe_page_name = url_parts[0]
66
- if maybe_page_name in self._pages:
67
- # If we're trying to navigate to a page, we return "index.html"
68
- # directly here instead of deferring to the superclass below after
69
- # modifying the url_path. The reason why is that tornado handles
70
- # requests to "directories" (which is what navigating to a page
71
- # looks like) by appending a trailing '/' if there is none and
72
- # redirecting.
73
- #
74
- # This would work, but it
75
- # * adds an unnecessary redirect+roundtrip
76
- # * adds a trailing '/' to the URL appearing in the browser, which
77
- # looks bad
78
- if len(url_parts) == 1:
79
- return "index.html"
80
-
81
- url_path = "/".join(url_parts[1:])
82
-
83
- return super().parse_url_path(url_path)
67
+ def validate_absolute_path(self, root: str, absolute_path: str) -> str | None:
68
+ try:
69
+ return super().validate_absolute_path(root, absolute_path)
70
+ except tornado.web.HTTPError as e:
71
+ # If the file is not found, and there are no reserved paths,
72
+ # we try to serve the default file and allow the frontend to handle the issue.
73
+ if e.status_code == 404:
74
+ if any([self.path.endswith(x) for x in self._reserved_paths]):
75
+ raise e
76
+
77
+ self.path = self.parse_url_path(self.default_filename or "index.html")
78
+ absolute_path = self.get_absolute_path(self.root, self.path)
79
+ return super().validate_absolute_path(root, absolute_path)
80
+
81
+ raise e
84
82
 
85
83
  def write_error(self, status_code: int, **kwargs) -> None:
86
84
  if status_code == 404:
@@ -28,7 +28,7 @@ import tornado.web
28
28
  import tornado.websocket
29
29
  from tornado.httpserver import HTTPServer
30
30
 
31
- from streamlit import cli_util, config, file_util, source_util, util
31
+ from streamlit import cli_util, config, file_util, util
32
32
  from streamlit.config_option import ConfigOption
33
33
  from streamlit.logger import get_logger
34
34
  from streamlit.runtime import Runtime, RuntimeConfig, RuntimeState
@@ -86,7 +86,8 @@ UPLOAD_FILE_ENDPOINT: Final = "/_stcore/upload_file"
86
86
  STREAM_ENDPOINT: Final = r"_stcore/stream"
87
87
  METRIC_ENDPOINT: Final = r"(?:st-metrics|_stcore/metrics)"
88
88
  MESSAGE_ENDPOINT: Final = r"_stcore/message"
89
- HEALTH_ENDPOINT: Final = r"(?:healthz|_stcore/health)"
89
+ NEW_HEALTH_ENDPOINT: Final = "_stcore/health"
90
+ HEALTH_ENDPOINT: Final = rf"(?:healthz|{NEW_HEALTH_ENDPOINT})"
90
91
  HOST_CONFIG_ENDPOINT: Final = r"_stcore/host-config"
91
92
  SCRIPT_HEALTH_CHECK_ENDPOINT: Final = (
92
93
  r"(?:script-health-check|_stcore/script-health-check)"
@@ -368,12 +369,12 @@ class Server:
368
369
  {
369
370
  "path": "%s/" % static_path,
370
371
  "default_filename": "index.html",
371
- "get_pages": lambda: {
372
- page_info["page_name"]
373
- for page_info in source_util.get_pages(
374
- self.main_script_path
375
- ).values()
376
- },
372
+ "reserved_paths": [
373
+ # These paths are required for identifying
374
+ # the base url path.
375
+ NEW_HEALTH_ENDPOINT,
376
+ HOST_CONFIG_ENDPOINT,
377
+ ],
377
378
  },
378
379
  ),
379
380
  (make_url_path_regex(base, trailing_slash=False), AddSlashHandler),
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: streamlit-nightly
3
- Version: 1.35.1.dev20240530
3
+ Version: 1.35.1.dev20240601
4
4
  Summary: A faster way to build and share data apps
5
5
  Home-page: https://streamlit.io
6
6
  Author: Snowflake Inc
@@ -1,4 +1,4 @@
1
- streamlit/__init__.py,sha256=IJ5mt2em2wz5LiIwpYKWHmnyEZSjV5JKgrd_4HJ_hJg,8398
1
+ streamlit/__init__.py,sha256=4vhEvs6bhk9x9uErECLN2QmnR0GZAO1EtZVmDm-JKUs,8516
2
2
  streamlit/__main__.py,sha256=8vHowjccJfFMwrA22IEe3ynE9F670mkspbo9rYdM0ks,868
3
3
  streamlit/case_converters.py,sha256=PS5S4rFnx1eeKH1-nUNqQ_c1qeoeEIn-1XQPrsG_doU,2468
4
4
  streamlit/cli_util.py,sha256=4W2N-4lP4h9xMoAyHM7bNIQs43VwrNnuUGLGbQaEw2Q,1407
@@ -27,7 +27,7 @@ streamlit/material_icon_names.py,sha256=zZ37bxxkwxuaYPjPgFmoMJxGsrV1Q5iVlbUKy9j9
27
27
  streamlit/net_util.py,sha256=iKiryiqOgPZca4mcI31rrrmAzwTNBcitSXqeeryYXsQ,3280
28
28
  streamlit/platform.py,sha256=KOj3Scd1UxYF5K7460bwYjhRHBb_K_Pk_ed5Z3aJ5_4,1104
29
29
  streamlit/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
30
- streamlit/source_util.py,sha256=21c98etHrDfg_MyLMohG7ByrEC52THuUP-E7pkCcmiE,5749
30
+ streamlit/source_util.py,sha256=2KOVrEhBATVh9M_bnbg9OwWPORg1riCB63JzE7g8oK0,6145
31
31
  streamlit/string_util.py,sha256=syhyJoC_QNwSU1wYcnGOsYwT5OX2uHDggXkzFNCjWQo,6347
32
32
  streamlit/temporary_directory.py,sha256=eBv5q0CR9GApa-itZBaGtqQKMl248H0HojEVKzkS9cc,1627
33
33
  streamlit/time_util.py,sha256=IoZTYEqz1qX_vzieLeuyjHhF5fpDmqc49DYFK4Gsy4w,2844
@@ -37,9 +37,10 @@ streamlit/user_info.py,sha256=dqNEEanUVJDLhn4cTmeFG1iUfSQFDWuMQjjQHmDtE6I,3472
37
37
  streamlit/util.py,sha256=5fna6hGM_WBZugMjzIXqqFD41JrFL3QBicfcAmjyefw,6379
38
38
  streamlit/version.py,sha256=pXGa4A8rovFisSPMpfTkw8U85VIhnxriooj6bHVjTfY,3478
39
39
  streamlit/commands/__init__.py,sha256=Vrf1yVMOcTyhUPnYvsfyeL96Vpd5z8KoSV5ZzTcTQgU,616
40
- streamlit/commands/execution_control.py,sha256=YBaX8ikORIJEmlvWKNqTDhDnhz_PPxqAGn4P2FcWVtk,5429
40
+ streamlit/commands/execution_control.py,sha256=H2Xb9ou_9nXmusEcK0ZuE0ct8StuE50Hse9Tm0T1r-I,5711
41
41
  streamlit/commands/experimental_query_params.py,sha256=hMWuWJPIlebWhlEZbrwPSLtAfSx3gSke8_nU39-EKIc,5042
42
42
  streamlit/commands/logo.py,sha256=4ORzbCGwo7Vm3qnHU4ZoofAy7z1o6JHGzfM4yAUrNMQ,5733
43
+ streamlit/commands/navigation.py,sha256=FHcsHUHfwMwLuCA38O2jyzRV1pe8o9lkZaZgSOxeKlE,6644
43
44
  streamlit/commands/page_config.py,sha256=FJXZ4MvNlgeVC3QUmE9vagHSfTvHaXoBxuXTuJrVSog,12997
44
45
  streamlit/components/__init__.py,sha256=Vrf1yVMOcTyhUPnYvsfyeL96Vpd5z8KoSV5ZzTcTQgU,616
45
46
  streamlit/components/lib/__init__.py,sha256=Vrf1yVMOcTyhUPnYvsfyeL96Vpd5z8KoSV5ZzTcTQgU,616
@@ -51,7 +52,7 @@ streamlit/components/v1/__init__.py,sha256=I7xa1wfGQY84U_nWWsq1i_HO5kCQ7f0BE5_dE
51
52
  streamlit/components/v1/component_arrow.py,sha256=BvqxXmK3tx6zv3Ah0YzVYRNpwJBfh42Yh73VlK-q1PE,4125
52
53
  streamlit/components/v1/component_registry.py,sha256=C4ak7ev3xuRA8paQkDgkg7aza5F83hdD9DRqqGaETTo,4200
53
54
  streamlit/components/v1/components.py,sha256=6D51UudnEwOMvMqoZsAlaSiYqY8yXSezlIzdCgdlG0Q,1274
54
- streamlit/components/v1/custom_component.py,sha256=FiF-_EWFoubMSDC8qfze_oNvjULeqNYPRk2_T-yi6bM,9320
55
+ streamlit/components/v1/custom_component.py,sha256=pWQ2_TNAh_P7bGeNETVX6nLJtgZaDwk5jJJlbfjQOBE,9324
55
56
  streamlit/connections/__init__.py,sha256=WSOEtrwhiNYti89iCk3O7I83rurZl8gXoM8tA2d_E-U,1083
56
57
  streamlit/connections/base_connection.py,sha256=8rzoGovDem0o3FzJTikP0IRdL7i3lBqHhyESBnER9no,7465
57
58
  streamlit/connections/snowflake_connection.py,sha256=z8yUWzHnoDOriydUc6KbDQStI5emvmqkEUtGf0c-AFc,12517
@@ -79,9 +80,9 @@ streamlit/elements/json.py,sha256=d1PHLaHDsrgQEv__KspWvwIvcufru_v5L871qEPStWM,33
79
80
  streamlit/elements/layouts.py,sha256=YJ-4Aizf_DPgvNeGYNDXiyOL9KkPQ_j5uXCaghXDxNI,28251
80
81
  streamlit/elements/map.py,sha256=gyBrvGnWM08InRYPeakAk028_OBd5N-iiYoehl0GOx8,16638
81
82
  streamlit/elements/markdown.py,sha256=gL_6MVMTysJFm_aHLimyJVj6BmGdhuGRnemvbzcquAc,10384
82
- streamlit/elements/media.py,sha256=ITHQYPWi2f8lxTv7D6HgH7GehafKkIBxv85BQWApKLg,29678
83
+ streamlit/elements/media.py,sha256=svqoP1loCHK7UOXVk8XfwHYjQ8HMCsSO2VTkCvPVRhY,29682
83
84
  streamlit/elements/metric.py,sha256=2kTFp8T-_s2z49uBTiD6zc9y_YMET1KQG08dm0XfjQo,10118
84
- streamlit/elements/plotly_chart.py,sha256=Kq6sHDQVKUMKfD0mICG3OhJDkCtsC6MqOXhdCZnceHU,19229
85
+ streamlit/elements/plotly_chart.py,sha256=9FX3plzpOv3Emlk3I2WvHVLifKcpvKEYVD-TaFgwoN8,19231
85
86
  streamlit/elements/progress.py,sha256=7PbyifyZ4vqYijBonXWLsujST3mVaKVyMaYvP3yinEk,5844
86
87
  streamlit/elements/pyplot.py,sha256=rKZLojb4_Ytb6Ninhvf4G8USyVUHPPN0lGQJBpgWpzY,6835
87
88
  streamlit/elements/snow.py,sha256=WHqk8zmfOr5iD0R-wLlAdlIkDDbiaayguTVmA4e7V_Q,1439
@@ -104,21 +105,21 @@ streamlit/elements/lib/streamlit_plotly_theme.py,sha256=DgMP_PWTfFO5J__q8bGxoT3e
104
105
  streamlit/elements/lib/subtitle_utils.py,sha256=eYfsTAKub-55nx0kik9T6nJ8dTyeUazPbMNfkIP-BNg,6246
105
106
  streamlit/elements/lib/utils.py,sha256=CFqaf3r0syj7RosTA5DMZb35wbwCd1X3bM4Pa2kyPbY,4934
106
107
  streamlit/elements/widgets/__init__.py,sha256=Vrf1yVMOcTyhUPnYvsfyeL96Vpd5z8KoSV5ZzTcTQgU,616
107
- streamlit/elements/widgets/button.py,sha256=TekYcrtZ4RbdbaheUeCUel8oobVpMKga6eq2axQdh80,32523
108
- streamlit/elements/widgets/camera_input.py,sha256=xwKyHIDKBvB5uzmIDEQNKInAK6L--7VJMl2wnqoYKB8,9184
109
- streamlit/elements/widgets/chat.py,sha256=Ai6kmb8WBm48YcDxiq39JXVzdiTNaC7iBrVd-BmTHnA,14327
110
- streamlit/elements/widgets/checkbox.py,sha256=AIy3KGwP-KGvTK0ji6kR8-QDiP9LOY3EGLIZgDLdO9M,12616
111
- streamlit/elements/widgets/color_picker.py,sha256=8ksrcCuL-OpkVk_QiaC5Pv2Q2Fwaj3cr-jQo4X8UZMw,9185
112
- streamlit/elements/widgets/data_editor.py,sha256=nGrYmLIhluHQfa_HSQoYgM5TLy4aBa9w71QA04EYYA4,36465
113
- streamlit/elements/widgets/file_uploader.py,sha256=54zwkpCviowSzAxqXVjAF1lpd0pe3aeI21L6sQ2SW-Y,17699
114
- streamlit/elements/widgets/multiselect.py,sha256=5gBn0wFdQX8UPo3rDK4ZgWL2JZodw5wZih-YitLPaFs,13804
115
- streamlit/elements/widgets/number_input.py,sha256=HZ5ARI1Hs9SE1lN88nhAyHV63QbEPD0AnKzO_6Wa-hY,18079
116
- streamlit/elements/widgets/radio.py,sha256=S5fA9N9oWGnCvjFwwlN11Kkhr7t8y4nr9bFQH430eFA,12876
117
- streamlit/elements/widgets/select_slider.py,sha256=JvGILZEO-tVrTNtA0B8Ql7wYwSzCGmlDgJcJS_wFiRg,13494
118
- streamlit/elements/widgets/selectbox.py,sha256=YFdaUPL3fv8gesyvF7eGTCy7sHOSwMCH7jQvldDk_vk,11717
119
- streamlit/elements/widgets/slider.py,sha256=WMhqlW7hgtqU-u-9_x1Vee_33DGPOBzGK7bqQo-vIbA,26704
120
- streamlit/elements/widgets/text_widgets.py,sha256=Wa387TwnOy1Hw5vhfJy3J8V0s1e2V1PbNRNADzZ9Ga4,22376
121
- streamlit/elements/widgets/time_widgets.py,sha256=3j8TzRwdV6VpooX_nHvDZBVXtaTp1K5wpjQWnYlAu1I,30085
108
+ streamlit/elements/widgets/button.py,sha256=uzzAgemQVMVtr-M5OnFFKhs4DnKw-GX5PNnHI1zqlGU,33018
109
+ streamlit/elements/widgets/camera_input.py,sha256=sJMk8vUMczkDyQoY0hVT--6joU-aCqToGg0V6dHLzgM,9186
110
+ streamlit/elements/widgets/chat.py,sha256=rPtD3xCRboQc_bKzgy2jOmB-MyRtUzYC4lciDgA7vBg,14329
111
+ streamlit/elements/widgets/checkbox.py,sha256=8Iz0-P6Cg7S1Cy9VHwQnOdkMhHi93857wdJM2c8LQlE,12618
112
+ streamlit/elements/widgets/color_picker.py,sha256=7T_KH8D1aDa1k3qEVX1iEd4RmVbEubYRSTLgts-dldc,9187
113
+ streamlit/elements/widgets/data_editor.py,sha256=xkM0L78h7h3wm0yOR8OUOmfICC9i4Inzf626m-315uc,36467
114
+ streamlit/elements/widgets/file_uploader.py,sha256=LQcl-kJOgM7o8J8HQvr7aZB_rGslppOPOEpQownYfmo,17701
115
+ streamlit/elements/widgets/multiselect.py,sha256=KIQ8D1eettSTh6x_JjUr1EqnXcFNs3rjN5AaWce6wVI,13806
116
+ streamlit/elements/widgets/number_input.py,sha256=8x2bnRQlp-bp6vezUMT6gm7z0k8QXFMqJ_u4K7i32PE,18081
117
+ streamlit/elements/widgets/radio.py,sha256=yvXxt-zkXn8FxXTTw2Y1MmtbCAbns5_dVP4xLBrCNHo,12878
118
+ streamlit/elements/widgets/select_slider.py,sha256=nHkb2co_kYAQjT_pgH7PBbX-WlcJhzIqWV7bFQDSgaU,13496
119
+ streamlit/elements/widgets/selectbox.py,sha256=VF8orPhTVsuRGGWiQuewUU3XwqDuFNb4a4DNzHYDy8w,11719
120
+ streamlit/elements/widgets/slider.py,sha256=tqpUvU-gWR9WkZAHfNZlWGOkzW6DEatomFXskh-brZY,26706
121
+ streamlit/elements/widgets/text_widgets.py,sha256=fFLyOiaLsEFhScU87ZTKb_KgGyu0qmsr7vr0zSxU_WQ,22380
122
+ streamlit/elements/widgets/time_widgets.py,sha256=budGiitqkD_2okBjLt41sLX_DDKoKHjrQ3mqnz3OEm4,30089
122
123
  streamlit/external/__init__.py,sha256=Vrf1yVMOcTyhUPnYvsfyeL96Vpd5z8KoSV5ZzTcTQgU,616
123
124
  streamlit/external/langchain/__init__.py,sha256=sAzaNf4Cje3cJikPBVvF7pj1sEdEvUfKIEY_Z6Zk8cA,814
124
125
  streamlit/external/langchain/streamlit_callback_handler.py,sha256=kKrusABDJ__KaA_mPnTxumSSYKQjYExaQsoMlELZZGI,15280
@@ -129,10 +130,12 @@ streamlit/hello/pages/0_Animation_Demo.py,sha256=mPOpPBO1Qf--5XewoZjsaQAp_0xnzjJ
129
130
  streamlit/hello/pages/1_Plotting_Demo.py,sha256=hRHcgAxi-bx0L_HySvrWBpEfA9SMdGCCeZD78mlzIDY,1743
130
131
  streamlit/hello/pages/2_Mapping_Demo.py,sha256=egi6UYVnSwURc_jJMY3L4vjc94_VBo0KveLJmy9_j2Y,3826
131
132
  streamlit/hello/pages/3_DataFrame_Demo.py,sha256=G0c3h04Kk8sHcY63AIKHcCWLSqoZiHTFgjGGRAOGCN8,2527
133
+ streamlit/navigation/__init__.py,sha256=Vrf1yVMOcTyhUPnYvsfyeL96Vpd5z8KoSV5ZzTcTQgU,616
134
+ streamlit/navigation/page.py,sha256=KWt4fqNXXFddu6VB20R0eScU09ES0dh8WuZV7rOpmhg,7091
132
135
  streamlit/proto/Alert_pb2.py,sha256=ozVdLSVNlSUTIbZEprFYnctUqu74-FFTlSX5okRr4XY,1439
133
136
  streamlit/proto/Alert_pb2.pyi,sha256=Kk7rEGB2itPzq2q5cNhoFfPYdAcD6V19uDJEZ7E6fZA,3116
134
- streamlit/proto/AppPage_pb2.py,sha256=KeDDNVEEGyhhd338WXp2osH0eSUWwbsZiZKhjp9RmGE,1208
135
- streamlit/proto/AppPage_pb2.pyi,sha256=ZQFPWcRzxsv8koc4JrfHYeHeB9jljX45jx49pKxADtw,1971
137
+ streamlit/proto/AppPage_pb2.py,sha256=vMw29cxfU6bm__dK9tSDOPMuNqDGgz-1-9CD-MuNZIM,1341
138
+ streamlit/proto/AppPage_pb2.pyi,sha256=kTbf6lYa1OeVve0A_JQxcx1auSIqg411aP7WtNJSkt4,2501
136
139
  streamlit/proto/ArrowNamedDataSet_pb2.py,sha256=8G84C2kf4TIKLxf2YMJGwyU9yxUqqP5NhC8sRn1agHo,1410
137
140
  streamlit/proto/ArrowNamedDataSet_pb2.pyi,sha256=794aqFA6ifC_pQz5YiMUxrtBqOUK9pbE0KVzjM8_xyk,2051
138
141
  streamlit/proto/ArrowVegaLiteChart_pb2.py,sha256=dsBisle-pg4SVya3_1_ooqr_Ouw-zOdAFyfHYBGS1Nc,1822
@@ -191,8 +194,8 @@ streamlit/proto/Favicon_pb2.py,sha256=JyE3MQLWfEVUYGaX-lwYD3qhs0FwP7P2pzL7P6nj4n
191
194
  streamlit/proto/Favicon_pb2.pyi,sha256=_952Zj25kkWqJL8aIHw44bdqG3tBN87UKLtscOgBXCk,1301
192
195
  streamlit/proto/FileUploader_pb2.py,sha256=ipG_ypmjSaUlV1JLUYQ03PQssTDQuwwYMUo0bbYRZAA,1707
193
196
  streamlit/proto/FileUploader_pb2.pyi,sha256=6wboZSzqeuoPnj5jTHEeD08gHlrTF3QoAS0nG0riHkI,3209
194
- streamlit/proto/ForwardMsg_pb2.py,sha256=Kldh9AQYt9ydh4kG8s2WKRO9yZoHHhmuGcP-OLYa8k8,4932
195
- streamlit/proto/ForwardMsg_pb2.pyi,sha256=5IJvaC4BizczMkPA_pwzkUEslB2UKHr82dh8wvPg6y8,12304
197
+ streamlit/proto/ForwardMsg_pb2.py,sha256=ohb4qj6mR8AqSq4CI_7sQM_8WubGn2N6VKnxIEpT-88,5177
198
+ streamlit/proto/ForwardMsg_pb2.pyi,sha256=q4Q3bIWJJI_uFV_UIYwkMPeT9KHmgnjskEsM-P0u1nA,13018
196
199
  streamlit/proto/GitInfo_pb2.py,sha256=jEhSlkF9hPvafOK0a9VlOqMCm2VeyEt1YUJ2E-cvusE,1574
197
200
  streamlit/proto/GitInfo_pb2.pyi,sha256=vDelpGEYEAAHXbcFFeWe30BKBNvmB8xFFByq-lzoSxk,3269
198
201
  streamlit/proto/GraphVizChart_pb2.py,sha256=PBRdJqkEyp9Ol2RJwB255Xdsw1pXZGE_dOfYeuSlkVw,1338
@@ -221,8 +224,10 @@ streamlit/proto/MultiSelect_pb2.py,sha256=HdYv5XM-AwEQak_S4VCutNUp9hTWMHKIuP6nXg
221
224
  streamlit/proto/MultiSelect_pb2.pyi,sha256=0IOWKooO2JC1C-n8BTYuekDyqae1NTXxu6ERB4Qo-C0,3542
222
225
  streamlit/proto/NamedDataSet_pb2.py,sha256=LAx8J9PsxG7Qg9U7M7e3jqz-OzfNmvRC-uu5jiGaHew,1378
223
226
  streamlit/proto/NamedDataSet_pb2.pyi,sha256=A22anWBtsbmnTOTXISh8Ym-MjFzQLPZVxCWZs_hy6D0,2123
224
- streamlit/proto/NewSession_pb2.py,sha256=h7SmfPt8wiLOCXibakGN4dTs3n43e7aTkK2WfWH9kvg,5205
225
- streamlit/proto/NewSession_pb2.pyi,sha256=ROYwnQTCZ_G4UFpdmT5QNOqtLWc_r0UnaEtgVNCfhC0,18437
227
+ streamlit/proto/Navigation_pb2.py,sha256=3a6PvI8G5BJK0033vswAVHLPZI-bn1JNY06b6OiAKR0,1558
228
+ streamlit/proto/Navigation_pb2.pyi,sha256=0ysZ4LspYMvx16fOgPwF1IFJ3TX5oJ1878UIDyFZ3v0,3206
229
+ streamlit/proto/NewSession_pb2.py,sha256=uBFvDyDzRD-MrYMV_j-l5LMrmPR7nr-J-YDkm3VsTC0,5251
230
+ streamlit/proto/NewSession_pb2.pyi,sha256=nH8bIQex85qd6BV9X9Vu7kDSm_tOpdg7StVO5MavpBw,18683
226
231
  streamlit/proto/NumberInput_pb2.py,sha256=FbZBGbEcZMdgnxQ2v0H0Dr7I_xQVRtL_e9Vz2kCojfY,2359
227
232
  streamlit/proto/NumberInput_pb2.pyi,sha256=jbIpxEPSNlN9LZmDcmU7CUDdHz26Ljn2cXpNJIAfQQk,5182
228
233
  streamlit/proto/PageConfig_pb2.py,sha256=R7vneJMgMo-66k65cBtnyJJwU7ObSdVA6y5e3KvuKxA,2117
@@ -281,18 +286,19 @@ streamlit/proto/__init__.py,sha256=tM42Nl1HAphMoWU8F7noymVPJLj3dEnqqIitEQCr2XE,6
281
286
  streamlit/proto/openmetrics_data_model_pb2.py,sha256=cPFvjlswUH9I5Ktoof8XZGlm5v_CHDzq65ZUQKwFEZ0,5938
282
287
  streamlit/proto/openmetrics_data_model_pb2.pyi,sha256=cDrO3xOwEF6iy1BZa-PHqmVKTcv6EXaUkiMHOkYM2-I,20476
283
288
  streamlit/runtime/__init__.py,sha256=Xx5OVY9Nv8Z6ndbYtJBm3lgR2pn83omEOlDaSl9V2dE,1523
284
- streamlit/runtime/app_session.py,sha256=rLuiIX2fO0A2E3mbgKPkWi3T30mdalA7b5jAp_6g_Xw,36663
289
+ streamlit/runtime/app_session.py,sha256=FTqqgzzInNefV1Oy-o7w9sPnJhkyyDAuUPhdQ0B5-08,37234
285
290
  streamlit/runtime/connection_factory.py,sha256=7ImsODVThE6coSyYmyLGREutcULiZuyR9aw7Py-xGhE,12414
286
291
  streamlit/runtime/credentials.py,sha256=U02X0aRktpvDrU4_RDpWuJjXK2m_UX9t6SIWC4aNH70,11500
287
292
  streamlit/runtime/forward_msg_cache.py,sha256=YjoFV9BsvskZywI67AsyNSHfk-bAY2SjruG7Ks4hKi8,9805
288
293
  streamlit/runtime/forward_msg_queue.py,sha256=eYrVeOnjnZCWCin6MW3pTENeAeS4mwZByXHLlWtk4jg,6390
289
- streamlit/runtime/fragment.py,sha256=wMc5HwUEh0Fhk6hIhy5bSsmnqQ6hcps3SoOAntAC9e8,12029
294
+ streamlit/runtime/fragment.py,sha256=csSG5OOw0B5jj9DWnjPWUlV_A3tBZ0RC1Hm-VqxmUBg,12904
290
295
  streamlit/runtime/media_file_manager.py,sha256=z6qcjWk1YiNbvRj3r9vSFZuoDzRscVr9CpNmTJs2Mgc,8510
291
296
  streamlit/runtime/media_file_storage.py,sha256=hQkMC__XRjshEUD73QCSrX3vrfOOO0U7Vf1Uc6qiP90,4375
292
297
  streamlit/runtime/memory_media_file_storage.py,sha256=voiscKQAwKdhIExlsnCaZDRKrKso2yU7KlA92Cgqu2M,6331
293
298
  streamlit/runtime/memory_session_storage.py,sha256=Tx-_3oUg6i9UokpBUIWvqhpWE0WmjtX764KdOzNvDMs,2940
294
299
  streamlit/runtime/memory_uploaded_file_manager.py,sha256=rCLvdZv2nPlWeCiHnwV8phcVV43mUCgW7BaWkmEXgpM,4422
295
300
  streamlit/runtime/metrics_util.py,sha256=FduQ5SReNI9-QK02rRPs4SAPI3usMsiG3QIAf2qmI-Q,14329
301
+ streamlit/runtime/pages_manager.py,sha256=O5R5HHHj5bqa2SlzI1tX6hlI9YKZrX_zP9e9ltUDpPs,14053
296
302
  streamlit/runtime/runtime.py,sha256=WXVV-rFTrtCNXYK_7Kv78jY2LQYc_0NrKC-cm6yYoxM,29318
297
303
  streamlit/runtime/runtime_util.py,sha256=FxOnGmLQWA9eEIWbNe1_l69XZrDGI51swJ4K_vekY9w,4192
298
304
  streamlit/runtime/script_data.py,sha256=-sBITUF0U7DIDL5LE_nFpXAvjnEfiJ9J3HAnnqML9ds,1749
@@ -320,8 +326,8 @@ streamlit/runtime/scriptrunner/magic.py,sha256=-2SineQB2XjEuE8GbeJemtuabv9kKH-aG
320
326
  streamlit/runtime/scriptrunner/magic_funcs.py,sha256=_npS_w-0riPNr1-dPyOSjqrwTXoeSR-gXWFkChQ5Yjc,1056
321
327
  streamlit/runtime/scriptrunner/script_cache.py,sha256=ZpaB4T50_GYfhMc2dajSMXWCmS3kaUJ_tPHNVt_flBg,2856
322
328
  streamlit/runtime/scriptrunner/script_requests.py,sha256=oGSvQ12To4eWX3Rp5edbBkWTFcyxKTIa0HPQnh_m-bw,8027
323
- streamlit/runtime/scriptrunner/script_run_context.py,sha256=41zu9DQ71xed17XMAdEV2mPJLRyUFGEuZw4PqYH1u4w,8818
324
- streamlit/runtime/scriptrunner/script_runner.py,sha256=QT9Xs8pUzSLYpUZLQTat9MQvmdD1okeEYOWfmnRSe4Q,29911
329
+ streamlit/runtime/scriptrunner/script_run_context.py,sha256=bTg5MGd6QhFVlINmHqrBmPwOpVtWarBB7WaJrNJXH80,9199
330
+ streamlit/runtime/scriptrunner/script_runner.py,sha256=p6OdHmCj71LhgZqrBL94rXpl3FsYA9juSpTjh3UW4qU,29067
325
331
  streamlit/runtime/state/__init__.py,sha256=UpfNfPrWJ6rVdD-qc0IP_bwZ4MrcNUjyU9wEKDK-eWM,1528
326
332
  streamlit/runtime/state/common.py,sha256=LtbQPRCz1ZOuomX_tjvz-rgiMxQKQO22wN4JBcc8b98,8171
327
333
  streamlit/runtime/state/query_params.py,sha256=cESFE1Jq4oN6YpgocUsX0f1sSHMyGRoupbxm9X6v3NM,7477
@@ -330,9 +336,9 @@ streamlit/runtime/state/safe_session_state.py,sha256=StGh9V-tm7MCfohgw5FFfwz8tDw
330
336
  streamlit/runtime/state/session_state.py,sha256=jOIrZD94Cn1wrLdPZIcMYPxiGK1gbus1pD4FXSYp4Q4,27500
331
337
  streamlit/runtime/state/session_state_proxy.py,sha256=vg1w054kfdO77fZUgPcHz4A47ghy6hZdp_c6A4ExNIs,5469
332
338
  streamlit/runtime/state/widgets.py,sha256=8uRQgUNZILuL9VNLs_ttdaMggVznj9Yw7Zc0Nva8Xt8,11343
333
- streamlit/static/asset-manifest.json,sha256=ODYhZ8rxkPCZZOjKz5x7qSARs3uK9EPUQYGfLvX2JMc,14353
339
+ streamlit/static/asset-manifest.json,sha256=kO_tnThG1PGkRz8T8ob6u83h1rAFY9MTouSazi2mzD4,14353
334
340
  streamlit/static/favicon.png,sha256=if5cVgw7azxKOvV5FpGixga7JLn23rfnHcy1CdWI1-E,1019
335
- streamlit/static/index.html,sha256=95sofCbChN7QCsukf8P_6bOcZ3-Jcbsy0sKesFe6hL0,891
341
+ streamlit/static/index.html,sha256=8XRCPKxRtxLIgSC8CZKBeX8NmAn7pLfstJB55Ptd7Fw,891
336
342
  streamlit/static/static/css/3466.8b8f33d6.chunk.css,sha256=4m2lbj1eVFXSaGCRBHZNhqyRz-4Ce9KogjJPxIq6On8,33275
337
343
  streamlit/static/static/css/5441.e3b876c5.chunk.css,sha256=XExLUUHInaWJp_m8TtBWhQ88SUuxZl6Jnnw5NA6rwI4,2633
338
344
  streamlit/static/static/css/8148.49dfd2ce.chunk.css,sha256=LjBHDWjz8Hi0dr3DH9ujdlw4E2llc0xdDQHR64H4NQ8,12090
@@ -366,7 +372,6 @@ streamlit/static/static/js/4500.b6f348d1.chunk.js,sha256=-lgkjMD-44gw_WlOjkI7v7R
366
372
  streamlit/static/static/js/4666.c4b22a63.chunk.js,sha256=JytLRCjyXoE3jTzvwVfICWkK_cw_t7eTVrxXf964dyk,14830
367
373
  streamlit/static/static/js/474.7eb0c6cd.chunk.js,sha256=dLMpCe2EfprzI2KdcoJtsKN5H4hPYCw3XLrqgWiR_mM,2741
368
374
  streamlit/static/static/js/5106.44f0ff51.chunk.js,sha256=aAGpqRrzVOlFHqBopYM2GLt9qcZ9h3fRxgFcuJ16nZw,7161
369
- streamlit/static/static/js/5117.04bfe5d3.chunk.js,sha256=X9_mcI6Axh7gJ1vHpnWY3WwvrJP4_8RjDj7lf3Sflps,21681
370
375
  streamlit/static/static/js/5249.f2f4070d.chunk.js,sha256=UYr_sBnftyILGh3k5zbw6FTT48T2_TJmiz2jVYFUAmg,2263616
371
376
  streamlit/static/static/js/5345.73d26e5d.chunk.js,sha256=22lINwDLHPN_xtCEcBrOh89IC2S2Jzz-3JIFVw1Pu-8,15117
372
377
  streamlit/static/static/js/5379.f08eddd1.chunk.js,sha256=uX5jvHuMODo70gBpOcsklnvf2M-hA7G0hnTTooFagY8,10896
@@ -376,8 +381,6 @@ streamlit/static/static/js/6013.4ba2d616.chunk.js,sha256=7hh155iz4ajC_ZbHQ1Vp2bk
376
381
  streamlit/static/static/js/6405.ac5a6f23.chunk.js,sha256=u7b4I7WVspIbm8eKcgMs2L0aTG3f414AHrJtDsHfwSU,13239
377
382
  streamlit/static/static/js/6718.802da17e.chunk.js,sha256=RhbHOhX-Uk28eSUtfqK_O0TkBhdM0JXUUy8fXc_qmkA,24494
378
383
  streamlit/static/static/js/6853.93dd1c4c.chunk.js,sha256=z1kvBUQY-7P7Hh7q0QQUiMCRmBbiW7n0ZfV1p9Yo0Ok,1372
379
- streamlit/static/static/js/6950.70fe55c2.chunk.js,sha256=nZ3vzfPR9WCPVmGHykY1t6tmG48x88cmnTQkYkfknf0,398809
380
- streamlit/static/static/js/6950.70fe55c2.chunk.js.LICENSE.txt,sha256=6s4mSSf8NHGJqUCFAj3VgMXZuNYyAzshKRhvxYZTQoU,281
381
384
  streamlit/static/static/js/7142.83028745.chunk.js,sha256=B803yufbyma709LcFo35WRl6umQplzb28w6vW25Enzk,88545
382
385
  streamlit/static/static/js/7175.583ff733.chunk.js,sha256=pwOAribbw0XrEicFs6tBacjedAGeOIPGkkaRe6w7Vnw,9629
383
386
  streamlit/static/static/js/7323.b74cc85b.chunk.js,sha256=sfPJNsGETBOTEkhP_kUZU2oT1-UMq3HEN58yFm8tRHg,3388121
@@ -393,6 +396,7 @@ streamlit/static/static/js/8477.de889fe5.chunk.js,sha256=zSHIjuqcBrVcEFGrUI_xbwR
393
396
  streamlit/static/static/js/8492.0d93bd08.chunk.js,sha256=BYfb3-zW06nDj6mvKVIn8VmWHm4y5NIH-jfRYpBtXPk,15493
394
397
  streamlit/static/static/js/8536.f8de3d9a.chunk.js,sha256=Cv-agtcgZe6QMrPKv4Ie5pyZS0dXxMTNpRSK9I3Q2I8,10240
395
398
  streamlit/static/static/js/8570.6de19120.chunk.js,sha256=Dxg1jh1yRSXs21gOKvtU19QLvk7BSJRbaj7HC5D8odM,12214
399
+ streamlit/static/static/js/8571.cfc22b99.chunk.js,sha256=vME3kfn7jSk1wnzcLqrlkclolf3IBK5mppEFQrfdL1c,21241
396
400
  streamlit/static/static/js/8691.4211c305.chunk.js,sha256=yfLUZXb2iCl0OgHtUYuwr_8MVuyXILViU8K6qQ7UYBw,10493
397
401
  streamlit/static/static/js/9330.2b4c99e0.chunk.js,sha256=TCtXhXMxcbWzRQ_J1e-2tpCvOt0mB7bJ63Outny63zM,1361
398
402
  streamlit/static/static/js/9336.3e046ad7.chunk.js,sha256=0Af85YeYgginC8bxlFwMjKxUOc4n6UhVdQOJJT8t2nk,13574
@@ -400,8 +404,10 @@ streamlit/static/static/js/937.a1248039.chunk.js,sha256=NS-xyj3NwPLJvghF8AJ3H_kV
400
404
  streamlit/static/static/js/937.a1248039.chunk.js.LICENSE.txt,sha256=KAhbcQ1jd_N8DfV6lLYlQ_EQOalgErOV-Sf87G-Rh2g,188
401
405
  streamlit/static/static/js/9656.8c935274.chunk.js,sha256=3VB6NT0EQErJUX2SYLQpmNAp19sWI45AbNOQLVjcvII,22113
402
406
  streamlit/static/static/js/9865.fd93213d.chunk.js,sha256=Ul2N951ZrAXpJOWo4SV4AKlymjMMNPJxpea3uRt8B_Y,4011
403
- streamlit/static/static/js/main.9978e612.js,sha256=HHrpUtIgQ5lbcgWrmhds9JSgV-IklJR9lacw8YmFbms,4405464
404
- streamlit/static/static/js/main.9978e612.js.LICENSE.txt,sha256=YTeqT7R6idssTgnyi3gf0tRiq18-LiPeDOpsWcnbi34,3184
407
+ streamlit/static/static/js/9945.47d54f35.chunk.js,sha256=hhr3CT-A7_nboARJ6yPmoB69w1mljn8GzMnsyu-moZg,398776
408
+ streamlit/static/static/js/9945.47d54f35.chunk.js.LICENSE.txt,sha256=6s4mSSf8NHGJqUCFAj3VgMXZuNYyAzshKRhvxYZTQoU,281
409
+ streamlit/static/static/js/main.707da454.js,sha256=WpwqJKhyRhrm6DBfU8t9QadY1J6swDEfuJeogGBeRVg,4420585
410
+ streamlit/static/static/js/main.707da454.js.LICENSE.txt,sha256=YTeqT7R6idssTgnyi3gf0tRiq18-LiPeDOpsWcnbi34,3184
405
411
  streamlit/static/static/media/KaTeX_AMS-Regular.73ea273a72f4aca30ca5.woff2,sha256=DN04fJWQoan5eUVgAi27WWVKfYbxh6oMgUla1C06cwg,28076
406
412
  streamlit/static/static/media/KaTeX_AMS-Regular.853be92419a6c3766b9a.ttf,sha256=aFNIQLz90r_7bw6N60hoTdAefwTqKBMmdXevuQbeHRM,63632
407
413
  streamlit/static/static/media/KaTeX_AMS-Regular.d562e886c52f12660a41.woff,sha256=MNqR6EyJP4deJSaJ-uvcWQsocRReitx_mp1NvYzgslE,33516
@@ -490,9 +496,9 @@ streamlit/static/static/media/logo.83ae4f2fb87e38be7cbb8a5d2beb64d2.svg,sha256=_
490
496
  streamlit/static/static/media/rocket.b75b17d2b0a063c6cea230d1a9d77f1e.svg,sha256=6ZIRbOQuBNsdJnpfrNMq-6mYpYDN8qJGVsxkZIn8bP8,39315
491
497
  streamlit/testing/__init__.py,sha256=Vrf1yVMOcTyhUPnYvsfyeL96Vpd5z8KoSV5ZzTcTQgU,616
492
498
  streamlit/testing/v1/__init__.py,sha256=XGxNOq4VfmwlVj9K6vXB8dAH1YbI_8AIsvw_vbzQoNA,690
493
- streamlit/testing/v1/app_test.py,sha256=IwIscElqJatAFEbWv03AsEWEr43uBcWrV67Vwgw8t9E,36577
499
+ streamlit/testing/v1/app_test.py,sha256=2Mk-BTrgwSXGmUe2ANt1qO12oxxqypRmKNsOtrepUVA,36775
494
500
  streamlit/testing/v1/element_tree.py,sha256=MGCriyLQkQNDNN-_BiNXS8ogFgZdDeA0E5nrFeiLFe0,59854
495
- streamlit/testing/v1/local_script_runner.py,sha256=lMBs2G5xQ1s6RTm08CE8rDjyHYra_uc6YdW3NoIqsqU,6415
501
+ streamlit/testing/v1/local_script_runner.py,sha256=ffdPhuANbw0_AnuD4R4t50HEB-1Du3JIZGWR4g0ZJsk,6590
496
502
  streamlit/testing/v1/util.py,sha256=IwxXIlGsVNtC1RmtmgdeBHmJYPjK0wiqNL4HMW6IJZI,1791
497
503
  streamlit/vendor/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
498
504
  streamlit/vendor/ipython/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
@@ -501,12 +507,12 @@ streamlit/vendor/pympler/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZ
501
507
  streamlit/vendor/pympler/asizeof.py,sha256=noLIqizkYzTkYtA4k8fyvKeiIh8fW9ipW27YP56kQ6o,87925
502
508
  streamlit/watcher/__init__.py,sha256=Tn9E295dBAPIF38TAiWdfIoCsJWXU6rgY1FlxNmLqUU,915
503
509
  streamlit/watcher/event_based_path_watcher.py,sha256=B9vv6PAsWRscChXT7XugFvb6GBMc7qgjFVHNSMKsMXw,13980
504
- streamlit/watcher/local_sources_watcher.py,sha256=ETv8G-5px8durCqZ3SLQp6ASwXJ_UktTgVCYAFVW6cw,8238
510
+ streamlit/watcher/local_sources_watcher.py,sha256=Ik4R9WkqfnUKA8ySkoY7i7khW53yKu-MZgQg7a-Q-l0,8649
505
511
  streamlit/watcher/path_watcher.py,sha256=hFc_6FhLHsdbgVRFNJiyelJX3bX_rPvN-PQcgEZ7ZEc,5654
506
512
  streamlit/watcher/polling_path_watcher.py,sha256=VwQ06abbvHSIuvR66YpFDx9ANhrzTmoQylKqSjUosFE,3822
507
513
  streamlit/watcher/util.py,sha256=uDsWPxQ8WLNQ4U_MCqWm38H7BEjSrBpPsIZj1ySK8KM,5203
508
514
  streamlit/web/__init__.py,sha256=Vrf1yVMOcTyhUPnYvsfyeL96Vpd5z8KoSV5ZzTcTQgU,616
509
- streamlit/web/bootstrap.py,sha256=l4dy_WvHgDaRSEfKnyeS9KY-x6ZKHJ9vTmjhl7DQ1bY,14233
515
+ streamlit/web/bootstrap.py,sha256=Pr9wj1WKdkqqwwgwpLROuvPc4kIcotOM0I1wqehAbWc,13715
510
516
  streamlit/web/cache_storage_manager_config.py,sha256=0Zr3Kzkj5m5ggzGijZnW50ffo9rTiEdpbqCco_F9kCo,1158
511
517
  streamlit/web/cli.py,sha256=cFo0PysVi0mD-aChai75jfcGVuDBD_oLeuEmQjr1KH8,11034
512
518
  streamlit/web/server/__init__.py,sha256=w4TFcV0OjM5zx8ej7oThRIyB6gq3kqdt45XBk1zkRWo,1080
@@ -514,15 +520,15 @@ streamlit/web/server/app_static_file_handler.py,sha256=2f3uxDsLYztJhDHFUYCX4qEWj
514
520
  streamlit/web/server/browser_websocket_handler.py,sha256=gp9KtDvQ-bicbe8SOL7Cy5uZLOCjFwGgO2HDUv5jEH4,7971
515
521
  streamlit/web/server/component_request_handler.py,sha256=Xuy8laIcgpCecllCL2_tkz4bYtCMP3FOpmCvUhEfuOE,4120
516
522
  streamlit/web/server/media_file_handler.py,sha256=2KfzPnMN1RstMtI4fs0PD0vFiFrWMyKL0q7LfWJLYZ4,5270
517
- streamlit/web/server/routes.py,sha256=XNn6YY7OppP-gh4Axrgx7DbqDbw9_0_y3HW6PFPYQDk,9972
518
- streamlit/web/server/server.py,sha256=ay5af9h2a-ei4t3X44qXKIs-YHhXSrkMheOaYbev4h8,14834
523
+ streamlit/web/server/routes.py,sha256=tFsgnEpC4ty5TWG9AgONV4mBoTiUfkPqXxQ64rEdyKk,9853
524
+ streamlit/web/server/server.py,sha256=rfBgM_pK-kpN_RyxRkfGLqzwL7aA6w6YeeV5RAE1bFo,14879
519
525
  streamlit/web/server/server_util.py,sha256=FptUF-CjFh78VjeTQDi3R78m7E64MDe3wcklgnWXHh0,4158
520
526
  streamlit/web/server/stats_request_handler.py,sha256=cL__KbJFIhdhf1Zt6skbLehUqT-jo56x1HARxogZDOI,3680
521
527
  streamlit/web/server/upload_file_request_handler.py,sha256=YPDmKWUnaGH9d4QNcMEsY5k1YIz_q-xW1K5fmgHaDzc,4966
522
528
  streamlit/web/server/websocket_headers.py,sha256=07SkWLcOxbyldl7UcBzrMKY9ZojypCQACiKoh5FcH7Y,1870
523
- streamlit_nightly-1.35.1.dev20240530.data/scripts/streamlit.cmd,sha256=ZEYM3vBJSp-k7vwSJ3ba5NzEk9-qHdSeLvGYAAe1mMw,676
524
- streamlit_nightly-1.35.1.dev20240530.dist-info/METADATA,sha256=LKKPDTXkLRmHzXWOz9oreuOrFWSZWnTiDcRVqu4DwL0,8528
525
- streamlit_nightly-1.35.1.dev20240530.dist-info/WHEEL,sha256=DZajD4pwLWue70CAfc7YaxT1wLUciNBvN_TTcvXpltE,110
526
- streamlit_nightly-1.35.1.dev20240530.dist-info/entry_points.txt,sha256=uNJ4DwGNXEhOK0USwSNanjkYyR-Bk7eYQbJFDrWyOgY,53
527
- streamlit_nightly-1.35.1.dev20240530.dist-info/top_level.txt,sha256=V3FhKbm7G2LnR0s4SytavrjIPNIhvcsAGXfYHAwtQzw,10
528
- streamlit_nightly-1.35.1.dev20240530.dist-info/RECORD,,
529
+ streamlit_nightly-1.35.1.dev20240601.data/scripts/streamlit.cmd,sha256=ZEYM3vBJSp-k7vwSJ3ba5NzEk9-qHdSeLvGYAAe1mMw,676
530
+ streamlit_nightly-1.35.1.dev20240601.dist-info/METADATA,sha256=RkDzNGbw1v29dQViR6J22bBPdcMtzZ3cFpQ3FIY_2OA,8528
531
+ streamlit_nightly-1.35.1.dev20240601.dist-info/WHEEL,sha256=DZajD4pwLWue70CAfc7YaxT1wLUciNBvN_TTcvXpltE,110
532
+ streamlit_nightly-1.35.1.dev20240601.dist-info/entry_points.txt,sha256=uNJ4DwGNXEhOK0USwSNanjkYyR-Bk7eYQbJFDrWyOgY,53
533
+ streamlit_nightly-1.35.1.dev20240601.dist-info/top_level.txt,sha256=V3FhKbm7G2LnR0s4SytavrjIPNIhvcsAGXfYHAwtQzw,10
534
+ streamlit_nightly-1.35.1.dev20240601.dist-info/RECORD,,
@@ -1 +0,0 @@
1
- "use strict";(self.webpackChunk_streamlit_app=self.webpackChunk_streamlit_app||[]).push([[5117],{30351:(e,t,n)=>{n.d(t,{s:()=>a});var r=n(25773),i=n(66845),o=n(69),a=i.forwardRef((function(e,t){return i.createElement(o.D,(0,r.Z)({iconAttrs:{fill:"currentColor",xmlns:"http://www.w3.org/2000/svg"},iconVerticalAlign:"middle",iconViewBox:"0 0 24 24"},e,{ref:t}),i.createElement("path",{fill:"none",d:"M0 0h24v24H0V0z"}),i.createElement("path",{d:"M15.41 7.41L14 6l-6 6 6 6 1.41-1.41L10.83 12l4.58-4.59z"}))}));a.displayName="ChevronLeft"},31197:(e,t,n)=>{n.d(t,{U:()=>a});var r=n(25773),i=n(66845),o=n(69),a=i.forwardRef((function(e,t){return i.createElement(o.D,(0,r.Z)({iconAttrs:{fill:"currentColor",xmlns:"http://www.w3.org/2000/svg"},iconVerticalAlign:"middle",iconViewBox:"0 0 24 24"},e,{ref:t}),i.createElement("path",{fill:"none",d:"M0 0h24v24H0V0z"}),i.createElement("path",{d:"M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12 19 6.41z"}))}));a.displayName="Clear"},74529:(e,t,n)=>{n.d(t,{n:()=>a});var r=n(25773),i=n(66845),o=n(69),a=i.forwardRef((function(e,t){return i.createElement(o.D,(0,r.Z)({iconAttrs:{fill:"currentColor",xmlns:"http://www.w3.org/2000/svg"},iconVerticalAlign:"middle",iconViewBox:"0 0 24 24"},e,{ref:t}),i.createElement("path",{fill:"none",d:"M0 0h24v24H0V0z"}),i.createElement("path",{d:"M19.35 10.04A7.49 7.49 0 0012 4C9.11 4 6.6 5.64 5.35 8.04A5.994 5.994 0 000 14c0 3.31 2.69 6 6 6h13c2.76 0 5-2.24 5-5 0-2.64-2.05-4.78-4.65-4.96zM19 18H6c-2.21 0-4-1.79-4-4 0-2.05 1.53-3.76 3.56-3.97l1.07-.11.5-.95A5.469 5.469 0 0112 6c2.62 0 4.88 1.86 5.39 4.43l.3 1.5 1.53.11A2.98 2.98 0 0122 15c0 1.65-1.35 3-3 3zM8 13h2.55v3h2.9v-3H16l-4-4z"}))}));a.displayName="CloudUpload"},62288:(e,t,n)=>{n.d(t,{j:()=>a});var r=n(25773),i=n(66845),o=n(69),a=i.forwardRef((function(e,t){return i.createElement(o.D,(0,r.Z)({iconAttrs:{fill:"currentColor",xmlns:"http://www.w3.org/2000/svg"},iconVerticalAlign:"middle",iconViewBox:"0 0 24 24"},e,{ref:t}),i.createElement("path",{d:"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-2h2v2zm0-4h-2V7h2v6z"}))}));a.displayName="Error"},87847:(e,t,n)=>{n.d(t,{h:()=>a});var r=n(25773),i=n(66845),o=n(69),a=i.forwardRef((function(e,t){return i.createElement(o.D,(0,r.Z)({iconAttrs:{fill:"currentColor",xmlns:"http://www.w3.org/2000/svg"},iconVerticalAlign:"middle",iconViewBox:"0 0 24 24"},e,{ref:t}),i.createElement("path",{fill:"none",d:"M0 0h24v24H0V0z"}),i.createElement("path",{d:"M14 2H6c-1.1 0-1.99.9-1.99 2L4 20c0 1.1.89 2 1.99 2H18c1.1 0 2-.9 2-2V8l-6-6zM6 20V4h7v5h5v11H6z"}))}));a.displayName="InsertDriveFile"},1681:(e,t)=>{t.Z=function(e,t){if(e&&t){var n=Array.isArray(t)?t:t.split(","),r=e.name||"",i=(e.type||"").toLowerCase(),o=i.replace(/\/.*$/,"");return n.some((function(e){var t=e.trim().toLowerCase();return"."===t.charAt(0)?r.toLowerCase().endsWith(t):t.endsWith("/*")?o===t.replace(/\/.*$/,""):i===t}))}return!0}},51622:(e,t,n)=>{n.d(t,{ZP:()=>ie});var r=n(66845),i=n(8984),o=n.n(i),a=n(90406),c=new Map([["aac","audio/aac"],["abw","application/x-abiword"],["arc","application/x-freearc"],["avif","image/avif"],["avi","video/x-msvideo"],["azw","application/vnd.amazon.ebook"],["bin","application/octet-stream"],["bmp","image/bmp"],["bz","application/x-bzip"],["bz2","application/x-bzip2"],["cda","application/x-cdf"],["csh","application/x-csh"],["css","text/css"],["csv","text/csv"],["doc","application/msword"],["docx","application/vnd.openxmlformats-officedocument.wordprocessingml.document"],["eot","application/vnd.ms-fontobject"],["epub","application/epub+zip"],["gz","application/gzip"],["gif","image/gif"],["heic","image/heic"],["heif","image/heif"],["htm","text/html"],["html","text/html"],["ico","image/vnd.microsoft.icon"],["ics","text/calendar"],["jar","application/java-archive"],["jpeg","image/jpeg"],["jpg","image/jpeg"],["js","text/javascript"],["json","application/json"],["jsonld","application/ld+json"],["mid","audio/midi"],["midi","audio/midi"],["mjs","text/javascript"],["mp3","audio/mpeg"],["mp4","video/mp4"],["mpeg","video/mpeg"],["mpkg","application/vnd.apple.installer+xml"],["odp","application/vnd.oasis.opendocument.presentation"],["ods","application/vnd.oasis.opendocument.spreadsheet"],["odt","application/vnd.oasis.opendocument.text"],["oga","audio/ogg"],["ogv","video/ogg"],["ogx","application/ogg"],["opus","audio/opus"],["otf","font/otf"],["png","image/png"],["pdf","application/pdf"],["php","application/x-httpd-php"],["ppt","application/vnd.ms-powerpoint"],["pptx","application/vnd.openxmlformats-officedocument.presentationml.presentation"],["rar","application/vnd.rar"],["rtf","application/rtf"],["sh","application/x-sh"],["svg","image/svg+xml"],["swf","application/x-shockwave-flash"],["tar","application/x-tar"],["tif","image/tiff"],["tiff","image/tiff"],["ts","video/mp2t"],["ttf","font/ttf"],["txt","text/plain"],["vsd","application/vnd.visio"],["wav","audio/wav"],["weba","audio/webm"],["webm","video/webm"],["webp","image/webp"],["woff","font/woff"],["woff2","font/woff2"],["xhtml","application/xhtml+xml"],["xls","application/vnd.ms-excel"],["xlsx","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"],["xml","application/xml"],["xul","application/vnd.mozilla.xul+xml"],["zip","application/zip"],["7z","application/x-7z-compressed"],["mkv","video/x-matroska"],["mov","video/quicktime"],["msg","application/vnd.ms-outlook"]]);function l(e,t){var n=function(e){var t=e.name;if(t&&-1!==t.lastIndexOf(".")&&!e.type){var n=t.split(".").pop().toLowerCase(),r=c.get(n);r&&Object.defineProperty(e,"type",{value:r,writable:!1,configurable:!1,enumerable:!0})}return e}(e);if("string"!==typeof n.path){var r=e.webkitRelativePath;Object.defineProperty(n,"path",{value:"string"===typeof t?t:"string"===typeof r&&r.length>0?r:e.name,writable:!1,configurable:!1,enumerable:!0})}return n}var u=[".DS_Store","Thumbs.db"];function s(e){return"object"===typeof e&&null!==e}function f(e){return v(e.target.files).map((function(e){return l(e)}))}function p(e){return(0,a.mG)(this,void 0,void 0,(function(){return(0,a.Jh)(this,(function(t){switch(t.label){case 0:return[4,Promise.all(e.map((function(e){return e.getFile()})))];case 1:return[2,t.sent().map((function(e){return l(e)}))]}}))}))}function d(e,t){return(0,a.mG)(this,void 0,void 0,(function(){var n;return(0,a.Jh)(this,(function(r){switch(r.label){case 0:return null===e?[2,[]]:e.items?(n=v(e.items).filter((function(e){return"file"===e.kind})),"drop"!==t?[2,n]:[4,Promise.all(n.map(g))]):[3,2];case 1:return[2,m(y(r.sent()))];case 2:return[2,m(v(e.files).map((function(e){return l(e)})))]}}))}))}function m(e){return e.filter((function(e){return-1===u.indexOf(e.name)}))}function v(e){if(null===e)return[];for(var t=[],n=0;n<e.length;n++){var r=e[n];t.push(r)}return t}function g(e){if("function"!==typeof e.webkitGetAsEntry)return h(e);var t=e.webkitGetAsEntry();return t&&t.isDirectory?w(t):h(e)}function y(e){return e.reduce((function(e,t){return(0,a.fl)(e,Array.isArray(t)?y(t):[t])}),[])}function h(e){var t=e.getAsFile();if(!t)return Promise.reject(e+" is not a File");var n=l(t);return Promise.resolve(n)}function b(e){return(0,a.mG)(this,void 0,void 0,(function(){return(0,a.Jh)(this,(function(t){return[2,e.isDirectory?w(e):D(e)]}))}))}function w(e){var t=e.createReader();return new Promise((function(e,n){var r=[];!function i(){var o=this;t.readEntries((function(t){return(0,a.mG)(o,void 0,void 0,(function(){var o,c,l;return(0,a.Jh)(this,(function(a){switch(a.label){case 0:if(t.length)return[3,5];a.label=1;case 1:return a.trys.push([1,3,,4]),[4,Promise.all(r)];case 2:return o=a.sent(),e(o),[3,4];case 3:return c=a.sent(),n(c),[3,4];case 4:return[3,6];case 5:l=Promise.all(t.map(b)),r.push(l),i(),a.label=6;case 6:return[2]}}))}))}),(function(e){n(e)}))}()}))}function D(e){return(0,a.mG)(this,void 0,void 0,(function(){return(0,a.Jh)(this,(function(t){return[2,new Promise((function(t,n){e.file((function(n){var r=l(n,e.fullPath);t(r)}),(function(e){n(e)}))}))]}))}))}var x=n(1681);function O(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function A(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?O(Object(n),!0).forEach((function(t){j(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):O(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function j(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function E(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!==typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==n)return;var r,i,o=[],a=!0,c=!1;try{for(n=n.call(e);!(a=(r=n.next()).done)&&(o.push(r.value),!t||o.length!==t);a=!0);}catch(l){c=!0,i=l}finally{try{a||null==n.return||n.return()}finally{if(c)throw i}}return o}(e,t)||function(e,t){if(!e)return;if("string"===typeof e)return F(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);"Object"===n&&e.constructor&&(n=e.constructor.name);if("Map"===n||"Set"===n)return Array.from(e);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return F(e,t)}(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function F(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}var C="file-invalid-type",k="file-too-large",z="file-too-small",P="too-many-files",S=function(e){e=Array.isArray(e)&&1===e.length?e[0]:e;var t=Array.isArray(e)?"one of ".concat(e.join(", ")):e;return{code:C,message:"File type must be ".concat(t)}},R=function(e){return{code:k,message:"File is larger than ".concat(e," ").concat(1===e?"byte":"bytes")}},M=function(e){return{code:z,message:"File is smaller than ".concat(e," ").concat(1===e?"byte":"bytes")}},L={code:P,message:"Too many files"};function T(e,t){var n="application/x-moz-file"===e.type||(0,x.Z)(e,t);return[n,n?null:S(t)]}function I(e,t,n){if(V(e.size))if(V(t)&&V(n)){if(e.size>n)return[!1,R(n)];if(e.size<t)return[!1,M(t)]}else{if(V(t)&&e.size<t)return[!1,M(t)];if(V(n)&&e.size>n)return[!1,R(n)]}return[!0,null]}function V(e){return void 0!==e&&null!==e}function B(e){return"function"===typeof e.isPropagationStopped?e.isPropagationStopped():"undefined"!==typeof e.cancelBubble&&e.cancelBubble}function H(e){return e.dataTransfer?Array.prototype.some.call(e.dataTransfer.types,(function(e){return"Files"===e||"application/x-moz-file"===e})):!!e.target&&!!e.target.files}function K(e){e.preventDefault()}function G(){for(var e=arguments.length,t=new Array(e),n=0;n<e;n++)t[n]=arguments[n];return function(e){for(var n=arguments.length,r=new Array(n>1?n-1:0),i=1;i<n;i++)r[i-1]=arguments[i];return t.some((function(t){return!B(e)&&t&&t.apply(void 0,[e].concat(r)),B(e)}))}}function Z(e){return e="string"===typeof e?e.split(","):e,[{description:"everything",accept:Array.isArray(e)?e.filter((function(e){return"audio/*"===e||"video/*"===e||"image/*"===e||"text/*"===e||/\w+\/[-+.\w]+/g.test(e)})).reduce((function(e,t){return A(A({},e),{},j({},t,[]))}),{}):{}}]}var N=["children"],_=["open"],J=["refKey","role","onKeyDown","onFocus","onBlur","onClick","onDragEnter","onDragOver","onDragLeave","onDrop"],U=["refKey","onChange","onClick"];function $(e){return function(e){if(Array.isArray(e))return Y(e)}(e)||function(e){if("undefined"!==typeof Symbol&&null!=e[Symbol.iterator]||null!=e["@@iterator"])return Array.from(e)}(e)||W(e)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function q(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n=null==e?null:"undefined"!==typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null==n)return;var r,i,o=[],a=!0,c=!1;try{for(n=n.call(e);!(a=(r=n.next()).done)&&(o.push(r.value),!t||o.length!==t);a=!0);}catch(l){c=!0,i=l}finally{try{a||null==n.return||n.return()}finally{if(c)throw i}}return o}(e,t)||W(e,t)||function(){throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function W(e,t){if(e){if("string"===typeof e)return Y(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);return"Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n?Array.from(e):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?Y(e,t):void 0}}function Y(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=new Array(t);n<t;n++)r[n]=e[n];return r}function Q(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),n.push.apply(n,r)}return n}function X(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{};t%2?Q(Object(n),!0).forEach((function(t){ee(e,t,n[t])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):Q(Object(n)).forEach((function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(n,t))}))}return e}function ee(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function te(e,t){if(null==e)return{};var n,r,i=function(e,t){if(null==e)return{};var n,r,i={},o=Object.keys(e);for(r=0;r<o.length;r++)n=o[r],t.indexOf(n)>=0||(i[n]=e[n]);return i}(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(r=0;r<o.length;r++)n=o[r],t.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(i[n]=e[n])}return i}var ne=(0,r.forwardRef)((function(e,t){var n=e.children,i=function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=X(X({},re),e),n=t.accept,i=t.disabled,o=t.getFilesFromEvent,a=t.maxSize,c=t.minSize,l=t.multiple,u=t.maxFiles,s=t.onDragEnter,f=t.onDragLeave,p=t.onDragOver,d=t.onDrop,m=t.onDropAccepted,v=t.onDropRejected,g=t.onFileDialogCancel,y=t.onFileDialogOpen,h=t.useFsAccessApi,b=t.preventDropOnDocument,w=t.noClick,D=t.noKeyboard,x=t.noDrag,O=t.noDragEventsBubbling,A=t.validator,j=(0,r.useMemo)((function(){return"function"===typeof y?y:ce}),[y]),F=(0,r.useMemo)((function(){return"function"===typeof g?g:ce}),[g]),C=(0,r.useRef)(null),k=(0,r.useRef)(null),z=q((0,r.useReducer)(ae,oe),2),P=z[0],S=z[1],R=P.isFocused,M=P.isFileDialogActive,V=P.draggedFiles,N=(0,r.useRef)("undefined"!==typeof window&&window.isSecureContext&&h&&"showOpenFilePicker"in window),_=function(){!N.current&&M&&setTimeout((function(){k.current&&(k.current.files.length||(S({type:"closeDialog"}),F()))}),300)};(0,r.useEffect)((function(){return window.addEventListener("focus",_,!1),function(){window.removeEventListener("focus",_,!1)}}),[k,M,F,N]);var W=(0,r.useRef)([]),Y=function(e){C.current&&C.current.contains(e.target)||(e.preventDefault(),W.current=[])};(0,r.useEffect)((function(){return b&&(document.addEventListener("dragover",K,!1),document.addEventListener("drop",Y,!1)),function(){b&&(document.removeEventListener("dragover",K),document.removeEventListener("drop",Y))}}),[C,b]);var Q=(0,r.useCallback)((function(e){e.preventDefault(),e.persist(),he(e),W.current=[].concat($(W.current),[e.target]),H(e)&&Promise.resolve(o(e)).then((function(t){B(e)&&!O||(S({draggedFiles:t,isDragActive:!0,type:"setDraggedFiles"}),s&&s(e))}))}),[o,s,O]),ne=(0,r.useCallback)((function(e){e.preventDefault(),e.persist(),he(e);var t=H(e);if(t&&e.dataTransfer)try{e.dataTransfer.dropEffect="copy"}catch(n){}return t&&p&&p(e),!1}),[p,O]),ie=(0,r.useCallback)((function(e){e.preventDefault(),e.persist(),he(e);var t=W.current.filter((function(e){return C.current&&C.current.contains(e)})),n=t.indexOf(e.target);-1!==n&&t.splice(n,1),W.current=t,t.length>0||(S({isDragActive:!1,type:"setDraggedFiles",draggedFiles:[]}),H(e)&&f&&f(e))}),[C,f,O]),le=(0,r.useCallback)((function(e,t){var r=[],i=[];e.forEach((function(e){var t=q(T(e,n),2),o=t[0],l=t[1],u=q(I(e,c,a),2),s=u[0],f=u[1],p=A?A(e):null;if(o&&s&&!p)r.push(e);else{var d=[l,f];p&&(d=d.concat(p)),i.push({file:e,errors:d.filter((function(e){return e}))})}})),(!l&&r.length>1||l&&u>=1&&r.length>u)&&(r.forEach((function(e){i.push({file:e,errors:[L]})})),r.splice(0)),S({acceptedFiles:r,fileRejections:i,type:"setFiles"}),d&&d(r,i,t),i.length>0&&v&&v(i,t),r.length>0&&m&&m(r,t)}),[S,l,n,c,a,u,d,m,v,A]),ue=(0,r.useCallback)((function(e){e.preventDefault(),e.persist(),he(e),W.current=[],H(e)&&Promise.resolve(o(e)).then((function(t){B(e)&&!O||le(t,e)})),S({type:"reset"})}),[o,le,O]),se=(0,r.useCallback)((function(){if(N.current){S({type:"openDialog"}),j();var e={multiple:l,types:Z(n)};window.showOpenFilePicker(e).then((function(e){return o(e)})).then((function(e){le(e,null),S({type:"closeDialog"})})).catch((function(e){var t;(t=e)instanceof DOMException&&("AbortError"===t.name||t.code===t.ABORT_ERR)?(F(e),S({type:"closeDialog"})):function(e){return e instanceof DOMException&&("SecurityError"===e.name||e.code===e.SECURITY_ERR)}(e)&&(N.current=!1,k.current&&(k.current.value=null,k.current.click()))}))}else k.current&&(S({type:"openDialog"}),j(),k.current.value=null,k.current.click())}),[S,j,F,h,le,n,l]),fe=(0,r.useCallback)((function(e){C.current&&C.current.isEqualNode(e.target)&&(" "!==e.key&&"Enter"!==e.key&&32!==e.keyCode&&13!==e.keyCode||(e.preventDefault(),se()))}),[C,se]),pe=(0,r.useCallback)((function(){S({type:"focus"})}),[]),de=(0,r.useCallback)((function(){S({type:"blur"})}),[]),me=(0,r.useCallback)((function(){w||(!function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:window.navigator.userAgent;return function(e){return-1!==e.indexOf("MSIE")||-1!==e.indexOf("Trident/")}(e)||function(e){return-1!==e.indexOf("Edge/")}(e)}()?se():setTimeout(se,0))}),[w,se]),ve=function(e){return i?null:e},ge=function(e){return D?null:ve(e)},ye=function(e){return x?null:ve(e)},he=function(e){O&&e.stopPropagation()},be=(0,r.useMemo)((function(){return function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.refKey,n=void 0===t?"ref":t,r=e.role,o=e.onKeyDown,a=e.onFocus,c=e.onBlur,l=e.onClick,u=e.onDragEnter,s=e.onDragOver,f=e.onDragLeave,p=e.onDrop,d=te(e,J);return X(X(ee({onKeyDown:ge(G(o,fe)),onFocus:ge(G(a,pe)),onBlur:ge(G(c,de)),onClick:ve(G(l,me)),onDragEnter:ye(G(u,Q)),onDragOver:ye(G(s,ne)),onDragLeave:ye(G(f,ie)),onDrop:ye(G(p,ue)),role:"string"===typeof r&&""!==r?r:"button"},n,C),i||D?{}:{tabIndex:0}),d)}}),[C,fe,pe,de,me,Q,ne,ie,ue,D,x,i]),we=(0,r.useCallback)((function(e){e.stopPropagation()}),[]),De=(0,r.useMemo)((function(){return function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.refKey,r=void 0===t?"ref":t,i=e.onChange,o=e.onClick,a=te(e,U);return X(X({},ee({accept:n,multiple:l,type:"file",style:{display:"none"},onChange:ve(G(i,ue)),onClick:ve(G(o,we)),tabIndex:-1},r,k)),a)}}),[k,n,l,ue,i]),xe=V.length,Oe=xe>0&&function(e){var t=e.files,n=e.accept,r=e.minSize,i=e.maxSize,o=e.multiple,a=e.maxFiles;return!(!o&&t.length>1||o&&a>=1&&t.length>a)&&t.every((function(e){var t=E(T(e,n),1)[0],o=E(I(e,r,i),1)[0];return t&&o}))}({files:V,accept:n,minSize:c,maxSize:a,multiple:l,maxFiles:u}),Ae=xe>0&&!Oe;return X(X({},P),{},{isDragAccept:Oe,isDragReject:Ae,isFocused:R&&!i,getRootProps:be,getInputProps:De,rootRef:C,inputRef:k,open:ve(se)})}(te(e,N)),o=i.open,a=te(i,_);return(0,r.useImperativeHandle)(t,(function(){return{open:o}}),[o]),r.createElement(r.Fragment,null,n(X(X({},a),{},{open:o})))}));ne.displayName="Dropzone";var re={disabled:!1,getFilesFromEvent:function(e){return(0,a.mG)(this,void 0,void 0,(function(){return(0,a.Jh)(this,(function(t){return s(e)&&s(e.dataTransfer)?[2,d(e.dataTransfer,e.type)]:function(e){return s(e)&&s(e.target)}(e)?[2,f(e)]:Array.isArray(e)&&e.every((function(e){return"getFile"in e&&"function"===typeof e.getFile}))?[2,p(e)]:[2,[]]}))}))},maxSize:1/0,minSize:0,multiple:!0,maxFiles:0,preventDropOnDocument:!0,noClick:!1,noKeyboard:!1,noDrag:!1,noDragEventsBubbling:!1,validator:null,useFsAccessApi:!0};ne.defaultProps=re,ne.propTypes={children:o().func,accept:o().oneOfType([o().string,o().arrayOf(o().string)]),multiple:o().bool,preventDropOnDocument:o().bool,noClick:o().bool,noKeyboard:o().bool,noDrag:o().bool,noDragEventsBubbling:o().bool,minSize:o().number,maxSize:o().number,maxFiles:o().number,disabled:o().bool,getFilesFromEvent:o().func,onFileDialogCancel:o().func,onFileDialogOpen:o().func,useFsAccessApi:o().bool,onDragEnter:o().func,onDragLeave:o().func,onDragOver:o().func,onDrop:o().func,onDropAccepted:o().func,onDropRejected:o().func,validator:o().func};const ie=ne;var oe={isFocused:!1,isFileDialogActive:!1,isDragActive:!1,isDragAccept:!1,isDragReject:!1,draggedFiles:[],acceptedFiles:[],fileRejections:[]};function ae(e,t){switch(t.type){case"focus":return X(X({},e),{},{isFocused:!0});case"blur":return X(X({},e),{},{isFocused:!1});case"openDialog":return X(X({},oe),{},{isFileDialogActive:!0});case"closeDialog":return X(X({},e),{},{isFileDialogActive:!1});case"setDraggedFiles":var n=t.isDragActive,r=t.draggedFiles;return X(X({},e),{},{draggedFiles:r,isDragActive:n});case"setFiles":return X(X({},e),{},{acceptedFiles:t.acceptedFiles,fileRejections:t.fileRejections});case"reset":return X({},oe);default:return e}}function ce(){}}}]);