aignostics 0.2.12__tar.gz → 0.2.13__tar.gz

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 (123) hide show
  1. {aignostics-0.2.12 → aignostics-0.2.13}/PKG-INFO +1 -1
  2. {aignostics-0.2.12 → aignostics-0.2.13}/examples/notebook.py +1 -1
  3. {aignostics-0.2.12 → aignostics-0.2.13}/pyproject.toml +2 -2
  4. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/application/_gui.py +11 -12
  5. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/bucket/_gui.py +1 -1
  6. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/dataset/_gui.py +1 -1
  7. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/gui/_frame.py +32 -14
  8. aignostics-0.2.13/src/aignostics/gui/_theme.py +76 -0
  9. aignostics-0.2.13/src/aignostics/gui/assets/home-card-1.png +0 -0
  10. aignostics-0.2.13/src/aignostics/gui/assets/home-card-2.png +0 -0
  11. aignostics-0.2.13/src/aignostics/gui/assets/home-card-3.png +0 -0
  12. aignostics-0.2.13/src/aignostics/gui/assets/home-card-4.png +0 -0
  13. aignostics-0.2.13/src/aignostics/gui/assets/ruo.png +0 -0
  14. aignostics-0.2.12/src/aignostics/gui/_theme.py +0 -42
  15. aignostics-0.2.12/src/aignostics/gui/assets/home-card-1.png +0 -0
  16. aignostics-0.2.12/src/aignostics/gui/assets/home-card-2.png +0 -0
  17. aignostics-0.2.12/src/aignostics/gui/assets/ruo.png +0 -0
  18. {aignostics-0.2.12 → aignostics-0.2.13}/.gitignore +0 -0
  19. {aignostics-0.2.12 → aignostics-0.2.13}/LICENSE +0 -0
  20. {aignostics-0.2.12 → aignostics-0.2.13}/README.md +0 -0
  21. {aignostics-0.2.12 → aignostics-0.2.13}/codegen/out/.openapi-generator/FILES +0 -0
  22. {aignostics-0.2.12 → aignostics-0.2.13}/codegen/out/.openapi-generator/VERSION +0 -0
  23. {aignostics-0.2.12 → aignostics-0.2.13}/codegen/out/aignx/codegen/api/public_api.py +0 -0
  24. {aignostics-0.2.12 → aignostics-0.2.13}/codegen/out/aignx/codegen/api_client.py +0 -0
  25. {aignostics-0.2.12 → aignostics-0.2.13}/codegen/out/aignx/codegen/api_response.py +0 -0
  26. {aignostics-0.2.12 → aignostics-0.2.13}/codegen/out/aignx/codegen/configuration.py +0 -0
  27. {aignostics-0.2.12 → aignostics-0.2.13}/codegen/out/aignx/codegen/exceptions.py +0 -0
  28. {aignostics-0.2.12 → aignostics-0.2.13}/codegen/out/aignx/codegen/models/__init__.py +0 -0
  29. {aignostics-0.2.12 → aignostics-0.2.13}/codegen/out/aignx/codegen/models/application_read_response.py +0 -0
  30. {aignostics-0.2.12 → aignostics-0.2.13}/codegen/out/aignx/codegen/models/application_run_status.py +0 -0
  31. {aignostics-0.2.12 → aignostics-0.2.13}/codegen/out/aignx/codegen/models/application_version_read_response.py +0 -0
  32. {aignostics-0.2.12 → aignostics-0.2.13}/codegen/out/aignx/codegen/models/http_validation_error.py +0 -0
  33. {aignostics-0.2.12 → aignostics-0.2.13}/codegen/out/aignx/codegen/models/input_artifact_creation_request.py +0 -0
  34. {aignostics-0.2.12 → aignostics-0.2.13}/codegen/out/aignx/codegen/models/input_artifact_read_response.py +0 -0
  35. {aignostics-0.2.12 → aignostics-0.2.13}/codegen/out/aignx/codegen/models/item_creation_request.py +0 -0
  36. {aignostics-0.2.12 → aignostics-0.2.13}/codegen/out/aignx/codegen/models/item_result_read_response.py +0 -0
  37. {aignostics-0.2.12 → aignostics-0.2.13}/codegen/out/aignx/codegen/models/item_status.py +0 -0
  38. {aignostics-0.2.12 → aignostics-0.2.13}/codegen/out/aignx/codegen/models/output_artifact_read_response.py +0 -0
  39. {aignostics-0.2.12 → aignostics-0.2.13}/codegen/out/aignx/codegen/models/output_artifact_result_read_response.py +0 -0
  40. {aignostics-0.2.12 → aignostics-0.2.13}/codegen/out/aignx/codegen/models/output_artifact_scope.py +0 -0
  41. {aignostics-0.2.12 → aignostics-0.2.13}/codegen/out/aignx/codegen/models/payload_input_artifact.py +0 -0
  42. {aignostics-0.2.12 → aignostics-0.2.13}/codegen/out/aignx/codegen/models/payload_item.py +0 -0
  43. {aignostics-0.2.12 → aignostics-0.2.13}/codegen/out/aignx/codegen/models/payload_output_artifact.py +0 -0
  44. {aignostics-0.2.12 → aignostics-0.2.13}/codegen/out/aignx/codegen/models/run_creation_request.py +0 -0
  45. {aignostics-0.2.12 → aignostics-0.2.13}/codegen/out/aignx/codegen/models/run_creation_response.py +0 -0
  46. {aignostics-0.2.12 → aignostics-0.2.13}/codegen/out/aignx/codegen/models/run_read_response.py +0 -0
  47. {aignostics-0.2.12 → aignostics-0.2.13}/codegen/out/aignx/codegen/models/transfer_urls.py +0 -0
  48. {aignostics-0.2.12 → aignostics-0.2.13}/codegen/out/aignx/codegen/models/user_payload.py +0 -0
  49. {aignostics-0.2.12 → aignostics-0.2.13}/codegen/out/aignx/codegen/models/validation_error.py +0 -0
  50. {aignostics-0.2.12 → aignostics-0.2.13}/codegen/out/aignx/codegen/models/validation_error_loc_inner.py +0 -0
  51. {aignostics-0.2.12 → aignostics-0.2.13}/codegen/out/aignx/codegen/rest.py +0 -0
  52. {aignostics-0.2.12 → aignostics-0.2.13}/codegen/out/docs/PublicApi.md +0 -0
  53. {aignostics-0.2.12 → aignostics-0.2.13}/examples/__init__.py +0 -0
  54. {aignostics-0.2.12 → aignostics-0.2.13}/examples/e2e.py +0 -0
  55. {aignostics-0.2.12 → aignostics-0.2.13}/examples/notebook.ipynb +0 -0
  56. {aignostics-0.2.12 → aignostics-0.2.13}/examples/script.py +0 -0
  57. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/__init__.py +0 -0
  58. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/application/__init__.py +0 -0
  59. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/application/_cli.py +0 -0
  60. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/application/_service.py +0 -0
  61. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/application/_settings.py +0 -0
  62. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/application/_utils.py +0 -0
  63. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/bucket/__init__.py +0 -0
  64. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/bucket/_cli.py +0 -0
  65. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/bucket/_service.py +0 -0
  66. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/bucket/_settings.py +0 -0
  67. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/cli.py +0 -0
  68. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/constants.py +0 -0
  69. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/dataset/__init__.py +0 -0
  70. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/dataset/_cli.py +0 -0
  71. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/dataset/_idc_index.py +0 -0
  72. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/dataset/_service.py +0 -0
  73. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/gui/__init__.py +0 -0
  74. /aignostics-0.2.12/src/aignostics/gui/assets/Google_Cloud_logo.svg → /aignostics-0.2.13/src/aignostics/gui/assets/Google-Cloud-logo.svg +0 -0
  75. /aignostics-0.2.12/src/aignostics/gui/assets/NIH_IDC_title.svg → /aignostics-0.2.13/src/aignostics/gui/assets/NIH-IDC-logo.svg +0 -0
  76. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/gui/assets/image-not-found.png +0 -0
  77. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/gui/assets/logo.png +0 -0
  78. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/gui/assets/ruo.svg +0 -0
  79. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/notebook/__init__.py +0 -0
  80. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/notebook/_gui.py +0 -0
  81. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/notebook/_notebook.py +0 -0
  82. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/notebook/_service.py +0 -0
  83. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/platform/__init__.py +0 -0
  84. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/platform/_authentication.py +0 -0
  85. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/platform/_client.py +0 -0
  86. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/platform/_constants.py +0 -0
  87. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/platform/_messages.py +0 -0
  88. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/platform/_service.py +0 -0
  89. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/platform/_settings.py +0 -0
  90. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/platform/_utils.py +0 -0
  91. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/platform/resources/__init__.py +0 -0
  92. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/platform/resources/applications.py +0 -0
  93. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/platform/resources/runs.py +0 -0
  94. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/platform/resources/utils.py +0 -0
  95. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/system/__init__.py +0 -0
  96. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/system/_cli.py +0 -0
  97. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/system/_exceptions.py +0 -0
  98. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/system/_gui.py +0 -0
  99. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/system/_service.py +0 -0
  100. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/system/_settings.py +0 -0
  101. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/utils/.vendored/bottle.py +0 -0
  102. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/utils/__init__.py +0 -0
  103. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/utils/_cli.py +0 -0
  104. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/utils/_console.py +0 -0
  105. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/utils/_constants.py +0 -0
  106. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/utils/_di.py +0 -0
  107. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/utils/_gui.py +0 -0
  108. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/utils/_health.py +0 -0
  109. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/utils/_log.py +0 -0
  110. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/utils/_logfire.py +0 -0
  111. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/utils/_notebook.py +0 -0
  112. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/utils/_process.py +0 -0
  113. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/utils/_sentry.py +0 -0
  114. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/utils/_service.py +0 -0
  115. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/utils/_settings.py +0 -0
  116. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/utils/boot.py +0 -0
  117. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/wsi/__init__.py +0 -0
  118. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/wsi/_cli.py +0 -0
  119. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/wsi/_gui.py +0 -0
  120. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/wsi/_openslide_handler.py +0 -0
  121. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/wsi/_pydicom_handler.py +0 -0
  122. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/wsi/_service.py +0 -0
  123. {aignostics-0.2.12 → aignostics-0.2.13}/src/aignostics/wsi/_utils.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: aignostics
3
- Version: 0.2.12
3
+ Version: 0.2.13
4
4
  Summary: 🔬 Python SDK providing access to the Aignostics Platform. Includes Aignostics Launchpad (Desktop Application), Aignostics CLI (Command-Line Interface), example notebooks, and Aignostics Client Library.
5
5
  Project-URL: Homepage, https://aignostics.readthedocs.io/en/latest/
6
6
  Project-URL: Documentation, https://aignostics.readthedocs.io/en/latest/
@@ -2,7 +2,7 @@
2
2
  # requires-python = ">=3.13"
3
3
  # dependencies = [
4
4
  # "marimo",
5
- # "aignostics==0.2.12",
5
+ # "aignostics==0.2.13",
6
6
  # ]
7
7
  # ///
8
8
 
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "aignostics"
3
- version = "0.2.12"
3
+ version = "0.2.13"
4
4
  description = "🔬 Python SDK providing access to the Aignostics Platform. Includes Aignostics Launchpad (Desktop Application), Aignostics CLI (Command-Line Interface), example notebooks, and Aignostics Client Library."
5
5
  readme = "README.md"
6
6
  authors = [
@@ -354,7 +354,7 @@ source = ["src/"]
354
354
 
355
355
 
356
356
  [tool.bumpversion]
357
- current_version = "0.2.12"
357
+ current_version = "0.2.13"
358
358
  parse = "(?P<major>\\d+)\\.(?P<minor>\\d+)\\.(?P<patch>\\d+)"
359
359
  serialize = ["{major}.{minor}.{patch}"]
360
360
  search = "{current_version}"
@@ -159,7 +159,7 @@ class PageBuilder(BasePageBuilder):
159
159
  .props("clickable")
160
160
  ):
161
161
  with ui.item_section().props("avatar"):
162
- ui.icon(_application_id_to_icon(application.application_id))
162
+ ui.icon(_application_id_to_icon(application.application_id)).style("color: #1C1242")
163
163
  with ui.item_section():
164
164
  ui.label(f"{application.name}").tailwind.font_weight(
165
165
  "bold"
@@ -195,7 +195,7 @@ class PageBuilder(BasePageBuilder):
195
195
  .mark(f"SIDEBAR_RUN_ITEM:{index}")
196
196
  ):
197
197
  with ui.item_section().props("avatar"):
198
- ui.icon(_run_status_to_icon(run_data["status"]))
198
+ ui.icon(_run_status_to_icon(run_data["status"])).style("color: #1C1242")
199
199
  with ui.item_section():
200
200
  ui.label(f"{run_data['application_version_id']}").tailwind.font_weight(
201
201
  "bold"
@@ -295,14 +295,13 @@ class PageBuilder(BasePageBuilder):
295
295
  """
296
296
  )
297
297
 
298
- with (
299
- ui.row(align_items="center").classes("justify-center w-full"),
300
- ui.carousel(animated=True, arrows=True, navigation=True).props("height=312px"),
301
- ):
302
- with ui.carousel_slide().classes("p-0"):
303
- ui.image("/assets/home-card-1.png").classes("w-[768px]")
304
- with ui.carousel_slide().classes("p-0"):
305
- ui.image("/assets/home-card-2.png").classes("w-[768px]")
298
+ carousel = ui.carousel(animated=True, arrows=True, navigation=True).props(
299
+ "height=369px infinite autoplay=1000 control-color=purple"
300
+ )
301
+ with ui.row(align_items="center").classes("justify-center w-full"), carousel:
302
+ for i in range(1, 5): # Loop from 1 to 4
303
+ with ui.carousel_slide().classes("p-0"):
304
+ ui.image(f"/assets/home-card-{i}.png").classes("w-[860px]")
306
305
 
307
306
  @ui.page("/application/{application_id}")
308
307
  def page_application_describe(application_id: str) -> None: # noqa: C901, PLR0912, PLR0915
@@ -357,7 +356,7 @@ class PageBuilder(BasePageBuilder):
357
356
  target="https://www.fda.gov/regulatory-information/search-fda-guidance-documents/distribution-in-vitro-diagnostic-products-labeled-research-use-only-or-investigational-use-only",
358
357
  new_tab=True,
359
358
  ):
360
- ui.image("/assets/ruo.png").style("width: 45px; height: 36px")
359
+ ui.image("/assets/ruo.png").style("width: 70px; height: 36px")
361
360
 
362
361
  elif regulatory_class == "demo":
363
362
  with ui.icon("network_check", size="lg", color="orange"):
@@ -369,7 +368,7 @@ class PageBuilder(BasePageBuilder):
369
368
  target="https://www.fda.gov/regulatory-information/search-fda-guidance-documents/distribution-in-vitro-diagnostic-products-labeled-research-use-only-or-investigational-use-only",
370
369
  new_tab=True,
371
370
  ):
372
- ui.image("/assets/ruo.png").style("width: 45px; height: 36px")
371
+ ui.image("/assets/ruo.png").style("width: 70px; height: 36px")
373
372
 
374
373
  async def _select_source() -> None:
375
374
  """Open a file picker dialog and show notifier when closed again."""
@@ -39,7 +39,7 @@ class PageBuilder(BasePageBuilder):
39
39
  5. You can manually delete data at any time using the form below.
40
40
  """).classes("w-3/5")
41
41
  ui.space()
42
- ui.image("/assets/Google_Cloud_logo.svg").classes("w-1/5").style("margin-top:1.25rem")
42
+ ui.image("/assets/Google-Cloud-logo.svg").classes("w-1/5").style("margin-top:1.25rem")
43
43
 
44
44
  def _get_rows() -> list[dict[str, str]]:
45
45
  objs = Service().find(detail=True)
@@ -53,7 +53,7 @@ class PageBuilder(BasePageBuilder):
53
53
  """).classes("w-3/5")
54
54
  ui.space()
55
55
  with ui.column().classes("w-1/5"):
56
- ui.image("/assets/NIH_IDC_title.svg").classes("w-25").style("margin-top:1.25rem")
56
+ ui.image("/assets/NIH-IDC-logo.svg").classes("w-25").style("margin-top:1.25rem")
57
57
  with ui.link(target=PORTAL_URL, new_tab=True):
58
58
  ui.button("Explore Portal", icon="search")
59
59
 
@@ -48,11 +48,15 @@ def frame( # noqa: PLR0915
48
48
  def toggle_dark_mode() -> None:
49
49
  app.storage.general["dark_mode"] = not app.storage.general.get("dark_mode", False)
50
50
  dark.toggle()
51
+ if dark.value:
52
+ ui.query("body").classes(replace="bg-aignostics-dark")
53
+ else:
54
+ ui.query("body").classes(replace="bg-aignostics-light")
51
55
 
52
56
  ui.button(
53
57
  on_click=toggle_dark_mode,
54
58
  icon="dark_mode",
55
- ).props("flat color=black")
59
+ ).set_visibility(False)
56
60
 
57
61
  with ui.link(target="https://aignostics.readthedocs.org/", new_tab=True):
58
62
  ui.button(icon="local_library").props(FLAT_COLOR_WHITE)
@@ -73,14 +77,14 @@ def frame( # noqa: PLR0915
73
77
  with ui.list():
74
78
  with ui.item(on_click=lambda _: ui.navigate.to("/")).props("clickable"):
75
79
  with ui.item_section().props("avatar"):
76
- ui.icon("biotech", color="#433D6B")
80
+ ui.icon("biotech", color="primary")
77
81
  with ui.item_section():
78
82
  ui.label("Run Applications").tailwind.font_weight(
79
83
  "bold" if context.client.page.path == "/" else "normal"
80
84
  )
81
85
  with ui.item(on_click=lambda _: ui.navigate.to("/dataset/idc")).props("clickable"):
82
86
  with ui.item_section().props("avatar"):
83
- ui.icon("image", color="#BA1F40")
87
+ ui.icon("image", color="primary")
84
88
  with ui.item_section():
85
89
  ui.label("Download Datasets").tailwind.font_weight(
86
90
  "bold" if context.client.page.path == "/dataset/idc" else "normal"
@@ -89,57 +93,71 @@ def frame( # noqa: PLR0915
89
93
  with ui.list():
90
94
  with ui.item(on_click=lambda _: ui.navigate.to("/bucket")).props("clickable"):
91
95
  with ui.item_section().props("avatar"):
92
- ui.icon("cloud", color="#4185F4")
96
+ ui.icon("cloud", color="primary")
93
97
  with ui.item_section():
94
98
  ui.label("Manage Cloud Bucket").tailwind.font_weight(
95
99
  "bold" if context.client.page.path == "/bucket" else "normal"
96
100
  )
97
101
  with ui.item().props("clickable"):
98
102
  with ui.item_section().props("avatar"):
99
- ui.icon("domain")
103
+ ui.icon("domain", color="primary")
100
104
  with ui.item_section():
101
105
  ui.link("Go to Console", "https://platform.aignostics.com", new_tab=True).mark("LINK_PLATFORM")
102
106
  with ui.item().props("clickable"):
103
107
  with ui.item_section().props("avatar"):
104
- ui.icon("local_library")
108
+ ui.icon("local_library", color="primary")
105
109
  with ui.item_section():
106
110
  ui.link("Read The Docs", "https://aignostics.readthedocs.org/", new_tab=True).mark(
107
111
  "LINK_DOCUMENTATION"
108
112
  )
109
113
  with ui.item().props("clickable"):
110
114
  with ui.item_section().props("avatar"):
111
- ui.icon("help")
115
+ ui.icon("help", color="primary")
112
116
  with ui.item_section():
113
117
  ui.link("Get Support", "https://platform.aignostics.com/support", new_tab=True).mark(
114
118
  "LINK_DOCUMENTATION"
115
119
  )
116
120
  with ui.item().props("clickable"):
117
121
  with ui.item_section().props("avatar"):
118
- ui.icon("check_circle")
122
+ ui.icon("check_circle", color="primary")
119
123
  with ui.item_section():
120
- ui.link("Platform Status", "https://status.aignostics.com", new_tab=True).mark("LINK_DOCUMENTATION")
124
+ ui.link("Show Service Status", "https://status.aignostics.com", new_tab=True).mark(
125
+ "LINK_DOCUMENTATION"
126
+ )
121
127
  with ui.item(on_click=lambda _: ui.navigate.to("/system")).props("clickable"):
122
128
  with ui.item_section().props("avatar"):
123
- ui.icon("settings", color="positive")
129
+ ui.icon("settings", color="primary")
124
130
  with ui.item_section():
125
- ui.label("Inspector").tailwind.font_weight(
131
+ ui.label("Check Inspector").tailwind.font_weight(
126
132
  "bold" if context.client.page.path == "/system" else "normal"
127
133
  )
134
+ ui.separator()
128
135
  with ui.item(on_click=app.shutdown).props("clickable"):
129
136
  with ui.item_section().props("avatar"):
130
- ui.icon("logout", color="negative")
137
+ ui.icon("logout", color="primary")
131
138
  with ui.item_section():
132
139
  ui.label("Quit Launcher")
133
140
 
134
141
  with (
135
- ui.footer().style("background-color: #EDEDE9").style("padding-top:0px; height: 30px;"),
142
+ ui.footer()
143
+ .style("background-color: #F0F0F0 !important")
144
+ .style("padding-top:0px; padding-left: 0px; height: 30px"),
136
145
  ui.row(align_items="center").classes("justify-center w-full"),
137
146
  ):
138
147
  ui.html(
139
- '<iframe src="https://status.aignostics.com/badge?theme=dark" '
148
+ '<iframe id="betterstack" src="https://status.aignostics.com/badge?theme=dark" '
140
149
  'width="250" height="30" frameborder="0" scrolling="no" '
141
150
  'style="color-scheme: dark"></iframe>'
151
+ ).style("margin-left: 0px;")
152
+ ui.run_javascript(
153
+ "setTimeout(function() { "
154
+ 'var x = document.getElementById("betterstack"); '
155
+ 'x.contentWindow.document.body.style.backgroundColor = "#FF0000"; '
156
+ "}, 20000);"
142
157
  )
158
+ ui.query("body").classes(
159
+ replace="bg-aignostics-light dark:bg-aignostics-dark"
160
+ ) # https://github.com/zauberzeug/nicegui/pull/448#issuecomment-1492442558
143
161
  ui.space()
144
162
  ui.html(
145
163
  '🔬<a style="color: black; text-decoration: underline" target="_blank" href="https://github.com/aignostics/python-sdk/">'
@@ -0,0 +1,76 @@
1
+ """Theming."""
2
+
3
+ from pathlib import Path
4
+
5
+ from aignostics.utils import BasePageBuilder
6
+
7
+
8
+ class PageBuilder(BasePageBuilder):
9
+ @staticmethod
10
+ def register_pages() -> None:
11
+ from nicegui import app # noq # noqa: PLC0415
12
+
13
+ assets = Path(__file__).parent / "assets"
14
+ app.add_static_files("/assets", assets)
15
+
16
+
17
+ def theme() -> None:
18
+ """Set theme."""
19
+ from nicegui import app, ui # noqa: PLC0415
20
+
21
+ ui.colors(
22
+ primary="#1C1242",
23
+ secondary="#B9B1DF",
24
+ accent="#111B1E",
25
+ dark="#1d1d1d1d",
26
+ dark_page="#12121212",
27
+ positive="#0CA57B",
28
+ negative="#D4313C",
29
+ info="#261C8D",
30
+ warning="#FFCC00",
31
+ brand_white="#EFF0F1",
32
+ brand_background_light="#E7E6E8",
33
+ )
34
+
35
+ ui.add_head_html("""
36
+ <style type="text/tailwindcss">
37
+ @layer components {
38
+ .blue-box {
39
+ @apply bg-blue-500 p-12 text-center shadow-lg rounded-lg text-white;
40
+ }
41
+ }
42
+ ::-webkit-scrollbar {
43
+ display: none;
44
+ }
45
+ .q-drawer-container {
46
+ background-color: red
47
+ }
48
+ .bg-red-300 {
49
+ background-color: #EEADB1 !important;
50
+ }
51
+ .bg-green-300 {
52
+ background-color: #9EDBCA !important;
53
+ }
54
+ .bg-aignostics-light {
55
+ background-color: #ECEDE9 !important;
56
+ }
57
+ .bg-aignostics-dark {
58
+ background-color: #000000 !important;
59
+ }
60
+ .q-stepper, .q-drawer, .q-footer {
61
+ background-color: #F0F0F0 !important;
62
+ }
63
+ .q-drawer.q-dark {
64
+ background-color: #000000 !important;
65
+ }
66
+ html *
67
+ {
68
+ font-family: "Nexa Text", Arial, sans-serif;
69
+ }
70
+ header {
71
+ color: white
72
+ }
73
+ </style>
74
+ """)
75
+
76
+ ui.dark_mode(app.storage.general.get("dark_mode", False))
@@ -1,42 +0,0 @@
1
- """Theming."""
2
-
3
- from pathlib import Path
4
-
5
- from aignostics.utils import BasePageBuilder
6
-
7
-
8
- class PageBuilder(BasePageBuilder):
9
- @staticmethod
10
- def register_pages() -> None:
11
- from nicegui import app # noq # noqa: PLC0415
12
-
13
- assets = Path(__file__).parent / "assets"
14
- app.add_static_files("/assets", assets)
15
-
16
-
17
- def theme() -> None:
18
- """Set theme."""
19
- from nicegui import app, ui # noqa: PLC0415
20
-
21
- ui.colors(primary="#433D6B", secondary="#B9B1DF", accent="#111B1E", positive="#B0CCDA", negative="#EBB8C7")
22
-
23
- ui.add_head_html("""
24
- <style type="text/tailwindcss">
25
- @layer components {
26
- .blue-box {
27
- @apply bg-blue-500 p-12 text-center shadow-lg rounded-lg text-white;
28
- }
29
- }
30
- ::-webkit-scrollbar {
31
- display: none;
32
- }
33
- .bg-red-300 {
34
- background-color: #E9B9C7 !important;
35
- }
36
- .bg-green-300 {
37
- background-color: #B3CCD9 !important;
38
- }
39
- </style>
40
- """)
41
-
42
- ui.dark_mode(app.storage.general.get("dark_mode", False))
File without changes
File without changes
File without changes
File without changes