@llmops/app 0.1.5-beta.1 → 0.1.5

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 (98) hide show
  1. package/dist/.vite/manifest.json +453 -180
  2. package/dist/assets/Form-B1rZ0Hvr.js +1 -0
  3. package/dist/assets/InternalBackdrop-CXjGP6a9.js +12 -0
  4. package/dist/assets/_environment-zVjmOhBI.js +1 -0
  5. package/dist/assets/_observability-CQ4Ll_WT.js +1 -0
  6. package/dist/assets/_observability-DPSeR4-h.css +1 -0
  7. package/dist/assets/{_settings-BK4LOT_O.js → _settings-Bv8acMq8.js} +1 -1
  8. package/dist/assets/{_tabs-spsrS7rN.js → _tabs-Bi-rsAVV.js} +1 -1
  9. package/dist/assets/{_tabs-DWvdcnbx.js → _tabs-oKfgxR5m.js} +1 -1
  10. package/dist/assets/_variant-Zg5HjNSN.js +30 -0
  11. package/dist/assets/{_variants-DiPU43aS.js → _variants-B36Lo8m_.js} +1 -1
  12. package/dist/assets/{area.css-d_0zeUpe.js → area.css-DTnbbu5M.js} +1 -1
  13. package/dist/assets/button-DftzA6-1.js +1 -0
  14. package/dist/assets/check-PaWYhFn6.js +1 -0
  15. package/dist/assets/chevron-down-BjDiaa62.js +1 -0
  16. package/dist/assets/{chevron-right-CS1Toe_9.js → chevron-right-Dz77YeP_.js} +1 -1
  17. package/dist/assets/configs-CtNuMmVR.js +1 -0
  18. package/dist/assets/{copy-BQ-62Ur4.js → copy-D-DZB-6Z.js} +1 -1
  19. package/dist/assets/costs-DwVSRTwW.js +1 -0
  20. package/dist/assets/en-US-C8ut0f5H.js +1 -0
  21. package/dist/assets/environments-BB95BiC0.js +1 -0
  22. package/dist/assets/formatDistance-Bok3-MB1.js +1 -0
  23. package/dist/assets/getDisabledMountTransitionStyles-CKUvhO4q.js +1 -0
  24. package/dist/assets/index-BCY9aD4r.js +16 -0
  25. package/dist/assets/index-BS3B2BG5.js +1 -0
  26. package/dist/assets/{index-DnQMGf2R.css → index-BiCR_Kj2.css} +1 -1
  27. package/dist/assets/{index-BEbVINNT.js → index-CnOYeKc1.js} +1 -1
  28. package/dist/assets/index-CpAxLUl2.js +1 -0
  29. package/dist/assets/index-D841new6.js +1 -0
  30. package/dist/assets/index-DvzXLQL6.js +4 -0
  31. package/dist/assets/index-xdhK5tU9.js +1 -0
  32. package/dist/assets/index.esm-COTq2pHX.js +1 -0
  33. package/dist/assets/info-box.css-HIaMvhbC.js +1 -0
  34. package/dist/assets/llmops-B3IIte87.css +1 -0
  35. package/dist/assets/llmops-C5uyvq6E.js +1 -0
  36. package/dist/assets/observability-C5jdcUSg.css +1 -0
  37. package/dist/assets/observability.css-dztiak5K.js +1 -0
  38. package/dist/assets/overview-BwCF8A1G.js +1 -0
  39. package/dist/assets/{plus-5oc_diIr.js → plus-C_L0BpbU.js} +1 -1
  40. package/dist/assets/popover-CSR0ctop.js +1 -0
  41. package/dist/assets/popupStateMapping-DkOpwBhG.js +1 -0
  42. package/dist/assets/requests-D8wE_E2M.js +1 -0
  43. package/dist/assets/{route-CpTvuTp9.js → route-CI77gokb.js} +1 -1
  44. package/dist/assets/{route-TG1bSyy8.js → route-CZ2yCnzN.js} +1 -1
  45. package/dist/assets/{route-CYSM3PkP.js → route-vfMzB8KR.js} +1 -1
  46. package/dist/assets/route-wrnLt3bn.js +1 -0
  47. package/dist/assets/secrets-B9u5jvFm.js +1 -0
  48. package/dist/assets/settings-24qWHZEq.js +1 -0
  49. package/dist/assets/settings-BLt538aO.js +1 -0
  50. package/dist/assets/{table-SKwX9qUc.js → table-xLf4iXV8.js} +1 -1
  51. package/dist/assets/{tabs.css-BvfbDFW8.js → tabs.css-fttLH8Xj.js} +1 -1
  52. package/dist/assets/{targeting-rpE0HiKJ.js → targeting-DZIwwaYV.js} +1 -1
  53. package/dist/assets/tooltip-BKoDpdAC.js +1 -0
  54. package/dist/assets/update-or-create-name-ChWLK2jI.js +1 -0
  55. package/dist/assets/useButton-Ct8hIyjz.js +1 -0
  56. package/dist/assets/{useConfigList-CN-eUdau.js → useConfigList-Du__Gu7q.js} +1 -1
  57. package/dist/assets/{useConfigVariants-CIAilMey.js → useConfigVariants-C8frrCcZ.js} +1 -1
  58. package/dist/assets/{useEnvironments-D798jdLi.js → useEnvironments-CYkrqAdO.js} +1 -1
  59. package/dist/assets/useFocus-Du1aH2j1.js +1 -0
  60. package/dist/assets/{useMutation-ppBqjQps.js → useMutation-VUB-GXkv.js} +1 -1
  61. package/dist/assets/usePopupAutoResize-ddPHogUJ.js +1 -0
  62. package/dist/assets/useRole-DP91D1OX.js +1 -0
  63. package/dist/assets/useSetTargeting-D1rPM8vz.js +1 -0
  64. package/dist/assets/useSyncedFloatingRootContext-BzuhbdSw.js +1 -0
  65. package/dist/assets/{useTargetingRules-Bi-hIPWR.js → useTargetingRules-DS57orU0.js} +1 -1
  66. package/dist/assets/useValueChanged-vz8uKgCk.js +1 -0
  67. package/dist/assets/{user-profile-CvRPKkVY.js → user-profile-Bt3_D9Gr.js} +1 -1
  68. package/dist/assets/{variants-CZaBWam0.js → variants-CYXSNKzX.js} +1 -1
  69. package/dist/assets/variants.css-BjGKD3Nv.js +1 -0
  70. package/dist/assets/{workspace-general-umhuExNi.js → workspace-general-BRMpUqb-.js} +1 -1
  71. package/dist/index.cjs +723 -10
  72. package/dist/index.mjs +724 -11
  73. package/package.json +3 -3
  74. package/dist/assets/Form-B1Xes2HX.js +0 -1
  75. package/dist/assets/_environment-BHroMRce.js +0 -1
  76. package/dist/assets/_variant-i8-2ZjCg.js +0 -30
  77. package/dist/assets/button-D46pme1q.js +0 -1
  78. package/dist/assets/check-Cp187nGx.js +0 -1
  79. package/dist/assets/configs-BWQEZkYp.js +0 -1
  80. package/dist/assets/environments-CxEwSvmp.js +0 -1
  81. package/dist/assets/formatDistance-CEmiEHX5.js +0 -1
  82. package/dist/assets/index-CadPnEMv.js +0 -1
  83. package/dist/assets/index-D3G5uHLZ.js +0 -1
  84. package/dist/assets/index-KuidudiV.js +0 -1
  85. package/dist/assets/index-nHWjhrFW.js +0 -16
  86. package/dist/assets/index.esm-DJMnkOur.js +0 -1
  87. package/dist/assets/info-box.css-DyjK40Ax.js +0 -1
  88. package/dist/assets/new-config-state-B8sMe-TC.css +0 -1
  89. package/dist/assets/new-config-state.css-zldOiAQS.js +0 -1
  90. package/dist/assets/secrets-dM6OVjcE.js +0 -1
  91. package/dist/assets/settings-C74FVCr5.js +0 -1
  92. package/dist/assets/settings-D4fugFLx.js +0 -1
  93. package/dist/assets/update-or-create-name-Cd1zyalO.js +0 -4
  94. package/dist/assets/useButton-DfUAk02P.js +0 -1
  95. package/dist/assets/useRole-D2HhbdS4.js +0 -1
  96. package/dist/assets/useSetTargeting-C3RG0vdV.js +0 -1
  97. package/dist/assets/useValueChanged-2Bqw2vWT.js +0 -12
  98. package/dist/assets/variants.css-C4fJhzPe.js +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@llmops/app",
3
- "version": "0.1.5-beta.1",
3
+ "version": "0.1.5",
4
4
  "description": "LLMOps application with server and client",
5
5
  "type": "module",
6
6
  "license": "Apache-2.0",
@@ -64,8 +64,8 @@
64
64
  "motion": "^12.23.25",
65
65
  "react-aria-components": "^1.13.0",
66
66
  "react-hook-form": "^7.68.0",
67
- "@llmops/core": "^0.1.5-beta.1",
68
- "@llmops/gateway": "^0.1.5-beta.1"
67
+ "@llmops/core": "^0.1.5",
68
+ "@llmops/gateway": "^0.1.5"
69
69
  },
70
70
  "peerDependencies": {
71
71
  "react": "^19.2.1",
@@ -1 +0,0 @@
1
- import{V as $,W as H,X as B,Y as A,r as s,Z as J,_ as X,$ as Z,a0 as W,a1 as q,a2 as z,a3 as V,a4 as Q,a5 as ee,a6 as O,a7 as te,a8 as ne,a9 as oe,j as k,aa as M,ab as _,ac as K,ad as se,ae as j,af as F,ag as re,ah as ae,ai as ie,aj as le,ak as ue,al as U,am as ce,an as de}from"./index-nHWjhrFW.js";import{u as pe,a as fe,F as ge,I as me,i as Ce,b as Se,c as Re,d as he}from"./useValueChanged-2Bqw2vWT.js";import{u as xe,C as Ee}from"./useRole-D2HhbdS4.js";import{u as G}from"./useButton-DfUAk02P.js";function ve(t){const{store:e,parentContext:o,actionsRef:C}=t,l=e.useState("open"),r=e.useState("disablePointerDismissal"),u=e.useState("modal"),i=e.useState("popupElement"),{openMethod:n,triggerProps:g,reset:p}=pe(l);$(e);const{forceUnmount:f}=H(l,e,()=>{p()}),a=B(E=>{const b=A(E);return b.preventUnmountOnClose=()=>{e.set("preventUnmountingOnClose",!0)},b}),S=s.useCallback(()=>{e.setOpen(!1,a(J))},[e,a]);s.useImperativeHandle(C,()=>({unmount:f,close:S}),[f,S]);const d=X({popupStore:e,onOpenChange:e.setOpen,treatPopupAsFloatingElement:!0,noEmit:!0}),[R,v]=s.useState(0),h=R===0,y=xe(d),c=Z(d,{outsidePressEvent(){return e.context.internalBackdropRef.current||e.context.backdropRef.current?"intentional":{mouse:u==="trap-focus"?"sloppy":"intentional",touch:"sloppy"}},outsidePress(E){if("button"in E&&E.button!==0||"touches"in E&&E.touches.length!==1)return!1;const b=q(E);if(h&&!r){const w=b;return u&&(e.context.internalBackdropRef.current||e.context.backdropRef.current)?e.context.internalBackdropRef.current===w||e.context.backdropRef.current===w||z(w,i)&&!w?.hasAttribute("data-base-ui-portal"):!0}return!1},escapeKey:h});fe(l&&u===!0,i);const{getReferenceProps:m,getFloatingProps:P,getTriggerProps:x}=W([y,c]);e.useContextCallback("onNestedDialogOpen",E=>{v(E+1)}),e.useContextCallback("onNestedDialogClose",()=>{v(0)}),s.useEffect(()=>(o?.onNestedDialogOpen&&l&&o.onNestedDialogOpen(R),o?.onNestedDialogClose&&!l&&o.onNestedDialogClose(),()=>{o?.onNestedDialogClose&&l&&o.onNestedDialogClose()}),[l,o,R]);const D=s.useMemo(()=>m(g),[m,g]),I=s.useMemo(()=>x(g),[x,g]),N=s.useMemo(()=>P(),[P]);e.useSyncedValues({openMethod:n,activeTriggerProps:D,inactiveTriggerProps:I,popupProps:N,floatingRootContext:d,nestedOpenDialogCount:R})}const Y=s.createContext(void 0);function T(t){const e=s.useContext(Y);if(t===!1&&e===void 0)throw new Error(V(27));return e}const Ie={...te,modal:O(t=>t.modal),nested:O(t=>t.nested),nestedOpenDialogCount:O(t=>t.nestedOpenDialogCount),disablePointerDismissal:O(t=>t.disablePointerDismissal),openMethod:O(t=>t.openMethod),descriptionElementId:O(t=>t.descriptionElementId),titleElementId:O(t=>t.titleElementId),viewportElement:O(t=>t.viewportElement),role:O(t=>t.role)};class Pe extends Q{constructor(e){super(be(e),{popupRef:s.createRef(),backdropRef:s.createRef(),internalBackdropRef:s.createRef(),triggerElements:new ee,onOpenChange:void 0,onOpenChangeComplete:void 0},Ie)}setOpen=(e,o)=>{if(o.preventUnmountOnClose=()=>{this.set("preventUnmountingOnClose",!0)},!e&&o.trigger==null&&this.state.activeTriggerId!=null&&(o.trigger=this.state.activeTriggerElement??void 0),this.context.onOpenChange?.(e,o),o.isCanceled)return;const C={open:e,nativeEvent:o.event,reason:o.reason,nested:this.state.nested};this.state.floatingRootContext.context.events?.emit("openchange",C);const l={open:e},r=o.trigger?.id??null;(r||e)&&(l.activeTriggerId=r,l.activeTriggerElement=o.trigger??null),this.update(l)}}function be(t={}){return{...ne(),modal:!0,disablePointerDismissal:!1,popupElement:null,viewportElement:null,descriptionElementId:void 0,titleElementId:void 0,openMethod:null,nested:!1,nestedOpenDialogCount:0,role:"dialog",...t}}function Be(t){const{children:e,open:o,defaultOpen:C=!1,onOpenChange:l,onOpenChangeComplete:r,actionsRef:u,handle:i,triggerId:n,defaultTriggerId:g=null}=t,p=T(),f=!!p,a=oe(()=>i?.store??new Pe({open:o??C,activeTriggerId:n!==void 0?n:g,modal:!0,disablePointerDismissal:!0,nested:f,role:"alertdialog"})).current;a.useControlledProp("open",o,C),a.useControlledProp("activeTriggerId",n,g),a.useSyncedValue("nested",f),a.useContextCallback("onOpenChange",l),a.useContextCallback("onOpenChangeComplete",r);const S=a.useState("payload");ve({store:a,actionsRef:u,parentContext:p?.store.context});const d=s.useMemo(()=>({store:a}),[a]);return k.jsx(Y.Provider,{value:d,children:typeof e=="function"?e({payload:S}):e})}const Oe={..._,...K},Ve=s.forwardRef(function(e,o){const{render:C,className:l,forceRender:r=!1,...u}=e,{store:i}=T(),n=i.useState("open"),g=i.useState("nested"),p=i.useState("mounted"),f=i.useState("transitionStatus"),a=s.useMemo(()=>({open:n,transitionStatus:f}),[n,f]);return M("div",e,{state:a,ref:[i.context.backdropRef,o],stateAttributesMapping:Oe,props:[{role:"presentation",hidden:!p,style:{userSelect:"none",WebkitUserSelect:"none"}},u],enabled:r||!g})}),je=s.forwardRef(function(e,o){const{render:C,className:l,disabled:r=!1,nativeButton:u=!0,...i}=e,{store:n}=T(),g=n.useState("open");function p(d){g&&n.setOpen(!1,A(se,d.nativeEvent))}const{getButtonProps:f,buttonRef:a}=G({disabled:r,native:u}),S=s.useMemo(()=>({disabled:r}),[r]);return M("button",e,{state:S,ref:[o,a],props:[{onClick:p},i,f]})}),Ue=s.forwardRef(function(e,o){const{render:C,className:l,id:r,...u}=e,{store:i}=T(),n=j(r);return i.useSyncedValueWithCleanup("descriptionElementId",n),M("p",e,{ref:o,props:[{id:n},u]})});let De=(function(t){return t.nestedDialogs="--nested-dialogs",t})({}),Te=(function(t){return t[t.open=F.open]="open",t[t.closed=F.closed]="closed",t[t.startingStyle=F.startingStyle]="startingStyle",t[t.endingStyle=F.endingStyle]="endingStyle",t.nested="data-nested",t.nestedDialogOpen="data-nested-dialog-open",t})({});const L=s.createContext(void 0);function ye(){const t=s.useContext(L);if(t===void 0)throw new Error(V(26));return t}const Me={..._,...K,nestedDialogOpen(t){return t?{[Te.nestedDialogOpen]:""}:null}},Ae=s.forwardRef(function(e,o){const{className:C,finalFocus:l,initialFocus:r,render:u,...i}=e,{store:n}=T(),g=n.useState("descriptionElementId"),p=n.useState("disablePointerDismissal"),f=n.useState("floatingRootContext"),a=n.useState("popupProps"),S=n.useState("modal"),d=n.useState("mounted"),R=n.useState("nested"),v=n.useState("nestedOpenDialogCount"),h=n.useState("open"),y=n.useState("openMethod"),c=n.useState("titleElementId"),m=n.useState("transitionStatus"),P=n.useState("role");ye(),re({open:h,ref:n.context.popupRef,onComplete(){h&&n.context.onOpenChangeComplete?.(!0)}});function x(b){return b==="touch"?n.context.popupRef.current:!0}const D=r===void 0?x:r,I=v>0,N=s.useMemo(()=>({open:h,nested:R,transitionStatus:m,nestedDialogOpen:I}),[h,R,m,I]),E=M("div",e,{state:N,props:[a,{"aria-labelledby":c??void 0,"aria-describedby":g??void 0,role:P,tabIndex:-1,hidden:!d,onKeyDown(b){Ee.has(b.key)&&b.stopPropagation()},style:{[De.nestedDialogs]:v}},i],ref:[o,n.context.popupRef,n.useStateSetter("popupElement")],stateAttributesMapping:Me});return k.jsx(ge,{context:f,openInteractionType:y,disabled:!d,closeOnFocusOut:!p,initialFocus:D,returnFocus:l,modal:S!==!1,restoreFocus:"popup",children:E})}),We=s.forwardRef(function(e,o){const{keepMounted:C=!1,...l}=e,{store:r}=T(),u=r.useState("mounted"),i=r.useState("modal");return u||C?k.jsx(L.Provider,{value:C,children:k.jsxs(ae,{ref:o,...l,children:[u&&i===!0&&k.jsx(me,{ref:r.context.internalBackdropRef,inert:Ce(!open)}),e.children]})}):null}),_e=s.forwardRef(function(e,o){const{render:C,className:l,id:r,...u}=e,{store:i}=T(),n=j(r);return i.useSyncedValueWithCleanup("titleElementId",n),M("h2",e,{ref:o,props:[{id:n},u]})}),Ke=s.forwardRef(function(e,o){const{render:C,className:l,disabled:r=!1,nativeButton:u=!0,id:i,payload:n,handle:g,...p}=e,f=T(!0),a=g?.store??f?.store;if(!a)throw new Error(V(79));const S=j(i),d=a.useState("floatingRootContext"),R=a.useState("isOpenedByTrigger",S),v=s.useRef(null),{registerTrigger:h,isMountedByThisTrigger:y}=ie(S,v,a,{payload:n}),{getButtonProps:c,buttonRef:m}=G({disabled:r,native:u}),P=Se(d,{enabled:d!=null}),x=W([P]),D=s.useMemo(()=>({disabled:r,open:R}),[r,R]),I=a.useState("triggerProps",y);return M("button",e,{state:D,ref:[m,o,h,v],props:[x.getReferenceProps(),I,{[le]:"",id:S},p,c],stateAttributesMapping:ue})}),Ge=s.forwardRef(function(e,o){const{render:C,className:l,validationMode:r="onSubmit",errors:u,onSubmit:i,onFormSubmit:n,...g}=e,p=s.useRef({fields:new Map}),f=s.useRef(!1),a=s.useRef(!1),S=B(c=>{c&&(c.focus(),c.tagName==="INPUT"&&c.select())}),[d,R]=s.useState(u);Re(u,()=>{R(u)}),s.useEffect(()=>{if(!f.current)return;f.current=!1;const c=Array.from(p.current.fields.values()).filter(m=>m.validityData.state.valid===!1);c.length&&S(c[0].controlRef.current)},[d,S]);const v=M("form",e,{ref:o,props:[{noValidate:!0,onSubmit(c){a.current=!0;let m=Array.from(p.current.fields.values());m.forEach(x=>{x.validate()}),m=Array.from(p.current.fields.values());const P=m.filter(x=>!x.validityData.state.valid);if(P.length)c.preventDefault(),S(P[0].controlRef.current);else if(f.current=!0,i?.(c),n){c.preventDefault();const x=m.reduce((D,I)=>(I.name&&(D[I.name]=I.getValue()),D),{});n(x,ce(de,c.nativeEvent))}}},g]}),h=B(c=>{if(c&&d&&U.hasOwnProperty.call(d,c)){const m={...d};delete m[c],R(m)}}),y=s.useMemo(()=>({formRef:p,validationMode:r,errors:d??U,clearErrors:h,submitAttemptedRef:a}),[p,r,d,h]);return k.jsx(he.Provider,{value:y,children:v})});export{Be as A,Ke as D,Ge as F,We as a,Ve as b,Ae as c,_e as d,Ue as e,je as f};
@@ -1 +0,0 @@
1
- import{a as Q,bp as X,j as i,d as Y,r as D,I as Z}from"./index-nHWjhrFW.js";import{B as ee}from"./button-D46pme1q.js";import{p as te,q as ne,j as G,v as J,k as K,i as M,S as ie,r as se,t as ae}from"./useSetTargeting-C3RG0vdV.js";import{u as re}from"./useEnvironments-D798jdLi.js";import{u as oe}from"./useConfigVariants-CIAilMey.js";import{u as le}from"./useTargetingRules-Bi-hIPWR.js";import{i as ce,a as de}from"./info-box.css-DyjK40Ax.js";/* empty css */import"./useButton-DfUAk02P.js";import"./useValueChanged-2Bqw2vWT.js";import"./useMutation-ppBqjQps.js";function Ce(){const t=Q.c(17),{id:e,environment:a}=X.useParams(),{data:c,isLoading:j}=re(),{data:o,isLoading:y}=oe(e),{data:L,isLoading:I}=le(e);if(j||y||I){let s;return t[0]===Symbol.for("react.memo_cache_sentinel")?(s=i.jsx("div",{children:"Loading..."}),t[0]=s):s=t[0],s}let n;t[1]!==a||t[2]!==c?(n=c?.find(s=>s.id===a),t[1]=a,t[2]=c,t[3]=n):n=t[3];const S=n;if(!S){let s;return t[4]===Symbol.for("react.memo_cache_sentinel")?(s=i.jsx("div",{children:"Environment not found"}),t[4]=s):s=t[4],s}let r;t[5]!==a||t[6]!==L?(r=L?.find(s=>s.environmentId===a),t[5]=a,t[6]=L,t[7]=r):r=t[7];const R=r;let l;t[8]!==o?(l=o??[],t[8]=o,t[9]=l):l=t[9];const B=R?.configVariantId??null,E=R?.variantVersionId??null;let g;return t[10]!==e||t[11]!==S||t[12]!==a||t[13]!==l||t[14]!==B||t[15]!==E?(g=i.jsx(me,{configId:e,environmentId:a,environment:S,variants:l,initialVariantId:B,initialVariantVersionId:E}),t[10]=e,t[11]=S,t[12]=a,t[13]=l,t[14]=B,t[15]=E,t[16]=g):g=t[16],g}function me(t){const e=Q.c(67),{configId:a,environmentId:c,environment:j,variants:o,initialVariantId:y,initialVariantVersionId:L}=t,I=Y(),v=te(),[n,S]=D.useState(y),[r,R]=D.useState(L??null);let l;if(e[0]!==n||e[1]!==o){let m;e[3]!==n?(m=P=>P.id===n,e[3]=n,e[4]=m):m=e[4],l=o.find(m),e[0]=n,e[1]=o,e[2]=l}else l=e[2];const E=l?.variantId??"",{data:g,isLoading:s}=ne(E);let $,w;e[5]!==y||e[6]!==n?($=()=>{n!==y&&R(null)},w=[n,y],e[5]=y,e[6]=n,e[7]=$,e[8]=w):($=e[7],w=e[8]),D.useEffect($,w);let k;e[9]!==o?(k=o.map(ge),e[9]=o,e[10]=k):k=e[10];const u=k;let p,b,h,x,V,N,d;if(e[11]!==a||e[12]!==j.name||e[13]!==c||e[14]!==s||e[15]!==I||e[16]!==n||e[17]!==r||e[18]!==v||e[19]!==u||e[20]!==o||e[21]!==g){d=g?.map(ve)??[];let m;e[29]!==a||e[30]!==c||e[31]!==I||e[32]!==n||e[33]!==r||e[34]!==v?(m=async()=>{if(!(!n||!r))try{await v.mutateAsync({environmentId:c,configId:a,configVariantId:n,variantVersionId:r}),I({to:"/configs/$id/targeting",params:{id:a}})}catch(f){console.error("Error setting targeting:",f)}},e[29]=a,e[30]=c,e[31]=I,e[32]=n,e[33]=r,e[34]=v,e[35]=m):m=e[35];const P=m;let z;e[36]===Symbol.for("react.memo_cache_sentinel")?(z={justifyContent:"flex-end"},e[36]=z):z=e[36];const W=!n||!r||v.isPending;let F;e[37]===Symbol.for("react.memo_cache_sentinel")?(F=i.jsx(Z,{icon:ie,size:"sm"}),e[37]=F):F=e[37];const A=v.isPending?"Saving...":"Save";e[38]!==P||e[39]!==W||e[40]!==A?(p=i.jsx("div",{className:se,style:z,children:i.jsxs(ee,{variant:"primary",onClick:P,disabled:W,children:[F,A]})}),e[38]=P,e[39]=W,e[40]=A,e[41]=p):p=e[41],b=ae,e[42]!==j.name?(h=i.jsxs("div",{className:ce,children:["The selected variant will be served to all requests in the"," ",i.jsx("span",{className:de,children:j.name})," ","environment"]}),e[42]=j.name,e[43]=h):h=e[43];let H;e[44]===Symbol.for("react.memo_cache_sentinel")?(H=i.jsx("div",{className:J,style:{minWidth:"120px"},children:"Variant"}),e[44]=H):H=e[44];let T;e[45]!==o?(T=f=>{if(!f)return"";const O=o.find(U=>U.id===f);return O?O.name:f},e[45]=o,e[46]=T):T=e[46],e[47]!==n||e[48]!==T||e[49]!==u?(x=i.jsxs("div",{className:G,children:[H,i.jsx("div",{className:K,children:i.jsx(M,{items:u,value:n,onValueChange:S,placeholder:"Select a variant...",itemToString:T})})]}),e[47]=n,e[48]=T,e[49]=u,e[50]=x):x=e[50],e[51]!==u.length?(V=u.length===0&&i.jsx("div",{style:{marginTop:"1rem",opacity:.6},children:"No variants available. Create a variant first to configure targeting."}),e[51]=u.length,e[52]=V):V=e[52],N=n&&i.jsxs("div",{className:G,children:[i.jsx("div",{className:J,style:{minWidth:"120px"},children:"Version"}),i.jsx("div",{className:K,children:s?i.jsx("span",{style:{opacity:.6},children:"Loading versions..."}):d.length===0?i.jsx("span",{style:{opacity:.6},children:"No versions available"}):i.jsx(M,{items:d,value:d.find(f=>f.id===r)??null,onValueChange:f=>R(f?.id??null),placeholder:"Select version...",itemToString:fe})})]}),e[11]=a,e[12]=j.name,e[13]=c,e[14]=s,e[15]=I,e[16]=n,e[17]=r,e[18]=v,e[19]=u,e[20]=o,e[21]=g,e[22]=p,e[23]=b,e[24]=h,e[25]=x,e[26]=V,e[27]=N,e[28]=d}else p=e[22],b=e[23],h=e[24],x=e[25],V=e[26],N=e[27],d=e[28];let C;e[53]!==n||e[54]!==r||e[55]!==d?(C=n&&!r&&d.length>0&&i.jsx("div",{style:{marginTop:"0.5rem",fontSize:"0.75rem",color:"var(--gray9)"},children:"Select a version to deploy to this environment."}),e[53]=n,e[54]=r,e[55]=d,e[56]=C):C=e[56];let _;e[57]!==C||e[58]!==b||e[59]!==h||e[60]!==x||e[61]!==V||e[62]!==N?(_=i.jsxs("div",{className:b,children:[h,x,V,N,C]}),e[57]=C,e[58]=b,e[59]=h,e[60]=x,e[61]=V,e[62]=N,e[63]=_):_=e[63];let q;return e[64]!==p||e[65]!==_?(q=i.jsxs("div",{children:[p,_]}),e[64]=p,e[65]=_,e[66]=q):q=e[66],q}function fe(t){return t?.label??""}function ve(t){return{id:t.id,label:`Version ${t.version}`,version:t.version}}function ge(t){return t.id}export{Ce as component};