@odigos/ui-kit 0.0.227 → 0.0.228

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.
@@ -15,7 +15,8 @@ export interface DataCardProps {
15
15
  cellsPerRow?: number;
16
16
  items?: {
17
17
  id: string;
18
- title: string;
18
+ /** Optional. When omitted/empty the small grey title row is not rendered. */
19
+ title?: string;
19
20
  label?: string;
20
21
  withCopy?: boolean;
21
22
  badge?: BadgeProps;
@@ -35,4 +35,5 @@ export * from './textarea';
35
35
  export * from './time-input';
36
36
  export * from './toggle';
37
37
  export * from './typography';
38
+ export * from './typography-truncatable';
38
39
  export * from './warning-modal';
@@ -1,4 +1,4 @@
1
- import React, { type FC, type CSSProperties } from 'react';
1
+ import React, { type CSSProperties } from 'react';
2
2
  export declare enum TypographyVariants {
3
3
  H1 = "h1",
4
4
  H2 = "h2",
@@ -35,4 +35,4 @@ export interface TypographyProps {
35
35
  onClick?: () => void;
36
36
  disabled?: boolean;
37
37
  }
38
- export declare const Typography: FC<TypographyProps>;
38
+ export declare const Typography: React.ForwardRefExoticComponent<TypographyProps & React.RefAttributes<HTMLElement>>;
@@ -0,0 +1,21 @@
1
+ import { type FC } from 'react';
2
+ import { TypographyProps } from '../typography';
3
+ /**
4
+ * Renders a `Typography` and, if its content overflows the available width
5
+ * (single-line ellipsis), reveals the full text in a `Tooltip` on hover.
6
+ *
7
+ * Implementation notes:
8
+ * - We ALWAYS wrap in `Tooltip` with `keepAlive` so the DOM structure is stable across
9
+ * renders. Toggling between two different parent component types based on truncation
10
+ * would unmount and remount `Typography`, resetting the ref/`ResizeObserver` and
11
+ * risking a flicker loop when the two wrappers report different available widths.
12
+ * `Tooltip` only opens the popup when `text` is non-empty (`isOpen && !!text`), so
13
+ * passing an empty `text` is the no-tooltip state.
14
+ * - Detection runs in `useLayoutEffect` and via `ResizeObserver`, so we react to drawer
15
+ * resize, collapse, and any other layout change without needing explicit invalidation.
16
+ */
17
+ export interface TruncatableTypographyProps extends TypographyProps {
18
+ /** The full text used for the tooltip; defaults to `String(children)`. */
19
+ fullText?: string;
20
+ }
21
+ export declare const TruncatableTypography: FC<TruncatableTypographyProps>;
@@ -1 +1 @@
1
- export{e$ as Autocomplete,Y as Badge,o as Button,B as ButtonSize,gd as ButtonTab,ge as ButtonTabList,a as ButtonVariants,e as Checkbox,gf as CheckboxList,f1 as CheckboxSize,bz as CliCommand,gg as Condition,aL as Conditions,gh as DEFAULT_TIME_UNITS,D as DataCard,aI as Drawer,bj as DropData,bl as DropDataAlignX,bk as DropDataAlignY,am as DropDown,f as FieldMessage,d as FieldTitle,bC as GaugeChart,gi as GaugeChartVariant,gj as Header,dV as HoverActions,ag as IconButton,ah as IconButtonSize,I as Input,l as InputList,j as InputTable,bu as Island,aj as Loader,gk as Modal,gl as Navbar,N as NoData,z as Note,el as Radio,gm as RadioGroup,gn as RadioSize,dP as Search,aa as SectionCard,go as SectionCardSize,S as Segment,an as SegmentSize,bF as SegmentVariant,bB as StatusCard,bv as Stepper,bo as Table,bp as TableVariant,aV as Tag,w as TextArea,bD as TextCard,e9 as TimeInput,T as Toggle,k as ToggleLabelAlign,gp as ToggleList,ax as ToggleSize,bf as ToggleVariant,s as Typography,t as TypographySize,ay as TypographyVariants,c5 as WarningModal}from"../chunks/ui-components-C7i9zbc-.js";import"react/jsx-runtime";import"styled-components";import"../icons.js";import"zustand";import"react";import"javascript-time-ago";import"../chunks/vendor-C150cdxb.js";import"@xyflow/react";import"react-dom";import"prism-react-renderer";import"react-error-boundary";import"lottie-react";import"virtua";
1
+ export{e$ as Autocomplete,Y as Badge,o as Button,B as ButtonSize,gd as ButtonTab,ge as ButtonTabList,a as ButtonVariants,e as Checkbox,gf as CheckboxList,f1 as CheckboxSize,bz as CliCommand,gg as Condition,aL as Conditions,gh as DEFAULT_TIME_UNITS,D as DataCard,aI as Drawer,bj as DropData,bl as DropDataAlignX,bk as DropDataAlignY,am as DropDown,f as FieldMessage,d as FieldTitle,bC as GaugeChart,gi as GaugeChartVariant,gj as Header,dV as HoverActions,ag as IconButton,ah as IconButtonSize,I as Input,l as InputList,j as InputTable,bu as Island,aj as Loader,gk as Modal,gl as Navbar,N as NoData,z as Note,el as Radio,gm as RadioGroup,gn as RadioSize,dP as Search,aa as SectionCard,go as SectionCardSize,S as Segment,an as SegmentSize,bF as SegmentVariant,bB as StatusCard,bv as Stepper,bo as Table,bp as TableVariant,aV as Tag,w as TextArea,bD as TextCard,e9 as TimeInput,T as Toggle,k as ToggleLabelAlign,gp as ToggleList,ax as ToggleSize,bf as ToggleVariant,gq as TruncatableTypography,s as Typography,t as TypographySize,ay as TypographyVariants,c5 as WarningModal}from"../chunks/ui-components-B4xHrszQ.js";import"react/jsx-runtime";import"styled-components";import"../icons.js";import"zustand";import"react";import"javascript-time-ago";import"../chunks/vendor-C150cdxb.js";import"@xyflow/react";import"react-dom";import"prism-react-renderer";import"react-error-boundary";import"lottie-react";import"virtua";
package/lib/components.js CHANGED
@@ -1 +1 @@
1
- export{cG as AutocompleteInput,c_ as Badge,d1 as Button,cv as CancelWarning,b as CenterThis,cd as Checkbox,C as Code,cy as ConditionDetails,cz as DataCard,cb as DataCardFieldTypes,dA as DataCardFields,g1 as DataFinger,d3 as DataTab,cu as DeleteWarning,dT as DescribeRow,m as Divider,co as DocsButton,ct as Drawer,g2 as DrawerFooter,g3 as DrawerHeader,dl as Dropdown,g4 as ErrorBoundary,dt as ExtendArrow,d0 as FadeLoader,ce as FieldError,cc as FieldLabel,F as FlexColumn,n as FlexRow,g5 as Header,ck as IconButton,e1 as IconGroup,cU as IconTitleBadge,cP as IconWrapped,dN as IconsNav,g6 as ImageControlled,cf as Input,cj as InputList,cg as InputTable,cX as InteractiveTable,ci as KeyValueInputsList,g7 as LoadingText,cD as Modal,cE as ModalBody,cp as MonitorsCheckboxes,cR as MonitorsIcons,cH as NavigationButtons,cY as NoDataFound,cF as NotificationNote,g8 as Overlay,aK as Padding,bn as PageContent,dh as Popup,e3 as PopupForm,e8 as ScrollX,d7 as ScrollY,cn as SectionTitle,cm as Segment,dj as SelectionButton,da as SkeletonLoader,cJ as Status,dz as Stepper,g9 as TabList,cS as TableContainer,cT as TableTitleWrap,cW as TableWrap,dC as Tag,cr as Text,cq as TextArea,ch as Toggle,e6 as ToggleCodeComponent,O as Tooltip,cZ as TraceLoader,bE as UpgradeRequiredWrapper,di as VerticalScroll,dE as WarningModal,ga as getLinksFromText,gb as getStrongsFromText,gc as renderText}from"./chunks/ui-components-C7i9zbc-.js";import"react/jsx-runtime";import"styled-components";import"./icons.js";import"zustand";import"react";import"javascript-time-ago";import"./chunks/vendor-C150cdxb.js";import"@xyflow/react";import"react-dom";import"prism-react-renderer";import"react-error-boundary";import"lottie-react";import"virtua";
1
+ export{cG as AutocompleteInput,c_ as Badge,d1 as Button,cv as CancelWarning,b as CenterThis,cd as Checkbox,C as Code,cy as ConditionDetails,cz as DataCard,cb as DataCardFieldTypes,dA as DataCardFields,g1 as DataFinger,d3 as DataTab,cu as DeleteWarning,dT as DescribeRow,m as Divider,co as DocsButton,ct as Drawer,g2 as DrawerFooter,g3 as DrawerHeader,dl as Dropdown,g4 as ErrorBoundary,dt as ExtendArrow,d0 as FadeLoader,ce as FieldError,cc as FieldLabel,F as FlexColumn,n as FlexRow,g5 as Header,ck as IconButton,e1 as IconGroup,cU as IconTitleBadge,cP as IconWrapped,dN as IconsNav,g6 as ImageControlled,cf as Input,cj as InputList,cg as InputTable,cX as InteractiveTable,ci as KeyValueInputsList,g7 as LoadingText,cD as Modal,cE as ModalBody,cp as MonitorsCheckboxes,cR as MonitorsIcons,cH as NavigationButtons,cY as NoDataFound,cF as NotificationNote,g8 as Overlay,aK as Padding,bn as PageContent,dh as Popup,e3 as PopupForm,e8 as ScrollX,d7 as ScrollY,cn as SectionTitle,cm as Segment,dj as SelectionButton,da as SkeletonLoader,cJ as Status,dz as Stepper,g9 as TabList,cS as TableContainer,cT as TableTitleWrap,cW as TableWrap,dC as Tag,cr as Text,cq as TextArea,ch as Toggle,e6 as ToggleCodeComponent,O as Tooltip,cZ as TraceLoader,bE as UpgradeRequiredWrapper,di as VerticalScroll,dE as WarningModal,ga as getLinksFromText,gb as getStrongsFromText,gc as renderText}from"./chunks/ui-components-B4xHrszQ.js";import"react/jsx-runtime";import"styled-components";import"./icons.js";import"zustand";import"react";import"javascript-time-ago";import"./chunks/vendor-C150cdxb.js";import"@xyflow/react";import"react-dom";import"prism-react-renderer";import"react-error-boundary";import"lottie-react";import"virtua";
package/lib/constants.js CHANGED
@@ -1 +1 @@
1
- export{ad as ACTION_ATTRIBUTE_OPTIONS,cx as ACTION_OPTIONS,ae as ACTION_SAMPLER_OPTIONS,fL as ALL_SOURCES,aX as BTN_CANCEL,b3 as BTN_CREATE_RULE,a_ as BTN_DELETE_RULE,eO as BTN_EDIT_AUTO_RULE,aZ as BTN_EDIT_RULE,bb as BTN_SAVE,aY as BTN_SAVE_RULE,aJ as BUTTON_TEXTS,b0 as CATEGORY_DESCRIPTIONS,eM as CATEGORY_LABELS,b4 as CATEGORY_TITLES,fM as CREATE_COST_REDUCTION_AUTO_RULE_DRAWER_TITLE,fN as CREATE_HIGHLY_RELEVANT_AUTO_RULE_DRAWER_TITLE,fO as CREATE_NOISY_AUTO_RULE_DRAWER_TITLE,aG as DEFAULT_CLUSTER_ID,aF as DEFAULT_CLUSTER_NAME,ds as DEFAULT_DATA_STREAM_NAME,a3 as DESC_DROP_PERCENTAGE,ef as DESC_DURATION,ee as DESC_ERRORS,a7 as DESC_KEEP_PERCENTAGE,ei as DESC_OPERATION,eZ as DESC_SOURCE_SCOPE,ak as DESTINATION_CATEGORIES,Z as DISPLAY_LANGUAGES,af as DISPLAY_TITLES,v as DOCS_BASE_URL,ai as DestinationCategoryTypes,b7 as EDIT_COST_REDUCTION_AUTO_RULE_DRAWER_SUBTITLE,b8 as EDIT_COST_REDUCTION_AUTO_RULE_DRAWER_TITLE,b5 as EDIT_HIGHLY_RELEVANT_AUTO_RULE_DRAWER_SUBTITLE,b6 as EDIT_HIGHLY_RELEVANT_AUTO_RULE_DRAWER_TITLE,b9 as EDIT_NOISY_AUTO_RULE_DRAWER_SUBTITLE,ba as EDIT_NOISY_AUTO_RULE_DRAWER_TITLE,b1 as EDIT_TITLES,ev as EMPTY_VALUE,bI as FILTER_TYPE_ALL,aU as FORM_ALERTS,ar as INSTRUMENTATION_RULE_OPTIONS,eg as LABEL_CUSTOM_DURATION,ab as LABEL_CUSTOM_PERCENTAGE,bH as LABEL_DISABLED_RULE,eE as LABEL_DROP_ALL,a2 as LABEL_DROP_AT_MOST,eB as LABEL_DROP_PERCENTAGE,eo as LABEL_HTTP_ROUTE,eq as LABEL_HTTP_ROUTE_PREFIX,es as LABEL_KAFKA_TOPIC,eF as LABEL_KEEP_ALL,a6 as LABEL_KEEP_AT_LEAST,eC as LABEL_KEEP_AT_MOST,eA as LABEL_KEEP_PERCENTAGE,ed as LABEL_KEEP_TRACES_DURATION,eb as LABEL_KEEP_TRACES_ERRORS,er as LABEL_METHOD,eI as LABEL_NOTE,eW as LABEL_NO_PREVIEW,eu as LABEL_OPERATION_TYPE,be as LABEL_RULE_DISABLED,bd as LABEL_RULE_ENABLED,eG as LABEL_RULE_NAME,eH as LABEL_RULE_TYPE,eD as LABEL_SAMPLE,ek as LABEL_SERVER_ADDRESS,en as LABEL_TEMPLATED_PATH,ep as LABEL_TEMPLATED_PATH_PREFIX,fP as LANGUAGE_OPTIONS,dm as MONITORS_OPTIONS,eY as NOTE_ENTIRE_CLUSTER,e_ as NOTE_SOURCE_SCOPE_LOGIC,fQ as OPENTELEMETRY_EBPF_DISTRO_OPTION,ex as OPERATION_ALL,ew as OPERATION_HTTP_CLIENT,et as OPERATION_HTTP_SERVER,ey as OPERATION_KAFKA_CONSUMER,ez as OPERATION_KAFKA_PRODUCER,fR as OTEL_DISTRO_NAME_OPTIONS,eK as PLACEHOLDER_NOTE,em as PLACEHOLDER_ROUTE,eJ as PLACEHOLDER_RULE_NAME,f0 as PLACEHOLDER_SEARCH_SOURCE,ej as PLACEHOLDER_SERVER_ADDRESS,a9 as SAMPLING_AUTO_RULE_TITLE,b$ as SAMPLING_BTN_CREATE_RULE,bZ as SAMPLING_BTN_DOCS,b_ as SAMPLING_BTN_REFRESH,a5 as SAMPLING_COST_REDUCTION_AUTO_RULE_TITLE,c7 as SAMPLING_DELETE_MODAL_APPROVE,c6 as SAMPLING_DELETE_MODAL_CANCEL,c8 as SAMPLING_DELETE_MODAL_DESCRIPTION,c9 as SAMPLING_DELETE_MODAL_TITLE,bc as SAMPLING_DRAWER_WIDTH,bY as SAMPLING_DUPLICATE_RULE_WARNING,a1 as SAMPLING_HIGHLY_RELEVANT_AUTO_RULE_TITLE,c0 as SAMPLING_PAGE_DESCRIPTION,c1 as SAMPLING_PAGE_TITLE,a4 as SECTION_DROP_PERCENTAGE,ec as SECTION_DURATION,ea as SECTION_ERRORS,a8 as SECTION_KEEP_PERCENTAGE,eh as SECTION_OPERATION,eV as SECTION_SAMPLING_PREVIEW,eX as SECTION_SOURCE_SCOPE,dn as STORAGE_KEYS,fS as TOKEN_ABOUT_TO_EXPIRE,eL as TOOLTIP_NOTE,b2 as UNNAMED_RULE}from"./chunks/ui-components-C7i9zbc-.js";import"react/jsx-runtime";import"styled-components";import"./icons.js";import"zustand";import"react";import"javascript-time-ago";import"./chunks/vendor-C150cdxb.js";import"@xyflow/react";import"react-dom";import"prism-react-renderer";import"react-error-boundary";import"lottie-react";import"virtua";
1
+ export{ad as ACTION_ATTRIBUTE_OPTIONS,cx as ACTION_OPTIONS,ae as ACTION_SAMPLER_OPTIONS,fL as ALL_SOURCES,aX as BTN_CANCEL,b3 as BTN_CREATE_RULE,a_ as BTN_DELETE_RULE,eO as BTN_EDIT_AUTO_RULE,aZ as BTN_EDIT_RULE,bb as BTN_SAVE,aY as BTN_SAVE_RULE,aJ as BUTTON_TEXTS,b0 as CATEGORY_DESCRIPTIONS,eM as CATEGORY_LABELS,b4 as CATEGORY_TITLES,fM as CREATE_COST_REDUCTION_AUTO_RULE_DRAWER_TITLE,fN as CREATE_HIGHLY_RELEVANT_AUTO_RULE_DRAWER_TITLE,fO as CREATE_NOISY_AUTO_RULE_DRAWER_TITLE,aG as DEFAULT_CLUSTER_ID,aF as DEFAULT_CLUSTER_NAME,ds as DEFAULT_DATA_STREAM_NAME,a3 as DESC_DROP_PERCENTAGE,ef as DESC_DURATION,ee as DESC_ERRORS,a7 as DESC_KEEP_PERCENTAGE,ei as DESC_OPERATION,eZ as DESC_SOURCE_SCOPE,ak as DESTINATION_CATEGORIES,Z as DISPLAY_LANGUAGES,af as DISPLAY_TITLES,v as DOCS_BASE_URL,ai as DestinationCategoryTypes,b7 as EDIT_COST_REDUCTION_AUTO_RULE_DRAWER_SUBTITLE,b8 as EDIT_COST_REDUCTION_AUTO_RULE_DRAWER_TITLE,b5 as EDIT_HIGHLY_RELEVANT_AUTO_RULE_DRAWER_SUBTITLE,b6 as EDIT_HIGHLY_RELEVANT_AUTO_RULE_DRAWER_TITLE,b9 as EDIT_NOISY_AUTO_RULE_DRAWER_SUBTITLE,ba as EDIT_NOISY_AUTO_RULE_DRAWER_TITLE,b1 as EDIT_TITLES,ev as EMPTY_VALUE,bI as FILTER_TYPE_ALL,aU as FORM_ALERTS,ar as INSTRUMENTATION_RULE_OPTIONS,eg as LABEL_CUSTOM_DURATION,ab as LABEL_CUSTOM_PERCENTAGE,bH as LABEL_DISABLED_RULE,eE as LABEL_DROP_ALL,a2 as LABEL_DROP_AT_MOST,eB as LABEL_DROP_PERCENTAGE,eo as LABEL_HTTP_ROUTE,eq as LABEL_HTTP_ROUTE_PREFIX,es as LABEL_KAFKA_TOPIC,eF as LABEL_KEEP_ALL,a6 as LABEL_KEEP_AT_LEAST,eC as LABEL_KEEP_AT_MOST,eA as LABEL_KEEP_PERCENTAGE,ed as LABEL_KEEP_TRACES_DURATION,eb as LABEL_KEEP_TRACES_ERRORS,er as LABEL_METHOD,eI as LABEL_NOTE,eW as LABEL_NO_PREVIEW,eu as LABEL_OPERATION_TYPE,be as LABEL_RULE_DISABLED,bd as LABEL_RULE_ENABLED,eG as LABEL_RULE_NAME,eH as LABEL_RULE_TYPE,eD as LABEL_SAMPLE,ek as LABEL_SERVER_ADDRESS,en as LABEL_TEMPLATED_PATH,ep as LABEL_TEMPLATED_PATH_PREFIX,fP as LANGUAGE_OPTIONS,dm as MONITORS_OPTIONS,eY as NOTE_ENTIRE_CLUSTER,e_ as NOTE_SOURCE_SCOPE_LOGIC,fQ as OPENTELEMETRY_EBPF_DISTRO_OPTION,ex as OPERATION_ALL,ew as OPERATION_HTTP_CLIENT,et as OPERATION_HTTP_SERVER,ey as OPERATION_KAFKA_CONSUMER,ez as OPERATION_KAFKA_PRODUCER,fR as OTEL_DISTRO_NAME_OPTIONS,eK as PLACEHOLDER_NOTE,em as PLACEHOLDER_ROUTE,eJ as PLACEHOLDER_RULE_NAME,f0 as PLACEHOLDER_SEARCH_SOURCE,ej as PLACEHOLDER_SERVER_ADDRESS,a9 as SAMPLING_AUTO_RULE_TITLE,b$ as SAMPLING_BTN_CREATE_RULE,bZ as SAMPLING_BTN_DOCS,b_ as SAMPLING_BTN_REFRESH,a5 as SAMPLING_COST_REDUCTION_AUTO_RULE_TITLE,c7 as SAMPLING_DELETE_MODAL_APPROVE,c6 as SAMPLING_DELETE_MODAL_CANCEL,c8 as SAMPLING_DELETE_MODAL_DESCRIPTION,c9 as SAMPLING_DELETE_MODAL_TITLE,bc as SAMPLING_DRAWER_WIDTH,bY as SAMPLING_DUPLICATE_RULE_WARNING,a1 as SAMPLING_HIGHLY_RELEVANT_AUTO_RULE_TITLE,c0 as SAMPLING_PAGE_DESCRIPTION,c1 as SAMPLING_PAGE_TITLE,a4 as SECTION_DROP_PERCENTAGE,ec as SECTION_DURATION,ea as SECTION_ERRORS,a8 as SECTION_KEEP_PERCENTAGE,eh as SECTION_OPERATION,eV as SECTION_SAMPLING_PREVIEW,eX as SECTION_SOURCE_SCOPE,dn as STORAGE_KEYS,fS as TOKEN_ABOUT_TO_EXPIRE,eL as TOOLTIP_NOTE,b2 as UNNAMED_RULE}from"./chunks/ui-components-B4xHrszQ.js";import"react/jsx-runtime";import"styled-components";import"./icons.js";import"zustand";import"react";import"javascript-time-ago";import"./chunks/vendor-C150cdxb.js";import"@xyflow/react";import"react-dom";import"prism-react-renderer";import"react-error-boundary";import"lottie-react";import"virtua";
@@ -1,6 +1,7 @@
1
+ import { DestinationCategoryTypes } from '@/constants';
1
2
  import type { DestinationOption, GetDestinationCategoriesResult, GetPotentialDestinationsResult } from '@/types';
2
3
  export declare const getOptionsFromResults: (categoriesResult?: GetDestinationCategoriesResult, detectedResult?: GetPotentialDestinationsResult) => {
3
- detectedDestinations: DestinationOption[];
4
- selfHostedDestinations: DestinationOption[];
5
- managedDestinations: DestinationOption[];
4
+ [DestinationCategoryTypes.DETECTED]: DestinationOption[];
5
+ [DestinationCategoryTypes.SELF_HOSTED]: DestinationOption[];
6
+ [DestinationCategoryTypes.MANAGED]: DestinationOption[];
6
7
  };
@@ -3,10 +3,9 @@ import { WideDrawerProps } from '@/snippets/_v2';
3
3
  import { DestinationCategoryTypes } from '@/constants';
4
4
  import { type DestinationOption } from '@/types';
5
5
  export interface ListsColumnProps {
6
- isFetchingCategories: boolean;
7
- isFetchingPotentialDestinations: boolean;
6
+ isFetching: boolean;
8
7
  destinationsByCategory: Record<DestinationCategoryTypes, DestinationOption[]>;
9
8
  searchText: string;
10
9
  filters: Filters;
11
10
  }
12
- export declare const listsColumn: ({ isFetchingCategories, isFetchingPotentialDestinations, destinationsByCategory, searchText, filters }: ListsColumnProps) => WideDrawerProps["leftColumn"];
11
+ export declare const listsColumn: ({ isFetching, destinationsByCategory, searchText, filters }: ListsColumnProps) => WideDrawerProps["leftColumn"];
@@ -5,7 +5,34 @@ import { type Destination, type DestinationYamlProperties } from '@/types';
5
5
  */
6
6
  export declare const buildDataCard: (destination: Destination) => DataCardProps["items"];
7
7
  /**
8
- * Build the items shown in the dynamic-fields `DataCard` (the destination's stored field values).
9
- * Mirrors the legacy `build-card.ts` behaviour for visibility, secret masking and custom labels.
8
+ * View-mode field segments. The drawer renders one nested `DataCard` per segment so
9
+ * complex values (arrays, key/value pairs) get the room they need instead of being
10
+ * crammed into a single ellipsised cell next to scalar fields.
11
+ *
12
+ * - `cells` — group of scalar fields shown together in one DataCard with `cellsPerRow=2`.
13
+ * - `list` — a `MultiInput` field; each array entry becomes its own cell in a dedicated card.
14
+ * - `pairs` — a `KeyValuePair` field; each `{ key, value }` row becomes its own cell.
10
15
  */
11
- export declare const buildFieldsDataCard: (destination: Destination, yamlFields: DestinationYamlProperties[]) => DataCardProps["items"];
16
+ export type FieldSegment = {
17
+ kind: 'cells';
18
+ id: string;
19
+ items: NonNullable<DataCardProps['items']>;
20
+ } | {
21
+ kind: 'list';
22
+ id: string;
23
+ title: string;
24
+ items: NonNullable<DataCardProps['items']>;
25
+ } | {
26
+ kind: 'pairs';
27
+ id: string;
28
+ title: string;
29
+ items: NonNullable<DataCardProps['items']>;
30
+ };
31
+ /**
32
+ * Build the segmented configuration view for the view-mode drawer.
33
+ *
34
+ * Mirrors the legacy `build-card.ts` rules for visibility, secret masking and custom labels,
35
+ * but additionally splits `MultiInput`/`KeyValuePair` fields into their own sub-cards so
36
+ * their values are fully readable rather than truncated as comma-joined strings.
37
+ */
38
+ export declare const buildFieldsSegments: (destination: Destination, yamlFields: DestinationYamlProperties[]) => FieldSegment[];
@@ -14,6 +14,7 @@ interface SourceDrawerProps {
14
14
  fetchSourceDescribe: DescribeProps['fetchSourceDescribe'];
15
15
  fetchSourceLibraries: LibrariesProps['fetchSourceLibraries'];
16
16
  fetchPeerSources: PeerSourcesProps['fetchPeerSources'];
17
+ profilingEnabled?: boolean;
17
18
  fetchProfilingSlots?: ProfilingProps['fetchProfilingSlots'];
18
19
  enableProfiling?: ProfilingProps['enableProfiling'];
19
20
  releaseProfiling?: ProfilingProps['releaseProfiling'];