zenml-nightly 0.63.0.dev20240802__py3-none-any.whl → 0.64.0.dev20240810__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 (198) hide show
  1. README.md +1 -1
  2. RELEASE_NOTES.md +79 -0
  3. zenml/VERSION +1 -1
  4. zenml/__init__.py +0 -4
  5. zenml/analytics/enums.py +0 -6
  6. zenml/cli/__init__.py +0 -61
  7. zenml/cli/base.py +1 -1
  8. zenml/cli/web_login.py +8 -0
  9. zenml/client.py +0 -4
  10. zenml/config/build_configuration.py +43 -17
  11. zenml/config/docker_settings.py +80 -57
  12. zenml/config/source.py +58 -0
  13. zenml/constants.py +9 -2
  14. zenml/entrypoints/base_entrypoint_configuration.py +53 -8
  15. zenml/enums.py +1 -1
  16. zenml/environment.py +25 -9
  17. zenml/image_builders/base_image_builder.py +1 -1
  18. zenml/image_builders/build_context.py +25 -72
  19. zenml/integrations/azure/__init__.py +4 -0
  20. zenml/integrations/azure/flavors/__init__.py +11 -0
  21. zenml/integrations/azure/flavors/azureml_orchestrator_flavor.py +263 -0
  22. zenml/{_hub → integrations/azure/orchestrators}/__init__.py +7 -2
  23. zenml/integrations/azure/orchestrators/azureml_orchestrator.py +544 -0
  24. zenml/integrations/azure/orchestrators/azureml_orchestrator_entrypoint_config.py +86 -0
  25. zenml/integrations/azure/step_operators/azureml_step_operator.py +3 -0
  26. zenml/integrations/databricks/flavors/databricks_orchestrator_flavor.py +9 -0
  27. zenml/integrations/gcp/orchestrators/vertex_orchestrator.py +7 -2
  28. zenml/integrations/gcp/service_connectors/gcp_service_connector.py +123 -6
  29. zenml/integrations/kaniko/image_builders/kaniko_image_builder.py +1 -1
  30. zenml/integrations/mlflow/__init__.py +1 -1
  31. zenml/integrations/mlflow/experiment_trackers/mlflow_experiment_tracker.py +3 -1
  32. zenml/integrations/mlflow/flavors/mlflow_experiment_tracker_flavor.py +3 -0
  33. zenml/logger.py +13 -0
  34. zenml/models/__init__.py +0 -12
  35. zenml/models/v2/core/pipeline_deployment.py +21 -29
  36. zenml/models/v2/core/pipeline_run.py +13 -0
  37. zenml/models/v2/core/server_settings.py +12 -0
  38. zenml/models/v2/core/user.py +0 -21
  39. zenml/models/v2/misc/server_models.py +7 -1
  40. zenml/models/v2/misc/user_auth.py +0 -7
  41. zenml/new/pipelines/build_utils.py +193 -38
  42. zenml/new/pipelines/code_archive.py +157 -0
  43. zenml/new/pipelines/pipeline.py +29 -2
  44. zenml/new/pipelines/run_utils.py +67 -1
  45. zenml/service_connectors/service_connector_utils.py +14 -0
  46. zenml/stack_deployments/aws_stack_deployment.py +26 -3
  47. zenml/stack_deployments/azure_stack_deployment.py +11 -6
  48. zenml/stack_deployments/gcp_stack_deployment.py +24 -2
  49. zenml/stack_deployments/stack_deployment.py +17 -2
  50. zenml/steps/base_step.py +3 -0
  51. zenml/utils/archivable.py +149 -0
  52. zenml/utils/code_utils.py +244 -0
  53. zenml/utils/notebook_utils.py +122 -0
  54. zenml/utils/pipeline_docker_image_builder.py +3 -96
  55. zenml/utils/source_utils.py +109 -1
  56. zenml/zen_server/dashboard/assets/{404-CI13wQp4.js → 404-CRAA_Lew.js} +1 -1
  57. zenml/zen_server/dashboard/assets/@radix-BXWm7HOa.js +85 -0
  58. zenml/zen_server/dashboard/assets/{@react-router-CO-OsFwI.js → @react-router-l3lMcXA2.js} +1 -1
  59. zenml/zen_server/dashboard/assets/{@reactflow-DIYUhKYX.js → @reactflow-CeVxyqYT.js} +2 -2
  60. zenml/zen_server/dashboard/assets/{@tanstack-k96lU_C-.js → @tanstack-FmcYZMuX.js} +4 -4
  61. zenml/zen_server/dashboard/assets/AlertDialogDropdownItem-ErO9aOgK.js +1 -0
  62. zenml/zen_server/dashboard/assets/{AwarenessChannel-BNg5uWgI.js → AwarenessChannel-CLXo5rKM.js} +1 -1
  63. zenml/zen_server/dashboard/assets/{CodeSnippet-Cyp7f4dM.js → CodeSnippet-D0VLxT2A.js} +1 -1
  64. zenml/zen_server/dashboard/assets/{CollapsibleCard-Cu_A9W57.js → CollapsibleCard-BaUPiVg0.js} +1 -1
  65. zenml/zen_server/dashboard/assets/{Commands-DmQwTXjj.js → Commands-JrcZK-3j.js} +1 -1
  66. zenml/zen_server/dashboard/assets/CopyButton-Dbo52T1K.js +2 -0
  67. zenml/zen_server/dashboard/assets/{CsvVizualization-BvqItd-O.js → CsvVizualization-D3kAypDj.js} +3 -3
  68. zenml/zen_server/dashboard/assets/DisplayDate-DizbSeT-.js +1 -0
  69. zenml/zen_server/dashboard/assets/EditSecretDialog-Bd7mFLS4.js +1 -0
  70. zenml/zen_server/dashboard/assets/{EmptyState-BMLnFVlB.js → EmptyState-BHblM39I.js} +1 -1
  71. zenml/zen_server/dashboard/assets/{Error-DbXCTGua.js → Error-C6LeJSER.js} +1 -1
  72. zenml/zen_server/dashboard/assets/{ExecutionStatus-9zM7eaLh.js → ExecutionStatus-jH4OrWBq.js} +1 -1
  73. zenml/zen_server/dashboard/assets/{Helpbox-BIiNc-uH.js → Helpbox-aAB2XP-z.js} +1 -1
  74. zenml/zen_server/dashboard/assets/{Infobox-iv1Nu1A0.js → Infobox-BQ0aty32.js} +1 -1
  75. zenml/zen_server/dashboard/assets/{InlineAvatar-BvBtO2Dp.js → InlineAvatar-DpTLgM3Q.js} +1 -1
  76. zenml/zen_server/dashboard/assets/Lock-CNyJvf2r.js +1 -0
  77. zenml/zen_server/dashboard/assets/{MarkdownVisualization-xp3hhULl.js → MarkdownVisualization-Bajxn0HY.js} +1 -1
  78. zenml/zen_server/dashboard/assets/NumberBox-BmKE0qnO.js +1 -0
  79. zenml/zen_server/dashboard/assets/{PasswordChecker-DUveqlva.js → PasswordChecker-yGGoJSB-.js} +1 -1
  80. zenml/zen_server/dashboard/assets/{ProviderRadio-pSAvrGRS.js → ProviderRadio-BBqkIuTd.js} +1 -1
  81. zenml/zen_server/dashboard/assets/RadioItem-xLhXoiFV.js +1 -0
  82. zenml/zen_server/dashboard/assets/SearchField-C9R0mdaX.js +1 -0
  83. zenml/zen_server/dashboard/assets/{SetPassword-BOxpgh6N.js → SetPassword-52sNxNiO.js} +1 -1
  84. zenml/zen_server/dashboard/assets/{SuccessStep-CTSKN2lp.js → SuccessStep-DlkItqYG.js} +1 -1
  85. zenml/zen_server/dashboard/assets/{Tick-Bnr2TpW6.js → Tick-uxv80Q6a.js} +1 -1
  86. zenml/zen_server/dashboard/assets/{UpdatePasswordSchemas-BeCeaRW5.js → UpdatePasswordSchemas-oN4G3sKz.js} +1 -1
  87. zenml/zen_server/dashboard/assets/{aws-BgKTfTfx.js → aws-0_3UsPif.js} +1 -1
  88. zenml/zen_server/dashboard/assets/{check-circle-i56092KI.js → check-circle-1_I207rW.js} +1 -1
  89. zenml/zen_server/dashboard/assets/{chevron-down-D_ZlKMqH.js → chevron-down-BpaF8JqM.js} +1 -1
  90. zenml/zen_server/dashboard/assets/{chevron-right-double-CZBOf6JM.js → chevron-right-double-Dk8e2L99.js} +1 -1
  91. zenml/zen_server/dashboard/assets/{cloud-only-qelmY92E.js → cloud-only-BkUuI0lZ.js} +1 -1
  92. zenml/zen_server/dashboard/assets/components-Br2ezRib.js +1 -0
  93. zenml/zen_server/dashboard/assets/{copy-BXNk6BjL.js → copy-f3XGPPxt.js} +1 -1
  94. zenml/zen_server/dashboard/assets/{database-1xWSgZfO.js → database-cXYNX9tt.js} +1 -1
  95. zenml/zen_server/dashboard/assets/{docker-CQMVm_4d.js → docker-8uj__HHK.js} +1 -1
  96. zenml/zen_server/dashboard/assets/{dots-horizontal-BObFzD5l.js → dots-horizontal-sKQlWEni.js} +1 -1
  97. zenml/zen_server/dashboard/assets/edit-C0MVvPD2.js +1 -0
  98. zenml/zen_server/dashboard/assets/{file-text-CqD_iu6l.js → file-text-B9JibxTs.js} +1 -1
  99. zenml/zen_server/dashboard/assets/{help-bu_DgLKI.js → help-FuHlZwn0.js} +1 -1
  100. zenml/zen_server/dashboard/assets/index-Bd1xgUQG.js +1 -0
  101. zenml/zen_server/dashboard/assets/index-DaGknux4.css +1 -0
  102. zenml/zen_server/dashboard/assets/{index-KsTz2dHG.js → index-DhIZtpxB.js} +5 -5
  103. zenml/zen_server/dashboard/assets/{index.esm-CbHNSeVw.js → index.esm-DT4uyn2i.js} +1 -1
  104. zenml/zen_server/dashboard/assets/layout-D6oiSbfd.js +1 -0
  105. zenml/zen_server/dashboard/assets/{login-mutation-DRpbESS7.js → login-mutation-13A_JSVA.js} +1 -1
  106. zenml/zen_server/dashboard/assets/{logs-D8k8BVFf.js → logs-CgeE2vZP.js} +1 -1
  107. zenml/zen_server/dashboard/assets/{not-found-Dfx9hfkf.js → not-found-B0Mmb90p.js} +1 -1
  108. zenml/zen_server/dashboard/assets/{package-ClbU3KUi.js → package-DdkziX79.js} +1 -1
  109. zenml/zen_server/dashboard/assets/page-7-v2OBm-.js +1 -0
  110. zenml/zen_server/dashboard/assets/{page-f3jBVI5Z.js → page-B3ozwdD1.js} +1 -1
  111. zenml/zen_server/dashboard/assets/{page-DYBNGxJt.js → page-BGwA9B1M.js} +1 -1
  112. zenml/zen_server/dashboard/assets/{page-C176KxyB.js → page-BkjAUyTA.js} +1 -1
  113. zenml/zen_server/dashboard/assets/page-BnacgBiy.js +1 -0
  114. zenml/zen_server/dashboard/assets/{page-CzucfYPo.js → page-BxF_KMQ3.js} +2 -2
  115. zenml/zen_server/dashboard/assets/page-C4POHC0K.js +1 -0
  116. zenml/zen_server/dashboard/assets/page-C9kudd44.js +9 -0
  117. zenml/zen_server/dashboard/assets/page-CA1j3GpJ.js +1 -0
  118. zenml/zen_server/dashboard/assets/page-CCY6yfmu.js +1 -0
  119. zenml/zen_server/dashboard/assets/page-CgTe7Bme.js +1 -0
  120. zenml/zen_server/dashboard/assets/{page-DtpwnNXq.js → page-Cgn-6v2Y.js} +1 -1
  121. zenml/zen_server/dashboard/assets/page-CxQmQqDw.js +1 -0
  122. zenml/zen_server/dashboard/assets/page-D2Goey3H.js +1 -0
  123. zenml/zen_server/dashboard/assets/page-DLpOnf7u.js +1 -0
  124. zenml/zen_server/dashboard/assets/{page-DVPxY5fT.js → page-DSTQnBk-.js} +1 -1
  125. zenml/zen_server/dashboard/assets/{page-BoFtUD9H.js → page-DTysUGOy.js} +1 -1
  126. zenml/zen_server/dashboard/assets/{page-p2hLJdS2.js → page-D_EXUFJb.js} +1 -1
  127. zenml/zen_server/dashboard/assets/page-Db15QzsM.js +1 -0
  128. zenml/zen_server/dashboard/assets/{page-Btu39x7k.js → page-DugsjcQ_.js} +1 -1
  129. zenml/zen_server/dashboard/assets/{page-CZe9GEBF.js → page-OFKSPyN7.js} +1 -1
  130. zenml/zen_server/dashboard/assets/{page-CDgZmwxP.js → page-RnG-qhv9.js} +1 -1
  131. zenml/zen_server/dashboard/assets/{page-Cjn97HMv.js → page-T2BtjwPl.js} +1 -1
  132. zenml/zen_server/dashboard/assets/page-TXe1Eo3Z.js +1 -0
  133. zenml/zen_server/dashboard/assets/{page-BxiWdeyg.js → page-YiF_fNbe.js} +1 -1
  134. zenml/zen_server/dashboard/assets/{page-399pVZHU.js → page-hQaiQXfg.js} +1 -1
  135. zenml/zen_server/dashboard/assets/persist-3-5nOJ6m.js +1 -0
  136. zenml/zen_server/dashboard/assets/{play-circle-CNtZKDnW.js → play-circle-XSkLR12B.js} +1 -1
  137. zenml/zen_server/dashboard/assets/{plus-DOeLmm7C.js → plus-FB9-lEq_.js} +1 -1
  138. zenml/zen_server/dashboard/assets/refresh-COb6KYDi.js +1 -0
  139. zenml/zen_server/dashboard/assets/sharedSchema-BoYx_B_L.js +14 -0
  140. zenml/zen_server/dashboard/assets/{stack-detail-query-Ck7j7BP_.js → stack-detail-query-B-US_-wa.js} +1 -1
  141. zenml/zen_server/dashboard/assets/{terminal-By9cErXc.js → terminal-grtjrIEJ.js} +1 -1
  142. zenml/zen_server/dashboard/assets/trash-Cd5CSFqA.js +1 -0
  143. zenml/zen_server/dashboard/assets/{update-server-settings-mutation-f3ZT7psb.js → update-server-settings-mutation-B8GB_ubU.js} +1 -1
  144. zenml/zen_server/dashboard/assets/{url-rGEp5Umh.js → url-hcMJkz8p.js} +1 -1
  145. zenml/zen_server/dashboard/assets/{zod-BtSyGx4C.js → zod-CnykDKJj.js} +1 -1
  146. zenml/zen_server/dashboard/index.html +7 -7
  147. zenml/zen_server/dashboard_legacy/asset-manifest.json +4 -4
  148. zenml/zen_server/dashboard_legacy/index.html +1 -1
  149. zenml/zen_server/dashboard_legacy/{precache-manifest.2fa6e528a6e7447caaf35dadfe7514bb.js → precache-manifest.9c473c96a43298343a7ce1256183123b.js} +4 -4
  150. zenml/zen_server/dashboard_legacy/service-worker.js +1 -1
  151. zenml/zen_server/dashboard_legacy/static/js/{main.4aab7e98.chunk.js → main.463c90b9.chunk.js} +2 -2
  152. zenml/zen_server/dashboard_legacy/static/js/{main.4aab7e98.chunk.js.map → main.463c90b9.chunk.js.map} +1 -1
  153. zenml/zen_server/deploy/helm/Chart.yaml +1 -1
  154. zenml/zen_server/deploy/helm/README.md +2 -2
  155. zenml/zen_server/routers/stack_deployment_endpoints.py +6 -0
  156. zenml/zen_server/routers/users_endpoints.py +0 -7
  157. zenml/zen_server/utils.py +75 -0
  158. zenml/zen_server/zen_server_api.py +52 -1
  159. zenml/zen_stores/base_zen_store.py +7 -1
  160. zenml/zen_stores/migrations/versions/0.64.0_release.py +23 -0
  161. zenml/zen_stores/migrations/versions/026d4577b6a0_add_code_path.py +39 -0
  162. zenml/zen_stores/migrations/versions/3dcc5d20e82f_add_last_user_activity.py +51 -0
  163. zenml/zen_stores/migrations/versions/909550c7c4da_remove_user_hub_token.py +36 -0
  164. zenml/zen_stores/rest_zen_store.py +5 -3
  165. zenml/zen_stores/schemas/pipeline_deployment_schemas.py +3 -0
  166. zenml/zen_stores/schemas/pipeline_run_schemas.py +3 -0
  167. zenml/zen_stores/schemas/server_settings_schemas.py +2 -0
  168. zenml/zen_stores/schemas/user_schemas.py +0 -2
  169. zenml/zen_stores/sql_zen_store.py +25 -1
  170. {zenml_nightly-0.63.0.dev20240802.dist-info → zenml_nightly-0.64.0.dev20240810.dist-info}/METADATA +2 -2
  171. {zenml_nightly-0.63.0.dev20240802.dist-info → zenml_nightly-0.64.0.dev20240810.dist-info}/RECORD +174 -157
  172. zenml/_hub/client.py +0 -289
  173. zenml/_hub/constants.py +0 -21
  174. zenml/_hub/utils.py +0 -79
  175. zenml/cli/hub.py +0 -1116
  176. zenml/models/v2/misc/hub_plugin_models.py +0 -79
  177. zenml/zen_server/dashboard/assets/@radix-CFOkMR_E.js +0 -85
  178. zenml/zen_server/dashboard/assets/CopyButton-B3sWVJ4Z.js +0 -2
  179. zenml/zen_server/dashboard/assets/DisplayDate-DYgIjlDF.js +0 -1
  180. zenml/zen_server/dashboard/assets/SearchField-CXoBknpt.js +0 -1
  181. zenml/zen_server/dashboard/assets/components-DWe4cTjS.js +0 -1
  182. zenml/zen_server/dashboard/assets/index-vfjX_fJV.css +0 -1
  183. zenml/zen_server/dashboard/assets/page-C6tXXjnK.js +0 -1
  184. zenml/zen_server/dashboard/assets/page-CP9obrnG.js +0 -1
  185. zenml/zen_server/dashboard/assets/page-CaTOsNNw.js +0 -1
  186. zenml/zen_server/dashboard/assets/page-CmXmB_5i.js +0 -1
  187. zenml/zen_server/dashboard/assets/page-CvGAOfad.js +0 -1
  188. zenml/zen_server/dashboard/assets/page-D0bbc-qr.js +0 -5
  189. zenml/zen_server/dashboard/assets/page-DLEtD2ex.js +0 -1
  190. zenml/zen_server/dashboard/assets/page-DupV0aBd.js +0 -1
  191. zenml/zen_server/dashboard/assets/page-EweAR81y.js +0 -1
  192. zenml/zen_server/dashboard/assets/page-w-YaL77M.js +0 -9
  193. zenml/zen_server/dashboard/assets/persist-BReKApOc.js +0 -14
  194. zenml/zen_server/dashboard/assets/secrets-video-OBJ6irhH.svg +0 -21
  195. zenml/zen_server/dashboard/assets/stacks-video-7gfxpAq4.svg +0 -21
  196. {zenml_nightly-0.63.0.dev20240802.dist-info → zenml_nightly-0.64.0.dev20240810.dist-info}/LICENSE +0 -0
  197. {zenml_nightly-0.63.0.dev20240802.dist-info → zenml_nightly-0.64.0.dev20240810.dist-info}/WHEEL +0 -0
  198. {zenml_nightly-0.63.0.dev20240802.dist-info → zenml_nightly-0.64.0.dev20240810.dist-info}/entry_points.txt +0 -0
@@ -1,2 +0,0 @@
1
- import{r as t,j as e}from"./@radix-CFOkMR_E.js";import{s as d,t as C,v as u,w as m}from"./index-KsTz2dHG.js";import{S as f}from"./copy-BXNk6BjL.js";const h=r=>t.createElement("svg",{viewBox:"0 0 24 24",fill:"black",xmlns:"http://www.w3.org/2000/svg",...r},t.createElement("g",{id:"refresh-cw-01"},t.createElement("path",{id:"Icon (Stroke)",fillRule:"evenodd",clipRule:"evenodd",d:"M2 12C2 6.47715 6.47715 2 12 2C14.7624 2 17.2648 3.12139 19.0735 4.93138C19.7132 5.57146 20.3981 6.36248 21 7.09444V4C21 3.44772 21.4477 3 22 3C22.5523 3 23 3.44772 23 4V10C23 10.5523 22.5523 11 22 11H16C15.4477 11 15 10.5523 15 10C15 9.44772 15.4477 9 16 9H19.9692C19.277 8.13128 18.4165 7.10335 17.6588 6.34511C16.2098 4.89514 14.2104 4 12 4C7.58172 4 4 7.58172 4 12C4 16.4183 7.58172 20 12 20C15.6457 20 18.7243 17.5605 19.6874 14.2227C19.8406 13.6921 20.3948 13.3861 20.9255 13.5392C21.4561 13.6923 21.7622 14.2466 21.609 14.7773C20.4055 18.9481 16.5605 22 12 22C6.47715 22 2 17.5228 2 12Z"}))),y=h;function w({copyText:r,isVisible:s,copyTitle:n}){const i=t.useRef(null),[l,a]=t.useState(!1),p=s?n:"Copy to Clipboard",c=()=>{navigator.clipboard&&(navigator.clipboard.writeText(r),a(!0),setTimeout(()=>{a(!1)},2e3))};return e.jsx(d,{children:e.jsxs(C,{delayDuration:200,children:[e.jsxs(u,{className:`${s?"":"invisible opacity-0 group-hover/copybutton:opacity-100"} h-4 w-4 rounded-sm p-0.25 transition-all
2
- duration-200 hover:bg-theme-surface-primary active:bg-neutral-300 group-hover/copybutton:visible `,onClick:o=>{o.preventDefault(),c()},ref:i,children:[e.jsx("span",{className:"sr-only",children:"Copy to Clipboard"}),e.jsx(f,{className:`${s?"h-5 w-5":"h-3 w-3"} pointer-events-none fill-theme-text-tertiary`})]}),e.jsx(m,{onPointerDownOutside:o=>{o.currentTarget===i.current&&o.preventDefault()},className:"z-50 rounded-md bg-theme-text-primary px-3 py-2 text-text-xs text-theme-text-negative shadow-lg",sideOffset:5,children:l?"Copied!":p})]})})}export{w as C,y as R};
@@ -1 +0,0 @@
1
- import{j as t}from"./@radix-CFOkMR_E.js";function a({dateString:e}){const n=new Date(`${e}Z`).toLocaleString();return t.jsx(t.Fragment,{children:n})}export{a as D};
@@ -1 +0,0 @@
1
- import{r as f,j as i,g as F,c as j}from"./@radix-CFOkMR_E.js";import{S as G}from"./dots-horizontal-BObFzD5l.js";import{F as A}from"./chevron-right-double-CZBOf6JM.js";import{az as D,q as W,I as _}from"./index-KsTz2dHG.js";import{o as I}from"./url-rGEp5Umh.js";import{b as R,a as q}from"./@react-router-CO-OsFwI.js";const z=e=>f.createElement("svg",{viewBox:"0 0 24 24",fill:"black",xmlns:"http://www.w3.org/2000/svg",...e},f.createElement("g",{id:"chevron-left-double"},f.createElement("path",{id:"Icon (Stroke)",fillRule:"evenodd",clipRule:"evenodd",d:"M11.7071 6.29289C12.0976 6.68342 12.0976 7.31658 11.7071 7.70711L7.41421 12L11.7071 16.2929C12.0976 16.6834 12.0976 17.3166 11.7071 17.7071C11.3166 18.0976 10.6834 18.0976 10.2929 17.7071L5.29289 12.7071C4.90237 12.3166 4.90237 11.6834 5.29289 11.2929L10.2929 6.29289C10.6834 5.90237 11.3166 5.90237 11.7071 6.29289ZM18.7071 6.29289C19.0976 6.68342 19.0976 7.31658 18.7071 7.70711L14.4142 12L18.7071 16.2929C19.0976 16.6834 19.0976 17.3166 18.7071 17.7071C18.3166 18.0976 17.6834 18.0976 17.2929 17.7071L12.2929 12.7071C11.9024 12.3166 11.9024 11.6834 12.2929 11.2929L17.2929 6.29289C17.6834 5.90237 18.3166 5.90237 18.7071 6.29289Z"}))),H=z,Q=e=>f.createElement("svg",{viewBox:"0 0 24 24",fill:"black",xmlns:"http://www.w3.org/2000/svg",...e},f.createElement("g",{id:"chevron-left"},f.createElement("path",{id:"Icon (Stroke)",fillRule:"evenodd",clipRule:"evenodd",d:"M15.7071 5.29289C16.0976 5.68342 16.0976 6.31658 15.7071 6.70711L10.4142 12L15.7071 17.2929C16.0976 17.6834 16.0976 18.3166 15.7071 18.7071C15.3166 19.0976 14.6834 19.0976 14.2929 18.7071L8.29289 12.7071C7.90237 12.3166 7.90237 11.6834 8.29289 11.2929L14.2929 5.29289C14.6834 4.90237 15.3166 4.90237 15.7071 5.29289Z"}))),U=Q;function ye({paginate:e,searchParams:r}){const o=R(),{index:n,total_pages:u}=e;function d(a){const l=new URLSearchParams(I(r));l.set("page",a.toString()),o(`?${l.toString()}`,{preventScrollReset:!1})}const m=()=>{const a=[];let g=!1,b=!1;for(let t=1;t<=u;t++){const c=t>1&&t<u&&Math.abs(t-n)>1;(t===1||t===u||c||Math.abs(t-n)<=1)&&(c?t<n&&!g?(a.push(i.jsx(T,{},"ellipsis-left")),g=!0):t>n&&!b&&(a.push(i.jsx(T,{},"ellipsis-right")),b=!0):a.push(i.jsx(h,{"aria-label":`Go to page ${t}`,"aria-current":t===n,className:`${t===n?"!bg-primary-500 text-theme-text-negative":""}`,onClick:()=>d(t),disabled:t===n,children:t},t)))}return a};return i.jsx("nav",{role:"navigation","aria-label":"Pagination Navigation",children:i.jsxs("ul",{className:"flex gap-1",children:[i.jsx("li",{children:i.jsx(h,{disabled:n===1,onClick:()=>d(1),"aria-label":"Go to first page",children:i.jsx(H,{className:"h-4 w-4 group-disabled/button:fill-neutral-300"})})}),i.jsx("li",{children:i.jsx(h,{disabled:n===1,onClick:()=>d(n-1),"aria-label":"Go to previous page",children:i.jsx(U,{className:"h-4 w-4 group-disabled/button:fill-neutral-300"})})}),m().map((a,l)=>i.jsx("li",{children:a},l)),i.jsx("li",{children:i.jsx(h,{disabled:n===u,onClick:()=>d(n+1),"aria-label":"Go to next page",children:i.jsx(D,{className:"h-4 w-4 group-disabled/button:fill-neutral-300"})})}),i.jsx("li",{children:i.jsx(h,{disabled:n===u,onClick:()=>d(u),"aria-label":"Go to last page",children:i.jsx(A,{className:"h-4 w-4 group-disabled/button:fill-neutral-300"})})})]})})}function T(){return i.jsx("div",{className:"flex h-[36px] w-[36px] items-center justify-center rounded-sm border border-theme-border-moderate",children:i.jsx(G,{className:"h-4 w-4"})})}const h=f.forwardRef(({className:e,...r},o)=>i.jsx("button",{...r,ref:o,className:W("group/button flex h-[36px] w-[36px] items-center justify-center rounded-sm border border-neutral-300 hover:bg-neutral-200 active:border-neutral-400 active:bg-neutral-300 disabled:pointer-events-none disabled:bg-theme-surface-primary ",e)}));h.displayName="PaginationButton";var Z="Expected a function",P=NaN,V="[object Symbol]",X=/^\s+|\s+$/g,J=/^[-+]0x[0-9a-f]+$/i,K=/^0b[01]+$/i,Y=/^0o[0-7]+$/i,ee=parseInt,te=typeof j=="object"&&j&&j.Object===Object&&j,re=typeof self=="object"&&self&&self.Object===Object&&self,ne=te||re||Function("return this")(),ae=Object.prototype,ie=ae.toString,se=Math.max,oe=Math.min,C=function(){return ne.Date.now()};function le(e,r,o){var n,u,d,m,a,l,g=0,b=!1,t=!1,c=!0;if(typeof e!="function")throw new TypeError(Z);r=k(r)||0,w(o)&&(b=!!o.leading,t="maxWait"in o,d=t?se(k(o.maxWait)||0,r):d,c="trailing"in o?!!o.trailing:c);function S(s){var p=n,x=u;return n=u=void 0,g=s,m=e.apply(x,p),m}function $(s){return g=s,a=setTimeout(v,r),b?S(s):m}function O(s){var p=s-l,x=s-g,N=r-p;return t?oe(N,d-x):N}function E(s){var p=s-l,x=s-g;return l===void 0||p>=r||p<0||t&&x>=d}function v(){var s=C();if(E(s))return L(s);a=setTimeout(v,O(s))}function L(s){return a=void 0,c&&n?S(s):(n=u=void 0,m)}function B(){a!==void 0&&clearTimeout(a),g=0,n=l=u=a=void 0}function M(){return a===void 0?m:L(C())}function y(){var s=C(),p=E(s);if(n=arguments,u=this,l=s,p){if(a===void 0)return $(l);if(t)return a=setTimeout(v,r),S(l)}return a===void 0&&(a=setTimeout(v,r)),m}return y.cancel=B,y.flush=M,y}function w(e){var r=typeof e;return!!e&&(r=="object"||r=="function")}function ce(e){return!!e&&typeof e=="object"}function ue(e){return typeof e=="symbol"||ce(e)&&ie.call(e)==V}function k(e){if(typeof e=="number")return e;if(ue(e))return P;if(w(e)){var r=typeof e.valueOf=="function"?e.valueOf():e;e=w(r)?r+"":r}if(typeof e!="string")return e===0?e:+e;e=e.replace(X,"");var o=K.test(e);return o||Y.test(e)?ee(e.slice(2),o?2:8):J.test(e)?P:+e}var de=le;const fe=F(de),me=["equals:","contains:","startswith:","endswith:","gte:","gt:","lte:","lt:"];function ge(e){const r=me.find(o=>e.startsWith(o));return r?e.slice(r.length):e}const pe=f.forwardRef(({searchParams:e,searchContains:r=!0,...o},n)=>{const{pathname:u}=q(),d=R(),[m,a]=f.useState(ge(e.name||"")||""),l=f.useMemo(()=>fe(g,500),[]);f.useEffect(()=>()=>{l.cancel()},[l]);function g(t){const c=new URLSearchParams(I(e));c.delete("logical_operator"),t?(c.set("name",r?`contains:${t}`:`${t}`),c.set("operator","or"),c.set("page","1")):(c.delete("name"),c.delete("operator")),d(`${u}?${c.toString()}`,{preventScrollReset:!0,replace:!0})}function b(t){const{value:c}=t.target;a(c),l(c)}return i.jsx(_,{...o,ref:n,value:m,onChange:b,placeholder:"Search...",inputSize:"md"})});pe.displayName="SearchField";export{ye as P,pe as S};
@@ -1 +0,0 @@
1
- import{r}from"./@radix-CFOkMR_E.js";const o=C=>r.createElement("svg",{viewBox:"0 0 24 24",fill:"black",xmlns:"http://www.w3.org/2000/svg",...C},r.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M11.1615 1H12.8385C13.3657 0.999983 13.8205 0.999967 14.195 1.03057C14.5904 1.06287 14.9836 1.13419 15.362 1.32698C15.9265 1.6146 16.3854 2.07354 16.673 2.63803C16.8658 3.01641 16.9371 3.40963 16.9694 3.80497C16.9969 4.14075 16.9997 4.54097 17 5H21C21.5523 5 22 5.44772 22 6C22 6.55229 21.5523 7 21 7H20V17.2413C20 18.0463 20 18.7106 19.9558 19.2518C19.9099 19.8139 19.8113 20.3306 19.564 20.816C19.1805 21.5686 18.5686 22.1805 17.816 22.564C17.3306 22.8113 16.8139 22.9099 16.2518 22.9558C15.7106 23 15.0463 23 14.2413 23H9.75868C8.95372 23 8.28936 23 7.74817 22.9558C7.18608 22.9099 6.66937 22.8113 6.18404 22.564C5.43139 22.1805 4.81947 21.5686 4.43597 20.816C4.18868 20.3306 4.09012 19.8139 4.04419 19.2518C3.99998 18.7106 3.99999 18.0463 4 17.2413L4 7H3C2.44772 7 2 6.55229 2 6C2 5.44772 2.44772 5 3 5H7.00003C7.00031 4.54097 7.00314 4.14075 7.03057 3.80497C7.06287 3.40963 7.13419 3.01641 7.32698 2.63803C7.6146 2.07354 8.07354 1.6146 8.63803 1.32698C9.01641 1.13419 9.40963 1.06287 9.80497 1.03057C10.1795 0.999967 10.6343 0.999983 11.1615 1ZM6 7V17.2C6 18.0566 6.00078 18.6389 6.03755 19.089C6.07337 19.5274 6.1383 19.7516 6.21799 19.908C6.40973 20.2843 6.71569 20.5903 7.09202 20.782C7.24842 20.8617 7.47262 20.9266 7.91104 20.9625C8.36113 20.9992 8.94342 21 9.8 21H14.2C15.0566 21 15.6389 20.9992 16.089 20.9625C16.5274 20.9266 16.7516 20.8617 16.908 20.782C17.2843 20.5903 17.5903 20.2843 17.782 19.908C17.8617 19.7516 17.9266 19.5274 17.9624 19.089C17.9992 18.6389 18 18.0566 18 17.2V7H6ZM14.9999 5H9.00007C9.00051 4.5349 9.00357 4.21698 9.02393 3.96784C9.04612 3.69617 9.0838 3.59546 9.10899 3.54601C9.20487 3.35785 9.35785 3.20487 9.54601 3.109C9.59545 3.0838 9.69617 3.04612 9.96784 3.02393C10.2512 3.00078 10.6234 3 11.2 3H12.8C13.3766 3 13.7488 3.00078 14.0322 3.02393C14.3038 3.04612 14.4045 3.0838 14.454 3.109C14.6422 3.20487 14.7951 3.35785 14.891 3.54601C14.9162 3.59546 14.9539 3.69617 14.9761 3.96784C14.9964 4.21698 14.9995 4.5349 14.9999 5ZM10 10.5C10.5523 10.5 11 10.9477 11 11.5V16.5C11 17.0523 10.5523 17.5 10 17.5C9.44772 17.5 9 17.0523 9 16.5V11.5C9 10.9477 9.44772 10.5 10 10.5ZM14 10.5C14.5523 10.5 15 10.9477 15 11.5V16.5C15 17.0523 14.5523 17.5 14 17.5C13.4477 17.5 13 17.0523 13 16.5V11.5C13 10.9477 13.4477 10.5 14 10.5Z"}));function a(C){if(!C)return[];const e=[];for(const t in C)Array.isArray(C[t])&&e.push(...C[t]);return e}export{o as S,a as e};
@@ -1 +0,0 @@
1
- @font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-cyrillic-ext-400-normal-tyfMZHQw.woff2) format("woff2"),url(/assets/inter-cyrillic-ext-400-normal-CzG7Kr3z.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-cyrillic-400-normal-Df6ckaLK.woff2) format("woff2"),url(/assets/inter-cyrillic-400-normal-JrS_4yms.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-greek-ext-400-normal-CIdlr5YK.woff2) format("woff2"),url(/assets/inter-greek-ext-400-normal-_Rr29XE2.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-greek-400-normal-DQXyrmoy.woff2) format("woff2"),url(/assets/inter-greek-400-normal-DvIPHDQ7.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-vietnamese-400-normal-Cnt0N5Vm.woff2) format("woff2"),url(/assets/inter-vietnamese-400-normal-DIOGfGLL.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-ext-400-normal-D3W-OpO-.woff2) format("woff2"),url(/assets/inter-latin-ext-400-normal-8tIzm-yw.woff) format("woff");unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-400-normal-BT1H-PT_.woff2) format("woff2"),url(/assets/inter-latin-400-normal-Cdi8t5Mu.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-cyrillic-ext-500-normal-DOnSzjnx.woff2) format("woff2"),url(/assets/inter-cyrillic-ext-500-normal-Xebo2OyJ.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-cyrillic-500-normal-BRrLR67x.woff2) format("woff2"),url(/assets/inter-cyrillic-500-normal-DskEQOpE.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-greek-ext-500-normal-2pdUafRD.woff2) format("woff2"),url(/assets/inter-greek-ext-500-normal-Dtavx3qw.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-greek-500-normal-CmOavsDc.woff2) format("woff2"),url(/assets/inter-greek-500-normal-BjpBGs91.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-vietnamese-500-normal-5IkPJ6Nk.woff2) format("woff2"),url(/assets/inter-vietnamese-500-normal-0i6yoQMg.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-ext-500-normal-B9u8Q_zH.woff2) format("woff2"),url(/assets/inter-latin-ext-500-normal-SuUkSNTU.woff) format("woff");unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-500-normal-kWhwEdDH.woff2) format("woff2"),url(/assets/inter-latin-500-normal-D4I8BKCx.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-cyrillic-ext-600-normal-DpA2xaRd.woff2) format("woff2"),url(/assets/inter-cyrillic-ext-600-normal-KAwcVx6H.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C88,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-cyrillic-600-normal-DDpWG8g5.woff2) format("woff2"),url(/assets/inter-cyrillic-600-normal-iz1--dBq.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-greek-ext-600-normal-CkBLDEl_.woff2) format("woff2"),url(/assets/inter-greek-ext-600-normal-BmtRFZgT.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-greek-600-normal-B-l8Lzzd.woff2) format("woff2"),url(/assets/inter-greek-600-normal-BLZsI-P3.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-vietnamese-600-normal-DjnxGF-L.woff2) format("woff2"),url(/assets/inter-vietnamese-600-normal-BQ_dbMbg.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-ext-600-normal-ao35dkSb.woff2) format("woff2"),url(/assets/inter-latin-ext-600-normal-Dg0Bk0Yr.woff) format("woff");unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-600-normal-B2Ssfs8e.woff2) format("woff2"),url(/assets/inter-latin-600-normal-Dbvh0wvx.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:Inter,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}:root{--color-primary-900: 258 66% 7%;--color-primary-800: 259 66% 14%;--color-primary-700: 259 68% 21%;--color-primary-600: 260 67% 28%;--color-primary-500: 259 67% 35%;--color-primary-400: 260 89% 60%;--color-primary-300: 260 89% 68%;--color-primary-200: 260 89% 76%;--color-primary-100: 260 90% 84%;--color-primary-050: 259 90% 92%;--color-primary-025: 259 90% 96%;--color-neutral-900: 221 39% 11%;--color-neutral-800: 215 28% 17%;--color-neutral-700: 217 19% 27%;--color-neutral-600: 215 14% 34%;--color-neutral-500: 220 9% 46%;--color-neutral-400: 218 11% 65%;--color-neutral-300: 216 12% 84%;--color-neutral-200: 220 13% 91%;--color-neutral-100: 220 14% 96%;--color-neutral-050: 210 20% 98%;--color-neutral-000: 0 0% 100%;--color-error-900: 4 59% 19%;--color-error-800: 3 58% 29%;--color-error-700: 4 59% 39%;--color-error-600: 4 59% 48%;--color-error-500: 4 81% 58%;--color-error-400: 4 81% 65%;--color-error-300: 4 82% 72%;--color-error-200: 3 81% 79%;--color-error-100: 4 81% 86%;--color-error-050: 3 81% 92%;--color-warning-900: 32 93% 17%;--color-warning-800: 33 92% 25%;--color-warning-700: 32 92% 34%;--color-warning-600: 33 93% 42%;--color-warning-500: 32 95% 51%;--color-warning-400: 32 95% 59%;--color-warning-300: 32 95% 67%;--color-warning-200: 33 95% 75%;--color-warning-100: 32 95% 84%;--color-warning-050: 33 96% 90%;--color-success-900: 137 75% 14%;--color-success-800: 137 75% 22%;--color-success-700: 137 74% 29%;--color-success-600: 137 75% 36%;--color-success-500: 137 74% 43%;--color-success-400: 137 56% 53%;--color-success-300: 137 56% 62%;--color-success-200: 137 56% 71%;--color-success-100: 137 57% 81%;--color-success-050: 137 55% 89%;--color-blue-900: 208 88% 10%;--color-blue-800: 209 88% 17%;--color-blue-700: 208 89% 25%;--color-blue-600: 208 89% 33%;--color-blue-500: 209 89% 42%;--color-blue-400: 209 90% 50%;--color-blue-300: 209 90% 58%;--color-blue-200: 208 89% 67%;--color-blue-100: 208 89% 75%;--color-blue-050: 209 90% 84%;--color-blue-025: 208 88% 90%;--color-teal-900: 180 61% 8%;--color-teal-800: 180 59% 14%;--color-teal-700: 180 60% 20%;--color-teal-600: 180 61% 27%;--color-teal-500: 180 60% 34%;--color-teal-400: 180 60% 41%;--color-teal-300: 180 41% 51%;--color-teal-200: 180 42% 60%;--color-teal-100: 180 41% 70%;--color-teal-050: 180 41% 80%;--color-teal-025: 180 41% 88%;--color-turquoise-900: 192 57% 9%;--color-turquoise-800: 190 57% 15%;--color-turquoise-700: 189 58% 22%;--color-turquoise-600: 190 58% 30%;--color-turquoise-500: 189 57% 37%;--color-turquoise-400: 190 58% 44%;--color-turquoise-300: 190 46% 54%;--color-turquoise-200: 190 46% 63%;--color-turquoise-100: 189 45% 72%;--color-turquoise-050: 190 45% 81%;--color-turquoise-025: 192 46% 89%;--color-lime-900: 96 60% 11%;--color-lime-800: 96 61% 18%;--color-lime-700: 96 60% 27%;--color-lime-600: 96 60% 36%;--color-lime-500: 96 60% 45%;--color-lime-400: 96 72% 54%;--color-lime-300: 96 71% 62%;--color-lime-200: 96 72% 70%;--color-lime-100: 96 71% 77%;--color-lime-050: 96 72% 85%;--color-lime-025: 96 70% 91%;--color-magenta-900: 337 61% 12%;--color-magenta-800: 338 61% 20%;--color-magenta-700: 338 60% 30%;--color-magenta-600: 338 60% 40%;--color-magenta-500: 338 60% 50%;--color-magenta-400: 338 90% 60%;--color-magenta-300: 338 91% 67%;--color-magenta-200: 338 90% 73%;--color-magenta-100: 338 90% 80%;--color-magenta-050: 338 91% 87%;--color-magenta-025: 337 90% 92%;--color-orange-900: 19 61% 12%;--color-orange-800: 19 61% 20%;--color-orange-700: 19 60% 30%;--color-orange-600: 19 60% 40%;--color-orange-500: 19 60% 50%;--color-orange-400: 19 90% 60%;--color-orange-300: 19 91% 67%;--color-orange-200: 19 90% 73%;--color-orange-100: 19 90% 80%;--color-orange-050: 19 91% 87%;--color-orange-025: 19 90% 92%;--color-text-primary: var(--color-primary-900);--color-text-secondary: var(--color-neutral-500);--color-text-tertiary: var(--color-neutral-400);--color-text-negative: var(--color-neutral-000);--color-text-brand: var(--color-primary-500);--color-text-error: var(--color-error-500);--color-text-warning: var(--color-warning-500);--color-text-success: var(--color-success-500);--color-surface-primary: var(--color-neutral-000);--color-surface-secondary: var(--color-neutral-050);--color-surface-tertiary: var(--color-neutral-100);--color-surface-strong: var(--color-primary-400);--color-border-minimal: var(--color-neutral-100);--color-border-moderate: var(--color-neutral-200);--color-border-bold: var(--color-neutral-500)}[type=text],input:where(:not([type])),[type=email],[type=url],[type=password],[type=number],[type=date],[type=datetime-local],[type=month],[type=search],[type=tel],[type=time],[type=week],[multiple],textarea,select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:#fff;border-color:#6b7280;border-width:1px;border-radius:0;padding:.5rem .75rem;font-size:1rem;line-height:1.5rem;--tw-shadow: 0 0 #0000}[type=text]:focus,input:where(:not([type])):focus,[type=email]:focus,[type=url]:focus,[type=password]:focus,[type=number]:focus,[type=date]:focus,[type=datetime-local]:focus,[type=month]:focus,[type=search]:focus,[type=tel]:focus,[type=time]:focus,[type=week]:focus,[multiple]:focus,textarea:focus,select:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-inset: var(--tw-empty, );--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: hsl(var(--color-blue-600) / var(--tw-ring-opacity, 1));--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow);border-color:hsl(var(--color-blue-600) / var(--tw-border-opacity, 1))}input::-moz-placeholder,textarea::-moz-placeholder{color:#6b7280;opacity:1}input::placeholder,textarea::placeholder{color:#6b7280;opacity:1}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-date-and-time-value{min-height:1.5em;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit,::-webkit-datetime-edit-year-field,::-webkit-datetime-edit-month-field,::-webkit-datetime-edit-day-field,::-webkit-datetime-edit-hour-field,::-webkit-datetime-edit-minute-field,::-webkit-datetime-edit-second-field,::-webkit-datetime-edit-millisecond-field,::-webkit-datetime-edit-meridiem-field{padding-top:0;padding-bottom:0}select{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='%236b7280' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");background-position:right .5rem center;background-repeat:no-repeat;background-size:1.5em 1.5em;padding-right:2.5rem;-webkit-print-color-adjust:exact;print-color-adjust:exact}[multiple],[size]:where(select:not([size="1"])){background-image:initial;background-position:initial;background-repeat:unset;background-size:initial;padding-right:.75rem;-webkit-print-color-adjust:unset;print-color-adjust:unset}[type=checkbox],[type=radio]{-webkit-appearance:none;-moz-appearance:none;appearance:none;padding:0;-webkit-print-color-adjust:exact;print-color-adjust:exact;display:inline-block;vertical-align:middle;background-origin:border-box;-webkit-user-select:none;-moz-user-select:none;user-select:none;flex-shrink:0;height:1rem;width:1rem;color:hsl(var(--color-blue-600) / var(--tw-text-opacity, 1));background-color:#fff;border-color:#6b7280;border-width:1px;--tw-shadow: 0 0 #0000}[type=checkbox]{border-radius:0}[type=radio]{border-radius:100%}[type=checkbox]:focus,[type=radio]:focus{outline:2px solid transparent;outline-offset:2px;--tw-ring-inset: var(--tw-empty, );--tw-ring-offset-width: 2px;--tw-ring-offset-color: #fff;--tw-ring-color: hsl(var(--color-blue-600) / var(--tw-ring-opacity, 1));--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}[type=checkbox]:checked,[type=radio]:checked{border-color:transparent;background-color:currentColor;background-size:100% 100%;background-position:center;background-repeat:no-repeat}[type=checkbox]:checked{background-image:url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e")}@media (forced-colors: active){[type=checkbox]:checked{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}}[type=radio]:checked{background-image:url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e")}@media (forced-colors: active){[type=radio]:checked{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}}[type=checkbox]:checked:hover,[type=checkbox]:checked:focus,[type=radio]:checked:hover,[type=radio]:checked:focus{border-color:transparent;background-color:currentColor}[type=checkbox]:indeterminate{background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 16 16'%3e%3cpath stroke='white' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M4 8h8'/%3e%3c/svg%3e");border-color:transparent;background-color:currentColor;background-size:100% 100%;background-position:center;background-repeat:no-repeat}@media (forced-colors: active){[type=checkbox]:indeterminate{-webkit-appearance:auto;-moz-appearance:auto;appearance:auto}}[type=checkbox]:indeterminate:hover,[type=checkbox]:indeterminate:focus{border-color:transparent;background-color:currentColor}[type=file]{background:unset;border-color:inherit;border-width:0;border-radius:0;padding:0;font-size:unset;line-height:inherit}[type=file]:focus{outline:1px solid ButtonText;outline:1px auto -webkit-focus-ring-color}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(147 197 253 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(147 197 253 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }.container{width:100%}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}.\!prose{color:var(--tw-prose-body)!important;max-width:65ch!important}.\!prose :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em!important;margin-bottom:1.25em!important}.\!prose :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-lead)!important;font-size:1.25em!important;line-height:1.6!important;margin-top:1.2em!important;margin-bottom:1.2em!important}.\!prose :where(a):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-links)!important;text-decoration:underline!important;font-weight:500!important}.\!prose :where(strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-bold)!important;font-weight:600!important}.\!prose :where(a strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit!important}.\!prose :where(blockquote strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit!important}.\!prose :where(thead th strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit!important}.\!prose :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal!important;margin-top:1.25em!important;margin-bottom:1.25em!important;padding-left:1.625em!important}.\!prose :where(ol[type=A]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha!important}.\!prose :where(ol[type=a]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha!important}.\!prose :where(ol[type=A s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha!important}.\!prose :where(ol[type=a s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha!important}.\!prose :where(ol[type=I]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman!important}.\!prose :where(ol[type=i]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman!important}.\!prose :where(ol[type=I s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman!important}.\!prose :where(ol[type=i s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman!important}.\!prose :where(ol[type="1"]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal!important}.\!prose :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:disc!important;margin-top:1.25em!important;margin-bottom:1.25em!important;padding-left:1.625em!important}.\!prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{font-weight:400!important;color:var(--tw-prose-counters)!important}.\!prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-bullets)!important}.\!prose :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings)!important;font-weight:600!important;margin-top:1.25em!important}.\!prose :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){border-color:var(--tw-prose-hr)!important;border-top-width:1px!important;margin-top:3em!important;margin-bottom:3em!important}.\!prose :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:500!important;font-style:italic!important;color:var(--tw-prose-quotes)!important;border-left-width:.25rem!important;border-left-color:var(--tw-prose-quote-borders)!important;quotes:"“""”""‘""’"!important;margin-top:1.6em!important;margin-bottom:1.6em!important;padding-left:1em!important}.\!prose :where(blockquote p:first-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:open-quote!important}.\!prose :where(blockquote p:last-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:close-quote!important}.\!prose :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings)!important;font-weight:800!important;font-size:2.25em!important;margin-top:0!important;margin-bottom:.8888889em!important;line-height:1.1111111!important}.\!prose :where(h1 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:900!important;color:inherit!important}.\!prose :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings)!important;font-weight:700!important;font-size:1.5em!important;margin-top:2em!important;margin-bottom:1em!important;line-height:1.3333333!important}.\!prose :where(h2 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:800!important;color:inherit!important}.\!prose :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings)!important;font-weight:600!important;font-size:1.25em!important;margin-top:1.6em!important;margin-bottom:.6em!important;line-height:1.6!important}.\!prose :where(h3 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:700!important;color:inherit!important}.\!prose :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings)!important;font-weight:600!important;margin-top:1.5em!important;margin-bottom:.5em!important;line-height:1.5!important}.\!prose :where(h4 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:700!important;color:inherit!important}.\!prose :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em!important;margin-bottom:2em!important}.\!prose :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){display:block!important;margin-top:2em!important;margin-bottom:2em!important}.\!prose :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:500!important;font-family:inherit!important;color:var(--tw-prose-kbd)!important;box-shadow:0 0 0 1px rgb(var(--tw-prose-kbd-shadows) / 10%),0 3px rgb(var(--tw-prose-kbd-shadows) / 10%)!important;font-size:.875em!important;border-radius:.3125rem!important;padding:.1875em .375em!important}.\!prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-code)!important;font-weight:600!important;font-size:.875em!important}.\!prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:"`"!important}.\!prose :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:"`"!important}.\!prose :where(a code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit!important}.\!prose :where(h1 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit!important}.\!prose :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit!important;font-size:.875em!important}.\!prose :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit!important;font-size:.9em!important}.\!prose :where(h4 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit!important}.\!prose :where(blockquote code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit!important}.\!prose :where(thead th code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit!important}.\!prose :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-pre-code)!important;background-color:var(--tw-prose-pre-bg)!important;overflow-x:auto!important;font-weight:400!important;font-size:.875em!important;line-height:1.7142857!important;margin-top:1.7142857em!important;margin-bottom:1.7142857em!important;border-radius:.375rem!important;padding:.8571429em 1.1428571em!important}.\!prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)){background-color:transparent!important;border-width:0!important;border-radius:0!important;padding:0!important;font-weight:inherit!important;color:inherit!important;font-size:inherit!important;font-family:inherit!important;line-height:inherit!important}.\!prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:none!important}.\!prose :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:none!important}.\!prose :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){width:100%!important;table-layout:auto!important;text-align:left!important;margin-top:2em!important;margin-bottom:2em!important;font-size:.875em!important;line-height:1.7142857!important}.\!prose :where(thead):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px!important;border-bottom-color:var(--tw-prose-th-borders)!important}.\!prose :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings)!important;font-weight:600!important;vertical-align:bottom!important;padding-right:.5714286em!important;padding-bottom:.5714286em!important;padding-left:.5714286em!important}.\!prose :where(tbody tr):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px!important;border-bottom-color:var(--tw-prose-td-borders)!important}.\!prose :where(tbody tr:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:0!important}.\!prose :where(tbody td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:baseline!important}.\!prose :where(tfoot):not(:where([class~=not-prose],[class~=not-prose] *)){border-top-width:1px!important;border-top-color:var(--tw-prose-th-borders)!important}.\!prose :where(tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:top!important}.\!prose :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0!important;margin-bottom:0!important}.\!prose :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-captions)!important;font-size:.875em!important;line-height:1.4285714!important;margin-top:.8571429em!important}.\!prose{--tw-prose-body: #374151 !important;--tw-prose-headings: #111827 !important;--tw-prose-lead: #4b5563 !important;--tw-prose-links: #111827 !important;--tw-prose-bold: #111827 !important;--tw-prose-counters: #6b7280 !important;--tw-prose-bullets: #d1d5db !important;--tw-prose-hr: #e5e7eb !important;--tw-prose-quotes: #111827 !important;--tw-prose-quote-borders: #e5e7eb !important;--tw-prose-captions: #6b7280 !important;--tw-prose-kbd: #111827 !important;--tw-prose-kbd-shadows: 17 24 39 !important;--tw-prose-code: #111827 !important;--tw-prose-pre-code: #e5e7eb !important;--tw-prose-pre-bg: #1f2937 !important;--tw-prose-th-borders: #d1d5db !important;--tw-prose-td-borders: #e5e7eb !important;--tw-prose-invert-body: #d1d5db !important;--tw-prose-invert-headings: #fff !important;--tw-prose-invert-lead: #9ca3af !important;--tw-prose-invert-links: #fff !important;--tw-prose-invert-bold: #fff !important;--tw-prose-invert-counters: #9ca3af !important;--tw-prose-invert-bullets: #4b5563 !important;--tw-prose-invert-hr: #374151 !important;--tw-prose-invert-quotes: #f3f4f6 !important;--tw-prose-invert-quote-borders: #374151 !important;--tw-prose-invert-captions: #9ca3af !important;--tw-prose-invert-kbd: #fff !important;--tw-prose-invert-kbd-shadows: 255 255 255 !important;--tw-prose-invert-code: #fff !important;--tw-prose-invert-pre-code: #d1d5db !important;--tw-prose-invert-pre-bg: rgb(0 0 0 / 50%) !important;--tw-prose-invert-th-borders: #4b5563 !important;--tw-prose-invert-td-borders: #374151 !important;font-size:1rem!important;line-height:1.75!important}.\!prose :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0!important;margin-bottom:0!important}.\!prose :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em!important;margin-bottom:2em!important}.\!prose :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em!important;margin-bottom:.5em!important}.\!prose :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-left:.375em!important}.\!prose :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-left:.375em!important}.\!prose :where(.\!prose>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em!important;margin-bottom:.75em!important}.\!prose :where(.\!prose>ul>li>*:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em!important}.\!prose :where(.\!prose>ul>li>*:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em!important}.\!prose :where(.\!prose>ol>li>*:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em!important}.\!prose :where(.\!prose>ol>li>*:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em!important}.\!prose :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em!important;margin-bottom:.75em!important}.\!prose :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em!important;margin-bottom:1.25em!important}.\!prose :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em!important;padding-left:1.625em!important}.\!prose :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0!important}.\!prose :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0!important}.\!prose :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0!important}.\!prose :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0!important}.\!prose :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-left:0!important}.\!prose :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-right:0!important}.\!prose :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding:.5714286em!important}.\!prose :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-left:0!important}.\!prose :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-right:0!important}.\!prose :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em!important;margin-bottom:2em!important}.\!prose :where(.\!prose>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0!important}.\!prose :where(.\!prose>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0!important}[type=radio]:checked{background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 16 16' fill='%237A3EF4' xmlns='http://www.w3.org/2000/svg'%3E%3Ccircle cx='8' cy='8' r='5'/%3E%3C/svg%3E")}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.pointer-events-auto{pointer-events:auto}.invisible{visibility:hidden}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{top:0rem;right:0rem;bottom:0rem;left:0rem}.inset-x-0{left:0rem;right:0rem}.inset-y-0{top:0rem;bottom:0rem}.bottom-0{bottom:0rem}.left-0{left:0rem}.left-2{left:.75rem}.left-4{left:1.25rem}.left-\[50\%\]{left:50%}.right-0{right:0rem}.right-2{right:.75rem}.right-3{right:1rem}.right-4{right:1.25rem}.top-0{top:0rem}.top-2{top:.75rem}.top-3{top:1rem}.top-4{top:1.25rem}.top-9{top:4rem}.top-\[128px\]{top:128px}.top-\[50\%\]{top:50%}.z-10{z-index:10}.z-50{z-index:50}.z-\[9999\]{z-index:9999}.col-span-1{grid-column:span 1 / span 1}.col-span-2{grid-column:span 2 / span 2}.col-span-3{grid-column:span 3 / span 3}.col-span-4{grid-column:span 4 / span 4}.m-0{margin:0rem}.m-auto{margin:auto}.mx-auto{margin-left:auto;margin-right:auto}.my-1{margin-top:.5rem;margin-bottom:.5rem}.my-3{margin-top:1rem;margin-bottom:1rem}.my-9{margin-top:4rem;margin-bottom:4rem}.mb-0{margin-bottom:0rem}.mb-0\.5{margin-bottom:.25rem}.mb-1{margin-bottom:.5rem}.mb-2{margin-bottom:.75rem}.mb-3{margin-bottom:1rem}.mb-4{margin-bottom:1.25rem}.mb-5{margin-bottom:1.5rem}.mb-7{margin-bottom:2.5rem}.ml-1{margin-left:.5rem}.ml-2{margin-left:.75rem}.ml-5{margin-left:1.5rem}.ml-auto{margin-left:auto}.mr-1{margin-right:.5rem}.mr-2{margin-right:.75rem}.mr-4{margin-right:1.25rem}.mt-0{margin-top:0rem}.mt-0\.5{margin-top:.25rem}.mt-2{margin-top:.75rem}.mt-3{margin-top:1rem}.mt-4{margin-top:1.25rem}.mt-5{margin-top:1.5rem}.mt-auto{margin-top:auto}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.contents{display:contents}.hidden{display:none}.aspect-square{aspect-ratio:1 / 1}.aspect-video{aspect-ratio:16 / 9}.h-0{height:0rem}.h-0\.5{height:.25rem}.h-1{height:.5rem}.h-12{height:6rem}.h-2{height:.75rem}.h-3{height:1rem}.h-4{height:1.25rem}.h-5{height:1.5rem}.h-6{height:2rem}.h-7{height:2.5rem}.h-8{height:3rem}.h-9{height:4rem}.h-\[100px\]{height:100px}.h-\[110px\]{height:110px}.h-\[120px\]{height:120px}.h-\[140px\]{height:140px}.h-\[150px\]{height:150px}.h-\[180px\]{height:180px}.h-\[1px\]{height:1px}.h-\[200\]{height:200}.h-\[200px\]{height:200px}.h-\[20px\]{height:20px}.h-\[250px\]{height:250px}.h-\[28px\]{height:28px}.h-\[300px\]{height:300px}.h-\[350px\]{height:350px}.h-\[36px\]{height:36px}.h-\[40px\]{height:40px}.h-\[44px\]{height:44px}.h-\[48px\]{height:48px}.h-\[500px\]{height:500px}.h-\[50px\]{height:50px}.h-\[56px\]{height:56px}.h-\[60px\]{height:60px}.h-\[70px\]{height:70px}.h-\[96px\]{height:96px}.h-\[calc\(100vh_-_270px\)\]{height:calc(100vh - 270px)}.h-\[calc\(100vh_-_4rem_-_4rem_-_2px\)\]{height:calc(100vh - 8rem - 2px)}.h-\[calc\(100vh_-_4rem_-_4rem_-_4rem_-_2px\)\]{height:calc(100vh - 12rem - 2px)}.h-\[calc\(100vh_-_64px\)\]{height:calc(100vh - 64px)}.h-\[calc\(100vh_-_64px_-_64px\)\]{height:calc(100vh - 128px)}.h-\[var\(--outer-circle\)\]{height:var(--outer-circle)}.h-\[var\(--radix-select-trigger-height\)\]{height:var(--radix-select-trigger-height)}.h-auto{height:auto}.h-full{height:100%}.max-h-\[300px\]{max-height:300px}.max-h-screen{max-height:100vh}.min-h-8{min-height:3rem}.min-h-\[160px\]{min-height:160px}.min-h-screen{min-height:100vh}.w-0{width:0rem}.w-1{width:.5rem}.w-1\/2{width:50%}.w-12{width:6rem}.w-2{width:.75rem}.w-3{width:1rem}.w-3\/4{width:75%}.w-4{width:1.25rem}.w-5{width:1.5rem}.w-6{width:2rem}.w-7{width:2.5rem}.w-8{width:3rem}.w-9{width:4rem}.w-\[1000px\]{width:1000px}.w-\[100px\]{width:100px}.w-\[110px\]{width:110px}.w-\[120px\]{width:120px}.w-\[125px\]{width:125px}.w-\[140px\]{width:140px}.w-\[150px\]{width:150px}.w-\[16rem\]{width:16rem}.w-\[180px\]{width:180px}.w-\[20px\]{width:20px}.w-\[220px\]{width:220px}.w-\[250px\]{width:250px}.w-\[28px\]{width:28px}.w-\[300px\]{width:300px}.w-\[36px\]{width:36px}.w-\[480px\]{width:480px}.w-\[60px\]{width:60px}.w-\[90px\]{width:90px}.w-\[96px\]{width:96px}.w-\[var\(--outer-circle\)\]{width:var(--outer-circle)}.w-auto{width:auto}.w-fit{width:-moz-fit-content;width:fit-content}.w-full{width:100%}.w-min{width:-moz-min-content;width:min-content}.min-w-0{min-width:0rem}.min-w-\[160px\]{min-width:160px}.min-w-\[500px\]{min-width:500px}.min-w-\[540px\]{min-width:540px}.min-w-\[8rem\]{min-width:8rem}.min-w-\[var\(--radix-select-trigger-width\)\]{min-width:var(--radix-select-trigger-width)}.\!max-w-none{max-width:none!important}.max-w-\[1000px\]{max-width:1000px}.max-w-\[300px\]{max-width:300px}.max-w-\[450px\]{max-width:450px}.max-w-\[540px\]{max-width:540px}.max-w-\[570px\]{max-width:570px}.max-w-\[600px\]{max-width:600px}.max-w-fit{max-width:-moz-fit-content;max-width:fit-content}.max-w-lg{max-width:32rem}.max-w-sm{max-width:24rem}.flex-1{flex:1 1 0%}.flex-shrink-0,.shrink-0{flex-shrink:0}.flex-grow,.grow{flex-grow:1}.translate-x-\[-50\%\]{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-x-\[45\%\]{--tw-translate-x: 45%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-\[-50\%\]{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-\[10\%\]{--tw-translate-y: 10%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-rotate-90{--tw-rotate: -90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-180{--tw-rotate: 180deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes pulse{50%{opacity:.5}}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.animate-spin{animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin-slow{animation:spin 2s linear infinite}.cursor-auto{cursor:auto}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.touch-none{touch-action:none}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize{resize:both}.list-inside{list-style-position:inside}.list-\[square\]{list-style-type:square}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-col-reverse{flex-direction:column-reverse}.flex-wrap{flex-wrap:wrap}.content-center{align-content:center}.items-start{align-items:flex-start}.items-center{align-items:center}.items-stretch{align-items:stretch}.justify-start{justify-content:flex-start}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0{gap:0rem}.gap-0\.5{gap:.25rem}.gap-1{gap:.5rem}.gap-2{gap:.75rem}.gap-3{gap:1rem}.gap-4{gap:1.25rem}.gap-5{gap:1.5rem}.gap-6{gap:2rem}.gap-7{gap:2.5rem}.gap-8{gap:3rem}.gap-\[10px\]{gap:10px}.gap-\[20px\]{gap:20px}.gap-x-2{-moz-column-gap:.75rem;column-gap:.75rem}.gap-x-\[10px\]{-moz-column-gap:10px;column-gap:10px}.gap-y-0{row-gap:0rem}.gap-y-0\.5{row-gap:.25rem}.gap-y-1{row-gap:.5rem}.gap-y-2{row-gap:.75rem}.gap-y-4{row-gap:1.25rem}.-space-x-\[7px\]>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(-7px * var(--tw-space-x-reverse));margin-left:calc(-7px * calc(1 - var(--tw-space-x-reverse)))}.space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.75rem * var(--tw-space-x-reverse));margin-left:calc(.75rem * calc(1 - var(--tw-space-x-reverse)))}.space-x-3>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(1rem * var(--tw-space-x-reverse));margin-left:calc(1rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(0rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0rem * var(--tw-space-y-reverse))}.space-y-0\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.25rem * var(--tw-space-y-reverse))}.space-y-5>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.space-y-7>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(2.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(2.5rem * var(--tw-space-y-reverse))}.divide-y>:not([hidden])~:not([hidden]){--tw-divide-y-reverse: 0;border-top-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-bottom-width:calc(1px * var(--tw-divide-y-reverse))}.divide-neutral-300>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:hsl(var(--color-neutral-300) / var(--tw-divide-opacity))}.divide-theme-border-moderate>:not([hidden])~:not([hidden]){--tw-divide-opacity: 1;border-color:hsl(var(--color-border-moderate) / var(--tw-divide-opacity))}.self-start{align-self:flex-start}.self-center{align-self:center}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.overflow-y-hidden{overflow-y:hidden}.overflow-x-clip{overflow-x:clip}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-ellipsis{text-overflow:ellipsis}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-line{white-space:pre-line}.whitespace-pre-wrap{white-space:pre-wrap}.rounded-\[4px\]{border-radius:4px}.rounded-\[inherit\]{border-radius:inherit}.rounded-md{border-radius:.5rem}.rounded-rounded{border-radius:9999px}.rounded-sharp{border-radius:0}.rounded-sm{border-radius:.25rem}.rounded-t-md{border-top-left-radius:.5rem;border-top-right-radius:.5rem}.border{border-width:1px}.border-0{border-width:0px}.border-2{border-width:2px}.border-4{border-width:4px}.border-\[2px\]{border-width:2px}.border-\[3px\]{border-width:3px}.border-\[7px\]{border-width:7px}.border-y{border-top-width:1px;border-bottom-width:1px}.border-b{border-bottom-width:1px}.border-l{border-left-width:1px}.border-r{border-right-width:1px}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-none{border-style:none}.\!border-theme-border-bold{--tw-border-opacity: 1 !important;border-color:hsl(var(--color-border-bold) / var(--tw-border-opacity))!important}.border-\[\#D0D5DD\]{--tw-border-opacity: 1;border-color:rgb(208 213 221 / var(--tw-border-opacity))}.border-blue-100{--tw-border-opacity: 1;border-color:hsl(var(--color-blue-100) / var(--tw-border-opacity))}.border-error-200{--tw-border-opacity: 1;border-color:hsl(var(--color-error-200) / var(--tw-border-opacity))}.border-error-300{--tw-border-opacity: 1;border-color:hsl(var(--color-error-300) / var(--tw-border-opacity))}.border-error-600{--tw-border-opacity: 1;border-color:hsl(var(--color-error-600) / var(--tw-border-opacity))}.border-lime-100{--tw-border-opacity: 1;border-color:hsl(var(--color-lime-100) / var(--tw-border-opacity))}.border-magenta-100{--tw-border-opacity: 1;border-color:hsl(var(--color-magenta-100) / var(--tw-border-opacity))}.border-neutral-300{--tw-border-opacity: 1;border-color:hsl(var(--color-neutral-300) / var(--tw-border-opacity))}.border-orange-100{--tw-border-opacity: 1;border-color:hsl(var(--color-orange-100) / var(--tw-border-opacity))}.border-primary-100{--tw-border-opacity: 1;border-color:hsl(var(--color-primary-100) / var(--tw-border-opacity))}.border-primary-400{--tw-border-opacity: 1;border-color:hsl(var(--color-primary-400) / var(--tw-border-opacity))}.border-red-500{--tw-border-opacity: 1;border-color:rgb(239 68 68 / var(--tw-border-opacity))}.border-success-200{--tw-border-opacity: 1;border-color:hsl(var(--color-success-200) / var(--tw-border-opacity))}.border-success-300{--tw-border-opacity: 1;border-color:hsl(var(--color-success-300) / var(--tw-border-opacity))}.border-teal-100{--tw-border-opacity: 1;border-color:hsl(var(--color-teal-100) / var(--tw-border-opacity))}.border-theme-border-bold{--tw-border-opacity: 1;border-color:hsl(var(--color-border-bold) / var(--tw-border-opacity))}.border-theme-border-minimal{--tw-border-opacity: 1;border-color:hsl(var(--color-border-minimal) / var(--tw-border-opacity))}.border-theme-border-moderate{--tw-border-opacity: 1;border-color:hsl(var(--color-border-moderate) / var(--tw-border-opacity))}.border-theme-text-negative{--tw-border-opacity: 1;border-color:hsl(var(--color-text-negative) / var(--tw-border-opacity))}.border-transparent{border-color:transparent}.border-turquoise-100{--tw-border-opacity: 1;border-color:hsl(var(--color-turquoise-100) / var(--tw-border-opacity))}.border-warning-200{--tw-border-opacity: 1;border-color:hsl(var(--color-warning-200) / var(--tw-border-opacity))}.border-warning-300{--tw-border-opacity: 1;border-color:hsl(var(--color-warning-300) / var(--tw-border-opacity))}.border-b-theme-surface-strong{--tw-border-opacity: 1;border-bottom-color:hsl(var(--color-surface-strong) / var(--tw-border-opacity))}.border-b-theme-text-brand{--tw-border-opacity: 1;border-bottom-color:hsl(var(--color-text-brand) / var(--tw-border-opacity))}.border-l-transparent{border-left-color:transparent}.border-t-transparent{border-top-color:transparent}.\!bg-primary-500{--tw-bg-opacity: 1 !important;background-color:hsl(var(--color-primary-500) / var(--tw-bg-opacity))!important}.bg-\[\#DEE2E6\]{--tw-bg-opacity: 1;background-color:rgb(222 226 230 / var(--tw-bg-opacity))}.bg-\[\#FFF6EA\]{--tw-bg-opacity: 1;background-color:rgb(255 246 234 / var(--tw-bg-opacity))}.bg-black{--tw-bg-opacity: 1;background-color:rgb(0 0 0 / var(--tw-bg-opacity))}.bg-black\/10{background-color:#0000001a}.bg-blue-25{--tw-bg-opacity: 1;background-color:hsl(var(--color-blue-025) / var(--tw-bg-opacity))}.bg-blue-50{--tw-bg-opacity: 1;background-color:hsl(var(--color-blue-050) / var(--tw-bg-opacity))}.bg-blue-500{--tw-bg-opacity: 1;background-color:hsl(var(--color-blue-500) / var(--tw-bg-opacity))}.bg-error-100{--tw-bg-opacity: 1;background-color:hsl(var(--color-error-100) / var(--tw-bg-opacity))}.bg-error-50{--tw-bg-opacity: 1;background-color:hsl(var(--color-error-050) / var(--tw-bg-opacity))}.bg-error-600{--tw-bg-opacity: 1;background-color:hsl(var(--color-error-600) / var(--tw-bg-opacity))}.bg-lime-100{--tw-bg-opacity: 1;background-color:hsl(var(--color-lime-100) / var(--tw-bg-opacity))}.bg-lime-25{--tw-bg-opacity: 1;background-color:hsl(var(--color-lime-025) / var(--tw-bg-opacity))}.bg-lime-700{--tw-bg-opacity: 1;background-color:hsl(var(--color-lime-700) / var(--tw-bg-opacity))}.bg-magenta-100{--tw-bg-opacity: 1;background-color:hsl(var(--color-magenta-100) / var(--tw-bg-opacity))}.bg-magenta-25{--tw-bg-opacity: 1;background-color:hsl(var(--color-magenta-025) / var(--tw-bg-opacity))}.bg-magenta-500{--tw-bg-opacity: 1;background-color:hsl(var(--color-magenta-500) / var(--tw-bg-opacity))}.bg-neutral-100{--tw-bg-opacity: 1;background-color:hsl(var(--color-neutral-100) / var(--tw-bg-opacity))}.bg-neutral-200{--tw-bg-opacity: 1;background-color:hsl(var(--color-neutral-200) / var(--tw-bg-opacity))}.bg-neutral-300{--tw-bg-opacity: 1;background-color:hsl(var(--color-neutral-300) / var(--tw-bg-opacity))}.bg-neutral-50{--tw-bg-opacity: 1;background-color:hsl(var(--color-neutral-050) / var(--tw-bg-opacity))}.bg-neutral-50\/50{background-color:hsl(var(--color-neutral-050) / .5)}.bg-neutral-600{--tw-bg-opacity: 1;background-color:hsl(var(--color-neutral-600) / var(--tw-bg-opacity))}.bg-neutral-900\/20{background-color:hsl(var(--color-neutral-900) / .2)}.bg-orange-100{--tw-bg-opacity: 1;background-color:hsl(var(--color-orange-100) / var(--tw-bg-opacity))}.bg-orange-25{--tw-bg-opacity: 1;background-color:hsl(var(--color-orange-025) / var(--tw-bg-opacity))}.bg-orange-400{--tw-bg-opacity: 1;background-color:hsl(var(--color-orange-400) / var(--tw-bg-opacity))}.bg-primary-100{--tw-bg-opacity: 1;background-color:hsl(var(--color-primary-100) / var(--tw-bg-opacity))}.bg-primary-25{--tw-bg-opacity: 1;background-color:hsl(var(--color-primary-025) / var(--tw-bg-opacity))}.bg-primary-300{--tw-bg-opacity: 1;background-color:hsl(var(--color-primary-300) / var(--tw-bg-opacity))}.bg-primary-400{--tw-bg-opacity: 1;background-color:hsl(var(--color-primary-400) / var(--tw-bg-opacity))}.bg-primary-50{--tw-bg-opacity: 1;background-color:hsl(var(--color-primary-050) / var(--tw-bg-opacity))}.bg-primary-500{--tw-bg-opacity: 1;background-color:hsl(var(--color-primary-500) / var(--tw-bg-opacity))}.bg-success-100{--tw-bg-opacity: 1;background-color:hsl(var(--color-success-100) / var(--tw-bg-opacity))}.bg-success-50{--tw-bg-opacity: 1;background-color:hsl(var(--color-success-050) / var(--tw-bg-opacity))}.bg-success-600{--tw-bg-opacity: 1;background-color:hsl(var(--color-success-600) / var(--tw-bg-opacity))}.bg-success-700{--tw-bg-opacity: 1;background-color:hsl(var(--color-success-700) / var(--tw-bg-opacity))}.bg-teal-100{--tw-bg-opacity: 1;background-color:hsl(var(--color-teal-100) / var(--tw-bg-opacity))}.bg-teal-25{--tw-bg-opacity: 1;background-color:hsl(var(--color-teal-025) / var(--tw-bg-opacity))}.bg-teal-600{--tw-bg-opacity: 1;background-color:hsl(var(--color-teal-600) / var(--tw-bg-opacity))}.bg-theme-border-moderate{--tw-bg-opacity: 1;background-color:hsl(var(--color-border-moderate) / var(--tw-bg-opacity))}.bg-theme-surface-primary{--tw-bg-opacity: 1;background-color:hsl(var(--color-surface-primary) / var(--tw-bg-opacity))}.bg-theme-surface-secondary{--tw-bg-opacity: 1;background-color:hsl(var(--color-surface-secondary) / var(--tw-bg-opacity))}.bg-theme-surface-strong{--tw-bg-opacity: 1;background-color:hsl(var(--color-surface-strong) / var(--tw-bg-opacity))}.bg-theme-surface-tertiary{--tw-bg-opacity: 1;background-color:hsl(var(--color-surface-tertiary) / var(--tw-bg-opacity))}.bg-theme-text-primary{--tw-bg-opacity: 1;background-color:hsl(var(--color-text-primary) / var(--tw-bg-opacity))}.bg-transparent{background-color:transparent}.bg-turquoise-100{--tw-bg-opacity: 1;background-color:hsl(var(--color-turquoise-100) / var(--tw-bg-opacity))}.bg-turquoise-25{--tw-bg-opacity: 1;background-color:hsl(var(--color-turquoise-025) / var(--tw-bg-opacity))}.bg-turquoise-500{--tw-bg-opacity: 1;background-color:hsl(var(--color-turquoise-500) / var(--tw-bg-opacity))}.bg-warning-200{--tw-bg-opacity: 1;background-color:hsl(var(--color-warning-200) / var(--tw-bg-opacity))}.bg-warning-400{--tw-bg-opacity: 1;background-color:hsl(var(--color-warning-400) / var(--tw-bg-opacity))}.bg-warning-50{--tw-bg-opacity: 1;background-color:hsl(var(--color-warning-050) / var(--tw-bg-opacity))}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}.bg-white\/40{background-color:#fff6}.bg-white\/70{background-color:#ffffffb3}.bg-\[conic-gradient\(hsl\(var\(--color-primary-400\)\)_var\(--value\)\,hsl\(var\(--color-primary-050\)\)_var\(--value\)\)\]{background-image:conic-gradient(hsl(var(--color-primary-400)) var(--value),hsl(var(--color-primary-050)) var(--value))}.bg-gradient-light{background-image:linear-gradient(to bottom,#f4f0ff,#fff)}.\!fill-neutral-400{fill:hsl(var(--color-neutral-400) / 1)!important}.fill-blue-400{fill:hsl(var(--color-blue-400) / 1)}.fill-current{fill:currentColor}.fill-error-500{fill:hsl(var(--color-error-500) / 1)}.fill-error-700{fill:hsl(var(--color-error-700) / 1)}.fill-error-800{fill:hsl(var(--color-error-800) / 1)}.fill-neutral-200{fill:hsl(var(--color-neutral-200) / 1)}.fill-neutral-300{fill:hsl(var(--color-neutral-300) / 1)}.fill-neutral-400{fill:hsl(var(--color-neutral-400) / 1)}.fill-neutral-500{fill:hsl(var(--color-neutral-500) / 1)}.fill-orange-700{fill:hsl(var(--color-orange-700) / 1)}.fill-primary-400{fill:hsl(var(--color-primary-400) / 1)}.fill-primary-600{fill:hsl(var(--color-primary-600) / 1)}.fill-primary-900{fill:hsl(var(--color-primary-900) / 1)}.fill-success-300{fill:hsl(var(--color-success-300) / 1)}.fill-success-500{fill:hsl(var(--color-success-500) / 1)}.fill-success-800{fill:hsl(var(--color-success-800) / 1)}.fill-teal-400{fill:hsl(var(--color-teal-400) / 1)}.fill-theme-surface-strong{fill:hsl(var(--color-surface-strong) / 1)}.fill-theme-text-brand{fill:hsl(var(--color-text-brand) / 1)}.fill-theme-text-negative{fill:hsl(var(--color-text-negative) / 1)}.fill-theme-text-primary{fill:hsl(var(--color-text-primary) / 1)}.fill-theme-text-secondary{fill:hsl(var(--color-text-secondary) / 1)}.fill-theme-text-success{fill:hsl(var(--color-text-success) / 1)}.fill-theme-text-tertiary{fill:hsl(var(--color-text-tertiary) / 1)}.fill-turquoise-400{fill:hsl(var(--color-turquoise-400) / 1)}.fill-warning-300{fill:hsl(var(--color-warning-300) / 1)}.fill-warning-500{fill:hsl(var(--color-warning-500) / 1)}.fill-warning-700{fill:hsl(var(--color-warning-700) / 1)}.fill-white{fill:#fff}.stroke-neutral-400{stroke:hsl(var(--color-neutral-400) / 1)}.stroke-primary-400{stroke:hsl(var(--color-primary-400) / 1)}.stroke-theme-text-tertiary{stroke:hsl(var(--color-text-tertiary) / 1)}.object-contain{-o-object-fit:contain;object-fit:contain}.p-0{padding:0rem}.p-0\.25{padding:.125rem}.p-0\.5{padding:.25rem}.p-1{padding:.5rem}.p-2{padding:.75rem}.p-3{padding:1rem}.p-4{padding:1.25rem}.p-5{padding:1.5rem}.p-6{padding:2rem}.p-7{padding:2.5rem}.p-9{padding:4rem}.p-\[1px\]{padding:1px}.px-0{padding-left:0rem;padding-right:0rem}.px-0\.5{padding-left:.25rem;padding-right:.25rem}.px-1{padding-left:.5rem;padding-right:.5rem}.px-2{padding-left:.75rem;padding-right:.75rem}.px-3{padding-left:1rem;padding-right:1rem}.px-4{padding-left:1.25rem;padding-right:1.25rem}.px-5{padding-left:1.5rem;padding-right:1.5rem}.px-6{padding-left:2rem;padding-right:2rem}.px-7{padding-left:2.5rem;padding-right:2.5rem}.py-0{padding-top:0rem;padding-bottom:0rem}.py-0\.25{padding-top:.125rem;padding-bottom:.125rem}.py-0\.5{padding-top:.25rem;padding-bottom:.25rem}.py-1{padding-top:.5rem;padding-bottom:.5rem}.py-12{padding-top:6rem;padding-bottom:6rem}.py-2{padding-top:.75rem;padding-bottom:.75rem}.py-3{padding-top:1rem;padding-bottom:1rem}.py-4{padding-top:1.25rem;padding-bottom:1.25rem}.py-5{padding-top:1.5rem;padding-bottom:1.5rem}.py-7{padding-top:2.5rem;padding-bottom:2.5rem}.py-9{padding-top:4rem;padding-bottom:4rem}.pb-5{padding-bottom:1.5rem}.pb-6{padding-bottom:2rem}.pl-1{padding-left:.5rem}.pl-2{padding-left:.75rem}.pl-3{padding-left:1rem}.pl-4{padding-left:1.25rem}.pl-5{padding-left:1.5rem}.pl-8{padding-left:3rem}.pl-9{padding-left:4rem}.pl-\[60px\]{padding-left:60px}.pr-2{padding-right:.75rem}.pr-3{padding-right:1rem}.pr-4{padding-right:1.25rem}.pr-5{padding-right:1.5rem}.pr-6{padding-right:2rem}.pr-8{padding-right:3rem}.pt-5{padding-top:1.5rem}.pt-7{padding-top:2.5rem}.text-left{text-align:left}.text-center{text-align:center}.align-middle{vertical-align:middle}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.font-sans{font-family:Inter,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji"}.text-display-lg{font-size:3rem;line-height:3.75rem;letter-spacing:-.06rem}.text-display-md{font-size:2.25rem;line-height:2.75rem;letter-spacing:-.045rem}.text-display-sm{font-size:1.875rem;line-height:2.375rem}.text-display-xl{font-size:3.75rem;line-height:4.5rem}.text-display-xs{font-size:1.5rem;line-height:2rem}.text-text-lg{font-size:1.125rem;line-height:1.75rem}.text-text-md{font-size:1rem;line-height:1.5rem}.text-text-sm{font-size:.875rem;line-height:1.25rem}.text-text-xl{font-size:1.25rem;line-height:1.875rem}.text-text-xs{font-size:.75rem;line-height:1.125rem}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.capitalize{text-transform:capitalize}.tracking-widest{letter-spacing:.1em}.text-blue-600{--tw-text-opacity: 1;color:hsl(var(--color-blue-600) / var(--tw-text-opacity))}.text-blue-700{--tw-text-opacity: 1;color:hsl(var(--color-blue-700) / var(--tw-text-opacity))}.text-current{color:currentColor}.text-error-700{--tw-text-opacity: 1;color:hsl(var(--color-error-700) / var(--tw-text-opacity))}.text-error-800{--tw-text-opacity: 1;color:hsl(var(--color-error-800) / var(--tw-text-opacity))}.text-error-900{--tw-text-opacity: 1;color:hsl(var(--color-error-900) / var(--tw-text-opacity))}.text-lime-700{--tw-text-opacity: 1;color:hsl(var(--color-lime-700) / var(--tw-text-opacity))}.text-lime-800{--tw-text-opacity: 1;color:hsl(var(--color-lime-800) / var(--tw-text-opacity))}.text-magenta-600{--tw-text-opacity: 1;color:hsl(var(--color-magenta-600) / var(--tw-text-opacity))}.text-magenta-700{--tw-text-opacity: 1;color:hsl(var(--color-magenta-700) / var(--tw-text-opacity))}.text-neutral-400{--tw-text-opacity: 1;color:hsl(var(--color-neutral-400) / var(--tw-text-opacity))}.text-neutral-500{--tw-text-opacity: 1;color:hsl(var(--color-neutral-500) / var(--tw-text-opacity))}.text-neutral-700{--tw-text-opacity: 1;color:hsl(var(--color-neutral-700) / var(--tw-text-opacity))}.text-neutral-900{--tw-text-opacity: 1;color:hsl(var(--color-neutral-900) / var(--tw-text-opacity))}.text-orange-600{--tw-text-opacity: 1;color:hsl(var(--color-orange-600) / var(--tw-text-opacity))}.text-orange-700{--tw-text-opacity: 1;color:hsl(var(--color-orange-700) / var(--tw-text-opacity))}.text-primary-400{--tw-text-opacity: 1;color:hsl(var(--color-primary-400) / var(--tw-text-opacity))}.text-primary-500{--tw-text-opacity: 1;color:hsl(var(--color-primary-500) / var(--tw-text-opacity))}.text-primary-600{--tw-text-opacity: 1;color:hsl(var(--color-primary-600) / var(--tw-text-opacity))}.text-primary-900{--tw-text-opacity: 1;color:hsl(var(--color-primary-900) / var(--tw-text-opacity))}.text-red-500{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity))}.text-success-800{--tw-text-opacity: 1;color:hsl(var(--color-success-800) / var(--tw-text-opacity))}.text-success-900{--tw-text-opacity: 1;color:hsl(var(--color-success-900) / var(--tw-text-opacity))}.text-teal-600{--tw-text-opacity: 1;color:hsl(var(--color-teal-600) / var(--tw-text-opacity))}.text-teal-700{--tw-text-opacity: 1;color:hsl(var(--color-teal-700) / var(--tw-text-opacity))}.text-theme-surface-primary{--tw-text-opacity: 1;color:hsl(var(--color-surface-primary) / var(--tw-text-opacity))}.text-theme-text-brand{--tw-text-opacity: 1;color:hsl(var(--color-text-brand) / var(--tw-text-opacity))}.text-theme-text-error{--tw-text-opacity: 1;color:hsl(var(--color-text-error) / var(--tw-text-opacity))}.text-theme-text-negative{--tw-text-opacity: 1;color:hsl(var(--color-text-negative) / var(--tw-text-opacity))}.text-theme-text-primary{--tw-text-opacity: 1;color:hsl(var(--color-text-primary) / var(--tw-text-opacity))}.text-theme-text-secondary{--tw-text-opacity: 1;color:hsl(var(--color-text-secondary) / var(--tw-text-opacity))}.text-theme-text-success{--tw-text-opacity: 1;color:hsl(var(--color-text-success) / var(--tw-text-opacity))}.text-theme-text-tertiary{--tw-text-opacity: 1;color:hsl(var(--color-text-tertiary) / var(--tw-text-opacity))}.text-turquoise-600{--tw-text-opacity: 1;color:hsl(var(--color-turquoise-600) / var(--tw-text-opacity))}.text-turquoise-700{--tw-text-opacity: 1;color:hsl(var(--color-turquoise-700) / var(--tw-text-opacity))}.text-warning-900{--tw-text-opacity: 1;color:hsl(var(--color-warning-900) / var(--tw-text-opacity))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.underline{text-decoration-line:underline}.line-through{text-decoration-line:line-through}.decoration-theme-text-tertiary{text-decoration-color:hsl(var(--color-text-tertiary) / 1)}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.opacity-0{opacity:0}.opacity-20{opacity:.2}.opacity-60{opacity:.6}.opacity-90{opacity:.9}.mix-blend-multiply{mix-blend-mode:multiply}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0px 0px 4px 0px rgba(0, 0, 0, .1);--tw-shadow-colored: 0px 0px 4px 0px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.ring-0{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(0px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-shadow{transition-property:box-shadow;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-100{transition-duration:.1s}.duration-150{transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}@keyframes enter{0%{opacity:var(--tw-enter-opacity, 1);transform:translate3d(var(--tw-enter-translate-x, 0),var(--tw-enter-translate-y, 0),0) scale3d(var(--tw-enter-scale, 1),var(--tw-enter-scale, 1),var(--tw-enter-scale, 1)) rotate(var(--tw-enter-rotate, 0))}}@keyframes exit{to{opacity:var(--tw-exit-opacity, 1);transform:translate3d(var(--tw-exit-translate-x, 0),var(--tw-exit-translate-y, 0),0) scale3d(var(--tw-exit-scale, 1),var(--tw-exit-scale, 1),var(--tw-exit-scale, 1)) rotate(var(--tw-exit-rotate, 0))}}.animate-in{animation-name:enter;animation-duration:.15s;--tw-enter-opacity: initial;--tw-enter-scale: initial;--tw-enter-rotate: initial;--tw-enter-translate-x: initial;--tw-enter-translate-y: initial}.fade-in-0{--tw-enter-opacity: 0}.fade-out-0{--tw-exit-opacity: 0}.zoom-in-95{--tw-enter-scale: .95}.duration-100{animation-duration:.1s}.duration-150{animation-duration:.15s}.duration-200{animation-duration:.2s}.duration-300{animation-duration:.3s}.duration-500{animation-duration:.5s}.ease-in-out{animation-timing-function:cubic-bezier(.4,0,.2,1)}.running{animation-play-state:running}.paused{animation-play-state:paused}.layout-container{margin-left:auto;margin-right:auto;width:91.666667%;max-width:1440px}.link{text-decoration-line:underline;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s;animation-duration:.15s}.link:hover{text-decoration-color:transparent}.marker\:text-primary-200 *::marker{color:hsl(var(--color-primary-200))}.marker\:text-primary-200::marker{color:hsl(var(--color-primary-200))}.placeholder\:text-theme-text-secondary::-moz-placeholder{--tw-text-opacity: 1;color:hsl(var(--color-text-secondary) / var(--tw-text-opacity))}.placeholder\:text-theme-text-secondary::placeholder{--tw-text-opacity: 1;color:hsl(var(--color-text-secondary) / var(--tw-text-opacity))}.after\:h-\[var\(--inner-circle\)\]:after{content:var(--tw-content);height:var(--inner-circle)}.after\:w-\[var\(--inner-circle\)\]:after{content:var(--tw-content);width:var(--inner-circle)}.after\:rounded-rounded:after{content:var(--tw-content);border-radius:9999px}.after\:bg-theme-surface-primary:after{content:var(--tw-content);--tw-bg-opacity: 1;background-color:hsl(var(--color-surface-primary) / var(--tw-bg-opacity))}.after\:content-\[\'\'\]:after{--tw-content: "";content:var(--tw-content)}.first\:pt-0:first-child{padding-top:0rem}.last\:pb-0:last-child{padding-bottom:0rem}.hover\:w-\[220px\]:hover{width:220px}.hover\:cursor-pointer:hover{cursor:pointer}.hover\:border-neutral-400:hover{--tw-border-opacity: 1;border-color:hsl(var(--color-neutral-400) / var(--tw-border-opacity))}.hover\:border-primary-400:hover{--tw-border-opacity: 1;border-color:hsl(var(--color-primary-400) / var(--tw-border-opacity))}.hover\:bg-error-50:hover{--tw-bg-opacity: 1;background-color:hsl(var(--color-error-050) / var(--tw-bg-opacity))}.hover\:bg-error-500:hover{--tw-bg-opacity: 1;background-color:hsl(var(--color-error-500) / var(--tw-bg-opacity))}.hover\:bg-neutral-100:hover{--tw-bg-opacity: 1;background-color:hsl(var(--color-neutral-100) / var(--tw-bg-opacity))}.hover\:bg-neutral-200:hover{--tw-bg-opacity: 1;background-color:hsl(var(--color-neutral-200) / var(--tw-bg-opacity))}.hover\:bg-neutral-300:hover{--tw-bg-opacity: 1;background-color:hsl(var(--color-neutral-300) / var(--tw-bg-opacity))}.hover\:bg-primary-400:hover{--tw-bg-opacity: 1;background-color:hsl(var(--color-primary-400) / var(--tw-bg-opacity))}.hover\:bg-primary-50:hover{--tw-bg-opacity: 1;background-color:hsl(var(--color-primary-050) / var(--tw-bg-opacity))}.hover\:bg-theme-surface-primary:hover{--tw-bg-opacity: 1;background-color:hsl(var(--color-surface-primary) / var(--tw-bg-opacity))}.hover\:text-purple-900:hover{--tw-text-opacity: 1;color:rgb(88 28 135 / var(--tw-text-opacity))}.hover\:text-theme-text-brand:hover{--tw-text-opacity: 1;color:hsl(var(--color-text-brand) / var(--tw-text-opacity))}.hover\:underline:hover{text-decoration-line:underline}.hover\:decoration-transparent:hover{text-decoration-color:transparent}.hover\:shadow-md:hover{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:shadow-sm:hover{--tw-shadow: 0px 0px 4px 0px rgba(0, 0, 0, .1);--tw-shadow-colored: 0px 0px 4px 0px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:ring-4:hover{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.hover\:ring-theme-surface-tertiary:hover{--tw-ring-opacity: 1;--tw-ring-color: hsl(var(--color-surface-tertiary) / var(--tw-ring-opacity))}.focus\:border-neutral-500:focus{--tw-border-opacity: 1;border-color:hsl(var(--color-neutral-500) / var(--tw-border-opacity))}.focus\:bg-theme-surface-tertiary:focus{--tw-bg-opacity: 1;background-color:hsl(var(--color-surface-tertiary) / var(--tw-bg-opacity))}.focus\:shadow-sm:focus{--tw-shadow: 0px 0px 4px 0px rgba(0, 0, 0, .1);--tw-shadow-colored: 0px 0px 4px 0px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-1:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-4:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-primary-500:focus{--tw-ring-opacity: 1;--tw-ring-color: hsl(var(--color-primary-500) / var(--tw-ring-opacity))}.focus\:ring-theme-surface-strong:focus{--tw-ring-opacity: 1;--tw-ring-color: hsl(var(--color-surface-strong) / var(--tw-ring-opacity))}.focus\:ring-theme-surface-tertiary:focus{--tw-ring-opacity: 1;--tw-ring-color: hsl(var(--color-surface-tertiary) / var(--tw-ring-opacity))}.focus\:ring-offset-2:focus{--tw-ring-offset-width: 2px}.focus-visible\:outline-none:focus-visible{outline:2px solid transparent;outline-offset:2px}.focus-visible\:ring-2:focus-visible{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus-visible\:ring-offset-2:focus-visible{--tw-ring-offset-width: 2px}.active\:border-neutral-400:active{--tw-border-opacity: 1;border-color:hsl(var(--color-neutral-400) / var(--tw-border-opacity))}.active\:bg-error-100:active{--tw-bg-opacity: 1;background-color:hsl(var(--color-error-100) / var(--tw-bg-opacity))}.active\:bg-error-600:active{--tw-bg-opacity: 1;background-color:hsl(var(--color-error-600) / var(--tw-bg-opacity))}.active\:bg-neutral-300:active{--tw-bg-opacity: 1;background-color:hsl(var(--color-neutral-300) / var(--tw-bg-opacity))}.active\:bg-neutral-400:active{--tw-bg-opacity: 1;background-color:hsl(var(--color-neutral-400) / var(--tw-bg-opacity))}.active\:bg-primary-100:active{--tw-bg-opacity: 1;background-color:hsl(var(--color-primary-100) / var(--tw-bg-opacity))}.active\:bg-primary-500:active{--tw-bg-opacity: 1;background-color:hsl(var(--color-primary-500) / var(--tw-bg-opacity))}.active\:bg-theme-surface-tertiary:active{--tw-bg-opacity: 1;background-color:hsl(var(--color-surface-tertiary) / var(--tw-bg-opacity))}.active\:ring-4:active{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(4px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.active\:ring-\[\#E4D8FD\]:active{--tw-ring-opacity: 1;--tw-ring-color: rgb(228 216 253 / var(--tw-ring-opacity))}.active\:ring-\[\#E5E7EB\]:active{--tw-ring-opacity: 1;--tw-ring-color: rgb(229 231 235 / var(--tw-ring-opacity))}.active\:ring-error-50:active{--tw-ring-opacity: 1;--tw-ring-color: hsl(var(--color-error-050) / var(--tw-ring-opacity))}.active\:ring-neutral-100:active{--tw-ring-opacity: 1;--tw-ring-color: hsl(var(--color-neutral-100) / var(--tw-ring-opacity))}.disabled\:pointer-events-none:disabled{pointer-events:none}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:border-error-100:disabled{--tw-border-opacity: 1;border-color:hsl(var(--color-error-100) / var(--tw-border-opacity))}.disabled\:border-neutral-300:disabled{--tw-border-opacity: 1;border-color:hsl(var(--color-neutral-300) / var(--tw-border-opacity))}.disabled\:border-primary-100:disabled{--tw-border-opacity: 1;border-color:hsl(var(--color-primary-100) / var(--tw-border-opacity))}.disabled\:bg-error-100:disabled{--tw-bg-opacity: 1;background-color:hsl(var(--color-error-100) / var(--tw-bg-opacity))}.disabled\:bg-neutral-100:disabled{--tw-bg-opacity: 1;background-color:hsl(var(--color-neutral-100) / var(--tw-bg-opacity))}.disabled\:bg-primary-50:disabled{--tw-bg-opacity: 1;background-color:hsl(var(--color-primary-050) / var(--tw-bg-opacity))}.disabled\:bg-theme-surface-primary:disabled{--tw-bg-opacity: 1;background-color:hsl(var(--color-surface-primary) / var(--tw-bg-opacity))}.disabled\:text-error-100:disabled{--tw-text-opacity: 1;color:hsl(var(--color-error-100) / var(--tw-text-opacity))}.disabled\:text-neutral-300:disabled{--tw-text-opacity: 1;color:hsl(var(--color-neutral-300) / var(--tw-text-opacity))}.disabled\:text-neutral-400:disabled{--tw-text-opacity: 1;color:hsl(var(--color-neutral-400) / var(--tw-text-opacity))}.disabled\:text-primary-100:disabled{--tw-text-opacity: 1;color:hsl(var(--color-primary-100) / var(--tw-text-opacity))}.disabled\:opacity-50:disabled{opacity:.5}.group\/copybutton:hover .group-hover\/copybutton\:visible{visibility:visible}.group:hover .group-hover\:mb-2{margin-bottom:.75rem}.group:hover .group-hover\:block{display:block}.group:hover .group-hover\:h-5{height:1.5rem}.group\/copybutton:hover .group-hover\/copybutton\:opacity-100,.group:hover .group-hover\:opacity-100{opacity:1}.group\/button:disabled .group-disabled\/button\:fill-neutral-300{fill:hsl(var(--color-neutral-300) / 1)}.group.white-close .group-\[\.white-close\]\:fill-white{fill:#fff}.group.white-close .group-\[\.white-close\]\:text-theme-text-negative{--tw-text-opacity: 1;color:hsl(var(--color-text-negative) / var(--tw-text-opacity))}.peer:checked~.peer-checked\:border-primary-100{--tw-border-opacity: 1;border-color:hsl(var(--color-primary-100) / var(--tw-border-opacity))}.peer:checked~.peer-checked\:bg-primary-25{--tw-bg-opacity: 1;background-color:hsl(var(--color-primary-025) / var(--tw-bg-opacity))}.peer:focus-visible~.peer-focus-visible\:border-primary-100{--tw-border-opacity: 1;border-color:hsl(var(--color-primary-100) / var(--tw-border-opacity))}.peer:disabled~.peer-disabled\:cursor-default{cursor:default}.peer:disabled~.peer-disabled\:bg-neutral-50{--tw-bg-opacity: 1;background-color:hsl(var(--color-neutral-050) / var(--tw-bg-opacity))}.data-\[disabled\]\:pointer-events-none[data-disabled]{pointer-events:none}.data-\[side\=bottom\]\:translate-y-1[data-side=bottom]{--tw-translate-y: .5rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[side\=right\]\:translate-x-1[data-side=right]{--tw-translate-x: .5rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[state\=checked\]\:translate-x-3[data-state=checked]{--tw-translate-x: 1rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[state\=unchecked\]\:translate-x-0[data-state=unchecked],.data-\[swipe\=cancel\]\:translate-x-0[data-swipe=cancel]{--tw-translate-x: 0rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[swipe\=end\]\:translate-x-\[var\(--radix-toast-swipe-end-x\)\][data-swipe=end]{--tw-translate-x: var(--radix-toast-swipe-end-x);transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[swipe\=move\]\:translate-x-\[var\(--radix-toast-swipe-move-x\)\][data-swipe=move]{--tw-translate-x: var(--radix-toast-swipe-move-x);transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.data-\[selected\=true\]\:border-primary-500[data-selected=true]{--tw-border-opacity: 1;border-color:hsl(var(--color-primary-500) / var(--tw-border-opacity))}.data-\[selected\=true\]\:border-theme-border-bold[data-selected=true]{--tw-border-opacity: 1;border-color:hsl(var(--color-border-bold) / var(--tw-border-opacity))}.data-\[state\=checked\]\:border-theme-surface-strong[data-state=checked],.data-\[state\=selected\]\:border-theme-surface-strong[data-state=selected]{--tw-border-opacity: 1;border-color:hsl(var(--color-surface-strong) / var(--tw-border-opacity))}.data-\[selected\=true\]\:bg-primary-500[data-selected=true]{--tw-bg-opacity: 1;background-color:hsl(var(--color-primary-500) / var(--tw-bg-opacity))}.data-\[state\=checked\]\:bg-primary-400[data-state=checked]{--tw-bg-opacity: 1;background-color:hsl(var(--color-primary-400) / var(--tw-bg-opacity))}.data-\[state\=checked\]\:bg-primary-50[data-state=checked]{--tw-bg-opacity: 1;background-color:hsl(var(--color-primary-050) / var(--tw-bg-opacity))}.data-\[state\=checked\]\:bg-theme-surface-strong[data-state=checked]{--tw-bg-opacity: 1;background-color:hsl(var(--color-surface-strong) / var(--tw-bg-opacity))}.data-\[state\=checked\]\:data-\[half\=true\]\:bg-primary-50[data-half=true][data-state=checked]{--tw-bg-opacity: 1;background-color:hsl(var(--color-primary-050) / var(--tw-bg-opacity))}.data-\[state\=unchecked\]\:bg-neutral-100[data-state=unchecked]{--tw-bg-opacity: 1;background-color:hsl(var(--color-neutral-100) / var(--tw-bg-opacity))}.data-\[state\=active\]\:text-theme-text-brand[data-state=active]{--tw-text-opacity: 1;color:hsl(var(--color-text-brand) / var(--tw-text-opacity))}.data-\[disabled\]\:opacity-50[data-disabled]{opacity:.5}.data-\[selected\=true\]\:shadow-md[data-selected=true]{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.data-\[state\=active\]\:shadow-inner[data-state=active]{--tw-shadow: inset 0 -2px 0 0,0 2px 0 0;--tw-shadow-colored: inset 0 -2px 0 0 var(--tw-shadow-color), 0 2px 0 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.data-\[state\=active\]\:shadow-primary-400[data-state=active]{--tw-shadow-color: hsl(var(--color-primary-400) / 1);--tw-shadow: var(--tw-shadow-colored)}.data-\[swipe\=move\]\:transition-none[data-swipe=move]{transition-property:none}.data-\[state\=closed\]\:duration-300[data-state=closed]{transition-duration:.3s}.data-\[state\=open\]\:duration-500[data-state=open]{transition-duration:.5s}.data-\[state\=open\]\:animate-in[data-state=open]{animation-name:enter;animation-duration:.15s;--tw-enter-opacity: initial;--tw-enter-scale: initial;--tw-enter-rotate: initial;--tw-enter-translate-x: initial;--tw-enter-translate-y: initial}.data-\[state\=closed\]\:animate-out[data-state=closed],.data-\[swipe\=end\]\:animate-out[data-swipe=end]{animation-name:exit;animation-duration:.15s;--tw-exit-opacity: initial;--tw-exit-scale: initial;--tw-exit-rotate: initial;--tw-exit-translate-x: initial;--tw-exit-translate-y: initial}.data-\[state\=closed\]\:fade-out-0[data-state=closed]{--tw-exit-opacity: 0}.data-\[state\=closed\]\:fade-out-80[data-state=closed]{--tw-exit-opacity: .8}.data-\[state\=open\]\:fade-in-0[data-state=open]{--tw-enter-opacity: 0}.data-\[state\=closed\]\:zoom-out-95[data-state=closed]{--tw-exit-scale: .95}.data-\[state\=open\]\:zoom-in-95[data-state=open]{--tw-enter-scale: .95}.data-\[side\=bottom\]\:slide-in-from-top-2[data-side=bottom]{--tw-enter-translate-y: -.75rem}.data-\[side\=left\]\:slide-in-from-right-2[data-side=left]{--tw-enter-translate-x: .75rem}.data-\[side\=right\]\:slide-in-from-left-2[data-side=right]{--tw-enter-translate-x: -.75rem}.data-\[side\=top\]\:slide-in-from-bottom-2[data-side=top]{--tw-enter-translate-y: .75rem}.data-\[state\=closed\]\:slide-out-to-bottom[data-state=closed]{--tw-exit-translate-y: 100%}.data-\[state\=closed\]\:slide-out-to-left[data-state=closed]{--tw-exit-translate-x: -100%}.data-\[state\=closed\]\:slide-out-to-left-1\/2[data-state=closed]{--tw-exit-translate-x: -50%}.data-\[state\=closed\]\:slide-out-to-right[data-state=closed],.data-\[state\=closed\]\:slide-out-to-right-full[data-state=closed]{--tw-exit-translate-x: 100%}.data-\[state\=closed\]\:slide-out-to-top[data-state=closed]{--tw-exit-translate-y: -100%}.data-\[state\=closed\]\:slide-out-to-top-\[48\%\][data-state=closed]{--tw-exit-translate-y: -48%}.data-\[state\=open\]\:slide-in-from-bottom[data-state=open]{--tw-enter-translate-y: 100%}.data-\[state\=open\]\:slide-in-from-left[data-state=open]{--tw-enter-translate-x: -100%}.data-\[state\=open\]\:slide-in-from-left-1\/2[data-state=open]{--tw-enter-translate-x: -50%}.data-\[state\=open\]\:slide-in-from-right[data-state=open]{--tw-enter-translate-x: 100%}.data-\[state\=open\]\:slide-in-from-top[data-state=open]{--tw-enter-translate-y: -100%}.data-\[state\=open\]\:slide-in-from-top-\[48\%\][data-state=open]{--tw-enter-translate-y: -48%}.data-\[state\=open\]\:slide-in-from-top-full[data-state=open]{--tw-enter-translate-y: -100%}.data-\[state\=closed\]\:duration-300[data-state=closed]{animation-duration:.3s}.data-\[state\=open\]\:duration-500[data-state=open]{animation-duration:.5s}.hover\:data-\[state\=inactive\]\:shadow-inner[data-state=inactive]:hover{--tw-shadow: inset 0 -2px 0 0,0 2px 0 0;--tw-shadow-colored: inset 0 -2px 0 0 var(--tw-shadow-color), 0 2px 0 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.hover\:data-\[state\=inactive\]\:shadow-neutral-200[data-state=inactive]:hover{--tw-shadow-color: hsl(var(--color-neutral-200) / 1);--tw-shadow: var(--tw-shadow-colored)}.data-\[state\=checked\]\:active\:border-primary-200:active[data-state=checked]{--tw-border-opacity: 1;border-color:hsl(var(--color-primary-200) / var(--tw-border-opacity))}.data-\[state\=checked\]\:active\:bg-primary-200:active[data-state=checked]{--tw-bg-opacity: 1;background-color:hsl(var(--color-primary-200) / var(--tw-bg-opacity))}.disabled\:data-\[state\=checked\]\:border-neutral-300[data-state=checked]:disabled{--tw-border-opacity: 1;border-color:hsl(var(--color-neutral-300) / var(--tw-border-opacity))}.data-\[state\=checked\]\:disabled\:bg-primary-400\/30:disabled[data-state=checked]{background-color:hsl(var(--color-primary-400) / .3)}.disabled\:data-\[state\=checked\]\:bg-neutral-300[data-state=checked]:disabled{--tw-bg-opacity: 1;background-color:hsl(var(--color-neutral-300) / var(--tw-bg-opacity))}.disabled\:data-\[state\=checked\]\:data-\[half\=true\]\:bg-primary-50\/30[data-half=true][data-state=checked]:disabled{background-color:hsl(var(--color-primary-050) / .3)}.disabled\:data-\[state\=unchecked\]\:bg-neutral-100\/30[data-state=unchecked]:disabled{background-color:hsl(var(--color-neutral-100) / .3)}.group[data-selected=true] .group-data-\[selected\=true\]\:bg-white\/20{background-color:#fff3}.group[data-selected=true] .group-data-\[selected\=true\]\:fill-theme-text-negative{fill:hsl(var(--color-text-negative) / 1)}.group\/trigger[data-state=active] .group-data-\[state\=active\]\/trigger\:fill-theme-surface-strong{fill:hsl(var(--color-surface-strong) / 1)}.group[data-selected=true] .group-data-\[selected\=true\]\:text-theme-text-negative{--tw-text-opacity: 1;color:hsl(var(--color-text-negative) / var(--tw-text-opacity))}.group[data-selected=true] .group-data-\[selected\=true\]\:text-white\/70{color:#ffffffb3}@media (min-width: 640px){.sm\:right-0{right:0rem}.sm\:top-7{top:2.5rem}.sm\:h-7{height:2.5rem}.sm\:flex-row{flex-direction:row}.sm\:flex-col{flex-direction:column}.sm\:justify-end{justify-content:flex-end}.sm\:space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.75rem * var(--tw-space-x-reverse));margin-left:calc(.75rem * calc(1 - var(--tw-space-x-reverse)))}.sm\:text-left{text-align:left}.data-\[state\=open\]\:sm\:slide-in-from-bottom-full[data-state=open]{--tw-enter-translate-y: 100%}}@media (min-width: 768px){.md\:w-1\/3{width:33.333333%}.md\:w-2\/3{width:66.666667%}.md\:w-full{width:100%}.md\:max-w-\[480px\]{max-width:480px}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:gap-y-4{row-gap:1.25rem}}@media (min-width: 1024px){.lg\:col-span-1{grid-column:span 1 / span 1}.lg\:col-span-2{grid-column:span 2 / span 2}.lg\:col-span-3{grid-column:span 3 / span 3}.lg\:block{display:block}.lg\:w-1\/3{width:33.333333%}.lg\:w-2\/3{width:66.666667%}.lg\:w-\[200px\]{width:200px}.lg\:w-full{width:100%}.lg\:min-w-\[600px\]{min-width:600px}.lg\:max-w-\[1000px\]{max-width:1000px}.lg\:flex-row{flex-direction:row}.lg\:flex-col{flex-direction:column}.lg\:items-start{align-items:flex-start}.lg\:px-0{padding-left:0rem;padding-right:0rem}.lg\:px-10{padding-left:4.5rem;padding-right:4.5rem}}@media (min-width: 1280px){.xl\:min-w-\[700px\]{min-width:700px}.xl\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.xl\:flex-row{flex-direction:row}}.\[\&\:has\(\[role\=checkbox\]\)\]\:pr-0:has([role=checkbox]){padding-right:0rem}.\[\&\>\[role\=checkbox\]\]\:translate-y-\[2px\]>[role=checkbox]{--tw-translate-y: 2px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.\[\&\>div\]\:w-full>div{width:100%}.\[\&_tr\:last-child\]\:border-0 tr:last-child{border-width:0px}.\[\&_tr\]\:border-b tr{border-bottom-width:1px}
@@ -1 +0,0 @@
1
- import{j as a,r as f}from"./@radix-CFOkMR_E.js";import{P as j,m as g,z as o,k as y,l as b,j as P,n as N,F as v,r as i,T as u,h as S,D as k,S as p,o as R}from"./index-KsTz2dHG.js";import{c as T,L as c,g as h}from"./@react-router-CO-OsFwI.js";import{C as x,R as E}from"./CopyButton-B3sWVJ4Z.js";import{a as C}from"./@tanstack-k96lU_C-.js";import{o as F}from"./url-rGEp5Umh.js";import{S as _,P as w}from"./SearchField-CXoBknpt.js";import{S as D}from"./terminal-By9cErXc.js";import{D as A}from"./DisplayDate-DYgIjlDF.js";import{g as I,E as B}from"./ExecutionStatus-9zM7eaLh.js";import{I as q}from"./InlineAvatar-BvBtO2Dp.js";import"./@reactflow-DIYUhKYX.js";import"./copy-BXNk6BjL.js";import"./dots-horizontal-BObFzD5l.js";import"./chevron-right-double-CZBOf6JM.js";import"./check-circle-i56092KI.js";function L({namespace:e}){return a.jsx(j,{children:a.jsxs("div",{className:"flex items-center gap-1",children:[a.jsx(g,{className:"h-5 w-5 fill-neutral-400"}),a.jsx("h1",{className:"text-display-xs font-semibold",children:decodeURIComponent(e)})]})})}const l=1,U=o.object({page:o.coerce.number().min(l).optional().default(l).catch(l),name:o.string().optional(),operator:o.enum(["and","or"]).optional()});function z(){const[e]=T(),{page:s,name:t,operator:r}=U.parse({page:e.get("page")||void 0,name:e.get("name")||void 0});return{page:s,name:t,logical_operator:r}}function G({params:e}){return["runs",e]}async function H({params:e}){const s=y(b.runs.all+"?"+F(e)),t=await P(s,{method:"GET",headers:{"Content-Type":"application/json"}});if(t.status===404&&N(),!t.ok)throw new v({message:"Error while fetching pipeline runs",status:t.status,statusText:t.statusText});return t.json()}function K(e,s){return C({queryKey:G(e),queryFn:()=>H(e),...s})}function Q(){return[{id:"run",header:"Run",accessorFn:e=>{var s;return{name:e.name,id:e.id,status:(s=e.body)==null?void 0:s.status}},cell:({getValue:e})=>{const{name:s,status:t,id:r}=e();return a.jsxs("div",{className:"group/copybutton flex items-center gap-2",children:[a.jsx(D,{className:`h-5 w-5 shrink-0 ${I(t)}`}),a.jsxs("div",{children:[a.jsxs(c,{to:i.runs.detail(r),className:"flex items-center gap-1",children:[a.jsx("h2",{className:"text-text-md font-semibold",children:s}),a.jsx(B,{status:t}),a.jsx(x,{copyText:s})]}),a.jsxs(c,{to:i.runs.detail(r),className:"flex items-center gap-1",children:[a.jsx("p",{className:"text-text-xs text-theme-text-secondary",children:r.split("-")[0]}),a.jsx(x,{copyText:r})]})]})]})}},{id:"stack",header:"Stack",accessorFn:e=>{var s,t,r,n;return{name:(t=(s=e.body)==null?void 0:s.stack)==null?void 0:t.name,id:(n=(r=e.body)==null?void 0:r.stack)==null?void 0:n.id}},cell:({getValue:e})=>{const{name:s,id:t}=e();return!s||!t?null:a.jsx(c,{to:i.stacks.overview,children:a.jsx(u,{rounded:!1,className:"inline-block",color:"turquoise",emphasis:"subtle",children:s})})}},{id:"repository",header:"Repository",accessorFn:e=>{var s,t,r,n,m,d;return{name:(r=(t=(s=e.body)==null?void 0:s.code_reference)==null?void 0:t.body)==null?void 0:r.code_repository.name,id:(d=(m=(n=e.body)==null?void 0:n.code_reference)==null?void 0:m.body)==null?void 0:d.code_repository.id}},cell:({getValue:e})=>{const{name:s,id:t}=e();return!s||!t?null:a.jsx("div",{children:a.jsx(u,{rounded:!1,className:"inline-block",color:"grey",emphasis:"subtle",children:s})})}},{id:"created",header:"Created at",accessorFn:e=>{var s;return(s=e.body)==null?void 0:s.created},cell:({getValue:e})=>a.jsx("p",{className:"text-text-sm text-theme-text-secondary",children:a.jsx(A,{dateString:e()})})},{id:"author",header:"Author",accessorFn:e=>{var s;return{author:(s=e.body)==null?void 0:s.user}},cell:({getValue:e})=>{const{author:s}=e();return a.jsx(q,{username:s.name})}}]}function O(){const{namespace:e}=h(),s=z(),t=Q(),{data:r,refetch:n}=K({params:{pipeline_name:decodeURIComponent(e),...s,sort_by:"desc:updated"}},{throwOnError:!0});return a.jsxs("div",{className:"flex flex-col gap-5 p-5",children:[a.jsxs("div",{className:"flex items-center justify-between",children:[a.jsx(_,{searchParams:s}),a.jsxs(S,{intent:"primary",emphasis:"subtle",size:"md",onClick:()=>n(),children:[a.jsx(E,{className:"h-5 w-5 fill-theme-text-brand"}),"Refresh"]})]}),a.jsxs("div",{className:"flex flex-col items-center gap-5",children:[a.jsx("div",{className:"w-full",children:r?a.jsx(k,{columns:t,data:r.items}):a.jsx(p,{className:"h-[500px] w-full"})}),r?r.total_pages>1&&a.jsx(w,{searchParams:s,paginate:r}):a.jsx(p,{className:"h-[36px] w-[300px]"})]})]})}function ce(){const{namespace:e}=h(),{setCurrentBreadcrumbData:s}=R();return f.useEffect(()=>{e&&s({segment:"pipeline_detail",data:{name:e}})},[e]),a.jsxs("div",{children:[a.jsx(L,{namespace:e}),a.jsx(O,{})]})}export{ce as default};
@@ -1 +0,0 @@
1
- import{r as o,j as e}from"./@radix-CFOkMR_E.js";import{k as j,l as C,j as y,n as T,F as b,a0 as E,a1 as F,h as x,a2 as P,a3 as U,a4 as k,a5 as I,z as m,f as D,I as O,a6 as R,a7 as _,a8 as H,a9 as q,i as v,aa as z,ab as Z,ac as B,ad as K,ae as Q,af as V,ag as L,ah as G,ai as J,aj as $,ak as W,al as X,E as w,am as Y,an as ee,S as f,D as se,B as te}from"./index-KsTz2dHG.js";import{S as ae,P as re}from"./SearchField-CXoBknpt.js";import{a as ne,b as N,c as A}from"./@tanstack-k96lU_C-.js";import{o as ie}from"./url-rGEp5Umh.js";import{C as oe}from"./CodeSnippet-Cyp7f4dM.js";import{u as le}from"./index.esm-CbHNSeVw.js";import{D as ce}from"./DisplayDate-DYgIjlDF.js";import{I as de}from"./InlineAvatar-BvBtO2Dp.js";import{S as ue}from"./dots-horizontal-BObFzD5l.js";import{c as me}from"./@react-router-CO-OsFwI.js";import"./@reactflow-DIYUhKYX.js";import"./chevron-right-double-CZBOf6JM.js";import"./copy-BXNk6BjL.js";function he({params:a}){return["users",a]}async function xe({params:a}){const s=j(C.users.all+"?"+ie(a)),t=await y(s,{method:"GET",headers:{"Content-Type":"application/json"}});if(t.status===404&&T(),!t.ok)throw new b({message:"Error while fetching users",status:t.status,statusText:t.statusText});return t.json()}function pe(a,s){return ne({queryKey:he(a),queryFn:()=>xe(a),...s})}const fe=a=>o.createElement("svg",{viewBox:"0 0 24 24",fill:"black",xmlns:"http://www.w3.org/2000/svg",...a},o.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M10 4C8.06703 4 6.50002 5.567 6.50002 7.5C6.50002 9.433 8.06703 11 10 11C11.933 11 13.5 9.433 13.5 7.5C13.5 5.567 11.933 4 10 4ZM4.50002 7.5C4.50002 4.46243 6.96246 2 10 2C13.0376 2 15.5 4.46243 15.5 7.5C15.5 10.5376 13.0376 13 10 13C6.96246 13 4.50002 10.5376 4.50002 7.5ZM19 14C19.5523 14 20 14.4477 20 15V17H22C22.5523 17 23 17.4477 23 18C23 18.5523 22.5523 19 22 19H20V21C20 21.5523 19.5523 22 19 22C18.4477 22 18 21.5523 18 21V19H16C15.4477 19 15 18.5523 15 18C15 17.4477 15.4477 17 16 17H18V15C18 14.4477 18.4477 14 19 14ZM7.32629 14.5C7.38335 14.5 7.44125 14.5 7.50003 14.5H12C12.5523 14.5 13 14.9477 13 15.5C13 16.0523 12.5523 16.5 12 16.5H7.50003C6.03171 16.5 5.51923 16.5109 5.12917 16.6292C4.17036 16.92 3.42005 17.6703 3.1292 18.6291C3.01088 19.0192 3.00002 19.5317 3.00002 21C3.00002 21.5523 2.55231 22 2.00002 22C1.44774 22 1.00002 21.5523 1.00002 21C1.00002 20.9412 1 20.8833 0.99998 20.8263C0.999526 19.599 0.999216 18.761 1.21532 18.0486C1.70007 16.4506 2.95059 15.2 4.54859 14.7153C5.261 14.4992 6.09902 14.4995 7.32629 14.5Z"}));async function ge(a){const s=j(C.users.all),t=await y(s,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(a)});if(!t.ok){const r=await t.json().then(n=>n.detail).catch(()=>"Failed to create User");throw new b({status:t.status,statusText:t.statusText,message:r})}return t.json()}function je(a){return N({mutationFn:async s=>ge(s),...a})}function Ce(){const[a,s]=o.useState(!1),[t,r]=o.useState(null);return e.jsxs(E,{open:a,onOpenChange:n=>{s(n),r(null)},children:[e.jsx(F,{asChild:!0,children:e.jsx(x,{className:"shrink-0",intent:"primary",children:"Add Member"})}),e.jsxs(P,{className:"",children:[e.jsx(U,{children:e.jsx(k,{children:" Add a New Member"})}),t?e.jsx(be,{name:t.name,token:I(t)}):e.jsx(ye,{setSuccessMember:r})]})]})}m.object({username:m.string(),isAdmin:m.boolean()});function ye({setSuccessMember:a}){const{toast:s}=D(),t=A(),{mutate:r,isPending:n}=je({onError(d){q(d)&&s({status:"error",emphasis:"subtle",icon:e.jsx(v,{className:"h-5 w-5 shrink-0 fill-error-700"}),description:d.message,rounded:!0})},onSuccess(d){a(d),t.invalidateQueries({queryKey:["users"]})}}),l=o.useId(),c=o.useId(),{register:i,handleSubmit:h,watch:p,setValue:u}=le();function M(d){r({is_admin:d.isAdmin,name:d.username})}return e.jsxs(e.Fragment,{children:[e.jsx("form",{id:"create-user-form",onSubmit:h(M),className:"space-y-5 p-7",children:e.jsxs("div",{className:"space-y-5",children:[e.jsxs("div",{className:"space-y-0.5",children:[e.jsx("label",{htmlFor:l,className:"text-text-sm",children:"Username"}),e.jsx(O,{...i("username"),id:l,className:"w-full"})]}),e.jsxs("div",{className:"flex gap-5",children:[e.jsx("label",{htmlFor:c,className:"text-text-md",children:"Add user as an Admin"}),e.jsx(R,{onCheckedChange:d=>u("isAdmin",!!d),...i("isAdmin",{value:!1}),id:c})]})]})}),e.jsxs(_,{className:"gap-[10px]",children:[e.jsx(H,{asChild:!0,children:e.jsx(x,{size:"sm",intent:"secondary",children:"Cancel"})}),e.jsx(x,{disabled:!p("username")||n,form:"create-user-form",size:"sm",children:"Generate Token"})]})]})}function be({token:a,name:s}){return e.jsxs("div",{className:"space-y-5 overflow-hidden p-7 text-center",children:[e.jsx(fe,{className:"m-auto mb-5 h-[110px] w-[110px] fill-success-500"}),e.jsxs("div",{className:"space-y-1",children:[e.jsx("p",{className:"text-text-lg font-semibold text-theme-text-primary",children:`The user ${s} was created successfully!`}),e.jsx("p",{className:"text-text-md text-theme-text-secondary",children:"Share the invitation link with the user to complete the registration."})]}),e.jsx(oe,{className:"mx-auto",code:a})]})}const we=a=>o.createElement("svg",{viewBox:"0 0 24 24",fill:"black",xmlns:"http://www.w3.org/2000/svg",...a},o.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M4.9681 6.38231C3.73647 7.92199 3 9.87499 3 12C3 16.9706 7.02944 21 12 21C14.125 21 16.078 20.2635 17.6177 19.0319L4.9681 6.38231ZM6.38231 4.9681L19.0319 17.6177C20.2635 16.078 21 14.125 21 12C21 7.02944 16.9706 3 12 3C9.87499 3 7.92199 3.73647 6.38231 4.9681ZM1 12C1 5.92487 5.92487 1 12 1C18.0751 1 23 5.92487 23 12C23 18.0751 18.0751 23 12 23C5.92487 23 1 18.0751 1 12Z"})),S=o.forwardRef((a,s)=>{const{triggerChildren:t,children:r,onSelect:n,onOpenChange:l,icon:c,...i}=a;return e.jsxs(z,{onOpenChange:l,children:[e.jsx(Z,{asChild:!0,children:e.jsx(B,{...i,className:"hover:cursor-pointer",icon:a.icon,ref:s,onSelect:h=>{h.preventDefault(),n&&n()},children:t})}),e.jsx(K,{children:r})]})});S.displayName="AlertDialogItem";async function De(a){const s=j(C.users.detail(a)),t=await y(s,{method:"DELETE",headers:{"Content-Type":"application/json"}});if(!t.ok){const r=await t.json().then(n=>n.detail).catch(()=>"Failed to delete User");throw new b({status:t.status,statusText:t.statusText,message:r})}return t.json()}function ve(a){return N({mutationFn:async s=>De(s),...a})}function Ne({userId:a,name:s}){const{toast:t}=D(),r=A(),{isPending:n,mutate:l}=ve({onSuccess(){r.invalidateQueries({queryKey:["users"]})},onError:i=>{i instanceof Error&&t({status:"error",emphasis:"subtle",icon:e.jsx(v,{className:"h-5 w-5 shrink-0 fill-error-700"}),description:i.message,rounded:!0})}});function c(){l(a)}return e.jsxs(Q,{className:"p-0",children:[e.jsx(V,{className:"py-2 pl-5 pr-3 text-text-lg font-semibold",children:"Delete Member"}),e.jsx("div",{className:"border-y border-theme-border-moderate px-5 py-5",children:e.jsxs(L,{children:["Deleting ",e.jsx("strong",{children:s})," cannot be undone."]})}),e.jsxs("div",{className:"flex justify-end gap-3 px-5 py-3",children:[e.jsx(G,{asChild:!0,children:e.jsx(x,{intent:"secondary",children:"Cancel"})}),e.jsx(J,{asChild:!0,children:e.jsx(x,{onClick:c,disabled:n,intent:"danger",children:"Delete"})})]})]})}function Ae({userId:a,name:s}){const[t,r]=o.useState(!1),[n,l]=o.useState(!1),c=o.useRef(null),i=o.useRef(null);function h(){i.current=c.current}function p(u){if(u===!1){l(!1),setTimeout(()=>{r(u)},200);return}r(u)}return e.jsxs($,{onOpenChange:l,open:n,children:[e.jsx(W,{ref:c,children:e.jsx(ue,{className:"h-4 w-4 fill-theme-text-tertiary"})}),e.jsx(X,{hidden:t,onCloseAutoFocus:u=>{i.current&&(i.current.focus(),i.current=null,u.preventDefault())},align:"end",sideOffset:7,children:e.jsx(S,{onSelect:h,onOpenChange:p,triggerChildren:"Remove Member",icon:e.jsx(we,{fill:"red"}),children:e.jsx(Ne,{name:s,userId:a})})})]})}function Se({isAdmin:a}){return[{id:"name",accessorFn:s=>{var t;return{name:s.name,is_admin:!!((t=s.body)!=null&&t.is_admin)}},cell:({getValue:s})=>{const{name:t,is_admin:r}=s();return e.jsxs("div",{className:"flex",children:[e.jsx(de,{username:t}),r&&e.jsx("div",{children:e.jsx(w,{className:"ml-2 capitalize",size:"xs",color:"purple",children:"Admin"})})]})},header:"User"},{accessorKey:"status",header:"Status",accessorFn:s=>{var t;return{status:(t=s.body)==null?void 0:t.active}},cell:({getValue:s})=>{const{status:t}=s();return e.jsx(w,{className:"capitalize",color:t?"green":"grey",children:t?"Active":"Inactive"})}},{id:"created",header:"Created",accessorFn:s=>{var t;return(t=s.body)==null?void 0:t.created},cell:({getValue:s})=>e.jsx("p",{className:"text-text-sm text-theme-text-secondary",children:e.jsx(ce,{dateString:s()})})},...a?[{id:"actions",header:"",accessorFn:s=>({id:s.id,name:Y(s)}),meta:{width:"5%"},cell:({getValue:s})=>{const{id:t,name:r}=s();return e.jsx(Ae,{name:r,userId:t})}}]:[]]}const g=1,Me=m.object({page:m.coerce.number().min(g).optional().default(g).catch(g),name:m.string().optional(),operator:m.enum(["and","or"]).optional()});function Te(){const[a]=me(),{page:s,name:t,operator:r}=Me.parse({page:a.get("page")||void 0,name:a.get("name")||void 0,operator:a.get("operator")||void 0});return{page:s,name:t,logical_operator:r}}function Ee(){var c,i;const a=Te(),{data:s,isError:t}=pe({params:{...a,sort_by:"desc:created"}},{throwOnError:!0}),{data:r,isPending:n,isError:l}=ee();return t||l?null:n?e.jsx(f,{className:"h-[350px]"}):e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"flex flex-wrap items-center justify-between gap-2",children:[e.jsx(ae,{searchParams:a}),((c=r.body)==null?void 0:c.is_admin)&&e.jsx(Ce,{})]}),e.jsxs("div",{className:"flex flex-col items-center gap-5",children:[e.jsx("div",{className:"w-full",children:s?e.jsx(se,{columns:Se({isAdmin:(i=r.body)==null?void 0:i.is_admin}),data:s.items}):e.jsx(f,{className:"h-[250px] w-full"})}),s?s.total_pages>1&&e.jsx(re,{searchParams:a,paginate:s}):e.jsx(f,{className:"h-[36px] w-[300px]"})]})]})}function Qe(){return e.jsxs(te,{className:"flex flex-col gap-4 p-5",children:[e.jsx("h1",{className:"text-text-xl font-semibold",children:"Members"}),e.jsx(Ee,{})]})}export{Qe as default};
@@ -1 +0,0 @@
1
- import{r as u,j as e}from"./@radix-CFOkMR_E.js";import{S as ie,C as N,u as M,a as S,P as L,b as le,W as oe,L as ne}from"./ProviderRadio-pSAvrGRS.js";import{p as Y,s as g,C as h,a as ce,b as de,c as q,d as ue}from"./persist-BReKApOc.js";import{aB as me,aC as xe,aD as pe,aE as Q,S as j,y as P,A as U,b as $,B as D,aq as he,ar as fe,as as Ce,at as ge,au as je,h as J,aF as ve,r as G}from"./index-KsTz2dHG.js";import{c as ye,b as be}from"./@react-router-CO-OsFwI.js";import{I as v}from"./Infobox-iv1Nu1A0.js";import{t as K}from"./zod-BtSyGx4C.js";import{a as X,C as we,u as ee,F as Ne}from"./index.esm-CbHNSeVw.js";import{T as I}from"./Tick-Bnr2TpW6.js";import{a as y}from"./@tanstack-k96lU_C-.js";import{S as ke}from"./logs-D8k8BVFf.js";import{C as Se}from"./CodeSnippet-Cyp7f4dM.js";import{S as Le}from"./package-ClbU3KUi.js";import"./aws-BgKTfTfx.js";import"./url-rGEp5Umh.js";import"./stack-detail-query-Ck7j7BP_.js";import"./database-1xWSgZfO.js";import"./@reactflow-DIYUhKYX.js";import"./copy-BXNk6BjL.js";const te=u.createContext(null);function Me({children:r}){const{success:s,data:a}=Y(),[t,i]=u.useState(!1),[n,l]=u.useState(!!s),[o,d]=u.useState(s?{location:a.location,provider:a.provider,stackName:a.stackName}:{}),[c,m]=u.useState(s?a.timestamp:""),p=u.useRef(null);return e.jsx(te.Provider,{value:{isNextButtonDisabled:t,setIsNextButtonDisabled:i,data:o,setData:d,isLoading:n,setIsLoading:l,formRef:p,timestamp:c,setTimestamp:m},children:r})}function x(){const r=u.useContext(te);if(r===null)throw new Error("useNewInfraFormContext must be used within an AuthProvider");return r}const Pe=r=>u.createElement("svg",{viewBox:"0 0 24 24",fill:"black",xmlns:"http://www.w3.org/2000/svg",...r},u.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M12 3C7.02944 3 3 7.02944 3 12C3 16.9706 7.02944 21 12 21C16.9706 21 21 16.9706 21 12C21 7.02944 16.9706 3 12 3ZM1 12C1 5.92487 5.92487 1 12 1C18.0751 1 23 5.92487 23 12C23 18.0751 18.0751 23 12 23C5.92487 23 1 18.0751 1 12ZM12 4.5C12.5523 4.5 13 4.94772 13 5.5V6H13.1667C15.0076 6 16.5 7.49238 16.5 9.33333C16.5 9.88562 16.0523 10.3333 15.5 10.3333C14.9477 10.3333 14.5 9.88562 14.5 9.33333C14.5 8.59695 13.903 8 13.1667 8H11C10.1716 8 9.5 8.67157 9.5 9.5C9.5 10.3284 10.1716 11 11 11H13C14.933 11 16.5 12.567 16.5 14.5C16.5 16.433 14.933 18 13 18V18.5C13 19.0523 12.5523 19.5 12 19.5C11.4477 19.5 11 19.0523 11 18.5V18H10.8333C8.99238 18 7.5 16.5076 7.5 14.6667C7.5 14.1144 7.94772 13.6667 8.5 13.6667C9.05228 13.6667 9.5 14.1144 9.5 14.6667C9.5 15.403 10.097 16 10.8333 16H13C13.8284 16 14.5 15.3284 14.5 14.5C14.5 13.6716 13.8284 13 13 13H11C9.067 13 7.5 11.433 7.5 9.5C7.5 7.567 9.067 6 11 6V5.5C11 4.94772 11.4477 4.5 12 4.5Z"})),De=r=>u.createElement("svg",{viewBox:"0 0 24 24",fill:"black",xmlns:"http://www.w3.org/2000/svg",...r},u.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M5.16145 4L18.8385 4C19.3657 3.99998 19.8205 3.99997 20.195 4.03057C20.5904 4.06287 20.9836 4.13419 21.362 4.32698C21.9265 4.6146 22.3854 5.07354 22.673 5.63803C22.8658 6.01641 22.9371 6.40963 22.9694 6.80498C23 7.17954 23 7.6343 23 8.16144V15.8386C23 16.3657 23 16.8205 22.9694 17.195C22.9371 17.5904 22.8658 17.9836 22.673 18.362C22.3854 18.9265 21.9265 19.3854 21.362 19.673C20.9836 19.8658 20.5904 19.9371 20.195 19.9694C19.8205 20 19.3657 20 18.8386 20L5.16148 20C4.63432 20 4.17955 20 3.80497 19.9694C3.40963 19.9371 3.01641 19.8658 2.63803 19.673C2.07354 19.3854 1.6146 18.9265 1.32698 18.362C1.13419 17.9836 1.06287 17.5904 1.03057 17.195C0.999967 16.8205 0.999983 16.3657 1 15.8385L1 10.0006C1 10.0004 1 10.0008 1 10.0006C1 10.0004 1 9.99958 1 9.99937L1 8.16146C0.999983 7.63431 0.999968 7.17955 1.03057 6.80497C1.06287 6.40963 1.13419 6.01641 1.32698 5.63803C1.6146 5.07354 2.07354 4.6146 2.63803 4.32698C3.01641 4.13419 3.40963 4.06287 3.80497 4.03057C4.17955 3.99997 4.63431 3.99998 5.16145 4ZM3 11V15.8C3 16.3766 3.00078 16.7488 3.02393 17.0322C3.04612 17.3038 3.0838 17.4045 3.109 17.454C3.20487 17.6422 3.35785 17.7951 3.54601 17.891C3.59546 17.9162 3.69617 17.9539 3.96784 17.9761C4.25117 17.9992 4.62345 18 5.2 18L18.8 18C19.3766 18 19.7488 17.9992 20.0322 17.9761C20.3038 17.9539 20.4045 17.9162 20.454 17.891C20.6422 17.7951 20.7951 17.6422 20.891 17.454C20.9162 17.4045 20.9539 17.3038 20.9761 17.0322C20.9992 16.7488 21 16.3766 21 15.8V11H3ZM21 9H3V8.2C3 7.62345 3.00078 7.25117 3.02393 6.96784C3.04612 6.69617 3.0838 6.59546 3.109 6.54601C3.20487 6.35785 3.35785 6.20487 3.54601 6.109C3.59546 6.0838 3.69617 6.04612 3.96784 6.02393C4.25118 6.00078 4.62345 6 5.2 6L18.8 6C19.3766 6 19.7488 6.00078 20.0322 6.02393C20.3038 6.04613 20.4045 6.0838 20.454 6.109C20.6422 6.20487 20.7951 6.35785 20.891 6.54601C20.9162 6.59546 20.9539 6.69617 20.9761 6.96784C20.9992 7.25118 21 7.62345 21 8.2V9ZM5 14C5 13.4477 5.44772 13 6 13H11C11.5523 13 12 13.4477 12 14C12 14.5523 11.5523 15 11 15H6C5.44772 15 5 14.5523 5 14Z"}));function re(){return e.jsxs(me,{children:[e.jsx(xe,{className:"block",children:e.jsxs(v,{intent:"warning",children:["This will give ZenML permissions and create secret keys for secure ZenML -",">"," Provider communication. You can revoke these permissions at any time."]})}),e.jsx(pe,{sideOffset:0,className:"w-auto p-5",children:e.jsx(Q,{viewportClassName:"max-h-[300px]",children:e.jsx(Ie,{})})})]})}function Ie(){const{data:r}=x(),{isPending:s,isError:a,error:t,data:i}=y(g.stackDeploymentInfo({provider:r.provider}));if(s)return e.jsx(j,{className:"h-[100px] w-full"});if(a)return e.jsx("p",{children:t.message});const n=Object.entries(i.permissions);return e.jsx("ul",{className:"space-y-2 pr-3 text-text-sm",children:n.map(([l,o])=>e.jsxs("li",{className:"flex flex-col gap-1",children:[e.jsx("p",{children:l}),e.jsx("ul",{className:"list-inside list-[square] pl-4 text-neutral-400 marker:text-primary-200",children:o.map((d,c)=>e.jsx("li",{children:d},c))})]},l))})}function Re({stackName:r,isLoading:s,isSuccess:a,components:t,displayPermissions:i=!1}){var n,l,o,d,c,m,p,C;return e.jsxs("div",{className:"divide-y divide-theme-border-moderate overflow-hidden rounded-md border border-theme-border-moderate",children:[e.jsxs("div",{className:"flex items-center gap-3 bg-theme-surface-secondary p-5 text-text-lg font-semibold",children:[s&&e.jsx(P,{className:"h-5 w-5 shrink-0 border-[3px]"}),a&&e.jsx(I,{className:"h-5 w-5",tickClasses:"w-3 h-3"}),e.jsx(U,{type:"square",size:"lg",children:e.jsx($,{size:"lg",children:r[0]})}),r]}),e.jsxs("div",{className:"space-y-1 py-3 pl-9 pr-5",children:[e.jsx(f,{title:((n=t==null?void 0:t.connector)==null?void 0:n.name)||"IAM Role",isLoading:s,isSuccess:a,subtitle:((l=t==null?void 0:t.connector)==null?void 0:l.id)||"Manage access to AWS resources",badge:e.jsx(h,{type:"annotator",children:"Service Connector"}),img:{src:"https://public-flavor-logos.s3.eu-central-1.amazonaws.com/service_connector/iam.webp",alt:"IAM logo"}}),i&&e.jsx(re,{})]}),e.jsx("div",{className:"py-3 pl-9 pr-5",children:e.jsx(f,{title:((o=t==null?void 0:t.artifactStore)==null?void 0:o.name)||"S3 Bucket",subtitle:((d=t==null?void 0:t.artifactStore)==null?void 0:d.id)||"Artifact storage for ML pipelines",badge:e.jsx(h,{type:"artifact_store",children:"Artifact Store"}),isLoading:s,isSuccess:a,img:{src:"https://public-flavor-logos.s3.eu-central-1.amazonaws.com/artifact_store/aws.png",alt:"S3 logo"}})}),e.jsx("div",{className:"py-3 pl-9 pr-5",children:e.jsx(f,{title:((c=t==null?void 0:t.registry)==null?void 0:c.name)||"ECR Repository",subtitle:((m=t==null?void 0:t.registry)==null?void 0:m.id)||"Container image storage",badge:e.jsx(h,{type:"container_registry",children:"Container Registry"}),isLoading:s,isSuccess:a,img:{src:"https://public-flavor-logos.s3.eu-central-1.amazonaws.com/container_registry/aws.png",alt:"ECR logo"}})}),e.jsx("div",{className:"py-3 pl-9 pr-5",children:e.jsx(f,{title:((p=t==null?void 0:t.orchestrator)==null?void 0:p.name)||"SageMaker",isLoading:s,isSuccess:a,subtitle:((C=t==null?void 0:t.orchestrator)==null?void 0:C.id)||"ML Workflow orchestration",badge:e.jsx(h,{type:"orchestrator",children:"Orchestrator"}),img:{src:"https://public-flavor-logos.s3.eu-central-1.amazonaws.com/orchestrator/sagemaker.png",alt:"Sagemaker logo"}})})]})}function Be({stackName:r,isLoading:s,isSuccess:a,components:t,displayPermissions:i=!1}){var n,l,o,d,c,m,p,C,b,w;return e.jsxs("div",{className:"divide-y divide-theme-border-moderate overflow-hidden rounded-md border border-theme-border-moderate",children:[e.jsxs("div",{className:"flex items-center gap-3 bg-theme-surface-secondary p-5 text-text-lg font-semibold",children:[s&&e.jsx(P,{className:"h-5 w-5 shrink-0 border-[3px]"}),a&&e.jsx(I,{className:"h-5 w-5",tickClasses:"w-3 h-3"}),e.jsx(U,{type:"square",size:"lg",children:e.jsx($,{size:"lg",children:r[0]})}),r]}),e.jsxs("div",{className:"space-y-1 py-3 pl-9 pr-5",children:[e.jsx(f,{title:((n=t==null?void 0:t.connector)==null?void 0:n.name)||"Service Account",isLoading:s,isSuccess:a,subtitle:((l=t==null?void 0:t.connector)==null?void 0:l.id)||"Manage access to GCP resources",badge:e.jsx(h,{type:"annotator",children:"Service Connector"}),img:{src:"https://public-flavor-logos.s3.eu-central-1.amazonaws.com/service_connector/gcp-iam.webp",alt:"Service Account logo"}}),i&&e.jsx(re,{})]}),e.jsx("div",{className:"py-3 pl-9 pr-5",children:e.jsx(f,{title:((o=t==null?void 0:t.artifactStore)==null?void 0:o.name)||"GCS Bucket",subtitle:((d=t==null?void 0:t.artifactStore)==null?void 0:d.id)||"Artifact storage for ML pipelines",badge:e.jsx(h,{type:"artifact_store",children:"Artifact Store"}),isLoading:s,isSuccess:a,img:{src:"https://public-flavor-logos.s3.eu-central-1.amazonaws.com/artifact_store/gcp.png",alt:"GCS logo"}})}),e.jsx("div",{className:"py-3 pl-9 pr-5",children:e.jsx(f,{title:((c=t==null?void 0:t.registry)==null?void 0:c.name)||"Google Artifact Registry",subtitle:((m=t==null?void 0:t.registry)==null?void 0:m.id)||"Container image storage",badge:e.jsx(h,{type:"container_registry",children:"Container Registry"}),isLoading:s,isSuccess:a,img:{src:"https://public-flavor-logos.s3.eu-central-1.amazonaws.com/container_registry/gcp.png",alt:"Google Artifact Registry logo"}})}),e.jsx("div",{className:"py-3 pl-9 pr-5",children:e.jsx(f,{title:((p=t==null?void 0:t.orchestrator)==null?void 0:p.name)||"Vertex AI",isLoading:s,isSuccess:a,subtitle:((C=t==null?void 0:t.orchestrator)==null?void 0:C.id)||"ML Workflow orchestration",badge:e.jsx(h,{type:"orchestrator",children:"Orchestrator"}),img:{src:"https://public-flavor-logos.s3.eu-central-1.amazonaws.com/orchestrator/vertexai.png",alt:"VertexAI logo"}})}),e.jsx("div",{className:"py-3 pl-9 pr-5",children:e.jsx(f,{title:((b=t==null?void 0:t.imageBuilder)==null?void 0:b.name)||"Cloud Build",isLoading:s,isSuccess:a,subtitle:((w=t==null?void 0:t.imageBuilder)==null?void 0:w.id)||"Build, test, and deploy images",badge:e.jsx(h,{type:"image_builder",children:"Image Builder"}),img:{src:"https://public-flavor-logos.s3.eu-central-1.amazonaws.com/image_builder/gcp.png",alt:"Cloud Build logo"}})})]})}function Ee(){return e.jsx(v,{className:"border-warning-300 bg-warning-50",intent:"warning",children:'The Cloud Shell session will warn you that the ZenML GitHub repository is untrusted. We recommend that you review the contents of the repository and then check the "Trust repo" checkbox to proceed with the deployment, otherwise the Cloud Shell session will not be authenticated to access your GCP projects.'})}function se(){const{data:r}=x(),s=y({...g.stackDeploymentConfig({provider:"gcp",stack_name:r.stackName,location:r.location})});return s.isError?null:s.isPending?e.jsx(j,{className:"h-[200px] w-full"}):e.jsxs("section",{className:"space-y-5 border-t border-theme-border-moderate pt-5",children:[e.jsxs("div",{className:"space-y-1",children:[e.jsxs("p",{className:"flex items-center gap-1 text-text-lg font-semibold",children:[e.jsx(ke,{className:"h-5 w-5 fill-primary-400"}),"Configuration"]}),e.jsx("p",{className:"text-theme-text-secondary",children:"You will be asked to provide the following configuration values during the deployment process."})]}),e.jsx(Se,{fullWidth:!0,highlightCode:!0,codeClasses:"whitespace-pre-wrap word-break-all",wrap:!0,code:s.data.configuration||""})]})}function R({componentProps:r,type:s}){switch(s){case"aws":return e.jsx(Re,{...r});case"gcp":return e.jsx(Be,{...r})}}function f({img:r,title:s,subtitle:a,badge:t,isSuccess:i,isLoading:n}){return e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsxs("div",{className:"flex items-center gap-3",children:[n&&e.jsx(P,{className:"h-5 w-5 shrink-0 border-[3px]"}),i&&e.jsx(I,{className:"h-5 w-5",tickClasses:"w-3 h-3"}),e.jsx("img",{width:"40",height:"40",alt:r.alt,src:r.src}),e.jsxs("div",{children:[e.jsx("p",{className:"text-text-lg font-semibold",children:s}),e.jsx("p",{className:"text-theme-text-secondary",children:a})]})]}),t]})}function ze(){const{data:r}=x();function s(){let a="#";switch(r.provider){case"aws":a="https://calculator.aws/#/";break;case"gcp":a="https://cloud.google.com/products/calculator"}return e.jsx("a",{href:a,target:"_blank",rel:"noopener noreferrer",className:"link",children:"official pricing calculator"})}return e.jsxs("div",{className:"space-y-5",children:[e.jsxs("div",{className:"space-y-1",children:[e.jsxs("p",{className:"flex items-center gap-1 text-text-lg font-semibold",children:[e.jsx(Pe,{className:"h-5 w-5 fill-primary-400"}),"Estimated Cost"]}),e.jsx("p",{className:"text-theme-text-secondary",children:"These are rough estimates and actual costs may vary based on your usage."})]}),e.jsxs(D,{className:"flex items-start gap-[10px] p-3",children:[e.jsx("div",{className:"content-center rounded-sm bg-blue-25 p-1",children:e.jsx(De,{className:"h-5 w-5 fill-blue-400"})}),e.jsxs("div",{children:[e.jsxs("p",{children:["A small training job would cost around:"," ",e.jsx("span",{className:"font-semibold text-theme-text-success",children:"$0.60"})]}),e.jsxs("p",{className:"text-text-xs text-theme-text-secondary",children:["Please use the ",e.jsx(s,{})," for a detailed estimate"]})]})]})]})}const Ze=r=>u.createElement("svg",{viewBox:"0 0 24 24",fill:"black",xmlns:"http://www.w3.org/2000/svg",...r},u.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M12 3C8.13401 3 5 6.13401 5 10C5 11.8921 5.85317 13.678 7.29228 15.5467C8.50741 17.1245 10.0627 18.6673 11.7323 20.3233C11.8212 20.4115 11.9105 20.5 12 20.5889C12.0895 20.5 12.1788 20.4115 12.2677 20.3233C13.9373 18.6673 15.4926 17.1245 16.7077 15.5467C18.1468 13.678 19 11.8921 19 10C19 6.13401 15.866 3 12 3ZM3 10C3 5.02944 7.02944 1 12 1C16.9706 1 21 5.02944 21 10C21 12.5262 19.8532 14.7402 18.2923 16.767C16.988 18.4607 15.3185 20.1156 13.6508 21.7689C13.3354 22.0816 13.02 22.3943 12.7071 22.7071C12.3166 23.0976 11.6834 23.0976 11.2929 22.7071C10.98 22.3943 10.6646 22.0816 10.3492 21.7689C8.68147 20.1156 7.01205 18.4607 5.70772 16.767C4.14683 14.7402 3 12.5262 3 10ZM12 8C10.8954 8 10 8.89543 10 10C10 11.1046 10.8954 12 12 12C13.1046 12 14 11.1046 14 10C14 8.89543 13.1046 8 12 8ZM8 10C8 7.79086 9.79086 6 12 6C14.2091 6 16 7.79086 16 10C16 12.2091 14.2091 14 12 14C9.79086 14 8 12.2091 8 10Z"}));function Ae(){const{control:r}=X(),{data:s}=x(),{isPending:a,isError:t,data:i}=y({...g.stackDeploymentInfo({provider:s.provider})});if(t)return null;if(a)return e.jsx(j,{className:"h-[40px] w-[100px]"});const n=Object.entries(i.locations);return e.jsx(we,{control:r,name:"region",render:({field:{onChange:l,ref:o,...d}})=>e.jsxs(he,{...d,onValueChange:l,children:[e.jsx(fe,{className:"border border-neutral-300 text-left text-text-md",children:e.jsx(Ce,{className:"flex items-center gap-2",placeholder:"Select your Location"})}),e.jsx(ge,{children:e.jsx(Q,{viewportClassName:"max-h-[300px]",children:n.map(([c,m])=>e.jsxs(je,{value:m,children:[c," - ",e.jsx("span",{className:"text-theme-text-secondary",children:m})]},c))})})]})})}function _e(){return e.jsxs("div",{className:"space-y-5 border-b border-theme-border-moderate pb-5",children:[e.jsxs("div",{className:"space-y-1",children:[e.jsxs("p",{className:"flex items-center gap-1 text-text-lg font-semibold",children:[e.jsx(Ze,{className:"h-5 w-5 fill-primary-400"}),"Choose Your Location"]}),e.jsx("p",{className:"text-theme-text-secondary",children:"Select where you want to deploy your cloud infrastructure for optimal performance and compliance."})]}),e.jsx(Ae,{})]})}function Ve(){const{data:r}=x(),{watch:s}=X();return e.jsxs("div",{className:"space-y-5 border-b border-theme-border-moderate pb-5",children:[e.jsxs("div",{className:"space-y-1",children:[e.jsxs("p",{className:"flex items-center gap-1 text-text-lg font-semibold",children:[e.jsx(Le,{className:"h-5 w-5 fill-primary-400"}),"Review Your Stack Components"]}),e.jsx("p",{className:"text-theme-text-secondary",children:"The following components will be created for your ZenML stack."})]}),e.jsx(R,{type:r.provider,componentProps:{displayPermissions:!0,stackName:s("stackName")}}),e.jsx(v,{children:"These resources create a basic ZenML stack for ML workflow management. ZenML supports highly flexible stacks. You can build advanced stacks at any time, combining your preferred tools and components for more complex MLOps."})]})}function He(){const{formRef:r,setIsNextButtonDisabled:s,setData:a,data:t}=x(),i=ee({resolver:K(ce),mode:"onChange",defaultValues:{region:t.location,stackName:t.stackName||""}});u.useEffect(()=>{s(!i.formState.isValid)},[i.formState.isValid,s]);function n(l){a(o=>({...o,location:l.region,stackName:l.stackName}))}return e.jsx(k,{title:"Review Stack Configuration",children:e.jsx(Ne,{...i,children:e.jsxs("div",{className:"space-y-5",children:[e.jsxs(v,{className:"text-text-sm",children:[e.jsx("p",{className:"font-semibold",children:"Important"}),e.jsx("p",{children:"This will create new resources in your account. Ensure you have the necessary permissions and are aware of any potential costs."})]}),e.jsxs("form",{onSubmit:i.handleSubmit(n),ref:r,className:"space-y-5",children:[e.jsx(_e,{}),e.jsx(ie,{})]}),e.jsx(Ve,{}),e.jsx(ze,{})]})})})}const Te=r=>u.createElement("svg",{viewBox:"0 0 24 24",fill:"black",xmlns:"http://www.w3.org/2000/svg",...r},u.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M7.7587 2L10 2C10.5523 2 11 2.44772 11 3C11 3.55229 10.5523 4 10 4H7.8C6.94342 4 6.36113 4.00078 5.91104 4.03755C5.47262 4.07337 5.24842 4.1383 5.09202 4.21799C4.7157 4.40973 4.40973 4.7157 4.21799 5.09202C4.1383 5.24842 4.07337 5.47262 4.03755 5.91104C4.00078 6.36113 4 6.94342 4 7.8V16.2C4 17.0566 4.00078 17.6389 4.03755 18.089C4.07337 18.5274 4.1383 18.7516 4.21799 18.908C4.40973 19.2843 4.7157 19.5903 5.09202 19.782C5.24842 19.8617 5.47262 19.9266 5.91104 19.9624C6.36113 19.9992 6.94342 20 7.8 20H16.2C17.0566 20 17.6389 19.9992 18.089 19.9624C18.5274 19.9266 18.7516 19.8617 18.908 19.782C19.2843 19.5903 19.5903 19.2843 19.782 18.908C19.8617 18.7516 19.9266 18.5274 19.9624 18.089C19.9992 17.6389 20 17.0566 20 16.2V14C20 13.4477 20.4477 13 21 13C21.5523 13 22 13.4477 22 14V16.2413C22 17.0463 22 17.7106 21.9558 18.2518C21.9099 18.8139 21.8113 19.3306 21.564 19.816C21.1805 20.5686 20.5686 21.1805 19.816 21.564C19.3306 21.8113 18.8139 21.9099 18.2518 21.9558C17.7106 22 17.0463 22 16.2413 22H7.75868C6.95372 22 6.28936 22 5.74817 21.9558C5.18608 21.9099 4.66937 21.8113 4.18404 21.564C3.43139 21.1805 2.81947 20.5686 2.43598 19.816C2.18868 19.3306 2.09012 18.8139 2.04419 18.2518C1.99998 17.7106 1.99999 17.0463 2 16.2413V7.7587C1.99999 6.95373 1.99998 6.28937 2.04419 5.74817C2.09012 5.18608 2.18868 4.66937 2.43597 4.18404C2.81947 3.43139 3.43139 2.81947 4.18404 2.43597C4.66937 2.18868 5.18608 2.09012 5.74817 2.04419C6.28937 1.99998 6.95373 1.99999 7.7587 2ZM14 3.00001C14 2.44773 14.4477 2.00001 15 2.00001H21C21.5523 2.00001 22 2.44773 22 3.00001L22 9.00001C22 9.55229 21.5523 10 21 10C20.4477 10 20 9.5523 20 9.00001L20 5.41422L12.7071 12.7071C12.3166 13.0976 11.6834 13.0976 11.2929 12.7071C10.9024 12.3166 10.9024 11.6834 11.2929 11.2929L18.5858 4.00001H15C14.4477 4.00001 14 3.5523 14 3.00001Z"}));function We(){const{data:r}=x();return e.jsxs("div",{className:"space-y-5",children:[e.jsx(v,{children:"This will provision and register a basic ZenML stack with all the necessary resources and credentials required to run pipelines."}),e.jsxs("div",{children:[e.jsxs("div",{className:"flex flex-wrap items-center gap-1",children:[e.jsx(N,{provider:r.provider,className:"h-5 w-5"}),e.jsx("p",{className:"text-text-lg font-semibold",children:"Deploy the Stack"})]}),e.jsx("p",{className:"text-theme-text-secondary",children:"Deploy the stack from your browser by clicking the button below:"})]}),r.provider==="gcp"&&e.jsx(Ee,{}),e.jsx(ae,{setTimestampBool:!0}),r.provider==="gcp"&&e.jsx(se,{})]})}function ae({setTimestampBool:r}){var l;const{data:s,setTimestamp:a,setIsLoading:t}=x(),i=y({...g.stackDeploymentConfig({provider:s.provider,location:s.location,stack_name:s.stackName})});if(i.isError)return null;if(i.isPending)return e.jsx(j,{className:"h-[48px] w-[100px]"});function n(){const o=new Date().toISOString().slice(0,-1);r&&a(o),de({location:s.location||"",provider:s.provider||"aws",stackName:s.stackName,timestamp:o}),t(!0)}return e.jsx(J,{asChild:!0,className:"w-fit whitespace-nowrap",size:"md",onClick:()=>n(),children:e.jsxs("a",{href:i.data.deployment_url,target:"_blank",rel:"noopener noreferrer",children:["Deploy in ",(l=s.provider)==null?void 0:l.toUpperCase()," ",e.jsx(Te,{className:"h-5 w-5 shrink-0 fill-white"})]})})}function Fe(){const{data:r,timestamp:s,setIsNextButtonDisabled:a}=x(),{setCurrentStep:t}=M(),{isPending:i,isError:n,data:l}=y({...g.stackDeploymentStack({provider:r.provider,stack_name:r.stackName,date_start:s}),refetchInterval:5e3,throwOnError:!0});return u.useEffect(()=>{l&&(q(),t(o=>o+1),a(!1))},[l]),i?e.jsx(j,{className:"h-[200px] w-full"}):n?null:e.jsxs("div",{className:"space-y-5",children:[e.jsx(Ge,{}),e.jsx(Oe,{stack:l})]})}function Ge(){const{data:r}=x();return e.jsxs("section",{className:"space-y-5 border-b border-theme-border-moderate pb-5",children:[e.jsxs(D,{className:"flex items-center justify-between gap-4 px-6 py-5",children:[e.jsxs("div",{className:"flex items-start gap-3",children:[e.jsx(N,{provider:r.provider,className:"h-6 w-6 shrink-0"}),e.jsxs("div",{children:[e.jsx("p",{className:"text-text-lg font-semibold",children:"Deploying the Stack..."}),e.jsx("p",{className:"text-theme-text-secondary",children:"Follow the steps in your Cloud console to finish the setup. You can come back to check once your components are deployed."})]})]}),e.jsx(ae,{})]}),r.provider==="gcp"&&e.jsx(se,{})]})}function Oe({stack:r}){const s=!!r;return e.jsxs("div",{className:"space-y-5",children:[!s&&e.jsxs("div",{className:"space-y-1",children:[e.jsxs("p",{className:"flex items-center gap-1 text-text-lg font-semibold",children:[e.jsx(ve,{className:"h-5 w-5 fill-primary-400"}),"Creating your stack and components..."]}),e.jsx("p",{className:"text-theme-text-secondary",children:"We are creating your stack and stack components based on your configuration. Once you finish the setup, come back to check your brand new stack and components ready."})]}),e.jsx(qe,{isReady:s}),e.jsx(Ye,{stack:r})]})}function Ye({stack:r}){const s=!!r,{data:a}=x();return e.jsxs("div",{className:"relative overflow-hidden rounded-md",children:[!s&&e.jsx("div",{className:"absolute z-50 h-full w-full bg-neutral-50/50"}),e.jsx(R,{type:a.provider,componentProps:{isLoading:!s,isSuccess:s,stackName:a.stackName}})]})}function qe({isReady:r}){const[s,a]=u.useState(!1);return u.useEffect(()=>{const t=setTimeout(()=>{a(!0)},3e5);return()=>clearTimeout(t)},[]),!s||r?null:e.jsx(v,{children:"Your stack is taking longer than usual to deploy. Please check your Cloud console, or the stacks list in ZenML."})}function Qe(){return e.jsx(k,{title:"Deploy ZenML Stack",children:e.jsx(Ue,{})})}function Ue(){const{setIsNextButtonDisabled:r,isLoading:s}=x();return u.useEffect(()=>{r(!0)},[]),s?e.jsx(Fe,{}):e.jsx(We,{})}function $e(){const{formRef:r,setIsNextButtonDisabled:s,setData:a,data:t}=x(),{register:i,handleSubmit:n,formState:{isValid:l}}=ee({resolver:K(ue),defaultValues:{provider:t.provider}});u.useEffect(()=>{s(!l)},[l,s]);function o(d){a(c=>({...c,provider:d.provider}))}return e.jsx(k,{title:"New Cloud Infrastructure",children:e.jsxs("div",{className:"space-y-5",children:[e.jsxs("div",{className:"space-y-1",children:[e.jsx("p",{className:"text-text-lg font-semibold",children:"Select a Cloud Provider"}),e.jsx("p",{className:"text-theme-text-secondary",children:"Select the cloud provider where your want to create your infrastructure and deploy your ZenML models. You will be able to remove the ZenML stack at any time."})]}),e.jsxs("form",{id:"provider-form",onSubmit:n(o),className:"grid grid-cols-1 gap-3 xl:grid-cols-3",ref:r,children:[e.jsx(S,{id:"aws-provider",...i("provider"),value:"aws",children:e.jsx(L,{icon:e.jsx(N,{provider:"aws",className:"h-6 w-6 shrink-0"}),title:"AWS",subtitle:"ZenML stack with S3, ECR, and SageMaker integration"})}),e.jsx(S,{id:"gcp-provider",...i("provider"),value:"gcp",children:e.jsx(L,{icon:e.jsx(N,{provider:"gcp",className:"h-6 w-6 shrink-0"}),title:"GCP",subtitle:"Create ZenML infrastructure using GCS, Artifact Registry, and Vertex AI"})}),e.jsx(S,{disabled:!0,id:"azure-provider",...i("provider"),value:"azure",children:e.jsx(L,{comingSoon:!0,icon:e.jsx(N,{provider:"azure",className:"h-6 w-6 shrink-0"}),title:"Azure",subtitle:"Set up ZenML with Azure Storage, Container Registry, and ML services"})})]})]})})}function Je(){const{setIsNextButtonDisabled:r}=x();return r(!1),e.jsx(k,{title:"Your Stack",children:e.jsxs("div",{className:"space-y-5",children:[e.jsx("p",{className:"text-theme-text-secondary",children:"Here you can review the created stack and stack components. Now you can start running pipelines using this new configuration."}),e.jsx(Ke,{})]})})}function Ke(){var p,C,b,w,B,E,z,Z,A,_,V,H,T,W,F;const{timestamp:r,data:s}=x(),{isPending:a,isError:t,data:i}=y({...g.stackDeploymentStack({provider:s.provider,stack_name:s.stackName,date_start:r}),throwOnError:!0});if(a)return e.jsx(j,{className:"h-[200px] w-full"});if(t)return null;const n=i.stack.name,l=(p=i.stack.metadata)==null?void 0:p.components.orchestrator,o=(C=i.stack.metadata)==null?void 0:C.components.artifact_store,d=(b=i.stack.metadata)==null?void 0:b.components.container_registry,c=(w=i.stack.metadata)==null?void 0:w.components.image_builder,m={orchestrator:{name:((B=l==null?void 0:l[0])==null?void 0:B.name)??"Orchestrator",id:((E=l==null?void 0:l[0])==null?void 0:E.id.split("-")[0])??""},artifactStore:{name:((z=o==null?void 0:o[0])==null?void 0:z.name)??"Artifact Store",id:((Z=o==null?void 0:o[0])==null?void 0:Z.id.split("-")[0])??""},registry:{name:((A=d==null?void 0:d[0])==null?void 0:A.name)??"Container Registry",id:((_=d==null?void 0:d[0])==null?void 0:_.id.split("-")[0])??""},connector:{name:(V=i.service_connector)==null?void 0:V.name,id:((T=(H=i.service_connector)==null?void 0:H.id)==null?void 0:T.split("-")[0])??""},imageBuilder:{name:((W=c==null?void 0:c[0])==null?void 0:W.name)??"Image Builder",id:((F=c==null?void 0:c[0])==null?void 0:F.id.split("-")[0])??""}};return e.jsx(R,{type:s.provider,componentProps:{components:m,isSuccess:!0,stackName:n}})}function Xe(){const{currentStep:r}=M();if(r===1)return e.jsx($e,{});if(r===2)return e.jsx(He,{});if(r===3)return e.jsx(Qe,{});if(r===4)return e.jsx(Je,{})}function et(){var c;const[s]=ye(),{setCurrentStep:a,currentStep:t}=M(),{formRef:i,isNextButtonDisabled:n}=x(),l=be(),o=s.get("origin")==="onboarding";async function d(){i.current&&(i.current.requestSubmit(),await new Promise(m=>setTimeout(m,20))),a(m=>m<4?m+1:m),t===4&&(q(),l(o?G.onboarding:G.stacks.overview))}return e.jsx(J,{form:(c=i.current)==null?void 0:c.id,disabled:n,onClick:()=>d(),size:"md",children:t===4?"Finish":"Next"})}function k({children:r,title:s}){return e.jsxs(D,{className:"w-full",children:[e.jsx("div",{className:"border-b border-theme-border-moderate px-5 py-3 text-display-xs font-semibold",children:s}),e.jsx("div",{className:"p-5",children:r}),e.jsxs("div",{className:"flex items-center justify-end gap-2 border-t border-theme-border-moderate p-5",children:[e.jsx(le,{}),e.jsx(et,{})]})]})}const O=["Infrastructure Type","Cloud Provider","Review Configuration","Deploy Stack"];function vt(){const{success:r}=Y();return e.jsx(oe,{maxSteps:O.length+1,initialStep:r?3:1,children:e.jsx(Me,{children:e.jsxs("section",{className:"layout-container flex flex-col gap-5 p-5 xl:flex-row",children:[e.jsx(ne,{entries:O}),e.jsx("div",{className:"w-full overflow-y-hidden",children:e.jsx(Xe,{})})]})})})}export{vt as default};
@@ -1 +0,0 @@
1
- import{j as e}from"./@radix-CFOkMR_E.js";import{B as u,E as l,c as f,S as h,$ as p,r as n,aA as j}from"./index-KsTz2dHG.js";import{S as g}from"./database-1xWSgZfO.js";import{c as o,L as c}from"./@react-router-CO-OsFwI.js";import"./@tanstack-k96lU_C-.js";import"./@reactflow-DIYUhKYX.js";function m({icon:t,estimatedTime:s,subtitle:a,title:r,comingSoon:i=!1,isRecommended:x=!1}){return e.jsxs(u,{className:`h-full w-full space-y-1 px-6 py-5 ${i&&"bg-neutral-50"}`,children:[t,e.jsxs("div",{className:"flex flex-wrap items-center gap-1",children:[e.jsx("h2",{className:"text-text-lg font-semibold",children:r}),x&&e.jsx(l,{className:"font-semibold",color:"green",size:"sm",children:"Recommended"}),i&&e.jsx(l,{className:"font-semibold",color:"purple",size:"sm",children:"Coming Soon"})]}),e.jsx("p",{className:"text-theme-text-secondary",children:a}),e.jsxs("p",{className:"text-text-xs text-theme-text-tertiary",children:["Estimated time: ",s," mins"]})]})}function y(){const{isError:t,isPending:s,data:a}=f();if(s)return e.jsx(h,{className:"h-[200px] w-full"});if(t)return e.jsx("div",{children:"Failed to load server info"});const r=p(a.deployment_type||"other");return e.jsxs("section",{className:"w-full space-y-5",children:[e.jsxs("div",{children:[e.jsx("h2",{className:"text-text-xl font-semibold",children:"Smart Stack Setup"}),e.jsx("p",{className:"text-theme-text-secondary",children:"Use our smart tools to connect to your Cloud in a quick and simplified way."})]}),e.jsxs("div",{className:"grid w-full grid-cols-1 gap-6 md:grid-cols-2",children:[e.jsx(N,{isLocalDeployment:r}),e.jsx(v,{isLocalDeployment:r})]})]})}function N({isLocalDeployment:t}){const[s]=o(),a=n.stacks.create.newInfra+(s.size>=1?`?${s.toString()}`:"");return e.jsxs("div",{className:"relative",children:[t&&e.jsx(d,{}),e.jsx(c,{to:a,children:e.jsx(m,{title:"New Infrastructure",isRecommended:!0,subtitle:"Use a script to set a new cloud infrastructure from scratch",icon:e.jsx(g,{className:"h-6 w-6 fill-primary-400"}),estimatedTime:"3"})})]})}function v({isLocalDeployment:t}){const[s]=o(),a=n.stacks.create.existingInfra+(s.size>=1?`?${s.toString()}`:"");return e.jsxs("div",{className:"relative",children:[t&&e.jsx(d,{}),e.jsx(c,{to:a,children:e.jsx(m,{title:"Use existing Cloud",subtitle:"Connect to your existing Cloud and configure your components manually.",icon:e.jsx(j,{className:"h-6 w-6 fill-primary-400"}),estimatedTime:"15"})})]})}function d(){return e.jsx("div",{className:"group absolute flex h-full w-full items-center justify-center rounded-md border border-theme-border-moderate bg-white/70",children:e.jsx("div",{className:"hidden rounded-md bg-theme-text-primary px-3 py-2 text-text-xs text-theme-text-negative shadow-lg animate-in fade-in-0 fade-out-0 zoom-in-95 group-hover:block",children:"Smart Setup is not available for local deployments"})})}function I(){return e.jsx("section",{className:"layout-container flex gap-2 p-5",children:e.jsx(y,{})})}export{I as default};
@@ -1 +0,0 @@
1
- import{j as s,r as p}from"./@radix-CFOkMR_E.js";import{C as u,R as d}from"./CopyButton-B3sWVJ4Z.js";import{k as h,l as f,j as x,n as g,F as j,m as P,r as l,T as y,z as r,o as b,P as N,h as v,D as w,S as o}from"./index-KsTz2dHG.js";import{S,P as E}from"./SearchField-CXoBknpt.js";import{q as T,a as C}from"./@tanstack-k96lU_C-.js";import{o as _}from"./url-rGEp5Umh.js";import{S as F}from"./terminal-By9cErXc.js";import{g as R,E as L}from"./ExecutionStatus-9zM7eaLh.js";import{L as c,c as k}from"./@react-router-CO-OsFwI.js";import"./copy-BXNk6BjL.js";import"./@reactflow-DIYUhKYX.js";import"./dots-horizontal-BObFzD5l.js";import"./chevron-right-double-CZBOf6JM.js";import"./check-circle-i56092KI.js";async function q({params:e}){const t=h(f.pipelines.all+"?"+_(e)),a=await x(t,{method:"GET",headers:{"Content-Type":"application/json"}});if(a.status===404&&g(),!a.ok)throw new j({message:"Error while fetching pipelines",status:a.status,statusText:a.statusText});return a.json()}const m={all:["pipelines"],pipelineList:e=>T({queryKey:[...m.all,e],queryFn:async()=>q({params:e})})};function z(){return[{id:"name",header:"Pipeline",accessorFn:e=>{var t;return{name:e.name,status:(t=e.body)==null?void 0:t.latest_run_status}},cell:({getValue:e})=>{const{name:t,status:a}=e();return s.jsxs("div",{className:"group/copybutton flex items-center gap-2",children:[s.jsx(P,{className:`h-5 w-5 ${R(a)}`}),s.jsxs(c,{to:l.pipelines.namespace(encodeURIComponent(t)),className:"flex items-center gap-1",children:[s.jsx("h2",{className:"text-text-md font-semibold",children:t}),s.jsx(L,{status:a}),s.jsx(u,{copyText:t})]})]})}},{id:"latest-run",header:"Latest Run",accessorFn:e=>{var t,a;return{status:(t=e.body)==null?void 0:t.latest_run_status,runId:(a=e.body)==null?void 0:a.latest_run_id}},cell:({getValue:e})=>{const{runId:t,status:a}=e();return!t||!a?s.jsx("div",{children:"No run"}):s.jsx(c,{to:l.runs.detail(t),children:s.jsxs(y,{emphasis:"subtle",rounded:!1,className:"inline-flex items-center gap-0.5",color:B(a),children:[s.jsx(F,{className:`h-3 w-3 ${A(a)}`}),t==null?void 0:t.split("-")[0]]})})}}]}function A(e){if(!e)return"fill-theme-text-brand";switch(e){case"running":return"fill-orange-700";case"cached":return"fill-theme-text-secondary";case"completed":return"fill-success-800";case"failed":return"fill-error-800";case"initializing":return"fill-theme-text-brand"}}function B(e){if(!e)return"purple";switch(e){case"running":return"orange";case"cached":return"grey";case"completed":return"green";case"failed":return"red";case"initializing":return"purple"}}const i=1,D=r.object({page:r.coerce.number().min(i).optional().default(i).catch(i),name:r.string().optional(),operator:r.enum(["and","or"]).optional()});function I(){const[e]=k(),{page:t,name:a,operator:n}=D.parse({page:e.get("page")||void 0,name:e.get("name")||void 0,operator:e.get("operator")||void 0});return{page:t,name:a,logical_operator:n}}function ee(){const{setCurrentBreadcrumbData:e}=b(),t=I(),{data:a,refetch:n}=C({...m.pipelineList({...t,sort_by:"desc:latest_run"}),throwOnError:!0});return p.useEffect(()=>{e({segment:"pipelines",data:null})},[]),s.jsxs("div",{children:[s.jsx(N,{children:s.jsx("h1",{className:"text-display-xs font-semibold",children:"Pipelines"})}),s.jsx("section",{className:"p-5",children:s.jsxs("div",{className:"flex flex-col gap-5",children:[s.jsxs("div",{className:"flex items-center justify-between",children:[s.jsx(S,{searchParams:t}),s.jsx("div",{className:"flex justify-between",children:s.jsxs(v,{intent:"primary",emphasis:"subtle",size:"md",onClick:()=>n(),children:[s.jsx(d,{className:"h-5 w-5 fill-theme-text-brand"}),"Refresh"]})})]}),s.jsxs("div",{className:"flex flex-col items-center gap-5",children:[s.jsx("div",{className:"w-full",children:a?s.jsx(w,{columns:z(),data:a.items}):s.jsx(o,{className:"h-[500px] w-full"})}),a?a.total_pages>1&&s.jsx(E,{searchParams:t,paginate:a}):s.jsx(o,{className:"h-[36px] w-[300px]"})]})]})})]})}export{ee as default};
@@ -1,5 +0,0 @@
1
- import{j as e}from"./@radix-CFOkMR_E.js";import{B as r,av as i}from"./index-KsTz2dHG.js";import{I as a}from"./Infobox-iv1Nu1A0.js";import{H as o}from"./Helpbox-BIiNc-uH.js";import{V as s,g as l}from"./Commands-DmQwTXjj.js";import"./@tanstack-k96lU_C-.js";import"./@react-router-CO-OsFwI.js";import"./@reactflow-DIYUhKYX.js";import"./help-bu_DgLKI.js";import"./play-circle-CNtZKDnW.js";import"./CodeSnippet-Cyp7f4dM.js";import"./copy-BXNk6BjL.js";const c=[{command:`zenml secret create SECRET_NAME --key1=value1 --key2=value2 --key3=value3 ...
2
-
3
-
4
- # Another option is to use the '--values' option and provide key-value pairs in either JSON or YAML format.
5
- zenml secret create SECRET_NAME --values '{"key1":"value2","key2":"value2","key3":"value3"}'`,description:"Create a secret"},{command:"zenml secret list",description:"List all the available secrets"},{command:"zenml secret get SECRET_NAME",description:"Get the key-value pairs for a particular secret"},{command:"zenml secret delete SECRET_NAME",description:"Delete a secret that you have previously registered"}],m="/assets/secrets-video-OBJ6irhH.svg";function d(){return e.jsx(a,{children:e.jsxs("div",{className:"flex w-full flex-wrap items-center gap-x-2 gap-y-0.5 text-text-md",children:[e.jsx("p",{className:"font-semibold",children:"We are creating a new Secrets experience"}),e.jsx("p",{children:"In the meanwhile you can use the CLI to add and manage your secrets."})]})})}function u(){const t="https://zenml.portal.trainn.co/share/R0A37qU8LVfcvPi6wxdhaQ/embed?autoplay=false";return e.jsxs(r,{className:"flex flex-col-reverse items-stretch overflow-hidden lg:flex-row",children:[e.jsxs("div",{className:"w-full p-7 lg:w-2/3",children:[e.jsx("h2",{className:"text-display-xs font-semibold",children:"Learn More about Secrets"}),e.jsx("p",{className:"mt-2 text-text-lg text-theme-text-secondary",children:"Learn about using ZenML Secrets for a secure, centralized management of your pipeline secrets and configurations."}),e.jsx(s,{videoLink:t,buttonText:"Watch the Starter Guide (1 min)"})]}),e.jsx("div",{className:"flex w-full items-center justify-center bg-primary-50 lg:w-1/3",children:e.jsx(s,{fallbackImage:e.jsx("img",{src:m,alt:"Purple squares with text indicating a starter guide for secrets",className:"h-full w-full"}),videoLink:t,isButton:!1})})]})}function x(){return e.jsxs("section",{className:"space-y-5 pl-8 pr-5",children:[e.jsx(a,{className:"text-text-md",intent:"neutral",children:"A ZenML Secret is a collection or grouping of key-value pairs stored by the ZenML secrets store. ZenML Secrets are identified by a unique name which allows you to fetch or reference them in your pipelines and stacks."}),c.map((t,n)=>e.jsx(e.Fragment,{children:l(t)},n)),e.jsx(o,{text:"Check all the commands and find more about Secrets in our Docs",link:"https://docs.zenml.io/getting-started/deploying-zenml/secret-management"})]})}function E(){return e.jsxs(r,{className:"space-y-4 p-5",children:[e.jsx("h1",{className:"text-text-xl font-semibold",children:"Secrets"}),e.jsx(d,{}),e.jsx(u,{}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(i,{}),"Administering your Secrets"]}),e.jsx(x,{})]})}export{E as default};
@@ -1 +0,0 @@
1
- import{j as e,r as c}from"./@radix-CFOkMR_E.js";import{P as W,a0 as R,a1 as P,ac as q,a2 as C,a3 as y,a4 as v,aj as S,ak as Q,al as Z,C as Y,Y as E,aw as g,ax as D,M as G,N as K,O as J,S as h,A as z,b as T,B as V,h as N,r as M,z as u,D as X,o as ee,ay as se}from"./index-KsTz2dHG.js";import{S as te}from"./plus-DOeLmm7C.js";import{C as b,R as ae}from"./CopyButton-B3sWVJ4Z.js";import{S as re,P as ne}from"./SearchField-CXoBknpt.js";import{s as p,C as ce,p as A,c as le}from"./persist-BReKApOc.js";import{a as f}from"./@tanstack-k96lU_C-.js";import{L as O,c as ie}from"./@react-router-CO-OsFwI.js";import{D as oe}from"./DisplayDate-DYgIjlDF.js";import{I as de}from"./InlineAvatar-BvBtO2Dp.js";import{S as xe}from"./dots-horizontal-BObFzD5l.js";import{S as me,e as I}from"./components-DWe4cTjS.js";import{I as k}from"./Infobox-iv1Nu1A0.js";import{C as m}from"./CodeSnippet-Cyp7f4dM.js";import{C as he}from"./CollapsibleCard-Cu_A9W57.js";import{F as ue}from"./chevron-right-double-CZBOf6JM.js";import{s as pe}from"./url-rGEp5Umh.js";import"./@reactflow-DIYUhKYX.js";import"./copy-BXNk6BjL.js";import"./stack-detail-query-Ck7j7BP_.js";import"./database-1xWSgZfO.js";import"./chevron-down-D_ZlKMqH.js";function fe(){return e.jsx(W,{children:e.jsx("h1",{className:"text-display-xs font-semibold",children:"Stacks"})})}const je=s=>c.createElement("svg",{viewBox:"0 0 24 24",fill:"black",xmlns:"http://www.w3.org/2000/svg",...s},c.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M16.2929 2.29295C17.788 0.797857 20.212 0.797859 21.7071 2.29295C23.2022 3.78805 23.2022 6.21207 21.7071 7.70717L18.7097 10.7045C18.7088 10.7054 18.708 10.7063 18.7071 10.7072C18.7062 10.708 18.7053 10.7089 18.7044 10.7098L8.50078 20.9134C8.48402 20.9302 8.46741 20.9468 8.45093 20.9633C8.20603 21.2086 7.99001 21.425 7.73334 21.5943C7.50768 21.7431 7.26295 21.8607 7.00578 21.9439C6.71327 22.0386 6.40936 22.0722 6.06483 22.1102C6.04165 22.1127 6.01829 22.1153 5.99474 22.1179L2.61038 22.4939C2.30845 22.5275 2.00765 22.422 1.79284 22.2072C1.57803 21.9924 1.47251 21.6916 1.50606 21.3896L1.8821 18.0053C1.88472 17.9817 1.8873 17.9583 1.88985 17.9352C1.92786 17.5906 1.96138 17.2867 2.05607 16.9942C2.13932 16.7371 2.25695 16.4923 2.40576 16.2667C2.57501 16.01 2.79138 15.794 3.03667 15.5491C3.05317 15.5326 3.06981 15.516 3.08657 15.4992L16.2929 2.29295ZM14 7.41427L4.50078 16.9134C4.17827 17.2359 4.1184 17.3025 4.07541 17.3677C4.02581 17.4429 3.9866 17.5245 3.95885 17.6102C3.9348 17.6845 3.92024 17.7728 3.86987 18.2261L3.63187 20.3681L5.77388 20.1301C6.22718 20.0798 6.3155 20.0652 6.3898 20.0412C6.47553 20.0134 6.5571 19.9742 6.63232 19.9246C6.69752 19.8816 6.76406 19.8217 7.08657 19.4992L16.5858 10.0001L14 7.41427ZM18 8.58584L15.4142 6.00006L17.7071 3.70716C18.4211 2.99312 19.5788 2.99312 20.2929 3.70717C21.0069 4.42121 21.0069 5.57891 20.2929 6.29295L18 8.58584Z"})),w=c.forwardRef((s,t)=>{const{triggerChildren:a,children:r,onSelect:n,onOpenChange:i,icon:d,open:x,...l}=s;return e.jsxs(R,{open:x,onOpenChange:i,children:[e.jsx(P,{asChild:!0,children:e.jsx(q,{...l,className:"hover:cursor-pointer",icon:s.icon,ref:t,onSelect:o=>{o.preventDefault(),n&&n()},children:a})}),r]})});w.displayName="DialogItem";const F=c.forwardRef(({closeModal:s,name:t,...a},r)=>e.jsxs(C,{...a,ref:r,children:[e.jsx(y,{children:e.jsx(v,{children:"Update Stack"})}),e.jsxs("div",{className:"space-y-5 p-7",children:[e.jsx(H,{action:"update"}),e.jsxs("div",{className:"space-y-1",children:[e.jsx("p",{className:"text-text-sm text-theme-text-secondary",children:"Update a stack"}),e.jsx(m,{codeClasses:"whitespace-pre-wrap",wrap:!0,code:`zenml stack update ${t} -o NEW_ORCHESTRATOR_NAME`})]})]})]}));F.displayName="UpdateStackDialog";const B=c.forwardRef(({closeModal:s,name:t,...a},r)=>e.jsxs(C,{...a,ref:r,children:[e.jsx(y,{children:e.jsx(v,{children:"Delete Stack"})}),e.jsxs("div",{className:"space-y-5 p-7",children:[e.jsx(H,{action:"delete"}),e.jsxs("div",{className:"space-y-1",children:[e.jsx("p",{className:"text-text-sm text-theme-text-secondary",children:"Delete a stack"}),e.jsx(m,{codeClasses:"whitespace-pre-wrap",wrap:!0,code:`zenml stack delete ${t}`})]})]})]}));B.displayName="DeleteStackDialog";function H({action:s}){function t(){switch(s){case"delete":return"delete";case"update":return"update";case"describe":return"get details of"}}return e.jsx(k,{children:e.jsx("div",{className:"flex w-full flex-wrap justify-between gap-2",children:e.jsxs("div",{className:"min-w-0",children:[e.jsx("p",{className:"truncate text-text-sm font-semibold",children:"We are working on the new Stacks experience."}),e.jsxs("p",{className:"truncate text-text-sm",children:["Meanwhile you can use the CLI to ",t()," your stack."]})]})})})}function ge({name:s}){const[t,a]=c.useState(!1),[r,n]=c.useState(!1),i=c.useRef(null),d=c.useRef(null);function x(){d.current=i.current}function l(o){a(o),o===!1&&n(!1)}return e.jsx(S,{open:r,onOpenChange:n,children:e.jsxs(S,{children:[e.jsx(Q,{className:"z-10",ref:i,children:e.jsx(xe,{className:"h-5 w-5 fill-theme-text-secondary"})}),e.jsxs(Z,{hidden:t,onCloseAutoFocus:o=>{d.current&&(d.current.focus(),d.current=null,o.preventDefault())},className:"z-10",align:"end",sideOffset:1,children:[e.jsx(w,{onSelect:x,onOpenChange:l,icon:e.jsx(je,{className:"h-3 w-3 !fill-neutral-400"}),triggerChildren:"Update",children:e.jsx(F,{name:s,className:"lg:min-w-[600px]",closeModal:()=>l(!1)})}),e.jsx(w,{onSelect:x,onOpenChange:l,icon:e.jsx(me,{className:"h-3 w-3 !fill-neutral-400"}),triggerChildren:"Delete",children:e.jsx(B,{name:s,className:"lg:min-w-[600px]",closeModal:()=>l(!1)})})]})]})})}function Ne(){return e.jsx("div",{className:"flex h-9 items-center border-b border-theme-border-moderate bg-theme-surface-primary px-4 py-3",children:e.jsxs(Y,{className:"focus:outline-none focus:ring-2 focus:ring-offset-2 disabled:pointer-events-none",children:[e.jsx(ue,{className:"h-5 w-5 fill-neutral-500"}),e.jsx("span",{className:"sr-only",children:"Close"})]})})}const _=c.forwardRef(({name:s,children:t,type:a,...r},n)=>e.jsxs(R,{children:[e.jsx(P,{asChild:!0,children:t}),e.jsxs(C,{className:"w-fit max-w-fit",...r,ref:n,children:[e.jsx(y,{children:e.jsx(v,{children:E(a||"")})}),e.jsxs("div",{className:"space-y-5 p-7",children:[e.jsx(we,{type:a}),e.jsxs("div",{className:"space-y-1",children:[e.jsxs("p",{className:"text-text-sm text-theme-text-secondary",children:["Describe your ",g(a)]}),e.jsx(m,{codeClasses:"whitespace-pre-wrap",wrap:!0,code:`zenml ${D(a)} describe ${s}`})]}),e.jsxs("div",{className:"space-y-1",children:[e.jsxs("p",{className:"text-text-sm text-theme-text-secondary",children:["Update your ",g(a)]}),e.jsx(m,{codeClasses:"whitespace-pre-wrap",wrap:!0,code:`zenml ${D(a)} update ${s}`})]})]})]})]}));_.displayName="ComponentFallbackDialog";function we({type:s}){return e.jsx(k,{children:e.jsx("div",{className:"flex w-full flex-wrap justify-between gap-2",children:e.jsxs("div",{className:"min-w-0",children:[e.jsx("p",{className:"truncate text-text-sm font-semibold",children:"We are working on the new Stacks experience."}),e.jsxs("p",{className:"truncate text-text-sm",children:["Meanwhile you can use the CLI to manage your ",g(s),"."]})]})})})}const $=c.createContext(null);function Ce({children:s}){const[t,a]=c.useState([]);return e.jsx($.Provider,{value:{integrations:t,setIntegrations:a},children:s})}function U(){const s=c.useContext($);if(s===null)throw new Error("useIntegrationsContext must be used within an AuthProvider");return s}function ye({children:s,stackId:t,stackName:a}){return e.jsxs(G,{children:[e.jsx(K,{children:s}),e.jsx(J,{className:"w-[1000px] overflow-y-auto",children:e.jsxs(Ce,{children:[e.jsx(Ne,{}),e.jsx(ve,{stackId:t}),e.jsx(Se,{name:a}),e.jsx(be,{stackId:t})]})})]})}function ve({stackId:s}){const t=f({...p.stackDetail(s)});return t.isError?null:t.isPending?e.jsx("div",{className:"p-5",children:e.jsx(h,{className:"h-6 w-full"})}):e.jsxs("div",{className:"flex items-center space-x-2 border-b border-theme-border-moderate bg-theme-surface-primary p-5",children:[e.jsx(z,{type:"square",size:"lg",children:e.jsx(T,{size:"lg",children:t.data.name[0]})}),e.jsxs("div",{children:[e.jsxs("div",{className:"group/copybutton flex items-center gap-0.5",children:[e.jsx("p",{className:"mb-0.5 text-text-sm text-theme-text-secondary",children:t.data.id}),e.jsx(b,{copyText:t.data.id})]}),e.jsx("div",{className:"flex items-center gap-1",children:e.jsx("h2",{className:"text-display-xs font-semibold",children:t.data.name})})]})]})}function be({stackId:s}){var n;const{setIntegrations:t}=U(),a=f({...p.stackDetail(s)});if(c.useEffect(()=>{var x;if(!a.data)return;const d=I((x=a.data.metadata)==null?void 0:x.components).map(l=>{var o;return(o=l.body)==null?void 0:o.integration}).filter(l=>!!l&&l!=="built-in"&&l!=="custom");d.length>=1&&t(l=>Array.from(new Set([...l,...d])))},[a.data]),a.isError)return null;if(a.isPending)return e.jsx("div",{className:"p-5",children:e.jsx(h,{className:"h-[300px] w-full"})});const r=I((n=a.data.metadata)==null?void 0:n.components);return e.jsx("ul",{className:"space-y-5 p-5",children:r.map(i=>e.jsx("li",{children:e.jsx(ke,{component:i})},i.id))})}function ke({component:s}){var t,a,r,n,i;return e.jsxs(V,{className:"flex items-center justify-between p-5",children:[e.jsxs("div",{className:"flex items-center space-x-3",children:[e.jsx("img",{width:32,height:32,alt:`${(t=s.body)==null?void 0:t.flavor} logo`,src:pe(((a=s.body)==null?void 0:a.logo_url)||"")}),e.jsxs("div",{children:[e.jsx(_,{type:((r=s.body)==null?void 0:r.type)||"orchestrator",name:s.name,children:e.jsx("button",{className:"text-text-xl",children:s.name})}),e.jsxs("div",{className:"group/copybutton flex items-center gap-0.5",children:[e.jsx("p",{className:"text-text-sm text-theme-text-secondary",children:s.id.split("-")[0]}),e.jsx(b,{copyText:s.id})]})]})]}),e.jsx(ce,{type:((n=s.body)==null?void 0:n.type)||"orchestrator",children:E(((i=s.body)==null?void 0:i.type)||"")})]})}function Se({name:s}){const{integrations:t}=U();return e.jsx("section",{className:"px-5 pt-5",children:e.jsx(he,{title:e.jsx("span",{className:"text-text-lg",children:"Set this stack"}),children:e.jsxs("ul",{className:"space-y-5",children:[e.jsxs("li",{className:"space-y-2",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(L,{children:"1"}),e.jsx("p",{className:"font-semibold",children:"Set your stack"})]}),e.jsxs("div",{className:"space-y-1",children:[e.jsx("p",{className:"text-text-sm text-theme-text-secondary",children:"Set the stack as active on your client"}),e.jsx(m,{codeClasses:"whitespace-pre-wrap",wrap:!0,code:`zenml stack set ${s}`})]})]}),t.length>=1&&e.jsxs("li",{className:"space-y-2",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(L,{children:"2"}),e.jsx("p",{className:"font-semibold",children:"Install the integrations"})]}),e.jsxs("div",{className:"space-y-1",children:[e.jsx("p",{className:"text-text-sm text-theme-text-secondary",children:"Install the required integrations to run pipelines in your stack"}),e.jsx(m,{codeClasses:"whitespace-pre-wrap",wrap:!0,code:`zenml integration install ${t.join(" ")}`})]})]})]})})})}function L({children:s}){return e.jsx("div",{className:"flex h-7 w-7 items-center justify-center rounded-sm bg-primary-100 text-text-lg font-semibold text-theme-text-brand",children:s})}function De(){return[{id:"name",header:"Stack",accessorFn:s=>({name:s.name,id:s.id}),cell:({getValue:s})=>{const{name:t,id:a}=s();return e.jsxs("div",{className:"group/copybutton flex items-center gap-2",children:[e.jsx(z,{type:"square",size:"md",children:e.jsx(T,{size:"md",children:t[0]})}),e.jsxs("div",{children:[e.jsx("div",{className:"flex items-center gap-1",children:e.jsx(ye,{stackName:t,stackId:a,children:e.jsx("h2",{className:"text-text-md font-semibold",children:t})})}),e.jsxs("div",{className:"flex items-center gap-1",children:[e.jsx("p",{className:"text-text-xs text-theme-text-secondary",children:a.split("-")[0]}),e.jsx(b,{copyText:a})]})]})]})}},{id:"created",header:"Created at",accessorFn:s=>{var t;return(t=s.body)==null?void 0:t.created},cell:({getValue:s})=>e.jsx("p",{className:"text-text-sm text-theme-text-secondary",children:e.jsx(oe,{dateString:s()})})},{id:"author",header:"Author",accessorFn:s=>{var t;return{author:(t=s.body)==null?void 0:t.user}},cell:({getValue:s})=>{const{author:t}=s();return t?e.jsx(de,{username:t.name}):null}},{id:"actions",header:"",accessorKey:"name",cell:({getValue:s})=>e.jsx(ge,{name:s()})}]}function Ie({setHasResumeableStack:s}){const{success:t,data:a}=A(),r=f({...p.stackDeploymentStack({provider:(a==null?void 0:a.provider)||"aws",stack_name:(a==null?void 0:a.stackName)||"",date_start:a==null?void 0:a.timestamp}),enabled:t,throwOnError:!0});return c.useEffect(()=>{r.data&&(le(),s(!1))},[r.data]),!t||r.isError?null:r.isPending?e.jsx(h,{className:"h-[70px] w-full"}):e.jsx(k,{className:"w-full",children:e.jsxs("section",{className:"flex flex-wrap items-center justify-between gap-y-2",children:[e.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[e.jsx("p",{className:"font-semibold",children:"You have a Stack provision incomplete"}),e.jsx("p",{className:"text-text-sm",children:"Return to the setup and finish the configuration on your cloud provider"})]}),e.jsx("div",{children:e.jsx(N,{className:"w-fit bg-theme-surface-primary",intent:"primary",emphasis:"subtle",asChild:!0,children:e.jsx(O,{to:M.stacks.create.newInfra,children:e.jsx("span",{children:"Review Stack"})})})})]})})}const j=1,Le=u.object({page:u.coerce.number().min(j).optional().default(j).catch(j),name:u.string().optional(),operator:u.enum(["and","or"]).optional()});function Re(){const[s]=ie(),{page:t,name:a,operator:r}=Le.parse({page:s.get("page")||void 0,name:s.get("name")||void 0});return{page:t,name:a,logical_operator:r}}function Pe(){const[s,t]=c.useState(A().success),a=Re(),{refetch:r,data:n}=f({...p.stackList({...a,sort_by:"desc:updated"}),throwOnError:!0});return e.jsx("section",{className:"p-5",children:e.jsxs("div",{className:"flex flex-col gap-5",children:[e.jsxs("div",{className:"flex flex-wrap items-center justify-between gap-y-4",children:[e.jsx(re,{searchParams:a}),e.jsxs("div",{className:"flex items-center justify-between gap-2",children:[e.jsxs(N,{intent:"primary",emphasis:"subtle",size:"md",onClick:()=>r(),children:[e.jsx(ae,{className:"h-5 w-5 fill-theme-text-brand"}),"Refresh"]}),e.jsx(N,{size:"md",asChild:!0,children:e.jsxs(O,{to:M.stacks.create.index,children:[e.jsx(te,{className:"h-5 w-5 shrink-0 fill-white"}),e.jsx("span",{children:"New Stack"})]})})]})]}),e.jsxs("div",{className:"flex flex-col items-center gap-5",children:[s&&e.jsx(Ie,{setHasResumeableStack:t}),e.jsx("div",{className:"w-full",children:n?e.jsx(X,{columns:De(),data:n.items}):e.jsx(h,{className:"h-[500px] w-full"})}),n?n.total_pages>1&&e.jsx(ne,{searchParams:a,paginate:n}):e.jsx(h,{className:"h-[36px] w-[300px]"})]})]})})}function es(){const{setCurrentBreadcrumbData:s}=ee(),{setTourState:t,tourState:{tourActive:a}}=se();return c.useEffect(()=>{a&&t(r=>({...r,run:!0,stepIndex:r.stepIndex}))},[a]),c.useEffect(()=>{s({segment:"stacks",data:null})},[]),e.jsxs("div",{children:[e.jsx(fe,{}),e.jsx(Pe,{})]})}export{es as default};
@@ -1 +0,0 @@
1
- import{j as e}from"./@radix-CFOkMR_E.js";import{u as x,S as n,A as c,a as d,g as f,b as u,r,c as h,d as p,an as g,am as v}from"./index-KsTz2dHG.js";import{h as j,O as N}from"./@react-router-CO-OsFwI.js";import{I as b}from"./InlineAvatar-BvBtO2Dp.js";import"./@tanstack-k96lU_C-.js";import"./@reactflow-DIYUhKYX.js";function w({children:s,...t}){return e.jsx(j,{className:({isActive:a})=>` ${a?"bg-primary-50 text-theme-text-brand":"hover:bg-neutral-200"} block rounded-md px-4 py-1 text-text-sm font-semibold `,...t,children:s})}function o({items:s}){return e.jsx("nav",{className:"flex w-full flex-col items-center",children:e.jsx("ul",{className:"flex w-full flex-row flex-wrap items-center gap-1 lg:flex-col lg:items-start",children:s.map(t=>e.jsx("li",{className:"lg:w-full",children:e.jsx(w,{end:!0,to:t.href,children:t.name})},t.name))})})}function y(){var l,i,m;const{data:s,isError:t,isPending:a}=x({throwOnError:!0});return a?e.jsx(n,{className:"h-9 w-full"}):t?null:e.jsxs("div",{className:"flex w-full items-center gap-2 rounded-md border border-theme-border-moderate bg-theme-surface-primary p-2",children:[e.jsxs(c,{size:"md",type:"square",children:[e.jsx(d,{src:f(((l=s.body)==null?void 0:l.server_name)||"default")}),e.jsx(u,{size:"md",children:((i=s.body)==null?void 0:i.server_name[0])||"D"})]}),e.jsx("p",{className:"truncate text-text-sm font-semibold",children:(m=s.body)==null?void 0:m.server_name})]})}function S(){function s(){return[{name:"General",href:r.settings.general},{name:"Members",href:r.settings.members},{name:"Repositories",href:r.settings.repositories.overview},{name:"Secrets",href:r.settings.secrets.overview},{name:"Connectors",href:r.settings.connectors.overview},{name:"Notifications",href:r.settings.notifications}]}const t=s();return e.jsx(o,{items:t})}function I(){function s(){return[{name:"Profile",href:r.settings.profile}]}const t=s();return e.jsx(o,{items:t})}function k(){const{data:s,isPending:t,isError:a}=h();return t?e.jsx(n,{className:"h-[70px] w-full"}):a?null:e.jsxs("div",{className:"rounded-md border border-theme-border-moderate bg-theme-surface-primary p-3",children:[e.jsxs("div",{className:"mb-2 flex items-center",children:[e.jsx(p,{className:"h-4 w-4 fill-theme-text-brand"}),e.jsx("p",{className:"ml-2 text-text-sm font-semibold",children:"Open source"})]}),e.jsxs("p",{className:"mb-1 text-text-sm text-theme-text-tertiary",children:["ZenML v",s.version]}),e.jsxs("p",{className:"text-text-sm text-theme-text-tertiary",children:["UI Version ","v0.22.0"]})]})}function L(){const{data:s}=g();return e.jsxs("div",{className:"layout-container flex flex-col gap-7 pt-5 lg:flex-row lg:px-10",children:[e.jsxs("div",{className:"flex shrink-0 flex-col gap-4 lg:w-[200px]",children:[e.jsxs("div",{className:"flex flex-col gap-4",children:[e.jsx("p",{className:"text-text-xs font-semibold uppercase text-theme-text-tertiary",children:"Server"}),e.jsx(y,{}),e.jsx(S,{})]}),s?e.jsxs("div",{className:"flex flex-col gap-4",children:[e.jsx("p",{className:"text-text-xs font-semibold uppercase text-theme-text-tertiary",children:"Account"}),e.jsx(b,{username:v(s)})]}):e.jsx(n,{className:"h-[70px] w-full"}),e.jsx("div",{className:"flex flex-col gap-4",children:e.jsx(I,{})}),e.jsxs("div",{className:"flex flex-col gap-4",children:[e.jsx("p",{className:"text-text-xs font-semibold uppercase text-theme-text-tertiary",children:"Version"}),e.jsx(k,{})]})]}),e.jsx("div",{className:"w-full",children:e.jsx(N,{})})]})}export{L as default};