@odigos/ui-kit 0.0.17 → 0.0.19

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 (37) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/lib/components/index.d.ts +1 -0
  3. package/lib/components/scroll-x/index.d.ts +10 -0
  4. package/lib/components.js +13 -44
  5. package/lib/constants.js +5 -9
  6. package/lib/containers/data-flow/nodes/scroll-node.d.ts +3 -14
  7. package/lib/containers.js +42 -94
  8. package/lib/functions.js +9 -15
  9. package/lib/hooks.js +10 -10
  10. package/lib/icons.js +3 -4
  11. package/lib/{index-Hz7AAE0t.js → index-7-KCQK-x.js} +1 -1
  12. package/lib/{index-G4WmxXds.js → index-BFRz3l_w.js} +21 -4
  13. package/lib/index-BazfJyRh.js +687 -0
  14. package/lib/{index-C3nz3TIx.js → index-CD_BQJCD.js} +5 -3
  15. package/lib/{index-BiNX-Cge.js → index-CvuVOtkr.js} +154 -119
  16. package/lib/{index-CIXQeSHu.js → index-DGel4E-Z.js} +8 -1
  17. package/lib/{index-BQW5EUgp.js → index-DSzybApb.js} +6 -4
  18. package/lib/{index-BxQTUOME.js → index-WSle42rz.js} +5 -3
  19. package/lib/store.js +3 -6
  20. package/lib/theme.js +3 -86
  21. package/lib/types.js +215 -6
  22. package/lib/useSourceSelectionFormData-_2PggiXn.js +563 -0
  23. package/lib/{useTimeAgo-weEj7br6.js → useTransition-bXMKBfST.js} +113 -544
  24. package/package.json +1 -2
  25. package/lib/index-B72aw6tI.js +0 -23
  26. package/lib/index-BQs4sULy.js +0 -32
  27. package/lib/index-BVVVevuY.js +0 -100
  28. package/lib/index-BWqrekK4.js +0 -11
  29. package/lib/index-C1PCuZgw.js +0 -18
  30. package/lib/index-CIgHU72d.js +0 -52
  31. package/lib/index-DbfrGXPH.js +0 -8
  32. package/lib/index-RBS1MqCQ.js +0 -37
  33. package/lib/react-CjImwkhV.js +0 -44
  34. package/lib/useDarkMode-DxhIuVNi.js +0 -201
  35. package/lib/useSelectedStore-93bIo1kE.js +0 -97
  36. package/lib/useSetupStore-CoYx1UQw.js +0 -211
  37. package/lib/useTransition-D0wUpPGk.js +0 -128
@@ -1,14 +1,15 @@
1
1
  import React, { useState, useRef, forwardRef, useEffect, createElement, useCallback, useMemo, Fragment } from 'react';
2
+ import { StatusType, OtherStatus, SortDirection, ProgrammingLanguages, EntityTypes } from './types.js';
3
+ import './index-BazfJyRh.js';
2
4
  import styled, { css } from 'styled-components';
3
- import { S as StatusType, O as OtherStatus, c as SortDirection, a as ProgrammingLanguages, E as EntityTypes } from './index-BVVVevuY.js';
4
5
  import Theme from './theme.js';
5
- import { b as getStatusIcon, r as removeEmptyValuesFromObject, s as safeJsonStringify, f as flattenObjectKeys, m as mapConditions, c as capitalizeFirstLetter, g as getMonitorIcon, p as parseJsonStringToPrettyString, a as getProgrammingLanguageIcon, d as splitCamelString } from './index-BxQTUOME.js';
6
- import { M as MinusIcon, f as CheckIcon, L as ListIcon, C as CodeIcon, E as ExtendArrowIcon, c as SortArrowsIcon, a as CopyIcon, b as NotebookIcon, X as XIcon, d as EyeClosedIcon, e as EyeOpenIcon, N as NoDataIcon, g as CrossIcon, S as SearchIcon, T as TrashIcon, P as PlusIcon, A as ArrowIcon } from './index-BJxaoI0G.js';
6
+ import { b as getStatusIcon, r as removeEmptyValuesFromObject, s as safeJsonStringify, f as flattenObjectKeys, m as mapConditions, c as capitalizeFirstLetter, g as getMonitorIcon, p as parseJsonStringToPrettyString, a as getProgrammingLanguageIcon, d as splitCamelString } from './index-WSle42rz.js';
7
7
  import { s as safeJsonParse, i as isEmpty } from './index-BZS1ijMm.js';
8
- import { M as MONITORS_OPTIONS } from './index-C1PCuZgw.js';
9
- import { u as useContainerSize, a as useCopy, d as useTransition, b as useKeyDown, c as useOnClickOutside } from './useTransition-D0wUpPGk.js';
8
+ import { M as MinusIcon, f as CheckIcon, L as ListIcon, C as CodeIcon, E as ExtendArrowIcon, c as SortArrowsIcon, a as CopyIcon, b as NotebookIcon, X as XIcon, d as EyeClosedIcon, e as EyeOpenIcon, N as NoDataIcon, g as CrossIcon, S as SearchIcon, T as TrashIcon, P as PlusIcon, A as ArrowIcon } from './index-BJxaoI0G.js';
9
+ import { M as MONITORS_OPTIONS } from './index-BFRz3l_w.js';
10
+ import { u as useContainerSize, a as useCopy, g as useTransition, d as useKeyDown, e as useOnClickOutside } from './useTransition-bXMKBfST.js';
10
11
  import ReactDOM from 'react-dom';
11
- import { I as ImageErrorIcon } from './index-BWqrekK4.js';
12
+ import { I as ImageErrorIcon } from './index-DGel4E-Z.js';
12
13
  import require$$0 from 'babel-runtime/helpers/extends';
13
14
  import require$$1$1 from 'babel-runtime/core-js/object/get-prototype-of';
14
15
  import require$$2 from 'babel-runtime/helpers/classCallCheck';
@@ -228,7 +229,7 @@ const Badge = ({ label, filled, status, withIcon, onClick }) => {
228
229
  label));
229
230
  };
230
231
 
231
- const Container$t = styled.div `
232
+ const Container$u = styled.div `
232
233
  height: fit-content;
233
234
  border: 2px solid transparent;
234
235
  padding: 2px;
@@ -328,7 +329,7 @@ const StyledButton$2 = styled.button `
328
329
  `;
329
330
  const Button$4 = ({ children, variant = 'primary', onClick, ...props }) => {
330
331
  const ref = useRef(null);
331
- return (React.createElement(Container$t, { "$variant": variant },
332
+ return (React.createElement(Container$u, { "$variant": variant },
332
333
  React.createElement(StyledButton$2, { ref: ref, "$variant": variant, onClick: (e) => {
333
334
  if (onClick)
334
335
  onClick(e);
@@ -465,7 +466,7 @@ const FieldError = ({ children }) => {
465
466
  React.createElement(ErrorMessage, null, children)));
466
467
  };
467
468
 
468
- const Container$s = styled.div `
469
+ const Container$t = styled.div `
469
470
  display: flex;
470
471
  align-items: center;
471
472
  gap: 8px;
@@ -502,7 +503,7 @@ const Checkbox = ({ title, titleColor, tooltip, value = false, partiallyChecked
502
503
  setIsChecked((prev) => (partiallyChecked ? true : !prev));
503
504
  };
504
505
  return (React.createElement(FlexColumn, null,
505
- React.createElement(Container$s, { "data-id": `checkbox${!!title ? `-${title}` : ''}`, "$disabled": disabled, onClick: handleToggle, style: style },
506
+ React.createElement(Container$t, { "data-id": `checkbox${!!title ? `-${title}` : ''}`, "$disabled": disabled, onClick: handleToggle, style: style },
506
507
  React.createElement(CheckboxWrapper, { "$isChecked": isChecked, "$isPartiallyChecked": partiallyChecked, "$disabled": disabled }, partiallyChecked ? React.createElement(MinusIcon, { fill: theme.text.white }) : isChecked ? React.createElement(CheckIcon, { fill: theme.text.white }) : null),
507
508
  title && (React.createElement(Tooltip, { text: tooltip, withIcon: true },
508
509
  React.createElement(Text, { size: 12, color: titleColor || theme.text.grey, style: { maxWidth: '90%' } }, title)))),
@@ -3634,7 +3635,7 @@ prismjs/prism.js:
3634
3635
  *)
3635
3636
  */
3636
3637
 
3637
- const Container$r = styled(FlexRow) `
3638
+ const Container$s = styled(FlexRow) `
3638
3639
  gap: 0;
3639
3640
  `;
3640
3641
  const Button$3 = styled.button `
@@ -3651,7 +3652,7 @@ const Button$3 = styled.button `
3651
3652
  }
3652
3653
  `;
3653
3654
  const ToggleCodeComponent = ({ isPrettyMode, setIsPrettyMode }) => {
3654
- return (React.createElement(Container$r, null,
3655
+ return (React.createElement(Container$s, null,
3655
3656
  React.createElement(Button$3, { "$position": 'left', "$selected": isPrettyMode, onClick: () => setIsPrettyMode(true) },
3656
3657
  React.createElement(ListIcon, null)),
3657
3658
  React.createElement(Button$3, { "$position": 'right', "$selected": !isPrettyMode, onClick: () => setIsPrettyMode(false) },
@@ -3675,7 +3676,7 @@ const TableData = styled.td `
3675
3676
  vertical-align: top;
3676
3677
  padding: 4px 6px;
3677
3678
  `;
3678
- const Title$c = styled(Text) `
3679
+ const Title$b = styled(Text) `
3679
3680
  white-space: nowrap;
3680
3681
  `;
3681
3682
  const CodeLineToken = styled.span `
@@ -3764,7 +3765,7 @@ const PrettyJsonCode = ({ darkMode, str }) => {
3764
3765
  renderEmptyRows(2, i),
3765
3766
  React.createElement(TableRow$1, { ...lineProps },
3766
3767
  React.createElement(TableData, null,
3767
- React.createElement(Title$c, null, formattedLine[0].content)),
3768
+ React.createElement(Title$b, null, formattedLine[0].content)),
3768
3769
  React.createElement(TableData, null))));
3769
3770
  }
3770
3771
  else if (formattedLine.length === 2) {
@@ -3952,18 +3953,18 @@ const FadeLoader = ({ loading = true, color: clr, scale = 1, speedMultiplier = 1
3952
3953
  } })));
3953
3954
  };
3954
3955
 
3955
- const Container$q = styled.div `
3956
+ const Container$r = styled.div `
3956
3957
  margin: ${({ $align }) => ($align === 'right' ? 'auto 6px auto auto' : $align === 'left' ? 'auto auto auto 6px' : 'auto')};
3957
3958
  display: flex;
3958
3959
  align-items: center;
3959
3960
  justify-content: center;
3960
3961
  `;
3961
3962
  const ExtendArrow = ({ extend, size = 14, align = 'center' }) => {
3962
- return (React.createElement(Container$q, { "$align": align },
3963
+ return (React.createElement(Container$r, { "$align": align },
3963
3964
  React.createElement(ExtendArrowIcon, { size: size, rotate: extend ? 180 : 0 })));
3964
3965
  };
3965
3966
 
3966
- const Container$p = styled.div `
3967
+ const Container$q = styled.div `
3967
3968
  border-radius: 24px;
3968
3969
  background-color: ${({ theme, $status }) => $status === StatusType.Error
3969
3970
  ? theme.text.error + Theme.opacity.hex['010']
@@ -3980,7 +3981,7 @@ const Container$p = styled.div `
3980
3981
  cursor: pointer;
3981
3982
  transition: background 0.3s;
3982
3983
  `;
3983
- const Header$1 = styled.div `
3984
+ const Header$2 = styled.div `
3984
3985
  display: flex;
3985
3986
  align-items: center;
3986
3987
  gap: 12px;
@@ -4023,8 +4024,8 @@ const ConditionDetails = ({ conditions: c, headerLabelError = 'Something Failed'
4023
4024
  const headerSubText = `(${hasErrors ? errors.length : hasWarnings ? warnings.length : conditions.length}/${conditions.length})`;
4024
4025
  const headerSubTextColor = hasErrors ? theme.text.error_secondary : hasWarnings ? theme.text.warning_secondary : theme.text.info_secondary;
4025
4026
  const toggleExtend = useCallback(() => setExtend((prev) => !prev), []);
4026
- return (React.createElement(Container$p, { onClick: toggleExtend, "$status": overallStatus },
4027
- React.createElement(Header$1, null,
4027
+ return (React.createElement(Container$q, { onClick: toggleExtend, "$status": overallStatus },
4028
+ React.createElement(Header$2, null,
4028
4029
  loading ? React.createElement(FadeLoader, null) : React.createElement(HeaderIcon, null),
4029
4030
  React.createElement(Text, { color: headerTextColor, size: 14 }, headerText),
4030
4031
  React.createElement(Text, { color: headerSubTextColor, size: 12, family: 'secondary' }, headerSubText),
@@ -4059,7 +4060,7 @@ const Divider = ({ orientation = 'horizontal', type, thickness = 1, length, marg
4059
4060
  return React.createElement(StyledDivider, { "$orientation": orientation, "$type": type, "$thickness": thickness, "$length": length, "$margin": margin });
4060
4061
  };
4061
4062
 
4062
- const Container$o = styled.div `
4063
+ const Container$p = styled.div `
4063
4064
  display: flex;
4064
4065
  align-items: center;
4065
4066
  gap: ${({ $size }) => $size / 3}px;
@@ -4081,7 +4082,7 @@ const Status = ({ title, subtitle, size = 12, family = 'secondary', status = Sta
4081
4082
  const theme = Theme.useTheme();
4082
4083
  const statusType = status === OtherStatus.Loading ? StatusType.Info : status;
4083
4084
  const StatusIcon = status === OtherStatus.Loading ? () => React.createElement(FadeLoader, { scale: 0.8 }) : () => getStatusIcon(statusType, theme)({ size: size + 2 });
4084
- return (React.createElement(Container$o, { "$size": size, "$status": statusType, "$withIcon": withIcon, "$withBorder": withBorder, "$withBackground": withBackground },
4085
+ return (React.createElement(Container$p, { "$size": size, "$status": statusType, "$withIcon": withIcon, "$withBorder": withBorder, "$withBackground": withBackground },
4085
4086
  withIcon && (React.createElement(IconWrapper$4, null,
4086
4087
  React.createElement(StatusIcon, null))),
4087
4088
  (!!title || !!subtitle) && (React.createElement(TextWrapper$1, null,
@@ -4090,6 +4091,36 @@ const Status = ({ title, subtitle, size = 12, family = 'secondary', status = Sta
4090
4091
  !!subtitle && (React.createElement(Text, { size: size - 2, family: family, color: theme.text[`${statusType}_secondary`] }, subtitle))))));
4091
4092
  };
4092
4093
 
4094
+ const LimitedText = styled(Text) `
4095
+ max-width: ${({ $maxWidth }) => `${$maxWidth}px` || 'unset'};
4096
+ white-space: nowrap;
4097
+ overflow-x: auto;
4098
+
4099
+ &::after {
4100
+ // This is to prevent the "browser default tooltip" from appearing when the title is too long
4101
+ content: '';
4102
+ display: block;
4103
+ }
4104
+ `;
4105
+ const ELIPSIS_WIDTH = 12;
4106
+ const ScrollX = ({ maxWidth, text, textSize, textColor }) => {
4107
+ const [isOverflowed, setIsOverflowed] = useState(false);
4108
+ const ref = useRef(null);
4109
+ // Check if text is overflowed from maximum width
4110
+ useEffect(() => {
4111
+ if (ref.current) {
4112
+ const { clientWidth } = ref.current;
4113
+ const marginUp = (maxWidth - ELIPSIS_WIDTH) * 1.05; // add 5%
4114
+ const marginDown = (maxWidth - ELIPSIS_WIDTH) * 0.95; // subtract 5%
4115
+ setIsOverflowed(clientWidth < marginUp && clientWidth > marginDown);
4116
+ }
4117
+ }, [maxWidth, text]);
4118
+ return (React.createElement(FlexRow, { "$gap": 0 },
4119
+ text && (React.createElement(Tooltip, { text: isOverflowed ? text : undefined },
4120
+ React.createElement(LimitedText, { ref: ref, "$maxWidth": maxWidth - ELIPSIS_WIDTH, size: textSize, color: textColor }, text))),
4121
+ isOverflowed && (React.createElement(LimitedText, { "$maxWidth": ELIPSIS_WIDTH, size: textSize, color: textColor }, "..."))));
4122
+ };
4123
+
4093
4124
  const ImageControlled = ({ src = '', alt = '', size = 16 }) => {
4094
4125
  const [hasError, setHasError] = useState(false);
4095
4126
  if (!!src && !hasError) {
@@ -4098,7 +4129,7 @@ const ImageControlled = ({ src = '', alt = '', size = 16 }) => {
4098
4129
  return React.createElement(ImageErrorIcon, { size: size });
4099
4130
  };
4100
4131
 
4101
- const Container$n = styled.div `
4132
+ const Container$o = styled.div `
4102
4133
  display: flex;
4103
4134
  align-items: center;
4104
4135
  justify-content: center;
@@ -4111,10 +4142,10 @@ const Container$n = styled.div `
4111
4142
  }};
4112
4143
  `;
4113
4144
  const IconWrapped = ({ icon: Icon, src = '', alt = '', status, size = 36 }) => {
4114
- return (React.createElement(Container$n, { "$status": status, "$size": size }, src ? React.createElement(ImageControlled, { src: src, alt: alt, size: size - 16 }) : !!Icon ? React.createElement(Icon, { size: size - 16 }) : React.createElement(ImageErrorIcon, { size: size - 16 })));
4145
+ return (React.createElement(Container$o, { "$status": status, "$size": size }, src ? React.createElement(ImageControlled, { src: src, alt: alt, size: size - 16 }) : !!Icon ? React.createElement(Icon, { size: size - 16 }) : React.createElement(ImageErrorIcon, { size: size - 16 })));
4115
4146
  };
4116
4147
 
4117
- const Container$m = styled.div `
4148
+ const Container$n = styled.div `
4118
4149
  position: relative;
4119
4150
  display: flex;
4120
4151
  flex-wrap: wrap;
@@ -4164,7 +4195,7 @@ const IconGroup = ({ icons = [], iconSrcs = [], status, size = 36, id }) => {
4164
4195
  }
4165
4196
  return imgSize * 1.4;
4166
4197
  };
4167
- return (React.createElement(Container$m, { "$status": status, "$size": size }, icons.map((Icon, idx) => {
4198
+ return (React.createElement(Container$n, { "$status": status, "$size": size }, icons.map((Icon, idx) => {
4168
4199
  if (idx > 2)
4169
4200
  return null;
4170
4201
  return (React.createElement(IconWrapper$3, { key: `icon-${id}-${idx}`, "$size": imgSize * 1.5, "$top": getTopPosition(idx), "$left": getLeftPosition(idx), "$zIndex": idx + 1 }, idx === 2 && icons.length > 3 ? (React.createElement(Text, { family: 'secondary', color: theme.text.dark_grey, size: imgSize * 0.8 },
@@ -4213,10 +4244,29 @@ const IconButton = ({ children, onClick, tooltip, size = 36, withPing, pingColor
4213
4244
  children)));
4214
4245
  };
4215
4246
 
4247
+ const defaultMonitors = MONITORS_OPTIONS.map(({ id }) => id);
4248
+ const MonitorsIcons = ({ monitors = defaultMonitors, withTooltips, withLabels, size = 12, color: clr }) => {
4249
+ const theme = Theme.useTheme();
4250
+ const color = clr || theme.text.grey;
4251
+ return (React.createElement(FlexRow, { "$gap": withLabels ? size : size / 2 }, monitors
4252
+ .filter((str) => !!str)
4253
+ .map((str) => {
4254
+ const signal = str.toLowerCase();
4255
+ const displayName = capitalizeFirstLetter(signal);
4256
+ const Icon = getMonitorIcon(signal);
4257
+ if (!Icon)
4258
+ return null;
4259
+ return (React.createElement(Tooltip, { key: signal, text: withTooltips ? displayName : '' },
4260
+ React.createElement(FlexRow, { "$gap": size / 3 },
4261
+ React.createElement(Icon, { size: withLabels ? size + 2 : size, fill: color }),
4262
+ withLabels && (React.createElement(Text, { size: size, color: color }, displayName)))));
4263
+ })));
4264
+ };
4265
+
4216
4266
  const ControlledVisibility = styled.div `
4217
4267
  visibility: hidden;
4218
4268
  `;
4219
- const Container$l = styled.div `
4269
+ const Container$m = styled.div `
4220
4270
  display: flex;
4221
4271
  flex-direction: column;
4222
4272
  align-self: stretch;
@@ -4244,28 +4294,6 @@ const Container$l = styled.div `
4244
4294
  }
4245
4295
  `}
4246
4296
  `;
4247
- const Title$b = styled(Text) `
4248
- max-width: ${({ $maxWidth }) => $maxWidth}px;
4249
- overflow: hidden;
4250
- white-space: nowrap;
4251
- text-overflow: ellipsis;
4252
-
4253
- font-size: 14px;
4254
- &::after {
4255
- // This is to prevent the browser "default tooltip" from appearing when the title is too long
4256
- content: '';
4257
- display: block;
4258
- }
4259
- `;
4260
- const SubTitle$2 = styled(Text) `
4261
- max-width: ${({ $maxWidth }) => $maxWidth}px;
4262
- overflow: hidden;
4263
- white-space: nowrap;
4264
- text-overflow: ellipsis;
4265
-
4266
- color: ${({ theme }) => theme.text.grey};
4267
- font-size: 10px;
4268
- `;
4269
4297
  const ActionsWrapper = styled.div `
4270
4298
  display: flex;
4271
4299
  align-items: center;
@@ -4275,47 +4303,40 @@ const ActionsWrapper = styled.div `
4275
4303
  const HoverText = styled(Text) `
4276
4304
  margin-right: 16px;
4277
4305
  `;
4306
+ const SubText = styled(Text) `
4307
+ font-size: 10px;
4308
+ color: ${({ theme }) => theme.text.grey};
4309
+ `;
4278
4310
  const DataTab = ({ title, subTitle, hoverText, onClick, renderActions, iconProps: { icon, icons, iconSrc, iconSrcs } = {}, visualProps: { status, faded, bgColor, bgColorHover, monitors, monitorsWithLabels } = {}, checkboxProps: { withCheckbox, isCheckboxDisabled, isChecked, onCheckboxChange } = {}, extendableProps: { withExtend, isExtended, renderExtended } = {}, ...props }) => {
4311
+ const theme = Theme.useTheme();
4279
4312
  const [extend, setExtend] = useState(isExtended || false);
4280
- const [maxWidth, setMaxWidth] = useState(0);
4281
- const [isTitleOverflowed, setIsTitleOverflowed] = useState(false);
4282
- const [isSubTitleOverflowed, setSubIsTitleOverflowed] = useState(false);
4313
+ const [textMaxWidth, setTextMaxWidth] = useState(0);
4283
4314
  const containerRef = useRef(null);
4284
4315
  const actionsRef = useRef(null);
4285
- const titleRef = useRef(null);
4286
- const subTitleRef = useRef(null);
4316
+ const monitorsRef = useRef(null);
4317
+ // Dynamically define maximim width for title and subtitle
4287
4318
  useEffect(() => {
4288
- if (containerRef.current && actionsRef.current) {
4319
+ if (containerRef.current) {
4289
4320
  const containerWidth = containerRef.current.clientWidth;
4290
- const actionsWidth = actionsRef.current.clientWidth;
4291
- // 85 is the sum of the container-padding, icon width, and flex-row-gap.
4292
- // we round it to 120, to consider cases with actions.
4293
- const widthOfInnerContents = 120;
4294
- setMaxWidth(containerWidth - actionsWidth - widthOfInnerContents);
4321
+ const actionsWidth = actionsRef.current?.clientWidth || 0;
4322
+ // 85 is the sum of the container-padding, icon-width, and flex-row-gap.
4323
+ // 125 is the sum of the above, plus checkboxes.
4324
+ const widthOfNonTextContents = (withCheckbox ? 125 : 85) + actionsWidth;
4325
+ setTextMaxWidth(containerWidth - widthOfNonTextContents);
4295
4326
  }
4296
- }, []);
4297
- useEffect(() => {
4298
- const marginUp = maxWidth * 1.05; // add 5%
4299
- const marginDown = maxWidth * 0.95; // subtract 5%
4300
- if (titleRef.current) {
4301
- const { clientWidth } = titleRef.current;
4302
- setIsTitleOverflowed(clientWidth < marginUp && clientWidth > marginDown);
4303
- }
4304
- if (subTitleRef.current) {
4305
- const { clientWidth } = subTitleRef.current;
4306
- setSubIsTitleOverflowed(clientWidth < marginUp && clientWidth > marginDown);
4307
- }
4308
- }, [title, subTitle, maxWidth]);
4309
- return (React.createElement(Container$l, { ref: containerRef, "$status": status, "$faded": faded, "$bgColor": bgColor, "$bgColorHover": bgColorHover, "$withClick": !!onClick, onClick: onClick, ...props },
4327
+ }, [withCheckbox]);
4328
+ return (React.createElement(Container$m, { ref: containerRef, "$status": status, "$faded": faded, "$bgColor": bgColor, "$bgColorHover": bgColorHover, "$withClick": !!onClick, onClick: onClick, ...props },
4310
4329
  React.createElement(FlexRow, { "$gap": 8 },
4311
4330
  React.createElement(FlexRow, { "$gap": 16 },
4312
4331
  withCheckbox && React.createElement(Checkbox, { value: isChecked, onChange: onCheckboxChange, disabled: isCheckboxDisabled }),
4313
4332
  !!icons?.length || !!iconSrcs?.length ? (React.createElement(IconGroup, { icons: icons, iconSrcs: iconSrcs, status: status, id: `${title}-${subTitle}` })) : !!icon || !!iconSrc ? (React.createElement(IconWrapped, { icon: icon, src: iconSrc, status: status })) : null),
4314
4333
  React.createElement(FlexColumn, { "$gap": 4 },
4315
- React.createElement(Tooltip, { text: isTitleOverflowed ? title : undefined, withIcon: false },
4316
- React.createElement(Title$b, { ref: titleRef, "$maxWidth": maxWidth }, title)),
4317
- subTitle && (React.createElement(Tooltip, { text: isSubTitleOverflowed ? subTitle : undefined, withIcon: false },
4318
- React.createElement(SubTitle$2, { ref: subTitleRef, "$maxWidth": maxWidth }, subTitle)))),
4334
+ subTitle && React.createElement(ScrollX, { maxWidth: textMaxWidth, text: title, textSize: 14 }),
4335
+ React.createElement(FlexRow, { "$gap": 4 },
4336
+ subTitle && React.createElement(ScrollX, { maxWidth: textMaxWidth - (monitorsRef.current?.clientWidth || 0), text: subTitle, textSize: 10, textColor: theme.text.grey }),
4337
+ monitors && monitors.length > 0 && (React.createElement(FlexRow, { "$gap": 4, ref: monitorsRef },
4338
+ subTitle && React.createElement(SubText, null, "\u2022"),
4339
+ React.createElement(MonitorsIcons, { monitors: monitors, withLabels: monitorsWithLabels, size: 10 }))))),
4319
4340
  React.createElement(ActionsWrapper, { ref: actionsRef },
4320
4341
  !!hoverText && (React.createElement(ControlledVisibility, null,
4321
4342
  React.createElement(HoverText, { size: 14, family: 'secondary' }, hoverText))),
@@ -4329,7 +4350,7 @@ const DataTab = ({ title, subTitle, hoverText, onClick, renderActions, iconProps
4329
4350
  renderExtended()))));
4330
4351
  };
4331
4352
 
4332
- const Container$k = styled(FlexRow) `
4353
+ const Container$l = styled(FlexRow) `
4333
4354
  width: 100%;
4334
4355
  justify-content: space-between;
4335
4356
  `;
@@ -4352,7 +4373,7 @@ const ValueText = styled(Text) `
4352
4373
  text-align: right;
4353
4374
  `;
4354
4375
  const DescribeRow = ({ title, subTitle, tooltip, value }) => {
4355
- return (React.createElement(Container$k, null,
4376
+ return (React.createElement(Container$l, null,
4356
4377
  React.createElement(FlexColumn, { "$gap": 4 },
4357
4378
  React.createElement(Tooltip, { text: tooltip || '' },
4358
4379
  title && React.createElement(Title$a, null, title),
@@ -4360,25 +4381,6 @@ const DescribeRow = ({ title, subTitle, tooltip, value }) => {
4360
4381
  React.createElement(ValueWrapper, null, !!value?.status ? (React.createElement(Status, { status: value.status === 'transitioning' ? OtherStatus.Loading : value.status, title: value.text || value.status, withBorder: true, withIcon: true })) : (React.createElement(ValueText, null, value?.text || '-')))));
4361
4382
  };
4362
4383
 
4363
- const defaultMonitors = MONITORS_OPTIONS.map(({ id }) => id);
4364
- const MonitorsIcons = ({ monitors = defaultMonitors, withTooltips, withLabels, size = 12, color: clr }) => {
4365
- const theme = Theme.useTheme();
4366
- const color = clr || theme.text.grey;
4367
- return (React.createElement(FlexRow, { "$gap": withLabels ? size : size / 2 }, monitors
4368
- .filter((str) => !!str)
4369
- .map((str) => {
4370
- const signal = str.toLowerCase();
4371
- const displayName = capitalizeFirstLetter(signal);
4372
- const Icon = getMonitorIcon(signal);
4373
- if (!Icon)
4374
- return null;
4375
- return (React.createElement(Tooltip, { key: signal, text: withTooltips ? displayName : '' },
4376
- React.createElement(FlexRow, { "$gap": size / 3 },
4377
- React.createElement(Icon, { size: withLabels ? size + 2 : size, fill: color }),
4378
- withLabels && (React.createElement(Text, { size: size, color: color }, displayName)))));
4379
- })));
4380
- };
4381
-
4382
4384
  const Tr = styled.tr `
4383
4385
  cursor: ${({ $withHover }) => ($withHover ? 'pointer' : 'default')};
4384
4386
  opacity: ${({ $faded }) => ($faded ? 0.5 : 1)};
@@ -4396,8 +4398,11 @@ const RowText = styled(Text) `
4396
4398
  font-size: 14px;
4397
4399
  color: ${({ $color, theme }) => $color ?? theme.text.secondary};
4398
4400
  line-height: 16px;
4399
- text-wrap: wrap;
4401
+
4400
4402
  overflow: hidden;
4403
+ overflow-wrap: break-word;
4404
+ white-space: wrap;
4405
+ text-wrap: wrap;
4401
4406
  text-overflow: ellipsis;
4402
4407
  display: -webkit-box;
4403
4408
  -webkit-line-clamp: 2;
@@ -4438,7 +4443,7 @@ const TableRow = ({ index, columns, cells, onClick, status, faded }) => {
4438
4443
  })));
4439
4444
  };
4440
4445
 
4441
- const Container$j = styled.div `
4446
+ const Container$k = styled.div `
4442
4447
  width: 100%;
4443
4448
  `;
4444
4449
  const Table = styled.table `
@@ -4512,7 +4517,7 @@ const InteractiveTable = ({ columns, rows }) => {
4512
4517
  })
4513
4518
  : rows).map(({ status, faded, cells, onClick }, i) => React.createElement(TableRow, { key: `row-${i}`, index: i, columns: columns, cells: cells, onClick: onClick, status: status, faded: faded }));
4514
4519
  }, [columns, rows, sortBy, sortDirection]);
4515
- return (React.createElement(Container$j, null,
4520
+ return (React.createElement(Container$k, null,
4516
4521
  React.createElement(Table, null,
4517
4522
  React.createElement(TableHead, null,
4518
4523
  React.createElement("tr", null, columns.map(({ key, title, sortable }) => (React.createElement(TableTitle, { key: `column-${key}` }, sortable ? (React.createElement(SortClickable, { onClick: () => onSort(key) },
@@ -4699,7 +4704,7 @@ const CardContainer = styled.div `
4699
4704
  background-color: ${({ theme, $hovered }) => ($hovered ? theme.colors.secondary + Theme.opacity.hex['010'] : 'transparent')};
4700
4705
  transition: background-color 0.3s;
4701
4706
  `;
4702
- const Header = styled.div `
4707
+ const Header$1 = styled.div `
4703
4708
  width: 100%;
4704
4709
  display: flex;
4705
4710
  flex-direction: column;
@@ -4725,7 +4730,7 @@ const DataCard = ({ title = 'Details', titleBadge, description, action: Action,
4725
4730
  const [extend, setExtend] = useState(false);
4726
4731
  const [hovered, setHovered] = useState(false);
4727
4732
  return (React.createElement(CardContainer, { "$hovered": hovered },
4728
- !!title || !!description || !!Action ? (React.createElement(Header, { "$clickable": withExtend || false, onClick: () => withExtend && setExtend((prev) => !prev), onMouseEnter: () => withExtend && setHovered(true), onMouseLeave: () => withExtend && setHovered(false) },
4733
+ !!title || !!description || !!Action ? (React.createElement(Header$1, { "$clickable": withExtend || false, onClick: () => withExtend && setExtend((prev) => !prev), onMouseEnter: () => withExtend && setHovered(true), onMouseLeave: () => withExtend && setHovered(false) },
4729
4734
  (!!title || !!Action) && (React.createElement(Title$8, null,
4730
4735
  title,
4731
4736
  titleBadge !== undefined && React.createElement(Badge, { label: titleBadge }),
@@ -4769,7 +4774,7 @@ const DocsButton = ({ endpoint = '/', variant = 'secondary' }) => {
4769
4774
  "Docs"));
4770
4775
  };
4771
4776
 
4772
- const Container$i = styled.section `
4777
+ const Container$j = styled.section `
4773
4778
  padding: 0px 32px;
4774
4779
  border-bottom: 1px solid ${({ theme }) => theme.colors.border};
4775
4780
  `;
@@ -4818,7 +4823,7 @@ const DrawerHeader = ({ onClose, icons, iconSrcs, title, titleTooltip, replaceTi
4818
4823
  }
4819
4824
  return null;
4820
4825
  };
4821
- return (React.createElement(Container$i, null,
4826
+ return (React.createElement(Container$j, null,
4822
4827
  React.createElement(TopRow, null,
4823
4828
  React.createElement(SectionItemsWrapper, null,
4824
4829
  icons?.length || iconSrcs?.length ? React.createElement(IconGroup, { icons: icons, iconSrcs: iconSrcs, id: `drawer-header-${title}` }) : null,
@@ -4832,7 +4837,7 @@ const DrawerHeader = ({ onClose, icons, iconSrcs, title, titleTooltip, replaceTi
4832
4837
  Icon && React.createElement(Icon, null))))))));
4833
4838
  };
4834
4839
 
4835
- const Container$h = styled.div `
4840
+ const Container$i = styled.div `
4836
4841
  display: flex;
4837
4842
  justify-content: space-between;
4838
4843
  gap: 8px;
@@ -4841,10 +4846,10 @@ const Container$h = styled.div `
4841
4846
  background-color: ${({ theme }) => theme.colors.translucent_bg};
4842
4847
  transform: translateY(100%);
4843
4848
  `;
4844
- const AlignLeft = styled(FlexRow) `
4849
+ const AlignLeft$1 = styled(FlexRow) `
4845
4850
  margin-right: auto;
4846
4851
  `;
4847
- const AlignRight = styled(FlexRow) `
4852
+ const AlignRight$1 = styled(FlexRow) `
4848
4853
  margin-left: auto;
4849
4854
  `;
4850
4855
  const FooterButton$1 = styled(Button$4) `
@@ -4853,16 +4858,16 @@ const FooterButton$1 = styled(Button$4) `
4853
4858
  `;
4854
4859
  const DrawerFooter = ({ isOpen, leftButtons = [], rightButtons = [] }) => {
4855
4860
  const Transition = useTransition({
4856
- container: Container$h,
4861
+ container: Container$i,
4857
4862
  animateIn: Theme.animations.slide.in['bottom'],
4858
4863
  animateOut: Theme.animations.slide.out['bottom'],
4859
4864
  });
4860
4865
  return (React.createElement(Transition, { enter: isOpen },
4861
- React.createElement(AlignLeft, null, leftButtons.map((btn, i) => (React.createElement(FooterButton$1, { key: `footer-left-button-${i}`, ...btn })))),
4862
- React.createElement(AlignRight, null, rightButtons.map((btn, i) => (React.createElement(FooterButton$1, { key: `footer-right-button-${i}`, ...btn }))))));
4866
+ React.createElement(AlignLeft$1, null, leftButtons.map((btn, i) => (React.createElement(FooterButton$1, { key: `footer-left-button-${i}`, ...btn })))),
4867
+ React.createElement(AlignRight$1, null, rightButtons.map((btn, i) => (React.createElement(FooterButton$1, { key: `footer-right-button-${i}`, ...btn }))))));
4863
4868
  };
4864
4869
 
4865
- const Container$g = styled.div `
4870
+ const Container$h = styled.div `
4866
4871
  position: fixed;
4867
4872
  top: 0;
4868
4873
  bottom: 0;
@@ -4889,7 +4894,7 @@ const Drawer = ({ isOpen, onClose, closeOnEscape = true, position = 'right', wid
4889
4894
  active: isOpen && closeOnEscape,
4890
4895
  }, () => onClose());
4891
4896
  const Transition = useTransition({
4892
- container: Container$g,
4897
+ container: Container$h,
4893
4898
  animateIn: Theme.animations.slide.in[position],
4894
4899
  animateOut: Theme.animations.slide.out[position],
4895
4900
  });
@@ -4933,7 +4938,7 @@ const FieldLabel = ({ title, required, tooltip, style }) => {
4933
4938
  };
4934
4939
 
4935
4940
  // Styled components remain the same as before
4936
- const Container$f = styled.div `
4941
+ const Container$g = styled.div `
4937
4942
  display: flex;
4938
4943
  flex-direction: column;
4939
4944
  position: relative;
@@ -5036,7 +5041,7 @@ const Input = ({ icon: Icon, buttonLabel, onButtonClick, hasError, errorMessage,
5036
5041
  if (!['Enter'].includes(e.key))
5037
5042
  e.stopPropagation();
5038
5043
  };
5039
- return (React.createElement(Container$f, null,
5044
+ return (React.createElement(Container$g, null,
5040
5045
  React.createElement(FieldLabel, { title: title, required: required, tooltip: tooltip }),
5041
5046
  React.createElement(InputWrapper$1, { "$disabled": props.disabled, "$hasError": hasError || !!errorMessage, "$isActive": !!props.autoFocus },
5042
5047
  isSecret ? (React.createElement(IconWrapperClickable, { onClick: () => setRevealSecret((prev) => !prev) }, revealSecret ? React.createElement(EyeClosedIcon, { size: 14, fill: theme.text.grey }) : React.createElement(EyeOpenIcon, { size: 14, fill: theme.text.grey }))) : Icon ? (React.createElement(IconWrapper$2, null,
@@ -5046,7 +5051,7 @@ const Input = ({ icon: Icon, buttonLabel, onButtonClick, hasError, errorMessage,
5046
5051
  !!errorMessage && React.createElement(FieldError, null, errorMessage)));
5047
5052
  };
5048
5053
 
5049
- const Container$e = styled.div `
5054
+ const Container$f = styled.div `
5050
5055
  display: flex;
5051
5056
  flex-direction: column;
5052
5057
  align-items: center;
@@ -5068,7 +5073,7 @@ const SubTitle = styled(Text) `
5068
5073
  `;
5069
5074
  const NoDataFound = ({ title = 'No data found', subTitle = 'Check your search phrase and try one more time' }) => {
5070
5075
  const theme = Theme.useTheme();
5071
- return (React.createElement(Container$e, null,
5076
+ return (React.createElement(Container$f, null,
5072
5077
  React.createElement(TitleWrapper, null,
5073
5078
  React.createElement(NoDataIcon, { fill: theme.text.dark_grey }),
5074
5079
  React.createElement(Title$5, null, title)),
@@ -5243,6 +5248,36 @@ const DropdownListItem = ({ option, value, isMulti, onSelect, onDeselect }) => {
5243
5248
  isSelected && React.createElement(CheckIcon, null)));
5244
5249
  };
5245
5250
 
5251
+ const Container$e = styled(FlexRow) `
5252
+ position: relative;
5253
+ width: calc(100% - 24px);
5254
+ padding: 12px;
5255
+ background-color: ${({ theme }) => theme.colors.dark_grey};
5256
+ border-bottom: 1px solid ${({ theme }) => theme.colors.border + Theme.opacity.hex['050']};
5257
+ `;
5258
+ const AlignLeft = styled(FlexRow) `
5259
+ margin-right: auto;
5260
+ margin-left: 32px;
5261
+ gap: 12px;
5262
+ `;
5263
+ const AlignRight = styled(FlexRow) `
5264
+ margin-left: auto;
5265
+ margin-right: 32px;
5266
+ gap: 12px;
5267
+ `;
5268
+ const PositionCenter = styled(FlexRow) `
5269
+ position: absolute;
5270
+ left: 50%;
5271
+ transform: translateX(-50%);
5272
+ gap: 12px;
5273
+ `;
5274
+ const Header = ({ left = [], center = [], right = [] }) => {
5275
+ return (React.createElement(Container$e, null,
5276
+ React.createElement(AlignLeft, null, left.map((child, index) => child && React.createElement(Fragment, { key: index }, child))),
5277
+ React.createElement(PositionCenter, null, center.map((child, index) => child && React.createElement(Fragment, { key: index }, child))),
5278
+ React.createElement(AlignRight, null, right.map((child, index) => child && React.createElement(Fragment, { key: index }, child)))));
5279
+ };
5280
+
5246
5281
  const Title$4 = styled(Text) `
5247
5282
  color: ${({ theme }) => theme.text.grey};
5248
5283
  `;
@@ -29576,4 +29611,4 @@ const WarningModal = ({ isOpen, noOverlay, title = '', description = '', note, a
29576
29611
  React.createElement(FooterButton, { "data-id": 'deny', variant: denyButton.variant || 'secondary', onClick: onDeny }, denyButton.text)))));
29577
29612
  };
29578
29613
 
29579
- export { CenterThis as $, AutocompleteInput as A, Button$4 as B, CancelWarning as C, DataCard as D, ExtendArrow as E, FlexRow as F, MonitorsCheckboxes as G, MonitorsIcons as H, IconButton as I, NoDataFound as J, KeyValueInputsList as K, NotificationNote as L, Modal as M, NavigationButtons as N, Segment as O, SkeletonLoader as P, Status as Q, Stepper as R, SectionTitle as S, ToggleCodeComponent as T, Text as U, TextArea as V, Toggle as W, Tooltip as X, TraceLoader as Y, WarningModal as Z, FlexColumn as _, Badge as a, Overlay as a0, ModalBody as a1, TableContainer as a2, TableTitleWrap as a3, TableWrap as a4, getDefaultExportFromCjs as a5, Checkbox as b, Code as c, ConditionDetails as d, DataCardFields as e, DataCardFieldTypes as f, DataTab as g, DeleteWarning as h, Divider as i, DocsButton as j, Drawer as k, DrawerHeader as l, DrawerFooter as m, Dropdown as n, FadeLoader as o, FieldError as p, FieldLabel as q, IconGroup as r, IconTitleBadge as s, IconWrapped as t, IconsNav as u, ImageControlled as v, Input as w, InputList as x, InputTable as y, InteractiveTable as z };
29614
+ export { FlexRow as $, AutocompleteInput as A, Button$4 as B, CancelWarning as C, DataCard as D, ExtendArrow as E, FadeLoader as F, MonitorsIcons as G, Header as H, IconButton as I, NoDataFound as J, KeyValueInputsList as K, NotificationNote as L, Modal as M, NavigationButtons as N, SectionTitle as O, Segment as P, SkeletonLoader as Q, Status as R, ScrollX as S, ToggleCodeComponent as T, Stepper as U, Text as V, TextArea as W, Toggle as X, Tooltip as Y, TraceLoader as Z, WarningModal as _, Badge as a, FlexColumn as a0, CenterThis as a1, Overlay as a2, ModalBody as a3, TableContainer as a4, TableTitleWrap as a5, TableWrap as a6, getDefaultExportFromCjs as a7, Checkbox as b, Code as c, ConditionDetails as d, DataCardFields as e, DataCardFieldTypes as f, DataTab as g, DeleteWarning as h, Divider as i, DocsButton as j, Drawer as k, DrawerHeader as l, DrawerFooter as m, Dropdown as n, FieldError as o, FieldLabel as p, IconGroup as q, IconTitleBadge as r, IconWrapped as s, IconsNav as t, ImageControlled as u, Input as v, InputList as w, InputTable as x, InteractiveTable as y, MonitorsCheckboxes as z };
@@ -36,6 +36,13 @@ const SamplerIcon = ({ size = 16, fill: f, rotate = 0, onClick }) => {
36
36
  React.createElement("path", { stroke: fill, strokeLinecap: 'round', strokeLinejoin: 'round', d: 'M5.67367 5.67497H5.687M10.515 3.91532L12.1293 5.52965C13.0067 6.40707 13.4454 6.84578 13.6851 7.31618C14.1695 8.2669 14.1695 9.39207 13.6851 10.3428C13.4454 10.8132 13.0067 11.2519 12.1293 12.1293C11.2519 13.0067 10.8132 13.4454 10.3428 13.6851C9.39207 14.1695 8.2669 14.1695 7.31618 13.6851C6.84578 13.4454 6.40707 13.0067 5.52965 12.1293L3.91532 10.515C3.17317 9.77284 2.8021 9.40176 2.54483 8.96668C2.31682 8.58108 2.15521 8.15991 2.06673 7.72076C1.9669 7.22527 1.99448 6.70122 2.04965 5.65312L2.07845 5.10584C2.13195 4.0893 2.1587 3.58104 2.36993 3.18719C2.55598 2.84028 2.84028 2.55598 3.18719 2.36993C3.58104 2.1587 4.0893 2.13195 5.10584 2.07845L5.65312 2.04965C6.70122 1.99448 7.22527 1.9669 7.72076 2.06673C8.15991 2.15521 8.58108 2.31682 8.96668 2.54483C9.40176 2.8021 9.77284 3.17317 10.515 3.91532ZM6.32633 5.65853C6.32633 6.02672 6.02786 6.3252 5.65967 6.3252C5.29148 6.3252 4.993 6.02672 4.993 5.65853C4.993 5.29034 5.29148 4.99186 5.65967 4.99186C6.02786 4.99186 6.32633 5.29034 6.32633 5.65853Z' })));
37
37
  };
38
38
 
39
+ const ImageErrorIcon = ({ size = 16, fill: f, rotate = 0, onClick }) => {
40
+ const theme = Theme.useTheme();
41
+ const fill = f || theme.text.secondary;
42
+ return (React.createElement("svg", { width: size, height: size, viewBox: '0 0 24 24', xmlns: 'http://www.w3.org/2000/svg', fill: 'none', style: { transform: `rotate(${rotate}deg)` }, onClick: onClick },
43
+ React.createElement("path", { stroke: fill, strokeLinecap: 'round', strokeLinejoin: 'round', d: 'M17.2 21.0002L19.6 18.6002M19.6 18.6002L22 16.2002M19.6 18.6002L17.2 16.2002M19.6 18.6002L22 21.0002M22 12.1944V11C22 10.6449 22 10.3123 21.9989 10M13.1992 21H10C9.24401 21 8.59006 21 8.01712 20.9893M21.9989 10H21C19.607 10 18.9104 10 18.324 10.0603C12.9031 10.6176 8.61758 14.9031 8.06029 20.324C8.03963 20.5249 8.02605 20.7388 8.01712 20.9893M21.9989 10C21.9912 7.84993 21.9309 6.66397 21.455 5.73005C20.9757 4.78924 20.2108 4.02433 19.27 3.54497C18.2004 3 16.8003 3 14 3H10C7.19974 3 5.79961 3 4.73005 3.54497C3.78924 4.02433 3.02433 4.78924 2.54497 5.73005C2 6.79961 2 8.19974 2 11V13C2 15.8003 2 17.2004 2.54497 18.27C3.02433 19.2108 3.78924 19.9757 4.73005 20.455C5.51086 20.8529 6.46784 20.9603 8.01712 20.9893M7.5 9.5C6.94772 9.5 6.5 9.05228 6.5 8.5C6.5 7.94772 6.94772 7.5 7.5 7.5C8.05228 7.5 8.5 7.94772 8.5 8.5C8.5 9.05228 8.05228 9.5 7.5 9.5Z' })));
44
+ };
45
+
39
46
  const K8sLogo = ({ size = 16, fill: f, rotate = 0, onClick }) => {
40
47
  const theme = Theme.useTheme();
41
48
  const fill = f || theme.text.secondary;
@@ -57,4 +64,4 @@ const PayloadCollectionIcon = ({ size = 16, fill: f, rotate = 0, onClick }) => {
57
64
  React.createElement("path", { stroke: fill, strokeLinecap: 'round', strokeLinejoin: 'round', d: 'M7.99967 7.33333V11.3333M7.99967 11.3333C7.92987 11.3333 7.86007 11.31 7.80254 11.2634C7.37701 10.9186 6.99534 10.5224 6.66634 10.0837M7.99967 11.3333C8.06947 11.3333 8.13927 11.31 8.19681 11.2634C8.62234 10.9186 9.00401 10.5224 9.33301 10.0837M1.33301 6.26667C1.33301 4.77319 1.33301 4.02645 1.62365 3.45603C1.87932 2.95426 2.28727 2.54631 2.78903 2.29065C3.35946 2 4.1062 2 5.59967 2H5.81005C6.12312 2 6.27965 2 6.42174 2.04315C6.54753 2.08135 6.66455 2.14398 6.76614 2.22745C6.88081 2.32175 6.96767 2.45199 7.14134 2.71248L7.52467 3.28752C7.69834 3.54801 7.78521 3.67825 7.89987 3.77255C8.00147 3.85602 8.11847 3.91865 8.24427 3.95685C8.38634 4 8.54287 4 8.85594 4H10.3997C11.8931 4 12.6399 4 13.2103 4.29065C13.7121 4.54631 14.12 4.95426 14.3757 5.45603C14.6663 6.02645 14.6663 6.7732 14.6663 8.26667V9.73333C14.6663 11.2268 14.6663 11.9735 14.3757 12.544C14.12 13.0457 13.7121 13.4537 13.2103 13.7093C12.6399 14 11.8931 14 10.3997 14H5.59967C4.1062 14 3.35946 14 2.78903 13.7093C2.28727 13.4537 1.87932 13.0457 1.62365 12.544C1.33301 11.9735 1.33301 11.2268 1.33301 9.73333V6.26667Z' })));
58
65
  };
59
66
 
60
- export { AddClusterInfoIcon as A, CodeAttributesIcon as C, DeleteAttributeIcon as D, K8sLogo as K, PiiMaskingIcon as P, RenameAttributeIcon as R, SamplerIcon as S, PayloadCollectionIcon as a };
67
+ export { AddClusterInfoIcon as A, CodeAttributesIcon as C, DeleteAttributeIcon as D, ImageErrorIcon as I, K8sLogo as K, PiiMaskingIcon as P, RenameAttributeIcon as R, SamplerIcon as S, PayloadCollectionIcon as a };
@@ -1,9 +1,11 @@
1
- import { S as StatusType, O as OtherStatus, E as EntityTypes, P as PlatformType } from './index-BVVVevuY.js';
2
- import { a as getProgrammingLanguageIcon } from './index-BxQTUOME.js';
3
- import { D as DestinationTypes } from './index-CIgHU72d.js';
1
+ import { StatusType, OtherStatus, DestinationTypes, EntityTypes, PlatformType } from './types.js';
2
+ import { a as getProgrammingLanguageIcon } from './index-WSle42rz.js';
3
+ import 'react';
4
+ import './index-BazfJyRh.js';
5
+ import 'styled-components';
4
6
  import { c as AwsXrayLogo, U as UptraceLogo, x as TraceloopLogo, T as TempoLogo, w as SumoLogicLogo, v as SplunkLogo, S as SignozLogo, b as AwsS3Logo, u as QuickwitLogo, G as GigapipeLogo, Q as QrynLogo, P as PrometheusLogo, O as OpenTelemetryLogo, t as OpsVerseLogo, N as NewRelicLogo, M as MiddlewareLogo, s as LumigoLogo, r as LokiLogo, q as LogzioLogo, p as LightstepLogo, L as Last9Logo, K as KloudmateLogo, J as JaegerLogo, I as InstanaLogo, o as HyperDxLogo, H as HoneycombLogo, n as GroundcoverLogo, m as GrafanaLogo, l as GoogleCloudPlatformLogo, k as ElasticSearchLogo, E as ElasticApmLogo, j as DynatraceLogo, i as DatadogLogo, D as Dash0Logo, h as CoralogixLogo, a as AwsCloudwatchLogo, g as ClickhouseLogo, f as ChronosphereLogo, C as CauselyLogo, B as BetterStackLogo, e as BlobStorageLogo, d as AxiomLogo, A as AppDynamicsLogo, R as RulesIcon, y as ActionsIcon, z as DestinationsIcon, W as SourcesIcon, F as NamespacesIcon, V as VmLogo } from './index-DB8Djrsy.js';
5
7
  import { K as KafkaLogo, O as OdigosLogo } from './index-BsH_egEe.js';
6
- import { K as K8sLogo } from './index-CIXQeSHu.js';
8
+ import { K as K8sLogo } from './index-DGel4E-Z.js';
7
9
 
8
10
  const compareCondition = (renderCondition, fields) => {
9
11
  if (!renderCondition || !renderCondition.length)
@@ -1,7 +1,9 @@
1
- import { a as ProgrammingLanguages, S as StatusType } from './index-BVVVevuY.js';
1
+ import { ProgrammingLanguages, SignalType, StatusType } from './types.js';
2
+ import 'react';
3
+ import './index-BazfJyRh.js';
4
+ import 'styled-components';
5
+ import { I as ImageErrorIcon } from './index-DGel4E-Z.js';
2
6
  import { K as KafkaLogo, R as RedisLogo, P as PostgresLogo, N as NginxLogo, M as MysqlLogo, E as ElixirLogo, S as SwiftLogo, a as RustLogo, b as RubyLogo, c as PhpLogo, C as CPlusPlusLogo, d as CSharpLogo, D as DotnetLogo, e as PythonLogo, f as NodejsLogo, G as GoLogo, J as JavaLogo, T as TracesIcon, g as MetricsIcon, L as LogsIcon, O as OdigosLogo, I as InfoIcon, W as WarningTriangleIcon, h as ErrorTriangleIcon, i as CheckCircledIcon } from './index-BsH_egEe.js';
3
- import { I as ImageErrorIcon } from './index-BWqrekK4.js';
4
- import { S as SignalType } from './index-DbfrGXPH.js';
5
7
 
6
8
  const capitalizeFirstLetter = (string) => {
7
9
  return string.charAt(0).toUpperCase() + string.slice(1);