@odigos/ui-kit 0.0.293 → 0.0.294

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 (41) hide show
  1. package/CHANGELOG.md +9 -0
  2. package/lib/chunks/{helpers-DbT32OSr.js → helpers-BbLwXwCP.js} +1 -1
  3. package/lib/chunks/{index-MwonXqI1.js → index-DrntqYmU.js} +1 -1
  4. package/lib/chunks/{source-instrument-form-context-CmMX5vdq.js → source-instrument-form-context-TaNVlKMt.js} +1 -1
  5. package/lib/chunks/{ui-components-Bhz7WgBl.js → ui-components-CnvJIMbW.js} +321 -323
  6. package/lib/components/table/styled.d.ts +2 -4
  7. package/lib/components/table/types.d.ts +1 -3
  8. package/lib/components/tag/index.d.ts +8 -0
  9. package/lib/components/tooltip/index.d.ts +2 -0
  10. package/lib/components.js +1 -1
  11. package/lib/constants/insights/system.d.ts +3 -1
  12. package/lib/constants.js +1 -1
  13. package/lib/containers/insights/findings/helpers.d.ts +2 -0
  14. package/lib/containers/insights/transactions/drawer/baselines/data-drawer/{db-access → db-access-view}/helpers.d.ts +2 -2
  15. package/lib/containers/insights/transactions/drawer/baselines/data-drawer/{db-access → db-access-view}/index.d.ts +2 -2
  16. package/lib/containers/insights/transactions/drawer/baselines/data-drawer/{db-access → db-access-view}/map.d.ts +2 -2
  17. package/lib/containers/insights/transactions/drawer/baselines/data-drawer/{db-access → db-access-view}/types.d.ts +4 -4
  18. package/lib/containers/insights/transactions/drawer/baselines/data-drawer/index.d.ts +1 -1
  19. package/lib/containers/insights/transactions/drawer/baselines/data-drawer/libraries/index.d.ts +7 -0
  20. package/lib/containers/insights/transactions/drawer/baselines/data-drawer/libraries/types.d.ts +7 -0
  21. package/lib/containers/insights/transactions/drawer/baselines/data-drawer/outbound-peers-view/helpers.d.ts +21 -0
  22. package/lib/containers/insights/transactions/drawer/baselines/data-drawer/outbound-peers-view/index.d.ts +7 -0
  23. package/lib/containers/insights/transactions/drawer/baselines/data-drawer/outbound-peers-view/map.d.ts +7 -0
  24. package/lib/containers/insights/transactions/drawer/baselines/data-drawer/outbound-peers-view/node.d.ts +6 -0
  25. package/lib/containers/insights/transactions/drawer/baselines/data-drawer/outbound-peers-view/types.d.ts +25 -0
  26. package/lib/containers/insights/transactions/drawer/baselines/data-drawer/service-call-edges-view/helpers.d.ts +20 -0
  27. package/lib/containers/insights/transactions/drawer/baselines/data-drawer/service-call-edges-view/index.d.ts +7 -0
  28. package/lib/containers/insights/transactions/drawer/baselines/data-drawer/service-call-edges-view/map.d.ts +7 -0
  29. package/lib/containers/insights/transactions/drawer/baselines/data-drawer/service-call-edges-view/node.d.ts +6 -0
  30. package/lib/containers/insights/transactions/drawer/baselines/data-drawer/service-call-edges-view/types.d.ts +23 -0
  31. package/lib/containers.js +611 -530
  32. package/lib/contexts.js +1 -1
  33. package/lib/functions.js +1 -1
  34. package/lib/hooks.js +1 -1
  35. package/lib/snippets.js +1 -1
  36. package/lib/store.js +1 -1
  37. package/lib/theme.js +1 -1
  38. package/lib/types.js +1 -1
  39. package/lib/visuals.js +1 -1
  40. package/package.json +7 -7
  41. /package/lib/containers/insights/transactions/drawer/baselines/data-drawer/{db-access → db-access-view}/node.d.ts +0 -0
package/CHANGELOG.md CHANGED
@@ -1,5 +1,14 @@
1
1
  # Changelog
2
2
 
3
+ ## [0.0.294](https://github.com/odigos-io/ui-kit/compare/ui-kit-v0.0.293...ui-kit-v0.0.294) (2026-09-01)
4
+
5
+
6
+ ### Features
7
+
8
+ * enhance service call edges JSON with visuals ([#1271](https://github.com/odigos-io/ui-kit/issues/1271)) ([096d6de](https://github.com/odigos-io/ui-kit/commit/096d6de940a3d41289dafd390be3fab470569fc9))
9
+ * implement outbound peers & libraries visualization in transaction baselines ([#1276](https://github.com/odigos-io/ui-kit/issues/1276)) ([94f1662](https://github.com/odigos-io/ui-kit/commit/94f1662772a34d3b6938c36a35c2a184d53b4343))
10
+ * **tag:** add size variants and red color option to Tag component; integrate into system settings ([#1275](https://github.com/odigos-io/ui-kit/issues/1275)) ([a33307e](https://github.com/odigos-io/ui-kit/commit/a33307e81fa332a69c660d8c1865b42e882495ff))
11
+
3
12
  ## [0.0.293](https://github.com/odigos-io/ui-kit/compare/ui-kit-v0.0.292...ui-kit-v0.0.293) (2026-08-31)
4
13
 
5
14
  ### Features
@@ -1,4 +1,4 @@
1
- import{jsx as e,Fragment as t,jsxs as r}from"react/jsx-runtime";import{Fragment as n,useMemo as o,useContext as a,createContext as s}from"react";import{T as i,t as u,b as l,P as c}from"./ui-components-Bhz7WgBl.js";import p from"styled-components";var d;(e=>{e.Default="default",e.Action="action",e.Endpoint="endpoint",e.Scope="scope",e.Duration="duration"})(d||(d={}));const f=[d.Action,d.Endpoint,d.Scope,d.Duration],h=p.span`
1
+ import{jsx as e,Fragment as t,jsxs as r}from"react/jsx-runtime";import{Fragment as n,useMemo as o,useContext as a,createContext as s}from"react";import{T as i,t as u,b as l,P as c}from"./ui-components-CnvJIMbW.js";import p from"styled-components";var d;(e=>{e.Default="default",e.Action="action",e.Endpoint="endpoint",e.Scope="scope",e.Duration="duration"})(d||(d={}));const f=[d.Action,d.Endpoint,d.Scope,d.Duration],h=p.span`
2
2
  font-family: ${({theme:e,$isMono:t})=>t?e.font_family.secondary:e.font_family.primary};
3
3
  font-size: ${({theme:e})=>e.v2.text.size.xxs}px;
4
4
  line-height: 20px;
@@ -1,4 +1,4 @@
1
- import{jsx as e,jsxs as t,Fragment as a}from"react/jsx-runtime";import r,{css as l,useTheme as n}from"styled-components";import i,{useMemo as o,useRef as s,useCallback as c,useState as d,memo as u,useEffect as p,Fragment as h,forwardRef as g,useImperativeHandle as m}from"react";import"@xyflow/react/dist/style.css";import{Handle as v,Position as f,getSmoothStepPath as b,BaseEdge as y,EdgeLabelRenderer as x,MarkerType as $,ReactFlowProvider as k,useNodesState as C,useEdgesState as S,ReactFlow as w,Background as T,useReactFlow as M}from"@xyflow/react";import{D as A,c as P,F as L,d as O,e as E,f as I,g as N,h as R,B as V,i as D,j as z,k as X,C as _,N as H,W as B,l as j,m as q,V as U,n as G,o as K,p as W,q as F,r as Y,s as J,u as Z,v as Q,I as ee,w as te,x as ae,y as re,z as le,E as ne,G as ie,H as oe,S as se,J as ce,K as de,U as ue,L as pe,M as he,O as ge,Q as me,X as ve,Y as fe,Z as be,_ as ye,$ as xe,a0 as $e,a1 as ke,a2 as Ce,a3 as Se,a4 as we,a5 as Te,a6 as Me,T as Ae,a7 as Pe,a8 as Le,a9 as Oe,aa as Ee,ab as Ie,ac as Ne,ad as Re,ae as Ve,af as De,ag as ze,ah as Xe,ai as _e,aj as He,b as Be,ak as je,al as qe,am as Ue,an as Ge,ao as Ke,ap as We,aq as Fe,ar as Ye,as as Je,at as Ze,au as Qe,av as et,aw as tt,ax as at,ay as rt,az as lt,aA as nt,aB as it,aC as ot,aD as st,aE as ct,aF as dt,aG as ut,aH as pt,aI as ht,aJ as gt,aK as mt,aL as vt,aM as ft,aN as bt,aO as yt,aP as xt,aQ as $t,aR as kt,aS as Ct,aT as St,aU as wt,aV as Tt,aW as Mt,aX as At,aY as Pt,aZ as Lt,a_ as Ot,a$ as Et,b0 as It,b1 as Nt,b2 as Rt,R as Vt,b3 as Dt,b4 as zt,A as Xt,b5 as _t,b6 as Ht}from"./ui-components-Bhz7WgBl.js";import{UserIcon as Bt,DestinationIcon as jt,HomeIcon as qt,VIcon as Ut,TrashIcon as Gt,PlusIcon as Kt,VSquareIcon as Wt,XSquareIcon as Ft,EditIcon as Yt,OdigosLogoTextCentral as Jt,OdigosLogoTextEnterprise as Zt,OdigosLogoTextCommunity as Qt,OdigosLogoTextColoredCentral as ea,OdigosLogoTextColoredEnterprise as ta,OdigosLogoTextColoredCommunity as aa,ArrowLeftIcon as ra,ArrowRightIcon as la,CopyIcon as na,YamlIcon as ia}from"../icons.js";import{i as oa,m as sa,u as ca,n as da,a as ua,C as pa,b as ha,d as ga,e as ma,f as va,g as fa,h as ba,j as ya,k as xa}from"./helpers-DbT32OSr.js";const $a=/^[a-zA-Z]$/,ka=new Set(["*","+","?"]),Ca=new Set(["^","$"]),Sa={group:"rgba(102, 242, 102, 0.5)","anchor-quantifier":"rgba(102, 191, 255, 0.5)","class-bracket":"rgba(255, 153, 153, 0.5)","class-content":"rgba(178, 1, 1, 0.5)",alternation:"rgba(255, 153, 153, 0.5)",literal:"transparent"},wa=r.div`
1
+ import{jsx as e,jsxs as t,Fragment as a}from"react/jsx-runtime";import r,{css as l,useTheme as n}from"styled-components";import i,{useMemo as o,useRef as s,useCallback as c,useState as d,memo as u,useEffect as p,Fragment as h,forwardRef as g,useImperativeHandle as m}from"react";import"@xyflow/react/dist/style.css";import{Handle as v,Position as f,getSmoothStepPath as b,BaseEdge as y,EdgeLabelRenderer as x,MarkerType as $,ReactFlowProvider as k,useNodesState as C,useEdgesState as S,ReactFlow as w,Background as T,useReactFlow as M}from"@xyflow/react";import{D as A,c as P,F as L,d as O,e as E,f as I,g as N,h as R,B as V,i as D,j as z,k as X,C as _,N as H,W as B,l as j,m as q,V as U,n as G,o as K,p as W,q as F,r as Y,s as J,u as Z,v as Q,I as ee,w as te,x as ae,y as re,z as le,E as ne,G as ie,H as oe,S as se,J as ce,K as de,U as ue,L as pe,M as he,O as ge,Q as me,X as ve,Y as fe,Z as be,_ as ye,$ as xe,a0 as $e,a1 as ke,a2 as Ce,a3 as Se,a4 as we,a5 as Te,a6 as Me,T as Ae,a7 as Pe,a8 as Le,a9 as Oe,aa as Ee,ab as Ie,ac as Ne,ad as Re,ae as Ve,af as De,ag as ze,ah as Xe,ai as _e,aj as He,b as Be,ak as je,al as qe,am as Ue,an as Ge,ao as Ke,ap as We,aq as Fe,ar as Ye,as as Je,at as Ze,au as Qe,av as et,aw as tt,ax as at,ay as rt,az as lt,aA as nt,aB as it,aC as ot,aD as st,aE as ct,aF as dt,aG as ut,aH as pt,aI as ht,aJ as gt,aK as mt,aL as vt,aM as ft,aN as bt,aO as yt,aP as xt,aQ as $t,aR as kt,aS as Ct,aT as St,aU as wt,aV as Tt,aW as Mt,aX as At,aY as Pt,aZ as Lt,a_ as Ot,a$ as Et,b0 as It,b1 as Nt,b2 as Rt,R as Vt,b3 as Dt,b4 as zt,A as Xt,b5 as _t,b6 as Ht}from"./ui-components-CnvJIMbW.js";import{UserIcon as Bt,DestinationIcon as jt,HomeIcon as qt,VIcon as Ut,TrashIcon as Gt,PlusIcon as Kt,VSquareIcon as Wt,XSquareIcon as Ft,EditIcon as Yt,OdigosLogoTextCentral as Jt,OdigosLogoTextEnterprise as Zt,OdigosLogoTextCommunity as Qt,OdigosLogoTextColoredCentral as ea,OdigosLogoTextColoredEnterprise as ta,OdigosLogoTextColoredCommunity as aa,ArrowLeftIcon as ra,ArrowRightIcon as la,CopyIcon as na,YamlIcon as ia}from"../icons.js";import{i as oa,m as sa,u as ca,n as da,a as ua,C as pa,b as ha,d as ga,e as ma,f as va,g as fa,h as ba,j as ya,k as xa}from"./helpers-BbLwXwCP.js";const $a=/^[a-zA-Z]$/,ka=new Set(["*","+","?"]),Ca=new Set(["^","$"]),Sa={group:"rgba(102, 242, 102, 0.5)","anchor-quantifier":"rgba(102, 191, 255, 0.5)","class-bracket":"rgba(255, 153, 153, 0.5)","class-content":"rgba(178, 1, 1, 0.5)",alternation:"rgba(255, 153, 153, 0.5)",literal:"transparent"},wa=r.div`
2
2
  padding: 8px 16px;
3
3
  border-radius: 6px;
4
4
  border: 1px solid ${({theme:e})=>e.v2.colors.silver[500]};
@@ -1,4 +1,4 @@
1
- import{jsx as e,jsxs as t}from"react/jsx-runtime";import{useMemo as a,useContext as r,createContext as n,useCallback as s,useState as o,useEffect as i,useRef as l}from"react";import{t as c,b7 as d,b8 as u,m,S,b9 as p,ba as E,bb as I,P as T,bc as f,bd as y,be as _,bf as h,bg as g,bh as N,bi as v,bj as A,bk as R,bl as O,bm as C,bn as G,bo as D,bp as b,bq as L,br as w,bs as P,a$ as U,bt as F,bu as k,n as M,bv as H,bw as x,bx as $,by as K,bz as V,bA as B,w as Y,bB as W,h as j,K as q,bC as z,T as Q,bD as J,bE as X,bF as Z,bG as ee,bH as te,bI as ae,bJ as re,bK as ne,bL as se,bM as oe,bN as ie,bO as le,bP as ce,bQ as de,bR as ue,bS as me,bT as Se,bU as pe,bV as Ee,bW as Ie,bX as Te,ag as fe,ac as ye,ae as _e,ad as he,af as ge,ab as Ne,bY as ve,b as Ae}from"./ui-components-Bhz7WgBl.js";import{i as Re,n as Oe,m as Ce,l as Ge,o as De,p as be,v as Le,q as we,u as Pe}from"./helpers-DbT32OSr.js";import{ApolloProvider as Ue,useLazyQuery as Fe,useApolloClient as ke,useQuery as Me}from"@apollo/client/react";import{ErrorLink as He}from"@apollo/client/link/error";import{SetContextLink as xe}from"@apollo/client/link/context";import{getMainDefinition as $e}from"@apollo/client/utilities";import{CombinedGraphQLErrors as Ke,ServerError as Ve}from"@apollo/client/errors";import{HttpLink as Be,ApolloLink as Ye,ApolloClient as We,InMemoryCache as je,gql as qe}from"@apollo/client";const ze=e=>{if(!e)return!1;const t=e.toLowerCase();return t.includes("authentication required")||t.includes("authentication expired")||t.includes("http 401")},Qe=n(null),Je=()=>{const e=r(Qe);if(!e)throw new Error("[ui-kit] useOdigosApi() / useXxxApi() called outside of <OdigosApiProvider>. Make sure the host app mounts the provider at its layout level.");return e},Xe=({apolloConfig:t,operations:r,context:n,children:s})=>{const o=a(()=>(e=>{const t=new Be({uri:e.httpUrl,credentials:e.credentials??"same-origin"}),a=new He(({error:t})=>{Ke.is(t)?t.errors.some(e=>ze(e.message))&&e.onAuthError?.():(Ve.is(t)&&401===t.statusCode||ze(t.message))&&e.onAuthError?.()}),r=new xe(async t=>{const a={...t.headers};if(e.authHeader){const t=await e.authHeader();Object.assign(a,t)}return e.csrfHeader&&Object.assign(a,e.csrfHeader()),{headers:a}}),n=[];e.additionalLinks?.length&&n.push(...e.additionalLinks),n.push(r,a,t);let s=Ye.from(n);e.wsLink&&(s=Ye.split(({query:e})=>{const t=$e(e);return"OperationDefinition"===t.kind&&"subscription"===t.operation},e.wsLink,s));const o=e.defaultFetchPolicies;return new We({link:s,cache:new je({typePolicies:e.cacheTypePolicies}),defaultOptions:{watchQuery:{fetchPolicy:o?.watchQuery??"cache-and-network"},query:{fetchPolicy:o?.query??"cache-first"},mutate:{fetchPolicy:o?.mutate??"network-only"}}})})(t),[t.httpUrl,t.wsLink,t.credentials,t.clientKey]),i=a(()=>({operations:r,context:n,apolloConfig:t}),[r,n,t]);return e(Ue,{client:o,children:e(Qe.Provider,{value:i,children:s})})},Ze=Qe,et=e=>e.map(e=>`${e.id}:${e.odigosVersion}:${e.type}`).join(","),tt=(e,t,a)=>{const r=t.length?t.map(e=>e.id):a??[],n={...e,connectionIds:r};if(!t.length||c(e.version)>0)return n;const s=t[0];return{...n,version:s.odigosVersion||e.version,platformType:s.type??e.platformType}},at=({connections:t,connectionIds:r,children:n})=>{const s=Je(),o=a(()=>({operations:s.operations,context:tt(s.context,t,r),apolloConfig:s.apolloConfig}),[s.operations,s.context,s.apolloConfig,et(t),r?.join(",")]);return e(Ze.Provider,{value:o,children:n})},rt=(e,t)=>{if(e)return"string"==typeof e?e:p(e,t)},nt=e=>{const{addNotification:t}=d(),a=(a,r,n,s,o)=>t({type:a,title:r,message:n,crdType:e,target:rt(s,e),hideFromHistory:o});return{notify:a,notifyError:(e,t,r)=>a(S.Error,e,t,r),notifySuccess:(e,t,r)=>a(S.Success,e,t,r),notifyPending:(e,t)=>a(S.Default,"Pending",e,t,!0),notifyReadonly:()=>{t({type:S.Warning,title:m.READONLY,message:u.READONLY_WARNING,hideFromHistory:!0})}}},st=e=>{e({type:S.Warning,title:m.READONLY,message:u.READONLY_WARNING,hideFromHistory:!0})},ot=e=>({error:e,results:[],allSucceeded:!1,anySucceeded:!1,successCount:0,failureCount:0}),it=(e,t)=>{if(e)return"function"==typeof e?e(t):e},lt=e=>{if(!e)return"Unknown error";if(e instanceof Error)return e.cause instanceof Error?e.cause.message:e.message;if("object"==typeof e){const t=e;return t.cause?.message||t.message||String(e)}return String(e)},ct=(e,t)=>e.client??t,dt=async(e,t,a,r,n)=>{if(!t)return{error:"Query operation not configured"};if(t.canRun&&!t.canRun(r))return{data:void 0};if(t.run)try{return await t.run(ct(t,e),a,r)}catch(e){return{error:lt(e)}}const s=it(t.document,r);if(!s)return{error:"Query operation not supported in this context"};const o=t.transformVariables?t.transformVariables(a,r):a,i=ct(t,e);try{const e=await i.query({query:s,variables:o,fetchPolicy:n??"network-only"});return{data:t.transformResult?t.transformResult(e.data,r):e.data,error:e.error?lt(e.error):void 0}}catch(e){return{error:lt(e)}}},ut=async(e,t,a,r)=>{if(!t)return{error:"Mutation operation not configured"};if(t.canRun&&!t.canRun(r))return{error:"Mutation operation not supported in this context"};if(t.run)try{return await t.run(ct(t,e),a,r)}catch(e){return{error:lt(e)}}const n=it(t.document,r);if(!n)return{error:"Mutation operation not supported in this context"};const s=t.transformVariables?t.transformVariables(a,r):a,o=ct(t,e);try{const e=await o.mutate({mutation:n,variables:s});return{data:t.transformResult?t.transformResult(e.data,r):e.data,error:void 0}}catch(e){return{error:lt(e)}}},mt=async(e,t,a,r,n)=>{if(!t)return ot("Multi fetch operation not configured");if(!a.length)return ot("No proxy ids supplied for multi fetch");const s=ct(t,e);if(t.transformVariablesMulti&&(t.documentMulti||t.document)){const e=t.transformVariablesMulti(a,r,n),o=[];for(const a of e)try{const e=await s.query({query:a.document,variables:a.variables,fetchPolicy:"network-only"});t.transformMultiResult?t.transformMultiResult(e.data,n).forEach(e=>o.push(e)):a.proxyIDs.forEach(t=>{o.push({proxyID:t,success:!e.error,data:e.data,error:e.error?.message})})}catch(e){const t=lt(e);a.proxyIDs.forEach(e=>o.push({proxyID:e,success:!1,error:t}))}const i=o.filter(e=>e.success).length,l=o.length-i,c=Array.from(new Set(o.filter(e=>!!e.error).map(e=>e.error)));return{results:o,allSucceeded:0===l,anySucceeded:i>0,successCount:i,failureCount:l,error:c.length?c.join(", "):void 0}}const o=await Promise.all(a.map(async a=>{const s={...n,proxyID:a},o=await dt(e,t,r,s);return{proxyID:a,success:!o.error,data:o.data,error:o.error}})),i=o.filter(e=>e.success).length,l=o.length-i,c=Array.from(new Set(o.filter(e=>!!e.error).map(e=>e.error)));return{results:o,allSucceeded:0===l,anySucceeded:i>0,successCount:i,failureCount:l,error:c.length?c.join(", "):void 0}},St=qe`
1
+ import{jsx as e,jsxs as t}from"react/jsx-runtime";import{useMemo as a,useContext as r,createContext as n,useCallback as s,useState as o,useEffect as i,useRef as l}from"react";import{t as c,b7 as d,b8 as u,m,S,b9 as p,ba as E,bb as I,P as T,bc as f,bd as y,be as _,bf as h,bg as g,bh as N,bi as v,bj as A,bk as R,bl as O,bm as C,bn as G,bo as D,bp as b,bq as L,br as w,bs as P,a$ as U,bt as F,bu as k,n as M,bv as H,bw as x,bx as $,by as K,bz as V,bA as B,w as Y,bB as W,h as j,K as q,bC as z,T as Q,bD as J,bE as X,bF as Z,bG as ee,bH as te,bI as ae,bJ as re,bK as ne,bL as se,bM as oe,bN as ie,bO as le,bP as ce,bQ as de,bR as ue,bS as me,bT as Se,bU as pe,bV as Ee,bW as Ie,bX as Te,ag as fe,ac as ye,ae as _e,ad as he,af as ge,ab as Ne,bY as ve,b as Ae}from"./ui-components-CnvJIMbW.js";import{i as Re,n as Oe,m as Ce,l as Ge,o as De,p as be,v as Le,q as we,u as Pe}from"./helpers-BbLwXwCP.js";import{ApolloProvider as Ue,useLazyQuery as Fe,useApolloClient as ke,useQuery as Me}from"@apollo/client/react";import{ErrorLink as He}from"@apollo/client/link/error";import{SetContextLink as xe}from"@apollo/client/link/context";import{getMainDefinition as $e}from"@apollo/client/utilities";import{CombinedGraphQLErrors as Ke,ServerError as Ve}from"@apollo/client/errors";import{HttpLink as Be,ApolloLink as Ye,ApolloClient as We,InMemoryCache as je,gql as qe}from"@apollo/client";const ze=e=>{if(!e)return!1;const t=e.toLowerCase();return t.includes("authentication required")||t.includes("authentication expired")||t.includes("http 401")},Qe=n(null),Je=()=>{const e=r(Qe);if(!e)throw new Error("[ui-kit] useOdigosApi() / useXxxApi() called outside of <OdigosApiProvider>. Make sure the host app mounts the provider at its layout level.");return e},Xe=({apolloConfig:t,operations:r,context:n,children:s})=>{const o=a(()=>(e=>{const t=new Be({uri:e.httpUrl,credentials:e.credentials??"same-origin"}),a=new He(({error:t})=>{Ke.is(t)?t.errors.some(e=>ze(e.message))&&e.onAuthError?.():(Ve.is(t)&&401===t.statusCode||ze(t.message))&&e.onAuthError?.()}),r=new xe(async t=>{const a={...t.headers};if(e.authHeader){const t=await e.authHeader();Object.assign(a,t)}return e.csrfHeader&&Object.assign(a,e.csrfHeader()),{headers:a}}),n=[];e.additionalLinks?.length&&n.push(...e.additionalLinks),n.push(r,a,t);let s=Ye.from(n);e.wsLink&&(s=Ye.split(({query:e})=>{const t=$e(e);return"OperationDefinition"===t.kind&&"subscription"===t.operation},e.wsLink,s));const o=e.defaultFetchPolicies;return new We({link:s,cache:new je({typePolicies:e.cacheTypePolicies}),defaultOptions:{watchQuery:{fetchPolicy:o?.watchQuery??"cache-and-network"},query:{fetchPolicy:o?.query??"cache-first"},mutate:{fetchPolicy:o?.mutate??"network-only"}}})})(t),[t.httpUrl,t.wsLink,t.credentials,t.clientKey]),i=a(()=>({operations:r,context:n,apolloConfig:t}),[r,n,t]);return e(Ue,{client:o,children:e(Qe.Provider,{value:i,children:s})})},Ze=Qe,et=e=>e.map(e=>`${e.id}:${e.odigosVersion}:${e.type}`).join(","),tt=(e,t,a)=>{const r=t.length?t.map(e=>e.id):a??[],n={...e,connectionIds:r};if(!t.length||c(e.version)>0)return n;const s=t[0];return{...n,version:s.odigosVersion||e.version,platformType:s.type??e.platformType}},at=({connections:t,connectionIds:r,children:n})=>{const s=Je(),o=a(()=>({operations:s.operations,context:tt(s.context,t,r),apolloConfig:s.apolloConfig}),[s.operations,s.context,s.apolloConfig,et(t),r?.join(",")]);return e(Ze.Provider,{value:o,children:n})},rt=(e,t)=>{if(e)return"string"==typeof e?e:p(e,t)},nt=e=>{const{addNotification:t}=d(),a=(a,r,n,s,o)=>t({type:a,title:r,message:n,crdType:e,target:rt(s,e),hideFromHistory:o});return{notify:a,notifyError:(e,t,r)=>a(S.Error,e,t,r),notifySuccess:(e,t,r)=>a(S.Success,e,t,r),notifyPending:(e,t)=>a(S.Default,"Pending",e,t,!0),notifyReadonly:()=>{t({type:S.Warning,title:m.READONLY,message:u.READONLY_WARNING,hideFromHistory:!0})}}},st=e=>{e({type:S.Warning,title:m.READONLY,message:u.READONLY_WARNING,hideFromHistory:!0})},ot=e=>({error:e,results:[],allSucceeded:!1,anySucceeded:!1,successCount:0,failureCount:0}),it=(e,t)=>{if(e)return"function"==typeof e?e(t):e},lt=e=>{if(!e)return"Unknown error";if(e instanceof Error)return e.cause instanceof Error?e.cause.message:e.message;if("object"==typeof e){const t=e;return t.cause?.message||t.message||String(e)}return String(e)},ct=(e,t)=>e.client??t,dt=async(e,t,a,r,n)=>{if(!t)return{error:"Query operation not configured"};if(t.canRun&&!t.canRun(r))return{data:void 0};if(t.run)try{return await t.run(ct(t,e),a,r)}catch(e){return{error:lt(e)}}const s=it(t.document,r);if(!s)return{error:"Query operation not supported in this context"};const o=t.transformVariables?t.transformVariables(a,r):a,i=ct(t,e);try{const e=await i.query({query:s,variables:o,fetchPolicy:n??"network-only"});return{data:t.transformResult?t.transformResult(e.data,r):e.data,error:e.error?lt(e.error):void 0}}catch(e){return{error:lt(e)}}},ut=async(e,t,a,r)=>{if(!t)return{error:"Mutation operation not configured"};if(t.canRun&&!t.canRun(r))return{error:"Mutation operation not supported in this context"};if(t.run)try{return await t.run(ct(t,e),a,r)}catch(e){return{error:lt(e)}}const n=it(t.document,r);if(!n)return{error:"Mutation operation not supported in this context"};const s=t.transformVariables?t.transformVariables(a,r):a,o=ct(t,e);try{const e=await o.mutate({mutation:n,variables:s});return{data:t.transformResult?t.transformResult(e.data,r):e.data,error:void 0}}catch(e){return{error:lt(e)}}},mt=async(e,t,a,r,n)=>{if(!t)return ot("Multi fetch operation not configured");if(!a.length)return ot("No proxy ids supplied for multi fetch");const s=ct(t,e);if(t.transformVariablesMulti&&(t.documentMulti||t.document)){const e=t.transformVariablesMulti(a,r,n),o=[];for(const a of e)try{const e=await s.query({query:a.document,variables:a.variables,fetchPolicy:"network-only"});t.transformMultiResult?t.transformMultiResult(e.data,n).forEach(e=>o.push(e)):a.proxyIDs.forEach(t=>{o.push({proxyID:t,success:!e.error,data:e.data,error:e.error?.message})})}catch(e){const t=lt(e);a.proxyIDs.forEach(e=>o.push({proxyID:e,success:!1,error:t}))}const i=o.filter(e=>e.success).length,l=o.length-i,c=Array.from(new Set(o.filter(e=>!!e.error).map(e=>e.error)));return{results:o,allSucceeded:0===l,anySucceeded:i>0,successCount:i,failureCount:l,error:c.length?c.join(", "):void 0}}const o=await Promise.all(a.map(async a=>{const s={...n,proxyID:a},o=await dt(e,t,r,s);return{proxyID:a,success:!o.error,data:o.data,error:o.error}})),i=o.filter(e=>e.success).length,l=o.length-i,c=Array.from(new Set(o.filter(e=>!!e.error).map(e=>e.error)));return{results:o,allSucceeded:0===l,anySucceeded:i>0,successCount:i,failureCount:l,error:c.length?c.join(", "):void 0}},St=qe`
2
2
  query OdigosApiNoop {
3
3
  __typename
4
4
  }