zenml-nightly 0.71.0.dev20250109__py3-none-any.whl → 0.71.0.dev20250112__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 (134) hide show
  1. zenml/VERSION +1 -1
  2. zenml/cli/base.py +1 -1
  3. zenml/cli/formatter.py +1 -1
  4. zenml/cli/integration.py +1 -1
  5. zenml/cli/model_registry.py +1 -2
  6. zenml/cli/secret.py +1 -2
  7. zenml/cli/service_connectors.py +1 -1
  8. zenml/cli/stack.py +2 -3
  9. zenml/cli/stack_components.py +4 -6
  10. zenml/cli/text_utils.py +1 -1
  11. zenml/cli/utils.py +4 -5
  12. zenml/client.py +1 -4
  13. zenml/constants.py +1 -0
  14. zenml/entrypoints/step_entrypoint_configuration.py +15 -0
  15. zenml/integrations/azure/__init__.py +1 -1
  16. zenml/integrations/azure/azureml_utils.py +1 -1
  17. zenml/integrations/azure/orchestrators/azureml_orchestrator_entrypoint_config.py +0 -5
  18. zenml/integrations/bitbucket/plugins/event_sources/bitbucket_webhook_event_source.py +3 -3
  19. zenml/integrations/databricks/orchestrators/databricks_orchestrator.py +1 -3
  20. zenml/integrations/evidently/metrics.py +2 -2
  21. zenml/integrations/evidently/tests.py +2 -2
  22. zenml/integrations/gcp/service_connectors/gcp_service_connector.py +3 -3
  23. zenml/integrations/github/plugins/event_sources/github_webhook_event_source.py +3 -3
  24. zenml/integrations/s3/utils.py +1 -2
  25. zenml/logger.py +1 -1
  26. zenml/models/v2/base/scoped.py +32 -28
  27. zenml/models/v2/core/artifact.py +86 -2
  28. zenml/models/v2/core/model.py +81 -2
  29. zenml/models/v2/core/pipeline.py +15 -12
  30. zenml/models/v2/core/pipeline_run.py +2 -0
  31. zenml/services/container/container_service.py +1 -1
  32. zenml/stack/stack_component.py +1 -1
  33. zenml/utils/deprecation_utils.py +6 -6
  34. zenml/utils/filesync_model.py +3 -3
  35. zenml/utils/function_utils.py +1 -1
  36. zenml/utils/pipeline_docker_image_builder.py +1 -1
  37. zenml/zen_server/auth.py +2 -5
  38. zenml/zen_server/dashboard/assets/{404-Cqu3EDCm.js → 404-Dfq64Boz.js} +1 -1
  39. zenml/zen_server/dashboard/assets/{@reactflow-D2Y7BWwz.js → @reactflow-BUNIMFeC.js} +1 -1
  40. zenml/zen_server/dashboard/assets/{AlertDialogDropdownItem-BHd71pVS.js → AlertDialogDropdownItem-B73Vs10T.js} +1 -1
  41. zenml/zen_server/dashboard/assets/{CodeSnippet-DIonwetW.js → CodeSnippet-DIJRT2NT.js} +1 -1
  42. zenml/zen_server/dashboard/assets/{CollapsibleCard-CDnC97pB.js → CollapsibleCard-BzUHGZOU.js} +1 -1
  43. zenml/zen_server/dashboard/assets/{Commands-BVEXKAOj.js → Commands-BEGyld4c.js} +1 -1
  44. zenml/zen_server/dashboard/assets/{ComponentBadge-CrRvovox.js → ComponentBadge-xyKiek1s.js} +1 -1
  45. zenml/zen_server/dashboard/assets/{CopyButton-B6wGAhQv.js → CopyButton-DhW-mapu.js} +1 -1
  46. zenml/zen_server/dashboard/assets/{CsvVizualization-CjcT7LMm.js → CsvVizualization-D8oazBiE.js} +1 -1
  47. zenml/zen_server/dashboard/assets/{DeleteAlertDialog-D2ELtM2W.js → DeleteAlertDialog-WkSIIgfy.js} +1 -1
  48. zenml/zen_server/dashboard/assets/{DialogItem-DXIMhBgU.js → DialogItem-Bgroeg29.js} +1 -1
  49. zenml/zen_server/dashboard/assets/{Error-B8uUfTpL.js → Error-CY5tlu17.js} +1 -1
  50. zenml/zen_server/dashboard/assets/{ExecutionStatus-ibAdY-dG.js → ExecutionStatus-G8mjIaeA.js} +1 -1
  51. zenml/zen_server/dashboard/assets/{Helpbox-BfAfhKHw.js → Helpbox-Bb1ed--O.js} +1 -1
  52. zenml/zen_server/dashboard/assets/{Infobox-M_SMOu96.js → Infobox-Da6-76M2.js} +1 -1
  53. zenml/zen_server/dashboard/assets/{InlineAvatar-DBA0a0-a.js → InlineAvatar-DqnZaBNq.js} +1 -1
  54. zenml/zen_server/dashboard/assets/{NestedCollapsible-DpgmEFKw.js → NestedCollapsible-aK5ojKoF.js} +1 -1
  55. zenml/zen_server/dashboard/assets/{Partials-D_ldD9if.js → Partials-CqZp5NMX.js} +1 -1
  56. zenml/zen_server/dashboard/assets/{ProBadge-DQbfFotM.js → ProBadge-B4tRUYve.js} +1 -1
  57. zenml/zen_server/dashboard/assets/{ProCta-Bcpb4rcY.js → ProCta-CZuP29Qz.js} +1 -1
  58. zenml/zen_server/dashboard/assets/{ProviderIcon-BZpgPigN.js → ProviderIcon-Bd7GUQ1_.js} +1 -1
  59. zenml/zen_server/dashboard/assets/{ProviderRadio-DWPnMuQ1.js → ProviderRadio-mstdqzsS.js} +1 -1
  60. zenml/zen_server/dashboard/assets/{RunSelector-DgRGaAc6.js → RunSelector-CsruSB4i.js} +1 -1
  61. zenml/zen_server/dashboard/assets/{RunsBody-KecfSkjY.js → RunsBody-DxxtWVYz.js} +1 -1
  62. zenml/zen_server/dashboard/assets/{SearchField-n-ILHnaP.js → SearchField-D6tPxyqw.js} +1 -1
  63. zenml/zen_server/dashboard/assets/{SecretTooltip-B8MrX5yu.js → SecretTooltip-CLzJIYW_.js} +1 -1
  64. zenml/zen_server/dashboard/assets/{SetPassword-B_IVq_wg.js → SetPassword-Yn50ooBC.js} +1 -1
  65. zenml/zen_server/dashboard/assets/{StackList-TWPBYnkF.js → StackList-U537qoYd.js} +1 -1
  66. zenml/zen_server/dashboard/assets/{Tabs-Rg857zmd.js → Tabs-CNv-eTYM.js} +1 -1
  67. zenml/zen_server/dashboard/assets/{Tick-COg4A-xo.js → Tick-jEIevzVf.js} +1 -1
  68. zenml/zen_server/dashboard/assets/{UpdatePasswordSchemas-C6Aj3hm6.js → UpdatePasswordSchemas-C16GW-kX.js} +1 -1
  69. zenml/zen_server/dashboard/assets/{UsageReason-BTLbx7w4.js → UsageReason-Bf2tzhv1.js} +1 -1
  70. zenml/zen_server/dashboard/assets/{WizardFooter-BCAj69Vj.js → WizardFooter-D6i-AP1K.js} +1 -1
  71. zenml/zen_server/dashboard/assets/{all-pipeline-runs-query-DMXkDrV2.js → all-pipeline-runs-query-DUti43aF.js} +1 -1
  72. zenml/zen_server/dashboard/assets/{create-stack-HfdbhLs4.js → create-stack-Ch2WPs9U.js} +1 -1
  73. zenml/zen_server/dashboard/assets/{delete-run-DZ4hIXff.js → delete-run-Byf9hTjA.js} +1 -1
  74. zenml/zen_server/dashboard/assets/{form-schemas-B0AVEd9b.js → form-schemas-BZqKBPBF.js} +1 -1
  75. zenml/zen_server/dashboard/assets/{index-FO-p0GU7.js → index-CE0aQlv8.js} +3 -3
  76. zenml/zen_server/dashboard/assets/{index-DScjfBRb.js → index-CtdYkjUi.js} +1 -1
  77. zenml/zen_server/dashboard/assets/{index-DPqSWjug.js → index-CyBKZcpO.js} +1 -1
  78. zenml/zen_server/dashboard/assets/{index-I3bKUGUj.js → index-v6gQjDEo.js} +1 -1
  79. zenml/zen_server/dashboard/assets/{login-mutation-BQeo4wTY.js → login-mutation-DNDVp_2H.js} +1 -1
  80. zenml/zen_server/dashboard/assets/{not-found-gAJ5aDdR.js → not-found-Bmup4ctE.js} +1 -1
  81. zenml/zen_server/dashboard/assets/{page-I3nKFGie.js → page--XLMzHrn.js} +1 -1
  82. zenml/zen_server/dashboard/assets/{page-DO1UcqPX.js → page-ANYGfEUL.js} +1 -1
  83. zenml/zen_server/dashboard/assets/{page-AUwiQ14W.js → page-B5Sr8pib.js} +1 -1
  84. zenml/zen_server/dashboard/assets/{page-CcQr8CPP.js → page-BC27C_OI.js} +1 -1
  85. zenml/zen_server/dashboard/assets/{page-zaMqB_ao.js → page-BNxYrN0q.js} +1 -1
  86. zenml/zen_server/dashboard/assets/{page-CiYxgZP_.js → page-BYJfqgLN.js} +1 -1
  87. zenml/zen_server/dashboard/assets/{page-h_Stveon.js → page-B_0XkV48.js} +1 -1
  88. zenml/zen_server/dashboard/assets/{page-R5dx3xGF.js → page-BrmJp1Wt.js} +1 -1
  89. zenml/zen_server/dashboard/assets/page-C2nU3Gxn.js +1 -0
  90. zenml/zen_server/dashboard/assets/{page-Dk32IeZm.js → page-C70wZtV2.js} +1 -1
  91. zenml/zen_server/dashboard/assets/{page-CWxT5K5J.js → page-CHRn1fQm.js} +1 -1
  92. zenml/zen_server/dashboard/assets/{page-M0w-n6vn.js → page-CWr96ZKN.js} +1 -1
  93. zenml/zen_server/dashboard/assets/{page-Ce4Hrjnr.js → page-CXAbSyp9.js} +1 -1
  94. zenml/zen_server/dashboard/assets/{page-D8ObrbH8.js → page-CaeI9ptC.js} +1 -1
  95. zenml/zen_server/dashboard/assets/{page-B_Apk3xg.js → page-Cc8ZEuj4.js} +1 -1
  96. zenml/zen_server/dashboard/assets/{page-BxL4qD4_.js → page-CltCNL0T.js} +1 -1
  97. zenml/zen_server/dashboard/assets/{page-D4wdonLm.js → page-CmlYj7Nl.js} +1 -1
  98. zenml/zen_server/dashboard/assets/{page-DFuAUGt4.js → page-D6Ev5P8V.js} +1 -1
  99. zenml/zen_server/dashboard/assets/{page-u_-ZXBKb.js → page-D9Oh05fl.js} +1 -1
  100. zenml/zen_server/dashboard/assets/{page-DRYXdL5o.js → page-DGlm1RVc.js} +1 -1
  101. zenml/zen_server/dashboard/assets/{page-r8XK5vR7.js → page-DN4BVIOL.js} +1 -1
  102. zenml/zen_server/dashboard/assets/{page-DYEquBC2.js → page-Dif8CWyZ.js} +1 -1
  103. zenml/zen_server/dashboard/assets/{page-BdowiCbr.js → page-DlIi5ThM.js} +1 -1
  104. zenml/zen_server/dashboard/assets/{page-9Y9-gig0.js → page-DoW7YxTu.js} +1 -1
  105. zenml/zen_server/dashboard/assets/{page-BKZYc2Zv.js → page-Dth9X1Ih.js} +1 -1
  106. zenml/zen_server/dashboard/assets/{page-bT5pOvcB.js → page-DweqqCkF.js} +1 -1
  107. zenml/zen_server/dashboard/assets/{page-CXuQufSe.js → page-DyOJ_pq3.js} +1 -1
  108. zenml/zen_server/dashboard/assets/{page-DGazBpuP.js → page-Hn8q9iJZ.js} +1 -1
  109. zenml/zen_server/dashboard/assets/{page-hUqK889I.js → page-IhckKFnD.js} +1 -1
  110. zenml/zen_server/dashboard/assets/{page-BU9FG4sR.js → page-LyZ_l8vR.js} +1 -1
  111. zenml/zen_server/dashboard/assets/{page-Cldq1mpe.js → page-PamGpk0j.js} +1 -1
  112. zenml/zen_server/dashboard/assets/page-PxOWfKgF.js +2 -0
  113. zenml/zen_server/dashboard/assets/{persist-DAUi_3za.js → persist-DeXRG61d.js} +1 -1
  114. zenml/zen_server/dashboard/assets/{persist-AppN1B0J.js → persist-vP0-Xl4f.js} +1 -1
  115. zenml/zen_server/dashboard/assets/{service-BqqeXLEe.js → service-DH_oUqQj.js} +1 -1
  116. zenml/zen_server/dashboard/assets/{sharedSchema-uXN9FLLk.js → sharedSchema-Bw1_Wa7l.js} +1 -1
  117. zenml/zen_server/dashboard/assets/{stack-detail-query-XfZBiBP2.js → stack-detail-query-B_0R_fd6.js} +1 -1
  118. zenml/zen_server/dashboard/assets/{update-server-settings-mutation-BWmgVJwA.js → update-server-settings-mutation-D9qYhfaN.js} +1 -1
  119. zenml/zen_server/dashboard/assets/{url-BLwMbzES.js → url-Dh93fvh0.js} +1 -1
  120. zenml/zen_server/dashboard/index.html +3 -3
  121. zenml/zen_server/deploy/deployer.py +1 -1
  122. zenml/zen_server/rbac/rbac_sql_zen_store.py +3 -1
  123. zenml/zen_server/routers/webhook_endpoints.py +1 -2
  124. zenml/zen_stores/migrations/utils.py +1 -2
  125. zenml/zen_stores/migrations/versions/5330ba58bf20_rename_tables_and_foreign_keys.py +7 -9
  126. zenml/zen_stores/rest_zen_store.py +1 -1
  127. zenml/zen_stores/sql_zen_store.py +9 -3
  128. {zenml_nightly-0.71.0.dev20250109.dist-info → zenml_nightly-0.71.0.dev20250112.dist-info}/METADATA +2 -2
  129. {zenml_nightly-0.71.0.dev20250109.dist-info → zenml_nightly-0.71.0.dev20250112.dist-info}/RECORD +132 -132
  130. zenml/zen_server/dashboard/assets/page-B6XU7yYT.js +0 -2
  131. zenml/zen_server/dashboard/assets/page-Bg8OjTRe.js +0 -1
  132. {zenml_nightly-0.71.0.dev20250109.dist-info → zenml_nightly-0.71.0.dev20250112.dist-info}/LICENSE +0 -0
  133. {zenml_nightly-0.71.0.dev20250109.dist-info → zenml_nightly-0.71.0.dev20250112.dist-info}/WHEEL +0 -0
  134. {zenml_nightly-0.71.0.dev20250109.dist-info → zenml_nightly-0.71.0.dev20250112.dist-info}/entry_points.txt +0 -0
@@ -1 +1 @@
1
- import{r as i,j as e}from"./@radix-DeK6qiuw.js";import{S as o,f as n,r as c,aF as d}from"./index-FO-p0GU7.js";import{S as h}from"./StackList-TWPBYnkF.js";import{p as m,c as j}from"./persist-DAUi_3za.js";import{p as l,c as k}from"./persist-AppN1B0J.js";import{I as p}from"./Infobox-M_SMOu96.js";import{s as u}from"./index-DScjfBRb.js";import{a as f}from"./@tanstack-DT5WLu9C.js";import{L as x}from"./@react-router-B3Z5rLr2.js";import"./@reactflow-D2Y7BWwz.js";import"./plus-tf1V2hTJ.js";import"./refresh-BjOeWlEq.js";import"./SearchField-n-ILHnaP.js";import"./dots-horizontal-otGBOSDJ.js";import"./chevron-right-double-D7ojK9Co.js";import"./url-BLwMbzES.js";import"./index-Uu49AX48.js";import"./CopyButton-B6wGAhQv.js";import"./copy-C8XQA2Ug.js";import"./DisplayDate-CDMUcQHS.js";import"./InlineAvatar-DBA0a0-a.js";import"./CodeSnippet-DIonwetW.js";import"./CollapsibleCard-CDnC97pB.js";import"./chevron-down-6JyMkfjR.js";import"./components-Br2ezRib.js";import"./NumberBox-Dtp3J6g5.js";import"./ComponentBadge-CrRvovox.js";import"./stack-detail-query-XfZBiBP2.js";import"./layout-BtHBmE4w.js";import"./rocket-DjT2cDvG.js";import"./DialogItem-DXIMhBgU.js";import"./trash-arLUMWMS.js";import"./AlertDialogDropdownItem-BHd71pVS.js";import"./sharedSchema-uXN9FLLk.js";function w({setHasResumeableStack:a}){const{success:t,data:s}=m(),r=f({...u.stackDeploymentStack({provider:(s==null?void 0:s.provider)||"aws",stack_name:(s==null?void 0:s.stackName)||"",date_start:s==null?void 0:s.timestamp}),enabled:t,throwOnError:!0});return i.useEffect(()=>{r.data&&(j(),a(!1))},[r.data]),!t||r.isError?null:r.isPending?e.jsx(o,{className:"h-[70px] w-full"}):e.jsx(p,{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(x,{to:c.stacks.create.newInfra,children:e.jsx("span",{children:"Review Stack"})})})})]})})}function S({setHasResumeableTerraform:a}){const{success:t,data:s}=l(),r=f({...u.stackDeploymentStack({provider:(s==null?void 0:s.provider)||"aws",stack_name:(s==null?void 0:s.stackName)||"",date_start:s==null?void 0:s.timestamp}),enabled:t,throwOnError:!0});return i.useEffect(()=>{r.data&&(k(),a(!1))},[r.data]),!t||r.isError?null:r.isPending?e.jsx(o,{className:"h-[70px] w-full"}):e.jsx(p,{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 Terraform 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(x,{to:c.stacks.create.terraform,children:e.jsx("span",{children:"Review Stack"})})})})]})})}function v(){const[a,t]=i.useState(m().success),[s,r]=i.useState(l().success);return e.jsxs("div",{className:"space-y-5",children:[a&&e.jsx(w,{setHasResumeableStack:t}),s&&e.jsx(S,{setHasResumeableTerraform:r})]})}function re(){const{setTourState:a,tourState:{tourActive:t}}=d();return i.useEffect(()=>{t&&a(s=>({...s,run:!0,stepIndex:s.stepIndex}))},[t]),e.jsxs("div",{className:"space-y-5",children:[e.jsx(v,{}),e.jsx(h,{})]})}export{re as default};
1
+ import{r as i,j as e}from"./@radix-DeK6qiuw.js";import{S as o,f as n,r as c,aF as d}from"./index-CE0aQlv8.js";import{S as h}from"./StackList-U537qoYd.js";import{p as m,c as j}from"./persist-DeXRG61d.js";import{p as l,c as k}from"./persist-vP0-Xl4f.js";import{I as p}from"./Infobox-Da6-76M2.js";import{s as u}from"./index-CtdYkjUi.js";import{a as f}from"./@tanstack-DT5WLu9C.js";import{L as x}from"./@react-router-B3Z5rLr2.js";import"./@reactflow-BUNIMFeC.js";import"./plus-tf1V2hTJ.js";import"./refresh-BjOeWlEq.js";import"./SearchField-D6tPxyqw.js";import"./dots-horizontal-otGBOSDJ.js";import"./chevron-right-double-D7ojK9Co.js";import"./url-Dh93fvh0.js";import"./index-Uu49AX48.js";import"./CopyButton-DhW-mapu.js";import"./copy-C8XQA2Ug.js";import"./DisplayDate-CDMUcQHS.js";import"./InlineAvatar-DqnZaBNq.js";import"./CodeSnippet-DIJRT2NT.js";import"./CollapsibleCard-BzUHGZOU.js";import"./chevron-down-6JyMkfjR.js";import"./components-Br2ezRib.js";import"./NumberBox-Dtp3J6g5.js";import"./ComponentBadge-xyKiek1s.js";import"./stack-detail-query-B_0R_fd6.js";import"./layout-BtHBmE4w.js";import"./rocket-DjT2cDvG.js";import"./DialogItem-Bgroeg29.js";import"./trash-arLUMWMS.js";import"./AlertDialogDropdownItem-B73Vs10T.js";import"./sharedSchema-Bw1_Wa7l.js";function w({setHasResumeableStack:a}){const{success:t,data:s}=m(),r=f({...u.stackDeploymentStack({provider:(s==null?void 0:s.provider)||"aws",stack_name:(s==null?void 0:s.stackName)||"",date_start:s==null?void 0:s.timestamp}),enabled:t,throwOnError:!0});return i.useEffect(()=>{r.data&&(j(),a(!1))},[r.data]),!t||r.isError?null:r.isPending?e.jsx(o,{className:"h-[70px] w-full"}):e.jsx(p,{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(x,{to:c.stacks.create.newInfra,children:e.jsx("span",{children:"Review Stack"})})})})]})})}function S({setHasResumeableTerraform:a}){const{success:t,data:s}=l(),r=f({...u.stackDeploymentStack({provider:(s==null?void 0:s.provider)||"aws",stack_name:(s==null?void 0:s.stackName)||"",date_start:s==null?void 0:s.timestamp}),enabled:t,throwOnError:!0});return i.useEffect(()=>{r.data&&(k(),a(!1))},[r.data]),!t||r.isError?null:r.isPending?e.jsx(o,{className:"h-[70px] w-full"}):e.jsx(p,{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 Terraform 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(x,{to:c.stacks.create.terraform,children:e.jsx("span",{children:"Review Stack"})})})})]})})}function v(){const[a,t]=i.useState(m().success),[s,r]=i.useState(l().success);return e.jsxs("div",{className:"space-y-5",children:[a&&e.jsx(w,{setHasResumeableStack:t}),s&&e.jsx(S,{setHasResumeableTerraform:r})]})}function re(){const{setTourState:a,tourState:{tourActive:t}}=d();return i.useEffect(()=>{t&&a(s=>({...s,run:!0,stepIndex:s.stepIndex}))},[t]),e.jsxs("div",{className:"space-y-5",children:[e.jsx(v,{}),e.jsx(h,{})]})}export{re as default};
@@ -1 +1 @@
1
- import{r as c,j as e}from"./@radix-DeK6qiuw.js";import{S as g}from"./refresh-BjOeWlEq.js";import{c as T}from"./index-I3bKUGUj.js";import{a as w}from"./@tanstack-DT5WLu9C.js";import{K as k,r as j,T as L,E as F,G as E,H as _,f as d,L as y,S as o,A as R,b as H,Z as z,$ as A,a0 as D,W as M,a7 as Q,J as B,as as $,z as p}from"./index-FO-p0GU7.js";import{C as x}from"./CopyButton-B6wGAhQv.js";import{D as v}from"./DisplayDate-CDMUcQHS.js";import{I as P}from"./InlineAvatar-DBA0a0-a.js";import{S as I}from"./chevron-right-double-D7ojK9Co.js";import{L as f,c as U}from"./@react-router-B3Z5rLr2.js";import{S as Z,a as q}from"./Tabs-Rg857zmd.js";import{u as G}from"./all-pipeline-runs-query-DMXkDrV2.js";import{S as N,P as b}from"./SearchField-n-ILHnaP.js";import{g as K,E as V}from"./ExecutionStatus-ibAdY-dG.js";import{s as J}from"./index-DScjfBRb.js";import{C as O}from"./ComponentBadge-CrRvovox.js";import{s as C}from"./url-BLwMbzES.js";import"./@reactflow-D2Y7BWwz.js";import"./copy-C8XQA2Ug.js";import"./chevron-down-6JyMkfjR.js";import"./NestedCollapsible-DpgmEFKw.js";import"./CodeSnippet-DIonwetW.js";import"./CollapsibleCard-CDnC97pB.js";import"./dots-horizontal-otGBOSDJ.js";import"./index-Uu49AX48.js";import"./check-circle-jNbX5-sR.js";import"./stack-detail-query-XfZBiBP2.js";import"./layout-BtHBmE4w.js";import"./rocket-DjT2cDvG.js";const W=t=>c.createElement("svg",{viewBox:"0 0 24 24",fill:"black",xmlns:"http://www.w3.org/2000/svg",...t},c.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M15 4C14.4477 4 14 3.55228 14 3C14 2.44772 14.4477 2 15 2H21C21.5523 2 22 2.44772 22 3V9C22 9.55228 21.5523 10 21 10C20.4477 10 20 9.55228 20 9V5.41421L14.7071 10.7071C14.3166 11.0976 13.6834 11.0976 13.2929 10.7071C12.9024 10.3166 12.9024 9.68342 13.2929 9.29289L18.5858 4H15ZM10.7071 13.2929C11.0976 13.6834 11.0976 14.3166 10.7071 14.7071L5.41421 20H9C9.55228 20 10 20.4477 10 21C10 21.5523 9.55228 22 9 22H3C2.73478 22 2.48043 21.8946 2.29289 21.7071C2.10536 21.5196 2 21.2652 2 21L2 15C2 14.4477 2.44772 14 3 14C3.55229 14 4 14.4477 4 15L4 18.5858L9.29289 13.2929C9.68342 12.9024 10.3166 12.9024 10.7071 13.2929Z"})),X=[{id:"name",header:"Run",accessorFn:t=>{var s;return{id:t.id,name:t.name,status:(s=t.body)==null?void 0:s.status}},cell:({getValue:t})=>{const{name:s,status:a,id:r}=t();return e.jsxs("div",{className:"group/copybutton flex items-center gap-2",children:[e.jsx(k,{className:`h-5 w-5 ${K(a)}`}),e.jsxs("div",{children:[e.jsxs("div",{className:"flex items-center gap-1",children:[e.jsx(f,{to:j.runs.detail(r),className:"flex items-center gap-1",children:e.jsx("span",{className:"text-text-md font-semibold text-theme-text-primary",children:s})}),e.jsx(L,{children:e.jsxs(F,{children:[e.jsx(E,{className:"hover:text-theme-text-brand hover:underline",children:e.jsx(V,{status:a})}),e.jsx(_,{className:"z-20 capitalize",children:a})]})}),e.jsx(x,{copyText:s})]}),e.jsxs(f,{to:j.runs.detail(r),className:"flex items-center gap-1",children:[e.jsx("p",{className:"text-text-xs text-theme-text-secondary",children:r.split("-")[0]}),e.jsx(x,{copyText:r})]})]})]})}},{id:"created-at",header:"Created at",accessorFn:t=>{var s;return{date:(s=t.body)==null?void 0:s.created}},cell:({getValue:t})=>{const{date:s}=t();return e.jsx("div",{className:"text-text-sm text-theme-text-secondary",children:e.jsx(v,{dateString:s})})}}];function Y({componentId:t}){const[s,a]=c.useState(void 0),[r,n]=c.useState(1),h={name:s,page:r},{data:i,refetch:l}=G({params:{...h,stack_component:t,sort_by:"desc:updated"}});return e.jsx("section",{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("div",{className:"flex items-center gap-2",children:e.jsx(N,{inMemoryHandler:m=>{n(1),m||a(void 0),a(`contains:${m}`)},searchParams:{}})}),e.jsx("div",{className:"flex items-center justify-between gap-2",children:e.jsxs(d,{intent:"primary",emphasis:"subtle",size:"md",onClick:()=>l(),children:[e.jsx(g,{className:"h-5 w-5 fill-theme-text-brand"}),"Refresh"]})})]}),e.jsxs("div",{className:"flex flex-col items-center gap-5",children:[e.jsx("div",{className:"w-full",children:i?e.jsx(y,{columns:X,data:i.items}):e.jsx(o,{className:"h-[500px] w-full"})}),i?i.total_pages>1&&e.jsx(b,{inMemoryHandler:n,searchParams:{},paginate:i}):e.jsx(o,{className:"h-[36px] w-[300px]"})]})]})})}function ee(){return[{id:"name",header:"Stack",accessorFn:t=>t.name,cell:({row:t})=>{const{name:s,id:a}=t.original;return e.jsxs("div",{className:"group/copybutton flex items-center gap-2",children:[e.jsx(R,{type:"square",size:"md",children:e.jsx(H,{size:"md",children:s[0]})}),e.jsxs("div",{children:[e.jsx("div",{className:"flex items-center gap-1",children:e.jsx("h2",{className:"text-text-md font-semibold",children:s})}),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(x,{copyText:a})]})]})]})}},{id:"author",header:"Author",accessorFn:t=>{var s;return{author:(s=t.body)==null?void 0:s.user}},cell:({getValue:t})=>{const{author:s}=t();return s?e.jsx(P,{username:s.name||"default"}):null}},{id:"created",header:"Created at",accessorFn:t=>{var s;return(s=t.body)==null?void 0:s.created},cell:({getValue:t})=>e.jsx("p",{className:"text-text-sm text-theme-text-secondary",children:e.jsx(v,{dateString:t()})})}]}function se({componentId:t}){const[s,a]=c.useState(void 0),[r,n]=c.useState(1),h={name:s,page:r},{refetch:i,data:l}=w(J.stackList({...h,component_id:t,sort_by:"desc:updated"}));return e.jsx("section",{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("div",{className:"flex items-center gap-2",children:e.jsx(N,{inMemoryHandler:m=>{n(1),m||a(void 0),a(`contains:${m}`)},searchParams:{}})}),e.jsx("div",{className:"flex items-center justify-between gap-2",children:e.jsxs(d,{intent:"primary",emphasis:"subtle",size:"md",onClick:()=>i(),children:[e.jsx(g,{className:"h-5 w-5 fill-theme-text-brand"}),"Refresh"]})})]}),e.jsxs("div",{className:"flex flex-col items-center gap-5",children:[e.jsx("div",{className:"w-full",children:l?e.jsx(y,{columns:ee(),data:l.items}):e.jsx(o,{className:"h-[500px] w-full"})}),l?l.total_pages>1&&e.jsx(b,{inMemoryHandler:n,searchParams:{},paginate:l}):e.jsx(o,{className:"h-[36px] w-[300px]"})]})]})})}function S({children:t,onOpenChange:s,componentId:a}){return e.jsxs(z,{onOpenChange:s,children:[e.jsx(A,{asChild:!0,children:t}),e.jsxs(D,{className:"w-[1000px] overflow-y-auto",children:[e.jsxs("div",{className:"flex h-9 items-center gap-1 border-b border-theme-border-moderate bg-theme-surface-primary px-4 py-3",children:[e.jsx(d,{asChild:!0,intent:"secondary",emphasis:"minimal",children:e.jsxs(M,{className:"focus:outline-none focus:ring-2 focus:ring-offset-2 disabled:pointer-events-none",children:[e.jsx(I,{className:"h-5 w-5 fill-neutral-500"}),e.jsx("span",{className:"sr-only",children:"Close"})]})}),e.jsx(d,{intent:"secondary",asChild:!0,emphasis:"minimal",children:e.jsxs(f,{to:j.components.detail(a),children:[e.jsx(W,{className:"h-5 w-5 shrink-0 fill-neutral-500"}),e.jsx("span",{className:"sr-only",children:"Expand component detail to page"})]})})]}),e.jsxs("div",{className:"@container",children:[e.jsx(Z,{isPanel:!0,componentId:a}),e.jsx(q,{isPanel:!0,runsTabContent:e.jsx(Y,{componentId:a}),stacksTabContent:e.jsx(se,{componentId:a}),componentId:a})]})]})]})}function te(){return[{id:"name",header:"Component",accessorKey:"name",cell:({row:t})=>{var r;const s=t.original.id,a=t.original.name;return e.jsxs("div",{className:"group/copybutton flex items-center gap-2",children:[e.jsx("img",{width:32,height:32,src:C(((r=t.original.body)==null?void 0:r.logo_url)||""),alt:"Flavor Icon"}),e.jsxs("div",{children:[e.jsxs("div",{className:"flex items-center gap-1",children:[e.jsx(S,{componentId:s,children:e.jsx("button",{children:e.jsx("h2",{className:"text-text-md font-semibold",children:a})})}),e.jsx(x,{copyText:a})]}),e.jsxs("div",{className:"flex items-center gap-1",children:[e.jsx(S,{componentId:s,children:e.jsx("button",{className:"text-text-xs text-theme-text-secondary",children:s.split("-")[0]})}),e.jsx(x,{copyText:s})]})]})]})}},{id:"type",header:"Component Type",accessorFn:t=>{var s;return(s=t.body)==null?void 0:s.type},cell:({row:t})=>{var a;const s=((a=t.original.body)==null?void 0:a.type)||"orchestrator";return e.jsx(O,{type:s,children:Q(s)})}},{id:"flavor",header:"Flavor",accessorFn:t=>{var s;return(s=t.body)==null?void 0:s.flavor_name},cell:({row:t})=>{var a,r;const s=(a=t.original.body)==null?void 0:a.flavor_name;return e.jsxs(B,{rounded:!1,className:"w-fit gap-1 text-theme-text-primary",color:"grey",emphasis:"minimal",children:[e.jsx("img",{width:20,height:20,src:C(((r=t.original.body)==null?void 0:r.logo_url)||""),alt:"Flavor Icon of Component"}),e.jsx("p",{children:s})]})}},{id:"author",header:"Author",accessorFn:t=>{var s,a;return(a=(s=t.body)==null?void 0:s.user)==null?void 0:a.name},cell:({row:t})=>{var a;const s=(a=t.original.body)==null?void 0:a.user;return s?e.jsx(P,{username:$(s)}):null}},{id:"created",header:"Created at",accessorFn:t=>{var s;return(s=t.body)==null?void 0:s.created},cell:({row:t})=>{var s;return e.jsx("p",{className:"text-text-sm text-theme-text-secondary",children:e.jsx(v,{dateString:((s=t.original.body)==null?void 0:s.created)||""})})}}]}const u=1,ae=p.object({page:p.coerce.number().min(u).optional().default(u).catch(u),name:p.string().optional(),operator:p.enum(["and","or"]).optional()});function re(){const[t]=U(),{page:s,name:a,operator:r}=ae.parse({page:t.get("page")||void 0,name:t.get("name")||void 0});return{page:s,name:a,logical_operator:r}}function ne(){const t=re(),s=w({...T.componentList({...t,sort_by:"desc:updated"}),throwOnError:!0}),a=te();if(s.isError)return null;const{data:r,refetch:n}=s;return e.jsx("section",{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("div",{className:"flex items-center gap-2",children:e.jsx(N,{searchParams:t})}),e.jsx("div",{className:"flex items-center justify-between gap-2",children:e.jsxs(d,{intent:"primary",emphasis:"subtle",size:"md",onClick:()=>n(),children:[e.jsx(g,{className:"h-5 w-5 fill-theme-text-brand"}),"Refresh"]})})]}),e.jsxs("div",{className:"flex flex-col items-center gap-5",children:[e.jsx("div",{className:"w-full",children:r?e.jsx(y,{columns:a,data:r.items}):e.jsx(o,{className:"h-[500px] w-full"})}),r?r.total_pages>1&&e.jsx(b,{searchParams:t,paginate:r}):e.jsx(o,{className:"h-[36px] w-[300px]"})]})]})})}function ze(){return e.jsx(ne,{})}export{ze as default};
1
+ import{r as c,j as e}from"./@radix-DeK6qiuw.js";import{S as g}from"./refresh-BjOeWlEq.js";import{c as T}from"./index-v6gQjDEo.js";import{a as w}from"./@tanstack-DT5WLu9C.js";import{K as k,r as j,T as L,E as F,G as E,H as _,f as d,L as y,S as o,A as R,b as H,Z as z,$ as A,a0 as D,W as M,a7 as Q,J as B,as as $,z as p}from"./index-CE0aQlv8.js";import{C as x}from"./CopyButton-DhW-mapu.js";import{D as v}from"./DisplayDate-CDMUcQHS.js";import{I as P}from"./InlineAvatar-DqnZaBNq.js";import{S as I}from"./chevron-right-double-D7ojK9Co.js";import{L as f,c as U}from"./@react-router-B3Z5rLr2.js";import{S as Z,a as q}from"./Tabs-CNv-eTYM.js";import{u as G}from"./all-pipeline-runs-query-DUti43aF.js";import{S as N,P as b}from"./SearchField-D6tPxyqw.js";import{g as K,E as V}from"./ExecutionStatus-G8mjIaeA.js";import{s as J}from"./index-CtdYkjUi.js";import{C as O}from"./ComponentBadge-xyKiek1s.js";import{s as C}from"./url-Dh93fvh0.js";import"./@reactflow-BUNIMFeC.js";import"./copy-C8XQA2Ug.js";import"./chevron-down-6JyMkfjR.js";import"./NestedCollapsible-aK5ojKoF.js";import"./CodeSnippet-DIJRT2NT.js";import"./CollapsibleCard-BzUHGZOU.js";import"./dots-horizontal-otGBOSDJ.js";import"./index-Uu49AX48.js";import"./check-circle-jNbX5-sR.js";import"./stack-detail-query-B_0R_fd6.js";import"./layout-BtHBmE4w.js";import"./rocket-DjT2cDvG.js";const W=t=>c.createElement("svg",{viewBox:"0 0 24 24",fill:"black",xmlns:"http://www.w3.org/2000/svg",...t},c.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M15 4C14.4477 4 14 3.55228 14 3C14 2.44772 14.4477 2 15 2H21C21.5523 2 22 2.44772 22 3V9C22 9.55228 21.5523 10 21 10C20.4477 10 20 9.55228 20 9V5.41421L14.7071 10.7071C14.3166 11.0976 13.6834 11.0976 13.2929 10.7071C12.9024 10.3166 12.9024 9.68342 13.2929 9.29289L18.5858 4H15ZM10.7071 13.2929C11.0976 13.6834 11.0976 14.3166 10.7071 14.7071L5.41421 20H9C9.55228 20 10 20.4477 10 21C10 21.5523 9.55228 22 9 22H3C2.73478 22 2.48043 21.8946 2.29289 21.7071C2.10536 21.5196 2 21.2652 2 21L2 15C2 14.4477 2.44772 14 3 14C3.55229 14 4 14.4477 4 15L4 18.5858L9.29289 13.2929C9.68342 12.9024 10.3166 12.9024 10.7071 13.2929Z"})),X=[{id:"name",header:"Run",accessorFn:t=>{var s;return{id:t.id,name:t.name,status:(s=t.body)==null?void 0:s.status}},cell:({getValue:t})=>{const{name:s,status:a,id:r}=t();return e.jsxs("div",{className:"group/copybutton flex items-center gap-2",children:[e.jsx(k,{className:`h-5 w-5 ${K(a)}`}),e.jsxs("div",{children:[e.jsxs("div",{className:"flex items-center gap-1",children:[e.jsx(f,{to:j.runs.detail(r),className:"flex items-center gap-1",children:e.jsx("span",{className:"text-text-md font-semibold text-theme-text-primary",children:s})}),e.jsx(L,{children:e.jsxs(F,{children:[e.jsx(E,{className:"hover:text-theme-text-brand hover:underline",children:e.jsx(V,{status:a})}),e.jsx(_,{className:"z-20 capitalize",children:a})]})}),e.jsx(x,{copyText:s})]}),e.jsxs(f,{to:j.runs.detail(r),className:"flex items-center gap-1",children:[e.jsx("p",{className:"text-text-xs text-theme-text-secondary",children:r.split("-")[0]}),e.jsx(x,{copyText:r})]})]})]})}},{id:"created-at",header:"Created at",accessorFn:t=>{var s;return{date:(s=t.body)==null?void 0:s.created}},cell:({getValue:t})=>{const{date:s}=t();return e.jsx("div",{className:"text-text-sm text-theme-text-secondary",children:e.jsx(v,{dateString:s})})}}];function Y({componentId:t}){const[s,a]=c.useState(void 0),[r,n]=c.useState(1),h={name:s,page:r},{data:i,refetch:l}=G({params:{...h,stack_component:t,sort_by:"desc:updated"}});return e.jsx("section",{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("div",{className:"flex items-center gap-2",children:e.jsx(N,{inMemoryHandler:m=>{n(1),m||a(void 0),a(`contains:${m}`)},searchParams:{}})}),e.jsx("div",{className:"flex items-center justify-between gap-2",children:e.jsxs(d,{intent:"primary",emphasis:"subtle",size:"md",onClick:()=>l(),children:[e.jsx(g,{className:"h-5 w-5 fill-theme-text-brand"}),"Refresh"]})})]}),e.jsxs("div",{className:"flex flex-col items-center gap-5",children:[e.jsx("div",{className:"w-full",children:i?e.jsx(y,{columns:X,data:i.items}):e.jsx(o,{className:"h-[500px] w-full"})}),i?i.total_pages>1&&e.jsx(b,{inMemoryHandler:n,searchParams:{},paginate:i}):e.jsx(o,{className:"h-[36px] w-[300px]"})]})]})})}function ee(){return[{id:"name",header:"Stack",accessorFn:t=>t.name,cell:({row:t})=>{const{name:s,id:a}=t.original;return e.jsxs("div",{className:"group/copybutton flex items-center gap-2",children:[e.jsx(R,{type:"square",size:"md",children:e.jsx(H,{size:"md",children:s[0]})}),e.jsxs("div",{children:[e.jsx("div",{className:"flex items-center gap-1",children:e.jsx("h2",{className:"text-text-md font-semibold",children:s})}),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(x,{copyText:a})]})]})]})}},{id:"author",header:"Author",accessorFn:t=>{var s;return{author:(s=t.body)==null?void 0:s.user}},cell:({getValue:t})=>{const{author:s}=t();return s?e.jsx(P,{username:s.name||"default"}):null}},{id:"created",header:"Created at",accessorFn:t=>{var s;return(s=t.body)==null?void 0:s.created},cell:({getValue:t})=>e.jsx("p",{className:"text-text-sm text-theme-text-secondary",children:e.jsx(v,{dateString:t()})})}]}function se({componentId:t}){const[s,a]=c.useState(void 0),[r,n]=c.useState(1),h={name:s,page:r},{refetch:i,data:l}=w(J.stackList({...h,component_id:t,sort_by:"desc:updated"}));return e.jsx("section",{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("div",{className:"flex items-center gap-2",children:e.jsx(N,{inMemoryHandler:m=>{n(1),m||a(void 0),a(`contains:${m}`)},searchParams:{}})}),e.jsx("div",{className:"flex items-center justify-between gap-2",children:e.jsxs(d,{intent:"primary",emphasis:"subtle",size:"md",onClick:()=>i(),children:[e.jsx(g,{className:"h-5 w-5 fill-theme-text-brand"}),"Refresh"]})})]}),e.jsxs("div",{className:"flex flex-col items-center gap-5",children:[e.jsx("div",{className:"w-full",children:l?e.jsx(y,{columns:ee(),data:l.items}):e.jsx(o,{className:"h-[500px] w-full"})}),l?l.total_pages>1&&e.jsx(b,{inMemoryHandler:n,searchParams:{},paginate:l}):e.jsx(o,{className:"h-[36px] w-[300px]"})]})]})})}function S({children:t,onOpenChange:s,componentId:a}){return e.jsxs(z,{onOpenChange:s,children:[e.jsx(A,{asChild:!0,children:t}),e.jsxs(D,{className:"w-[1000px] overflow-y-auto",children:[e.jsxs("div",{className:"flex h-9 items-center gap-1 border-b border-theme-border-moderate bg-theme-surface-primary px-4 py-3",children:[e.jsx(d,{asChild:!0,intent:"secondary",emphasis:"minimal",children:e.jsxs(M,{className:"focus:outline-none focus:ring-2 focus:ring-offset-2 disabled:pointer-events-none",children:[e.jsx(I,{className:"h-5 w-5 fill-neutral-500"}),e.jsx("span",{className:"sr-only",children:"Close"})]})}),e.jsx(d,{intent:"secondary",asChild:!0,emphasis:"minimal",children:e.jsxs(f,{to:j.components.detail(a),children:[e.jsx(W,{className:"h-5 w-5 shrink-0 fill-neutral-500"}),e.jsx("span",{className:"sr-only",children:"Expand component detail to page"})]})})]}),e.jsxs("div",{className:"@container",children:[e.jsx(Z,{isPanel:!0,componentId:a}),e.jsx(q,{isPanel:!0,runsTabContent:e.jsx(Y,{componentId:a}),stacksTabContent:e.jsx(se,{componentId:a}),componentId:a})]})]})]})}function te(){return[{id:"name",header:"Component",accessorKey:"name",cell:({row:t})=>{var r;const s=t.original.id,a=t.original.name;return e.jsxs("div",{className:"group/copybutton flex items-center gap-2",children:[e.jsx("img",{width:32,height:32,src:C(((r=t.original.body)==null?void 0:r.logo_url)||""),alt:"Flavor Icon"}),e.jsxs("div",{children:[e.jsxs("div",{className:"flex items-center gap-1",children:[e.jsx(S,{componentId:s,children:e.jsx("button",{children:e.jsx("h2",{className:"text-text-md font-semibold",children:a})})}),e.jsx(x,{copyText:a})]}),e.jsxs("div",{className:"flex items-center gap-1",children:[e.jsx(S,{componentId:s,children:e.jsx("button",{className:"text-text-xs text-theme-text-secondary",children:s.split("-")[0]})}),e.jsx(x,{copyText:s})]})]})]})}},{id:"type",header:"Component Type",accessorFn:t=>{var s;return(s=t.body)==null?void 0:s.type},cell:({row:t})=>{var a;const s=((a=t.original.body)==null?void 0:a.type)||"orchestrator";return e.jsx(O,{type:s,children:Q(s)})}},{id:"flavor",header:"Flavor",accessorFn:t=>{var s;return(s=t.body)==null?void 0:s.flavor_name},cell:({row:t})=>{var a,r;const s=(a=t.original.body)==null?void 0:a.flavor_name;return e.jsxs(B,{rounded:!1,className:"w-fit gap-1 text-theme-text-primary",color:"grey",emphasis:"minimal",children:[e.jsx("img",{width:20,height:20,src:C(((r=t.original.body)==null?void 0:r.logo_url)||""),alt:"Flavor Icon of Component"}),e.jsx("p",{children:s})]})}},{id:"author",header:"Author",accessorFn:t=>{var s,a;return(a=(s=t.body)==null?void 0:s.user)==null?void 0:a.name},cell:({row:t})=>{var a;const s=(a=t.original.body)==null?void 0:a.user;return s?e.jsx(P,{username:$(s)}):null}},{id:"created",header:"Created at",accessorFn:t=>{var s;return(s=t.body)==null?void 0:s.created},cell:({row:t})=>{var s;return e.jsx("p",{className:"text-text-sm text-theme-text-secondary",children:e.jsx(v,{dateString:((s=t.original.body)==null?void 0:s.created)||""})})}}]}const u=1,ae=p.object({page:p.coerce.number().min(u).optional().default(u).catch(u),name:p.string().optional(),operator:p.enum(["and","or"]).optional()});function re(){const[t]=U(),{page:s,name:a,operator:r}=ae.parse({page:t.get("page")||void 0,name:t.get("name")||void 0});return{page:s,name:a,logical_operator:r}}function ne(){const t=re(),s=w({...T.componentList({...t,sort_by:"desc:updated"}),throwOnError:!0}),a=te();if(s.isError)return null;const{data:r,refetch:n}=s;return e.jsx("section",{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("div",{className:"flex items-center gap-2",children:e.jsx(N,{searchParams:t})}),e.jsx("div",{className:"flex items-center justify-between gap-2",children:e.jsxs(d,{intent:"primary",emphasis:"subtle",size:"md",onClick:()=>n(),children:[e.jsx(g,{className:"h-5 w-5 fill-theme-text-brand"}),"Refresh"]})})]}),e.jsxs("div",{className:"flex flex-col items-center gap-5",children:[e.jsx("div",{className:"w-full",children:r?e.jsx(y,{columns:a,data:r.items}):e.jsx(o,{className:"h-[500px] w-full"})}),r?r.total_pages>1&&e.jsx(b,{searchParams:t,paginate:r}):e.jsx(o,{className:"h-[36px] w-[300px]"})]})]})})}function ze(){return e.jsx(ne,{})}export{ze as default};
@@ -1 +1 @@
1
- import{j as e}from"./@radix-DeK6qiuw.js";import{u as m,S as c,A as x,a as d,g as f,b as u,r,c as v,d as h,m as p,as as g}from"./index-FO-p0GU7.js";import{a as j,h as N,O as b}from"./@react-router-B3Z5rLr2.js";import{I as w}from"./InlineAvatar-DBA0a0-a.js";import"./@tanstack-DT5WLu9C.js";import"./@reactflow-D2Y7BWwz.js";function y({children:s,isActiveOverride:t,...a}){const n=j(),i=t?t(n.pathname):!1;return e.jsx(N,{...a,className:({isActive:l})=>` ${i||l?"bg-primary-50 text-theme-text-brand":"hover:bg-neutral-200"} block rounded-md px-4 py-1 text-text-sm font-semibold `,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(y,{end:!0,to:t.href,isActiveOverride:t.isActiveOverride,children:t.name})},t.name))})})}function S(){var n,i,l;const{data:s,isError:t,isPending:a}=m({throwOnError:!0});return a?e.jsx(c,{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(x,{size:"md",type:"square",children:[e.jsx(d,{src:f(((n=s.body)==null?void 0:n.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:(l=s.body)==null?void 0:l.server_name})]})}function A(){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,isActiveOverride:a=>a.startsWith(r.settings.secrets.overview)},{name:"Connectors",href:r.settings.connectors.overview},{name:"Service Accounts",href:r.settings.service_accounts.overview,isActiveOverride:a=>a.startsWith(r.settings.service_accounts.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 O(){const{data:s,isPending:t,isError:a}=v();return t?e.jsx(c,{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(h,{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.29.0"]})]})}function D(){const{data:s}=p();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(S,{}),e.jsx(A,{})]}),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(w,{username:g(s)})]}):e.jsx(c,{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(O,{})]})]}),e.jsx("div",{className:"w-full",children:e.jsx(b,{})})]})}export{D as default};
1
+ import{j as e}from"./@radix-DeK6qiuw.js";import{u as m,S as c,A as x,a as d,g as f,b as u,r,c as v,d as h,m as p,as as g}from"./index-CE0aQlv8.js";import{a as j,h as N,O as b}from"./@react-router-B3Z5rLr2.js";import{I as w}from"./InlineAvatar-DqnZaBNq.js";import"./@tanstack-DT5WLu9C.js";import"./@reactflow-BUNIMFeC.js";function y({children:s,isActiveOverride:t,...a}){const n=j(),i=t?t(n.pathname):!1;return e.jsx(N,{...a,className:({isActive:l})=>` ${i||l?"bg-primary-50 text-theme-text-brand":"hover:bg-neutral-200"} block rounded-md px-4 py-1 text-text-sm font-semibold `,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(y,{end:!0,to:t.href,isActiveOverride:t.isActiveOverride,children:t.name})},t.name))})})}function S(){var n,i,l;const{data:s,isError:t,isPending:a}=m({throwOnError:!0});return a?e.jsx(c,{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(x,{size:"md",type:"square",children:[e.jsx(d,{src:f(((n=s.body)==null?void 0:n.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:(l=s.body)==null?void 0:l.server_name})]})}function A(){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,isActiveOverride:a=>a.startsWith(r.settings.secrets.overview)},{name:"Connectors",href:r.settings.connectors.overview},{name:"Service Accounts",href:r.settings.service_accounts.overview,isActiveOverride:a=>a.startsWith(r.settings.service_accounts.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 O(){const{data:s,isPending:t,isError:a}=v();return t?e.jsx(c,{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(h,{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.29.1"]})]})}function D(){const{data:s}=p();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(S,{}),e.jsx(A,{})]}),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(w,{username:g(s)})]}):e.jsx(c,{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(O,{})]})]}),e.jsx("div",{className:"w-full",children:e.jsx(b,{})})]})}export{D as default};
@@ -1 +1 @@
1
- import{r as f,j as e}from"./@radix-DeK6qiuw.js";import{S as X,u as y,C as v,P as N,a as $,W as ee,L as te}from"./ProviderRadio-DWPnMuQ1.js";import{u,R as se,a as re,E as ae,D as F,G as oe,A as ne,C as O,b as ie,N as ce}from"./Partials-D_ldD9if.js";import{S as V,B as Y,aE as de,f as le,r as T}from"./index-FO-p0GU7.js";import{c as me,b as ue}from"./@react-router-B3Z5rLr2.js";import{I as G}from"./Infobox-M_SMOu96.js";import{t as H}from"./zod-BwEbpOxH.js";import{u as Q,F as pe}from"./index.esm-Dy6Z9Ung.js";import{a as xe,c as q,b as fe,p as he}from"./persist-DAUi_3za.js";import{C as h}from"./ProviderIcon-BZpgPigN.js";import{s as J}from"./index-DScjfBRb.js";import{a as K}from"./@tanstack-DT5WLu9C.js";import"./Tick-COg4A-xo.js";import"./check-DloQpStc.js";import"./package-C6uypY4h.js";import"./ComponentBadge-CrRvovox.js";import"./stack-detail-query-XfZBiBP2.js";import"./layout-BtHBmE4w.js";import"./rocket-DjT2cDvG.js";import"./logs-WMSM52RF.js";import"./CodeSnippet-DIonwetW.js";import"./copy-C8XQA2Ug.js";import"./NumberBox-Dtp3J6g5.js";import"./link-external-b9AXw_sW.js";import"./@reactflow-D2Y7BWwz.js";import"./sharedSchema-uXN9FLLk.js";import"./gcp-CFtm4BA7.js";import"./url-BLwMbzES.js";function je(){const{formRef:t,setIsNextButtonDisabled:s,setData:a,data:o}=u(),n=Q({resolver:H(xe),mode:"onChange",defaultValues:{region:o.location,stackName:o.stackName||""}});f.useEffect(()=>{s(!n.formState.isValid)},[n.formState.isValid,s]);function l(r){a(m=>({...m,location:r.region,stackName:r.stackName}))}return e.jsx(j,{title:"Review Stack Configuration",children:e.jsx(pe,{...n,children:e.jsxs("div",{className:"space-y-5",children:[e.jsxs(G,{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:n.handleSubmit(l),ref:t,className:"space-y-5",children:[e.jsx(se,{provider:o.provider||"aws"}),e.jsx(X,{})]}),e.jsx(re,{provider:o.provider||"aws"}),e.jsx(ae,{provider:o.provider||"aws"})]})})})}function ve(){const{data:t,timestamp:s,setIsNextButtonDisabled:a}=u(),{setCurrentStep:o}=y(),{isPending:n,isError:l,data:r}=K({...J.stackDeploymentStack({provider:t.provider,stack_name:t.stackName,date_start:s}),refetchInterval:5e3,throwOnError:!0});return f.useEffect(()=>{r&&(q(),o(m=>m+1),a(!1))},[r]),n?e.jsx(V,{className:"h-[200px] w-full"}):l?null:e.jsxs("div",{className:"space-y-5",children:[e.jsx(Ne,{}),e.jsx(ye,{stack:r})]})}function Ne(){const{data:t}=u();return e.jsxs("section",{className:"space-y-5 border-b border-theme-border-moderate pb-5",children:[e.jsxs(Y,{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(h,{provider:t.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."})]})]}),t.provider==="azure"?e.jsx(F,{children:e.jsx("span",{children:"Deploy in Azure"})}):e.jsx(F,{})]}),t.provider==="gcp"&&e.jsx(oe,{}),t.provider==="azure"&&e.jsx(ne,{})]})}function ye({stack:t}){const s=!!t;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(de,{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(Se,{isReady:s}),e.jsx(ge,{stack:t})]})}function ge({stack:t}){const s=!!t,{data:a}=u();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(O,{type:a.provider,componentProps:{isLoading:!s,isSuccess:s,stackName:a.stackName}})]})}function Se({isReady:t}){const[s,a]=f.useState(!1);return f.useEffect(()=>{const o=setTimeout(()=>{a(!0)},3e5);return()=>clearTimeout(o)},[]),!s||t?null:e.jsx(G,{children:"Your stack is taking longer than usual to deploy. Please check your Cloud console, or the stacks list in ZenML."})}function ke(){return e.jsx(j,{title:"Deploy ZenML Stack",children:e.jsx(be,{})})}function be(){const{setIsNextButtonDisabled:t,isLoading:s}=u();return f.useEffect(()=>{t(!0)},[]),s?e.jsx(ve,{}):e.jsx(ie,{})}function we(){const{formRef:t,setIsNextButtonDisabled:s,setData:a,data:o}=u(),{register:n,handleSubmit:l,formState:{isValid:r}}=Q({resolver:H(fe),defaultValues:{provider:o.provider}});f.useEffect(()=>{s(!r)},[r,s]);function m(d){a(c=>({...c,provider:d.provider}))}return e.jsx(j,{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:l(m),className:"grid grid-cols-1 gap-3 xl:grid-cols-3",ref:t,children:[e.jsx(v,{id:"aws-provider",...n("provider"),value:"aws",children:e.jsx(N,{icon:e.jsx(h,{provider:"aws",className:"h-6 w-6 shrink-0"}),title:"AWS",subtitle:"ZenML stack with S3, ECR, and SageMaker integration"})}),e.jsx(v,{id:"gcp-provider",...n("provider"),value:"gcp",children:e.jsx(N,{icon:e.jsx(h,{provider:"gcp",className:"h-6 w-6 shrink-0"}),title:"GCP",subtitle:"Create ZenML infrastructure using GCS, Artifact Registry, and Vertex AI"})}),e.jsx(v,{id:"azure-provider",...n("provider"),value:"azure",children:e.jsx(N,{icon:e.jsx(h,{provider:"azure",className:"h-6 w-6 shrink-0"}),title:"Azure",subtitle:"Set up ZenML with Azure Storage, Container Registry, and ML services"})})]})]})})}function Ce({provider:t,stackName:s,timestamp:a,isTerraform:o}){var g,S,k,b,w,C,P,D,I,z,E,L,R,B,W,M,_,A;const{isPending:n,isError:l,data:r}=K({...J.stackDeploymentStack({provider:t,stack_name:s,date_start:a,terraform:o}),throwOnError:!0});if(n)return e.jsx(V,{className:"h-[200px] w-full"});if(l)return null;const m=r.stack.name,d=(g=r.stack.metadata)==null?void 0:g.components.orchestrator,c=(S=r.stack.metadata)==null?void 0:S.components.artifact_store,i=(k=r.stack.metadata)==null?void 0:k.components.container_registry,p=(b=r.stack.metadata)==null?void 0:b.components.image_builder,x=(w=r.stack.metadata)==null?void 0:w.components.step_operator,U={orchestrator:{name:((C=d==null?void 0:d[0])==null?void 0:C.name)??"Orchestrator",id:((P=d==null?void 0:d[0])==null?void 0:P.id.split("-")[0])??""},artifactStore:{name:((D=c==null?void 0:c[0])==null?void 0:D.name)??"Artifact Store",id:((I=c==null?void 0:c[0])==null?void 0:I.id.split("-")[0])??""},registry:{name:((z=i==null?void 0:i[0])==null?void 0:z.name)??"Container Registry",id:((E=i==null?void 0:i[0])==null?void 0:E.id.split("-")[0])??""},connector:{name:(L=r.service_connector)==null?void 0:L.name,id:((B=(R=r.service_connector)==null?void 0:R.id)==null?void 0:B.split("-")[0])??""},imageBuilder:{name:((W=p==null?void 0:p[0])==null?void 0:W.name)??"Image Builder",id:((M=p==null?void 0:p[0])==null?void 0:M.id.split("-")[0])??""},operator:{name:((_=x==null?void 0:x[0])==null?void 0:_.name)??"Step Operator",id:((A=x==null?void 0:x[0])==null?void 0:A.id.split("-")[0])??""}};return e.jsx(O,{type:t,componentProps:{components:U,isSuccess:!0,stackName:m}})}function Pe(){const{setIsNextButtonDisabled:t,data:s,timestamp:a}=u();return t(!1),e.jsx(j,{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(Ce,{provider:s.provider||"aws",stackName:s.stackName||"",timestamp:a})]})})}function De(){const{currentStep:t}=y();if(t===1)return e.jsx(we,{});if(t===2)return e.jsx(je,{});if(t===3)return e.jsx(ke,{});if(t===4)return e.jsx(Pe,{})}function Ie(){var c;const[s]=me(),{setCurrentStep:a,currentStep:o}=y(),{formRef:n,isNextButtonDisabled:l}=u(),r=ue(),m=s.get("origin")==="onboarding";async function d(){n.current&&(n.current.requestSubmit(),await new Promise(i=>setTimeout(i,20))),a(i=>i<4?i+1:i),o===4&&(q(),r(m?T.onboarding:T.stacks.overview))}return e.jsx(le,{form:(c=n.current)==null?void 0:c.id,disabled:l,onClick:()=>d(),size:"md",children:o===4?"Finish":"Next"})}function j({children:t,title:s}){return e.jsxs(Y,{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:t}),e.jsxs("div",{className:"flex items-center justify-end gap-2 border-t border-theme-border-moderate p-5",children:[e.jsx($,{}),e.jsx(Ie,{})]})]})}const Z=["Infrastructure Type","Cloud Provider","Review Configuration","Deploy Stack"];function at(){const{success:t}=he();return e.jsx(ee,{maxSteps:Z.length,initialStep:t?3:1,children:e.jsx(ce,{children:e.jsxs("section",{className:"layout-container flex flex-col gap-5 p-5 xl:flex-row",children:[e.jsx(te,{entries:Z}),e.jsx("div",{className:"w-full overflow-y-hidden",children:e.jsx(De,{})})]})})})}export{at as default};
1
+ import{r as f,j as e}from"./@radix-DeK6qiuw.js";import{S as X,u as y,C as v,P as N,a as $,W as ee,L as te}from"./ProviderRadio-mstdqzsS.js";import{u,R as se,a as re,E as ae,D as F,G as oe,A as ne,C as O,b as ie,N as ce}from"./Partials-CqZp5NMX.js";import{S as V,B as Y,aE as de,f as le,r as T}from"./index-CE0aQlv8.js";import{c as me,b as ue}from"./@react-router-B3Z5rLr2.js";import{I as G}from"./Infobox-Da6-76M2.js";import{t as H}from"./zod-BwEbpOxH.js";import{u as Q,F as pe}from"./index.esm-Dy6Z9Ung.js";import{a as xe,c as q,b as fe,p as he}from"./persist-DeXRG61d.js";import{C as h}from"./ProviderIcon-Bd7GUQ1_.js";import{s as J}from"./index-CtdYkjUi.js";import{a as K}from"./@tanstack-DT5WLu9C.js";import"./Tick-jEIevzVf.js";import"./check-DloQpStc.js";import"./package-C6uypY4h.js";import"./ComponentBadge-xyKiek1s.js";import"./stack-detail-query-B_0R_fd6.js";import"./layout-BtHBmE4w.js";import"./rocket-DjT2cDvG.js";import"./logs-WMSM52RF.js";import"./CodeSnippet-DIJRT2NT.js";import"./copy-C8XQA2Ug.js";import"./NumberBox-Dtp3J6g5.js";import"./link-external-b9AXw_sW.js";import"./@reactflow-BUNIMFeC.js";import"./sharedSchema-Bw1_Wa7l.js";import"./gcp-CFtm4BA7.js";import"./url-Dh93fvh0.js";function je(){const{formRef:t,setIsNextButtonDisabled:s,setData:a,data:o}=u(),n=Q({resolver:H(xe),mode:"onChange",defaultValues:{region:o.location,stackName:o.stackName||""}});f.useEffect(()=>{s(!n.formState.isValid)},[n.formState.isValid,s]);function l(r){a(m=>({...m,location:r.region,stackName:r.stackName}))}return e.jsx(j,{title:"Review Stack Configuration",children:e.jsx(pe,{...n,children:e.jsxs("div",{className:"space-y-5",children:[e.jsxs(G,{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:n.handleSubmit(l),ref:t,className:"space-y-5",children:[e.jsx(se,{provider:o.provider||"aws"}),e.jsx(X,{})]}),e.jsx(re,{provider:o.provider||"aws"}),e.jsx(ae,{provider:o.provider||"aws"})]})})})}function ve(){const{data:t,timestamp:s,setIsNextButtonDisabled:a}=u(),{setCurrentStep:o}=y(),{isPending:n,isError:l,data:r}=K({...J.stackDeploymentStack({provider:t.provider,stack_name:t.stackName,date_start:s}),refetchInterval:5e3,throwOnError:!0});return f.useEffect(()=>{r&&(q(),o(m=>m+1),a(!1))},[r]),n?e.jsx(V,{className:"h-[200px] w-full"}):l?null:e.jsxs("div",{className:"space-y-5",children:[e.jsx(Ne,{}),e.jsx(ye,{stack:r})]})}function Ne(){const{data:t}=u();return e.jsxs("section",{className:"space-y-5 border-b border-theme-border-moderate pb-5",children:[e.jsxs(Y,{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(h,{provider:t.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."})]})]}),t.provider==="azure"?e.jsx(F,{children:e.jsx("span",{children:"Deploy in Azure"})}):e.jsx(F,{})]}),t.provider==="gcp"&&e.jsx(oe,{}),t.provider==="azure"&&e.jsx(ne,{})]})}function ye({stack:t}){const s=!!t;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(de,{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(Se,{isReady:s}),e.jsx(ge,{stack:t})]})}function ge({stack:t}){const s=!!t,{data:a}=u();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(O,{type:a.provider,componentProps:{isLoading:!s,isSuccess:s,stackName:a.stackName}})]})}function Se({isReady:t}){const[s,a]=f.useState(!1);return f.useEffect(()=>{const o=setTimeout(()=>{a(!0)},3e5);return()=>clearTimeout(o)},[]),!s||t?null:e.jsx(G,{children:"Your stack is taking longer than usual to deploy. Please check your Cloud console, or the stacks list in ZenML."})}function ke(){return e.jsx(j,{title:"Deploy ZenML Stack",children:e.jsx(be,{})})}function be(){const{setIsNextButtonDisabled:t,isLoading:s}=u();return f.useEffect(()=>{t(!0)},[]),s?e.jsx(ve,{}):e.jsx(ie,{})}function we(){const{formRef:t,setIsNextButtonDisabled:s,setData:a,data:o}=u(),{register:n,handleSubmit:l,formState:{isValid:r}}=Q({resolver:H(fe),defaultValues:{provider:o.provider}});f.useEffect(()=>{s(!r)},[r,s]);function m(d){a(c=>({...c,provider:d.provider}))}return e.jsx(j,{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:l(m),className:"grid grid-cols-1 gap-3 xl:grid-cols-3",ref:t,children:[e.jsx(v,{id:"aws-provider",...n("provider"),value:"aws",children:e.jsx(N,{icon:e.jsx(h,{provider:"aws",className:"h-6 w-6 shrink-0"}),title:"AWS",subtitle:"ZenML stack with S3, ECR, and SageMaker integration"})}),e.jsx(v,{id:"gcp-provider",...n("provider"),value:"gcp",children:e.jsx(N,{icon:e.jsx(h,{provider:"gcp",className:"h-6 w-6 shrink-0"}),title:"GCP",subtitle:"Create ZenML infrastructure using GCS, Artifact Registry, and Vertex AI"})}),e.jsx(v,{id:"azure-provider",...n("provider"),value:"azure",children:e.jsx(N,{icon:e.jsx(h,{provider:"azure",className:"h-6 w-6 shrink-0"}),title:"Azure",subtitle:"Set up ZenML with Azure Storage, Container Registry, and ML services"})})]})]})})}function Ce({provider:t,stackName:s,timestamp:a,isTerraform:o}){var g,S,k,b,w,C,P,D,I,z,E,L,R,B,W,M,_,A;const{isPending:n,isError:l,data:r}=K({...J.stackDeploymentStack({provider:t,stack_name:s,date_start:a,terraform:o}),throwOnError:!0});if(n)return e.jsx(V,{className:"h-[200px] w-full"});if(l)return null;const m=r.stack.name,d=(g=r.stack.metadata)==null?void 0:g.components.orchestrator,c=(S=r.stack.metadata)==null?void 0:S.components.artifact_store,i=(k=r.stack.metadata)==null?void 0:k.components.container_registry,p=(b=r.stack.metadata)==null?void 0:b.components.image_builder,x=(w=r.stack.metadata)==null?void 0:w.components.step_operator,U={orchestrator:{name:((C=d==null?void 0:d[0])==null?void 0:C.name)??"Orchestrator",id:((P=d==null?void 0:d[0])==null?void 0:P.id.split("-")[0])??""},artifactStore:{name:((D=c==null?void 0:c[0])==null?void 0:D.name)??"Artifact Store",id:((I=c==null?void 0:c[0])==null?void 0:I.id.split("-")[0])??""},registry:{name:((z=i==null?void 0:i[0])==null?void 0:z.name)??"Container Registry",id:((E=i==null?void 0:i[0])==null?void 0:E.id.split("-")[0])??""},connector:{name:(L=r.service_connector)==null?void 0:L.name,id:((B=(R=r.service_connector)==null?void 0:R.id)==null?void 0:B.split("-")[0])??""},imageBuilder:{name:((W=p==null?void 0:p[0])==null?void 0:W.name)??"Image Builder",id:((M=p==null?void 0:p[0])==null?void 0:M.id.split("-")[0])??""},operator:{name:((_=x==null?void 0:x[0])==null?void 0:_.name)??"Step Operator",id:((A=x==null?void 0:x[0])==null?void 0:A.id.split("-")[0])??""}};return e.jsx(O,{type:t,componentProps:{components:U,isSuccess:!0,stackName:m}})}function Pe(){const{setIsNextButtonDisabled:t,data:s,timestamp:a}=u();return t(!1),e.jsx(j,{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(Ce,{provider:s.provider||"aws",stackName:s.stackName||"",timestamp:a})]})})}function De(){const{currentStep:t}=y();if(t===1)return e.jsx(we,{});if(t===2)return e.jsx(je,{});if(t===3)return e.jsx(ke,{});if(t===4)return e.jsx(Pe,{})}function Ie(){var c;const[s]=me(),{setCurrentStep:a,currentStep:o}=y(),{formRef:n,isNextButtonDisabled:l}=u(),r=ue(),m=s.get("origin")==="onboarding";async function d(){n.current&&(n.current.requestSubmit(),await new Promise(i=>setTimeout(i,20))),a(i=>i<4?i+1:i),o===4&&(q(),r(m?T.onboarding:T.stacks.overview))}return e.jsx(le,{form:(c=n.current)==null?void 0:c.id,disabled:l,onClick:()=>d(),size:"md",children:o===4?"Finish":"Next"})}function j({children:t,title:s}){return e.jsxs(Y,{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:t}),e.jsxs("div",{className:"flex items-center justify-end gap-2 border-t border-theme-border-moderate p-5",children:[e.jsx($,{}),e.jsx(Ie,{})]})]})}const Z=["Infrastructure Type","Cloud Provider","Review Configuration","Deploy Stack"];function at(){const{success:t}=he();return e.jsx(ee,{maxSteps:Z.length,initialStep:t?3:1,children:e.jsx(ce,{children:e.jsxs("section",{className:"layout-container flex flex-col gap-5 p-5 xl:flex-row",children:[e.jsx(te,{entries:Z}),e.jsx("div",{className:"w-full overflow-y-hidden",children:e.jsx(De,{})})]})})})}export{at as default};
@@ -1 +1 @@
1
- import{r as l,j as e}from"./@radix-DeK6qiuw.js";import{u as c,S as x,a as y,b as v}from"./form-schemas-B0AVEd9b.js";import{A as j,I as U,P as h,U as b,S as _}from"./UsageReason-BTLbx7w4.js";import{i as g,at as C,aT as P,j as w,m as A,S as E}from"./index-FO-p0GU7.js";import{c as F}from"./@tanstack-DT5WLu9C.js";import"./check-circle-jNbX5-sR.js";import"./url-BLwMbzES.js";import"./@react-router-B3Z5rLr2.js";import"./UpdatePasswordSchemas-C6Aj3hm6.js";import"./zod-BwEbpOxH.js";import"./index.esm-Dy6Z9Ung.js";import"./gcp-CFtm4BA7.js";import"./kubernetes-B2wmAJ1d.js";import"./rocket-DjT2cDvG.js";import"./@reactflow-D2Y7BWwz.js";const S=l.createContext(null);function H({children:t,initialUser:a}){const[n,r]=l.useState(a||{});return e.jsx(S.Provider,{value:{user:n,setUser:r},children:t})}function d(){const t=l.useContext(S);if(t===null)throw new Error("useSurveyUserContext must be used within an SurveyUserProvider");return t}function D({user:t}){var u,i;const{setSurveyStep:a}=c(),{setUser:n}=d();function r({fullName:s,getUpdates:m,email:o}){n(p=>({...p,...o?{email:o}:{email:null},full_name:s,email_opted_in:m})),a(2)}return e.jsx(j,{email:(u=t.metadata)==null?void 0:u.email,fullName:(i=t.body)==null?void 0:i.full_name,submitHandler:r})}function I(){const{user:t}=d(),{setSurveyStep:a}=c(),{toast:n}=g(),r=F(),{mutate:u}=C({onSuccess:async()=>{await r.invalidateQueries({queryKey:P()}),a(s=>s+1)},onError:s=>{s instanceof Error&&n({status:"error",emphasis:"subtle",icon:e.jsx(w,{className:"h-5 w-5 shrink-0 fill-error-700"}),description:s.message,rounded:!0})}});function i({other:s,providers:m,otherVal:o}){const f={infra_providers:s?[...m,o]:m,finished_onboarding_survey:!0};u({...t,user_metadata:{...t.user_metadata,...f}})}return e.jsx(U,{submitHandler:i})}function R({user:t}){const{setSurveyStep:a}=c(),{setUser:n}=d();function r({primaryUse:u}){const i={primary_use:u};n(s=>({...s,user_metadata:{...s.user_metadata,...i}})),a(3)}return e.jsx(h,{user:t,submitHandler:r})}function k(){const{setSurveyStep:t}=c(),{setUser:a}=d();function n({usageReason:r,comparison_tools:u,otherTool:i,otherToolVal:s}){const m={usage_reason:r,...!!u&&{comparing_tools:i&&s?[...u,s]:u}};a(o=>({...o,user_metadata:{...o.user_metadata,...m}})),t(o=>o+1)}return e.jsx(b,{submitHandler:n})}function M(){const{data:t,isPending:a,isError:n}=A({throwOnError:!0}),{surveyStep:r}=c();return n?null:a?e.jsx(E,{className:"h-[300px]"}):e.jsx(e.Fragment,{children:e.jsxs(H,{children:[e.jsx(x,{stepAmount:5}),r===1&&e.jsx(D,{user:t}),r===2&&e.jsx(R,{user:t}),r===3&&e.jsx(k,{}),r===4&&e.jsx(I,{}),r===5&&e.jsx(_,{}),r===6&&e.jsx(y,{subHeader:"Your ZenML account is now updated",displayBody:!1,username:t.name})]})})}function $(){return e.jsx("div",{children:e.jsx(v,{children:e.jsx(M,{})})})}export{$ as default};
1
+ import{r as l,j as e}from"./@radix-DeK6qiuw.js";import{u as c,S as x,a as y,b as v}from"./form-schemas-BZqKBPBF.js";import{A as j,I as U,P as h,U as b,S as _}from"./UsageReason-Bf2tzhv1.js";import{i as g,at as C,aT as P,j as w,m as A,S as E}from"./index-CE0aQlv8.js";import{c as F}from"./@tanstack-DT5WLu9C.js";import"./check-circle-jNbX5-sR.js";import"./url-Dh93fvh0.js";import"./@react-router-B3Z5rLr2.js";import"./UpdatePasswordSchemas-C16GW-kX.js";import"./zod-BwEbpOxH.js";import"./index.esm-Dy6Z9Ung.js";import"./gcp-CFtm4BA7.js";import"./kubernetes-B2wmAJ1d.js";import"./rocket-DjT2cDvG.js";import"./@reactflow-BUNIMFeC.js";const S=l.createContext(null);function H({children:t,initialUser:a}){const[n,r]=l.useState(a||{});return e.jsx(S.Provider,{value:{user:n,setUser:r},children:t})}function d(){const t=l.useContext(S);if(t===null)throw new Error("useSurveyUserContext must be used within an SurveyUserProvider");return t}function D({user:t}){var u,i;const{setSurveyStep:a}=c(),{setUser:n}=d();function r({fullName:s,getUpdates:m,email:o}){n(p=>({...p,...o?{email:o}:{email:null},full_name:s,email_opted_in:m})),a(2)}return e.jsx(j,{email:(u=t.metadata)==null?void 0:u.email,fullName:(i=t.body)==null?void 0:i.full_name,submitHandler:r})}function I(){const{user:t}=d(),{setSurveyStep:a}=c(),{toast:n}=g(),r=F(),{mutate:u}=C({onSuccess:async()=>{await r.invalidateQueries({queryKey:P()}),a(s=>s+1)},onError:s=>{s instanceof Error&&n({status:"error",emphasis:"subtle",icon:e.jsx(w,{className:"h-5 w-5 shrink-0 fill-error-700"}),description:s.message,rounded:!0})}});function i({other:s,providers:m,otherVal:o}){const f={infra_providers:s?[...m,o]:m,finished_onboarding_survey:!0};u({...t,user_metadata:{...t.user_metadata,...f}})}return e.jsx(U,{submitHandler:i})}function R({user:t}){const{setSurveyStep:a}=c(),{setUser:n}=d();function r({primaryUse:u}){const i={primary_use:u};n(s=>({...s,user_metadata:{...s.user_metadata,...i}})),a(3)}return e.jsx(h,{user:t,submitHandler:r})}function k(){const{setSurveyStep:t}=c(),{setUser:a}=d();function n({usageReason:r,comparison_tools:u,otherTool:i,otherToolVal:s}){const m={usage_reason:r,...!!u&&{comparing_tools:i&&s?[...u,s]:u}};a(o=>({...o,user_metadata:{...o.user_metadata,...m}})),t(o=>o+1)}return e.jsx(b,{submitHandler:n})}function M(){const{data:t,isPending:a,isError:n}=A({throwOnError:!0}),{surveyStep:r}=c();return n?null:a?e.jsx(E,{className:"h-[300px]"}):e.jsx(e.Fragment,{children:e.jsxs(H,{children:[e.jsx(x,{stepAmount:5}),r===1&&e.jsx(D,{user:t}),r===2&&e.jsx(R,{user:t}),r===3&&e.jsx(k,{}),r===4&&e.jsx(I,{}),r===5&&e.jsx(_,{}),r===6&&e.jsx(y,{subHeader:"Your ZenML account is now updated",displayBody:!1,username:t.name})]})})}function $(){return e.jsx("div",{children:e.jsx(v,{children:e.jsx(M,{})})})}export{$ as default};
@@ -1 +1 @@
1
- import{j as e,r as m}from"./@radix-DeK6qiuw.js";import{av as g,aw as b,ax as v,ay as y,az as S,B as h,aA as C}from"./index-FO-p0GU7.js";import{I as l}from"./Infobox-M_SMOu96.js";import{V as d,g as p}from"./Commands-BVEXKAOj.js";import{H as j}from"./Helpbox-BfAfhKHw.js";import{S as w,a as k,b as A}from"./gcp-CFtm4BA7.js";import{S as z}from"./kubernetes-B2wmAJ1d.js";import{S as T}from"./docker-BdA9vrnW.js";import"./@tanstack-DT5WLu9C.js";import"./@react-router-B3Z5rLr2.js";import"./@reactflow-D2Y7BWwz.js";import"./CodeSnippet-DIonwetW.js";import"./copy-C8XQA2Ug.js";import"./help-Cc9bBIJH.js";const N="/assets/connectors-video-C9qY4syJ.svg",s="w-5 h-5",P=[{label:"Kubernetes",value:"kubernetes",icon:e.jsx(z,{className:s})},{label:"GCP",value:"gcp",icon:e.jsx(w,{className:s})},{label:"Docker",value:"docker",icon:e.jsx(T,{className:s})},{label:"Azure",value:"azure",icon:e.jsx(k,{className:s})},{label:"AWS",value:"aws",icon:e.jsx(A,{className:s})}],I={help:{href:"https://docs.zenml.io/how-to/infrastructure-deployment/auth-management/kubernetes-service-connector",text:"Use the complete guide to set up your Kubernetes Service Connector."},prerequisites:i("kubernetes","Kubernetes"),listCommand:a("kubernetes","Kubernetes"),topInfobox:"The ZenML Kubernetes service connector facilitates authenticating and connecting to a Kubernetes cluster. The connector can be used to access to any generic Kubernetes cluster by providing pre-authenticated Kubernetes python clients to Stack Components that are linked to it and also allows configuring the local Kubernetes CLI (i.e. kubectl).",bottomInfobox:"Upon completion of the installation of the required prerequisites and integration, our documentation provides you with a comprehensive list of resource types that can be employed to establish your connector. Please refer to the documentation to explore all available options."},q={help:{text:"Use the complete guide to set up your GCP Service Connector.",href:"https://docs.zenml.io/how-to/infrastructure-deployment/auth-management/gcp-service-connector"},prerequisites:i("gcp","GCP"),listCommand:a("gcp","GCP"),bottomInfobox:"Upon completion of the installation of the required prerequisites and integration, our documentation will guide you with a comprehensive list of all the resource types that can be employed to establish your GCP connector. Please refer to the documentation to explore all available options.",topInfobox:"The ZenML GCP Service Connector facilitates the authentication and access to managed GCP services and resources. These encompass a range of resources, including GCS buckets, GCR container repositories, and GKE clusters. The connector provides support for various authentication methods, including GCP user accounts, service accounts, short-lived OAuth 2.0 tokens, and implicit authentication."},G={help:{text:"Use the complete guide to set up your Docker Service Connector.",href:"https://docs.zenml.io/how-to/infrastructure-deployment/auth-management/docker-service-connector"},listCommand:a("docker","Docker"),topInfobox:"The ZenML Docker Service Connector allows authenticating with a Docker or OCI container registry and managing Docker clients for the registry. This connector provides pre-authenticated python-docker Python clients to Stack Components that are linked to it.",bottomInfobox:"No Python packages are required for this Service Connector. All prerequisites are included in the base ZenML Python package. Docker needs to be installed on environments where container images are built and pushed to the target container registry. Please refer to the documentation to explore all available options."},K={help:{text:"Use the complete guide to set up your Azure Service Connector.",href:"https://docs.zenml.io/how-to/infrastructure-deployment/auth-management/azure-service-connector"},listCommand:a("azure","Azure"),prerequisites:i("azure","Azure"),topInfobox:"The ZenML Azure Service Connector facilitates the authentication and access to managed Azure services and resources. These encompass a range of resources, including blob storage containers, ACR repositories, and AKS clusters.",bottomInfobox:"Upon completion of the installation of the required prerequisites and integration, our documentation will guide you with a comprehensive list of all the resource types that can be employed to establish your Azure connector. Please refer to the documentation to explore all available options."},L={help:{text:"Use the complete guide to set up your AWS Service Connector.",href:"https://docs.zenml.io/how-to/infrastructure-deployment/auth-management/aws-service-connector"},listCommand:a("aws","AWS"),prerequisites:i("aws","AWS"),topInfobox:"The ZenML AWS Service Connector facilitates the authentication and access to managed AWS services and resources. These encompass a range of resources, including S3 buckets, ECR container repositories, and EKS clusters. The connector provides support for various authentication methods, including explicit long-lived AWS secret keys, IAM roles, short-lived STS tokens, and implicit authentication.",bottomInfobox:"Upon completion of the installation of the required prerequisites and integration, our documentation will guide you with a comprehensive list of all the resource types that can be employed to establish your AWS connector. Please refer to the documentation to explore all available options."};function a(t,o){return{command:`zenml service-connector list-types --type ${t}`,description:`List ${o} Connector Types`}}function i(t,o){return[{description:"Install the prerequisites",command:`pip install "zenml[connectors-${t}]"`},{description:`Install the entire ${o} ZenML integration`,command:`zenml integration install ${t}`}]}function M({id:t,selectedType:o,onTypeChange:c}){return e.jsxs(g,{value:o,onValueChange:n=>c(n),children:[e.jsx(b,{id:t,className:"w-[250px] border border-neutral-300 px-2 text-left text-text-md",children:e.jsx(v,{placeholder:"Select Connector Type"})}),e.jsx(y,{className:"",children:P.map(n=>e.jsx(S,{value:n.value,children:e.jsxs("div",{className:"flex items-center gap-1",children:[n.icon,n.label]})},n.value))})]})}function W(){return e.jsx(l,{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 Connectors experience"}),e.jsx("p",{children:"In the meanwhile you can use the CLI to add and manage your connectors."})]})})}function D(){const t="https://zenml.portal.trainn.co/share/V6magMJZZvMptz1wdnUmPA/embed?autoplay=false";return e.jsxs(h,{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 Connectors"}),e.jsx("p",{className:"mt-2 text-text-lg text-theme-text-secondary",children:"Dive into Service Connector Types for a documented approach to secure authentication and authorization practices."}),e.jsx(d,{videoLink:t,buttonText:"Watch the Starter Guide (2 min)"})]}),e.jsx("div",{className:"flex w-full items-center justify-center bg-primary-50 lg:w-1/3",children:e.jsx(d,{fallbackImage:e.jsx("img",{src:N,alt:"Purple squares with text indicating a starter guide for secrets",className:"h-full w-full"}),videoLink:t,isButton:!1})})]})}function U(){const[t,o]=m.useState("kubernetes");return e.jsxs("section",{className:"space-y-5 pl-8 pr-5",children:[e.jsx(M,{selectedType:t,onTypeChange:o,id:"connector-select"}),Z(t)]})}function r({topInfobox:t,bottomInfobox:o,listCommand:c,prerequisites:n,help:u}){return e.jsxs(e.Fragment,{children:[e.jsx(l,{className:"text-text-md",intent:"neutral",children:t}),p(c),n&&e.jsxs(e.Fragment,{children:[e.jsx("p",{children:"Prerequisites"}),n.map((x,f)=>e.jsx(m.Fragment,{children:p(x)},f))]}),e.jsx(l,{className:"text-text-md",intent:"neutral",children:o}),e.jsx(j,{text:u.text,link:u.href})]})}function Z(t){switch(t){case"kubernetes":return r(I);case"gcp":return r(q);case"docker":return r(G);case"azure":return r(K);case"aws":return r(L)}}function te(){return e.jsxs(h,{className:"space-y-4 p-5",children:[e.jsx("h1",{className:"text-text-xl font-semibold",children:"Secrets"}),e.jsx(W,{}),e.jsx(D,{}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(C,{}),"Administering your Connectors"]}),e.jsx(U,{})]})}export{te as default};
1
+ import{j as e,r as m}from"./@radix-DeK6qiuw.js";import{av as g,aw as b,ax as v,ay as y,az as S,B as h,aA as C}from"./index-CE0aQlv8.js";import{I as l}from"./Infobox-Da6-76M2.js";import{V as d,g as p}from"./Commands-BEGyld4c.js";import{H as j}from"./Helpbox-Bb1ed--O.js";import{S as w,a as k,b as A}from"./gcp-CFtm4BA7.js";import{S as z}from"./kubernetes-B2wmAJ1d.js";import{S as T}from"./docker-BdA9vrnW.js";import"./@tanstack-DT5WLu9C.js";import"./@react-router-B3Z5rLr2.js";import"./@reactflow-BUNIMFeC.js";import"./CodeSnippet-DIJRT2NT.js";import"./copy-C8XQA2Ug.js";import"./help-Cc9bBIJH.js";const N="/assets/connectors-video-C9qY4syJ.svg",s="w-5 h-5",P=[{label:"Kubernetes",value:"kubernetes",icon:e.jsx(z,{className:s})},{label:"GCP",value:"gcp",icon:e.jsx(w,{className:s})},{label:"Docker",value:"docker",icon:e.jsx(T,{className:s})},{label:"Azure",value:"azure",icon:e.jsx(k,{className:s})},{label:"AWS",value:"aws",icon:e.jsx(A,{className:s})}],I={help:{href:"https://docs.zenml.io/how-to/infrastructure-deployment/auth-management/kubernetes-service-connector",text:"Use the complete guide to set up your Kubernetes Service Connector."},prerequisites:i("kubernetes","Kubernetes"),listCommand:a("kubernetes","Kubernetes"),topInfobox:"The ZenML Kubernetes service connector facilitates authenticating and connecting to a Kubernetes cluster. The connector can be used to access to any generic Kubernetes cluster by providing pre-authenticated Kubernetes python clients to Stack Components that are linked to it and also allows configuring the local Kubernetes CLI (i.e. kubectl).",bottomInfobox:"Upon completion of the installation of the required prerequisites and integration, our documentation provides you with a comprehensive list of resource types that can be employed to establish your connector. Please refer to the documentation to explore all available options."},q={help:{text:"Use the complete guide to set up your GCP Service Connector.",href:"https://docs.zenml.io/how-to/infrastructure-deployment/auth-management/gcp-service-connector"},prerequisites:i("gcp","GCP"),listCommand:a("gcp","GCP"),bottomInfobox:"Upon completion of the installation of the required prerequisites and integration, our documentation will guide you with a comprehensive list of all the resource types that can be employed to establish your GCP connector. Please refer to the documentation to explore all available options.",topInfobox:"The ZenML GCP Service Connector facilitates the authentication and access to managed GCP services and resources. These encompass a range of resources, including GCS buckets, GCR container repositories, and GKE clusters. The connector provides support for various authentication methods, including GCP user accounts, service accounts, short-lived OAuth 2.0 tokens, and implicit authentication."},G={help:{text:"Use the complete guide to set up your Docker Service Connector.",href:"https://docs.zenml.io/how-to/infrastructure-deployment/auth-management/docker-service-connector"},listCommand:a("docker","Docker"),topInfobox:"The ZenML Docker Service Connector allows authenticating with a Docker or OCI container registry and managing Docker clients for the registry. This connector provides pre-authenticated python-docker Python clients to Stack Components that are linked to it.",bottomInfobox:"No Python packages are required for this Service Connector. All prerequisites are included in the base ZenML Python package. Docker needs to be installed on environments where container images are built and pushed to the target container registry. Please refer to the documentation to explore all available options."},K={help:{text:"Use the complete guide to set up your Azure Service Connector.",href:"https://docs.zenml.io/how-to/infrastructure-deployment/auth-management/azure-service-connector"},listCommand:a("azure","Azure"),prerequisites:i("azure","Azure"),topInfobox:"The ZenML Azure Service Connector facilitates the authentication and access to managed Azure services and resources. These encompass a range of resources, including blob storage containers, ACR repositories, and AKS clusters.",bottomInfobox:"Upon completion of the installation of the required prerequisites and integration, our documentation will guide you with a comprehensive list of all the resource types that can be employed to establish your Azure connector. Please refer to the documentation to explore all available options."},L={help:{text:"Use the complete guide to set up your AWS Service Connector.",href:"https://docs.zenml.io/how-to/infrastructure-deployment/auth-management/aws-service-connector"},listCommand:a("aws","AWS"),prerequisites:i("aws","AWS"),topInfobox:"The ZenML AWS Service Connector facilitates the authentication and access to managed AWS services and resources. These encompass a range of resources, including S3 buckets, ECR container repositories, and EKS clusters. The connector provides support for various authentication methods, including explicit long-lived AWS secret keys, IAM roles, short-lived STS tokens, and implicit authentication.",bottomInfobox:"Upon completion of the installation of the required prerequisites and integration, our documentation will guide you with a comprehensive list of all the resource types that can be employed to establish your AWS connector. Please refer to the documentation to explore all available options."};function a(t,o){return{command:`zenml service-connector list-types --type ${t}`,description:`List ${o} Connector Types`}}function i(t,o){return[{description:"Install the prerequisites",command:`pip install "zenml[connectors-${t}]"`},{description:`Install the entire ${o} ZenML integration`,command:`zenml integration install ${t}`}]}function M({id:t,selectedType:o,onTypeChange:c}){return e.jsxs(g,{value:o,onValueChange:n=>c(n),children:[e.jsx(b,{id:t,className:"w-[250px] border border-neutral-300 px-2 text-left text-text-md",children:e.jsx(v,{placeholder:"Select Connector Type"})}),e.jsx(y,{className:"",children:P.map(n=>e.jsx(S,{value:n.value,children:e.jsxs("div",{className:"flex items-center gap-1",children:[n.icon,n.label]})},n.value))})]})}function W(){return e.jsx(l,{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 Connectors experience"}),e.jsx("p",{children:"In the meanwhile you can use the CLI to add and manage your connectors."})]})})}function D(){const t="https://zenml.portal.trainn.co/share/V6magMJZZvMptz1wdnUmPA/embed?autoplay=false";return e.jsxs(h,{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 Connectors"}),e.jsx("p",{className:"mt-2 text-text-lg text-theme-text-secondary",children:"Dive into Service Connector Types for a documented approach to secure authentication and authorization practices."}),e.jsx(d,{videoLink:t,buttonText:"Watch the Starter Guide (2 min)"})]}),e.jsx("div",{className:"flex w-full items-center justify-center bg-primary-50 lg:w-1/3",children:e.jsx(d,{fallbackImage:e.jsx("img",{src:N,alt:"Purple squares with text indicating a starter guide for secrets",className:"h-full w-full"}),videoLink:t,isButton:!1})})]})}function U(){const[t,o]=m.useState("kubernetes");return e.jsxs("section",{className:"space-y-5 pl-8 pr-5",children:[e.jsx(M,{selectedType:t,onTypeChange:o,id:"connector-select"}),Z(t)]})}function r({topInfobox:t,bottomInfobox:o,listCommand:c,prerequisites:n,help:u}){return e.jsxs(e.Fragment,{children:[e.jsx(l,{className:"text-text-md",intent:"neutral",children:t}),p(c),n&&e.jsxs(e.Fragment,{children:[e.jsx("p",{children:"Prerequisites"}),n.map((x,f)=>e.jsx(m.Fragment,{children:p(x)},f))]}),e.jsx(l,{className:"text-text-md",intent:"neutral",children:o}),e.jsx(j,{text:u.text,link:u.href})]})}function Z(t){switch(t){case"kubernetes":return r(I);case"gcp":return r(q);case"docker":return r(G);case"azure":return r(K);case"aws":return r(L)}}function te(){return e.jsxs(h,{className:"space-y-4 p-5",children:[e.jsx("h1",{className:"text-text-xl font-semibold",children:"Secrets"}),e.jsx(W,{}),e.jsx(D,{}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(C,{}),"Administering your Connectors"]}),e.jsx(U,{})]})}export{te as default};
@@ -1 +1 @@
1
- import{r as i,j as e}from"./@radix-DeK6qiuw.js";import{f as p,K as N,U as y,aU as j,c as C,S as d,ab as g,aV as w,e as b,m as S,as as k,n as v,a1 as L,aA as z,a3 as u,a4 as M,B as H,aR as f,r as R,aF as V}from"./index-FO-p0GU7.js";import{S as E}from"./package-C6uypY4h.js";import{S as Z}from"./help-Cc9bBIJH.js";import{S as _}from"./plus-tf1V2hTJ.js";import{C as c}from"./CodeSnippet-DIonwetW.js";import{H as h}from"./Helpbox-BfAfhKHw.js";import{S as D}from"./chevron-down-6JyMkfjR.js";import{T as I}from"./Tick-COg4A-xo.js";import{S as P}from"./chevron-right-double-D7ojK9Co.js";import{g as O}from"./login-command-CkqxPtV3.js";import{L as B}from"./@react-router-B3Z5rLr2.js";import"./@tanstack-DT5WLu9C.js";import"./@reactflow-D2Y7BWwz.js";import"./copy-C8XQA2Ug.js";import"./check-DloQpStc.js";const A=s=>i.createElement("svg",{viewBox:"0 0 24 24",fill:"black",xmlns:"http://www.w3.org/2000/svg",...s},i.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M8.7587 1L14 1C14.2652 1 14.5196 1.10536 14.7071 1.29289L20.7071 7.29289C20.8946 7.48043 21 7.73478 21 8V17.2413C21 18.0463 21 18.7106 20.9558 19.2518C20.9099 19.8139 20.8113 20.3306 20.564 20.816C20.1805 21.5686 19.5686 22.1805 18.816 22.564C18.3306 22.8113 17.8139 22.9099 17.2518 22.9558C16.7106 23 16.0463 23 15.2413 23H8.75868C7.95372 23 7.28936 23 6.74817 22.9558C6.18608 22.9099 5.66937 22.8113 5.18404 22.564C4.43139 22.1805 3.81947 21.5686 3.43597 20.816C3.18868 20.3306 3.09012 19.8139 3.04419 19.2518C2.99998 18.7106 2.99999 18.0463 3 17.2413V6.7587C2.99999 5.95373 2.99998 5.28937 3.04419 4.74817C3.09012 4.18608 3.18868 3.66937 3.43597 3.18404C3.81947 2.43139 4.43139 1.81947 5.18404 1.43597C5.66937 1.18868 6.18608 1.09012 6.74817 1.04419C7.28937 0.999977 7.95373 0.999988 8.7587 1ZM6.91104 3.03755C6.47262 3.07337 6.24842 3.1383 6.09202 3.21799C5.7157 3.40973 5.40973 3.7157 5.21799 4.09202C5.1383 4.24842 5.07337 4.47262 5.03755 4.91104C5.00078 5.36113 5 5.94342 5 6.8V17.2C5 18.0566 5.00078 18.6389 5.03755 19.089C5.07337 19.5274 5.1383 19.7516 5.21799 19.908C5.40973 20.2843 5.7157 20.5903 6.09202 20.782C6.24842 20.8617 6.47262 20.9266 6.91104 20.9624C7.36113 20.9992 7.94342 21 8.8 21H15.2C16.0566 21 16.6389 20.9992 17.089 20.9624C17.5274 20.9266 17.7516 20.8617 17.908 20.782C18.2843 20.5903 18.5903 20.2843 18.782 19.908C18.8617 19.7516 18.9266 19.5274 18.9624 19.089C18.9992 18.6389 19 18.0566 19 17.2V9.00007L15.5681 9.00007C15.3157 9.0001 15.0699 9.00013 14.8618 8.98313C14.6332 8.96445 14.3634 8.92038 14.092 8.78208C13.7157 8.59034 13.4097 8.28438 13.218 7.90805C13.0797 7.63663 13.0356 7.3669 13.0169 7.1383C12.9999 6.93014 13 6.68434 13 6.43195L13 3H8.8C7.94342 3 7.36113 3.00078 6.91104 3.03755ZM15 4.41421L17.5859 7.00007H15.6C15.3035 7.00007 15.1412 6.99929 15.0246 6.98977C15.02 6.98939 15.0156 6.98901 15.0114 6.98862C15.0111 6.98447 15.0107 6.98008 15.0103 6.97544C15.0008 6.85885 15 6.6966 15 6.40007V4.41421ZM7 9C7 8.44772 7.44772 8 8 8H10C10.5523 8 11 8.44772 11 9C11 9.55229 10.5523 10 10 10H8C7.44772 10 7 9.55229 7 9ZM7 13C7 12.4477 7.44772 12 8 12H16C16.5523 12 17 12.4477 17 13C17 13.5523 16.5523 14 16 14H8C7.44772 14 7 13.5523 7 13ZM7 17C7 16.4477 7.44772 16 8 16H16C16.5523 16 17 16.4477 17 17C17 17.5523 16.5523 18 16 18H8C7.44772 18 7 17.5523 7 17Z"})),T=s=>i.createElement("svg",{viewBox:"0 0 24 24",fill:"black",xmlns:"http://www.w3.org/2000/svg",...s},i.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M6.75873 3H17.2413C18.0463 2.99999 18.7107 2.99998 19.2519 3.04419C19.8139 3.09012 20.3307 3.18868 20.816 3.43597C21.5686 3.81947 22.1806 4.43139 22.5641 5.18404C22.8027 5.65238 22.9028 6.14994 22.9508 6.68931C23.0043 6.8527 23.0136 7.02505 22.9819 7.18959C23 7.63971 23 8.16035 23 8.75868V15.2413C23 16.0463 23 16.7106 22.9558 17.2518C22.9099 17.8139 22.8113 18.3306 22.5641 18.816C22.1806 19.5686 21.5686 20.1805 20.816 20.564C20.3307 20.8113 19.8139 20.9099 19.2519 20.9558C18.7107 21 18.0463 21 17.2413 21H6.7587C5.95374 21 5.28939 21 4.7482 20.9558C4.1861 20.9099 3.6694 20.8113 3.18406 20.564C2.43141 20.1805 1.81949 19.5686 1.436 18.816C1.18871 18.3306 1.09014 17.8139 1.04422 17.2518C1 16.7106 1.00001 16.0463 1.00002 15.2413V8.7587C1.00001 8.16037 1.00001 7.63972 1.01816 7.1896C0.986405 7.02505 0.995778 6.85269 1.04924 6.6893C1.09723 6.14993 1.19737 5.65238 1.436 5.18404C1.81949 4.43139 2.43141 3.81947 3.18406 3.43597C3.6694 3.18868 4.1861 3.09012 4.7482 3.04419C5.28939 2.99998 5.95376 2.99999 6.75873 3ZM3.00002 8.92066V15.2C3.00002 16.0566 3.0008 16.6389 3.03758 17.089C3.0734 17.5274 3.13832 17.7516 3.21801 17.908C3.40976 18.2843 3.71572 18.5903 4.09204 18.782C4.24844 18.8617 4.47265 18.9266 4.91106 18.9624C5.36115 18.9992 5.94345 19 6.80002 19H17.2C18.0566 19 18.6389 18.9992 19.089 18.9624C19.5274 18.9266 19.7516 18.8617 19.908 18.782C20.2843 18.5903 20.5903 18.2843 20.782 17.908C20.8617 17.7516 20.9267 17.5274 20.9625 17.089C20.9992 16.6389 21 16.0566 21 15.2V8.92066L14.4086 13.5347C14.3698 13.5618 14.3313 13.5888 14.2932 13.6156C13.7486 13.998 13.2703 14.3338 12.7256 14.4696C12.2492 14.5884 11.7509 14.5884 11.2744 14.4696C10.7297 14.3338 10.2515 13.998 9.70683 13.6156C9.66872 13.5888 9.63029 13.5618 9.59148 13.5347L3.00002 8.92066ZM20.9173 6.53728L13.2616 11.8962C12.5327 12.4065 12.3783 12.495 12.2419 12.529C12.0831 12.5686 11.917 12.5686 11.7582 12.529C11.6218 12.495 11.4673 12.4065 10.7384 11.8962L3.08279 6.53728C3.11852 6.33012 3.165 6.19607 3.21801 6.09202C3.40976 5.7157 3.71572 5.40973 4.09204 5.21799C4.24844 5.1383 4.47265 5.07337 4.91106 5.03755C5.36115 5.00078 5.94345 5 6.80002 5H17.2C18.0566 5 18.6389 5.00078 19.089 5.03755C19.5274 5.07337 19.7516 5.1383 19.908 5.21799C20.2843 5.40973 20.5903 5.7157 20.782 6.09202C20.8351 6.19607 20.8815 6.33012 20.9173 6.53728Z"})),q=s=>i.createElement("svg",{viewBox:"0 0 24 24",fill:"black",xmlns:"http://www.w3.org/2000/svg",...s},i.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M6.75873 1H14.2413C15.0463 0.999988 15.7107 0.999977 16.2519 1.04419C16.814 1.09012 17.3307 1.18868 17.816 1.43597C18.5686 1.81947 19.1806 2.43139 19.5641 3.18404C19.8113 3.66937 19.9099 4.18608 19.9558 4.74817C20.0001 5.28936 20 5.95372 20 6.75868V10.0176C20.0673 10.0212 20.1323 10.0254 20.1951 10.0306C20.5904 10.0629 20.9836 10.1342 21.362 10.327C21.9265 10.6146 22.3854 11.0735 22.673 11.638C22.8658 12.0164 22.9372 12.4096 22.9695 12.805C23.0001 13.1795 23 13.6343 23 14.1614V16.9463C23 17.3849 23.0001 17.7634 22.9787 18.0767C22.9562 18.4065 22.9067 18.7364 22.7717 19.0623C22.4672 19.7974 21.8832 20.3814 21.1481 20.6859C20.8222 20.8209 20.4922 20.8704 20.1624 20.8929C20.1101 20.8965 20.056 20.8995 20 20.902V22C20 22.3723 19.7932 22.7138 19.4633 22.8862C19.1333 23.0587 18.7349 23.0336 18.4292 22.8211L16.2528 21.3079C15.9176 21.0749 15.8497 21.0324 15.7857 21.0034C15.7118 20.9699 15.6341 20.9455 15.5544 20.9308C15.4852 20.9181 15.4052 20.9143 14.9969 20.9143H13.1615C12.6343 20.9143 12.1796 20.9143 11.805 20.8837C11.4097 20.8514 11.0164 20.7801 10.6381 20.5873C10.0736 20.2997 9.61463 19.8407 9.32701 19.2763C9.13422 18.8979 9.0629 18.5047 9.0306 18.1093C9.01405 17.9068 9.00646 17.6808 9.00297 17.4326L7.61004 18.843C7.41849 19.037 7.23062 19.2272 7.06596 19.3669C6.91972 19.4909 6.61021 19.7413 6.17978 19.7771C5.69995 19.8169 5.23016 19.624 4.9168 19.2585C4.63567 18.9306 4.59142 18.5349 4.57452 18.3439C4.5555 18.1289 4.55554 17.8615 4.55558 17.5889L4.55559 16.0111C4.53636 15.9951 4.49179 15.9682 4.4203 15.9578C2.67169 15.7016 1.2984 14.3283 1.04226 12.5797C0.999782 12.2897 0.999881 11.9625 1.00001 11.5208C1.00002 11.4958 1.00003 11.4703 1.00003 11.4444L1.00003 6.7587C1.00002 5.95373 1.00001 5.28937 1.04422 4.74818C1.09015 4.18608 1.18871 3.66937 1.436 3.18404C1.8195 2.43139 2.43142 1.81947 3.18407 1.43597C3.6694 1.18868 4.18611 1.09012 4.7482 1.04419C5.2894 0.999977 5.95376 0.999988 6.75873 1ZM11 14.9994C11 14.9998 11 15.0003 11 15.0007V16.7143C11 17.2908 11.0008 17.6631 11.024 17.9465C11.0462 18.2181 11.0838 18.3188 11.109 18.3683C11.2049 18.5564 11.3579 18.7094 11.546 18.8053C11.5955 18.8305 11.6962 18.8682 11.9679 18.8904C12.2512 18.9135 12.6235 18.9143 13.2 18.9143H14.9969C15.0181 18.9143 15.0391 18.9143 15.06 18.9143C15.3707 18.914 15.6448 18.9138 15.9169 18.964C16.1561 19.0081 16.3892 19.0811 16.6108 19.1815C16.8628 19.2956 17.0878 19.4523 17.3428 19.6298C17.3598 19.6417 17.3771 19.6537 17.3945 19.6658L18 20.0868V19.9143C18 19.362 18.4477 18.9143 19 18.9143C19.4797 18.9143 19.7893 18.9137 20.0263 18.8976C20.2543 18.882 20.3411 18.8554 20.3827 18.8382C20.6277 18.7367 20.8224 18.542 20.9239 18.297C20.9411 18.2554 20.9678 18.1685 20.9833 17.9405C20.9995 17.7035 21 17.3939 21 16.9143V14.2C21 13.6234 20.9993 13.2512 20.9761 12.9678C20.9539 12.6962 20.9162 12.5955 20.891 12.546C20.7952 12.3578 20.6422 12.2049 20.454 12.109C20.4046 12.0838 20.3039 12.0461 20.0322 12.0239C19.7489 12.0008 19.3766 12 18.8 12H13.2C12.6235 12 12.2512 12.0008 11.9679 12.0239C11.6962 12.0461 11.5955 12.0838 11.546 12.109C11.3579 12.2049 11.2049 12.3578 11.109 12.546C11.0838 12.5955 11.0462 12.6962 11.024 12.9678C11.0008 13.2512 11 13.6234 11 14.2V14.9994ZM9.00003 14.5894L6.55559 17.0644V15.9916C6.55559 14.8142 5.59832 14.109 4.71017 13.9789C3.83586 13.8508 3.14921 13.1642 3.02115 12.2899C3.00269 12.1639 3.00003 11.9959 3.00003 11.4444V6.8C3.00003 5.94342 3.00081 5.36113 3.03758 4.91104C3.0734 4.47262 3.13833 4.24842 3.21802 4.09202C3.40976 3.7157 3.71572 3.40973 4.09205 3.21799C4.24845 3.1383 4.47265 3.07337 4.91107 3.03755C5.36116 3.00078 5.94345 3 6.80003 3H14.2C15.0566 3 15.6389 3.00078 16.089 3.03755C16.5274 3.07337 16.7516 3.1383 16.908 3.21799C17.2843 3.40973 17.5903 3.7157 17.782 4.09202C17.8617 4.24842 17.9267 4.47262 17.9625 4.91104C17.9993 5.36113 18 5.94342 18 6.8V10L13.1615 10C12.6343 9.99998 12.1796 9.99997 11.805 10.0306C11.4097 10.0629 11.0164 10.1342 10.6381 10.327C10.0736 10.6146 9.61463 11.0735 9.32701 11.638C9.13422 12.0164 9.0629 12.4096 9.0306 12.805C9 13.1795 9.00001 13.6343 9.00003 14.1615L9.00003 14.5894Z"}));function U(){const s=[{text:"Send us a message",href:"mailto:cloud@zenml.io",icon:e.jsx(T,{className:"h-5 w-5 fill-neutral-500"})},{text:"Join our Slack Community",href:"https://zenml.io/slack",icon:e.jsx(q,{className:"h-5 w-5 fill-neutral-500"})}];return e.jsxs("div",{className:"space-y-1",children:[e.jsx("p",{className:"text-text-lg font-semibold",children:"Support"}),e.jsx("ul",{className:"space-y-1",children:s.map((t,n)=>e.jsx("li",{children:e.jsx(p,{size:"md",className:"w-fit px-2 text-theme-text-secondary",intent:"secondary",emphasis:"minimal",asChild:!0,children:e.jsxs("a",{target:"_blank",rel:"noopener noreferrer",className:"flex gap-1",href:t.href,children:[t.icon,e.jsx("div",{children:t.text})]})})},n))})]})}function F(){const s=[{text:"Browse our docs",href:"https://docs.zenml.io",icon:e.jsx(A,{className:"h-5 w-5 fill-neutral-500"})},{text:"Discover projects",href:"https://github.com/zenml-io/zenml-projects",icon:e.jsx(E,{className:"h-5 w-5 fill-neutral-500"})},{text:"Navigate our examples",href:"https://github.com/zenml-io/zenml/tree/main/examples/",icon:e.jsx(N,{className:"h-5 w-5 fill-neutral-500"})},{text:"Read our blog",href:"https://zenml.io/blog",icon:e.jsx(y,{className:"h-5 w-5 fill-neutral-500"})}];return e.jsxs("div",{className:"space-y-1",children:[e.jsx("p",{className:"mb-0.5 text-text-lg font-semibold",children:"Resources"}),e.jsx("ul",{className:"space-y-1",children:s.map((t,n)=>e.jsx("li",{children:e.jsx(p,{size:"md",className:"w-fit px-2 text-theme-text-secondary",intent:"secondary",emphasis:"minimal",asChild:!0,children:e.jsxs("a",{rel:"noopener noreferrer",target:"_blank",className:"flex gap-1",href:t.href,children:[t.icon,e.jsx("div",{children:t.text})]})})},n))})]})}function $(){const s=j(),t=C();if(s.isPending||t.isPending)return e.jsx(d,{className:"h-[32px] w-[150px]"});if(s.isError||t.isError)return null;const n=g(t.data.deployment_type||"other"),r=w(s.data,n),a=r.itemsDone,l=r.totalItems;return e.jsxs(b,{rounded:!1,color:"light-purple",className:"text-text-sm font-semibold",children:[a,"/",l," steps completed"]})}function K(){return e.jsxs("div",{className:"space-between flex flex-col flex-wrap items-center gap-1 space-x-5 overflow-x-hidden lg:flex-row",children:[e.jsxs("div",{className:"flex-1 space-y-1 overflow-x-hidden",children:[e.jsxs("h2",{className:"truncate text-display-xs font-semibold",children:["Welcome to ZenML",e.jsx(J,{})]}),e.jsx("p",{className:"truncate text-display-xs text-theme-text-secondary",children:"You can start by following your quick setup."})]}),e.jsx($,{})]})}function J(){const s=S();if(s.isError)return null;if(s.isPending)return e.jsx(d,{className:"h-6 w-[70px]"});const t=k(s.data);return e.jsx(e.Fragment,{children:t?`, ${t}`:""})}function W({className:s,...t}){return e.jsx("div",{className:v("flex h-[28px] w-[28px] shrink-0 items-center justify-center rounded-rounded border-2 border-warning-300 bg-warning-50",s),...t,children:e.jsx(P,{className:"h-3 w-3 fill-warning-300"})})}function m({completed:s,title:t,children:n,hasDownstream:r,active:a=!1}){const[l,o]=i.useState(a);return i.useEffect(()=>{o(a)},[a]),e.jsxs(L,{disabled:!(r||a||s),open:l,onOpenChange:o,children:[e.jsx("div",{className:"flex w-full flex-col gap-3 bg-theme-surface-primary px-5 py-3",children:e.jsxs("div",{className:"flex w-full justify-between gap-2",children:[s?e.jsx(I,{className:"shrink-0"}):r?e.jsx(W,{}):e.jsx(z,{className:"shrink-0"}),e.jsx(u,{className:"w-full",children:e.jsx(Y,{active:a,skipped:r,title:t,completed:s})}),e.jsx("div",{className:"flex items-center gap-1",children:e.jsx(u,{children:e.jsx(D,{className:` ${l?"":"-rotate-90"} h-5 w-5 shrink-0 rounded-md fill-neutral-500`})})})]})}),n&&e.jsx(M,{className:"border-t border-theme-border-moderate",children:e.jsxs("div",{className:"flex w-full items-center gap-2 bg-theme-surface-primary p-5",children:[e.jsx("div",{className:"w-[28px] shrink-0"}),e.jsx("div",{className:"w-full min-w-0 flex-1",children:n})]})})]})}function Y({completed:s,title:t,skipped:n,active:r}){return e.jsx("div",{className:"flex w-full items-center justify-between gap-2",children:e.jsx("div",{className:"flex w-full items-center",children:e.jsx("div",{className:v("text-text-xl",{"text-theme-text-tertiary line-through decoration-theme-text-tertiary":s||n,"font-semibold":r,"text-theme-text-secondary":!r&&!s}),children:t})})})}function G({completed:s,hasDownstreamStep:t,active:n}){const{data:r}=C({throwOnError:!0});return e.jsx(m,{active:n,hasDownstream:t,completed:s,title:"Install and Connect ZenML (5 min)",children:e.jsxs("div",{className:"flex flex-col gap-5",children:[e.jsxs("div",{children:[e.jsx("p",{className:"mb-1 text-text-sm text-theme-text-secondary",children:"Install ZenML"}),e.jsx(c,{code:`pip install "zenml==${r?r.version:e.jsx(d,{className:"w-7"})}"`})]}),e.jsxs("div",{children:[e.jsx("p",{className:"mb-1 text-text-sm text-theme-text-secondary",children:"Login to your ZenML Server"}),e.jsx(c,{code:O((r==null?void 0:r.deployment_type)||"other")})]}),e.jsx(h,{link:"https://docs.zenml.io/user-guide/production-guide/deploying-zenml#connecting-to-a-deployed-zenml"})]})})}function Q({active:s,completed:t,hasDownstreamStep:n}){return e.jsx(m,{active:s,hasDownstream:n,completed:t,title:"Run a pipeline (2 min)",children:e.jsxs("div",{className:"flex flex-col gap-5",children:[e.jsxs("div",{children:[e.jsx("p",{className:"mb-1 text-text-sm text-theme-text-secondary",children:"Download the quickstart example to your local machine"}),e.jsx(c,{code:"git clone --depth 1 https://github.com/zenml-io/zenml.git && cd zenml/examples/quickstart"})]}),e.jsxs("div",{children:[e.jsx("p",{className:"mb-1 text-text-sm text-theme-text-secondary",children:"Initialize ZenML in the current directory"}),e.jsx(c,{code:"zenml init"})]}),e.jsxs("div",{children:[e.jsx("p",{className:"mb-1 text-text-sm text-theme-text-secondary",children:"Install the remaining requirements apart from ZenML"}),e.jsx(c,{code:"pip install -r requirements.txt"})]}),e.jsxs("div",{children:[e.jsxs("p",{className:"mb-1 text-text-sm text-theme-text-secondary",children:["Run the training pipeline.",e.jsx("br",{}),"Once it is running, your dashboard will show all the details of the associated run, models, and artifacts."]}),e.jsx(c,{code:"python run.py"})]}),e.jsxs(H,{className:"flex w-full flex-wrap items-center justify-between gap-y-1 p-2",children:[e.jsxs("div",{className:"flex items-center gap-[10px]",children:[e.jsx("div",{className:"flex h-7 w-7 items-center justify-center rounded-sm bg-teal-25",children:e.jsx(Z,{className:"h-5 w-5 fill-teal-400"})}),e.jsx("p",{children:"Do you need help?"})]}),e.jsxs("div",{className:"flex items-center gap-1",children:[e.jsx("a",{target:"_blank",rel:"noopener noreferrer",className:f({intent:"secondary",emphasis:"subtle",size:"md"}),href:"https://github.com/zenml-io/zenml/blob/main/examples/quickstart/README.md",children:"Open the Readme"}),e.jsx("a",{target:"_blank",rel:"noopener noreferrer",className:f({intent:"primary",emphasis:"subtle",size:"md"}),href:"https://docs.zenml.io/user-guide/starter-guide/create-an-ml-pipeline",children:"Browse our docs"})]})]})]})})}function X({completed:s,active:t,hasDownstreamStep:n}){const r=R.stacks.create.index+"?"+new URLSearchParams({origin:"onboarding"}).toString();return e.jsxs(m,{hasDownstream:n,completed:s,title:"Connect to a remote stack (5 min)",active:t,children:[e.jsxs("p",{className:"mb-3",children:["A stack configures how a pipeline is executed"," ",e.jsx(s1,{href:"https://docs.zenml.io/user-guide/production-guide/understand-stacks"})]}),e.jsxs("div",{className:"space-y-5",children:[e.jsxs("div",{className:"space-y-3",children:[e.jsx("p",{children:"Connect your Cloud to deploy your ZenML pipelines in a remote stack."}),e.jsx(p,{className:"w-fit",size:"md",asChild:!0,children:e.jsxs(B,{className:"flex",to:r,children:[e.jsx(_,{className:"h-5 w-5 shrink-0 fill-white"}),"Register a remote stack"]})})]}),e.jsx(h,{link:"https://docs.zenml.io/user-guide/production-guide/understand-stacks"})]})]})}function e1({active:s,completed:t,hasDownstreamStep:n}){return e.jsx(m,{hasDownstream:n,completed:t,title:"Run a pipeline in a remote stack (3 min)",active:s,children:e.jsxs("div",{className:"space-y-5",children:[e.jsxs("div",{className:"space-y-1",children:[e.jsx("p",{className:"text-text-sm text-theme-text-secondary",children:"Set the new stack"}),e.jsx(c,{wrap:!0,codeClasses:"whitespace-pre-wrap",code:"zenml stack set REMOTE_STACK"})]}),e.jsxs("div",{className:"space-y-1",children:[e.jsx("p",{className:"text-text-sm text-theme-text-secondary",children:"Run the pipeline"}),e.jsx(c,{wrap:!0,codeClasses:"whitespace-pre-wrap",code:"python run.py"})]}),e.jsx("div",{children:e.jsx(h,{link:"https://docs.zenml.io/user-guide/production-guide/understand-stacks"})})]})})}function s1({href:s}){return e.jsx("a",{href:s,rel:"noopener noreferrer",target:"_blank",className:"link text-text-sm font-semibold text-theme-text-brand",children:"Learn more"})}function t1(){const s=j({refetchInterval:5e3}),t=C();if(s.isPending||t.isPending)return e.jsx(d,{className:"h-[200px] w-full"});if(s.isError||t.isError)return null;const n=g(t.data.deployment_type||"other"),{getItem:r}=w(s.data,n),a=r("device_verified"),l=r("pipeline_run"),o=r("stack_with_remote_orchestrator_created"),x=r("pipeline_run_with_remote_orchestrator");return e.jsxs("ul",{className:"space-y-5",children:[!n&&e.jsx("li",{children:e.jsx(G,{active:a.isActive,completed:a.isCompleted,hasDownstreamStep:a.hasDownStreamStep})}),e.jsx("li",{children:e.jsx(Q,{active:l.isActive,completed:l.isCompleted,hasDownstreamStep:l.hasDownStreamStep})}),e.jsx("li",{children:e.jsx(X,{active:o.isActive,completed:o.isCompleted,hasDownstreamStep:o.hasDownStreamStep})}),e.jsx("li",{children:e.jsx(e1,{active:x.isActive,completed:x.isCompleted,hasDownstreamStep:x.hasDownStreamStep})})]})}function g1(){const{setTourState:s,tourState:{tourActive:t}}=V();return i.useEffect(()=>{t&&s(n=>({...n,run:!0,stepIndex:n.stepIndex}))},[t]),e.jsxs("div",{className:"layout-container grid grid-cols-4 gap-5 py-5",children:[e.jsxs("div",{className:"col-span-4 space-y-5 lg:col-span-3",children:[e.jsx(K,{}),e.jsx(t1,{})]}),e.jsxs("div",{className:"col-span-4 space-y-5 lg:col-span-1",children:[e.jsx(U,{}),e.jsx(F,{})]})]})}export{g1 as default};
1
+ import{r as i,j as e}from"./@radix-DeK6qiuw.js";import{f as p,K as N,U as y,aU as j,c as C,S as d,ab as g,aV as w,e as b,m as S,as as k,n as v,a1 as L,aA as z,a3 as u,a4 as M,B as H,aR as f,r as R,aF as V}from"./index-CE0aQlv8.js";import{S as E}from"./package-C6uypY4h.js";import{S as Z}from"./help-Cc9bBIJH.js";import{S as _}from"./plus-tf1V2hTJ.js";import{C as c}from"./CodeSnippet-DIJRT2NT.js";import{H as h}from"./Helpbox-Bb1ed--O.js";import{S as D}from"./chevron-down-6JyMkfjR.js";import{T as I}from"./Tick-jEIevzVf.js";import{S as P}from"./chevron-right-double-D7ojK9Co.js";import{g as O}from"./login-command-CkqxPtV3.js";import{L as B}from"./@react-router-B3Z5rLr2.js";import"./@tanstack-DT5WLu9C.js";import"./@reactflow-BUNIMFeC.js";import"./copy-C8XQA2Ug.js";import"./check-DloQpStc.js";const A=s=>i.createElement("svg",{viewBox:"0 0 24 24",fill:"black",xmlns:"http://www.w3.org/2000/svg",...s},i.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M8.7587 1L14 1C14.2652 1 14.5196 1.10536 14.7071 1.29289L20.7071 7.29289C20.8946 7.48043 21 7.73478 21 8V17.2413C21 18.0463 21 18.7106 20.9558 19.2518C20.9099 19.8139 20.8113 20.3306 20.564 20.816C20.1805 21.5686 19.5686 22.1805 18.816 22.564C18.3306 22.8113 17.8139 22.9099 17.2518 22.9558C16.7106 23 16.0463 23 15.2413 23H8.75868C7.95372 23 7.28936 23 6.74817 22.9558C6.18608 22.9099 5.66937 22.8113 5.18404 22.564C4.43139 22.1805 3.81947 21.5686 3.43597 20.816C3.18868 20.3306 3.09012 19.8139 3.04419 19.2518C2.99998 18.7106 2.99999 18.0463 3 17.2413V6.7587C2.99999 5.95373 2.99998 5.28937 3.04419 4.74817C3.09012 4.18608 3.18868 3.66937 3.43597 3.18404C3.81947 2.43139 4.43139 1.81947 5.18404 1.43597C5.66937 1.18868 6.18608 1.09012 6.74817 1.04419C7.28937 0.999977 7.95373 0.999988 8.7587 1ZM6.91104 3.03755C6.47262 3.07337 6.24842 3.1383 6.09202 3.21799C5.7157 3.40973 5.40973 3.7157 5.21799 4.09202C5.1383 4.24842 5.07337 4.47262 5.03755 4.91104C5.00078 5.36113 5 5.94342 5 6.8V17.2C5 18.0566 5.00078 18.6389 5.03755 19.089C5.07337 19.5274 5.1383 19.7516 5.21799 19.908C5.40973 20.2843 5.7157 20.5903 6.09202 20.782C6.24842 20.8617 6.47262 20.9266 6.91104 20.9624C7.36113 20.9992 7.94342 21 8.8 21H15.2C16.0566 21 16.6389 20.9992 17.089 20.9624C17.5274 20.9266 17.7516 20.8617 17.908 20.782C18.2843 20.5903 18.5903 20.2843 18.782 19.908C18.8617 19.7516 18.9266 19.5274 18.9624 19.089C18.9992 18.6389 19 18.0566 19 17.2V9.00007L15.5681 9.00007C15.3157 9.0001 15.0699 9.00013 14.8618 8.98313C14.6332 8.96445 14.3634 8.92038 14.092 8.78208C13.7157 8.59034 13.4097 8.28438 13.218 7.90805C13.0797 7.63663 13.0356 7.3669 13.0169 7.1383C12.9999 6.93014 13 6.68434 13 6.43195L13 3H8.8C7.94342 3 7.36113 3.00078 6.91104 3.03755ZM15 4.41421L17.5859 7.00007H15.6C15.3035 7.00007 15.1412 6.99929 15.0246 6.98977C15.02 6.98939 15.0156 6.98901 15.0114 6.98862C15.0111 6.98447 15.0107 6.98008 15.0103 6.97544C15.0008 6.85885 15 6.6966 15 6.40007V4.41421ZM7 9C7 8.44772 7.44772 8 8 8H10C10.5523 8 11 8.44772 11 9C11 9.55229 10.5523 10 10 10H8C7.44772 10 7 9.55229 7 9ZM7 13C7 12.4477 7.44772 12 8 12H16C16.5523 12 17 12.4477 17 13C17 13.5523 16.5523 14 16 14H8C7.44772 14 7 13.5523 7 13ZM7 17C7 16.4477 7.44772 16 8 16H16C16.5523 16 17 16.4477 17 17C17 17.5523 16.5523 18 16 18H8C7.44772 18 7 17.5523 7 17Z"})),T=s=>i.createElement("svg",{viewBox:"0 0 24 24",fill:"black",xmlns:"http://www.w3.org/2000/svg",...s},i.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M6.75873 3H17.2413C18.0463 2.99999 18.7107 2.99998 19.2519 3.04419C19.8139 3.09012 20.3307 3.18868 20.816 3.43597C21.5686 3.81947 22.1806 4.43139 22.5641 5.18404C22.8027 5.65238 22.9028 6.14994 22.9508 6.68931C23.0043 6.8527 23.0136 7.02505 22.9819 7.18959C23 7.63971 23 8.16035 23 8.75868V15.2413C23 16.0463 23 16.7106 22.9558 17.2518C22.9099 17.8139 22.8113 18.3306 22.5641 18.816C22.1806 19.5686 21.5686 20.1805 20.816 20.564C20.3307 20.8113 19.8139 20.9099 19.2519 20.9558C18.7107 21 18.0463 21 17.2413 21H6.7587C5.95374 21 5.28939 21 4.7482 20.9558C4.1861 20.9099 3.6694 20.8113 3.18406 20.564C2.43141 20.1805 1.81949 19.5686 1.436 18.816C1.18871 18.3306 1.09014 17.8139 1.04422 17.2518C1 16.7106 1.00001 16.0463 1.00002 15.2413V8.7587C1.00001 8.16037 1.00001 7.63972 1.01816 7.1896C0.986405 7.02505 0.995778 6.85269 1.04924 6.6893C1.09723 6.14993 1.19737 5.65238 1.436 5.18404C1.81949 4.43139 2.43141 3.81947 3.18406 3.43597C3.6694 3.18868 4.1861 3.09012 4.7482 3.04419C5.28939 2.99998 5.95376 2.99999 6.75873 3ZM3.00002 8.92066V15.2C3.00002 16.0566 3.0008 16.6389 3.03758 17.089C3.0734 17.5274 3.13832 17.7516 3.21801 17.908C3.40976 18.2843 3.71572 18.5903 4.09204 18.782C4.24844 18.8617 4.47265 18.9266 4.91106 18.9624C5.36115 18.9992 5.94345 19 6.80002 19H17.2C18.0566 19 18.6389 18.9992 19.089 18.9624C19.5274 18.9266 19.7516 18.8617 19.908 18.782C20.2843 18.5903 20.5903 18.2843 20.782 17.908C20.8617 17.7516 20.9267 17.5274 20.9625 17.089C20.9992 16.6389 21 16.0566 21 15.2V8.92066L14.4086 13.5347C14.3698 13.5618 14.3313 13.5888 14.2932 13.6156C13.7486 13.998 13.2703 14.3338 12.7256 14.4696C12.2492 14.5884 11.7509 14.5884 11.2744 14.4696C10.7297 14.3338 10.2515 13.998 9.70683 13.6156C9.66872 13.5888 9.63029 13.5618 9.59148 13.5347L3.00002 8.92066ZM20.9173 6.53728L13.2616 11.8962C12.5327 12.4065 12.3783 12.495 12.2419 12.529C12.0831 12.5686 11.917 12.5686 11.7582 12.529C11.6218 12.495 11.4673 12.4065 10.7384 11.8962L3.08279 6.53728C3.11852 6.33012 3.165 6.19607 3.21801 6.09202C3.40976 5.7157 3.71572 5.40973 4.09204 5.21799C4.24844 5.1383 4.47265 5.07337 4.91106 5.03755C5.36115 5.00078 5.94345 5 6.80002 5H17.2C18.0566 5 18.6389 5.00078 19.089 5.03755C19.5274 5.07337 19.7516 5.1383 19.908 5.21799C20.2843 5.40973 20.5903 5.7157 20.782 6.09202C20.8351 6.19607 20.8815 6.33012 20.9173 6.53728Z"})),q=s=>i.createElement("svg",{viewBox:"0 0 24 24",fill:"black",xmlns:"http://www.w3.org/2000/svg",...s},i.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M6.75873 1H14.2413C15.0463 0.999988 15.7107 0.999977 16.2519 1.04419C16.814 1.09012 17.3307 1.18868 17.816 1.43597C18.5686 1.81947 19.1806 2.43139 19.5641 3.18404C19.8113 3.66937 19.9099 4.18608 19.9558 4.74817C20.0001 5.28936 20 5.95372 20 6.75868V10.0176C20.0673 10.0212 20.1323 10.0254 20.1951 10.0306C20.5904 10.0629 20.9836 10.1342 21.362 10.327C21.9265 10.6146 22.3854 11.0735 22.673 11.638C22.8658 12.0164 22.9372 12.4096 22.9695 12.805C23.0001 13.1795 23 13.6343 23 14.1614V16.9463C23 17.3849 23.0001 17.7634 22.9787 18.0767C22.9562 18.4065 22.9067 18.7364 22.7717 19.0623C22.4672 19.7974 21.8832 20.3814 21.1481 20.6859C20.8222 20.8209 20.4922 20.8704 20.1624 20.8929C20.1101 20.8965 20.056 20.8995 20 20.902V22C20 22.3723 19.7932 22.7138 19.4633 22.8862C19.1333 23.0587 18.7349 23.0336 18.4292 22.8211L16.2528 21.3079C15.9176 21.0749 15.8497 21.0324 15.7857 21.0034C15.7118 20.9699 15.6341 20.9455 15.5544 20.9308C15.4852 20.9181 15.4052 20.9143 14.9969 20.9143H13.1615C12.6343 20.9143 12.1796 20.9143 11.805 20.8837C11.4097 20.8514 11.0164 20.7801 10.6381 20.5873C10.0736 20.2997 9.61463 19.8407 9.32701 19.2763C9.13422 18.8979 9.0629 18.5047 9.0306 18.1093C9.01405 17.9068 9.00646 17.6808 9.00297 17.4326L7.61004 18.843C7.41849 19.037 7.23062 19.2272 7.06596 19.3669C6.91972 19.4909 6.61021 19.7413 6.17978 19.7771C5.69995 19.8169 5.23016 19.624 4.9168 19.2585C4.63567 18.9306 4.59142 18.5349 4.57452 18.3439C4.5555 18.1289 4.55554 17.8615 4.55558 17.5889L4.55559 16.0111C4.53636 15.9951 4.49179 15.9682 4.4203 15.9578C2.67169 15.7016 1.2984 14.3283 1.04226 12.5797C0.999782 12.2897 0.999881 11.9625 1.00001 11.5208C1.00002 11.4958 1.00003 11.4703 1.00003 11.4444L1.00003 6.7587C1.00002 5.95373 1.00001 5.28937 1.04422 4.74818C1.09015 4.18608 1.18871 3.66937 1.436 3.18404C1.8195 2.43139 2.43142 1.81947 3.18407 1.43597C3.6694 1.18868 4.18611 1.09012 4.7482 1.04419C5.2894 0.999977 5.95376 0.999988 6.75873 1ZM11 14.9994C11 14.9998 11 15.0003 11 15.0007V16.7143C11 17.2908 11.0008 17.6631 11.024 17.9465C11.0462 18.2181 11.0838 18.3188 11.109 18.3683C11.2049 18.5564 11.3579 18.7094 11.546 18.8053C11.5955 18.8305 11.6962 18.8682 11.9679 18.8904C12.2512 18.9135 12.6235 18.9143 13.2 18.9143H14.9969C15.0181 18.9143 15.0391 18.9143 15.06 18.9143C15.3707 18.914 15.6448 18.9138 15.9169 18.964C16.1561 19.0081 16.3892 19.0811 16.6108 19.1815C16.8628 19.2956 17.0878 19.4523 17.3428 19.6298C17.3598 19.6417 17.3771 19.6537 17.3945 19.6658L18 20.0868V19.9143C18 19.362 18.4477 18.9143 19 18.9143C19.4797 18.9143 19.7893 18.9137 20.0263 18.8976C20.2543 18.882 20.3411 18.8554 20.3827 18.8382C20.6277 18.7367 20.8224 18.542 20.9239 18.297C20.9411 18.2554 20.9678 18.1685 20.9833 17.9405C20.9995 17.7035 21 17.3939 21 16.9143V14.2C21 13.6234 20.9993 13.2512 20.9761 12.9678C20.9539 12.6962 20.9162 12.5955 20.891 12.546C20.7952 12.3578 20.6422 12.2049 20.454 12.109C20.4046 12.0838 20.3039 12.0461 20.0322 12.0239C19.7489 12.0008 19.3766 12 18.8 12H13.2C12.6235 12 12.2512 12.0008 11.9679 12.0239C11.6962 12.0461 11.5955 12.0838 11.546 12.109C11.3579 12.2049 11.2049 12.3578 11.109 12.546C11.0838 12.5955 11.0462 12.6962 11.024 12.9678C11.0008 13.2512 11 13.6234 11 14.2V14.9994ZM9.00003 14.5894L6.55559 17.0644V15.9916C6.55559 14.8142 5.59832 14.109 4.71017 13.9789C3.83586 13.8508 3.14921 13.1642 3.02115 12.2899C3.00269 12.1639 3.00003 11.9959 3.00003 11.4444V6.8C3.00003 5.94342 3.00081 5.36113 3.03758 4.91104C3.0734 4.47262 3.13833 4.24842 3.21802 4.09202C3.40976 3.7157 3.71572 3.40973 4.09205 3.21799C4.24845 3.1383 4.47265 3.07337 4.91107 3.03755C5.36116 3.00078 5.94345 3 6.80003 3H14.2C15.0566 3 15.6389 3.00078 16.089 3.03755C16.5274 3.07337 16.7516 3.1383 16.908 3.21799C17.2843 3.40973 17.5903 3.7157 17.782 4.09202C17.8617 4.24842 17.9267 4.47262 17.9625 4.91104C17.9993 5.36113 18 5.94342 18 6.8V10L13.1615 10C12.6343 9.99998 12.1796 9.99997 11.805 10.0306C11.4097 10.0629 11.0164 10.1342 10.6381 10.327C10.0736 10.6146 9.61463 11.0735 9.32701 11.638C9.13422 12.0164 9.0629 12.4096 9.0306 12.805C9 13.1795 9.00001 13.6343 9.00003 14.1615L9.00003 14.5894Z"}));function U(){const s=[{text:"Send us a message",href:"mailto:cloud@zenml.io",icon:e.jsx(T,{className:"h-5 w-5 fill-neutral-500"})},{text:"Join our Slack Community",href:"https://zenml.io/slack",icon:e.jsx(q,{className:"h-5 w-5 fill-neutral-500"})}];return e.jsxs("div",{className:"space-y-1",children:[e.jsx("p",{className:"text-text-lg font-semibold",children:"Support"}),e.jsx("ul",{className:"space-y-1",children:s.map((t,n)=>e.jsx("li",{children:e.jsx(p,{size:"md",className:"w-fit px-2 text-theme-text-secondary",intent:"secondary",emphasis:"minimal",asChild:!0,children:e.jsxs("a",{target:"_blank",rel:"noopener noreferrer",className:"flex gap-1",href:t.href,children:[t.icon,e.jsx("div",{children:t.text})]})})},n))})]})}function F(){const s=[{text:"Browse our docs",href:"https://docs.zenml.io",icon:e.jsx(A,{className:"h-5 w-5 fill-neutral-500"})},{text:"Discover projects",href:"https://github.com/zenml-io/zenml-projects",icon:e.jsx(E,{className:"h-5 w-5 fill-neutral-500"})},{text:"Navigate our examples",href:"https://github.com/zenml-io/zenml/tree/main/examples/",icon:e.jsx(N,{className:"h-5 w-5 fill-neutral-500"})},{text:"Read our blog",href:"https://zenml.io/blog",icon:e.jsx(y,{className:"h-5 w-5 fill-neutral-500"})}];return e.jsxs("div",{className:"space-y-1",children:[e.jsx("p",{className:"mb-0.5 text-text-lg font-semibold",children:"Resources"}),e.jsx("ul",{className:"space-y-1",children:s.map((t,n)=>e.jsx("li",{children:e.jsx(p,{size:"md",className:"w-fit px-2 text-theme-text-secondary",intent:"secondary",emphasis:"minimal",asChild:!0,children:e.jsxs("a",{rel:"noopener noreferrer",target:"_blank",className:"flex gap-1",href:t.href,children:[t.icon,e.jsx("div",{children:t.text})]})})},n))})]})}function $(){const s=j(),t=C();if(s.isPending||t.isPending)return e.jsx(d,{className:"h-[32px] w-[150px]"});if(s.isError||t.isError)return null;const n=g(t.data.deployment_type||"other"),r=w(s.data,n),a=r.itemsDone,l=r.totalItems;return e.jsxs(b,{rounded:!1,color:"light-purple",className:"text-text-sm font-semibold",children:[a,"/",l," steps completed"]})}function K(){return e.jsxs("div",{className:"space-between flex flex-col flex-wrap items-center gap-1 space-x-5 overflow-x-hidden lg:flex-row",children:[e.jsxs("div",{className:"flex-1 space-y-1 overflow-x-hidden",children:[e.jsxs("h2",{className:"truncate text-display-xs font-semibold",children:["Welcome to ZenML",e.jsx(J,{})]}),e.jsx("p",{className:"truncate text-display-xs text-theme-text-secondary",children:"You can start by following your quick setup."})]}),e.jsx($,{})]})}function J(){const s=S();if(s.isError)return null;if(s.isPending)return e.jsx(d,{className:"h-6 w-[70px]"});const t=k(s.data);return e.jsx(e.Fragment,{children:t?`, ${t}`:""})}function W({className:s,...t}){return e.jsx("div",{className:v("flex h-[28px] w-[28px] shrink-0 items-center justify-center rounded-rounded border-2 border-warning-300 bg-warning-50",s),...t,children:e.jsx(P,{className:"h-3 w-3 fill-warning-300"})})}function m({completed:s,title:t,children:n,hasDownstream:r,active:a=!1}){const[l,o]=i.useState(a);return i.useEffect(()=>{o(a)},[a]),e.jsxs(L,{disabled:!(r||a||s),open:l,onOpenChange:o,children:[e.jsx("div",{className:"flex w-full flex-col gap-3 bg-theme-surface-primary px-5 py-3",children:e.jsxs("div",{className:"flex w-full justify-between gap-2",children:[s?e.jsx(I,{className:"shrink-0"}):r?e.jsx(W,{}):e.jsx(z,{className:"shrink-0"}),e.jsx(u,{className:"w-full",children:e.jsx(Y,{active:a,skipped:r,title:t,completed:s})}),e.jsx("div",{className:"flex items-center gap-1",children:e.jsx(u,{children:e.jsx(D,{className:` ${l?"":"-rotate-90"} h-5 w-5 shrink-0 rounded-md fill-neutral-500`})})})]})}),n&&e.jsx(M,{className:"border-t border-theme-border-moderate",children:e.jsxs("div",{className:"flex w-full items-center gap-2 bg-theme-surface-primary p-5",children:[e.jsx("div",{className:"w-[28px] shrink-0"}),e.jsx("div",{className:"w-full min-w-0 flex-1",children:n})]})})]})}function Y({completed:s,title:t,skipped:n,active:r}){return e.jsx("div",{className:"flex w-full items-center justify-between gap-2",children:e.jsx("div",{className:"flex w-full items-center",children:e.jsx("div",{className:v("text-text-xl",{"text-theme-text-tertiary line-through decoration-theme-text-tertiary":s||n,"font-semibold":r,"text-theme-text-secondary":!r&&!s}),children:t})})})}function G({completed:s,hasDownstreamStep:t,active:n}){const{data:r}=C({throwOnError:!0});return e.jsx(m,{active:n,hasDownstream:t,completed:s,title:"Install and Connect ZenML (5 min)",children:e.jsxs("div",{className:"flex flex-col gap-5",children:[e.jsxs("div",{children:[e.jsx("p",{className:"mb-1 text-text-sm text-theme-text-secondary",children:"Install ZenML"}),e.jsx(c,{code:`pip install "zenml==${r?r.version:e.jsx(d,{className:"w-7"})}"`})]}),e.jsxs("div",{children:[e.jsx("p",{className:"mb-1 text-text-sm text-theme-text-secondary",children:"Login to your ZenML Server"}),e.jsx(c,{code:O((r==null?void 0:r.deployment_type)||"other")})]}),e.jsx(h,{link:"https://docs.zenml.io/user-guide/production-guide/deploying-zenml#connecting-to-a-deployed-zenml"})]})})}function Q({active:s,completed:t,hasDownstreamStep:n}){return e.jsx(m,{active:s,hasDownstream:n,completed:t,title:"Run a pipeline (2 min)",children:e.jsxs("div",{className:"flex flex-col gap-5",children:[e.jsxs("div",{children:[e.jsx("p",{className:"mb-1 text-text-sm text-theme-text-secondary",children:"Download the quickstart example to your local machine"}),e.jsx(c,{code:"git clone --depth 1 https://github.com/zenml-io/zenml.git && cd zenml/examples/quickstart"})]}),e.jsxs("div",{children:[e.jsx("p",{className:"mb-1 text-text-sm text-theme-text-secondary",children:"Initialize ZenML in the current directory"}),e.jsx(c,{code:"zenml init"})]}),e.jsxs("div",{children:[e.jsx("p",{className:"mb-1 text-text-sm text-theme-text-secondary",children:"Install the remaining requirements apart from ZenML"}),e.jsx(c,{code:"pip install -r requirements.txt"})]}),e.jsxs("div",{children:[e.jsxs("p",{className:"mb-1 text-text-sm text-theme-text-secondary",children:["Run the training pipeline.",e.jsx("br",{}),"Once it is running, your dashboard will show all the details of the associated run, models, and artifacts."]}),e.jsx(c,{code:"python run.py"})]}),e.jsxs(H,{className:"flex w-full flex-wrap items-center justify-between gap-y-1 p-2",children:[e.jsxs("div",{className:"flex items-center gap-[10px]",children:[e.jsx("div",{className:"flex h-7 w-7 items-center justify-center rounded-sm bg-teal-25",children:e.jsx(Z,{className:"h-5 w-5 fill-teal-400"})}),e.jsx("p",{children:"Do you need help?"})]}),e.jsxs("div",{className:"flex items-center gap-1",children:[e.jsx("a",{target:"_blank",rel:"noopener noreferrer",className:f({intent:"secondary",emphasis:"subtle",size:"md"}),href:"https://github.com/zenml-io/zenml/blob/main/examples/quickstart/README.md",children:"Open the Readme"}),e.jsx("a",{target:"_blank",rel:"noopener noreferrer",className:f({intent:"primary",emphasis:"subtle",size:"md"}),href:"https://docs.zenml.io/user-guide/starter-guide/create-an-ml-pipeline",children:"Browse our docs"})]})]})]})})}function X({completed:s,active:t,hasDownstreamStep:n}){const r=R.stacks.create.index+"?"+new URLSearchParams({origin:"onboarding"}).toString();return e.jsxs(m,{hasDownstream:n,completed:s,title:"Connect to a remote stack (5 min)",active:t,children:[e.jsxs("p",{className:"mb-3",children:["A stack configures how a pipeline is executed"," ",e.jsx(s1,{href:"https://docs.zenml.io/user-guide/production-guide/understand-stacks"})]}),e.jsxs("div",{className:"space-y-5",children:[e.jsxs("div",{className:"space-y-3",children:[e.jsx("p",{children:"Connect your Cloud to deploy your ZenML pipelines in a remote stack."}),e.jsx(p,{className:"w-fit",size:"md",asChild:!0,children:e.jsxs(B,{className:"flex",to:r,children:[e.jsx(_,{className:"h-5 w-5 shrink-0 fill-white"}),"Register a remote stack"]})})]}),e.jsx(h,{link:"https://docs.zenml.io/user-guide/production-guide/understand-stacks"})]})]})}function e1({active:s,completed:t,hasDownstreamStep:n}){return e.jsx(m,{hasDownstream:n,completed:t,title:"Run a pipeline in a remote stack (3 min)",active:s,children:e.jsxs("div",{className:"space-y-5",children:[e.jsxs("div",{className:"space-y-1",children:[e.jsx("p",{className:"text-text-sm text-theme-text-secondary",children:"Set the new stack"}),e.jsx(c,{wrap:!0,codeClasses:"whitespace-pre-wrap",code:"zenml stack set REMOTE_STACK"})]}),e.jsxs("div",{className:"space-y-1",children:[e.jsx("p",{className:"text-text-sm text-theme-text-secondary",children:"Run the pipeline"}),e.jsx(c,{wrap:!0,codeClasses:"whitespace-pre-wrap",code:"python run.py"})]}),e.jsx("div",{children:e.jsx(h,{link:"https://docs.zenml.io/user-guide/production-guide/understand-stacks"})})]})})}function s1({href:s}){return e.jsx("a",{href:s,rel:"noopener noreferrer",target:"_blank",className:"link text-text-sm font-semibold text-theme-text-brand",children:"Learn more"})}function t1(){const s=j({refetchInterval:5e3}),t=C();if(s.isPending||t.isPending)return e.jsx(d,{className:"h-[200px] w-full"});if(s.isError||t.isError)return null;const n=g(t.data.deployment_type||"other"),{getItem:r}=w(s.data,n),a=r("device_verified"),l=r("pipeline_run"),o=r("stack_with_remote_orchestrator_created"),x=r("pipeline_run_with_remote_orchestrator");return e.jsxs("ul",{className:"space-y-5",children:[!n&&e.jsx("li",{children:e.jsx(G,{active:a.isActive,completed:a.isCompleted,hasDownstreamStep:a.hasDownStreamStep})}),e.jsx("li",{children:e.jsx(Q,{active:l.isActive,completed:l.isCompleted,hasDownstreamStep:l.hasDownStreamStep})}),e.jsx("li",{children:e.jsx(X,{active:o.isActive,completed:o.isCompleted,hasDownstreamStep:o.hasDownStreamStep})}),e.jsx("li",{children:e.jsx(e1,{active:x.isActive,completed:x.isCompleted,hasDownstreamStep:x.hasDownStreamStep})})]})}function g1(){const{setTourState:s,tourState:{tourActive:t}}=V();return i.useEffect(()=>{t&&s(n=>({...n,run:!0,stepIndex:n.stepIndex}))},[t]),e.jsxs("div",{className:"layout-container grid grid-cols-4 gap-5 py-5",children:[e.jsxs("div",{className:"col-span-4 space-y-5 lg:col-span-3",children:[e.jsx(K,{}),e.jsx(t1,{})]}),e.jsxs("div",{className:"col-span-4 space-y-5 lg:col-span-1",children:[e.jsx(U,{}),e.jsx(F,{})]})]})}export{g1 as default};
@@ -1 +1 @@
1
- import{j as e}from"./@radix-DeK6qiuw.js";import{B as o,aA as n}from"./index-FO-p0GU7.js";import{I as r}from"./Infobox-M_SMOu96.js";import{H as a}from"./Helpbox-BfAfhKHw.js";import{V as s,g as c}from"./Commands-BVEXKAOj.js";import"./@tanstack-DT5WLu9C.js";import"./@react-router-B3Z5rLr2.js";import"./@reactflow-D2Y7BWwz.js";import"./help-Cc9bBIJH.js";import"./CodeSnippet-DIonwetW.js";import"./copy-C8XQA2Ug.js";const l=[{command:"zenml code-repository register <NAME> --type=<CODE_REPOSITORY_TYPE] [--CODE_REPOSITORY_OPTIONS]",description:"Register a code repository"},{command:"zenml code-repository register <NAME> --type=custom --source=<CODE_REPOSITORY_SOURCE> [--CODE_REPOSITORY_OPTIONS]",description:"Use a custom repository "},{command:"zenml code-repository list",description:"List your registered code repositories"},{command:"zenml code-repository delete <REPOSITORY_NAME_OR_ID>",description:"Delete a code repository that you have previously registered"}],d="/assets/repos-video-D8kpu60k.svg";function m(){return e.jsx(r,{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 Repositories experience"}),e.jsx("p",{children:"In the meanwhile you can use the CLI to add and manage your repos."})]})})}function p(){const t="https://zenml.portal.trainn.co/share/koVfVubiXfXLXtVcDAqPyg/embed?autoplay=false";return e.jsxs(o,{className:"flex flex-col-reverse items-stretch overflow-hidden md:flex-row",children:[e.jsxs("div",{className:"w-full p-7 md:w-2/3",children:[e.jsx("h2",{className:"text-display-xs font-semibold",children:"Learn More about Repositories"}),e.jsx("p",{className:"mt-2 text-text-lg text-theme-text-secondary",children:"Get started with ZenML Repositories for streamlined pipeline versioning and faster Docker builds."}),e.jsx(s,{videoLink:t,buttonText:"Watch the Starter Guide (2 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:d,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(r,{className:"text-text-md",intent:"neutral",children:"Code repositories enable ZenML to keep track of the code version that you use for your pipeline runs. Additionally, running a pipeline which is tracked in a registered code repository can decrease the time it takes Docker to build images for containerized stack components."}),l.map((t,i)=>e.jsx(e.Fragment,{children:c(t)},i)),e.jsx(a,{text:"Check all the commands and find more about Repositories in our Docs",link:"https://docs.zenml.io/how-to/setting-up-a-project-repository/connect-your-git-repository"})]})}function k(){return e.jsxs(o,{className:"space-y-4 p-5",children:[e.jsx("h1",{className:"text-text-xl font-semibold",children:"Repositories"}),e.jsx(m,{}),e.jsx(p,{}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(n,{}),"Administering your Code Repositories"]}),e.jsx(x,{})]})}export{k as default};
1
+ import{j as e}from"./@radix-DeK6qiuw.js";import{B as o,aA as n}from"./index-CE0aQlv8.js";import{I as r}from"./Infobox-Da6-76M2.js";import{H as a}from"./Helpbox-Bb1ed--O.js";import{V as s,g as c}from"./Commands-BEGyld4c.js";import"./@tanstack-DT5WLu9C.js";import"./@react-router-B3Z5rLr2.js";import"./@reactflow-BUNIMFeC.js";import"./help-Cc9bBIJH.js";import"./CodeSnippet-DIJRT2NT.js";import"./copy-C8XQA2Ug.js";const l=[{command:"zenml code-repository register <NAME> --type=<CODE_REPOSITORY_TYPE] [--CODE_REPOSITORY_OPTIONS]",description:"Register a code repository"},{command:"zenml code-repository register <NAME> --type=custom --source=<CODE_REPOSITORY_SOURCE> [--CODE_REPOSITORY_OPTIONS]",description:"Use a custom repository "},{command:"zenml code-repository list",description:"List your registered code repositories"},{command:"zenml code-repository delete <REPOSITORY_NAME_OR_ID>",description:"Delete a code repository that you have previously registered"}],d="/assets/repos-video-D8kpu60k.svg";function m(){return e.jsx(r,{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 Repositories experience"}),e.jsx("p",{children:"In the meanwhile you can use the CLI to add and manage your repos."})]})})}function p(){const t="https://zenml.portal.trainn.co/share/koVfVubiXfXLXtVcDAqPyg/embed?autoplay=false";return e.jsxs(o,{className:"flex flex-col-reverse items-stretch overflow-hidden md:flex-row",children:[e.jsxs("div",{className:"w-full p-7 md:w-2/3",children:[e.jsx("h2",{className:"text-display-xs font-semibold",children:"Learn More about Repositories"}),e.jsx("p",{className:"mt-2 text-text-lg text-theme-text-secondary",children:"Get started with ZenML Repositories for streamlined pipeline versioning and faster Docker builds."}),e.jsx(s,{videoLink:t,buttonText:"Watch the Starter Guide (2 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:d,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(r,{className:"text-text-md",intent:"neutral",children:"Code repositories enable ZenML to keep track of the code version that you use for your pipeline runs. Additionally, running a pipeline which is tracked in a registered code repository can decrease the time it takes Docker to build images for containerized stack components."}),l.map((t,i)=>e.jsx(e.Fragment,{children:c(t)},i)),e.jsx(a,{text:"Check all the commands and find more about Repositories in our Docs",link:"https://docs.zenml.io/how-to/setting-up-a-project-repository/connect-your-git-repository"})]})}function k(){return e.jsxs(o,{className:"space-y-4 p-5",children:[e.jsx("h1",{className:"text-text-xl font-semibold",children:"Repositories"}),e.jsx(m,{}),e.jsx(p,{}),e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(n,{}),"Administering your Code Repositories"]}),e.jsx(x,{})]})}export{k as default};
@@ -1 +1 @@
1
- import{r as i,j as s}from"./@radix-DeK6qiuw.js";import{z as t,h as g,i as N,I as c,f as w,j as y,r as b,B as v}from"./index-FO-p0GU7.js";import{u as S}from"./login-mutation-BQeo4wTY.js";import{t as I}from"./zod-BwEbpOxH.js";import{u as L}from"./index.esm-Dy6Z9Ung.js";import{b as F,c as P}from"./@react-router-B3Z5rLr2.js";import"./@tanstack-DT5WLu9C.js";import"./@reactflow-D2Y7BWwz.js";const E=t.object({username:t.string().min(1),password:t.string().optional()});function A(){const l=F(),{setAuthState:m}=g(),{toast:u}=N(),a=i.useId(),r=i.useId(),[o]=P(),d=o.get("redirect"),x=o.get("username")??void 0,{register:n,handleSubmit:p,formState:{isValid:h}}=L({resolver:I(E),defaultValues:{username:x}}),f=S({onError:e=>{e instanceof Error&&u({status:"error",emphasis:"subtle",icon:s.jsx(y,{className:"h-5 w-5 shrink-0 fill-error-700"}),description:e.message,rounded:!0})},onSuccess:async()=>{m("true"),l(d||b.home)}});function j(e){f.mutate({username:e.username.trim(),password:e.password})}return s.jsxs("form",{onSubmit:p(j),className:"space-y-5",children:[s.jsxs("div",{className:"space-y-2",children:[s.jsxs("div",{className:"space-y-0.5",children:[s.jsx("label",{htmlFor:a,className:"text-text-sm",children:"Username"}),s.jsx(c,{...n("username"),id:a,className:"w-full"})]}),s.jsxs("div",{className:"space-y-0.5",children:[s.jsx("label",{htmlFor:r,className:"text-text-sm",children:"Password"}),s.jsx(c,{...n("password"),id:r,type:"password",className:"w-full"})]})]}),s.jsx(w,{disabled:!h,className:"w-full text-center",size:"md",children:s.jsx("span",{className:"w-full",children:"Login"})})]})}function U(){return s.jsxs(v,{className:"flex w-full max-w-[540px] flex-col gap-5 p-7",children:[s.jsxs("div",{className:"text-center",children:[s.jsx("h1",{className:"mb-0.5 text-display-xs font-semibold",children:"Log in to your account"}),s.jsx("p",{className:"text-theme-text-secondary",children:"Please, fill in your details to log in to your ZenML account."})]}),s.jsx(A,{})]})}export{U as default};
1
+ import{r as i,j as s}from"./@radix-DeK6qiuw.js";import{z as t,h as g,i as N,I as c,f as w,j as y,r as b,B as v}from"./index-CE0aQlv8.js";import{u as S}from"./login-mutation-DNDVp_2H.js";import{t as I}from"./zod-BwEbpOxH.js";import{u as L}from"./index.esm-Dy6Z9Ung.js";import{b as F,c as P}from"./@react-router-B3Z5rLr2.js";import"./@tanstack-DT5WLu9C.js";import"./@reactflow-BUNIMFeC.js";const E=t.object({username:t.string().min(1),password:t.string().optional()});function A(){const l=F(),{setAuthState:m}=g(),{toast:u}=N(),a=i.useId(),r=i.useId(),[o]=P(),d=o.get("redirect"),x=o.get("username")??void 0,{register:n,handleSubmit:p,formState:{isValid:h}}=L({resolver:I(E),defaultValues:{username:x}}),f=S({onError:e=>{e instanceof Error&&u({status:"error",emphasis:"subtle",icon:s.jsx(y,{className:"h-5 w-5 shrink-0 fill-error-700"}),description:e.message,rounded:!0})},onSuccess:async()=>{m("true"),l(d||b.home)}});function j(e){f.mutate({username:e.username.trim(),password:e.password})}return s.jsxs("form",{onSubmit:p(j),className:"space-y-5",children:[s.jsxs("div",{className:"space-y-2",children:[s.jsxs("div",{className:"space-y-0.5",children:[s.jsx("label",{htmlFor:a,className:"text-text-sm",children:"Username"}),s.jsx(c,{...n("username"),id:a,className:"w-full"})]}),s.jsxs("div",{className:"space-y-0.5",children:[s.jsx("label",{htmlFor:r,className:"text-text-sm",children:"Password"}),s.jsx(c,{...n("password"),id:r,type:"password",className:"w-full"})]})]}),s.jsx(w,{disabled:!h,className:"w-full text-center",size:"md",children:s.jsx("span",{className:"w-full",children:"Login"})})]})}function U(){return s.jsxs(v,{className:"flex w-full max-w-[540px] flex-col gap-5 p-7",children:[s.jsxs("div",{className:"text-center",children:[s.jsx("h1",{className:"mb-0.5 text-display-xs font-semibold",children:"Log in to your account"}),s.jsx("p",{className:"text-theme-text-secondary",children:"Please, fill in your details to log in to your ZenML account."})]}),s.jsx(A,{})]})}export{U as default};
@@ -1 +1 @@
1
- import{r as o,j as e}from"./@radix-DeK6qiuw.js";import{z as i,i as v,aj as j,au as y,am as S,j as C,u as k,B as w,S as E}from"./index-FO-p0GU7.js";import{u as F}from"./update-server-settings-mutation-BWmgVJwA.js";import{t as q}from"./zod-BwEbpOxH.js";import{c as A}from"./@tanstack-DT5WLu9C.js";import{u as I,C as b}from"./index.esm-Dy6Z9Ung.js";import"./@react-router-B3Z5rLr2.js";import"./@reactflow-D2Y7BWwz.js";const _=i.object({announcements:i.boolean(),updates:i.boolean()});function K({settings:t}){var h,f;const c=o.useId(),d=o.useId(),{toast:l}=v(),u=A(),{mutate:g}=F({onError:s=>{u.invalidateQueries({queryKey:y()}),S(s)&&l({status:"error",emphasis:"subtle",icon:e.jsx(C,{className:"h-5 w-5 shrink-0 fill-error-700"}),description:s.message,rounded:!0})},onSuccess:()=>{u.invalidateQueries({queryKey:y()}),l({status:"success",emphasis:"subtle",rounded:!0,description:"Settings updated successfully"})}}),{control:m,handleSubmit:p,watch:x}=I({resolver:q(_),defaultValues:{announcements:((h=t.body)==null?void 0:h.display_announcements)??void 0,updates:((f=t.body)==null?void 0:f.display_updates)??void 0}});function N({announcements:s,updates:a}){g({display_announcements:s,display_updates:a})}return o.useEffect(()=>{const s=x(()=>p(N)());return()=>s.unsubscribe()},[p,x]),e.jsx("form",{id:"create-user-form",className:"space-y-5",children:e.jsxs("div",{className:"space-y-5",children:[e.jsxs("div",{className:"flex items-center gap-5",children:[e.jsx(b,{control:m,name:"announcements",render:({field:{value:s,onChange:a,ref:n}})=>e.jsx(j,{ref:n,checked:s,onCheckedChange:r=>{a(!!r)},id:c})}),e.jsxs("label",{htmlFor:c,className:"text-text-md",children:[e.jsx("p",{className:"font-semibold",children:"Announcements"}),e.jsx("p",{className:"text-theme-text-secondary",children:"Enable Announcements for important ZenML updates, surveys, and feedback opportunities."})]})]}),e.jsx("hr",{}),e.jsxs("div",{className:"flex items-center gap-5",children:[e.jsx(b,{control:m,name:"updates",render:({field:{value:s,onChange:a,ref:n}})=>e.jsx(j,{ref:n,checked:s,onCheckedChange:r=>{a(!!r)},id:d})}),e.jsxs("label",{htmlFor:d,className:"text-text-md",children:[e.jsx("p",{className:"font-semibold",children:"Updates"}),e.jsx("p",{className:"text-theme-text-secondary",children:"Activate Updates to receive the latest ZenML news and feature releases."})]})]})]})})}function P(){const{data:t}=k({throwOnError:!0});return e.jsxs(w,{className:"flex flex-col gap-5 p-5",children:[e.jsxs("div",{className:"space-y-3",children:[e.jsx("h1",{className:"text-text-xl font-semibold",children:"Notifications"}),e.jsx("p",{className:"text-text-sm text-theme-text-secondary",children:"ZenML comes equipped with default widgets designed to enhance your experience by analyzing usage patterns, gathering your feedback, and ensuring you stay informed about our latest updates and features."})]}),e.jsx("div",{className:"",children:t?e.jsx(K,{settings:t}):e.jsx(E,{className:"h-[250px] w-full"})})]})}export{P as default};
1
+ import{r as o,j as e}from"./@radix-DeK6qiuw.js";import{z as i,i as v,aj as j,au as y,am as S,j as C,u as k,B as w,S as E}from"./index-CE0aQlv8.js";import{u as F}from"./update-server-settings-mutation-D9qYhfaN.js";import{t as q}from"./zod-BwEbpOxH.js";import{c as A}from"./@tanstack-DT5WLu9C.js";import{u as I,C as b}from"./index.esm-Dy6Z9Ung.js";import"./@react-router-B3Z5rLr2.js";import"./@reactflow-BUNIMFeC.js";const _=i.object({announcements:i.boolean(),updates:i.boolean()});function K({settings:t}){var h,f;const c=o.useId(),d=o.useId(),{toast:l}=v(),u=A(),{mutate:g}=F({onError:s=>{u.invalidateQueries({queryKey:y()}),S(s)&&l({status:"error",emphasis:"subtle",icon:e.jsx(C,{className:"h-5 w-5 shrink-0 fill-error-700"}),description:s.message,rounded:!0})},onSuccess:()=>{u.invalidateQueries({queryKey:y()}),l({status:"success",emphasis:"subtle",rounded:!0,description:"Settings updated successfully"})}}),{control:m,handleSubmit:p,watch:x}=I({resolver:q(_),defaultValues:{announcements:((h=t.body)==null?void 0:h.display_announcements)??void 0,updates:((f=t.body)==null?void 0:f.display_updates)??void 0}});function N({announcements:s,updates:a}){g({display_announcements:s,display_updates:a})}return o.useEffect(()=>{const s=x(()=>p(N)());return()=>s.unsubscribe()},[p,x]),e.jsx("form",{id:"create-user-form",className:"space-y-5",children:e.jsxs("div",{className:"space-y-5",children:[e.jsxs("div",{className:"flex items-center gap-5",children:[e.jsx(b,{control:m,name:"announcements",render:({field:{value:s,onChange:a,ref:n}})=>e.jsx(j,{ref:n,checked:s,onCheckedChange:r=>{a(!!r)},id:c})}),e.jsxs("label",{htmlFor:c,className:"text-text-md",children:[e.jsx("p",{className:"font-semibold",children:"Announcements"}),e.jsx("p",{className:"text-theme-text-secondary",children:"Enable Announcements for important ZenML updates, surveys, and feedback opportunities."})]})]}),e.jsx("hr",{}),e.jsxs("div",{className:"flex items-center gap-5",children:[e.jsx(b,{control:m,name:"updates",render:({field:{value:s,onChange:a,ref:n}})=>e.jsx(j,{ref:n,checked:s,onCheckedChange:r=>{a(!!r)},id:d})}),e.jsxs("label",{htmlFor:d,className:"text-text-md",children:[e.jsx("p",{className:"font-semibold",children:"Updates"}),e.jsx("p",{className:"text-theme-text-secondary",children:"Activate Updates to receive the latest ZenML news and feature releases."})]})]})]})})}function P(){const{data:t}=k({throwOnError:!0});return e.jsxs(w,{className:"flex flex-col gap-5 p-5",children:[e.jsxs("div",{className:"space-y-3",children:[e.jsx("h1",{className:"text-text-xl font-semibold",children:"Notifications"}),e.jsx("p",{className:"text-text-sm text-theme-text-secondary",children:"ZenML comes equipped with default widgets designed to enhance your experience by analyzing usage patterns, gathering your feedback, and ensuring you stay informed about our latest updates and features."})]}),e.jsx("div",{className:"",children:t?e.jsx(K,{settings:t}):e.jsx(E,{className:"h-[250px] w-full"})})]})}export{P as default};
@@ -1 +1 @@
1
- import{r as m,j as e}from"./@radix-DeK6qiuw.js";import{k as S,F as D,p as C,q as b,i as w,am as y,t as O,v as H,f as h,s as $,an as R,aC as V,ao as J,aD as U,aq as G,aj as Y,D as Z,w as W,x as X,C as K,r as k,ad as ee,ae as te,af as se,ag as ne,ah as re,I as F,ak as ce,al as ae,B as q,o as ie,L as oe,S as T}from"./index-FO-p0GU7.js";import{P as le,S as ue}from"./SearchField-n-ILHnaP.js";import{s as f,c as de,A as me,u as xe,a as E,b as he}from"./service-BqqeXLEe.js";import{b as N,c as g,a as pe}from"./@tanstack-DT5WLu9C.js";import{S as I}from"./trash-arLUMWMS.js";import{D as Q,a as z}from"./DeleteAlertDialog-D2ELtM2W.js";import{S as fe}from"./Lock-CYYy18Mm.js";import{L as P}from"./@react-router-B3Z5rLr2.js";import{S as je}from"./dots-horizontal-otGBOSDJ.js";import{A as ve}from"./AlertDialogDropdownItem-BHd71pVS.js";import{t as ye}from"./zod-BwEbpOxH.js";import{u as ge,F as Ae,b as Se,C as A}from"./index.esm-Dy6Z9Ung.js";import"./@reactflow-D2Y7BWwz.js";import"./chevron-right-double-D7ojK9Co.js";import"./url-BLwMbzES.js";import"./index-Uu49AX48.js";import"./copy-C8XQA2Ug.js";import"./CodeSnippet-DIonwetW.js";import"./Infobox-M_SMOu96.js";import"./Tick-COg4A-xo.js";import"./check-DloQpStc.js";async function De(t){const s=C(b.serviceAccounts.detail(t)),r=await S(s,{method:"DELETE",headers:{"Content-Type":"application/json"}});if(!r.ok){const n=await r.json().then(c=>Array.isArray(c.detail)?c.detail[1]:c.detail).catch(()=>`Failed to delete service account ${t}`);throw new D({status:r.status,statusText:r.statusText,message:n})}return r.json()}function Ce(t){return N({...t,mutationFn:async s=>{await De(s)}})}const L=m.createContext(null);function be({children:t}){const[s,r]=m.useState([]),n=g(),{toast:c}=w(),a=Ce(),u=async o=>{try{const d=o.map(l=>a.mutateAsync(l));await Promise.all(d),c({description:"Deleted successfully.",status:"success",emphasis:"subtle",rounded:!0}),n.invalidateQueries({queryKey:f.serviceAccountsKey()}),r([])}catch(d){y(d)&&c({status:"error",emphasis:"subtle",description:d.message,rounded:!0}),console.error("Failed to delete some pipelines:",d)}};return e.jsx(L.Provider,{value:{selectedServiceAccounts:s,setSelectedServiceAccounts:r,bulkDeleteServiceAccounts:u},children:t})}function j(){const t=m.useContext(L);if(!t)throw new Error("useServiceAccountSelectorContext must be used within a ServiceAccountsSelectorProvider");return t}function we(){const[t,s]=m.useState(!1),{bulkDeleteServiceAccounts:r,selectedServiceAccounts:n}=j();async function c(){await r(n),s(!1)}return e.jsxs(O,{open:t,onOpenChange:s,children:[e.jsx(H,{asChild:!0,children:e.jsxs(h,{className:"rounded-sharp border-none bg-white",size:"md",emphasis:"subtle",intent:"secondary",children:[e.jsx(I,{className:"h-5 w-5 shrink-0 gap-1 fill-neutral-400"}),"Delete"]})}),e.jsx(Q,{title:`Delete Service Account${n.length>=2?"s":""}`,handleDelete:c,children:e.jsxs(z,{children:[e.jsx("p",{children:"Are you sure?"}),e.jsx("p",{children:"This action cannot be undone."})]})})]})}function Ne(){const{selectedServiceAccounts:t}=j();return e.jsxs("div",{className:"flex items-center divide-x divide-theme-border-moderate overflow-hidden rounded-md border border-theme-border-moderate",children:[e.jsx("div",{className:"bg-primary-25 px-2 py-1 font-semibold text-theme-text-brand",children:`${t==null?void 0:t.length} Service Account${(t==null?void 0:t.length)>1?"s":""} selected`}),e.jsx(we,{})]})}async function ke({body:t,serviceAccountId:s}){const r=C(b.serviceAccounts.detail(s)),n=await S(r,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)});if(n.status===404&&$(),!n.ok){const c=await n.json().then(a=>Array.isArray(a.detail)?a.detail[1]:a.detail).catch(()=>`Failed to update service account ${s}`);throw new D({status:n.status,statusText:n.statusText,message:c})}return n.json()}function Fe(t){return N({...t,mutationFn:async({serviceAccountId:s,body:r})=>ke({serviceAccountId:s,body:r})})}function Te({isActive:t,serviceAccountId:s}){const{toast:r}=w(),n=g(),[c,a]=m.useState(!1),{mutate:u}=Fe({onError(l){y(l)&&r({status:"error",emphasis:"subtle",description:l.message,rounded:!0})},onSuccess(){n.invalidateQueries({queryKey:f.serviceAccountsKey()})}});function o(l){l?d(l):a(!0)}async function d(l){u({serviceAccountId:s,body:{active:l}})}return e.jsxs(e.Fragment,{children:[e.jsx(O,{open:c,onOpenChange:a,children:e.jsxs(R,{children:[e.jsx(V,{children:e.jsx(J,{children:"Deactivate Service Account"})}),e.jsxs("div",{className:"p-5 text-text-md text-theme-text-secondary",children:[e.jsx("p",{children:"Are you sure?"}),e.jsx("p",{children:"You won't be able to use any API keys of this service account to authenticate with the server anymore."})]}),e.jsxs(U,{className:"gap-[10px]",children:[e.jsx(G,{asChild:!0,children:e.jsx(h,{size:"sm",intent:"secondary",children:"Cancel"})}),e.jsx(h,{onClick:()=>d(!1).then(l=>a(!1)),intent:"primary",type:"button",children:"Deactivate"})]})]})}),e.jsx(Y,{checked:t,onCheckedChange:o})]})}function Pe({serviceAccountId:t}){const[s,r]=m.useState(!1),[n,c]=m.useState(!1),{bulkDeleteServiceAccounts:a}=j(),u=m.useRef(null),o=m.useRef(null);function d(){o.current=u.current}async function l(){await a([t]),p(!1)}function p(x){if(x===!1){r(!1),setTimeout(()=>{c(x)},200);return}c(x)}return e.jsxs(Z,{onOpenChange:r,open:s,children:[e.jsx(W,{ref:u,children:e.jsx(je,{className:"h-5 w-5 fill-theme-text-secondary"})}),e.jsx(X,{hidden:n,onCloseAutoFocus:x=>{o.current&&(o.current.focus(),o.current=null,x.preventDefault())},align:"end",sideOffset:7,children:e.jsx(ve,{onSelect:d,open:n,onOpenChange:p,triggerChildren:"Delete",icon:e.jsx(I,{fill:"red"}),children:e.jsx(Q,{title:"Delete Service Account",handleDelete:l,children:e.jsxs(z,{children:[e.jsx("p",{children:"Are you sure?"}),e.jsx("p",{children:"This action cannot be undone."})]})})})})]})}const Oe=({id:t})=>{const{selectedServiceAccounts:s,setSelectedServiceAccounts:r}=j(),n=(c,a)=>{r(u=>c?[...u,a]:u.filter(o=>o!==a))};return e.jsx(K,{id:t,onCheckedChange:c=>n(c,t),checked:s.includes(t),className:"h-3 w-3"})};function Ke(){return[{id:"check",header:"",meta:{width:"1%"},accessorFn:t=>t.id,cell:({row:t})=>e.jsx(Oe,{id:t.original.id})},{id:"service-account",header:"Service Account",accessorFn:t=>t.name,cell:({row:t})=>{var s;return e.jsxs("div",{className:"flex items-center space-x-2",children:[e.jsx(fe,{className:"h-5 w-5 flex-shrink-0 fill-primary-400"}),e.jsxs("div",{className:"group/copybutton flex flex-col",children:[e.jsx("div",{className:"flex flex-row items-center space-x-1",children:e.jsx("div",{className:"flex items-center space-x-1",children:e.jsx(P,{className:"text-text-md font-semibold text-theme-text-primary",to:k.settings.service_accounts.detail(t.original.id),children:t.original.name})})}),e.jsx("div",{className:"flex items-center gap-1",children:e.jsx(P,{className:"flex items-center gap-1 text-text-sm text-theme-text-secondary",to:k.settings.service_accounts.detail(t.original.id),children:(s=t.original.metadata)==null?void 0:s.description})})]})]})}},{id:"active",header:"Active",accessorFn:t=>{var s;return(s=t.body)==null?void 0:s.active},cell:({row:t})=>{var s;return e.jsx(Te,{isActive:!!((s=t.original.body)!=null&&s.active),serviceAccountId:t.original.id})}},{id:"actions",meta:{width:"5%"},header:"",cell:({row:t})=>e.jsx("div",{className:"flex items-center justify-end",children:e.jsx(Pe,{serviceAccountId:t.original.id})})}]}async function qe({body:t}){const s=C(b.serviceAccounts.all),r=await S(s,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)});if(!r.ok){const n=await r.json().then(c=>Array.isArray(c.detail)?c.detail[1]:c.detail).catch(()=>"Failed to create service account");throw new D({status:r.status,statusText:r.statusText,message:n})}return r.json()}function Ee(t){return N({...t,mutationFn:async s=>qe({body:s})})}function M({isFallback:t}){const[s,r]=m.useState(!1),[n,c]=m.useState(""),a=g(),u=ge({resolver:ye(de),defaultValues:{name:"",description:"",createDefault:!1}}),o=!!n&&u.watch("createDefault");function d(){return o?e.jsx(me,{value:n}):e.jsx(Ie,{isFallback:t,setApiKeyValue:c,setOpen:r})}return e.jsx(Ae,{...u,children:e.jsxs(ee,{open:s,onOpenChange:l=>{t&&!l&&a.invalidateQueries({queryKey:f.serviceAccountsKey()}),r(l),c(""),u.reset()},children:[e.jsx(te,{asChild:!0,children:e.jsx(h,{className:"shrink-0",size:"sm",intent:"primary",children:"Add service account"})}),e.jsxs(se,{"data-success":o,className:"mx-auto overflow-x-auto transition-none data-[success=true]:max-w-[800px]",children:[e.jsx(ne,{children:e.jsx(re,{children:"Add service account"})}),d()]})]})})}function Ie({setApiKeyValue:t,setOpen:s,isFallback:r}){const{watch:n,handleSubmit:c,control:a,formState:{isValid:u}}=Se(),{toast:o}=w(),d=g(),{mutate:l}=Ee({onError(i){y(i)&&o({status:"error",emphasis:"subtle",description:i.message,rounded:!0})},async onSuccess(i){if(o({description:"The service account has been added successfully.",status:"success",emphasis:"subtle",rounded:!0}),n("createDefault")){x(i.id);return}d.invalidateQueries({queryKey:f.serviceAccountsKey()}),s(!1)}}),{mutate:p}=xe({onSuccess(i){var v;r||d.invalidateQueries({queryKey:f.serviceAccountsKey()}),t(((v=i.body)==null?void 0:v.key)||"")},onError(i){y(i)&&o({status:"error",emphasis:"subtle",description:i.message,rounded:!0})}}),x=i=>{p({serviceAccountId:i,body:{name:"default",description:"Default api key"}})},B=i=>{l({name:i.name,description:i.description,active:!0})};return e.jsxs(e.Fragment,{children:[e.jsxs("form",{id:"create-secret-form",className:"space-y-5 p-7",onSubmit:c(B),children:[e.jsxs("div",{className:"space-y-0.5",children:[e.jsx("label",{className:"font-inter text-sm text-left font-medium leading-5",children:"Name:"}),e.jsx(A,{name:"name",control:a,render:({field:i})=>e.jsx(F,{...i,className:"w-full",required:!0,placeholder:"Add name"})})]}),e.jsxs("div",{className:"space-y-0.5",children:[e.jsx("label",{className:"font-inter text-sm text-left font-medium leading-5",children:"Description:"}),e.jsx(A,{name:"description",control:a,render:({field:i})=>e.jsx(F,{...i,className:"w-full",placeholder:"Add description"})})]}),e.jsxs("div",{className:"flex flex-col",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(A,{control:a,name:"createDefault",render:({field:{onChange:i,value:v}})=>e.jsx(K,{checked:v,id:"default-key",onCheckedChange:_=>i(!!_)})}),e.jsx("label",{htmlFor:"default-key",children:"Create a default API Key"})]}),e.jsx("p",{className:"pl-[30px] text-text-xs text-theme-text-secondary",children:"This will include a default API Key for your service account."})]})]}),e.jsxs(ce,{className:"gap-[10px]",children:[e.jsx(ae,{asChild:!0,children:e.jsx(h,{size:"sm",intent:"secondary",children:"Cancel"})}),e.jsx(h,{intent:"primary",size:"sm",disabled:!u,type:"submit",form:"create-secret-form",children:"Add service account"})]})]})}function Qe(){return e.jsxs(q,{className:"flex flex-col items-center justify-center space-y-4 p-9",children:[e.jsxs("div",{className:"space-y-2 text-center",children:[e.jsx("p",{className:"text-display-xs font-semibold text-theme-text-primary",children:"There are no service accounts yet."}),e.jsx("p",{className:"text-theme-text-secondary",children:"Create your first one now to automate your processes securely with ZenML."})]}),e.jsx(M,{isFallback:!0})]})}function ze(){const{setCurrentBreadcrumbData:t}=ie(),s=E();m.useEffect(()=>{t({segment:"service_accounts",data:null})},[]);const r=m.useMemo(()=>Ke(),[]),{data:n}=pe({...he.serviceAccountList({...s,sort_by:"desc:created",hydrate:!0})});return n&&n.items.length<1&&!s.name?e.jsx(Qe,{}):e.jsxs(be,{children:[e.jsx(Le,{}),e.jsxs("div",{className:"flex flex-col items-center gap-5",children:[e.jsx("div",{className:"w-full",children:n?e.jsx(oe,{columns:r,data:n.items}):e.jsx(T,{className:"h-[500px] w-full"})}),n?n.total_pages>1&&e.jsx(le,{searchParams:s,paginate:n}):e.jsx(T,{className:"h-[36px] w-[300px]"})]})]})}function Le(){const t=E(),{selectedServiceAccounts:s}=j();return e.jsxs("div",{className:"flex flex-wrap items-center justify-between gap-2",children:[s.length?e.jsx(Ne,{}):e.jsx("div",{className:"flex items-center gap-2",children:e.jsx(ue,{searchParams:t})}),e.jsx(M,{isFallback:!1})]})}function lt(){return e.jsxs(q,{className:"space-y-4 p-5",children:[e.jsx(Me,{}),e.jsx(ze,{})]})}function Me(){return e.jsxs("div",{className:"space-y-2",children:[e.jsx("h1",{className:"text-text-xl font-semibold",children:"Service Accounts"}),e.jsxs("div",{className:"flex flex-wrap items-center gap-1",children:[e.jsx("p",{className:"text-text-sm text-theme-text-secondary",children:"Configure automated access for background tasks and integrations."}),e.jsx("a",{target:"_blank",rel:"noreferrer noopener",href:"https://docs.zenml.io/how-to/project-setup-and-management/connecting-to-zenml/connect-with-a-service-account",className:"link text-text-sm text-primary-400",children:"Learn More"})]})]})}export{lt as default};
1
+ import{r as m,j as e}from"./@radix-DeK6qiuw.js";import{k as S,F as D,p as C,q as b,i as w,am as y,t as O,v as H,f as h,s as $,an as R,aC as V,ao as J,aD as U,aq as G,aj as Y,D as Z,w as W,x as X,C as K,r as k,ad as ee,ae as te,af as se,ag as ne,ah as re,I as F,ak as ce,al as ae,B as q,o as ie,L as oe,S as T}from"./index-CE0aQlv8.js";import{P as le,S as ue}from"./SearchField-D6tPxyqw.js";import{s as f,c as de,A as me,u as xe,a as E,b as he}from"./service-DH_oUqQj.js";import{b as N,c as g,a as pe}from"./@tanstack-DT5WLu9C.js";import{S as I}from"./trash-arLUMWMS.js";import{D as Q,a as z}from"./DeleteAlertDialog-WkSIIgfy.js";import{S as fe}from"./Lock-CYYy18Mm.js";import{L as P}from"./@react-router-B3Z5rLr2.js";import{S as je}from"./dots-horizontal-otGBOSDJ.js";import{A as ve}from"./AlertDialogDropdownItem-B73Vs10T.js";import{t as ye}from"./zod-BwEbpOxH.js";import{u as ge,F as Ae,b as Se,C as A}from"./index.esm-Dy6Z9Ung.js";import"./@reactflow-BUNIMFeC.js";import"./chevron-right-double-D7ojK9Co.js";import"./url-Dh93fvh0.js";import"./index-Uu49AX48.js";import"./copy-C8XQA2Ug.js";import"./CodeSnippet-DIJRT2NT.js";import"./Infobox-Da6-76M2.js";import"./Tick-jEIevzVf.js";import"./check-DloQpStc.js";async function De(t){const s=C(b.serviceAccounts.detail(t)),r=await S(s,{method:"DELETE",headers:{"Content-Type":"application/json"}});if(!r.ok){const n=await r.json().then(c=>Array.isArray(c.detail)?c.detail[1]:c.detail).catch(()=>`Failed to delete service account ${t}`);throw new D({status:r.status,statusText:r.statusText,message:n})}return r.json()}function Ce(t){return N({...t,mutationFn:async s=>{await De(s)}})}const L=m.createContext(null);function be({children:t}){const[s,r]=m.useState([]),n=g(),{toast:c}=w(),a=Ce(),u=async o=>{try{const d=o.map(l=>a.mutateAsync(l));await Promise.all(d),c({description:"Deleted successfully.",status:"success",emphasis:"subtle",rounded:!0}),n.invalidateQueries({queryKey:f.serviceAccountsKey()}),r([])}catch(d){y(d)&&c({status:"error",emphasis:"subtle",description:d.message,rounded:!0}),console.error("Failed to delete some pipelines:",d)}};return e.jsx(L.Provider,{value:{selectedServiceAccounts:s,setSelectedServiceAccounts:r,bulkDeleteServiceAccounts:u},children:t})}function j(){const t=m.useContext(L);if(!t)throw new Error("useServiceAccountSelectorContext must be used within a ServiceAccountsSelectorProvider");return t}function we(){const[t,s]=m.useState(!1),{bulkDeleteServiceAccounts:r,selectedServiceAccounts:n}=j();async function c(){await r(n),s(!1)}return e.jsxs(O,{open:t,onOpenChange:s,children:[e.jsx(H,{asChild:!0,children:e.jsxs(h,{className:"rounded-sharp border-none bg-white",size:"md",emphasis:"subtle",intent:"secondary",children:[e.jsx(I,{className:"h-5 w-5 shrink-0 gap-1 fill-neutral-400"}),"Delete"]})}),e.jsx(Q,{title:`Delete Service Account${n.length>=2?"s":""}`,handleDelete:c,children:e.jsxs(z,{children:[e.jsx("p",{children:"Are you sure?"}),e.jsx("p",{children:"This action cannot be undone."})]})})]})}function Ne(){const{selectedServiceAccounts:t}=j();return e.jsxs("div",{className:"flex items-center divide-x divide-theme-border-moderate overflow-hidden rounded-md border border-theme-border-moderate",children:[e.jsx("div",{className:"bg-primary-25 px-2 py-1 font-semibold text-theme-text-brand",children:`${t==null?void 0:t.length} Service Account${(t==null?void 0:t.length)>1?"s":""} selected`}),e.jsx(we,{})]})}async function ke({body:t,serviceAccountId:s}){const r=C(b.serviceAccounts.detail(s)),n=await S(r,{method:"PUT",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)});if(n.status===404&&$(),!n.ok){const c=await n.json().then(a=>Array.isArray(a.detail)?a.detail[1]:a.detail).catch(()=>`Failed to update service account ${s}`);throw new D({status:n.status,statusText:n.statusText,message:c})}return n.json()}function Fe(t){return N({...t,mutationFn:async({serviceAccountId:s,body:r})=>ke({serviceAccountId:s,body:r})})}function Te({isActive:t,serviceAccountId:s}){const{toast:r}=w(),n=g(),[c,a]=m.useState(!1),{mutate:u}=Fe({onError(l){y(l)&&r({status:"error",emphasis:"subtle",description:l.message,rounded:!0})},onSuccess(){n.invalidateQueries({queryKey:f.serviceAccountsKey()})}});function o(l){l?d(l):a(!0)}async function d(l){u({serviceAccountId:s,body:{active:l}})}return e.jsxs(e.Fragment,{children:[e.jsx(O,{open:c,onOpenChange:a,children:e.jsxs(R,{children:[e.jsx(V,{children:e.jsx(J,{children:"Deactivate Service Account"})}),e.jsxs("div",{className:"p-5 text-text-md text-theme-text-secondary",children:[e.jsx("p",{children:"Are you sure?"}),e.jsx("p",{children:"You won't be able to use any API keys of this service account to authenticate with the server anymore."})]}),e.jsxs(U,{className:"gap-[10px]",children:[e.jsx(G,{asChild:!0,children:e.jsx(h,{size:"sm",intent:"secondary",children:"Cancel"})}),e.jsx(h,{onClick:()=>d(!1).then(l=>a(!1)),intent:"primary",type:"button",children:"Deactivate"})]})]})}),e.jsx(Y,{checked:t,onCheckedChange:o})]})}function Pe({serviceAccountId:t}){const[s,r]=m.useState(!1),[n,c]=m.useState(!1),{bulkDeleteServiceAccounts:a}=j(),u=m.useRef(null),o=m.useRef(null);function d(){o.current=u.current}async function l(){await a([t]),p(!1)}function p(x){if(x===!1){r(!1),setTimeout(()=>{c(x)},200);return}c(x)}return e.jsxs(Z,{onOpenChange:r,open:s,children:[e.jsx(W,{ref:u,children:e.jsx(je,{className:"h-5 w-5 fill-theme-text-secondary"})}),e.jsx(X,{hidden:n,onCloseAutoFocus:x=>{o.current&&(o.current.focus(),o.current=null,x.preventDefault())},align:"end",sideOffset:7,children:e.jsx(ve,{onSelect:d,open:n,onOpenChange:p,triggerChildren:"Delete",icon:e.jsx(I,{fill:"red"}),children:e.jsx(Q,{title:"Delete Service Account",handleDelete:l,children:e.jsxs(z,{children:[e.jsx("p",{children:"Are you sure?"}),e.jsx("p",{children:"This action cannot be undone."})]})})})})]})}const Oe=({id:t})=>{const{selectedServiceAccounts:s,setSelectedServiceAccounts:r}=j(),n=(c,a)=>{r(u=>c?[...u,a]:u.filter(o=>o!==a))};return e.jsx(K,{id:t,onCheckedChange:c=>n(c,t),checked:s.includes(t),className:"h-3 w-3"})};function Ke(){return[{id:"check",header:"",meta:{width:"1%"},accessorFn:t=>t.id,cell:({row:t})=>e.jsx(Oe,{id:t.original.id})},{id:"service-account",header:"Service Account",accessorFn:t=>t.name,cell:({row:t})=>{var s;return e.jsxs("div",{className:"flex items-center space-x-2",children:[e.jsx(fe,{className:"h-5 w-5 flex-shrink-0 fill-primary-400"}),e.jsxs("div",{className:"group/copybutton flex flex-col",children:[e.jsx("div",{className:"flex flex-row items-center space-x-1",children:e.jsx("div",{className:"flex items-center space-x-1",children:e.jsx(P,{className:"text-text-md font-semibold text-theme-text-primary",to:k.settings.service_accounts.detail(t.original.id),children:t.original.name})})}),e.jsx("div",{className:"flex items-center gap-1",children:e.jsx(P,{className:"flex items-center gap-1 text-text-sm text-theme-text-secondary",to:k.settings.service_accounts.detail(t.original.id),children:(s=t.original.metadata)==null?void 0:s.description})})]})]})}},{id:"active",header:"Active",accessorFn:t=>{var s;return(s=t.body)==null?void 0:s.active},cell:({row:t})=>{var s;return e.jsx(Te,{isActive:!!((s=t.original.body)!=null&&s.active),serviceAccountId:t.original.id})}},{id:"actions",meta:{width:"5%"},header:"",cell:({row:t})=>e.jsx("div",{className:"flex items-center justify-end",children:e.jsx(Pe,{serviceAccountId:t.original.id})})}]}async function qe({body:t}){const s=C(b.serviceAccounts.all),r=await S(s,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(t)});if(!r.ok){const n=await r.json().then(c=>Array.isArray(c.detail)?c.detail[1]:c.detail).catch(()=>"Failed to create service account");throw new D({status:r.status,statusText:r.statusText,message:n})}return r.json()}function Ee(t){return N({...t,mutationFn:async s=>qe({body:s})})}function M({isFallback:t}){const[s,r]=m.useState(!1),[n,c]=m.useState(""),a=g(),u=ge({resolver:ye(de),defaultValues:{name:"",description:"",createDefault:!1}}),o=!!n&&u.watch("createDefault");function d(){return o?e.jsx(me,{value:n}):e.jsx(Ie,{isFallback:t,setApiKeyValue:c,setOpen:r})}return e.jsx(Ae,{...u,children:e.jsxs(ee,{open:s,onOpenChange:l=>{t&&!l&&a.invalidateQueries({queryKey:f.serviceAccountsKey()}),r(l),c(""),u.reset()},children:[e.jsx(te,{asChild:!0,children:e.jsx(h,{className:"shrink-0",size:"sm",intent:"primary",children:"Add service account"})}),e.jsxs(se,{"data-success":o,className:"mx-auto overflow-x-auto transition-none data-[success=true]:max-w-[800px]",children:[e.jsx(ne,{children:e.jsx(re,{children:"Add service account"})}),d()]})]})})}function Ie({setApiKeyValue:t,setOpen:s,isFallback:r}){const{watch:n,handleSubmit:c,control:a,formState:{isValid:u}}=Se(),{toast:o}=w(),d=g(),{mutate:l}=Ee({onError(i){y(i)&&o({status:"error",emphasis:"subtle",description:i.message,rounded:!0})},async onSuccess(i){if(o({description:"The service account has been added successfully.",status:"success",emphasis:"subtle",rounded:!0}),n("createDefault")){x(i.id);return}d.invalidateQueries({queryKey:f.serviceAccountsKey()}),s(!1)}}),{mutate:p}=xe({onSuccess(i){var v;r||d.invalidateQueries({queryKey:f.serviceAccountsKey()}),t(((v=i.body)==null?void 0:v.key)||"")},onError(i){y(i)&&o({status:"error",emphasis:"subtle",description:i.message,rounded:!0})}}),x=i=>{p({serviceAccountId:i,body:{name:"default",description:"Default api key"}})},B=i=>{l({name:i.name,description:i.description,active:!0})};return e.jsxs(e.Fragment,{children:[e.jsxs("form",{id:"create-secret-form",className:"space-y-5 p-7",onSubmit:c(B),children:[e.jsxs("div",{className:"space-y-0.5",children:[e.jsx("label",{className:"font-inter text-sm text-left font-medium leading-5",children:"Name:"}),e.jsx(A,{name:"name",control:a,render:({field:i})=>e.jsx(F,{...i,className:"w-full",required:!0,placeholder:"Add name"})})]}),e.jsxs("div",{className:"space-y-0.5",children:[e.jsx("label",{className:"font-inter text-sm text-left font-medium leading-5",children:"Description:"}),e.jsx(A,{name:"description",control:a,render:({field:i})=>e.jsx(F,{...i,className:"w-full",placeholder:"Add description"})})]}),e.jsxs("div",{className:"flex flex-col",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(A,{control:a,name:"createDefault",render:({field:{onChange:i,value:v}})=>e.jsx(K,{checked:v,id:"default-key",onCheckedChange:_=>i(!!_)})}),e.jsx("label",{htmlFor:"default-key",children:"Create a default API Key"})]}),e.jsx("p",{className:"pl-[30px] text-text-xs text-theme-text-secondary",children:"This will include a default API Key for your service account."})]})]}),e.jsxs(ce,{className:"gap-[10px]",children:[e.jsx(ae,{asChild:!0,children:e.jsx(h,{size:"sm",intent:"secondary",children:"Cancel"})}),e.jsx(h,{intent:"primary",size:"sm",disabled:!u,type:"submit",form:"create-secret-form",children:"Add service account"})]})]})}function Qe(){return e.jsxs(q,{className:"flex flex-col items-center justify-center space-y-4 p-9",children:[e.jsxs("div",{className:"space-y-2 text-center",children:[e.jsx("p",{className:"text-display-xs font-semibold text-theme-text-primary",children:"There are no service accounts yet."}),e.jsx("p",{className:"text-theme-text-secondary",children:"Create your first one now to automate your processes securely with ZenML."})]}),e.jsx(M,{isFallback:!0})]})}function ze(){const{setCurrentBreadcrumbData:t}=ie(),s=E();m.useEffect(()=>{t({segment:"service_accounts",data:null})},[]);const r=m.useMemo(()=>Ke(),[]),{data:n}=pe({...he.serviceAccountList({...s,sort_by:"desc:created",hydrate:!0})});return n&&n.items.length<1&&!s.name?e.jsx(Qe,{}):e.jsxs(be,{children:[e.jsx(Le,{}),e.jsxs("div",{className:"flex flex-col items-center gap-5",children:[e.jsx("div",{className:"w-full",children:n?e.jsx(oe,{columns:r,data:n.items}):e.jsx(T,{className:"h-[500px] w-full"})}),n?n.total_pages>1&&e.jsx(le,{searchParams:s,paginate:n}):e.jsx(T,{className:"h-[36px] w-[300px]"})]})]})}function Le(){const t=E(),{selectedServiceAccounts:s}=j();return e.jsxs("div",{className:"flex flex-wrap items-center justify-between gap-2",children:[s.length?e.jsx(Ne,{}):e.jsx("div",{className:"flex items-center gap-2",children:e.jsx(ue,{searchParams:t})}),e.jsx(M,{isFallback:!1})]})}function lt(){return e.jsxs(q,{className:"space-y-4 p-5",children:[e.jsx(Me,{}),e.jsx(ze,{})]})}function Me(){return e.jsxs("div",{className:"space-y-2",children:[e.jsx("h1",{className:"text-text-xl font-semibold",children:"Service Accounts"}),e.jsxs("div",{className:"flex flex-wrap items-center gap-1",children:[e.jsx("p",{className:"text-text-sm text-theme-text-secondary",children:"Configure automated access for background tasks and integrations."}),e.jsx("a",{target:"_blank",rel:"noreferrer noopener",href:"https://docs.zenml.io/how-to/project-setup-and-management/connecting-to-zenml/connect-with-a-service-account",className:"link text-text-sm text-primary-400",children:"Learn More"})]})]})}export{lt as default};