@odigos/ui-kit 0.0.221 → 0.0.223

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 (31) hide show
  1. package/CHANGELOG.md +17 -0
  2. package/lib/chunks/{index-B0bRHrR6.js → index-DtYRiMjc.js} +1 -1
  3. package/lib/chunks/{ui-components-BRgXOh8V.js → ui-components-Bn9natqF.js} +394 -394
  4. package/lib/components/_v2/button/index.d.ts +1 -0
  5. package/lib/components/_v2/table/table-columns/filter/index.d.ts +2 -1
  6. package/lib/components/_v2/table/types.d.ts +17 -0
  7. package/lib/components/v2.js +1 -1
  8. package/lib/components.js +1 -1
  9. package/lib/constants/sampling/index.d.ts +3 -3
  10. package/lib/constants.js +1 -1
  11. package/lib/containers/_v2/_forms/view-sampling-rule-form/sections/sampling-preview.d.ts +1 -1
  12. package/lib/containers/_v2/sampling-rules/auto-rule-card/index.d.ts +4 -3
  13. package/lib/containers/overview-drawer/index.d.ts +2 -1
  14. package/lib/containers/source-drawer/profiling/flame-graph-canvas.d.ts +2 -0
  15. package/lib/containers/source-drawer/profiling/flamebearer.d.ts +9 -0
  16. package/lib/containers/source-drawer/profiling/index.d.ts +2 -0
  17. package/lib/containers/source-drawer/profiling/symbol-table.d.ts +2 -0
  18. package/lib/containers/v2.js +63 -93
  19. package/lib/containers.js +126 -126
  20. package/lib/contexts.js +1 -1
  21. package/lib/functions/index.d.ts +1 -0
  22. package/lib/functions/prepare-destination-form-data/index.d.ts +2 -0
  23. package/lib/functions.js +1 -1
  24. package/lib/hooks.js +1 -1
  25. package/lib/snippets/v2.js +4 -4
  26. package/lib/snippets.js +1 -1
  27. package/lib/store.js +1 -1
  28. package/lib/theme.js +1 -1
  29. package/lib/types.js +1 -1
  30. package/lib/visuals.js +1 -1
  31. package/package.json +1 -1
@@ -14,6 +14,7 @@ export interface ButtonProps extends ButtonHTMLAttributes<HTMLButtonElement> {
14
14
  'data-id'?: string;
15
15
  label?: string;
16
16
  tooltip?: string;
17
+ hideTooltipIcon?: boolean;
17
18
  leftIcon?: SVG;
18
19
  rightIcon?: SVG;
19
20
  variant?: ButtonVariants;
@@ -1,5 +1,5 @@
1
1
  import { type FC } from 'react';
2
- import { TableRow, type TableRowCell } from '../../types';
2
+ import { TableRow, type TableColumnFilterOverride, type TableRowCell } from '../../types';
3
3
  export interface FilterProps {
4
4
  columnKey: string;
5
5
  filters: {
@@ -7,5 +7,6 @@ export interface FilterProps {
7
7
  };
8
8
  onFilter: (columnKey: string, values: TableRowCell['rawValue'][]) => void;
9
9
  rowsUnfiltered: TableRow[];
10
+ filterOverride?: TableColumnFilterOverride;
10
11
  }
11
12
  export declare const Filter: FC<FilterProps>;
@@ -3,12 +3,29 @@ export declare enum TableVariant {
3
3
  Data = "data",
4
4
  Pretty = "pretty"
5
5
  }
6
+ export interface TableColumnFilterOption {
7
+ id: string;
8
+ label: string;
9
+ }
10
+ /**
11
+ * Opt-in override for a column's filter UI + predicate.
12
+ * When provided:
13
+ * - The filter dropdown renders the given `options` instead of unique cell values.
14
+ * - `filters[columnKey]` holds the selected option ids.
15
+ * - `filterRow` is called for every row to decide inclusion when at least one option is selected.
16
+ */
17
+ export interface TableColumnFilterOverride {
18
+ options: TableColumnFilterOption[];
19
+ filterRow: (row: TableRow, selectedIds: string[]) => boolean;
20
+ }
6
21
  export interface TableColumn {
7
22
  key: string;
8
23
  label: string;
9
24
  withTooltip?: boolean;
25
+ tooltip?: string;
10
26
  noSort?: boolean;
11
27
  noFilter?: boolean;
28
+ filterOverride?: TableColumnFilterOverride;
12
29
  flex?: CSSProperties['flex'];
13
30
  minWidth?: CSSProperties['minWidth'];
14
31
  textAlign?: CSSProperties['textAlign'];
@@ -1 +1 @@
1
- export{aD as Autocomplete,$ as Badge,q as Button,B as ButtonSize,ft as ButtonTab,fu as ButtonTabList,a as ButtonVariants,d as Checkbox,fv as CheckboxList,aF as CheckboxSize,bW as CliCommand,bI as DataCard,bp as Drawer,ar as DropData,bH as DropDataAlignX,bG as DropDataAlignY,bh as DropDown,j as FieldMessage,i as FieldTitle,fw as Header,e6 as HoverActions,bc as IconButton,bd as IconButtonSize,I as Input,p as InputList,m as InputTable,bS as Island,be as Loader,fx as Modal,fy as Navbar,N as NoData,P as Note,al as Radio,fz as RadioGroup,fA as RadioSize,e0 as Search,S as SectionCard,fB as SectionCardSize,x as Segment,ad as SegmentSize,cb as SegmentVariant,b_ as StatusCard,bT as Stepper,bQ as Table,bR as TableVariant,fC as Tag,y as TextArea,b$ as TextCard,n as Toggle,o as ToggleLabelAlign,fD as ToggleList,aO as ToggleSize,fE as ToggleVariant,T as Typography,e as TypographySize,bl as TypographyVariants,cc as WarningModal}from"../chunks/ui-components-BRgXOh8V.js";import"../icons.js";import"react/jsx-runtime";import"styled-components";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{aE as Autocomplete,a0 as Badge,q as Button,B as ButtonSize,fu as ButtonTab,fv as ButtonTabList,a as ButtonVariants,d as Checkbox,fw as CheckboxList,aG as CheckboxSize,bY as CliCommand,bK as DataCard,br as Drawer,as as DropData,bJ as DropDataAlignX,bI as DropDataAlignY,bj as DropDown,j as FieldMessage,i as FieldTitle,fx as Header,e7 as HoverActions,be as IconButton,bf as IconButtonSize,I as Input,p as InputList,m as InputTable,bU as Island,bg as Loader,fy as Modal,fz as Navbar,N as NoData,P as Note,am as Radio,fA as RadioGroup,fB as RadioSize,e1 as Search,S as SectionCard,fC as SectionCardSize,x as Segment,ae as SegmentSize,cc as SegmentVariant,c0 as StatusCard,bV as Stepper,bS as Table,bT as TableVariant,fD as Tag,y as TextArea,c1 as TextCard,n as Toggle,o as ToggleLabelAlign,fE as ToggleList,aP as ToggleSize,fF as ToggleVariant,T as Typography,e as TypographySize,bn as TypographyVariants,cd as WarningModal}from"../chunks/ui-components-Bn9natqF.js";import"../icons.js";import"react/jsx-runtime";import"styled-components";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{cP as AutocompleteInput,d7 as Badge,d9 as Button,cC as CancelWarning,b as CenterThis,ck as Checkbox,C as Code,cG as ConditionDetails,cH as DataCard,ci as DataCardFieldTypes,dN as DataCardFields,fe as DataFinger,db as DataTab,cB as DeleteWarning,e4 as DescribeRow,D as Divider,cv as DocsButton,cA as Drawer,ff as DrawerFooter,fg as DrawerHeader,dx as Dropdown,fh as ErrorBoundary,dE as ExtendArrow,bV as FadeLoader,cl as FieldError,cj as FieldLabel,F as FlexColumn,c as FlexRow,fi as Header,cr as IconButton,ee as IconGroup,d1 as IconTitleBadge,cY as IconWrapped,d$ as IconsNav,fj as ImageControlled,cm as Input,cq as InputList,cn as InputTable,d4 as InteractiveTable,cp as KeyValueInputsList,fk as LoadingText,cM as Modal,cN as ModalBody,cw as MonitorsCheckboxes,c_ as MonitorsIcons,cQ as NavigationButtons,d5 as NoDataFound,cO as NotificationNote,fl as Overlay,bv as Padding,bP as PageContent,ds as Popup,eg as PopupForm,el as ScrollX,df as ScrollY,cu as SectionTitle,ct as Segment,du as SelectionButton,dj as SkeletonLoader,cS as Status,dM as Stepper,fm as TabList,c$ as TableContainer,d0 as TableTitleWrap,d3 as TableWrap,dP as Tag,cy as Text,cx as TextArea,co as Toggle,ej as ToggleCodeComponent,U as Tooltip,d6 as TraceLoader,c1 as UpgradeRequiredWrapper,dt as VerticalScroll,dS as WarningModal,fn as getLinksFromText,fo as getStrongsFromText,fp as renderText}from"./chunks/ui-components-BRgXOh8V.js";import"./icons.js";import"react/jsx-runtime";import"styled-components";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{cQ as AutocompleteInput,d8 as Badge,da as Button,cD as CancelWarning,b as CenterThis,cl as Checkbox,C as Code,cH as ConditionDetails,cI as DataCard,cj as DataCardFieldTypes,dO as DataCardFields,ff as DataFinger,dc as DataTab,cC as DeleteWarning,e5 as DescribeRow,D as Divider,cw as DocsButton,cB as Drawer,fg as DrawerFooter,fh as DrawerHeader,dy as Dropdown,fi as ErrorBoundary,dF as ExtendArrow,bX as FadeLoader,cm as FieldError,ck as FieldLabel,F as FlexColumn,c as FlexRow,fj as Header,cs as IconButton,ef as IconGroup,d2 as IconTitleBadge,cZ as IconWrapped,e0 as IconsNav,fk as ImageControlled,cn as Input,cr as InputList,co as InputTable,d5 as InteractiveTable,cq as KeyValueInputsList,fl as LoadingText,cN as Modal,cO as ModalBody,cx as MonitorsCheckboxes,c$ as MonitorsIcons,cR as NavigationButtons,d6 as NoDataFound,cP as NotificationNote,fm as Overlay,bx as Padding,bR as PageContent,dt as Popup,eh as PopupForm,em as ScrollX,dg as ScrollY,cv as SectionTitle,cu as Segment,dv as SelectionButton,dk as SkeletonLoader,cT as Status,dN as Stepper,fn as TabList,d0 as TableContainer,d1 as TableTitleWrap,d4 as TableWrap,dQ as Tag,cz as Text,cy as TextArea,cp as Toggle,ek as ToggleCodeComponent,V as Tooltip,d7 as TraceLoader,c3 as UpgradeRequiredWrapper,du as VerticalScroll,dT as WarningModal,fo as getLinksFromText,fp as getStrongsFromText,fq as renderText}from"./chunks/ui-components-Bn9natqF.js";import"./icons.js";import"react/jsx-runtime";import"styled-components";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";
@@ -71,9 +71,9 @@ export declare const SAMPLING_DELETE_MODAL_TITLE = "Delete rule?";
71
71
  export declare const SAMPLING_DELETE_MODAL_DESCRIPTION = "Are you sure you want to delete this sampling rule?";
72
72
  export declare const SAMPLING_DELETE_MODAL_APPROVE = "Delete";
73
73
  export declare const SAMPLING_DELETE_MODAL_CANCEL = "Cancel";
74
- export declare const SAMPLING_AUTO_RULE_TITLE = "Auto rule - Kubernetes Health Probes";
75
- export declare const SAMPLING_HIGHLY_RELEVANT_AUTO_RULE_TITLE = "Auto rule - Keep All Error Traces";
76
- export declare const SAMPLING_COST_REDUCTION_AUTO_RULE_TITLE = "Auto rule - Drop Traces Cluster-Wide";
74
+ export declare const SAMPLING_AUTO_RULE_TITLE = "Kubernetes Health Probes";
75
+ export declare const SAMPLING_HIGHLY_RELEVANT_AUTO_RULE_TITLE = "Keep All Error Traces";
76
+ export declare const SAMPLING_COST_REDUCTION_AUTO_RULE_TITLE = "Drop Traces Cluster-Wide";
77
77
  export declare const SAMPLING_DUPLICATE_RULE_WARNING = "A rule with the same matching conditions already exists.";
78
78
  export declare const EDIT_NOISY_AUTO_RULE_DRAWER_TITLE = "Edit 'Noisy Operation' auto rule";
79
79
  export declare const EDIT_NOISY_AUTO_RULE_DRAWER_SUBTITLE = "Automatically detect and sample health probe traces across the cluster.";
package/lib/constants.js CHANGED
@@ -1 +1 @@
1
- export{b9 as ACTION_ATTRIBUTE_OPTIONS,cF as ACTION_OPTIONS,ba as ACTION_SAMPLER_OPTIONS,f0 as ALL_SOURCES,bq as BTN_CANCEL,br as BTN_CREATE_RULE,bL as BTN_DELETE_RULE,c4 as BTN_EDIT_AUTO_RULE,bK as BTN_EDIT_RULE,bw as BTN_SAVE,bJ as BTN_SAVE_RULE,bO as BUTTON_TEXTS,bs as CATEGORY_DESCRIPTIONS,aT as CATEGORY_LABELS,bt as CATEGORY_TITLES,a4 as DEFAULT_CLUSTER_ID,a3 as DEFAULT_CLUSTER_NAME,dD as DEFAULT_DATA_STREAM_NAME,au as DESC_DROP_PERCENTAGE,aH as DESC_DURATION,aL as DESC_ERRORS,at as DESC_KEEP_PERCENTAGE,ah as DESC_OPERATION,aA as DESC_SOURCE_SCOPE,bf as DESTINATION_CATEGORIES,a0 as DISPLAY_LANGUAGES,bb as DISPLAY_TITLES,w as DOCS_BASE_URL,G as DestinationCategoryTypes,bB as EDIT_COST_REDUCTION_AUTO_RULE_DRAWER_SUBTITLE,bC as EDIT_COST_REDUCTION_AUTO_RULE_DRAWER_TITLE,bz as EDIT_HIGHLY_RELEVANT_AUTO_RULE_DRAWER_SUBTITLE,bA as EDIT_HIGHLY_RELEVANT_AUTO_RULE_DRAWER_TITLE,bx as EDIT_NOISY_AUTO_RULE_DRAWER_SUBTITLE,by as EDIT_NOISY_AUTO_RULE_DRAWER_TITLE,bM as EDIT_TITLES,aS as EMPTY_VALUE,c3 as FILTER_TYPE_ALL,O as FORM_ALERTS,bj as INSTRUMENTATION_RULE_OPTIONS,aK as LABEL_CUSTOM_DURATION,az as LABEL_CUSTOM_PERCENTAGE,c2 as LABEL_DISABLED_RULE,aW as LABEL_DROP_ALL,b8 as LABEL_DROP_AT_MOST,aw as LABEL_DROP_PERCENTAGE,ao as LABEL_HTTP_ROUTE,aq as LABEL_HTTP_ROUTE_PREFIX,as as LABEL_KAFKA_TOPIC,aX as LABEL_KEEP_ALL,ax as LABEL_KEEP_AT_LEAST,ay as LABEL_KEEP_AT_MOST,av as LABEL_KEEP_PERCENTAGE,aJ as LABEL_KEEP_TRACES_DURATION,aN as LABEL_KEEP_TRACES_ERRORS,aU as LABEL_METHOD,ag as LABEL_NOTE,aQ as LABEL_NO_PREVIEW,aZ as LABEL_OPERATION_TYPE,b3 as LABEL_RULE_ENABLED,ab as LABEL_RULE_NAME,ac as LABEL_RULE_TYPE,aV as LABEL_SAMPLE,ak as LABEL_SERVER_ADDRESS,an as LABEL_TEMPLATED_PATH,ap as LABEL_TEMPLATED_PATH_PREFIX,f1 as LANGUAGE_OPTIONS,dy as MONITORS_OPTIONS,aC as NOTE_ENTIRE_CLUSTER,a$ as OPERATION_ALL,a_ as OPERATION_HTTP_CLIENT,aY as OPERATION_HTTP_SERVER,b0 as OPERATION_KAFKA_CONSUMER,b1 as OPERATION_KAFKA_PRODUCER,f2 as OTEL_DISTRO_NAME_OPTIONS,ae as PLACEHOLDER_NOTE,am as PLACEHOLDER_ROUTE,aa as PLACEHOLDER_RULE_NAME,aE as PLACEHOLDER_SEARCH_SOURCE,aj as PLACEHOLDER_SERVER_ADDRESS,b2 as SAMPLING_AUTO_RULE_TITLE,c8 as SAMPLING_BTN_CREATE_RULE,c6 as SAMPLING_BTN_DOCS,c7 as SAMPLING_BTN_REFRESH,b6 as SAMPLING_COST_REDUCTION_AUTO_RULE_TITLE,ce as SAMPLING_DELETE_MODAL_APPROVE,cd as SAMPLING_DELETE_MODAL_CANCEL,cf as SAMPLING_DELETE_MODAL_DESCRIPTION,cg as SAMPLING_DELETE_MODAL_TITLE,bu as SAMPLING_DRAWER_WIDTH,c5 as SAMPLING_DUPLICATE_RULE_WARNING,b5 as SAMPLING_HIGHLY_RELEVANT_AUTO_RULE_TITLE,c9 as SAMPLING_PAGE_DESCRIPTION,ca as SAMPLING_PAGE_TITLE,b7 as SECTION_DROP_PERCENTAGE,aI as SECTION_DURATION,aM as SECTION_ERRORS,b4 as SECTION_KEEP_PERCENTAGE,ai as SECTION_OPERATION,aP as SECTION_SAMPLING_PREVIEW,aB as SECTION_SOURCE_SCOPE,dz as STORAGE_KEYS,f3 as TOKEN_ABOUT_TO_EXPIRE,af as TOOLTIP_NOTE,aR as UNNAMED_RULE}from"./chunks/ui-components-BRgXOh8V.js";import"./icons.js";import"react/jsx-runtime";import"styled-components";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{bb as ACTION_ATTRIBUTE_OPTIONS,cG as ACTION_OPTIONS,bc as ACTION_SAMPLER_OPTIONS,f1 as ALL_SOURCES,bs as BTN_CANCEL,bt as BTN_CREATE_RULE,bN as BTN_DELETE_RULE,aQ as BTN_EDIT_AUTO_RULE,bM as BTN_EDIT_RULE,by as BTN_SAVE,bL as BTN_SAVE_RULE,bQ as BUTTON_TEXTS,bu as CATEGORY_DESCRIPTIONS,aV as CATEGORY_LABELS,bv as CATEGORY_TITLES,a5 as DEFAULT_CLUSTER_ID,a4 as DEFAULT_CLUSTER_NAME,dE as DEFAULT_DATA_STREAM_NAME,av as DESC_DROP_PERCENTAGE,aI as DESC_DURATION,aM as DESC_ERRORS,au as DESC_KEEP_PERCENTAGE,ai as DESC_OPERATION,aB as DESC_SOURCE_SCOPE,bh as DESTINATION_CATEGORIES,a1 as DISPLAY_LANGUAGES,bd as DISPLAY_TITLES,w as DOCS_BASE_URL,G as DestinationCategoryTypes,bD as EDIT_COST_REDUCTION_AUTO_RULE_DRAWER_SUBTITLE,bE as EDIT_COST_REDUCTION_AUTO_RULE_DRAWER_TITLE,bB as EDIT_HIGHLY_RELEVANT_AUTO_RULE_DRAWER_SUBTITLE,bC as EDIT_HIGHLY_RELEVANT_AUTO_RULE_DRAWER_TITLE,bz as EDIT_NOISY_AUTO_RULE_DRAWER_SUBTITLE,bA as EDIT_NOISY_AUTO_RULE_DRAWER_TITLE,bO as EDIT_TITLES,aU as EMPTY_VALUE,c5 as FILTER_TYPE_ALL,O as FORM_ALERTS,bl as INSTRUMENTATION_RULE_OPTIONS,aL as LABEL_CUSTOM_DURATION,aA as LABEL_CUSTOM_PERCENTAGE,c4 as LABEL_DISABLED_RULE,aY as LABEL_DROP_ALL,ba as LABEL_DROP_AT_MOST,ax as LABEL_DROP_PERCENTAGE,ap as LABEL_HTTP_ROUTE,ar as LABEL_HTTP_ROUTE_PREFIX,at as LABEL_KAFKA_TOPIC,aZ as LABEL_KEEP_ALL,ay as LABEL_KEEP_AT_LEAST,az as LABEL_KEEP_AT_MOST,aw as LABEL_KEEP_PERCENTAGE,aK as LABEL_KEEP_TRACES_DURATION,aO as LABEL_KEEP_TRACES_ERRORS,aW as LABEL_METHOD,ah as LABEL_NOTE,aR as LABEL_NO_PREVIEW,a$ as LABEL_OPERATION_TYPE,b5 as LABEL_RULE_ENABLED,ac as LABEL_RULE_NAME,ad as LABEL_RULE_TYPE,aX as LABEL_SAMPLE,al as LABEL_SERVER_ADDRESS,ao as LABEL_TEMPLATED_PATH,aq as LABEL_TEMPLATED_PATH_PREFIX,f2 as LANGUAGE_OPTIONS,dz as MONITORS_OPTIONS,aD as NOTE_ENTIRE_CLUSTER,b1 as OPERATION_ALL,b0 as OPERATION_HTTP_CLIENT,a_ as OPERATION_HTTP_SERVER,b2 as OPERATION_KAFKA_CONSUMER,b3 as OPERATION_KAFKA_PRODUCER,f3 as OTEL_DISTRO_NAME_OPTIONS,af as PLACEHOLDER_NOTE,an as PLACEHOLDER_ROUTE,ab as PLACEHOLDER_RULE_NAME,aF as PLACEHOLDER_SEARCH_SOURCE,ak as PLACEHOLDER_SERVER_ADDRESS,b4 as SAMPLING_AUTO_RULE_TITLE,c9 as SAMPLING_BTN_CREATE_RULE,c7 as SAMPLING_BTN_DOCS,c8 as SAMPLING_BTN_REFRESH,b8 as SAMPLING_COST_REDUCTION_AUTO_RULE_TITLE,cf as SAMPLING_DELETE_MODAL_APPROVE,ce as SAMPLING_DELETE_MODAL_CANCEL,cg as SAMPLING_DELETE_MODAL_DESCRIPTION,ch as SAMPLING_DELETE_MODAL_TITLE,bw as SAMPLING_DRAWER_WIDTH,c6 as SAMPLING_DUPLICATE_RULE_WARNING,b7 as SAMPLING_HIGHLY_RELEVANT_AUTO_RULE_TITLE,ca as SAMPLING_PAGE_DESCRIPTION,cb as SAMPLING_PAGE_TITLE,b9 as SECTION_DROP_PERCENTAGE,aJ as SECTION_DURATION,aN as SECTION_ERRORS,b6 as SECTION_KEEP_PERCENTAGE,aj as SECTION_OPERATION,aS as SECTION_SAMPLING_PREVIEW,aC as SECTION_SOURCE_SCOPE,dA as STORAGE_KEYS,f4 as TOKEN_ABOUT_TO_EXPIRE,ag as TOOLTIP_NOTE,aT as UNNAMED_RULE}from"./chunks/ui-components-Bn9natqF.js";import"./icons.js";import"react/jsx-runtime";import"styled-components";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,5 +1,5 @@
1
1
  import { type FC } from 'react';
2
- import { type ColoredSpanPart } from '@/snippets/_v2/colored-span';
2
+ import type { ColoredSpanPart } from '@/snippets/_v2/colored-span';
3
3
  export interface SamplingPreviewProps {
4
4
  summary: ColoredSpanPart[];
5
5
  }
@@ -1,8 +1,9 @@
1
- import { type FC } from 'react';
1
+ import React, { type FC } from 'react';
2
2
  import { ColoredSpanPart } from '@/snippets/_v2/colored-span';
3
3
  export interface AutoRuleCardProps {
4
- title: string;
4
+ title?: string;
5
5
  summary: ColoredSpanPart[];
6
- onEdit: () => void;
6
+ onEdit?: () => void;
7
+ renderAction?: () => React.ReactNode;
7
8
  }
8
9
  export declare const AutoRuleCard: FC<AutoRuleCardProps>;
@@ -2,7 +2,8 @@ import React, { type PropsWithChildren } from 'react';
2
2
  import { type SVG } from '@/types';
3
3
  import { type DrawerProps } from '@/components';
4
4
  interface OverviewDrawerProps extends PropsWithChildren {
5
- width?: number;
5
+ /** Number → pixels (with internal +64 padding compensation). String → raw CSS value passed through as-is (e.g. `"95vw"`). */
6
+ width?: number | string;
6
7
  title: string;
7
8
  titleTooltip?: string;
8
9
  hideEditTitleFromEdit?: boolean;
@@ -6,5 +6,7 @@ export interface FlameGraphCanvasProps {
6
6
  /** Non-empty: only stack frames whose name contains the query are drawn (case-insensitive). */
7
7
  searchQuery?: string;
8
8
  minHostHeight?: number;
9
+ /** Notifies the parent whenever the user toggles fullscreen, so the parent can react (e.g. widen the surrounding drawer). */
10
+ onFullscreenChange?: (isFullscreen: boolean) => void;
9
11
  }
10
12
  export declare const FlameGraphCanvas: FC<FlameGraphCanvasProps>;
@@ -38,6 +38,15 @@ export declare function flameRectsEqual(a: FlameRect, b: FlameRect): boolean;
38
38
  * Parent/child follows horizontal containment on adjacent levels, matching merged flame graphs.
39
39
  */
40
40
  export declare function collectSubtreeFlameRects(all: FlameRect[], root: FlameRect): FlameRect[];
41
+ /**
42
+ * Pick a sensible "+" zoom target for the toolbar zoom-in button.
43
+ *
44
+ * Returns the largest rect contained in the current view (or the entire profile when `zoomRoot` is null)
45
+ * whose size is strictly smaller than the view — guaranteeing a visible zoom step. Ties on size break
46
+ * toward shallower levels, so we prefer the most direct child instead of jumping deep into the call tree.
47
+ * Returns `null` when no further zoom is meaningful (e.g. already at a leaf).
48
+ */
49
+ export declare function zoomInTarget(fb: Flamebearer, zoomRoot: FlameRect | null): FlameRect | null;
41
50
  export declare function flameBarMatchesSearch(name: string, query: string): boolean;
42
51
  /** Pixel layout for one flame bar (canvas + hit testing). */
43
52
  export type FlameLayoutBar = {
@@ -29,6 +29,8 @@ export interface ProfilingProps {
29
29
  enableProfiling: (source: SourceIdentifier) => Promise<EnableOrReleaseProfilingResult | undefined>;
30
30
  releaseProfiling: (source: SourceIdentifier) => Promise<EnableOrReleaseProfilingResult | undefined>;
31
31
  fetchSourceProfiling: (source: SourceIdentifier) => Promise<SourceProfilingResult | undefined>;
32
+ /** Forwarded from the inner FlameGraphCanvas; lets the embedding container (e.g. SourceDrawer) react to fullscreen toggles. */
33
+ onFlameFullscreenChange?: (isFullscreen: boolean) => void;
32
34
  }
33
35
  export declare const Profiling: FC<ProfilingProps>;
34
36
  export {};
@@ -1,6 +1,8 @@
1
1
  import { type FC } from 'react';
2
+ import { ProgrammingLanguages } from '@/types';
2
3
  import { type SymbolTableRow } from './flamebearer';
3
4
  export interface SymbolTableProps {
4
5
  rows: SymbolTableRow[];
6
+ languages?: ProgrammingLanguages[] | null;
5
7
  }
6
8
  export declare const SymbolTable: FC<SymbolTableProps>;