zenml-nightly 0.62.0.dev20240729__py3-none-any.whl → 0.63.0.dev20240731__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 (157) hide show
  1. README.md +1 -1
  2. RELEASE_NOTES.md +41 -0
  3. zenml/VERSION +1 -1
  4. zenml/actions/pipeline_run/pipeline_run_action.py +19 -17
  5. zenml/analytics/enums.py +4 -0
  6. zenml/cli/__init__.py +28 -15
  7. zenml/cli/base.py +1 -1
  8. zenml/cli/pipeline.py +54 -61
  9. zenml/cli/stack.py +6 -8
  10. zenml/client.py +232 -99
  11. zenml/config/compiler.py +14 -22
  12. zenml/config/pipeline_run_configuration.py +3 -0
  13. zenml/config/server_config.py +3 -0
  14. zenml/config/source.py +2 -1
  15. zenml/constants.py +2 -0
  16. zenml/enums.py +3 -0
  17. zenml/integrations/aws/orchestrators/sagemaker_orchestrator.py +13 -4
  18. zenml/integrations/databricks/flavors/databricks_orchestrator_flavor.py +11 -2
  19. zenml/integrations/databricks/orchestrators/databricks_orchestrator.py +19 -13
  20. zenml/models/__init__.py +26 -10
  21. zenml/models/v2/base/filter.py +32 -0
  22. zenml/models/v2/core/pipeline.py +73 -89
  23. zenml/models/v2/core/pipeline_build.py +15 -11
  24. zenml/models/v2/core/pipeline_deployment.py +56 -0
  25. zenml/models/v2/core/pipeline_run.py +52 -1
  26. zenml/models/v2/core/run_template.py +393 -0
  27. zenml/models/v2/misc/stack_deployment.py +5 -0
  28. zenml/new/pipelines/build_utils.py +34 -58
  29. zenml/new/pipelines/pipeline.py +17 -76
  30. zenml/new/pipelines/run_utils.py +12 -0
  31. zenml/post_execution/pipeline.py +1 -4
  32. zenml/service_connectors/service_connector_utils.py +4 -2
  33. zenml/stack_deployments/aws_stack_deployment.py +6 -5
  34. zenml/stack_deployments/azure_stack_deployment.py +118 -11
  35. zenml/stack_deployments/gcp_stack_deployment.py +12 -5
  36. zenml/stack_deployments/stack_deployment.py +6 -5
  37. zenml/steps/utils.py +0 -4
  38. zenml/utils/package_utils.py +39 -0
  39. zenml/zen_server/dashboard/assets/{404-B_YdvmwS.js → 404-CI13wQp4.js} +1 -1
  40. zenml/zen_server/dashboard/assets/{@reactflow-l_1hUr1S.js → @reactflow-DIYUhKYX.js} +1 -1
  41. zenml/zen_server/dashboard/assets/{@tanstack-DYiOyJUL.js → @tanstack-k96lU_C-.js} +4 -4
  42. zenml/zen_server/dashboard/assets/{AwarenessChannel-CFg5iX4Z.js → AwarenessChannel-BNg5uWgI.js} +1 -1
  43. zenml/zen_server/dashboard/assets/{CodeSnippet-Dvkx_82E.js → CodeSnippet-Cyp7f4dM.js} +2 -2
  44. zenml/zen_server/dashboard/assets/CollapsibleCard-Cu_A9W57.js +1 -0
  45. zenml/zen_server/dashboard/assets/{Commands-DoN1xrEq.js → Commands-DmQwTXjj.js} +1 -1
  46. zenml/zen_server/dashboard/assets/{CopyButton-Cr7xYEPb.js → CopyButton-B3sWVJ4Z.js} +1 -1
  47. zenml/zen_server/dashboard/assets/{CsvVizualization-Ck-nZ43m.js → CsvVizualization-BvqItd-O.js} +1 -1
  48. zenml/zen_server/dashboard/assets/{Error-kLtljEOM.js → Error-DbXCTGua.js} +1 -1
  49. zenml/zen_server/dashboard/assets/{ExecutionStatus-DguLLgTK.js → ExecutionStatus-9zM7eaLh.js} +1 -1
  50. zenml/zen_server/dashboard/assets/{Helpbox-BXUMP21n.js → Helpbox-BIiNc-uH.js} +1 -1
  51. zenml/zen_server/dashboard/assets/{Infobox-DSt0O-dm.js → Infobox-iv1Nu1A0.js} +1 -1
  52. zenml/zen_server/dashboard/assets/{InlineAvatar-xsrsIGE-.js → InlineAvatar-BvBtO2Dp.js} +1 -1
  53. zenml/zen_server/dashboard/assets/ProviderRadio-pSAvrGRS.js +1 -0
  54. zenml/zen_server/dashboard/assets/SearchField-CXoBknpt.js +1 -0
  55. zenml/zen_server/dashboard/assets/{SetPassword-BXGTWiwj.js → SetPassword-BOxpgh6N.js} +1 -1
  56. zenml/zen_server/dashboard/assets/{SuccessStep-DZC60t0x.js → SuccessStep-CTSKN2lp.js} +1 -1
  57. zenml/zen_server/dashboard/assets/Tick-Bnr2TpW6.js +1 -0
  58. zenml/zen_server/dashboard/assets/{UpdatePasswordSchemas-DGvwFWO1.js → UpdatePasswordSchemas-BeCeaRW5.js} +1 -1
  59. zenml/zen_server/dashboard/assets/chevron-down-D_ZlKMqH.js +1 -0
  60. zenml/zen_server/dashboard/assets/{cloud-only-C_yFCAkP.js → cloud-only-qelmY92E.js} +1 -1
  61. zenml/zen_server/dashboard/assets/components-DWe4cTjS.js +1 -0
  62. zenml/zen_server/dashboard/assets/dots-horizontal-BObFzD5l.js +1 -0
  63. zenml/zen_server/dashboard/assets/{index-BczVOqUf.js → index-KsTz2dHG.js} +5 -5
  64. zenml/zen_server/dashboard/assets/index-vfjX_fJV.css +1 -0
  65. zenml/zen_server/dashboard/assets/index.esm-CbHNSeVw.js +1 -0
  66. zenml/zen_server/dashboard/assets/{login-mutation-CrHrndTI.js → login-mutation-DRpbESS7.js} +1 -1
  67. zenml/zen_server/dashboard/assets/{not-found-DYa4pC-C.js → not-found-Dfx9hfkf.js} +1 -1
  68. zenml/zen_server/dashboard/assets/package-ClbU3KUi.js +1 -0
  69. zenml/zen_server/dashboard/assets/{page-uA5prJGY.js → page-399pVZHU.js} +1 -1
  70. zenml/zen_server/dashboard/assets/{page-1h_sD1jz.js → page-BoFtUD9H.js} +1 -1
  71. zenml/zen_server/dashboard/assets/{page-BDns21Iz.js → page-Btu39x7k.js} +1 -1
  72. zenml/zen_server/dashboard/assets/{page-BnaevhnB.js → page-BxiWdeyg.js} +1 -1
  73. zenml/zen_server/dashboard/assets/{page-1iL8aMqs.js → page-C176KxyB.js} +1 -1
  74. zenml/zen_server/dashboard/assets/page-C6tXXjnK.js +1 -0
  75. zenml/zen_server/dashboard/assets/{page-BkeAAYwp.js → page-CDgZmwxP.js} +1 -1
  76. zenml/zen_server/dashboard/assets/page-CP9obrnG.js +1 -0
  77. zenml/zen_server/dashboard/assets/{page-C6-UGEbH.js → page-CZe9GEBF.js} +1 -1
  78. zenml/zen_server/dashboard/assets/page-CaTOsNNw.js +1 -0
  79. zenml/zen_server/dashboard/assets/{page-CCNRIt_f.js → page-Cjn97HMv.js} +1 -1
  80. zenml/zen_server/dashboard/assets/page-CmXmB_5i.js +1 -0
  81. zenml/zen_server/dashboard/assets/page-CvGAOfad.js +1 -0
  82. zenml/zen_server/dashboard/assets/page-CzucfYPo.js +2 -0
  83. zenml/zen_server/dashboard/assets/{page-Bi-wtWiO.js → page-D0bbc-qr.js} +1 -1
  84. zenml/zen_server/dashboard/assets/page-DLEtD2ex.js +1 -0
  85. zenml/zen_server/dashboard/assets/{page-BhgCDInH.js → page-DVPxY5fT.js} +1 -1
  86. zenml/zen_server/dashboard/assets/{page-BkuQDIf-.js → page-DYBNGxJt.js} +1 -1
  87. zenml/zen_server/dashboard/assets/{page-8a4UMKXZ.js → page-DtpwnNXq.js} +1 -1
  88. zenml/zen_server/dashboard/assets/{page-B6h3iaHJ.js → page-DupV0aBd.js} +1 -1
  89. zenml/zen_server/dashboard/assets/page-EweAR81y.js +1 -0
  90. zenml/zen_server/dashboard/assets/{page-MFQyIJd3.js → page-f3jBVI5Z.js} +1 -1
  91. zenml/zen_server/dashboard/assets/{page-2grKx_MY.js → page-p2hLJdS2.js} +1 -1
  92. zenml/zen_server/dashboard/assets/page-w-YaL77M.js +9 -0
  93. zenml/zen_server/dashboard/assets/persist-BReKApOc.js +14 -0
  94. zenml/zen_server/dashboard/assets/plus-DOeLmm7C.js +1 -0
  95. zenml/zen_server/dashboard/assets/{stack-detail-query-Cficsl6d.js → stack-detail-query-Ck7j7BP_.js} +1 -1
  96. zenml/zen_server/dashboard/assets/{update-server-settings-mutation-7d8xi1tS.js → update-server-settings-mutation-f3ZT7psb.js} +1 -1
  97. zenml/zen_server/dashboard/assets/{url-D7mAQGUM.js → url-rGEp5Umh.js} +1 -1
  98. zenml/zen_server/dashboard/assets/{zod-BhoGpZ63.js → zod-BtSyGx4C.js} +1 -1
  99. zenml/zen_server/dashboard/index.html +5 -5
  100. zenml/zen_server/dashboard_legacy/asset-manifest.json +4 -4
  101. zenml/zen_server/dashboard_legacy/index.html +1 -1
  102. zenml/zen_server/dashboard_legacy/{precache-manifest.12246c7548e71e2c4438e496360de80c.js → precache-manifest.2fa6e528a6e7447caaf35dadfe7514bb.js} +4 -4
  103. zenml/zen_server/dashboard_legacy/service-worker.js +1 -1
  104. zenml/zen_server/dashboard_legacy/static/js/{main.3b27024b.chunk.js → main.4aab7e98.chunk.js} +2 -2
  105. zenml/zen_server/dashboard_legacy/static/js/{main.3b27024b.chunk.js.map → main.4aab7e98.chunk.js.map} +1 -1
  106. zenml/zen_server/deploy/helm/Chart.yaml +1 -1
  107. zenml/zen_server/deploy/helm/README.md +2 -2
  108. zenml/zen_server/rbac/models.py +1 -0
  109. zenml/zen_server/rbac/utils.py +4 -0
  110. zenml/zen_server/routers/pipeline_builds_endpoints.py +2 -66
  111. zenml/zen_server/routers/pipeline_deployments_endpoints.py +2 -53
  112. zenml/zen_server/routers/pipelines_endpoints.py +1 -74
  113. zenml/zen_server/routers/run_templates_endpoints.py +212 -0
  114. zenml/zen_server/routers/workspaces_endpoints.py +79 -0
  115. zenml/zen_server/{pipeline_deployment → template_execution}/runner_entrypoint_configuration.py +1 -8
  116. zenml/zen_server/{pipeline_deployment → template_execution}/utils.py +214 -92
  117. zenml/zen_server/utils.py +2 -2
  118. zenml/zen_server/zen_server_api.py +2 -1
  119. zenml/zen_stores/migrations/versions/0.63.0_release.py +23 -0
  120. zenml/zen_stores/migrations/versions/7d1919bb1ef0_add_run_templates.py +100 -0
  121. zenml/zen_stores/migrations/versions/b59aa68fdb1f_simplify_pipelines.py +139 -0
  122. zenml/zen_stores/rest_zen_store.py +107 -36
  123. zenml/zen_stores/schemas/__init__.py +2 -0
  124. zenml/zen_stores/schemas/pipeline_build_schemas.py +3 -3
  125. zenml/zen_stores/schemas/pipeline_deployment_schemas.py +29 -2
  126. zenml/zen_stores/schemas/pipeline_run_schemas.py +26 -3
  127. zenml/zen_stores/schemas/pipeline_schemas.py +29 -30
  128. zenml/zen_stores/schemas/run_template_schemas.py +264 -0
  129. zenml/zen_stores/schemas/step_run_schemas.py +11 -4
  130. zenml/zen_stores/sql_zen_store.py +364 -150
  131. zenml/zen_stores/template_utils.py +261 -0
  132. zenml/zen_stores/zen_store_interface.py +93 -20
  133. {zenml_nightly-0.62.0.dev20240729.dist-info → zenml_nightly-0.63.0.dev20240731.dist-info}/METADATA +2 -2
  134. {zenml_nightly-0.62.0.dev20240729.dist-info → zenml_nightly-0.63.0.dev20240731.dist-info}/RECORD +139 -129
  135. zenml/models/v2/core/pipeline_namespace.py +0 -113
  136. zenml/new/pipelines/deserialization_utils.py +0 -292
  137. zenml/zen_server/dashboard/assets/CollapsibleCard-opiuBHHc.js +0 -1
  138. zenml/zen_server/dashboard/assets/Pagination-C6X-mifw.js +0 -1
  139. zenml/zen_server/dashboard/assets/index-EpMIKgrI.css +0 -1
  140. zenml/zen_server/dashboard/assets/index-rK_Wuy2W.js +0 -1
  141. zenml/zen_server/dashboard/assets/index.esm-Corw4lXQ.js +0 -1
  142. zenml/zen_server/dashboard/assets/package-B3fWP-Dh.js +0 -1
  143. zenml/zen_server/dashboard/assets/page-5NCOHOsy.js +0 -1
  144. zenml/zen_server/dashboard/assets/page-Bq0YxkLV.js +0 -1
  145. zenml/zen_server/dashboard/assets/page-Bs2F4eoD.js +0 -2
  146. zenml/zen_server/dashboard/assets/page-CHNxpz3n.js +0 -1
  147. zenml/zen_server/dashboard/assets/page-DgorQFqi.js +0 -1
  148. zenml/zen_server/dashboard/assets/page-K8ebxVIs.js +0 -1
  149. zenml/zen_server/dashboard/assets/page-TgCF0P_U.js +0 -1
  150. zenml/zen_server/dashboard/assets/page-ZnCEe-eK.js +0 -9
  151. zenml/zen_server/dashboard/assets/persist-D7HJNBWx.js +0 -1
  152. zenml/zen_server/dashboard/assets/plus-C8WOyCzt.js +0 -1
  153. /zenml/zen_server/{pipeline_deployment → template_execution}/__init__.py +0 -0
  154. /zenml/zen_server/{pipeline_deployment → template_execution}/workload_manager_interface.py +0 -0
  155. {zenml_nightly-0.62.0.dev20240729.dist-info → zenml_nightly-0.63.0.dev20240731.dist-info}/LICENSE +0 -0
  156. {zenml_nightly-0.62.0.dev20240729.dist-info → zenml_nightly-0.63.0.dev20240731.dist-info}/WHEEL +0 -0
  157. {zenml_nightly-0.62.0.dev20240729.dist-info → zenml_nightly-0.63.0.dev20240731.dist-info}/entry_points.txt +0 -0
@@ -1 +0,0 @@
1
- import{b as m}from"./@radix-CFOkMR_E.js";var fe=e=>e.type==="checkbox",ie=e=>e instanceof Date,U=e=>e==null;const et=e=>typeof e=="object";var T=e=>!U(e)&&!Array.isArray(e)&&et(e)&&!ie(e),tt=e=>T(e)&&e.target?fe(e.target)?e.target.checked:e.target.value:e,xt=e=>e.substring(0,e.search(/\.\d+(\.|$)/))||e,rt=(e,s)=>e.has(xt(s)),mt=e=>{const s=e.constructor&&e.constructor.prototype;return T(s)&&s.hasOwnProperty("isPrototypeOf")},Re=typeof window<"u"&&typeof window.HTMLElement<"u"&&typeof document<"u";function p(e){let s;const t=Array.isArray(e);if(e instanceof Date)s=new Date(e);else if(e instanceof Set)s=new Set(e);else if(!(Re&&(e instanceof Blob||e instanceof FileList))&&(t||T(e)))if(s=t?[]:{},!t&&!mt(e))s=e;else for(const u in e)e.hasOwnProperty(u)&&(s[u]=p(e[u]));else return e;return s}var ce=e=>Array.isArray(e)?e.filter(Boolean):[],w=e=>e===void 0,f=(e,s,t)=>{if(!s||!T(e))return t;const u=ce(s.split(/[,[\].]+?/)).reduce((n,l)=>U(n)?n:n[l],e);return w(u)||u===e?w(e[s])?t:e[s]:u},j=e=>typeof e=="boolean",Te=e=>/^\w*$/.test(e),st=e=>ce(e.replace(/["|']|\]/g,"").split(/\.|\[/)),x=(e,s,t)=>{let u=-1;const n=Te(s)?[s]:st(s),l=n.length,y=l-1;for(;++u<l;){const h=n[u];let D=t;if(u!==y){const S=e[h];D=T(S)||Array.isArray(S)?S:isNaN(+n[u+1])?{}:[]}if(h==="__proto__")return;e[h]=D,e=e[h]}return e};const _e={BLUR:"blur",FOCUS_OUT:"focusout",CHANGE:"change"},W={onBlur:"onBlur",onChange:"onChange",onSubmit:"onSubmit",onTouched:"onTouched",all:"all"},z={max:"max",min:"min",maxLength:"maxLength",minLength:"minLength",pattern:"pattern",required:"required",validate:"validate"},it=m.createContext(null),Le=()=>m.useContext(it),Wt=e=>{const{children:s,...t}=e;return m.createElement(it.Provider,{value:t},s)};var ut=(e,s,t,u=!0)=>{const n={defaultValues:s._defaultValues};for(const l in e)Object.defineProperty(n,l,{get:()=>{const y=l;return s._proxyFormState[y]!==W.all&&(s._proxyFormState[y]=!u||W.all),t&&(t[y]=!0),e[y]}});return n},B=e=>T(e)&&!Object.keys(e).length,at=(e,s,t,u)=>{t(e);const{name:n,...l}=e;return B(l)||Object.keys(l).length>=Object.keys(s).length||Object.keys(l).find(y=>s[y]===(!u||W.all))},he=e=>Array.isArray(e)?e:[e],lt=(e,s,t)=>!e||!s||e===s||he(e).some(u=>u&&(t?u===s:u.startsWith(s)||s.startsWith(u)));function Oe(e){const s=m.useRef(e);s.current=e,m.useEffect(()=>{const t=!e.disabled&&s.current.subject&&s.current.subject.subscribe({next:s.current.next});return()=>{t&&t.unsubscribe()}},[e.disabled])}function Dt(e){const s=Le(),{control:t=s.control,disabled:u,name:n,exact:l}=e||{},[y,h]=m.useState(t._formState),D=m.useRef(!0),S=m.useRef({isDirty:!1,isLoading:!1,dirtyFields:!1,touchedFields:!1,validatingFields:!1,isValidating:!1,isValid:!1,errors:!1}),_=m.useRef(n);return _.current=n,Oe({disabled:u,next:v=>D.current&&lt(_.current,v.name,l)&&at(v,S.current,t._updateFormState)&&h({...t._formState,...v}),subject:t._subjects.state}),m.useEffect(()=>(D.current=!0,S.current.isValid&&t._updateValid(!0),()=>{D.current=!1}),[t]),ut(y,t,S.current,!1)}var $=e=>typeof e=="string",nt=(e,s,t,u,n)=>$(e)?(u&&s.watch.add(e),f(t,e,n)):Array.isArray(e)?e.map(l=>(u&&s.watch.add(l),f(t,l))):(u&&(s.watchAll=!0),t);function wt(e){const s=Le(),{control:t=s.control,name:u,defaultValue:n,disabled:l,exact:y}=e||{},h=m.useRef(u);h.current=u,Oe({disabled:l,subject:t._subjects.values,next:_=>{lt(h.current,_.name,y)&&S(p(nt(h.current,t._names,_.values||t._formValues,!1,n)))}});const[D,S]=m.useState(t._getWatch(u,n));return m.useEffect(()=>t._removeUnmounted()),D}function Et(e){const s=Le(),{name:t,disabled:u,control:n=s.control,shouldUnregister:l}=e,y=rt(n._names.array,t),h=wt({control:n,name:t,defaultValue:f(n._formValues,t,f(n._defaultValues,t,e.defaultValue)),exact:!0}),D=Dt({control:n,name:t}),S=m.useRef(n.register(t,{...e.rules,value:h,...j(e.disabled)?{disabled:e.disabled}:{}}));return m.useEffect(()=>{const _=n._options.shouldUnregister||l,v=(N,H)=>{const L=f(n._fields,N);L&&(L._f.mount=H)};if(v(t,!0),_){const N=p(f(n._options.defaultValues,t));x(n._defaultValues,t,N),w(f(n._formValues,t))&&x(n._formValues,t,N)}return()=>{(y?_&&!n._state.action:_)?n.unregister(t):v(t,!1)}},[t,n,y,l]),m.useEffect(()=>{f(n._fields,t)&&n._updateDisabledField({disabled:u,fields:n._fields,name:t,value:f(n._fields,t)._f.value})},[u,t,n]),{field:{name:t,value:h,...j(u)||D.disabled?{disabled:D.disabled||u}:{},onChange:m.useCallback(_=>S.current.onChange({target:{value:tt(_),name:t},type:_e.CHANGE}),[t]),onBlur:m.useCallback(()=>S.current.onBlur({target:{value:f(n._formValues,t),name:t},type:_e.BLUR}),[t,n]),ref:_=>{const v=f(n._fields,t);v&&_&&(v._f.ref={focus:()=>_.focus(),select:()=>_.select(),setCustomValidity:N=>_.setCustomValidity(N),reportValidity:()=>_.reportValidity()})}},formState:D,fieldState:Object.defineProperties({},{invalid:{enumerable:!0,get:()=>!!f(D.errors,t)},isDirty:{enumerable:!0,get:()=>!!f(D.dirtyFields,t)},isTouched:{enumerable:!0,get:()=>!!f(D.touchedFields,t)},isValidating:{enumerable:!0,get:()=>!!f(D.validatingFields,t)},error:{enumerable:!0,get:()=>f(D.errors,t)}})}}const Ht=e=>e.render(Et(e));var St=(e,s,t,u,n)=>s?{...t[e],types:{...t[e]&&t[e].types?t[e].types:{},[u]:n||!0}}:{},Ke=e=>({isOnSubmit:!e||e===W.onSubmit,isOnBlur:e===W.onBlur,isOnChange:e===W.onChange,isOnAll:e===W.all,isOnTouch:e===W.onTouched}),Ge=(e,s,t)=>!t&&(s.watchAll||s.watch.has(e)||[...s.watch].some(u=>e.startsWith(u)&&/^\.\w+/.test(e.slice(u.length))));const oe=(e,s,t,u)=>{for(const n of t||Object.keys(e)){const l=f(e,n);if(l){const{_f:y,...h}=l;if(y){if(y.refs&&y.refs[0]&&s(y.refs[0],n)&&!u)break;if(y.ref&&s(y.ref,y.name)&&!u)break;oe(h,s)}else T(h)&&oe(h,s)}}};var kt=(e,s,t)=>{const u=ce(f(e,t));return x(u,"root",s[t]),x(e,t,u),e},Ue=e=>e.type==="file",X=e=>typeof e=="function",be=e=>{if(!Re)return!1;const s=e?e.ownerDocument:0;return e instanceof(s&&s.defaultView?s.defaultView.HTMLElement:HTMLElement)},ve=e=>$(e),pe=e=>e.type==="radio",Ve=e=>e instanceof RegExp;const ze={value:!1,isValid:!1},Je={value:!0,isValid:!0};var ot=e=>{if(Array.isArray(e)){if(e.length>1){const s=e.filter(t=>t&&t.checked&&!t.disabled).map(t=>t.value);return{value:s,isValid:!!s.length}}return e[0].checked&&!e[0].disabled?e[0].attributes&&!w(e[0].attributes.value)?w(e[0].value)||e[0].value===""?Je:{value:e[0].value,isValid:!0}:Je:ze}return ze};const Qe={isValid:!1,value:null};var ft=e=>Array.isArray(e)?e.reduce((s,t)=>t&&t.checked&&!t.disabled?{isValid:!0,value:t.value}:s,Qe):Qe;function Xe(e,s,t="validate"){if(ve(e)||Array.isArray(e)&&e.every(ve)||j(e)&&!e)return{type:t,message:ve(e)?e:"",ref:s}}var se=e=>T(e)&&!Ve(e)?e:{value:e,message:""},Ye=async(e,s,t,u,n)=>{const{ref:l,refs:y,required:h,maxLength:D,minLength:S,min:_,max:v,pattern:N,validate:H,name:L,valueAsNumber:xe,mount:J,disabled:Q}=e._f,V=f(s,L);if(!J||Q)return{};const K=y?y[0]:l,G=b=>{u&&K.reportValidity&&(K.setCustomValidity(j(b)?"":b||""),K.reportValidity())},k={},ee=pe(l),de=fe(l),Y=ee||de,te=(xe||Ue(l))&&w(l.value)&&w(V)||be(l)&&l.value===""||V===""||Array.isArray(V)&&!V.length,P=St.bind(null,L,t,k),ye=(b,F,C,O=z.maxLength,q=z.minLength)=>{const I=b?F:C;k[L]={type:b?O:q,message:I,ref:l,...P(b?O:q,I)}};if(n?!Array.isArray(V)||!V.length:h&&(!Y&&(te||U(V))||j(V)&&!V||de&&!ot(y).isValid||ee&&!ft(y).isValid)){const{value:b,message:F}=ve(h)?{value:!!h,message:h}:se(h);if(b&&(k[L]={type:z.required,message:F,ref:K,...P(z.required,F)},!t))return G(F),k}if(!te&&(!U(_)||!U(v))){let b,F;const C=se(v),O=se(_);if(!U(V)&&!isNaN(V)){const q=l.valueAsNumber||V&&+V;U(C.value)||(b=q>C.value),U(O.value)||(F=q<O.value)}else{const q=l.valueAsDate||new Date(V),I=le=>new Date(new Date().toDateString()+" "+le),ue=l.type=="time",ae=l.type=="week";$(C.value)&&V&&(b=ue?I(V)>I(C.value):ae?V>C.value:q>new Date(C.value)),$(O.value)&&V&&(F=ue?I(V)<I(O.value):ae?V<O.value:q<new Date(O.value))}if((b||F)&&(ye(!!b,C.message,O.message,z.max,z.min),!t))return G(k[L].message),k}if((D||S)&&!te&&($(V)||n&&Array.isArray(V))){const b=se(D),F=se(S),C=!U(b.value)&&V.length>+b.value,O=!U(F.value)&&V.length<+F.value;if((C||O)&&(ye(C,b.message,F.message),!t))return G(k[L].message),k}if(N&&!te&&$(V)){const{value:b,message:F}=se(N);if(Ve(b)&&!V.match(b)&&(k[L]={type:z.pattern,message:F,ref:l,...P(z.pattern,F)},!t))return G(F),k}if(H){if(X(H)){const b=await H(V,s),F=Xe(b,K);if(F&&(k[L]={...F,...P(z.validate,F.message)},!t))return G(F.message),k}else if(T(H)){let b={};for(const F in H){if(!B(b)&&!t)break;const C=Xe(await H[F](V,s),K,F);C&&(b={...C,...P(F,C.message)},G(C.message),t&&(k[L]=b))}if(!B(b)&&(k[L]={ref:K,...b},!t))return k}}return G(!0),k};function Ct(e,s){const t=s.slice(0,-1).length;let u=0;for(;u<t;)e=w(e)?u++:e[s[u++]];return e}function Rt(e){for(const s in e)if(e.hasOwnProperty(s)&&!w(e[s]))return!1;return!0}function R(e,s){const t=Array.isArray(s)?s:Te(s)?[s]:st(s),u=t.length===1?e:Ct(e,t),n=t.length-1,l=t[n];return u&&delete u[l],n!==0&&(T(u)&&B(u)||Array.isArray(u)&&Rt(u))&&R(e,t.slice(0,-1)),e}var Se=()=>{let e=[];return{get observers(){return e},next:n=>{for(const l of e)l.next&&l.next(n)},subscribe:n=>(e.push(n),{unsubscribe:()=>{e=e.filter(l=>l!==n)}}),unsubscribe:()=>{e=[]}}},Fe=e=>U(e)||!et(e);function Z(e,s){if(Fe(e)||Fe(s))return e===s;if(ie(e)&&ie(s))return e.getTime()===s.getTime();const t=Object.keys(e),u=Object.keys(s);if(t.length!==u.length)return!1;for(const n of t){const l=e[n];if(!u.includes(n))return!1;if(n!=="ref"){const y=s[n];if(ie(l)&&ie(y)||T(l)&&T(y)||Array.isArray(l)&&Array.isArray(y)?!Z(l,y):l!==y)return!1}}return!0}var ct=e=>e.type==="select-multiple",Tt=e=>pe(e)||fe(e),ke=e=>be(e)&&e.isConnected,dt=e=>{for(const s in e)if(X(e[s]))return!0;return!1};function Ae(e,s={}){const t=Array.isArray(e);if(T(e)||t)for(const u in e)Array.isArray(e[u])||T(e[u])&&!dt(e[u])?(s[u]=Array.isArray(e[u])?[]:{},Ae(e[u],s[u])):U(e[u])||(s[u]=!0);return s}function yt(e,s,t){const u=Array.isArray(e);if(T(e)||u)for(const n in e)Array.isArray(e[n])||T(e[n])&&!dt(e[n])?w(s)||Fe(t[n])?t[n]=Array.isArray(e[n])?Ae(e[n],[]):{...Ae(e[n])}:yt(e[n],U(s)?{}:s[n],t[n]):t[n]=!Z(e[n],s[n]);return t}var ge=(e,s)=>yt(e,s,Ae(s)),gt=(e,{valueAsNumber:s,valueAsDate:t,setValueAs:u})=>w(e)?e:s?e===""?NaN:e&&+e:t&&$(e)?new Date(e):u?u(e):e;function Ce(e){const s=e.ref;if(!(e.refs?e.refs.every(t=>t.disabled):s.disabled))return Ue(s)?s.files:pe(s)?ft(e.refs).value:ct(s)?[...s.selectedOptions].map(({value:t})=>t):fe(s)?ot(e.refs).value:gt(w(s.value)?e.ref.value:s.value,e)}var Lt=(e,s,t,u)=>{const n={};for(const l of e){const y=f(s,l);y&&x(n,l,y._f)}return{criteriaMode:t,names:[...e],fields:n,shouldUseNativeValidation:u}},ne=e=>w(e)?e:Ve(e)?e.source:T(e)?Ve(e.value)?e.value.source:e.value:e,Ot=e=>e.mount&&(e.required||e.min||e.max||e.maxLength||e.minLength||e.pattern||e.validate);function Ze(e,s,t){const u=f(e,t);if(u||Te(t))return{error:u,name:t};const n=t.split(".");for(;n.length;){const l=n.join("."),y=f(s,l),h=f(e,l);if(y&&!Array.isArray(y)&&t!==l)return{name:t};if(h&&h.type)return{name:l,error:h};n.pop()}return{name:t}}var Ut=(e,s,t,u,n)=>n.isOnAll?!1:!t&&n.isOnTouch?!(s||e):(t?u.isOnBlur:n.isOnBlur)?!e:(t?u.isOnChange:n.isOnChange)?e:!0,pt=(e,s)=>!ce(f(e,s)).length&&R(e,s);const Mt={mode:W.onSubmit,reValidateMode:W.onChange,shouldFocusError:!0};function Bt(e={}){let s={...Mt,...e},t={submitCount:0,isDirty:!1,isLoading:X(s.defaultValues),isValidating:!1,isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,touchedFields:{},dirtyFields:{},validatingFields:{},errors:s.errors||{},disabled:s.disabled||!1},u={},n=T(s.defaultValues)||T(s.values)?p(s.defaultValues||s.values)||{}:{},l=s.shouldUnregister?{}:p(n),y={action:!1,mount:!1,watch:!1},h={mount:new Set,unMount:new Set,array:new Set,watch:new Set},D,S=0;const _={isDirty:!1,dirtyFields:!1,validatingFields:!1,touchedFields:!1,isValidating:!1,isValid:!1,errors:!1},v={values:Se(),array:Se(),state:Se()},N=Ke(s.mode),H=Ke(s.reValidateMode),L=s.criteriaMode===W.all,xe=r=>i=>{clearTimeout(S),S=setTimeout(r,i)},J=async r=>{if(_.isValid||r){const i=s.resolver?B((await Y()).errors):await P(u,!0);i!==t.isValid&&v.state.next({isValid:i})}},Q=(r,i)=>{(_.isValidating||_.validatingFields)&&((r||Array.from(h.mount)).forEach(a=>{a&&(i?x(t.validatingFields,a,i):R(t.validatingFields,a))}),v.state.next({validatingFields:t.validatingFields,isValidating:!B(t.validatingFields)}))},V=(r,i=[],a,d,c=!0,o=!0)=>{if(d&&a){if(y.action=!0,o&&Array.isArray(f(u,r))){const g=a(f(u,r),d.argA,d.argB);c&&x(u,r,g)}if(o&&Array.isArray(f(t.errors,r))){const g=a(f(t.errors,r),d.argA,d.argB);c&&x(t.errors,r,g),pt(t.errors,r)}if(_.touchedFields&&o&&Array.isArray(f(t.touchedFields,r))){const g=a(f(t.touchedFields,r),d.argA,d.argB);c&&x(t.touchedFields,r,g)}_.dirtyFields&&(t.dirtyFields=ge(n,l)),v.state.next({name:r,isDirty:b(r,i),dirtyFields:t.dirtyFields,errors:t.errors,isValid:t.isValid})}else x(l,r,i)},K=(r,i)=>{x(t.errors,r,i),v.state.next({errors:t.errors})},G=r=>{t.errors=r,v.state.next({errors:t.errors,isValid:!1})},k=(r,i,a,d)=>{const c=f(u,r);if(c){const o=f(l,r,w(a)?f(n,r):a);w(o)||d&&d.defaultChecked||i?x(l,r,i?o:Ce(c._f)):O(r,o),y.mount&&J()}},ee=(r,i,a,d,c)=>{let o=!1,g=!1;const A={name:r},E=!!(f(u,r)&&f(u,r)._f.disabled);if(!a||d){_.isDirty&&(g=t.isDirty,t.isDirty=A.isDirty=b(),o=g!==A.isDirty);const M=E||Z(f(n,r),i);g=!!(!E&&f(t.dirtyFields,r)),M||E?R(t.dirtyFields,r):x(t.dirtyFields,r,!0),A.dirtyFields=t.dirtyFields,o=o||_.dirtyFields&&g!==!M}if(a){const M=f(t.touchedFields,r);M||(x(t.touchedFields,r,a),A.touchedFields=t.touchedFields,o=o||_.touchedFields&&M!==a)}return o&&c&&v.state.next(A),o?A:{}},de=(r,i,a,d)=>{const c=f(t.errors,r),o=_.isValid&&j(i)&&t.isValid!==i;if(e.delayError&&a?(D=xe(()=>K(r,a)),D(e.delayError)):(clearTimeout(S),D=null,a?x(t.errors,r,a):R(t.errors,r)),(a?!Z(c,a):c)||!B(d)||o){const g={...d,...o&&j(i)?{isValid:i}:{},errors:t.errors,name:r};t={...t,...g},v.state.next(g)}},Y=async r=>{Q(r,!0);const i=await s.resolver(l,s.context,Lt(r||h.mount,u,s.criteriaMode,s.shouldUseNativeValidation));return Q(r),i},te=async r=>{const{errors:i}=await Y(r);if(r)for(const a of r){const d=f(i,a);d?x(t.errors,a,d):R(t.errors,a)}else t.errors=i;return i},P=async(r,i,a={valid:!0})=>{for(const d in r){const c=r[d];if(c){const{_f:o,...g}=c;if(o){const A=h.array.has(o.name);Q([d],!0);const E=await Ye(c,l,L,s.shouldUseNativeValidation&&!i,A);if(Q([d]),E[o.name]&&(a.valid=!1,i))break;!i&&(f(E,o.name)?A?kt(t.errors,E,o.name):x(t.errors,o.name,E[o.name]):R(t.errors,o.name))}g&&await P(g,i,a)}}return a.valid},ye=()=>{for(const r of h.unMount){const i=f(u,r);i&&(i._f.refs?i._f.refs.every(a=>!ke(a)):!ke(i._f.ref))&&me(r)}h.unMount=new Set},b=(r,i)=>(r&&i&&x(l,r,i),!Z(Me(),n)),F=(r,i,a)=>nt(r,h,{...y.mount?l:w(i)?n:$(r)?{[r]:i}:i},a,i),C=r=>ce(f(y.mount?l:n,r,e.shouldUnregister?f(n,r,[]):[])),O=(r,i,a={})=>{const d=f(u,r);let c=i;if(d){const o=d._f;o&&(!o.disabled&&x(l,r,gt(i,o)),c=be(o.ref)&&U(i)?"":i,ct(o.ref)?[...o.ref.options].forEach(g=>g.selected=c.includes(g.value)):o.refs?fe(o.ref)?o.refs.length>1?o.refs.forEach(g=>(!g.defaultChecked||!g.disabled)&&(g.checked=Array.isArray(c)?!!c.find(A=>A===g.value):c===g.value)):o.refs[0]&&(o.refs[0].checked=!!c):o.refs.forEach(g=>g.checked=g.value===c):Ue(o.ref)?o.ref.value="":(o.ref.value=c,o.ref.type||v.values.next({name:r,values:{...l}})))}(a.shouldDirty||a.shouldTouch)&&ee(r,c,a.shouldTouch,a.shouldDirty,!0),a.shouldValidate&&le(r)},q=(r,i,a)=>{for(const d in i){const c=i[d],o=`${r}.${d}`,g=f(u,o);(h.array.has(r)||!Fe(c)||g&&!g._f)&&!ie(c)?q(o,c,a):O(o,c,a)}},I=(r,i,a={})=>{const d=f(u,r),c=h.array.has(r),o=p(i);x(l,r,o),c?(v.array.next({name:r,values:{...l}}),(_.isDirty||_.dirtyFields)&&a.shouldDirty&&v.state.next({name:r,dirtyFields:ge(n,l),isDirty:b(r,o)})):d&&!d._f&&!U(o)?q(r,o,a):O(r,o,a),Ge(r,h)&&v.state.next({...t}),v.values.next({name:y.mount?r:void 0,values:{...l}})},ue=async r=>{y.mount=!0;const i=r.target;let a=i.name,d=!0;const c=f(u,a),o=()=>i.type?Ce(c._f):tt(r),g=A=>{d=Number.isNaN(A)||A===f(l,a,A)};if(c){let A,E;const M=o(),re=r.type===_e.BLUR||r.type===_e.FOCUS_OUT,Vt=!Ot(c._f)&&!s.resolver&&!f(t.errors,a)&&!c._f.deps||Ut(re,f(t.touchedFields,a),t.isSubmitted,H,N),we=Ge(a,h,re);x(l,a,M),re?(c._f.onBlur&&c._f.onBlur(r),D&&D(0)):c._f.onChange&&c._f.onChange(r);const Ee=ee(a,M,re,!1),Ft=!B(Ee)||we;if(!re&&v.values.next({name:a,type:r.type,values:{...l}}),Vt)return _.isValid&&J(),Ft&&v.state.next({name:a,...we?{}:Ee});if(!re&&we&&v.state.next({...t}),s.resolver){const{errors:je}=await Y([a]);if(g(M),d){const At=Ze(t.errors,u,a),$e=Ze(je,u,At.name||a);A=$e.error,a=$e.name,E=B(je)}}else Q([a],!0),A=(await Ye(c,l,L,s.shouldUseNativeValidation))[a],Q([a]),g(M),d&&(A?E=!1:_.isValid&&(E=await P(u,!0)));d&&(c._f.deps&&le(c._f.deps),de(a,E,A,Ee))}},ae=(r,i)=>{if(f(t.errors,i)&&r.focus)return r.focus(),1},le=async(r,i={})=>{let a,d;const c=he(r);if(s.resolver){const o=await te(w(r)?r:c);a=B(o),d=r?!c.some(g=>f(o,g)):a}else r?(d=(await Promise.all(c.map(async o=>{const g=f(u,o);return await P(g&&g._f?{[o]:g}:g)}))).every(Boolean),!(!d&&!t.isValid)&&J()):d=a=await P(u);return v.state.next({...!$(r)||_.isValid&&a!==t.isValid?{}:{name:r},...s.resolver||!r?{isValid:a}:{},errors:t.errors}),i.shouldFocus&&!d&&oe(u,ae,r?c:h.mount),d},Me=r=>{const i={...y.mount?l:n};return w(r)?i:$(r)?f(i,r):r.map(a=>f(i,a))},Be=(r,i)=>({invalid:!!f((i||t).errors,r),isDirty:!!f((i||t).dirtyFields,r),isTouched:!!f((i||t).touchedFields,r),isValidating:!!f((i||t).validatingFields,r),error:f((i||t).errors,r)}),ht=r=>{r&&he(r).forEach(i=>R(t.errors,i)),v.state.next({errors:r?t.errors:{}})},Pe=(r,i,a)=>{const d=(f(u,r,{_f:{}})._f||{}).ref,c=f(t.errors,r)||{},{ref:o,message:g,type:A,...E}=c;x(t.errors,r,{...E,...i,ref:d}),v.state.next({name:r,errors:t.errors,isValid:!1}),a&&a.shouldFocus&&d&&d.focus&&d.focus()},vt=(r,i)=>X(r)?v.values.subscribe({next:a=>r(F(void 0,i),a)}):F(r,i,!0),me=(r,i={})=>{for(const a of r?he(r):h.mount)h.mount.delete(a),h.array.delete(a),i.keepValue||(R(u,a),R(l,a)),!i.keepError&&R(t.errors,a),!i.keepDirty&&R(t.dirtyFields,a),!i.keepTouched&&R(t.touchedFields,a),!i.keepIsValidating&&R(t.validatingFields,a),!s.shouldUnregister&&!i.keepDefaultValue&&R(n,a);v.values.next({values:{...l}}),v.state.next({...t,...i.keepDirty?{isDirty:b()}:{}}),!i.keepIsValid&&J()},Ie=({disabled:r,name:i,field:a,fields:d,value:c})=>{if(j(r)&&y.mount||r){const o=r?void 0:w(c)?Ce(a?a._f:f(d,i)._f):c;x(l,i,o),ee(i,o,!1,!1,!0)}},De=(r,i={})=>{let a=f(u,r);const d=j(i.disabled);return x(u,r,{...a||{},_f:{...a&&a._f?a._f:{ref:{name:r}},name:r,mount:!0,...i}}),h.mount.add(r),a?Ie({field:a,disabled:i.disabled,name:r,value:i.value}):k(r,!0,i.value),{...d?{disabled:i.disabled}:{},...s.progressive?{required:!!i.required,min:ne(i.min),max:ne(i.max),minLength:ne(i.minLength),maxLength:ne(i.maxLength),pattern:ne(i.pattern)}:{},name:r,onChange:ue,onBlur:ue,ref:c=>{if(c){De(r,i),a=f(u,r);const o=w(c.value)&&c.querySelectorAll&&c.querySelectorAll("input,select,textarea")[0]||c,g=Tt(o),A=a._f.refs||[];if(g?A.find(E=>E===o):o===a._f.ref)return;x(u,r,{_f:{...a._f,...g?{refs:[...A.filter(ke),o,...Array.isArray(f(n,r))?[{}]:[]],ref:{type:o.type,name:r}}:{ref:o}}}),k(r,!1,void 0,o)}else a=f(u,r,{}),a._f&&(a._f.mount=!1),(s.shouldUnregister||i.shouldUnregister)&&!(rt(h.array,r)&&y.action)&&h.unMount.add(r)}}},Ne=()=>s.shouldFocusError&&oe(u,ae,h.mount),_t=r=>{j(r)&&(v.state.next({disabled:r}),oe(u,(i,a)=>{const d=f(u,a);d&&(i.disabled=d._f.disabled||r,Array.isArray(d._f.refs)&&d._f.refs.forEach(c=>{c.disabled=d._f.disabled||r}))},0,!1))},qe=(r,i)=>async a=>{let d;a&&(a.preventDefault&&a.preventDefault(),a.persist&&a.persist());let c=p(l);if(v.state.next({isSubmitting:!0}),s.resolver){const{errors:o,values:g}=await Y();t.errors=o,c=g}else await P(u);if(R(t.errors,"root"),B(t.errors)){v.state.next({errors:{}});try{await r(c,a)}catch(o){d=o}}else i&&await i({...t.errors},a),Ne(),setTimeout(Ne);if(v.state.next({isSubmitted:!0,isSubmitting:!1,isSubmitSuccessful:B(t.errors)&&!d,submitCount:t.submitCount+1,errors:t.errors}),d)throw d},bt=(r,i={})=>{f(u,r)&&(w(i.defaultValue)?I(r,p(f(n,r))):(I(r,i.defaultValue),x(n,r,p(i.defaultValue))),i.keepTouched||R(t.touchedFields,r),i.keepDirty||(R(t.dirtyFields,r),t.isDirty=i.defaultValue?b(r,p(f(n,r))):b()),i.keepError||(R(t.errors,r),_.isValid&&J()),v.state.next({...t}))},We=(r,i={})=>{const a=r?p(r):n,d=p(a),c=B(r),o=c?n:d;if(i.keepDefaultValues||(n=a),!i.keepValues){if(i.keepDirtyValues)for(const g of h.mount)f(t.dirtyFields,g)?x(o,g,f(l,g)):I(g,f(o,g));else{if(Re&&w(r))for(const g of h.mount){const A=f(u,g);if(A&&A._f){const E=Array.isArray(A._f.refs)?A._f.refs[0]:A._f.ref;if(be(E)){const M=E.closest("form");if(M){M.reset();break}}}}u={}}l=e.shouldUnregister?i.keepDefaultValues?p(n):{}:p(o),v.array.next({values:{...o}}),v.values.next({values:{...o}})}h={mount:i.keepDirtyValues?h.mount:new Set,unMount:new Set,array:new Set,watch:new Set,watchAll:!1,focus:""},y.mount=!_.isValid||!!i.keepIsValid||!!i.keepDirtyValues,y.watch=!!e.shouldUnregister,v.state.next({submitCount:i.keepSubmitCount?t.submitCount:0,isDirty:c?!1:i.keepDirty?t.isDirty:!!(i.keepDefaultValues&&!Z(r,n)),isSubmitted:i.keepIsSubmitted?t.isSubmitted:!1,dirtyFields:c?[]:i.keepDirtyValues?i.keepDefaultValues&&l?ge(n,l):t.dirtyFields:i.keepDefaultValues&&r?ge(n,r):{},touchedFields:i.keepTouched?t.touchedFields:{},errors:i.keepErrors?t.errors:{},isSubmitSuccessful:i.keepIsSubmitSuccessful?t.isSubmitSuccessful:!1,isSubmitting:!1})},He=(r,i)=>We(X(r)?r(l):r,i);return{control:{register:De,unregister:me,getFieldState:Be,handleSubmit:qe,setError:Pe,_executeSchema:Y,_getWatch:F,_getDirty:b,_updateValid:J,_removeUnmounted:ye,_updateFieldArray:V,_updateDisabledField:Ie,_getFieldArray:C,_reset:We,_resetDefaultValues:()=>X(s.defaultValues)&&s.defaultValues().then(r=>{He(r,s.resetOptions),v.state.next({isLoading:!1})}),_updateFormState:r=>{t={...t,...r}},_disableForm:_t,_subjects:v,_proxyFormState:_,_setErrors:G,get _fields(){return u},get _formValues(){return l},get _state(){return y},set _state(r){y=r},get _defaultValues(){return n},get _names(){return h},set _names(r){h=r},get _formState(){return t},set _formState(r){t=r},get _options(){return s},set _options(r){s={...s,...r}}},trigger:le,register:De,handleSubmit:qe,watch:vt,setValue:I,getValues:Me,reset:He,resetField:bt,clearErrors:ht,unregister:me,setError:Pe,setFocus:(r,i={})=>{const a=f(u,r),d=a&&a._f;if(d){const c=d.refs?d.refs[0]:d.ref;c.focus&&(c.focus(),i.shouldSelect&&c.select())}},getFieldState:Be}}function jt(e={}){const s=m.useRef(),t=m.useRef(),[u,n]=m.useState({isDirty:!1,isValidating:!1,isLoading:X(e.defaultValues),isSubmitted:!1,isSubmitting:!1,isSubmitSuccessful:!1,isValid:!1,submitCount:0,dirtyFields:{},touchedFields:{},validatingFields:{},errors:e.errors||{},disabled:e.disabled||!1,defaultValues:X(e.defaultValues)?void 0:e.defaultValues});s.current||(s.current={...Bt(e),formState:u});const l=s.current.control;return l._options=e,Oe({subject:l._subjects.state,next:y=>{at(y,l._proxyFormState,l._updateFormState,!0)&&n({...l._formState})}}),m.useEffect(()=>l._disableForm(e.disabled),[l,e.disabled]),m.useEffect(()=>{if(l._proxyFormState.isDirty){const y=l._getDirty();y!==u.isDirty&&l._subjects.state.next({isDirty:y})}},[l,u.isDirty]),m.useEffect(()=>{e.values&&!Z(e.values,t.current)?(l._reset(e.values,l._options.resetOptions),t.current=e.values,n(y=>({...y}))):l._resetDefaultValues()},[e.values,l]),m.useEffect(()=>{e.errors&&l._setErrors(e.errors)},[e.errors,l]),m.useEffect(()=>{l._state.mount||(l._updateValid(),l._state.mount=!0),l._state.watch&&(l._state.watch=!1,l._subjects.state.next({...l._formState})),l._removeUnmounted()}),m.useEffect(()=>{e.shouldUnregister&&l._subjects.values.next({values:l._getWatch()})},[e.shouldUnregister,l]),s.current.formState=ut(u,l),s.current}export{Ht as C,Wt as F,Le as a,St as b,f as g,jt as u};
@@ -1 +0,0 @@
1
- import{r as C,j as l}from"./@radix-CFOkMR_E.js";import{aQ as s,s as c}from"./index-BczVOqUf.js";const a=e=>C.createElement("svg",{viewBox:"0 0 24 24",fill:"black",xmlns:"http://www.w3.org/2000/svg",...e},C.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M20.7071 5.29289C21.0976 5.68342 21.0976 6.31658 20.7071 6.70711L9.70711 17.7071C9.31658 18.0976 8.68342 18.0976 8.29289 17.7071L3.29289 12.7071C2.90237 12.3166 2.90237 11.6834 3.29289 11.2929C3.68342 10.9024 4.31658 10.9024 4.70711 11.2929L9 15.5858L19.2929 5.29289C19.6834 4.90237 20.3166 4.90237 20.7071 5.29289Z"}));function o({tickClasses:e,...t}){return l.jsx(s,{...t,children:l.jsx(a,{className:c("h-4 w-4 fill-success-300",e)})})}const r=e=>C.createElement("svg",{viewBox:"0 0 24 24",fill:"black",xmlns:"http://www.w3.org/2000/svg",...e},C.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M11.5971 1.18505C11.8629 1.13038 12.1371 1.13038 12.4029 1.18505C12.7102 1.24824 12.9848 1.40207 13.2032 1.52436C13.2235 1.53575 13.2433 1.54687 13.2627 1.55761L20.6627 5.66872C20.6831 5.68009 20.7042 5.6917 20.7258 5.70359C20.9569 5.8309 21.2476 5.99097 21.4707 6.23315C21.6637 6.44253 21.8097 6.6907 21.899 6.96105C22.0024 7.27375 22.0011 7.60553 22.0002 7.8694C22.0001 7.89406 22 7.91813 22 7.94153V16.0586C22 16.082 22.0001 16.1061 22.0002 16.1308C22.0011 16.3946 22.0024 16.7264 21.899 17.0391C21.8097 17.3095 21.6637 17.5576 21.4707 17.767C21.2476 18.0092 20.9569 18.1693 20.7258 18.2966C20.7042 18.3085 20.6831 18.3201 20.6627 18.3314L13.2627 22.4426C13.2433 22.4533 13.2235 22.4644 13.2032 22.4758C12.9848 22.5981 12.7102 22.7519 12.4029 22.8151C12.1371 22.8698 11.8629 22.8698 11.5971 22.8151C11.2898 22.7519 11.0152 22.5981 10.7968 22.4758C10.7765 22.4644 10.7567 22.4533 10.7373 22.4426L3.33733 18.3314C3.31688 18.3201 3.2958 18.3085 3.2742 18.2966C3.04307 18.1693 2.75245 18.0092 2.52927 17.767C2.33632 17.5576 2.1903 17.3095 2.10097 17.0391C1.99765 16.7264 1.99886 16.3946 1.99982 16.1308C1.99991 16.1061 2 16.082 2 16.0586V7.94153C2 7.91813 1.99991 7.89406 1.99982 7.8694C1.99886 7.60553 1.99765 7.27375 2.10097 6.96105C2.1903 6.6907 2.33632 6.44253 2.52927 6.23315C2.75244 5.99097 3.04306 5.8309 3.27419 5.7036C3.29579 5.6917 3.31687 5.68009 3.33733 5.66872L10.7373 1.55761C10.7567 1.54687 10.7765 1.53575 10.7968 1.52436C11.0152 1.40207 11.2898 1.24824 11.5971 1.18505ZM12 3.14907L11.9952 3.15136C11.9375 3.1792 11.8602 3.22173 11.7086 3.30592L5.05914 7.00008L12 10.8561L18.9408 7.00006L12.2914 3.30592C12.1398 3.22173 12.0625 3.1792 12.0048 3.15136L12 3.14907ZM20 8.69955V16.0586C20 16.2416 19.9996 16.3353 19.9955 16.4031C19.9954 16.4051 19.9951 16.4088 19.9951 16.4088C19.9951 16.4088 19.992 16.4108 19.9903 16.4119C19.933 16.4484 19.8513 16.4943 19.6914 16.5831L13 20.3006L13 12.5885L20 8.69955ZM11 12.5885L4 8.69959V16.0586C4 16.2416 4.00042 16.3353 4.0045 16.4031C4.00462 16.4051 4.00487 16.4088 4.00487 16.4088C4.00487 16.4088 4.00802 16.4108 4.0097 16.4119C4.067 16.4484 4.14866 16.4943 4.30862 16.5831L11 20.3006L11 12.5885Z"}),C.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M6.62585 4.01444C6.89406 3.53166 7.50286 3.35771 7.98565 3.62593L16.9856 8.62593C17.4684 8.89414 17.6424 9.50294 17.3742 9.98573C17.1059 10.4685 16.4971 10.6425 16.0144 10.3742L7.01436 5.37424C6.53158 5.10603 6.35763 4.49722 6.62585 4.01444Z"}));export{r as S,o as T};
@@ -1 +0,0 @@
1
- import{r as u,j as e}from"./@radix-CFOkMR_E.js";import{T as I,S as ne}from"./package-B3fWP-Dh.js";import{s as R,aB as ce,aC as oe,aD as de,aE as $,S as C,C as P,A as U,b as J,B as E,aq as ue,ar as me,as as xe,at as he,au as pe,Z as fe,I as ge,h as z,aF as Ce,p as je,r as D}from"./index-BczVOqUf.js";import{p as K,s as j,C as p,f as ve,a as ye,b as be,c as B,d as Ne}from"./persist-D7HJNBWx.js";import{c as we,b as X}from"./@react-router-CO-OsFwI.js";import{I as v}from"./Infobox-DSt0O-dm.js";import{t as ee}from"./zod-BhoGpZ63.js";import{a as A,C as ke,u as te,F as Se}from"./index.esm-Corw4lXQ.js";import{a as y}from"./@tanstack-DYiOyJUL.js";import{S as Ie}from"./logs-D8k8BVFf.js";import{C as Pe}from"./CodeSnippet-Dvkx_82E.js";import{d as Le}from"./index-rK_Wuy2W.js";import{S as Me,a as De,b as Re}from"./aws-BgKTfTfx.js";import"./@reactflow-l_1hUr1S.js";import"./url-D7mAQGUM.js";import"./stack-detail-query-Cficsl6d.js";import"./database-1xWSgZfO.js";import"./copy-BXNk6BjL.js";const se=u.createContext(null);function Ee({children:t,initialStep:r=1}){const[a,s]=u.useState(r);return e.jsx(se.Provider,{value:{currentStep:a,setCurrentStep:s},children:t})}function k(){const t=u.useContext(se);if(t===null)throw new Error("useNewInfraContext must be used within an AuthProvider");return t}function ze({entries:t}){return e.jsx("aside",{className:"whitespace-nowrap p-2 text-text-sm",children:e.jsx("ul",{className:"space-y-5",children:t.map((r,a)=>e.jsx("li",{children:e.jsx(Be,{index:a,children:r})},a))})})}function Be({index:t,children:r}){const{currentStep:a}=k(),s=R("font-semibold flex items-center gap-1",{"text-theme-text-tertiary":t<a,"text-theme-text-secondary":t>a});return e.jsxs("div",{className:s,children:[e.jsx(Ae,{index:t}),e.jsx("span",{children:r})]})}function Ae({index:t}){const{currentStep:r}=k(),a=t+1;if(r>t)return e.jsx(I,{className:"h-5 w-5",tickClasses:"w-3 h-3"});if(r===t)return e.jsx("div",{className:"flex h-5 w-5 items-center justify-center rounded-rounded bg-primary-300 text-white",children:a});if(r<t)return e.jsx("div",{className:"flex h-5 w-5 items-center justify-center rounded-rounded bg-neutral-300 text-white",children:a})}const re=u.createContext(null);function Ze({children:t}){const{success:r,data:a}=K(),[s,i]=u.useState(!1),[o,l]=u.useState(!!r),[n,d]=u.useState(r?{location:a.location,provider:a.provider,stackName:a.stackName}:{}),[c,m]=u.useState(r?a.timestamp:""),h=u.useRef(null);return e.jsx(re.Provider,{value:{isNextButtonDisabled:s,setIsNextButtonDisabled:i,data:n,setData:d,isLoading:o,setIsLoading:l,formRef:h,timestamp:c,setTimestamp:m},children:t})}function x(){const t=u.useContext(re);if(t===null)throw new Error("useNewInfraFormContext must be used within an AuthProvider");return t}const _e=t=>u.createElement("svg",{viewBox:"0 0 24 24",fill:"black",xmlns:"http://www.w3.org/2000/svg",...t},u.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M12 3C7.02944 3 3 7.02944 3 12C3 16.9706 7.02944 21 12 21C16.9706 21 21 16.9706 21 12C21 7.02944 16.9706 3 12 3ZM1 12C1 5.92487 5.92487 1 12 1C18.0751 1 23 5.92487 23 12C23 18.0751 18.0751 23 12 23C5.92487 23 1 18.0751 1 12ZM12 4.5C12.5523 4.5 13 4.94772 13 5.5V6H13.1667C15.0076 6 16.5 7.49238 16.5 9.33333C16.5 9.88562 16.0523 10.3333 15.5 10.3333C14.9477 10.3333 14.5 9.88562 14.5 9.33333C14.5 8.59695 13.903 8 13.1667 8H11C10.1716 8 9.5 8.67157 9.5 9.5C9.5 10.3284 10.1716 11 11 11H13C14.933 11 16.5 12.567 16.5 14.5C16.5 16.433 14.933 18 13 18V18.5C13 19.0523 12.5523 19.5 12 19.5C11.4477 19.5 11 19.0523 11 18.5V18H10.8333C8.99238 18 7.5 16.5076 7.5 14.6667C7.5 14.1144 7.94772 13.6667 8.5 13.6667C9.05228 13.6667 9.5 14.1144 9.5 14.6667C9.5 15.403 10.097 16 10.8333 16H13C13.8284 16 14.5 15.3284 14.5 14.5C14.5 13.6716 13.8284 13 13 13H11C9.067 13 7.5 11.433 7.5 9.5C7.5 7.567 9.067 6 11 6V5.5C11 4.94772 11.4477 4.5 12 4.5Z"})),Ve=t=>u.createElement("svg",{viewBox:"0 0 24 24",fill:"black",xmlns:"http://www.w3.org/2000/svg",...t},u.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M5.16145 4L18.8385 4C19.3657 3.99998 19.8205 3.99997 20.195 4.03057C20.5904 4.06287 20.9836 4.13419 21.362 4.32698C21.9265 4.6146 22.3854 5.07354 22.673 5.63803C22.8658 6.01641 22.9371 6.40963 22.9694 6.80498C23 7.17954 23 7.6343 23 8.16144V15.8386C23 16.3657 23 16.8205 22.9694 17.195C22.9371 17.5904 22.8658 17.9836 22.673 18.362C22.3854 18.9265 21.9265 19.3854 21.362 19.673C20.9836 19.8658 20.5904 19.9371 20.195 19.9694C19.8205 20 19.3657 20 18.8386 20L5.16148 20C4.63432 20 4.17955 20 3.80497 19.9694C3.40963 19.9371 3.01641 19.8658 2.63803 19.673C2.07354 19.3854 1.6146 18.9265 1.32698 18.362C1.13419 17.9836 1.06287 17.5904 1.03057 17.195C0.999967 16.8205 0.999983 16.3657 1 15.8385L1 10.0006C1 10.0004 1 10.0008 1 10.0006C1 10.0004 1 9.99958 1 9.99937L1 8.16146C0.999983 7.63431 0.999968 7.17955 1.03057 6.80497C1.06287 6.40963 1.13419 6.01641 1.32698 5.63803C1.6146 5.07354 2.07354 4.6146 2.63803 4.32698C3.01641 4.13419 3.40963 4.06287 3.80497 4.03057C4.17955 3.99997 4.63431 3.99998 5.16145 4ZM3 11V15.8C3 16.3766 3.00078 16.7488 3.02393 17.0322C3.04612 17.3038 3.0838 17.4045 3.109 17.454C3.20487 17.6422 3.35785 17.7951 3.54601 17.891C3.59546 17.9162 3.69617 17.9539 3.96784 17.9761C4.25117 17.9992 4.62345 18 5.2 18L18.8 18C19.3766 18 19.7488 17.9992 20.0322 17.9761C20.3038 17.9539 20.4045 17.9162 20.454 17.891C20.6422 17.7951 20.7951 17.6422 20.891 17.454C20.9162 17.4045 20.9539 17.3038 20.9761 17.0322C20.9992 16.7488 21 16.3766 21 15.8V11H3ZM21 9H3V8.2C3 7.62345 3.00078 7.25117 3.02393 6.96784C3.04612 6.69617 3.0838 6.59546 3.109 6.54601C3.20487 6.35785 3.35785 6.20487 3.54601 6.109C3.59546 6.0838 3.69617 6.04612 3.96784 6.02393C4.25118 6.00078 4.62345 6 5.2 6L18.8 6C19.3766 6 19.7488 6.00078 20.0322 6.02393C20.3038 6.04613 20.4045 6.0838 20.454 6.109C20.6422 6.20487 20.7951 6.35785 20.891 6.54601C20.9162 6.59546 20.9539 6.69617 20.9761 6.96784C20.9992 7.25118 21 7.62345 21 8.2V9ZM5 14C5 13.4477 5.44772 13 6 13H11C11.5523 13 12 13.4477 12 14C12 14.5523 11.5523 15 11 15H6C5.44772 15 5 14.5523 5 14Z"}));function ae(){return e.jsxs(ce,{children:[e.jsx(oe,{className:"block",children:e.jsxs(v,{intent:"warning",children:["This will give ZenML permissions and create secret keys for secure ZenML -",">"," Provider communication. You can revoke these permissions at any time."]})}),e.jsx(de,{sideOffset:0,className:"w-auto p-5",children:e.jsx($,{viewportClassName:"max-h-[300px]",children:e.jsx(He,{})})})]})}function He(){const{data:t}=x(),{isPending:r,isError:a,error:s,data:i}=y(j.stackDeploymentInfo({provider:t.provider}));if(r)return e.jsx(C,{className:"h-[100px] w-full"});if(a)return e.jsx("p",{children:s.message});const o=Object.entries(i.permissions);return e.jsx("ul",{className:"space-y-2 pr-3 text-text-sm",children:o.map(([l,n])=>e.jsxs("li",{className:"flex flex-col gap-1",children:[e.jsx("p",{children:l}),e.jsx("ul",{className:"list-inside list-[square] pl-4 text-neutral-400 marker:text-primary-200",children:n.map((d,c)=>e.jsx("li",{children:d},c))})]},l))})}function Te({stackName:t,isLoading:r,isSuccess:a,components:s,displayPermissions:i=!1}){var o,l,n,d,c,m,h,g;return e.jsxs("div",{className:"divide-y divide-theme-border-moderate overflow-hidden rounded-md border border-theme-border-moderate",children:[e.jsxs("div",{className:"flex items-center gap-3 bg-theme-surface-secondary p-5 text-text-lg font-semibold",children:[r&&e.jsx(P,{className:"h-5 w-5 shrink-0 border-[3px]"}),a&&e.jsx(I,{className:"h-5 w-5",tickClasses:"w-3 h-3"}),e.jsx(U,{type:"square",size:"lg",children:e.jsx(J,{size:"lg",children:t[0]})}),t]}),e.jsxs("div",{className:"space-y-1 py-3 pl-9 pr-5",children:[e.jsx(f,{title:((o=s==null?void 0:s.connector)==null?void 0:o.name)||"IAM Role",isLoading:r,isSuccess:a,subtitle:((l=s==null?void 0:s.connector)==null?void 0:l.id)||"Manage access to AWS resources",badge:e.jsx(p,{type:"annotator",children:"Service Connector"}),img:{src:"https://public-flavor-logos.s3.eu-central-1.amazonaws.com/service_connector/iam.webp",alt:"IAM logo"}}),i&&e.jsx(ae,{})]}),e.jsx("div",{className:"py-3 pl-9 pr-5",children:e.jsx(f,{title:((n=s==null?void 0:s.artifactStore)==null?void 0:n.name)||"S3 Bucket",subtitle:((d=s==null?void 0:s.artifactStore)==null?void 0:d.id)||"Artifact storage for ML pipelines",badge:e.jsx(p,{type:"artifact_store",children:"Artifact Store"}),isLoading:r,isSuccess:a,img:{src:"https://public-flavor-logos.s3.eu-central-1.amazonaws.com/artifact_store/aws.png",alt:"S3 logo"}})}),e.jsx("div",{className:"py-3 pl-9 pr-5",children:e.jsx(f,{title:((c=s==null?void 0:s.registry)==null?void 0:c.name)||"ECR Repository",subtitle:((m=s==null?void 0:s.registry)==null?void 0:m.id)||"Container image storage",badge:e.jsx(p,{type:"container_registry",children:"Container Registry"}),isLoading:r,isSuccess:a,img:{src:"https://public-flavor-logos.s3.eu-central-1.amazonaws.com/container_registry/aws.png",alt:"ECR logo"}})}),e.jsx("div",{className:"py-3 pl-9 pr-5",children:e.jsx(f,{title:((h=s==null?void 0:s.orchestrator)==null?void 0:h.name)||"SageMaker",isLoading:r,isSuccess:a,subtitle:((g=s==null?void 0:s.orchestrator)==null?void 0:g.id)||"ML Workflow orchestration",badge:e.jsx(p,{type:"orchestrator",children:"Orchestrator"}),img:{src:"https://public-flavor-logos.s3.eu-central-1.amazonaws.com/orchestrator/sagemaker.png",alt:"Sagemaker logo"}})})]})}function We({stackName:t,isLoading:r,isSuccess:a,components:s,displayPermissions:i=!1}){var o,l,n,d,c,m,h,g,b,N;return e.jsxs("div",{className:"divide-y divide-theme-border-moderate overflow-hidden rounded-md border border-theme-border-moderate",children:[e.jsxs("div",{className:"flex items-center gap-3 bg-theme-surface-secondary p-5 text-text-lg font-semibold",children:[r&&e.jsx(P,{className:"h-5 w-5 shrink-0 border-[3px]"}),a&&e.jsx(I,{className:"h-5 w-5",tickClasses:"w-3 h-3"}),e.jsx(U,{type:"square",size:"lg",children:e.jsx(J,{size:"lg",children:t[0]})}),t]}),e.jsxs("div",{className:"space-y-1 py-3 pl-9 pr-5",children:[e.jsx(f,{title:((o=s==null?void 0:s.connector)==null?void 0:o.name)||"Service Account",isLoading:r,isSuccess:a,subtitle:((l=s==null?void 0:s.connector)==null?void 0:l.id)||"Manage access to GCP resources",badge:e.jsx(p,{type:"annotator",children:"Service Connector"}),img:{src:"https://public-flavor-logos.s3.eu-central-1.amazonaws.com/service_connector/gcp-iam.webp",alt:"Service Account logo"}}),i&&e.jsx(ae,{})]}),e.jsx("div",{className:"py-3 pl-9 pr-5",children:e.jsx(f,{title:((n=s==null?void 0:s.artifactStore)==null?void 0:n.name)||"GCS Bucket",subtitle:((d=s==null?void 0:s.artifactStore)==null?void 0:d.id)||"Artifact storage for ML pipelines",badge:e.jsx(p,{type:"artifact_store",children:"Artifact Store"}),isLoading:r,isSuccess:a,img:{src:"https://public-flavor-logos.s3.eu-central-1.amazonaws.com/artifact_store/gcp.png",alt:"GCS logo"}})}),e.jsx("div",{className:"py-3 pl-9 pr-5",children:e.jsx(f,{title:((c=s==null?void 0:s.registry)==null?void 0:c.name)||"Google Artifact Registry",subtitle:((m=s==null?void 0:s.registry)==null?void 0:m.id)||"Container image storage",badge:e.jsx(p,{type:"container_registry",children:"Container Registry"}),isLoading:r,isSuccess:a,img:{src:"https://public-flavor-logos.s3.eu-central-1.amazonaws.com/container_registry/gcp.png",alt:"Google Artifact Registry logo"}})}),e.jsx("div",{className:"py-3 pl-9 pr-5",children:e.jsx(f,{title:((h=s==null?void 0:s.orchestrator)==null?void 0:h.name)||"Vertex AI",isLoading:r,isSuccess:a,subtitle:((g=s==null?void 0:s.orchestrator)==null?void 0:g.id)||"ML Workflow orchestration",badge:e.jsx(p,{type:"orchestrator",children:"Orchestrator"}),img:{src:"https://public-flavor-logos.s3.eu-central-1.amazonaws.com/orchestrator/vertexai.png",alt:"VertexAI logo"}})}),e.jsx("div",{className:"py-3 pl-9 pr-5",children:e.jsx(f,{title:((b=s==null?void 0:s.imageBuilder)==null?void 0:b.name)||"Cloud Build",isLoading:r,isSuccess:a,subtitle:((N=s==null?void 0:s.imageBuilder)==null?void 0:N.id)||"Build, test, and deploy images",badge:e.jsx(p,{type:"image_builder",children:"Image Builder"}),img:{src:"https://public-flavor-logos.s3.eu-central-1.amazonaws.com/image_builder/gcp.png",alt:"Cloud Build logo"}})})]})}function Fe(){return e.jsx(v,{className:"border-warning-300 bg-warning-50",intent:"warning",children:'The Cloud Shell session will warn you that the ZenML GitHub repository is untrusted. We recommend that you review the contents of the repository and then check the "Trust repo" checkbox to proceed with the deployment, otherwise the Cloud Shell session will not be authenticated to access your GCP projects.'})}function ie(){const{data:t}=x(),r=y({...j.stackDeploymentConfig({provider:"gcp",stack_name:t.stackName,location:t.location})});return r.isError?null:r.isPending?e.jsx(C,{className:"h-[200px] w-full"}):e.jsxs("section",{className:"space-y-5 border-t border-theme-border-moderate pt-5",children:[e.jsxs("div",{className:"space-y-1",children:[e.jsxs("p",{className:"flex items-center gap-1 text-text-lg font-semibold",children:[e.jsx(Ie,{className:"h-5 w-5 fill-primary-400"}),"Configuration"]}),e.jsx("p",{className:"text-theme-text-secondary",children:"You will be asked to provide the following configuration values during the deployment process."})]}),e.jsx(Pe,{fullWidth:!0,highlightCode:!0,codeClasses:"whitespace-pre-wrap word-break-all",wrap:!0,code:r.data.configuration||""})]})}function Z({componentProps:t,type:r}){switch(r){case"aws":return e.jsx(Te,{...t});case"gcp":return e.jsx(We,{...t})}}function f({img:t,title:r,subtitle:a,badge:s,isSuccess:i,isLoading:o}){return e.jsxs("div",{className:"flex items-center justify-between",children:[e.jsxs("div",{className:"flex items-center gap-3",children:[o&&e.jsx(P,{className:"h-5 w-5 shrink-0 border-[3px]"}),i&&e.jsx(I,{className:"h-5 w-5",tickClasses:"w-3 h-3"}),e.jsx("img",{width:"40",height:"40",alt:t.alt,src:t.src}),e.jsxs("div",{children:[e.jsx("p",{className:"text-text-lg font-semibold",children:r}),e.jsx("p",{className:"text-theme-text-secondary",children:a})]})]}),s]})}function Ge(){const{data:t}=x();function r(){let a="#";switch(t.provider){case"aws":a="https://calculator.aws/#/";break;case"gcp":a="https://cloud.google.com/products/calculator"}return e.jsx("a",{href:a,target:"_blank",rel:"noopener noreferrer",className:"link",children:"official pricing calculator"})}return e.jsxs("div",{className:"space-y-5",children:[e.jsxs("div",{className:"space-y-1",children:[e.jsxs("p",{className:"flex items-center gap-1 text-text-lg font-semibold",children:[e.jsx(_e,{className:"h-5 w-5 fill-primary-400"}),"Estimated Cost"]}),e.jsx("p",{className:"text-theme-text-secondary",children:"These are rough estimates and actual costs may vary based on your usage."})]}),e.jsxs(E,{className:"flex items-start gap-[10px] p-3",children:[e.jsx("div",{className:"content-center rounded-sm bg-blue-25 p-1",children:e.jsx(Ve,{className:"h-5 w-5 fill-blue-400"})}),e.jsxs("div",{children:[e.jsxs("p",{children:["A small training job would cost around:"," ",e.jsx("span",{className:"font-semibold text-theme-text-success",children:"$0.60"})]}),e.jsxs("p",{className:"text-text-xs text-theme-text-secondary",children:["Please use the ",e.jsx(r,{})," for a detailed estimate"]})]})]})]})}const Oe=t=>u.createElement("svg",{viewBox:"0 0 24 24",fill:"black",xmlns:"http://www.w3.org/2000/svg",...t},u.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M12 3C8.13401 3 5 6.13401 5 10C5 11.8921 5.85317 13.678 7.29228 15.5467C8.50741 17.1245 10.0627 18.6673 11.7323 20.3233C11.8212 20.4115 11.9105 20.5 12 20.5889C12.0895 20.5 12.1788 20.4115 12.2677 20.3233C13.9373 18.6673 15.4926 17.1245 16.7077 15.5467C18.1468 13.678 19 11.8921 19 10C19 6.13401 15.866 3 12 3ZM3 10C3 5.02944 7.02944 1 12 1C16.9706 1 21 5.02944 21 10C21 12.5262 19.8532 14.7402 18.2923 16.767C16.988 18.4607 15.3185 20.1156 13.6508 21.7689C13.3354 22.0816 13.02 22.3943 12.7071 22.7071C12.3166 23.0976 11.6834 23.0976 11.2929 22.7071C10.98 22.3943 10.6646 22.0816 10.3492 21.7689C8.68147 20.1156 7.01205 18.4607 5.70772 16.767C4.14683 14.7402 3 12.5262 3 10ZM12 8C10.8954 8 10 8.89543 10 10C10 11.1046 10.8954 12 12 12C13.1046 12 14 11.1046 14 10C14 8.89543 13.1046 8 12 8ZM8 10C8 7.79086 9.79086 6 12 6C14.2091 6 16 7.79086 16 10C16 12.2091 14.2091 14 12 14C9.79086 14 8 12.2091 8 10Z"}));function Ye(){const{control:t}=A(),{data:r}=x(),{isPending:a,isError:s,data:i}=y({...j.stackDeploymentInfo({provider:r.provider})});if(s)return null;if(a)return e.jsx(C,{className:"h-[40px] w-[100px]"});const o=Object.entries(i.locations);return e.jsx(ke,{control:t,name:"region",render:({field:{onChange:l,ref:n,...d}})=>e.jsxs(ue,{...d,onValueChange:l,children:[e.jsx(me,{className:"border border-neutral-300 text-left text-text-md",children:e.jsx(xe,{className:"flex items-center gap-2",placeholder:"Select your Location"})}),e.jsx(he,{children:e.jsx($,{viewportClassName:"max-h-[300px]",children:o.map(([c,m])=>e.jsxs(pe,{value:m,children:[c," - ",e.jsx("span",{className:"text-theme-text-secondary",children:m})]},c))})})]})})}function qe(){return e.jsxs("div",{className:"space-y-5 border-b border-theme-border-moderate pb-5",children:[e.jsxs("div",{className:"space-y-1",children:[e.jsxs("p",{className:"flex items-center gap-1 text-text-lg font-semibold",children:[e.jsx(Oe,{className:"h-5 w-5 fill-primary-400"}),"Choose Your Location"]}),e.jsx("p",{className:"text-theme-text-secondary",children:"Select where you want to deploy your cloud infrastructure for optimal performance and compliance."})]}),e.jsx(Ye,{})]})}function Qe(){const{data:t}=x(),{watch:r}=A();return e.jsxs("div",{className:"space-y-5 border-b border-theme-border-moderate pb-5",children:[e.jsxs("div",{className:"space-y-1",children:[e.jsxs("p",{className:"flex items-center gap-1 text-text-lg font-semibold",children:[e.jsx(ne,{className:"h-5 w-5 fill-primary-400"}),"Review Your Stack Components"]}),e.jsx("p",{className:"text-theme-text-secondary",children:"The following components will be created for your ZenML stack."})]}),e.jsx(Z,{type:t.provider,componentProps:{displayPermissions:!0,stackName:r("stackName")}}),e.jsx(v,{children:"These resources create a basic ZenML stack for ML workflow management. ZenML supports highly flexible stacks. You can build advanced stacks at any time, combining your preferred tools and components for more complex MLOps."})]})}function $e(){const{register:t,setError:r,clearErrors:a,formState:{errors:s}}=A(),[i,o]=u.useState(!1),l=u.useCallback(Le(async d=>{o(!0);try{(await ve({name:d})).total>0?r("stackName",{type:"manual",message:"Name already exists"}):a("root.stackName.manual")}catch(c){console.error("API call failed",c)}finally{o(!1)}},500),[]),n=d=>{const c=d.target.value;c&&l(c)};return e.jsxs("div",{className:"space-y-5 border-b border-theme-border-moderate pb-5",children:[e.jsxs("div",{className:"space-y-1",children:[e.jsxs("p",{className:"flex items-center gap-1 text-text-lg font-semibold",children:[e.jsx(fe,{className:"h-5 w-5 fill-primary-400"}),"Select a name for your Stack"]}),e.jsx("p",{className:"text-theme-text-secondary",children:"Please select a name for your stack, that is not used already."})]}),e.jsxs("div",{className:"flex items-center space-x-2",children:[e.jsxs("div",{className:"space-y-1",children:[e.jsx(ge,{className:`${s.stackName?"border-red-500":""}`,placeholder:"zenml-remote-stack",...t("stackName",{onChange(d){n(d)}})}),s.stackName&&e.jsx("p",{className:"text-text-xs text-red-500",children:s.stackName.message})]}),i&&e.jsx(P,{className:"h-5 w-5 shrink-0 border-[3px]"})]})]})}function Ue(){const{formRef:t,setIsNextButtonDisabled:r,setData:a,data:s}=x(),i=te({resolver:ee(ye),mode:"onChange",defaultValues:{region:s.location,stackName:s.stackName||""}});u.useEffect(()=>{r(!i.formState.isValid)},[i.formState.isValid,r]);function o(l){a(n=>({...n,location:l.region,stackName:l.stackName}))}return e.jsx(L,{title:"Review Stack Configuration",children:e.jsx(Se,{...i,children:e.jsxs("div",{className:"space-y-5",children:[e.jsxs(v,{className:"text-text-sm",children:[e.jsx("p",{className:"font-semibold",children:"Important"}),e.jsx("p",{children:"This will create new resources in your account. Ensure you have the necessary permissions and are aware of any potential costs."})]}),e.jsxs("form",{onSubmit:i.handleSubmit(o),ref:t,className:"space-y-5",children:[e.jsx(qe,{}),e.jsx($e,{})]}),e.jsx(Qe,{}),e.jsx(Ge,{})]})})})}const Je=t=>u.createElement("svg",{viewBox:"0 0 24 24",fill:"black",xmlns:"http://www.w3.org/2000/svg",...t},u.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M7.7587 2L10 2C10.5523 2 11 2.44772 11 3C11 3.55229 10.5523 4 10 4H7.8C6.94342 4 6.36113 4.00078 5.91104 4.03755C5.47262 4.07337 5.24842 4.1383 5.09202 4.21799C4.7157 4.40973 4.40973 4.7157 4.21799 5.09202C4.1383 5.24842 4.07337 5.47262 4.03755 5.91104C4.00078 6.36113 4 6.94342 4 7.8V16.2C4 17.0566 4.00078 17.6389 4.03755 18.089C4.07337 18.5274 4.1383 18.7516 4.21799 18.908C4.40973 19.2843 4.7157 19.5903 5.09202 19.782C5.24842 19.8617 5.47262 19.9266 5.91104 19.9624C6.36113 19.9992 6.94342 20 7.8 20H16.2C17.0566 20 17.6389 19.9992 18.089 19.9624C18.5274 19.9266 18.7516 19.8617 18.908 19.782C19.2843 19.5903 19.5903 19.2843 19.782 18.908C19.8617 18.7516 19.9266 18.5274 19.9624 18.089C19.9992 17.6389 20 17.0566 20 16.2V14C20 13.4477 20.4477 13 21 13C21.5523 13 22 13.4477 22 14V16.2413C22 17.0463 22 17.7106 21.9558 18.2518C21.9099 18.8139 21.8113 19.3306 21.564 19.816C21.1805 20.5686 20.5686 21.1805 19.816 21.564C19.3306 21.8113 18.8139 21.9099 18.2518 21.9558C17.7106 22 17.0463 22 16.2413 22H7.75868C6.95372 22 6.28936 22 5.74817 21.9558C5.18608 21.9099 4.66937 21.8113 4.18404 21.564C3.43139 21.1805 2.81947 20.5686 2.43598 19.816C2.18868 19.3306 2.09012 18.8139 2.04419 18.2518C1.99998 17.7106 1.99999 17.0463 2 16.2413V7.7587C1.99999 6.95373 1.99998 6.28937 2.04419 5.74817C2.09012 5.18608 2.18868 4.66937 2.43597 4.18404C2.81947 3.43139 3.43139 2.81947 4.18404 2.43597C4.66937 2.18868 5.18608 2.09012 5.74817 2.04419C6.28937 1.99998 6.95373 1.99999 7.7587 2ZM14 3.00001C14 2.44773 14.4477 2.00001 15 2.00001H21C21.5523 2.00001 22 2.44773 22 3.00001L22 9.00001C22 9.55229 21.5523 10 21 10C20.4477 10 20 9.5523 20 9.00001L20 5.41422L12.7071 12.7071C12.3166 13.0976 11.6834 13.0976 11.2929 12.7071C10.9024 12.3166 10.9024 11.6834 11.2929 11.2929L18.5858 4.00001H15C14.4477 4.00001 14 3.5523 14 3.00001Z"}));function w({provider:t,className:r,...a}){const s=R("w-5 h-5 shrink-0",r);switch(t){case"aws":return e.jsx(Re,{...a,className:s});case"azure":return e.jsx(De,{...a,className:s});case"gcp":return e.jsx(Me,{...a,className:s})}}function Ke(){const{data:t}=x();return e.jsxs("div",{className:"space-y-5",children:[e.jsx(v,{children:"This will provision and register a basic ZenML stack with all the necessary resources and credentials required to run pipelines."}),e.jsxs("div",{children:[e.jsxs("div",{className:"flex flex-wrap items-center gap-1",children:[e.jsx(w,{provider:t.provider,className:"h-5 w-5"}),e.jsx("p",{className:"text-text-lg font-semibold",children:"Deploy the Stack"})]}),e.jsx("p",{className:"text-theme-text-secondary",children:"Deploy the stack from your browser by clicking the button below:"})]}),t.provider==="gcp"&&e.jsx(Fe,{}),e.jsx(le,{setTimestampBool:!0}),t.provider==="gcp"&&e.jsx(ie,{})]})}function le({setTimestampBool:t}){var l;const{data:r,setTimestamp:a,setIsLoading:s}=x(),i=y({...j.stackDeploymentConfig({provider:r.provider,location:r.location,stack_name:r.stackName})});if(i.isError)return null;if(i.isPending)return e.jsx(C,{className:"h-[48px] w-[100px]"});function o(){const n=new Date().toISOString().slice(0,-1);t&&a(n),be({location:r.location||"",provider:r.provider||"aws",stackName:r.stackName,timestamp:n}),s(!0)}return e.jsx(z,{asChild:!0,className:"w-fit whitespace-nowrap",size:"md",onClick:()=>o(),children:e.jsxs("a",{href:i.data.deployment_url,target:"_blank",rel:"noopener noreferrer",children:["Deploy in ",(l=r.provider)==null?void 0:l.toUpperCase()," ",e.jsx(Je,{className:"h-5 w-5 shrink-0 fill-white"})]})})}function Xe(){const{data:t,timestamp:r,setIsNextButtonDisabled:a}=x(),{setCurrentStep:s}=k(),{isPending:i,isError:o,data:l}=y({...j.stackDeploymentStack({provider:t.provider,stack_name:t.stackName,date_start:r}),refetchInterval:5e3,throwOnError:!0});return u.useEffect(()=>{l&&(B(),s(n=>n+1),a(!1))},[l]),i?e.jsx(C,{className:"h-[200px] w-full"}):o?null:e.jsxs("div",{className:"space-y-5",children:[e.jsx(et,{}),e.jsx(tt,{stack:l})]})}function et(){const{data:t}=x();return e.jsxs("section",{className:"space-y-5 border-b border-theme-border-moderate pb-5",children:[e.jsxs(E,{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(w,{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."})]})]}),e.jsx(le,{})]}),t.provider==="gcp"&&e.jsx(ie,{})]})}function tt({stack:t}){const r=!!t;return e.jsxs("div",{className:"space-y-5",children:[!r&&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(Ce,{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(rt,{isReady:r}),e.jsx(st,{stack:t})]})}function st({stack:t}){const r=!!t,{data:a}=x();return e.jsxs("div",{className:"relative overflow-hidden rounded-md",children:[!r&&e.jsx("div",{className:"absolute z-50 h-full w-full bg-neutral-50/50"}),e.jsx(Z,{type:a.provider,componentProps:{isLoading:!r,isSuccess:r,stackName:a.stackName}})]})}function rt({isReady:t}){const[r,a]=u.useState(!1);return u.useEffect(()=>{const s=setTimeout(()=>{a(!0)},3e5);return()=>clearTimeout(s)},[]),!r||t?null:e.jsx(v,{children:"Your stack is taking longer than usual to deploy. Please check your Cloud console, or the stacks list in ZenML."})}function at(){return e.jsx(L,{title:"Deploy ZenML Stack",children:e.jsx(it,{})})}function it(){const{setIsNextButtonDisabled:t,isLoading:r}=x();return u.useEffect(()=>{t(!0)},[]),r?e.jsx(Xe,{}):e.jsx(Ke,{})}function lt(){const{formRef:t,setIsNextButtonDisabled:r,setData:a,data:s}=x(),{register:i,handleSubmit:o,formState:{isValid:l}}=te({resolver:ee(Ne),defaultValues:{provider:s.provider}});u.useEffect(()=>{r(!l)},[l,r]);function n(d){a(c=>({...c,provider:d.provider}))}return e.jsx(L,{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:o(n),className:"grid grid-cols-1 gap-3 xl:grid-cols-3",ref:t,children:[e.jsx(S,{id:"aws-provider",...i("provider"),value:"aws",children:e.jsx(M,{icon:e.jsx(w,{provider:"aws",className:"h-6 w-6 shrink-0"}),title:"AWS",subtitle:"ZenML stack with S3, ECR, and SageMaker integration"})}),e.jsx(S,{id:"gcp-provider",...i("provider"),value:"gcp",children:e.jsx(M,{icon:e.jsx(w,{provider:"gcp",className:"h-6 w-6 shrink-0"}),title:"GCP",subtitle:"Create ZenML infrastructure using GCS, Artifact Registry, and Vertex AI"})}),e.jsx(S,{disabled:!0,id:"azure-provider",...i("provider"),value:"azure",children:e.jsx(M,{comingSoon:!0,icon:e.jsx(w,{provider:"azure",className:"h-6 w-6 shrink-0"}),title:"Azure",subtitle:"Set up ZenML with Azure Storage, Container Registry, and ML services"})})]})]})})}const S=u.forwardRef(({children:t,className:r,id:a,...s},i)=>e.jsxs("div",{className:"min-h-[160px] min-w-[160px]",children:[e.jsx("input",{id:a,...s,ref:i,className:R("peer sr-only",r),type:"radio"}),e.jsx("label",{htmlFor:a,className:"flex h-full w-full flex-col items-start justify-center space-y-5 rounded-md border border-theme-border-minimal bg-theme-surface-primary p-5 text-text-lg text-theme-text-secondary hover:cursor-pointer peer-checked:border-primary-100 peer-checked:bg-primary-25 peer-focus-visible:border-primary-100 peer-disabled:cursor-default peer-disabled:bg-neutral-50",children:t})]}));S.displayName="CloudProviderRadioButton";function M({icon:t,title:r,subtitle:a,comingSoon:s}){return e.jsxs("div",{className:"space-y-1 text-left",children:[t,e.jsxs("div",{className:"flex items-center gap-1",children:[e.jsx("p",{className:"text-text-lg font-semibold text-theme-text-primary",children:r})," ",s&&e.jsx(je,{className:"font-semibold",color:"purple",size:"sm",children:"Coming Soon"})]}),e.jsx("p",{className:"text-text-sm text-theme-text-secondary",children:a})]})}function nt(){const{setIsNextButtonDisabled:t}=x();return t(!1),e.jsx(L,{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(ct,{})]})})}function ct(){var h,g,b,N,_,V,H,T,W,F,G,O,Y,q,Q;const{timestamp:t,data:r}=x(),{isPending:a,isError:s,data:i}=y({...j.stackDeploymentStack({provider:r.provider,stack_name:r.stackName,date_start:t}),throwOnError:!0});if(a)return e.jsx(C,{className:"h-[200px] w-full"});if(s)return null;const o=i.stack.name,l=(h=i.stack.metadata)==null?void 0:h.components.orchestrator,n=(g=i.stack.metadata)==null?void 0:g.components.artifact_store,d=(b=i.stack.metadata)==null?void 0:b.components.container_registry,c=(N=i.stack.metadata)==null?void 0:N.components.image_builder,m={orchestrator:{name:((_=l==null?void 0:l[0])==null?void 0:_.name)??"Orchestrator",id:((V=l==null?void 0:l[0])==null?void 0:V.id.split("-")[0])??""},artifactStore:{name:((H=n==null?void 0:n[0])==null?void 0:H.name)??"Artifact Store",id:((T=n==null?void 0:n[0])==null?void 0:T.id.split("-")[0])??""},registry:{name:((W=d==null?void 0:d[0])==null?void 0:W.name)??"Container Registry",id:((F=d==null?void 0:d[0])==null?void 0:F.id.split("-")[0])??""},connector:{name:(G=i.service_connector)==null?void 0:G.name,id:((Y=(O=i.service_connector)==null?void 0:O.id)==null?void 0:Y.split("-")[0])??""},imageBuilder:{name:((q=c==null?void 0:c[0])==null?void 0:q.name)??"Image Builder",id:((Q=c==null?void 0:c[0])==null?void 0:Q.id.split("-")[0])??""}};return e.jsx(Z,{type:r.provider,componentProps:{components:m,isSuccess:!0,stackName:o}})}function ot(){const{currentStep:t}=k();if(t===1)return e.jsx(lt,{});if(t===2)return e.jsx(Ue,{});if(t===3)return e.jsx(at,{});if(t===4)return e.jsx(nt,{})}function dt(){var c;const[r]=we(),{setCurrentStep:a,currentStep:s}=k(),{formRef:i,isNextButtonDisabled:o}=x(),l=X(),n=r.get("origin")==="onboarding";async function d(){i.current&&(i.current.requestSubmit(),await new Promise(m=>setTimeout(m,20))),a(m=>m<4?m+1:m),s===4&&(B(),l(n?D.onboarding:D.stacks.overview))}return e.jsx(z,{form:(c=i.current)==null?void 0:c.id,disabled:o,onClick:()=>d(),size:"md",children:s===4?"Finish":"Next"})}function ut(){const t=X();function r(){B(),t(D.stacks.create.index)}return e.jsx(z,{onClick:()=>r(),intent:"secondary",size:"md",children:"Cancel"})}function L({children:t,title:r}){return e.jsxs(E,{className:"w-full",children:[e.jsx("div",{className:"border-b border-theme-border-moderate px-5 py-3 text-display-xs font-semibold",children:r}),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(ut,{}),e.jsx(dt,{})]})]})}function Mt(){const{success:t}=K();return e.jsx(Ee,{initialStep:t?3:void 0,children:e.jsx(Ze,{children:e.jsxs("section",{className:"layout-container flex flex-col gap-5 p-5 xl:flex-row",children:[e.jsx(ze,{entries:["Infrastructure Type","Cloud Provider","Review Configuration","Deploy Stack"]}),e.jsx("div",{className:"w-full overflow-y-hidden",children:e.jsx(ot,{})})]})})})}export{Mt as default};
@@ -1 +0,0 @@
1
- import{r as o,j as e}from"./@radix-CFOkMR_E.js";import{k as j,l as C,j as y,n as T,F as b,a0 as F,a1 as E,h as x,a2 as P,a3 as U,a4 as k,a5 as I,z as m,f as D,I as O,a6 as R,a7 as _,a8 as H,a9 as q,i as v,aa as z,ab as Z,ac as B,ad as K,ae as Q,af as V,ag as L,ah as G,ai as J,aj as $,ak as W,al as X,p as w,am as Y,an as ee,S as f,D as se,B as te}from"./index-BczVOqUf.js";import{a as ae,S as re,P as ne}from"./Pagination-C6X-mifw.js";import{a as ie,b as N,c as A}from"./@tanstack-DYiOyJUL.js";import{o as oe}from"./url-D7mAQGUM.js";import{C as le}from"./CodeSnippet-Dvkx_82E.js";import{u as ce}from"./index.esm-Corw4lXQ.js";import{D as de}from"./DisplayDate-DYgIjlDF.js";import{I as ue}from"./InlineAvatar-xsrsIGE-.js";import{c as me}from"./@react-router-CO-OsFwI.js";import"./@reactflow-l_1hUr1S.js";import"./index-rK_Wuy2W.js";import"./chevron-right-double-CZBOf6JM.js";import"./copy-BXNk6BjL.js";function he({params:a}){return["users",a]}async function xe({params:a}){const s=j(C.users.all+"?"+oe(a)),t=await y(s,{method:"GET",headers:{"Content-Type":"application/json"}});if(t.status===404&&T(),!t.ok)throw new b({message:"Error while fetching users",status:t.status,statusText:t.statusText});return t.json()}function pe(a,s){return ie({queryKey:he(a),queryFn:()=>xe(a),...s})}const fe=a=>o.createElement("svg",{viewBox:"0 0 24 24",fill:"black",xmlns:"http://www.w3.org/2000/svg",...a},o.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M10 4C8.06703 4 6.50002 5.567 6.50002 7.5C6.50002 9.433 8.06703 11 10 11C11.933 11 13.5 9.433 13.5 7.5C13.5 5.567 11.933 4 10 4ZM4.50002 7.5C4.50002 4.46243 6.96246 2 10 2C13.0376 2 15.5 4.46243 15.5 7.5C15.5 10.5376 13.0376 13 10 13C6.96246 13 4.50002 10.5376 4.50002 7.5ZM19 14C19.5523 14 20 14.4477 20 15V17H22C22.5523 17 23 17.4477 23 18C23 18.5523 22.5523 19 22 19H20V21C20 21.5523 19.5523 22 19 22C18.4477 22 18 21.5523 18 21V19H16C15.4477 19 15 18.5523 15 18C15 17.4477 15.4477 17 16 17H18V15C18 14.4477 18.4477 14 19 14ZM7.32629 14.5C7.38335 14.5 7.44125 14.5 7.50003 14.5H12C12.5523 14.5 13 14.9477 13 15.5C13 16.0523 12.5523 16.5 12 16.5H7.50003C6.03171 16.5 5.51923 16.5109 5.12917 16.6292C4.17036 16.92 3.42005 17.6703 3.1292 18.6291C3.01088 19.0192 3.00002 19.5317 3.00002 21C3.00002 21.5523 2.55231 22 2.00002 22C1.44774 22 1.00002 21.5523 1.00002 21C1.00002 20.9412 1 20.8833 0.99998 20.8263C0.999526 19.599 0.999216 18.761 1.21532 18.0486C1.70007 16.4506 2.95059 15.2 4.54859 14.7153C5.261 14.4992 6.09902 14.4995 7.32629 14.5Z"}));async function ge(a){const s=j(C.users.all),t=await y(s,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(a)});if(!t.ok){const r=await t.json().then(n=>n.detail).catch(()=>"Failed to create User");throw new b({status:t.status,statusText:t.statusText,message:r})}return t.json()}function je(a){return N({mutationFn:async s=>ge(s),...a})}function Ce(){const[a,s]=o.useState(!1),[t,r]=o.useState(null);return e.jsxs(F,{open:a,onOpenChange:n=>{s(n),r(null)},children:[e.jsx(E,{asChild:!0,children:e.jsx(x,{className:"shrink-0",intent:"primary",children:"Add Member"})}),e.jsxs(P,{className:"",children:[e.jsx(U,{children:e.jsx(k,{children:" Add a New Member"})}),t?e.jsx(be,{name:t.name,token:I(t)}):e.jsx(ye,{setSuccessMember:r})]})]})}m.object({username:m.string(),isAdmin:m.boolean()});function ye({setSuccessMember:a}){const{toast:s}=D(),t=A(),{mutate:r,isPending:n}=je({onError(d){q(d)&&s({status:"error",emphasis:"subtle",icon:e.jsx(v,{className:"h-5 w-5 shrink-0 fill-error-700"}),description:d.message,rounded:!0})},onSuccess(d){a(d),t.invalidateQueries({queryKey:["users"]})}}),l=o.useId(),c=o.useId(),{register:i,handleSubmit:h,watch:p,setValue:u}=ce();function M(d){r({is_admin:d.isAdmin,name:d.username})}return e.jsxs(e.Fragment,{children:[e.jsx("form",{id:"create-user-form",onSubmit:h(M),className:"space-y-5 p-7",children:e.jsxs("div",{className:"space-y-5",children:[e.jsxs("div",{className:"space-y-0.5",children:[e.jsx("label",{htmlFor:l,className:"text-text-sm",children:"Username"}),e.jsx(O,{...i("username"),id:l,className:"w-full"})]}),e.jsxs("div",{className:"flex gap-5",children:[e.jsx("label",{htmlFor:c,className:"text-text-md",children:"Add user as an Admin"}),e.jsx(R,{onCheckedChange:d=>u("isAdmin",!!d),...i("isAdmin",{value:!1}),id:c})]})]})}),e.jsxs(_,{className:"gap-[10px]",children:[e.jsx(H,{asChild:!0,children:e.jsx(x,{size:"sm",intent:"secondary",children:"Cancel"})}),e.jsx(x,{disabled:!p("username")||n,form:"create-user-form",size:"sm",children:"Generate Token"})]})]})}function be({token:a,name:s}){return e.jsxs("div",{className:"space-y-5 overflow-hidden p-7 text-center",children:[e.jsx(fe,{className:"m-auto mb-5 h-[110px] w-[110px] fill-success-500"}),e.jsxs("div",{className:"space-y-1",children:[e.jsx("p",{className:"text-text-lg font-semibold text-theme-text-primary",children:`The user ${s} was created successfully!`}),e.jsx("p",{className:"text-text-md text-theme-text-secondary",children:"Share the invitation link with the user to complete the registration."})]}),e.jsx(le,{className:"mx-auto",code:a})]})}const we=a=>o.createElement("svg",{viewBox:"0 0 24 24",fill:"black",xmlns:"http://www.w3.org/2000/svg",...a},o.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M4.9681 6.38231C3.73647 7.92199 3 9.87499 3 12C3 16.9706 7.02944 21 12 21C14.125 21 16.078 20.2635 17.6177 19.0319L4.9681 6.38231ZM6.38231 4.9681L19.0319 17.6177C20.2635 16.078 21 14.125 21 12C21 7.02944 16.9706 3 12 3C9.87499 3 7.92199 3.73647 6.38231 4.9681ZM1 12C1 5.92487 5.92487 1 12 1C18.0751 1 23 5.92487 23 12C23 18.0751 18.0751 23 12 23C5.92487 23 1 18.0751 1 12Z"})),S=o.forwardRef((a,s)=>{const{triggerChildren:t,children:r,onSelect:n,onOpenChange:l,icon:c,...i}=a;return e.jsxs(z,{onOpenChange:l,children:[e.jsx(Z,{asChild:!0,children:e.jsx(B,{...i,className:"hover:cursor-pointer",icon:a.icon,ref:s,onSelect:h=>{h.preventDefault(),n&&n()},children:t})}),e.jsx(K,{children:r})]})});S.displayName="AlertDialogItem";async function De(a){const s=j(C.users.detail(a)),t=await y(s,{method:"DELETE",headers:{"Content-Type":"application/json"}});if(!t.ok){const r=await t.json().then(n=>n.detail).catch(()=>"Failed to delete User");throw new b({status:t.status,statusText:t.statusText,message:r})}return t.json()}function ve(a){return N({mutationFn:async s=>De(s),...a})}function Ne({userId:a,name:s}){const{toast:t}=D(),r=A(),{isPending:n,mutate:l}=ve({onSuccess(){r.invalidateQueries({queryKey:["users"]})},onError:i=>{i instanceof Error&&t({status:"error",emphasis:"subtle",icon:e.jsx(v,{className:"h-5 w-5 shrink-0 fill-error-700"}),description:i.message,rounded:!0})}});function c(){l(a)}return e.jsxs(Q,{className:"p-0",children:[e.jsx(V,{className:"py-2 pl-5 pr-3 text-text-lg font-semibold",children:"Delete Member"}),e.jsx("div",{className:"border-y border-theme-border-moderate px-5 py-5",children:e.jsxs(L,{children:["Deleting ",e.jsx("strong",{children:s})," cannot be undone."]})}),e.jsxs("div",{className:"flex justify-end gap-3 px-5 py-3",children:[e.jsx(G,{asChild:!0,children:e.jsx(x,{intent:"secondary",children:"Cancel"})}),e.jsx(J,{asChild:!0,children:e.jsx(x,{onClick:c,disabled:n,intent:"danger",children:"Delete"})})]})]})}function Ae({userId:a,name:s}){const[t,r]=o.useState(!1),[n,l]=o.useState(!1),c=o.useRef(null),i=o.useRef(null);function h(){i.current=c.current}function p(u){if(u===!1){l(!1),setTimeout(()=>{r(u)},200);return}r(u)}return e.jsxs($,{onOpenChange:l,open:n,children:[e.jsx(W,{ref:c,children:e.jsx(ae,{className:"h-4 w-4 fill-theme-text-tertiary"})}),e.jsx(X,{hidden:t,onCloseAutoFocus:u=>{i.current&&(i.current.focus(),i.current=null,u.preventDefault())},align:"end",sideOffset:7,children:e.jsx(S,{onSelect:h,onOpenChange:p,triggerChildren:"Remove Member",icon:e.jsx(we,{fill:"red"}),children:e.jsx(Ne,{name:s,userId:a})})})]})}function Se({isAdmin:a}){return[{id:"name",accessorFn:s=>{var t;return{name:s.name,is_admin:!!((t=s.body)!=null&&t.is_admin)}},cell:({getValue:s})=>{const{name:t,is_admin:r}=s();return e.jsxs("div",{className:"flex",children:[e.jsx(ue,{username:t}),r&&e.jsx("div",{children:e.jsx(w,{className:"ml-2 capitalize",size:"xs",color:"purple",children:"Admin"})})]})},header:"User"},{accessorKey:"status",header:"Status",accessorFn:s=>{var t;return{status:(t=s.body)==null?void 0:t.active}},cell:({getValue:s})=>{const{status:t}=s();return e.jsx(w,{className:"capitalize",color:t?"green":"grey",children:t?"Active":"Inactive"})}},{id:"created",header:"Created",accessorFn:s=>{var t;return(t=s.body)==null?void 0:t.created},cell:({getValue:s})=>e.jsx("p",{className:"text-text-sm text-theme-text-secondary",children:e.jsx(de,{dateString:s()})})},...a?[{id:"actions",header:"",accessorFn:s=>({id:s.id,name:Y(s)}),meta:{width:"5%"},cell:({getValue:s})=>{const{id:t,name:r}=s();return e.jsx(Ae,{name:r,userId:t})}}]:[]]}const g=1,Me=m.object({page:m.coerce.number().min(g).optional().default(g).catch(g),name:m.string().optional(),operator:m.enum(["and","or"]).optional()});function Te(){const[a]=me(),{page:s,name:t,operator:r}=Me.parse({page:a.get("page")||void 0,name:a.get("name")||void 0,operator:a.get("operator")||void 0});return{page:s,name:t,logical_operator:r}}function Fe(){var c,i;const a=Te(),{data:s,isError:t}=pe({params:{...a,sort_by:"desc:created"}},{throwOnError:!0}),{data:r,isPending:n,isError:l}=ee();return t||l?null:n?e.jsx(f,{className:"h-[350px]"}):e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"flex flex-wrap items-center justify-between gap-2",children:[e.jsx(re,{searchParams:a}),((c=r.body)==null?void 0:c.is_admin)&&e.jsx(Ce,{})]}),e.jsxs("div",{className:"flex flex-col items-center gap-5",children:[e.jsx("div",{className:"w-full",children:s?e.jsx(se,{columns:Se({isAdmin:(i=r.body)==null?void 0:i.is_admin}),data:s.items}):e.jsx(f,{className:"h-[250px] w-full"})}),s?s.total_pages>1&&e.jsx(ne,{searchParams:a,paginate:s}):e.jsx(f,{className:"h-[36px] w-[300px]"})]})]})}function Qe(){return e.jsxs(te,{className:"flex flex-col gap-4 p-5",children:[e.jsx("h1",{className:"text-text-xl font-semibold",children:"Members"}),e.jsx(Fe,{})]})}export{Qe as default};
@@ -1,2 +0,0 @@
1
- import{r as a,j as e}from"./@radix-CFOkMR_E.js";import{B as h,d as Z,q as H,s as j,aL as C,av as D,U as p,V as g,r as R,h as I,aM as k,c as w,S as N,aN as L,$ as E,aO as _,aP as M,aH as S,ay as O}from"./index-BczVOqUf.js";import{S as P,a as F}from"./file-text-CqD_iu6l.js";import{S as V}from"./terminal-By9cErXc.js";import{S as B,T as v}from"./package-B3fWP-Dh.js";import{S as b,a as A}from"./plus-C8WOyCzt.js";import{C as c}from"./CodeSnippet-Dvkx_82E.js";import{H as y}from"./Helpbox-BXUMP21n.js";import{F as T}from"./chevron-right-double-CZBOf6JM.js";import{L as q}from"./@react-router-CO-OsFwI.js";import{H as $}from"./help-bu_DgLKI.js";import"./@tanstack-DYiOyJUL.js";import"./@reactflow-l_1hUr1S.js";import"./copy-BXNk6BjL.js";const U=s=>a.createElement("svg",{width:24,height:24,viewBox:"0 0 24 24",fill:"none",xmlns:"http://www.w3.org/2000/svg",...s},a.createElement("path",{d:"M6.20195 14.6383C6.20195 15.7947 5.25733 16.7393 4.10098 16.7393C2.94463 16.7393 2 15.7947 2 14.6383C2 13.482 2.94463 12.5374 4.10098 12.5374H6.20195V14.6383Z",fill:"#E01E5A"}),a.createElement("path",{d:"M7.26056 14.6383C7.26056 13.482 8.20518 12.5374 9.36154 12.5374C10.5179 12.5374 11.4625 13.482 11.4625 14.6383V19.8989C11.4625 21.0553 10.5179 21.9999 9.36154 21.9999C8.20518 21.9999 7.26056 21.0553 7.26056 19.8989V14.6383Z",fill:"#E01E5A"}),a.createElement("path",{d:"M9.36154 6.20195C8.20518 6.20195 7.26056 5.25733 7.26056 4.10098C7.26056 2.94463 8.20518 2 9.36154 2C10.5179 2 11.4625 2.94463 11.4625 4.10098V6.20195H9.36154Z",fill:"#36C5F0"}),a.createElement("path",{d:"M9.36156 7.26062C10.5179 7.26062 11.4625 8.20525 11.4625 9.3616C11.4625 10.5179 10.5179 11.4626 9.36156 11.4626H4.10098C2.94463 11.4626 2 10.5179 2 9.3616C2 8.20525 2.94463 7.26062 4.10098 7.26062H9.36156Z",fill:"#36C5F0"}),a.createElement("path",{d:"M17.798 9.3616C17.798 8.20525 18.7426 7.26062 19.8989 7.26062C21.0553 7.26062 21.9999 8.20525 21.9999 9.3616C21.9999 10.5179 21.0553 11.4626 19.8989 11.4626H17.798V9.3616Z",fill:"#2EB67D"}),a.createElement("path",{d:"M16.7394 9.36156C16.7394 10.5179 15.7948 11.4625 14.6385 11.4625C13.4821 11.4625 12.5375 10.5179 12.5375 9.36156V4.10098C12.5375 2.94463 13.4821 2 14.6385 2C15.7948 2 16.7394 2.94463 16.7394 4.10098V9.36156Z",fill:"#2EB67D"}),a.createElement("path",{d:"M14.6384 17.7981C15.7947 17.7981 16.7394 18.7427 16.7394 19.8991C16.7394 21.0554 15.7947 22 14.6384 22C13.482 22 12.5374 21.0554 12.5374 19.8991V17.7981H14.6384Z",fill:"#ECB22E"}),a.createElement("path",{d:"M14.6385 16.7393C13.4821 16.7393 12.5375 15.7947 12.5375 14.6383C12.5375 13.482 13.4821 12.5374 14.6385 12.5374H19.899C21.0554 12.5374 22 13.482 22 14.6383C22 15.7947 21.0554 16.7393 19.899 16.7393H14.6385Z",fill:"#ECB22E"})),K=s=>a.createElement("svg",{viewBox:"0 0 60 60",fill:"black",xmlns:"http://www.w3.org/2000/svg",...s},a.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M21.8968 2.5L35 2.5C35.663 2.5 36.2989 2.76339 36.7678 3.23224L51.7678 18.2322C52.2366 18.7011 52.5 19.337 52.5 20V43.1033C52.5 45.1157 52.5001 46.7766 52.3895 48.1296C52.2747 49.5348 52.0283 50.8266 51.4101 52.0399C50.4513 53.9215 48.9215 55.4513 47.0399 56.4101C45.8266 57.0283 44.5348 57.2747 43.1296 57.3895C41.7766 57.5001 40.1157 57.5 38.1033 57.5H21.8967C19.8843 57.5 18.2234 57.5001 16.8704 57.3895C15.4652 57.2747 14.1734 57.0283 12.9601 56.4101C11.0785 55.4513 9.54867 53.9215 8.58994 52.0399C7.97171 50.8266 7.7253 49.5348 7.61049 48.1296C7.49994 46.7766 7.49997 45.1157 7.5 43.1032V16.8968C7.49997 14.8843 7.49994 13.2234 7.61049 11.8704C7.7253 10.4652 7.97171 9.17344 8.58994 7.9601C9.54867 6.07848 11.0785 4.54867 12.9601 3.58994C14.1734 2.97171 15.4652 2.7253 16.8704 2.61049C18.2234 2.49994 19.8843 2.49997 21.8968 2.5ZM17.2776 7.59388C16.1816 7.68343 15.621 7.84575 15.2301 8.04497C14.2892 8.52434 13.5243 9.28924 13.045 10.23C12.8457 10.621 12.6834 11.1816 12.5939 12.2776C12.5019 13.4028 12.5 14.8586 12.5 17V43C12.5 45.1414 12.5019 46.5972 12.5939 47.7224C12.6834 48.8184 12.8457 49.3789 13.045 49.7699C13.5243 50.7108 14.2892 51.4757 15.2301 51.955C15.621 52.1543 16.1816 52.3166 17.2776 52.4061C18.4028 52.4981 19.8586 52.5 22 52.5H38C40.1415 52.5 41.5972 52.4981 42.7224 52.4061C43.8184 52.3166 44.379 52.1543 44.77 51.955C45.7108 51.4757 46.4757 50.7108 46.955 49.7699C47.1543 49.3789 47.3166 48.8184 47.4061 47.7224C47.4981 46.5972 47.5 45.1414 47.5 43V22.5002L38.9203 22.5002C38.2893 22.5003 37.6748 22.5003 37.1544 22.4578C36.5829 22.4111 35.9086 22.301 35.23 21.9552C34.2892 21.4758 33.5243 20.7109 33.045 19.7701C32.6992 19.0916 32.5891 18.4172 32.5424 17.8458C32.4998 17.3253 32.4999 16.7109 32.5 16.0799L32.5 7.5H22C19.8586 7.5 18.4028 7.50195 17.2776 7.59388ZM37.5 11.0355L43.9646 17.5002H39C38.2587 17.5002 37.8531 17.4982 37.5616 17.4744C37.55 17.4735 37.539 17.4725 37.5286 17.4716C37.5277 17.4612 37.5267 17.4502 37.5258 17.4386C37.5019 17.1471 37.5 16.7415 37.5 16.0002V11.0355ZM30.4548 28.7949C29.7284 28.6703 28.9814 28.8068 28.346 29.1803C27.7106 29.5537 27.2278 30.14 26.9833 30.8352C26.5251 32.1377 25.0978 32.8221 23.7953 32.3639C22.4929 31.9057 21.8084 30.4785 22.2666 29.176C22.903 27.3668 24.1592 25.8413 25.8126 24.8696C27.466 23.8979 29.4099 23.5427 31.3001 23.8669C33.1903 24.1911 34.9048 25.1738 36.1399 26.641C37.3746 28.1078 38.0506 29.9642 38.048 31.8815C38.0469 35.081 35.6802 37.1377 34.1244 38.1749C33.2702 38.7444 32.4338 39.1608 31.8208 39.4332C31.5108 39.571 31.2489 39.6759 31.0587 39.7484C30.9634 39.7847 30.8855 39.8131 30.8279 39.8336L30.7568 39.8585L30.7331 39.8666L30.7244 39.8695L30.7209 39.8707C30.7201 39.8709 30.7178 39.8717 29.9633 37.6083L30.7178 39.8717C29.4079 40.3083 27.9921 39.6004 27.5555 38.2906C27.1197 36.983 27.8243 35.5698 29.1298 35.1306L29.1528 35.1225C29.1775 35.1137 29.2204 35.0982 29.2788 35.076C29.396 35.0313 29.5732 34.9606 29.7901 34.8642C30.2311 34.6682 30.7999 34.382 31.3509 34.0147C32.6051 33.1785 33.048 32.4256 33.048 31.8792L33.048 31.8755C33.0491 31.1385 32.7894 30.4248 32.3147 29.861C31.8401 29.2972 31.1812 28.9195 30.4548 28.7949ZM27.5 45C27.5 43.6193 28.6193 42.5 30 42.5H30.025C31.4057 42.5 32.525 43.6193 32.525 45C32.525 46.3807 31.4057 47.5 30.025 47.5H30C28.6193 47.5 27.5 46.3807 27.5 45Z"}));function Q(){const s=[{text:"Connect with Slack",href:"https://zenml.io/slack",icon:e.jsx(U,{className:"h-5 w-5"})},{text:"Send us a message",href:"mailto:cloud@zenml.io",icon:e.jsx(P,{className:"h-5 w-5 fill-primary-600"})}];return e.jsxs(h,{className:"flex w-full flex-col overflow-hidden",children:[e.jsx("div",{className:"flex h-[120px] items-center justify-center bg-primary-50 ",children:e.jsx(Z,{className:"h-[60px] w-[60px]"})}),e.jsxs("div",{className:"p-5",children:[e.jsx("p",{className:"mb-0.5 text-text-lg font-semibold",children:"Need support?"}),e.jsx("p",{className:"mb-2 text-theme-text-secondary",children:"Schedule a call with us, connect with our Slack community or send us a message."}),e.jsx("ul",{className:"space-y-1",children:s.map((t,r)=>e.jsx("li",{children:e.jsx(z,{href:t.href,text:t.text,icon:t.icon})},r))})]})]})}function W(){const s=[{text:"Browse our docs",href:"https://docs.zenml.io",icon:e.jsx(F,{className:"h-5 w-5 fill-primary-600"})},{text:"Discover projects",href:"https://github.com/zenml-io/zenml-projects",icon:e.jsx(B,{className:"h-5 w-5 fill-primary-600"})},{text:"Navigate our examples",href:"https://github.com/zenml-io/zenml/tree/main/examples/",icon:e.jsx(V,{className:"h-5 w-5 fill-primary-600"})},{text:"Read our blog",href:"https://zenml.io/blog",icon:e.jsx(H,{className:"h-5 w-5 fill-primary-600"})}];return e.jsxs(h,{className:"flex w-full flex-col overflow-hidden",children:[e.jsx("div",{className:"flex h-[120px] items-center justify-center bg-turquoise-25",children:e.jsx(K,{className:"h-[60px] w-[60px] fill-teal-400"})}),e.jsxs("div",{className:"p-5",children:[e.jsx("p",{className:"mb-0.5 text-text-lg font-semibold",children:"Resources"}),e.jsx("p",{className:"mb-2 text-theme-text-secondary",children:"Need help? Follow our extensive documentation to get started."}),e.jsx("ul",{className:"space-y-1",children:s.map((t,r)=>e.jsx("li",{children:e.jsx(z,{href:t.href,text:t.text,icon:t.icon})},r))})]})]})}function z({href:s,text:t,icon:r}){return e.jsxs("a",{className:"inline-flex items-center gap-1 font-semibold text-primary-600 underline transition-all duration-200 hover:decoration-transparent",target:"_blank",href:s,rel:"noopener noreferrer",children:[r&&r,t]})}function Y(){return e.jsx(h,{className:"flex flex-col-reverse items-stretch overflow-hidden md:flex-row",children:e.jsxs("div",{className:"w-full px-7 py-5 md:w-2/3",children:[e.jsx("h2",{className:"text-display-xs font-semibold",children:"Welcome to ZenML"}),e.jsx("p",{className:"mt-2 text-text-lg text-theme-text-secondary",children:"You successfully installed the ZenML dashboard. Now you can get started with your new ZenML server."})]})})}function G({className:s,...t}){return e.jsx("div",{className:j("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(T,{className:"h-3 w-3 fill-warning-300"})})}function u({completed:s,title:t,children:r,hasDownstream:n,active:l}){const[i,m]=a.useState(l);return e.jsx(C,{open:i,onOpenChange:m,children:e.jsxs("div",{className:"flex w-full flex-col gap-3",children:[e.jsxs("div",{className:"flex w-full justify-between gap-2",children:[s?e.jsx(v,{className:"shrink-0"}):n?e.jsx(G,{}):e.jsx(D,{className:"shrink-0"}),e.jsx(p,{className:"w-full",children:e.jsx(J,{skipped:n,title:t,completed:s})}),e.jsx("div",{className:"flex items-center gap-1",children:e.jsx(p,{children:e.jsx(b,{className:` ${i?"":"-rotate-90"} h-5 w-5 shrink-0 rounded-md fill-neutral-500`})})})]}),r&&e.jsx(g,{children:e.jsxs("div",{className:"flex w-full items-center gap-2",children:[e.jsx("div",{className:"w-[28px] shrink-0"}),e.jsx("div",{className:"w-full min-w-0 flex-1",children:r})]})})]})})}function J({completed:s,title:t,skipped: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:`font-semibold ${j({"text-theme-text-tertiary":s||r,"line-through decoration-theme-text-tertiary":s})}
2
- `,children:t})})})}function X({completed:s,active:t,hasDownstreamStep:r}){const n=R.stacks.create.index+"?"+new URLSearchParams({origin:"onboarding"}).toString();return e.jsxs(u,{hasDownstream:r,completed:s,title:"Create a new stack",active:t,children:[e.jsxs("p",{className:"mb-3",children:["A stack configures how a pipeline is executed"," ",e.jsx(se,{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(I,{className:"w-fit",size:"md",asChild:!0,children:e.jsxs(q,{className:"flex",to:n,children:[e.jsx(A,{className:"h-5 w-5 shrink-0 fill-white"}),"Register a stack"]})})]}),e.jsx(y,{link:"https://docs.zenml.io/user-guide/production-guide/understand-stacks"})]})]})}function ee({active:s,completed:t,hasDownstreamStep:r}){return e.jsx(u,{hasDownstream:r,completed:t,title:"Run the pipeline in the new stack",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 --training-pipeline"})]}),e.jsx("div",{children:e.jsx(y,{link:"https://docs.zenml.io/user-guide/production-guide/understand-stacks"})})]})})}function se({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 te(){const s=k({refetchInterval:5e3}),t=w(),[r,n]=a.useState(!0);if(s.isPending||t.isPending)return e.jsx(N,{className:"h-[200px] w-full"});if(s.isError||t.isError)return null;const l=L(s.data,E(t.data.deployment_type||"other")),{progress:i,totalItems:m,itemsDone:f,getItem:x}=_(s.data),o=x("stack_with_remote_orchestrator_created"),d=x("pipeline_run_with_remote_orchestrator");return e.jsx(e.Fragment,{children:e.jsxs(C,{onOpenChange:n,open:r,className:j("rounded-md border border-theme-border-moderate bg-theme-surface-primary"),children:[e.jsxs(p,{className:"flex w-full items-center justify-between gap-[10px] p-3",children:[e.jsxs("div",{className:"flex items-center gap-3",children:[i>=100?e.jsx(v,{className:"h-7 w-7",tickClasses:"w-[28px] h-[28px]"}):e.jsx(M,{value:i,children:e.jsxs("span",{className:"absolute text-text-xs font-semibold",children:[f,"/",m]})}),e.jsxs("div",{className:"text-left",children:[e.jsxs("p",{className:"text-text-md font-semibold",children:["Production Setup"," ",e.jsx("span",{className:"text-text-md font-medium text-theme-text-secondary",children:"(10 min)"})]}),e.jsx("p",{className:"text-theme-text-secondary",children:l.isFinished?"Level up your skills in a production setting.":e.jsx("span",{className:"text-primary-400",children:"Complete the Starter Setup to enable the production setup."})})]})]}),e.jsx(b,{className:` ${r?"":"-rotate-90"} h-5 w-5 shrink-0 rounded-md fill-neutral-500 transition-transform duration-200 hover:bg-neutral-200`})]}),e.jsx(g,{className:"border-t border-theme-border-moderate p-5",children:e.jsxs("ul",{className:"divide-y divide-theme-border-moderate",children:[e.jsx("li",{className:"py-5 first:pt-0 last:pb-0",children:e.jsx(X,{active:l.isFinished&&o.isActive,completed:o.isCompleted,hasDownstreamStep:o.hasDownStreamStep})}),e.jsx("li",{className:"py-5 first:pt-0 last:pb-0",children:e.jsx(ee,{active:l.isFinished&&d.isActive,completed:d.isCompleted,hasDownstreamStep:d.hasDownStreamStep})})]})})]})})}function re({completed:s,hasDownstreamStep:t,active:r}){const{data:n}=w({throwOnError:!0});return e.jsx(u,{active:r,hasDownstream:t,completed:s,title:"Connect to ZenML",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==${n?n.version:e.jsx(N,{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:`zenml connect --url ${window.location.origin}`})]}),e.jsx(y,{link:"https://docs.zenml.io/user-guide/production-guide/deploying-zenml#connecting-to-a-deployed-zenml"})]})})}function ae({active:s,completed:t,hasDownstreamStep:r}){return e.jsx(u,{active:s,hasDownstream:r,completed:t,title:"Run your first pipeline",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 --training-pipeline"})]}),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($,{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:S({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:S({intent:"primary",emphasis:"subtle",size:"md"}),href:"https://docs.zenml.io/user-guide/starter-guide/create-an-ml-pipeline",children:"Browse our docs"})]})]})]})})}function ne(){const s=k({refetchInterval:5e3}),t=w(),[r,n]=a.useState(!0);if(s.isPending||t.isPending)return e.jsx(N,{className:"h-[200px] w-full"});if(s.isError||t.isError)return null;const l=E(t.data.deployment_type||"other"),{progress:i,itemsDone:m,totalItems:f,getItem:x}=L(s.data,l),o=x("device_verified"),d=x("pipeline_run");return e.jsxs(C,{open:r,onOpenChange:n,className:"rounded-md border border-theme-border-moderate bg-theme-surface-primary",children:[e.jsxs(p,{className:"flex w-full items-center justify-between gap-[10px] p-3",children:[e.jsxs("div",{className:"flex items-center gap-3",children:[i>=100?e.jsx(v,{className:"h-7 w-7",tickClasses:"w-[28px] h-[28px]"}):e.jsx(M,{value:i,children:e.jsxs("span",{className:"absolute text-text-xs font-semibold",children:[m,"/",f]})}),e.jsxs("div",{className:"text-left",children:[e.jsxs("p",{className:"text-text-xl font-semibold",children:["Starter Setup"," ",e.jsx("span",{className:"text-text-md font-medium text-theme-text-secondary",children:"(2 min)"})]}),e.jsx("p",{className:"text-theme-text-secondary",children:"Follow these steps to make sure your client is connected and run your first MLOps pipeline with ZenML"})]})]}),e.jsx(b,{className:` ${r?"":"-rotate-90"} h-5 w-5 shrink-0 rounded-md fill-neutral-500 transition-transform duration-200 hover:bg-neutral-200`})]}),e.jsx(g,{className:"border-t border-theme-border-moderate p-5",children:e.jsxs("ul",{className:"divide-y divide-theme-border-moderate",children:[!l&&e.jsx("li",{className:"py-5 first:pt-0 last:pb-0",children:e.jsx(re,{active:o.isActive,completed:o.isCompleted,hasDownstreamStep:o.hasDownStreamStep})}),e.jsx("li",{className:"py-5 first:pt-0 last:pb-0",children:e.jsx(ae,{active:d.isActive,completed:d.isCompleted,hasDownstreamStep:d.hasDownStreamStep})})]})})]})}function we(){const{setTourState:s,tourState:{tourActive:t}}=O();return a.useEffect(()=>{t&&s(r=>({...r,run:!0,stepIndex:r.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(Y,{}),e.jsx(ne,{}),e.jsx(te,{})]}),e.jsxs("div",{className:"col-span-4 space-y-5 lg:col-span-1",children:[e.jsx(Q,{}),e.jsx(W,{})]})]})}export{we as default};
@@ -1 +0,0 @@
1
- import{j as s,r as m}from"./@radix-CFOkMR_E.js";import{C as u,R as p}from"./CopyButton-Cr7xYEPb.js";import{k as d,l as h,j as f,n as x,F as g,m as j,r as o,T as P,z as r,o as y,P as b,h as N,D as v,S as c}from"./index-BczVOqUf.js";import{S as w,P as S}from"./Pagination-C6X-mifw.js";import{a as E}from"./@tanstack-DYiOyJUL.js";import{o as T}from"./url-D7mAQGUM.js";import{S as C}from"./terminal-By9cErXc.js";import{g as _,E as F}from"./ExecutionStatus-DguLLgTK.js";import{L as l,c as R}from"./@react-router-CO-OsFwI.js";import"./copy-BXNk6BjL.js";import"./@reactflow-l_1hUr1S.js";import"./index-rK_Wuy2W.js";import"./chevron-right-double-CZBOf6JM.js";import"./check-circle-i56092KI.js";function k({params:e}){return["pipeline_namespaces",e]}async function A({params:e}){const t=d(h.pipelines.namespaces+"?"+T(e)),a=await f(t,{method:"GET",headers:{"Content-Type":"application/json"}});if(a.status===404&&x(),!a.ok)throw new g({message:"Error while fetching pipeline namespaces",status:a.status,statusText:a.statusText});return a.json()}function z(e,t){return E({queryKey:k(e),queryFn:()=>A(e),...t})}function B(){return[{id:"name",header:"Pipeline",accessorFn:e=>{var t;return{name:e.name,status:(t=e.body)==null?void 0:t.latest_run_status}},cell:({getValue:e})=>{const{name:t,status:a}=e();return s.jsxs("div",{className:"group/copybutton flex items-center gap-2",children:[s.jsx(j,{className:`h-5 w-5 ${_(a)}`}),s.jsxs(l,{to:o.pipelines.namespace(encodeURIComponent(t)),className:"flex items-center gap-1",children:[s.jsx("h2",{className:"text-text-md font-semibold",children:t}),s.jsx(F,{status:a}),s.jsx(u,{copyText:t})]})]})}},{id:"latest-run",header:"Latest Run",accessorFn:e=>{var t,a;return{status:(t=e.body)==null?void 0:t.latest_run_status,runId:(a=e.body)==null?void 0:a.latest_run_id}},cell:({getValue:e})=>{const{runId:t,status:a}=e();return!t||!a?s.jsx("div",{children:"No run"}):s.jsx(l,{to:o.runs.detail(t),children:s.jsxs(P,{emphasis:"subtle",rounded:!1,className:"inline-flex items-center gap-0.5",color:L(a),children:[s.jsx(C,{className:`h-3 w-3 ${D(a)}`}),t==null?void 0:t.split("-")[0]]})})}}]}function D(e){if(!e)return"fill-theme-text-brand";switch(e){case"running":return"fill-orange-700";case"cached":return"fill-theme-text-secondary";case"completed":return"fill-success-800";case"failed":return"fill-error-800";case"initializing":return"fill-theme-text-brand"}}function L(e){if(!e)return"purple";switch(e){case"running":return"orange";case"cached":return"grey";case"completed":return"green";case"failed":return"red";case"initializing":return"purple"}}const i=1,q=r.object({page:r.coerce.number().min(i).optional().default(i).catch(i),name:r.string().optional(),operator:r.enum(["and","or"]).optional()});function I(){const[e]=R(),{page:t,name:a,operator:n}=q.parse({page:e.get("page")||void 0,name:e.get("name")||void 0,operator:e.get("operator")||void 0});return{page:t,name:a,logical_operator:n}}function ee(){const{setCurrentBreadcrumbData:e}=y(),t=I(),{data:a,refetch:n}=z({params:{...t,sort_by:"desc:updated"}},{throwOnError:!0});return m.useEffect(()=>{e({segment:"pipelines",data:null})},[]),s.jsxs("div",{children:[s.jsx(b,{children:s.jsx("h1",{className:"text-display-xs font-semibold",children:"Pipelines"})}),s.jsx("section",{className:"p-5",children:s.jsxs("div",{className:"flex flex-col gap-5",children:[s.jsxs("div",{className:"flex items-center justify-between",children:[s.jsx(w,{searchParams:t}),s.jsx("div",{className:"flex justify-between",children:s.jsxs(N,{intent:"primary",emphasis:"subtle",size:"md",onClick:()=>n(),children:[s.jsx(p,{className:"h-5 w-5 fill-theme-text-brand"}),"Refresh"]})})]}),s.jsxs("div",{className:"flex flex-col items-center gap-5",children:[s.jsx("div",{className:"w-full",children:a?s.jsx(v,{columns:B(),data:a.items}):s.jsx(c,{className:"h-[500px] w-full"})}),a?a.total_pages>1&&s.jsx(S,{searchParams:t,paginate:a}):s.jsx(c,{className:"h-[36px] w-[300px]"})]})]})})]})}export{ee as default};
@@ -1 +0,0 @@
1
- import{j as a,r as f}from"./@radix-CFOkMR_E.js";import{P as j,m as y,z as o,k as g,l as b,j as P,n as N,F as v,r as i,p as S,T as u,h as k,D as R,S as p,o as T}from"./index-BczVOqUf.js";import{c as E,L as c,g as h}from"./@react-router-CO-OsFwI.js";import{C as x,R as F}from"./CopyButton-Cr7xYEPb.js";import{a as C}from"./@tanstack-DYiOyJUL.js";import{o as _}from"./url-D7mAQGUM.js";import{S as w,P as D}from"./Pagination-C6X-mifw.js";import{S as A}from"./terminal-By9cErXc.js";import{D as B}from"./DisplayDate-DYgIjlDF.js";import{g as I,E as q}from"./ExecutionStatus-DguLLgTK.js";import{I as z}from"./InlineAvatar-xsrsIGE-.js";import"./@reactflow-l_1hUr1S.js";import"./copy-BXNk6BjL.js";import"./index-rK_Wuy2W.js";import"./chevron-right-double-CZBOf6JM.js";import"./check-circle-i56092KI.js";function L({namespace:e}){return a.jsx(j,{children:a.jsxs("div",{className:"flex items-center gap-1",children:[a.jsx(y,{className:"h-5 w-5 fill-neutral-400"}),a.jsx("h1",{className:"text-display-xs font-semibold",children:decodeURIComponent(e)})]})})}const l=1,U=o.object({page:o.coerce.number().min(l).optional().default(l).catch(l),name:o.string().optional(),operator:o.enum(["and","or"]).optional()});function G(){const[e]=E(),{page:s,name:t,operator:r}=U.parse({page:e.get("page")||void 0,name:e.get("name")||void 0});return{page:s,name:t,logical_operator:r}}function H({params:e}){return["runs",e]}async function K({params:e}){const s=g(b.runs.all+"?"+_(e)),t=await P(s,{method:"GET",headers:{"Content-Type":"application/json"}});if(t.status===404&&N(),!t.ok)throw new v({message:"Error while fetching pipeline runs",status:t.status,statusText:t.statusText});return t.json()}function Q(e,s){return C({queryKey:H(e),queryFn:()=>K(e),...s})}function O(){return[{id:"run",header:"Run",accessorFn:e=>{var s;return{name:e.name,id:e.id,status:(s=e.body)==null?void 0:s.status}},cell:({getValue:e})=>{const{name:s,status:t,id:r}=e();return a.jsxs("div",{className:"group/copybutton flex items-center gap-2",children:[a.jsx(A,{className:`h-5 w-5 shrink-0 ${I(t)}`}),a.jsxs("div",{children:[a.jsxs(c,{to:i.runs.detail(r),className:"flex items-center gap-1",children:[a.jsx("h2",{className:"text-text-md font-semibold",children:s}),a.jsx(q,{status:t}),a.jsx(x,{copyText:s})]}),a.jsxs(c,{to:i.runs.detail(r),className:"flex items-center gap-1",children:[a.jsx("p",{className:"text-text-xs text-theme-text-secondary",children:r.split("-")[0]}),a.jsx(x,{copyText:r})]})]})]})}},{id:"version",header:"Version",accessorFn:e=>{var s,t,r;return(r=(t=(s=e.body)==null?void 0:s.pipeline)==null?void 0:t.body)==null?void 0:r.version},cell:({getValue:e})=>{const s=e();return a.jsx(S,{color:"purple",className:"inline-flex",size:"sm",children:s})}},{id:"stack",header:"Stack",accessorFn:e=>{var s,t,r,n;return{name:(t=(s=e.body)==null?void 0:s.stack)==null?void 0:t.name,id:(n=(r=e.body)==null?void 0:r.stack)==null?void 0:n.id}},cell:({getValue:e})=>{const{name:s,id:t}=e();return!s||!t?null:a.jsx(c,{to:i.stacks.overview,children:a.jsx(u,{rounded:!1,className:"inline-block",color:"turquoise",emphasis:"subtle",children:s})})}},{id:"repository",header:"Repository",accessorFn:e=>{var s,t,r,n,m,d;return{name:(r=(t=(s=e.body)==null?void 0:s.code_reference)==null?void 0:t.body)==null?void 0:r.code_repository.name,id:(d=(m=(n=e.body)==null?void 0:n.code_reference)==null?void 0:m.body)==null?void 0:d.code_repository.id}},cell:({getValue:e})=>{const{name:s,id:t}=e();return!s||!t?null:a.jsx("div",{children:a.jsx(u,{rounded:!1,className:"inline-block",color:"grey",emphasis:"subtle",children:s})})}},{id:"created",header:"Created at",accessorFn:e=>{var s;return(s=e.body)==null?void 0:s.created},cell:({getValue:e})=>a.jsx("p",{className:"text-text-sm text-theme-text-secondary",children:a.jsx(B,{dateString:e()})})},{id:"author",header:"Author",accessorFn:e=>{var s;return{author:(s=e.body)==null?void 0:s.user}},cell:({getValue:e})=>{const{author:s}=e();return a.jsx(z,{username:s.name})}}]}function V(){const{namespace:e}=h(),s=G(),t=O(),{data:r,refetch:n}=Q({params:{pipeline_name:decodeURIComponent(e),...s,sort_by:"desc:updated"}},{throwOnError:!0});return a.jsxs("div",{className:"flex flex-col gap-5 p-5",children:[a.jsxs("div",{className:"flex items-center justify-between",children:[a.jsx(w,{searchParams:s}),a.jsxs(k,{intent:"primary",emphasis:"subtle",size:"md",onClick:()=>n(),children:[a.jsx(F,{className:"h-5 w-5 fill-theme-text-brand"}),"Refresh"]})]}),a.jsxs("div",{className:"flex flex-col items-center gap-5",children:[a.jsx("div",{className:"w-full",children:r?a.jsx(R,{columns:t,data:r.items}):a.jsx(p,{className:"h-[500px] w-full"})}),r?r.total_pages>1&&a.jsx(D,{searchParams:s,paginate:r}):a.jsx(p,{className:"h-[36px] w-[300px]"})]})]})}function le(){const{namespace:e}=h(),{setCurrentBreadcrumbData:s}=T();return f.useEffect(()=>{e&&s({segment:"pipeline_detail",data:{name:e}})},[e]),a.jsxs("div",{children:[a.jsx(L,{namespace:e}),a.jsx(V,{})]})}export{le as default};
@@ -1 +0,0 @@
1
- import{j as e,r as c}from"./@radix-CFOkMR_E.js";import{P as V,a0 as L,a1 as R,ac as q,a2 as y,a3 as N,a4 as v,aj as D,ak as Q,al as W,E as G,k as K,l as Y,j as J,n as X,F as ee,Y as T,aw as C,ax as E,M as se,N as te,O as ae,S as m,A as P,b as M,B as re,h as g,r as A,z as p,D as ne,o as ce,ay as ie}from"./index-BczVOqUf.js";import{a as le}from"./plus-C8WOyCzt.js";import{C as b,R as oe}from"./CopyButton-Cr7xYEPb.js";import{a as de,S as xe,P as me}from"./Pagination-C6X-mifw.js";import{s as f,C as ue,p as z,c as he}from"./persist-D7HJNBWx.js";import{q as pe,a as h}from"./@tanstack-DYiOyJUL.js";import{L as H,c as fe}from"./@react-router-CO-OsFwI.js";import{D as je}from"./DisplayDate-DYgIjlDF.js";import{I as Ce}from"./InlineAvatar-xsrsIGE-.js";import{I as k}from"./Infobox-DSt0O-dm.js";import{C as u}from"./CodeSnippet-Dvkx_82E.js";import{C as ge}from"./CollapsibleCard-opiuBHHc.js";import{F as we}from"./chevron-right-double-CZBOf6JM.js";import{o as ye,s as Ne}from"./url-D7mAQGUM.js";import"./@reactflow-l_1hUr1S.js";import"./copy-BXNk6BjL.js";import"./index-rK_Wuy2W.js";import"./stack-detail-query-Cficsl6d.js";import"./database-1xWSgZfO.js";function ve(){return e.jsx(V,{children:e.jsx("h1",{className:"text-display-xs font-semibold",children:"Stacks"})})}const be=s=>c.createElement("svg",{viewBox:"0 0 24 24",fill:"black",xmlns:"http://www.w3.org/2000/svg",...s},c.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M16.2929 2.29295C17.788 0.797857 20.212 0.797859 21.7071 2.29295C23.2022 3.78805 23.2022 6.21207 21.7071 7.70717L18.7097 10.7045C18.7088 10.7054 18.708 10.7063 18.7071 10.7072C18.7062 10.708 18.7053 10.7089 18.7044 10.7098L8.50078 20.9134C8.48402 20.9302 8.46741 20.9468 8.45093 20.9633C8.20603 21.2086 7.99001 21.425 7.73334 21.5943C7.50768 21.7431 7.26295 21.8607 7.00578 21.9439C6.71327 22.0386 6.40936 22.0722 6.06483 22.1102C6.04165 22.1127 6.01829 22.1153 5.99474 22.1179L2.61038 22.4939C2.30845 22.5275 2.00765 22.422 1.79284 22.2072C1.57803 21.9924 1.47251 21.6916 1.50606 21.3896L1.8821 18.0053C1.88472 17.9817 1.8873 17.9583 1.88985 17.9352C1.92786 17.5906 1.96138 17.2867 2.05607 16.9942C2.13932 16.7371 2.25695 16.4923 2.40576 16.2667C2.57501 16.01 2.79138 15.794 3.03667 15.5491C3.05317 15.5326 3.06981 15.516 3.08657 15.4992L16.2929 2.29295ZM14 7.41427L4.50078 16.9134C4.17827 17.2359 4.1184 17.3025 4.07541 17.3677C4.02581 17.4429 3.9866 17.5245 3.95885 17.6102C3.9348 17.6845 3.92024 17.7728 3.86987 18.2261L3.63187 20.3681L5.77388 20.1301C6.22718 20.0798 6.3155 20.0652 6.3898 20.0412C6.47553 20.0134 6.5571 19.9742 6.63232 19.9246C6.69752 19.8816 6.76406 19.8217 7.08657 19.4992L16.5858 10.0001L14 7.41427ZM18 8.58584L15.4142 6.00006L17.7071 3.70716C18.4211 2.99312 19.5788 2.99312 20.2929 3.70717C21.0069 4.42121 21.0069 5.57891 20.2929 6.29295L18 8.58584Z"})),ke=s=>c.createElement("svg",{viewBox:"0 0 24 24",fill:"black",xmlns:"http://www.w3.org/2000/svg",...s},c.createElement("path",{fillRule:"evenodd",clipRule:"evenodd",d:"M11.1615 1H12.8385C13.3657 0.999983 13.8205 0.999967 14.195 1.03057C14.5904 1.06287 14.9836 1.13419 15.362 1.32698C15.9265 1.6146 16.3854 2.07354 16.673 2.63803C16.8658 3.01641 16.9371 3.40963 16.9694 3.80497C16.9969 4.14075 16.9997 4.54097 17 5H21C21.5523 5 22 5.44772 22 6C22 6.55229 21.5523 7 21 7H20V17.2413C20 18.0463 20 18.7106 19.9558 19.2518C19.9099 19.8139 19.8113 20.3306 19.564 20.816C19.1805 21.5686 18.5686 22.1805 17.816 22.564C17.3306 22.8113 16.8139 22.9099 16.2518 22.9558C15.7106 23 15.0463 23 14.2413 23H9.75868C8.95372 23 8.28936 23 7.74817 22.9558C7.18608 22.9099 6.66937 22.8113 6.18404 22.564C5.43139 22.1805 4.81947 21.5686 4.43597 20.816C4.18868 20.3306 4.09012 19.8139 4.04419 19.2518C3.99998 18.7106 3.99999 18.0463 4 17.2413L4 7H3C2.44772 7 2 6.55229 2 6C2 5.44772 2.44772 5 3 5H7.00003C7.00031 4.54097 7.00314 4.14075 7.03057 3.80497C7.06287 3.40963 7.13419 3.01641 7.32698 2.63803C7.6146 2.07354 8.07354 1.6146 8.63803 1.32698C9.01641 1.13419 9.40963 1.06287 9.80497 1.03057C10.1795 0.999967 10.6343 0.999983 11.1615 1ZM6 7V17.2C6 18.0566 6.00078 18.6389 6.03755 19.089C6.07337 19.5274 6.1383 19.7516 6.21799 19.908C6.40973 20.2843 6.71569 20.5903 7.09202 20.782C7.24842 20.8617 7.47262 20.9266 7.91104 20.9625C8.36113 20.9992 8.94342 21 9.8 21H14.2C15.0566 21 15.6389 20.9992 16.089 20.9625C16.5274 20.9266 16.7516 20.8617 16.908 20.782C17.2843 20.5903 17.5903 20.2843 17.782 19.908C17.8617 19.7516 17.9266 19.5274 17.9624 19.089C17.9992 18.6389 18 18.0566 18 17.2V7H6ZM14.9999 5H9.00007C9.00051 4.5349 9.00357 4.21698 9.02393 3.96784C9.04612 3.69617 9.0838 3.59546 9.10899 3.54601C9.20487 3.35785 9.35785 3.20487 9.54601 3.109C9.59545 3.0838 9.69617 3.04612 9.96784 3.02393C10.2512 3.00078 10.6234 3 11.2 3H12.8C13.3766 3 13.7488 3.00078 14.0322 3.02393C14.3038 3.04612 14.4045 3.0838 14.454 3.109C14.6422 3.20487 14.7951 3.35785 14.891 3.54601C14.9162 3.59546 14.9539 3.69617 14.9761 3.96784C14.9964 4.21698 14.9995 4.5349 14.9999 5ZM10 10.5C10.5523 10.5 11 10.9477 11 11.5V16.5C11 17.0523 10.5523 17.5 10 17.5C9.44772 17.5 9 17.0523 9 16.5V11.5C9 10.9477 9.44772 10.5 10 10.5ZM14 10.5C14.5523 10.5 15 10.9477 15 11.5V16.5C15 17.0523 14.5523 17.5 14 17.5C13.4477 17.5 13 17.0523 13 16.5V11.5C13 10.9477 13.4477 10.5 14 10.5Z"})),w=c.forwardRef((s,t)=>{const{triggerChildren:a,children:r,onSelect:n,onOpenChange:i,icon:l,open:x,...o}=s;return e.jsxs(L,{open:x,onOpenChange:i,children:[e.jsx(R,{asChild:!0,children:e.jsx(q,{...o,className:"hover:cursor-pointer",icon:s.icon,ref:t,onSelect:d=>{d.preventDefault(),n&&n()},children:a})}),r]})});w.displayName="DialogItem";const F=c.forwardRef(({closeModal:s,name:t,...a},r)=>e.jsxs(y,{...a,ref:r,children:[e.jsx(N,{children:e.jsx(v,{children:"Update Stack"})}),e.jsxs("div",{className:"space-y-5 p-7",children:[e.jsx(B,{action:"update"}),e.jsxs("div",{className:"space-y-1",children:[e.jsx("p",{className:"text-text-sm text-theme-text-secondary",children:"Update a stack"}),e.jsx(u,{codeClasses:"whitespace-pre-wrap",wrap:!0,code:`zenml stack update ${t} -o NEW_ORCHESTRATOR_NAME`})]})]})]}));F.displayName="UpdateStackDialog";const O=c.forwardRef(({closeModal:s,name:t,...a},r)=>e.jsxs(y,{...a,ref:r,children:[e.jsx(N,{children:e.jsx(v,{children:"Delete Stack"})}),e.jsxs("div",{className:"space-y-5 p-7",children:[e.jsx(B,{action:"delete"}),e.jsxs("div",{className:"space-y-1",children:[e.jsx("p",{className:"text-text-sm text-theme-text-secondary",children:"Delete a stack"}),e.jsx(u,{codeClasses:"whitespace-pre-wrap",wrap:!0,code:`zenml stack delete ${t}`})]})]})]}));O.displayName="DeleteStackDialog";function B({action:s}){function t(){switch(s){case"delete":return"delete";case"update":return"update";case"describe":return"get details of"}}return e.jsx(k,{children:e.jsx("div",{className:"flex w-full flex-wrap justify-between gap-2",children:e.jsxs("div",{className:"min-w-0",children:[e.jsx("p",{className:"truncate text-text-sm font-semibold",children:"We are working on the new Stacks experience."}),e.jsxs("p",{className:"truncate text-text-sm",children:["Meanwhile you can use the CLI to ",t()," your stack."]})]})})})}function Se({name:s}){const[t,a]=c.useState(!1),[r,n]=c.useState(!1),i=c.useRef(null),l=c.useRef(null);function x(){l.current=i.current}function o(d){a(d),d===!1&&n(!1)}return e.jsx(D,{open:r,onOpenChange:n,children:e.jsxs(D,{children:[e.jsx(Q,{className:"z-10",ref:i,children:e.jsx(de,{className:"h-5 w-5 fill-theme-text-secondary"})}),e.jsxs(W,{hidden:t,onCloseAutoFocus:d=>{l.current&&(l.current.focus(),l.current=null,d.preventDefault())},className:"z-10",align:"end",sideOffset:1,children:[e.jsx(w,{onSelect:x,onOpenChange:o,icon:e.jsx(be,{className:"h-3 w-3 !fill-neutral-400"}),triggerChildren:"Update",children:e.jsx(F,{name:s,className:"lg:min-w-[600px]",closeModal:()=>o(!1)})}),e.jsx(w,{onSelect:x,onOpenChange:o,icon:e.jsx(ke,{className:"h-3 w-3 !fill-neutral-400"}),triggerChildren:"Delete",children:e.jsx(O,{name:s,className:"lg:min-w-[600px]",closeModal:()=>o(!1)})})]})]})})}function De(){return e.jsx("div",{className:"flex h-9 items-center border-b border-theme-border-moderate bg-theme-surface-primary px-4 py-3",children:e.jsxs(G,{className:"focus:outline-none focus:ring-2 focus:ring-offset-2 disabled:pointer-events-none",children:[e.jsx(we,{className:"h-5 w-5 fill-neutral-500"}),e.jsx("span",{className:"sr-only",children:"Close"})]})})}async function Ee(s){const t=K(Y.flavors.all)+(s?`?${ye(s)}`:""),a=await J(t,{method:"GET",headers:{"Content-Type":"application/json"}});if(a.status===404&&X(),!a.ok){const r=await a.json().then(n=>Array.isArray(n.detail)?n.detail[1]:n.detail).catch(()=>"Error while fetching flavors");throw new ee({status:a.status,statusText:a.statusText,message:r})}return a.json()}const $={all:["flavors"],flavorList:s=>pe({queryKey:[...$.all,s],queryFn:async()=>Ee(s)})};function Ie(s){if(!s)return[];const t=[];for(const a in s)Array.isArray(s[a])&&t.push(...s[a]);return t}const _=c.forwardRef(({name:s,children:t,type:a,...r},n)=>e.jsxs(L,{children:[e.jsx(R,{asChild:!0,children:t}),e.jsxs(y,{className:"w-fit max-w-fit",...r,ref:n,children:[e.jsx(N,{children:e.jsx(v,{children:T(a||"")})}),e.jsxs("div",{className:"space-y-5 p-7",children:[e.jsx(Le,{type:a}),e.jsxs("div",{className:"space-y-1",children:[e.jsxs("p",{className:"text-text-sm text-theme-text-secondary",children:["Describe your ",C(a)]}),e.jsx(u,{codeClasses:"whitespace-pre-wrap",wrap:!0,code:`zenml ${E(a)} describe ${s}`})]}),e.jsxs("div",{className:"space-y-1",children:[e.jsxs("p",{className:"text-text-sm text-theme-text-secondary",children:["Update your ",C(a)]}),e.jsx(u,{codeClasses:"whitespace-pre-wrap",wrap:!0,code:`zenml ${E(a)} update ${s}`})]})]})]})]}));_.displayName="ComponentFallbackDialog";function Le({type:s}){return e.jsx(k,{children:e.jsx("div",{className:"flex w-full flex-wrap justify-between gap-2",children:e.jsxs("div",{className:"min-w-0",children:[e.jsx("p",{className:"truncate text-text-sm font-semibold",children:"We are working on the new Stacks experience."}),e.jsxs("p",{className:"truncate text-text-sm",children:["Meanwhile you can use the CLI to manage your ",C(s),"."]})]})})})}const U=c.createContext(null);function Re({children:s}){const[t,a]=c.useState([]);return e.jsx(U.Provider,{value:{integrations:t,setIntegrations:a},children:s})}function Z(){const s=c.useContext(U);if(s===null)throw new Error("useIntegrationsContext must be used within an AuthProvider");return s}function Te({children:s,stackId:t,stackName:a}){return e.jsxs(se,{children:[e.jsx(te,{children:s}),e.jsx(ae,{className:"w-[1000px] overflow-y-auto",children:e.jsxs(Re,{children:[e.jsx(De,{}),e.jsx(Pe,{stackId:t}),e.jsx(He,{name:a}),e.jsx(Me,{stackId:t})]})})]})}function Pe({stackId:s}){const t=h({...f.stackDetail(s)});return t.isError?null:t.isPending?e.jsx("div",{className:"p-5",children:e.jsx(m,{className:"h-6 w-full"})}):e.jsxs("div",{className:"flex items-center space-x-2 border-b border-theme-border-moderate bg-theme-surface-primary p-5",children:[e.jsx(P,{type:"square",size:"lg",children:e.jsx(M,{size:"lg",children:t.data.name[0]})}),e.jsxs("div",{children:[e.jsxs("div",{className:"group/copybutton flex items-center gap-0.5",children:[e.jsx("p",{className:"mb-0.5 text-text-sm text-theme-text-secondary",children:t.data.id}),e.jsx(b,{copyText:t.data.id})]}),e.jsx("div",{className:"flex items-center gap-1",children:e.jsx("h2",{className:"text-display-xs font-semibold",children:t.data.name})})]})]})}function Me({stackId:s}){var r;const t=h({...f.stackDetail(s)});if(t.isError)return null;if(t.isPending)return e.jsx("div",{className:"p-5",children:e.jsx(m,{className:"h-[300px] w-full"})});const a=Ie((r=t.data.metadata)==null?void 0:r.components);return e.jsx("ul",{className:"space-y-5 p-5",children:a.map(n=>e.jsx("li",{children:e.jsx(Ae,{component:n})},n.id))})}function Ae({component:s}){var t,a,r,n,i;return e.jsxs(re,{className:"flex items-center justify-between p-5",children:[e.jsxs("div",{className:"flex items-center space-x-3",children:[e.jsx(ze,{flavor:((t=s.body)==null?void 0:t.flavor)||"",type:((a=s.body)==null?void 0:a.type)||"orchestrator"}),e.jsxs("div",{children:[e.jsx(_,{type:((r=s.body)==null?void 0:r.type)||"orchestrator",name:s.name,children:e.jsx("button",{className:"text-text-xl",children:s.name})}),e.jsxs("div",{className:"group/copybutton flex items-center gap-0.5",children:[e.jsx("p",{className:"text-text-sm text-theme-text-secondary",children:s.id.split("-")[0]}),e.jsx(b,{copyText:s.id})]})]})]}),e.jsx(ue,{type:((n=s.body)==null?void 0:n.type)||"orchestrator",children:T(((i=s.body)==null?void 0:i.type)||"")})]})}function ze({flavor:s,type:t}){var n;const{setIntegrations:a}=Z(),r=h({...$.flavorList({name:s,type:t})});return c.useEffect(()=>{var i,l,x;(l=(i=r.data)==null?void 0:i.items)!=null&&l.length&&((x=r.data.items[0].body)!=null&&x.integration)&&r.data.items[0].body.integration!=="built-in"&&a(o=>{var S;const d=((S=r.data.items[0].body)==null?void 0:S.integration)||"";return Array.from(new Set([...o,d])).filter(Boolean)})},[a,r.data]),r.isError?null:r.isPending?e.jsx(m,{className:"h-6 w-6"}):e.jsx("img",{width:32,height:32,alt:`${s} logo`,src:Ne(((n=r.data.items[0].body)==null?void 0:n.logo_url)??"")})}function He({name:s}){const{integrations:t}=Z();return e.jsx("section",{className:"px-5 pt-5",children:e.jsx(ge,{title:e.jsx("span",{className:"text-text-lg",children:"Set this stack"}),children:e.jsxs("ul",{className:"space-y-5",children:[e.jsxs("li",{className:"space-y-2",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(I,{children:"1"}),e.jsx("p",{className:"font-semibold",children:"Set your stack"})]}),e.jsxs("div",{className:"space-y-1",children:[e.jsx("p",{className:"text-text-sm text-theme-text-secondary",children:"Set the stack as active on your client"}),e.jsx(u,{codeClasses:"whitespace-pre-wrap",wrap:!0,code:`zenml stack set ${s}`})]})]}),t.length>=1&&e.jsxs("li",{className:"space-y-2",children:[e.jsxs("div",{className:"flex items-center gap-2",children:[e.jsx(I,{children:"2"}),e.jsx("p",{className:"font-semibold",children:"Install the integrations"})]}),e.jsxs("div",{className:"space-y-1",children:[e.jsx("p",{className:"text-text-sm text-theme-text-secondary",children:"Install the required integrations to run pipelines in your stack"}),e.jsx(u,{codeClasses:"whitespace-pre-wrap",wrap:!0,code:`zenml integration install ${t.join(" ")}`})]})]})]})})})}function I({children:s}){return e.jsx("div",{className:"flex h-7 w-7 items-center justify-center rounded-sm bg-primary-100 text-text-lg font-semibold text-theme-text-brand",children:s})}function Fe(){return[{id:"name",header:"Stack",accessorFn:s=>({name:s.name,id:s.id}),cell:({getValue:s})=>{const{name:t,id:a}=s();return e.jsxs("div",{className:"group/copybutton flex items-center gap-2",children:[e.jsx(P,{type:"square",size:"md",children:e.jsx(M,{size:"md",children:t[0]})}),e.jsxs("div",{children:[e.jsx("div",{className:"flex items-center gap-1",children:e.jsx(Te,{stackName:t,stackId:a,children:e.jsx("h2",{className:"text-text-md font-semibold",children:t})})}),e.jsxs("div",{className:"flex items-center gap-1",children:[e.jsx("p",{className:"text-text-xs text-theme-text-secondary",children:a.split("-")[0]}),e.jsx(b,{copyText:a})]})]})]})}},{id:"created",header:"Created at",accessorFn:s=>{var t;return(t=s.body)==null?void 0:t.created},cell:({getValue:s})=>e.jsx("p",{className:"text-text-sm text-theme-text-secondary",children:e.jsx(je,{dateString:s()})})},{id:"author",header:"Author",accessorFn:s=>{var t;return{author:(t=s.body)==null?void 0:t.user}},cell:({getValue:s})=>{const{author:t}=s();return t?e.jsx(Ce,{username:t.name}):null}},{id:"actions",header:"",accessorKey:"name",cell:({getValue:s})=>e.jsx(Se,{name:s()})}]}function Oe({setHasResumeableStack:s}){const{success:t,data:a}=z(),r=h({...f.stackDeploymentStack({provider:(a==null?void 0:a.provider)||"aws",stack_name:(a==null?void 0:a.stackName)||"",date_start:a==null?void 0:a.timestamp}),enabled:t,throwOnError:!0});return c.useEffect(()=>{r.data&&(he(),s(!1))},[r.data]),!t||r.isError?null:r.isPending?e.jsx(m,{className:"h-[70px] w-full"}):e.jsx(k,{className:"w-full",children:e.jsxs("section",{className:"flex flex-wrap items-center justify-between gap-y-2",children:[e.jsxs("div",{className:"flex flex-wrap items-center gap-2",children:[e.jsx("p",{className:"font-semibold",children:"You have a Stack provision incomplete"}),e.jsx("p",{className:"text-text-sm",children:"Return to the setup and finish the configuration on your cloud provider"})]}),e.jsx("div",{children:e.jsx(g,{className:"w-fit bg-theme-surface-primary",intent:"primary",emphasis:"subtle",asChild:!0,children:e.jsx(H,{to:A.stacks.create.newInfra,children:e.jsx("span",{children:"Review Stack"})})})})]})})}const j=1,Be=p.object({page:p.coerce.number().min(j).optional().default(j).catch(j),name:p.string().optional(),operator:p.enum(["and","or"]).optional()});function $e(){const[s]=fe(),{page:t,name:a,operator:r}=Be.parse({page:s.get("page")||void 0,name:s.get("name")||void 0});return{page:t,name:a,logical_operator:r}}function _e(){const[s,t]=c.useState(z().success),a=$e(),{refetch:r,data:n}=h({...f.stackList({...a,sort_by:"desc:updated"}),throwOnError:!0});return e.jsx("section",{className:"p-5",children:e.jsxs("div",{className:"flex flex-col gap-5",children:[e.jsxs("div",{className:"flex flex-wrap items-center justify-between gap-y-4",children:[e.jsx(xe,{searchParams:a}),e.jsxs("div",{className:"flex items-center justify-between gap-2",children:[e.jsxs(g,{intent:"primary",emphasis:"subtle",size:"md",onClick:()=>r(),children:[e.jsx(oe,{className:"h-5 w-5 fill-theme-text-brand"}),"Refresh"]}),e.jsx(g,{size:"md",asChild:!0,children:e.jsxs(H,{to:A.stacks.create.index,children:[e.jsx(le,{className:"h-5 w-5 shrink-0 fill-white"}),e.jsx("span",{children:"New Stack"})]})})]})]}),e.jsxs("div",{className:"flex flex-col items-center gap-5",children:[s&&e.jsx(Oe,{setHasResumeableStack:t}),e.jsx("div",{className:"w-full",children:n?e.jsx(ne,{columns:Fe(),data:n.items}):e.jsx(m,{className:"h-[500px] w-full"})}),n?n.total_pages>1&&e.jsx(me,{searchParams:a,paginate:n}):e.jsx(m,{className:"h-[36px] w-[300px]"})]})]})})}function os(){const{setCurrentBreadcrumbData:s}=ce(),{setTourState:t,tourState:{tourActive:a}}=ie();return c.useEffect(()=>{a&&t(r=>({...r,run:!0,stepIndex:r.stepIndex}))},[a]),c.useEffect(()=>{s({segment:"stacks",data:null})},[]),e.jsxs("div",{children:[e.jsx(ve,{}),e.jsx(_e,{})]})}export{os as default};
@@ -1 +0,0 @@
1
- import{j as e}from"./@radix-CFOkMR_E.js";import{B as m,p as l,c as d,S as x,$ as u,r as f,aA as p}from"./index-BczVOqUf.js";import{S as h}from"./database-1xWSgZfO.js";import{c as j,L as g}from"./@react-router-CO-OsFwI.js";import"./@tanstack-DYiOyJUL.js";import"./@reactflow-l_1hUr1S.js";function n({icon:s,estimatedTime:t,subtitle:a,title:r,comingSoon:i=!1,isRecommended:c=!1}){return e.jsxs(m,{className:`h-full w-full space-y-1 px-6 py-5 ${i&&"bg-neutral-50"}`,children:[s,e.jsxs("div",{className:"flex flex-wrap items-center gap-1",children:[e.jsx("h2",{className:"text-text-lg font-semibold",children:r}),c&&e.jsx(l,{className:"font-semibold",color:"green",size:"sm",children:"Recommended"}),i&&e.jsx(l,{className:"font-semibold",color:"purple",size:"sm",children:"Coming Soon"})]}),e.jsx("p",{className:"text-theme-text-secondary",children:a}),e.jsxs("p",{className:"text-text-xs text-theme-text-tertiary",children:["Estimated time: ",t," mins"]})]})}function y(){const{isError:s,isPending:t,data:a}=d();if(t)return e.jsx(x,{className:"h-[200px] w-full"});if(s)return e.jsx("div",{children:"Failed to load server info"});const r=u(a.deployment_type||"other");return e.jsxs("section",{className:"w-full space-y-5",children:[e.jsxs("div",{children:[e.jsx("h2",{className:"text-text-xl font-semibold",children:"Smart Stack Setup"}),e.jsx("p",{className:"text-theme-text-secondary",children:"Use our smart tools to connect to your Cloud in a quick and simplified way."})]}),e.jsxs("div",{className:"grid w-full grid-cols-1 gap-6 md:grid-cols-2",children:[e.jsx(N,{isLocalDeployment:r}),e.jsx(v,{isLocalDeployment:r})]})]})}function N({isLocalDeployment:s}){const[t]=j(),a=f.stacks.create.newInfra+(t.size>=1?`?${t.toString()}`:"");return e.jsxs("div",{className:"relative",children:[s&&e.jsx(o,{}),e.jsx(g,{to:a,children:e.jsx(n,{title:"New Infrastructure",isRecommended:!0,subtitle:"Use a script to set a new cloud infrastructure from scratch",icon:e.jsx(h,{className:"h-6 w-6 fill-primary-400"}),estimatedTime:"3"})})]})}function v({isLocalDeployment:s}){return e.jsxs("div",{className:"relative",children:[s&&e.jsx(o,{}),e.jsx(n,{comingSoon:!0,title:"Use existing Cloud",subtitle:"Connect to your existing Cloud and configure your components manually.",icon:e.jsx(p,{className:"h-6 w-6 fill-primary-400"}),estimatedTime:"15"})]})}function o(){return e.jsx("div",{className:"group absolute flex h-full w-full items-center justify-center rounded-md border border-theme-border-moderate bg-white/70",children:e.jsx("div",{className:"hidden rounded-md bg-theme-text-primary px-3 py-2 text-text-xs text-theme-text-negative shadow-lg animate-in fade-in-0 fade-out-0 zoom-in-95 group-hover:block",children:"Smart Setup is not available for local deployments"})})}function I(){return e.jsx("section",{className:"layout-container flex gap-2 p-5",children:e.jsx(y,{})})}export{I as default};