@reopt-ai/opt-ui 1.9.0 → 1.10.0
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.
- package/COMPONENT_CATALOG.md +1 -1
- package/dist/core/index.cjs +98 -98
- package/dist/core/index.d.cts +2 -2
- package/dist/core/index.d.ts +2 -2
- package/dist/core/index.js +2 -2
- package/dist/docs/02-components/01-core.md +1 -1
- package/dist/docs/02-components/02-visuals.md +1 -1
- package/dist/docs/02-components/03-shells.md +1 -1
- package/dist/docs/02-components/04-surfaces.md +1 -1
- package/dist/docs/02-components/index.md +1 -1
- package/dist/{field-sidebar-mFHemxBz.cjs → field-sidebar-B6Ndr8HE.cjs} +292 -285
- package/dist/{field-sidebar-B7QkWvMG.js → field-sidebar-BXjvV7Cz.js} +12 -5
- package/dist/{field-sidebar-B7QkWvMG.js.map → field-sidebar-BXjvV7Cz.js.map} +1 -1
- package/dist/{field-sidebar-B5vk3luQ.d.cts → field-sidebar-DWfJAJlx.d.ts} +14 -2
- package/dist/{field-sidebar-Dk9gJGA_.d.ts.map → field-sidebar-DWfJAJlx.d.ts.map} +1 -1
- package/dist/{field-sidebar-Dk9gJGA_.d.ts → field-sidebar-nwcE9LC4.d.cts} +14 -2
- package/dist/{field-sidebar-B5vk3luQ.d.cts.map → field-sidebar-nwcE9LC4.d.cts.map} +1 -1
- package/dist/index.cjs +558 -558
- package/dist/index.d.cts +3 -3
- package/dist/index.d.cts.map +1 -1
- package/dist/index.d.ts +3 -3
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -3
- package/dist/{key-pad-menu-BFd79JoS.js → key-pad-menu-BQunU20e.js} +6 -134
- package/dist/key-pad-menu-BQunU20e.js.map +1 -0
- package/dist/{key-pad-menu-EEb6Ho5h.d.ts → key-pad-menu-BsgJMjD4.d.ts} +3 -47
- package/dist/key-pad-menu-BsgJMjD4.d.ts.map +1 -0
- package/dist/{key-pad-menu-DoGskWbp.cjs → key-pad-menu-D5mQcS5v.cjs} +228 -362
- package/dist/{key-pad-menu-D8OS_VCT.d.cts → key-pad-menu-DfZbeXhG.d.cts} +3 -47
- package/dist/key-pad-menu-DfZbeXhG.d.cts.map +1 -0
- package/dist/shells/index.cjs +1 -1
- package/dist/shells/index.d.cts +1 -1
- package/dist/shells/index.d.ts +1 -1
- package/dist/shells/index.js +1 -1
- package/dist/{field-token-CSOrU5gl.d.ts → text-truncate-BGr7bB_8.d.cts} +46 -2
- package/dist/text-truncate-BGr7bB_8.d.cts.map +1 -0
- package/dist/{field-token-CSOrU5gl.d.cts → text-truncate-BGr7bB_8.d.ts} +46 -2
- package/dist/text-truncate-BGr7bB_8.d.ts.map +1 -0
- package/dist/{highlight-CGcrYGMC.cjs → text-truncate-CxdzAnhS.cjs} +134 -0
- package/dist/{highlight-C2sfnJN8.js → text-truncate-j6X3z7Pv.js} +131 -3
- package/dist/text-truncate-j6X3z7Pv.js.map +1 -0
- package/package.json +2 -2
- package/dist/field-token-CSOrU5gl.d.cts.map +0 -1
- package/dist/field-token-CSOrU5gl.d.ts.map +0 -1
- package/dist/highlight-C2sfnJN8.js.map +0 -1
- package/dist/key-pad-menu-BFd79JoS.js.map +0 -1
- package/dist/key-pad-menu-D8OS_VCT.d.cts.map +0 -1
- package/dist/key-pad-menu-EEb6Ho5h.d.ts.map +0 -1
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
|
|
2
|
-
import {
|
|
2
|
+
import { R as StatCard$1 } from "./text-truncate-BGr7bB_8.cjs";
|
|
3
3
|
import * as React$1 from "react";
|
|
4
4
|
import { CSSProperties, ComponentPropsWithoutRef, HTMLAttributes, ImgHTMLAttributes, ReactNode } from "react";
|
|
5
5
|
import { AccordionContentProps as PrimAccordionContentProps, AccordionItemProps as PrimAccordionItemProps, AccordionRootProps, AccordionTriggerProps as PrimAccordionTriggerProps, AlertDialogPanelProps, ComboboxGroupLabelProps, ComboboxGroupProps, ComboboxInputProps, ComboboxItemProps, ComboboxPopoverProps, ComboboxRootProps, Composite, CompositeItem, CompositeProvider, CompositeRow, DialogPanelProps, DialogRootProps, DisclosureContentProps as PrimDisclosureContentProps, DisclosureRootProps, DisclosureTriggerProps as PrimDisclosureTriggerProps, FormCheckboxProps, FormDescriptionProps, FormErrorProps, FormFieldProps, FormGroupLabelProps, FormGroupProps, FormInputProps, FormLabelProps, FormProvider, FormPushProps, FormRadioGroupProps, FormRadioProps, FormRemoveProps, FormResetProps, FormRootProps, FormStoreInstance, FormSubmitProps, FormSwitchProps, MenuButtonArrowProps, MenuItemCheckboxProps, MenuItemProps, MenuItemRadioProps, MenuPopoverProps, MenuRootProps, MenuSeparatorProps, MenuTriggerProps, MenubarContainerProps, MenubarRootProps, PopoverCloseProps, PopoverContentProps, PopoverRootProps, PopoverTriggerProps, SelectItemProps, SelectLabelProps, SelectPopoverProps, SelectRootProps, SelectTriggerProps, TabListProps, TabPanelProps, TabProps, TabsRootProps, ToggleGroupProps, ToggleProps, ToolbarButtonProps, ToolbarContainerProps, ToolbarRootProps, ToolbarSeparatorProps, TooltipAnchorProps, TooltipProps, TooltipProviderProps, useFieldValue, useFormContext, useFormStore } from "@reopt-ai/opt-ui-primitives";
|
|
@@ -1944,50 +1944,6 @@ interface ExpressionGroupProps {
|
|
|
1944
1944
|
*/
|
|
1945
1945
|
declare function ExpressionGroup({ children, display, className, "aria-label": ariaLabel }: ExpressionGroupProps): import("react").JSX.Element;
|
|
1946
1946
|
//#endregion
|
|
1947
|
-
//#region src/core/text-truncate.d.ts
|
|
1948
|
-
/** Where the characters are dropped from. */
|
|
1949
|
-
type TruncationSide = "end" | "start" | "middle" | "startEnd";
|
|
1950
|
-
/** Props for the text truncate component. */
|
|
1951
|
-
interface TextTruncateProps {
|
|
1952
|
-
text: string;
|
|
1953
|
-
/**
|
|
1954
|
-
* `end` is the browser default. `start` keeps a filename, `startEnd` keeps
|
|
1955
|
-
* both ends of a path or id, `middle` keeps a timestamp buried in a line.
|
|
1956
|
-
*/
|
|
1957
|
-
truncation?: TruncationSide;
|
|
1958
|
-
ellipsis?: string;
|
|
1959
|
-
/**
|
|
1960
|
-
* Fixed width in pixels. Omit to measure the container, which is what a
|
|
1961
|
-
* table cell wants.
|
|
1962
|
-
*/
|
|
1963
|
-
width?: number;
|
|
1964
|
-
/**
|
|
1965
|
-
* Render the visible text yourself — to wrap the kept part in a `<mark>`,
|
|
1966
|
-
* say. Receives the already-truncated string.
|
|
1967
|
-
*/
|
|
1968
|
-
children?: (truncated: string) => React.ReactNode;
|
|
1969
|
-
className?: string;
|
|
1970
|
-
}
|
|
1971
|
-
/**
|
|
1972
|
-
* TextTruncate — drops characters from the part of a string that identifies it
|
|
1973
|
-
* least.
|
|
1974
|
-
*
|
|
1975
|
-
* CSS can only cut the end. That is the wrong end for the strings analytics
|
|
1976
|
-
* shows most: two URLs that differ in their query string, two ids that share a
|
|
1977
|
-
* prefix, a stack frame whose filename is at the tail. This measures the real
|
|
1978
|
-
* text in the real font against the real available width and cuts where the
|
|
1979
|
-
* caller says.
|
|
1980
|
-
*
|
|
1981
|
-
* The full string stays in the accessibility tree and in `title`, so
|
|
1982
|
-
* truncation never costs the reader information — only space.
|
|
1983
|
-
*
|
|
1984
|
-
* @example
|
|
1985
|
-
* ```tsx
|
|
1986
|
-
* <TextTruncate text={event.url} truncation="startEnd" />
|
|
1987
|
-
* ```
|
|
1988
|
-
*/
|
|
1989
|
-
declare function TextTruncate({ text, truncation, ellipsis, width, children, className }: TextTruncateProps): import("react").JSX.Element;
|
|
1990
|
-
//#endregion
|
|
1991
1947
|
//#region src/core/highlight.d.ts
|
|
1992
1948
|
/** Props for the highlight component. */
|
|
1993
1949
|
interface HighlightProps {
|
|
@@ -2240,5 +2196,5 @@ interface KeyPadMenuProps {
|
|
|
2240
2196
|
*/
|
|
2241
2197
|
declare function KeyPadMenu({ items, label, selection, value, onValueChange, columns, size, hideLabel, className }: KeyPadMenuProps): import("react").JSX.Element;
|
|
2242
2198
|
//#endregion
|
|
2243
|
-
export {
|
|
2244
|
-
//# sourceMappingURL=key-pad-menu-
|
|
2199
|
+
export { DrawerSize as $, CardTitle as $i, StarRating as $n, TabPanelProps$1 as $r, FormColorPickerProps as $t, ShaderSurfaceHandle as A, TextElement as Aa, SkeletonText as Ai, FormSwitch as An, AlertDialogPanelProps$1 as Ar, CheckboxGroupProps as At, ShaderPresetCategory as B, BadgeProps as Bi, DEFAULT_PRESETS as Bn, DialogHeading as Br, PopoverRoot as Bt, Facet as C, Separator as Ca, Textarea as Ci, FormSelectPopover as Cn, ComboboxGroup as Cr, BlockLayoutProps as Ct, FacetItem as D, HeadingProps as Da, SkeletonCard as Di, FormStarRating as Dn, ComboboxPopover as Dr, RadioProps as Dt, FacetGroupProps as E, HeadingLevel as Ea, SkeletonAvatar as Ei, FormSliderProps as En, ComboboxItem as Er, RadioGroupProps as Et, SHADER_PRESETS as F, KbdProps as Fa, Alert as Fi, FormTextareaProps as Fn, DialogDismiss as Fr, DropdownSeparator as Ft, VirtualListProps as G, CardContentProps as Gi, DateRangePreset as Gn, SelectLabel as Gr, ConditionGroup as Gt, getShaderFragment as H, ButtonProps as Hi, DateRange as Hn, DialogRoot as Hr, ConditionBuilder as Ht, SHADER_PRESET_IDS as I, AlertProps as Ii, useFieldValue as In, DialogFooter as Ir, DropdownTrigger as It, DrawerClose as J, CardFooter as Ji, IconDef as Jn, SelectTrigger as Jr, StepBuilder as Jt, Pagination as K, CardDescription as Ki, TagInput as Kn, SelectPopover as Kr, ConditionOperator as Kt, ShaderParamKey as L, Spinner as Li, useFormContext as Ln, DialogFooterProps as Lr, PopoverClose as Lt, SHADER_OVERLAY_PARAM_KEYS as M, TextRole as Ma, SwitchProps as Mi, FormTagInput as Mn, DialogBodyProps as Mr, DropdownContent as Mt, SHADER_PARAM_FALLBACK as N, TextTone as Na, Input as Ni, FormTagInputProps as Nn, DialogDescription as Nr, DropdownItem as Nt, FacetProps as O, HeadingRole as Oa, SkeletonProps as Oi, FormStarRatingProps as On, ComboboxRoot as Or, Checkbox as Ot, SHADER_PARAM_KEYS as P, Kbd as Pa, InputProps as Pi, FormTextarea as Pn, DialogDisclosure as Pr, DropdownMenu as Pt, DrawerSide as Q, CardProps as Qi, ColorPickerProps as Qn, TabPanel as Qr, FormColorPicker as Qt, ShaderParamSpec as R, SpinnerProps as Ri, useFormStore as Rn, DialogHeader as Rr, PopoverContent as Rt, ExpressionTone as S, OtpFieldProps as Sa, AvatarProps as Si, FormSelectItem as Sn, ComboboxEmpty as Sr, BlockLayout as St, FacetGroupLabels as T, Heading as Ta, Skeleton as Ti, FormSlider as Tn, ComboboxInput as Tr, RadioGroup as Tt, getShaderPreset as U, Card as Ui, DateRangePicker as Un, DialogSize as Ur, ConditionBuilderProps as Ut, ShaderPresetId as V, Button as Vi, DateGranularity as Vn, DialogPanel as Vr, PopoverTrigger as Vt, VirtualList as W, CardContent as Wi, DateRangePickerProps as Wn, SelectItem as Wr, ConditionDef as Wt, DrawerPanelProps as X, CardHeader as Xi, IconPickerProps as Xn, TabList as Xr, StepDef as Xt, DrawerPanel as Y, CardFooterProps as Yi, IconPicker as Yn, Tab as Yr, StepBuilderProps as Yt, DrawerRoot as Z, CardHeaderProps as Zi, ColorPicker as Zn, TabListProps$1 as Zr, FormCheckbox as Zt, HighlightProps as _, Toggle as _a, Progress as _i, FormRadioGroup as _n, MenuRoot as _r, ScrollAreaProps as _t, InlineEditLabels as a, BreadcrumbItem as aa, DisclosureContent as ai, FormField as an, ToolbarButton as ar, PanelSize as at, ExpressionGroupProps as b, ToggleProps$1 as ba, AvatarGroup as bi, FormRoot as bn, MenubarContainer as br, BlockBaseProps as bt, ColorPaletteDisplay as c, StatCardProps as ca, Composite as ci, FormIconPicker as cn, ToolbarSeparator as cr, ResizablePanel as ct, ColorPalettePickerProps as d, AccordionRoot as da, CompositeRow as di, FormLabel as dn, TooltipProvider as dr, ResizablePanelProps as dt, CardTitleProps as ea, TabProps$1 as ei, FormControl as en, StarRatingProps as er, Logo as et, PaletteKind as f, AccordionRootProps as fa, CompositeZone as fi, FormNumberInput as fn, MenuButtonArrow as fr, Section as ft, Highlight as g, PrimAccordionTriggerProps as ga, CircularProgressProps as gi, FormRadio as gn, MenuPopover as gr, ScrollArea as gt, LiveRegionProps as h, PrimAccordionItemProps as ha, CircularProgress as hi, FormPush as hn, MenuItemRadio as hr, ContainerProps as ht, InlineEdit as i, Breadcrumb as ia, TabsVariant as ii, FormError as in, NumberInputProps as ir, PanelImperativeHandle as it, ShaderSurfaceProps as j, TextProps as ja, Switch as ji, FormSwitchProps$1 as jn, DialogBody as jr, CheckboxProps as jt, ShaderSurface as k, Text as ka, SkeletonTable as ki, FormSubmit as kn, AlertDialogPanel as kr, CheckboxGroup as kt, ColorPaletteDisplayProps as l, AccordionContent as la, CompositeItem as li, FormIconPickerProps as ln, Tooltip as lr, ResizablePanelGroup as lt, LiveRegion as m, PrimAccordionContentProps as ma, MeterProps as mi, FormProvider$1 as mn, MenuItemCheckbox as mr, Container as mt, KeyPadMenu as n, EmptyStateAction as na, TabsRoot as ni, FormDateRangePickerProps as nn, SliderProps as nr, GroupImperativeHandle as nt, InlineEditProps as o, BreadcrumbProps as oa, DisclosureRoot as oi, FormGroup as on, ToolbarContainer as or, ResizableHandle as ot, THEME_PALETTES as p, AccordionTrigger as pa, Meter as pi, FormNumberInputProps as pn, MenuItem as pr, SectionProps as pt, PaginationProps as q, CardDescriptionProps as qi, TagInputProps as qn, SelectRoot as qr, ConditionTypeRenderer as qt, KeyPadMenuProps as r, EmptyStateProps as ra, TabsRootProps$1 as ri, FormDescription as rn, NumberInput as rr, Layout as rt, ColorPalette as s, StatCard as sa, DisclosureTrigger as si, FormGroupLabel as sn, ToolbarRoot as sr, ResizableHandleProps as st, KeyPadItem as t, EmptyState as ta, TabStatus as ti, FormDateRangePicker as tn, Slider as tr, LogoProps as tt, ColorPalettePicker as u, AccordionItem as ua, CompositeProvider as ui, FormInput as un, TooltipAnchor as ur, ResizablePanelGroupProps as ut, Expression as v, ToggleGroup as va, ProgressProps as vi, FormRemove as vn, MenuSeparator as vr, PageHeader as vt, FacetGroup as w, SeparatorProps$1 as wa, TextareaProps as wi, FormSelectProps as wn, ComboboxGroupLabel as wr, Radio as wt, ExpressionProps as x, OtpField as xa, AvatarGroupProps as xi, FormSelect as xn, MenubarRoot as xr, createBlock as xt, ExpressionGroup as y, ToggleGroupProps$1 as ya, Avatar as yi, FormReset as yn, MenuTrigger as yr, PageHeaderProps as yt, ShaderPreset as z, Badge as zi, ComparisonMode as zn, DialogHeaderProps as zr, PopoverContentProps$1 as zt };
|
|
2200
|
+
//# sourceMappingURL=key-pad-menu-DfZbeXhG.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"key-pad-menu-DfZbeXhG.d.cts","names":[],"sources":["../src/core/kbd.tsx","../src/core/text.tsx","../src/core/heading.tsx","../src/core/separator.tsx","../src/core/otp-field.tsx","../src/core/toggle.tsx","../src/core/accordion.tsx","../src/core/stat-card.tsx","../src/core/breadcrumb.tsx","../src/core/empty-state.tsx","../src/core/card.tsx","../src/core/button.tsx","../src/core/badge.tsx","../src/core/spinner.tsx","../src/core/alert.tsx","../src/core/input.tsx","../src/core/switch.tsx","../src/core/skeleton.tsx","../src/core/textarea.tsx","../src/core/avatar.tsx","../src/core/progress.tsx","../src/core/meter.tsx","../src/core/composite-zone.tsx","../src/core/disclosure.tsx","../src/core/tabs.tsx","../src/core/select.tsx","../src/core/dialog.tsx","../src/core/combobox.tsx","../src/core/menu.tsx","../src/core/toolbar.tsx","../src/core/number-input.tsx","../src/core/slider.tsx","../src/core/star-rating.tsx","../src/core/color-picker.tsx","../src/core/icon-picker.tsx","../src/core/tag-input.tsx","../src/core/date-range-picker.tsx","../src/core/form.tsx","../src/core/step-builder.tsx","../src/core/condition-builder.tsx","../src/core/popover.tsx","../src/core/dropdown-menu.tsx","../src/core/checkbox.tsx","../src/core/radio-group.tsx","../src/core/block-layout.tsx","../src/core/create-block.tsx","../src/core/page-header.tsx","../src/core/scroll-area.tsx","../src/core/container.tsx","../src/core/section.tsx","../src/core/resizable.tsx","../src/core/logo.tsx","../src/core/drawer.tsx","../src/core/pagination.tsx","../src/core/virtual-list.tsx","../src/core/shader-presets.ts","../src/core/shader-surface.tsx","../src/core/facet.tsx","../src/core/expression.tsx","../src/core/highlight.tsx","../src/core/live-region.tsx","../src/core/color-palette.tsx","../src/core/inline-edit.tsx","../src/core/key-pad-menu.tsx"],"mappings":"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;;;;UC9ND,oBAAoB;EACnC;EACA;EACA;EACA,WAAW;EACX,YAAY;;;iBAqBE,SACd,SACA,MACA,SACA,UACA,WACA,WACA,UACA,uBACa,aACV,SACF,8BAAW,IAAA;;;;UCrCG,mBAAmB;EAClC;EACA;EACA;;EAEA;;EAEA;;;iBAiCc,QACd,SACA,MACA,KACA,UACA,cACA,WACA,aACG,SACF,6BAAU,IAAA;;;;UClDI,qBAAqB;EACpC;;;iBAUc,UACd,MACA,WACA,qBACe,0BACD,cACX,SACF,+BAAY,IAAA;;;;UCjBE,mBAAmB;EAClC;EACA;EACA,OAAO;EACP;EACA;;;iBA6Ec,QACd,SACA,OACA,MACA,aACA,WACA,WACA,aACG,SACF,6BAAU,IAAA;;;;UChFI,mBAAmB,KAClC;EAGA;EACA;EACA;EACA,WAAW;EACX,YAAY;EACZ;EACA;;cAKW,uBAAK,0BAAA,6BAAA,cAAA;;;;UCdD,oBAAoB,KACnC;EAGA;EACA;EACA;EACA;;EAEA;EACA;EACA;EACA,YAAY;EACZ;;cAqBW,wBAAM,0BAAA,8BAAA,cAAA;;;;UC/CF,sBAAsB;EACrC;EACA;EACA;EACA;EACA;;;iBAUc,WACd,SACA,OACA,QACA,OACA,UACA,WACA,UACG,SACF,gCAAa,IAAA;;iBAsDA,eACd,OACA,cACG,SACF,KAAK;EAA8B;oBAAgB,IAAA;;iBActC,iBACd,MACA,cACG,SACF,KAAK;EAAmD;oBAAe,IAAA;;iBAe1D,eACd,cACG,SACF,KAAK,4CAAyB,IAAA;;iBAgBjB,gBACd,MACA,SACA;EAEA;EACA;EACA;oBACD,IAAA;;;;UCnIgB,sBAAsB;EACrC;EACA;EACA;EACA;EACA;EACA;;cAYW,0BAAQ,0BAAA,gCAAA,cAAA;;;;KCtBT;;UAwEK,oBAAoB;EACnC;;EAEA;;EAEA;EACA,cAAc,kBAAkB;EAChC,iBAAiB,kBAAkB;EACnC;EACA;EACA;EACA,WAAW;EACX;;EAEA,yBAAyB,QAAQ;;;iBAsDnB,SACd,KACA,QACA,OACA,aACA,gBACA,KACA,MACA,MACA,UACA,QACA,WACA,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"}
|
package/dist/shells/index.cjs
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
"use client";
|
|
3
3
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
4
|
-
const require_field_sidebar = require("../field-sidebar-
|
|
4
|
+
const require_field_sidebar = require("../field-sidebar-B6Ndr8HE.cjs");
|
|
5
5
|
let _reopt_ai_opt_charts = require("@reopt-ai/opt-charts");
|
|
6
6
|
exports.AppMenubar = require_field_sidebar.AppMenubar;
|
|
7
7
|
exports.BranchSelect = require_field_sidebar.BranchSelect;
|
package/dist/shells/index.d.cts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
|
|
2
|
-
import { $ as FailureListProps, A as LogTable, At as SidebarNav, B as TimeRangeControlLabels, Bt as CommandPaletteTrigger, Ct as SettingsFormProps, D as LogColumnPriority, Dt as ContentTabsProps, E as LogColumn, Et as ContentTabs, F as TimeSeriesPanelLabels, Ft as StatusSelectProps, G as WorkflowCanvasProps, H as TimeRangePreset, Ht as CommandPalette, I as TimeSeriesPanelProps, It as SearchCombobox, J as KeyValueEditorLabels, K as WorkflowCanvasStep, L as DEFAULT_TIME_PRESETS, Lt as SearchComboboxProps, M as LogTableLabels, Mt as AppMenubar, N as LogTableProps, Nt as AppMenubarProps, O as LogDensity, Ot as EditorToolbar, P as TimeSeriesPanel, Pt as StatusSelect, Q as FailureListLabels, R as RefreshSetting, Rt as DashboardGrid, St as SettingsForm, T as LogCellAction, Tt as FaqAccordionProps, U as WorkflowCanvas, Ut as CommandPaletteProps, V as TimeRangeControlProps, Vt as CommandPaletteTriggerProps, W as WorkflowCanvasConnection, X as KeyValueEntry, Y as KeyValueEditorProps, Z as FailureList, _t as EnvPanelProps, a as FieldValueCount, at as ToastProviderProps, bt as DeploymentTimeline, c as QueryBarProps, ct as useToast, dt as DataTableProps, et as NotificationToast, ft as DomainTable, gt as EnvPanel, ht as BranchSelectProps, i as FieldSummary, it as ToastProvider, j as LogTableHandle, jt as SidebarNavProps, k as LogSort, kt as EditorToolbarProps, l as QueryField, lt as ColumnDef, mt as BranchSelect, n as FieldSidebarLabels, nt as ToastContextValue, o as QueryBar, pt as DomainTableProps, q as KeyValueEditor, r as FieldSidebarProps, rt as ToastMessage, s as QueryBarLabels, t as FieldSidebar, ut as DataTable, vt as ProjectSwitcher, wt as FaqAccordion, xt as DeploymentTimelineProps, yt as ProjectSwitcherProps, z as TimeRangeControl, zt as DashboardGridProps } from "../field-sidebar-
|
|
2
|
+
import { $ as FailureListProps, A as LogTable, At as SidebarNav, B as TimeRangeControlLabels, Bt as CommandPaletteTrigger, Ct as SettingsFormProps, D as LogColumnPriority, Dt as ContentTabsProps, E as LogColumn, Et as ContentTabs, F as TimeSeriesPanelLabels, Ft as StatusSelectProps, G as WorkflowCanvasProps, H as TimeRangePreset, Ht as CommandPalette, I as TimeSeriesPanelProps, It as SearchCombobox, J as KeyValueEditorLabels, K as WorkflowCanvasStep, L as DEFAULT_TIME_PRESETS, Lt as SearchComboboxProps, M as LogTableLabels, Mt as AppMenubar, N as LogTableProps, Nt as AppMenubarProps, O as LogDensity, Ot as EditorToolbar, P as TimeSeriesPanel, Pt as StatusSelect, Q as FailureListLabels, R as RefreshSetting, Rt as DashboardGrid, St as SettingsForm, T as LogCellAction, Tt as FaqAccordionProps, U as WorkflowCanvas, Ut as CommandPaletteProps, V as TimeRangeControlProps, Vt as CommandPaletteTriggerProps, W as WorkflowCanvasConnection, X as KeyValueEntry, Y as KeyValueEditorProps, Z as FailureList, _t as EnvPanelProps, a as FieldValueCount, at as ToastProviderProps, bt as DeploymentTimeline, c as QueryBarProps, ct as useToast, dt as DataTableProps, et as NotificationToast, ft as DomainTable, gt as EnvPanel, ht as BranchSelectProps, i as FieldSummary, it as ToastProvider, j as LogTableHandle, jt as SidebarNavProps, k as LogSort, kt as EditorToolbarProps, l as QueryField, lt as ColumnDef, mt as BranchSelect, n as FieldSidebarLabels, nt as ToastContextValue, o as QueryBar, pt as DomainTableProps, q as KeyValueEditor, r as FieldSidebarProps, rt as ToastMessage, s as QueryBarLabels, t as FieldSidebar, ut as DataTable, vt as ProjectSwitcher, wt as FaqAccordion, xt as DeploymentTimelineProps, yt as ProjectSwitcherProps, z as TimeRangeControl, zt as DashboardGridProps } from "../field-sidebar-nwcE9LC4.cjs";
|
|
3
3
|
import { EventSparkline, EventSparklineLabels, EventSparklineProps, MetricsCard, MetricsCardProps, ReportWidget, ReportWidgetConfig, ReportWidgetLabels, ReportWidgetProps, ReportWidgetType, TrendChart, TrendChartProps } from "@reopt-ai/opt-charts";
|
|
4
4
|
export { AppMenubar, type AppMenubarProps, BranchSelect, type BranchSelectProps, type ColumnDef, CommandPalette, type CommandPaletteProps, CommandPaletteTrigger, type CommandPaletteTriggerProps, ContentTabs, type ContentTabsProps, DEFAULT_TIME_PRESETS, DashboardGrid, type DashboardGridProps, DataTable, type DataTableProps, DeploymentTimeline, type DeploymentTimelineProps, DomainTable, type DomainTableProps, EditorToolbar, type EditorToolbarProps, EnvPanel, type EnvPanelProps, EventSparkline, type EventSparklineLabels, type EventSparklineProps, FailureList, type FailureListLabels, type FailureListProps, FaqAccordion, type FaqAccordionProps, FieldSidebar, type FieldSidebarLabels, type FieldSidebarProps, type FieldSummary, type FieldValueCount, KeyValueEditor, type KeyValueEditorLabels, type KeyValueEditorProps, type KeyValueEntry, type LogCellAction, type LogColumn, type LogColumnPriority, type LogDensity, type LogSort, LogTable, type LogTableHandle, type LogTableLabels, type LogTableProps, MetricsCard, type MetricsCardProps, NotificationToast, ProjectSwitcher, type ProjectSwitcherProps, QueryBar, type QueryBarLabels, type QueryBarProps, type QueryField, type RefreshSetting, ReportWidget, type ReportWidgetConfig, type ReportWidgetLabels, type ReportWidgetProps, type ReportWidgetType, SearchCombobox, type SearchComboboxProps, SettingsForm, type SettingsFormProps, SidebarNav, type SidebarNavProps, StatusSelect, type StatusSelectProps, TimeRangeControl, type TimeRangeControlLabels, type TimeRangeControlProps, type TimeRangePreset, TimeSeriesPanel, type TimeSeriesPanelLabels, type TimeSeriesPanelProps, type ToastContextValue, type ToastMessage, ToastProvider, type ToastProviderProps, TrendChart, type TrendChartProps, WorkflowCanvas, type WorkflowCanvasConnection, type WorkflowCanvasProps, type WorkflowCanvasStep, useToast };
|
package/dist/shells/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
|
|
2
|
-
import { $ as FailureListProps, A as LogTable, At as SidebarNav, B as TimeRangeControlLabels, Bt as CommandPaletteTrigger, Ct as SettingsFormProps, D as LogColumnPriority, Dt as ContentTabsProps, E as LogColumn, Et as ContentTabs, F as TimeSeriesPanelLabels, Ft as StatusSelectProps, G as WorkflowCanvasProps, H as TimeRangePreset, Ht as CommandPalette, I as TimeSeriesPanelProps, It as SearchCombobox, J as KeyValueEditorLabels, K as WorkflowCanvasStep, L as DEFAULT_TIME_PRESETS, Lt as SearchComboboxProps, M as LogTableLabels, Mt as AppMenubar, N as LogTableProps, Nt as AppMenubarProps, O as LogDensity, Ot as EditorToolbar, P as TimeSeriesPanel, Pt as StatusSelect, Q as FailureListLabels, R as RefreshSetting, Rt as DashboardGrid, St as SettingsForm, T as LogCellAction, Tt as FaqAccordionProps, U as WorkflowCanvas, Ut as CommandPaletteProps, V as TimeRangeControlProps, Vt as CommandPaletteTriggerProps, W as WorkflowCanvasConnection, X as KeyValueEntry, Y as KeyValueEditorProps, Z as FailureList, _t as EnvPanelProps, a as FieldValueCount, at as ToastProviderProps, bt as DeploymentTimeline, c as QueryBarProps, ct as useToast, dt as DataTableProps, et as NotificationToast, ft as DomainTable, gt as EnvPanel, ht as BranchSelectProps, i as FieldSummary, it as ToastProvider, j as LogTableHandle, jt as SidebarNavProps, k as LogSort, kt as EditorToolbarProps, l as QueryField, lt as ColumnDef, mt as BranchSelect, n as FieldSidebarLabels, nt as ToastContextValue, o as QueryBar, pt as DomainTableProps, q as KeyValueEditor, r as FieldSidebarProps, rt as ToastMessage, s as QueryBarLabels, t as FieldSidebar, ut as DataTable, vt as ProjectSwitcher, wt as FaqAccordion, xt as DeploymentTimelineProps, yt as ProjectSwitcherProps, z as TimeRangeControl, zt as DashboardGridProps } from "../field-sidebar-
|
|
2
|
+
import { $ as FailureListProps, A as LogTable, At as SidebarNav, B as TimeRangeControlLabels, Bt as CommandPaletteTrigger, Ct as SettingsFormProps, D as LogColumnPriority, Dt as ContentTabsProps, E as LogColumn, Et as ContentTabs, F as TimeSeriesPanelLabels, Ft as StatusSelectProps, G as WorkflowCanvasProps, H as TimeRangePreset, Ht as CommandPalette, I as TimeSeriesPanelProps, It as SearchCombobox, J as KeyValueEditorLabels, K as WorkflowCanvasStep, L as DEFAULT_TIME_PRESETS, Lt as SearchComboboxProps, M as LogTableLabels, Mt as AppMenubar, N as LogTableProps, Nt as AppMenubarProps, O as LogDensity, Ot as EditorToolbar, P as TimeSeriesPanel, Pt as StatusSelect, Q as FailureListLabels, R as RefreshSetting, Rt as DashboardGrid, St as SettingsForm, T as LogCellAction, Tt as FaqAccordionProps, U as WorkflowCanvas, Ut as CommandPaletteProps, V as TimeRangeControlProps, Vt as CommandPaletteTriggerProps, W as WorkflowCanvasConnection, X as KeyValueEntry, Y as KeyValueEditorProps, Z as FailureList, _t as EnvPanelProps, a as FieldValueCount, at as ToastProviderProps, bt as DeploymentTimeline, c as QueryBarProps, ct as useToast, dt as DataTableProps, et as NotificationToast, ft as DomainTable, gt as EnvPanel, ht as BranchSelectProps, i as FieldSummary, it as ToastProvider, j as LogTableHandle, jt as SidebarNavProps, k as LogSort, kt as EditorToolbarProps, l as QueryField, lt as ColumnDef, mt as BranchSelect, n as FieldSidebarLabels, nt as ToastContextValue, o as QueryBar, pt as DomainTableProps, q as KeyValueEditor, r as FieldSidebarProps, rt as ToastMessage, s as QueryBarLabels, t as FieldSidebar, ut as DataTable, vt as ProjectSwitcher, wt as FaqAccordion, xt as DeploymentTimelineProps, yt as ProjectSwitcherProps, z as TimeRangeControl, zt as DashboardGridProps } from "../field-sidebar-DWfJAJlx.js";
|
|
3
3
|
import { EventSparkline, EventSparklineLabels, EventSparklineProps, MetricsCard, MetricsCardProps, ReportWidget, ReportWidgetConfig, ReportWidgetLabels, ReportWidgetProps, ReportWidgetType, TrendChart, TrendChartProps } from "@reopt-ai/opt-charts";
|
|
4
4
|
export { AppMenubar, type AppMenubarProps, BranchSelect, type BranchSelectProps, type ColumnDef, CommandPalette, type CommandPaletteProps, CommandPaletteTrigger, type CommandPaletteTriggerProps, ContentTabs, type ContentTabsProps, DEFAULT_TIME_PRESETS, DashboardGrid, type DashboardGridProps, DataTable, type DataTableProps, DeploymentTimeline, type DeploymentTimelineProps, DomainTable, type DomainTableProps, EditorToolbar, type EditorToolbarProps, EnvPanel, type EnvPanelProps, EventSparkline, type EventSparklineLabels, type EventSparklineProps, FailureList, type FailureListLabels, type FailureListProps, FaqAccordion, type FaqAccordionProps, FieldSidebar, type FieldSidebarLabels, type FieldSidebarProps, type FieldSummary, type FieldValueCount, KeyValueEditor, type KeyValueEditorLabels, type KeyValueEditorProps, type KeyValueEntry, type LogCellAction, type LogColumn, type LogColumnPriority, type LogDensity, type LogSort, LogTable, type LogTableHandle, type LogTableLabels, type LogTableProps, MetricsCard, type MetricsCardProps, NotificationToast, ProjectSwitcher, type ProjectSwitcherProps, QueryBar, type QueryBarLabels, type QueryBarProps, type QueryField, type RefreshSetting, ReportWidget, type ReportWidgetConfig, type ReportWidgetLabels, type ReportWidgetProps, type ReportWidgetType, SearchCombobox, type SearchComboboxProps, SettingsForm, type SettingsFormProps, SidebarNav, type SidebarNavProps, StatusSelect, type StatusSelectProps, TimeRangeControl, type TimeRangeControlLabels, type TimeRangeControlProps, type TimeRangePreset, TimeSeriesPanel, type TimeSeriesPanelLabels, type TimeSeriesPanelProps, type ToastContextValue, type ToastMessage, ToastProvider, type ToastProviderProps, TrendChart, type TrendChartProps, WorkflowCanvas, type WorkflowCanvasConnection, type WorkflowCanvasProps, type WorkflowCanvasStep, useToast };
|
package/dist/shells/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"use client";
|
|
2
2
|
"use client";
|
|
3
|
-
import { A as DataTable, B as SidebarNav, C as WorkflowCanvas, D as ToastProvider, E as NotificationToast, F as DeploymentTimeline, G as CommandPaletteTrigger, H as StatusSelect, I as SettingsForm, K as CommandPalette, L as FaqAccordion, M as BranchSelect, N as EnvPanel, P as ProjectSwitcher, R as ContentTabs, T as FailureList, U as SearchCombobox, V as AppMenubar, W as DashboardGrid, b as DEFAULT_TIME_PRESETS, j as DomainTable, k as useToast, n as QueryBar, t as FieldSidebar, v as LogTable, w as KeyValueEditor, x as TimeRangeControl, y as TimeSeriesPanel, z as EditorToolbar } from "../field-sidebar-
|
|
3
|
+
import { A as DataTable, B as SidebarNav, C as WorkflowCanvas, D as ToastProvider, E as NotificationToast, F as DeploymentTimeline, G as CommandPaletteTrigger, H as StatusSelect, I as SettingsForm, K as CommandPalette, L as FaqAccordion, M as BranchSelect, N as EnvPanel, P as ProjectSwitcher, R as ContentTabs, T as FailureList, U as SearchCombobox, V as AppMenubar, W as DashboardGrid, b as DEFAULT_TIME_PRESETS, j as DomainTable, k as useToast, n as QueryBar, t as FieldSidebar, v as LogTable, w as KeyValueEditor, x as TimeRangeControl, y as TimeSeriesPanel, z as EditorToolbar } from "../field-sidebar-BXjvV7Cz.js";
|
|
4
4
|
import { EventSparkline, MetricsCard, ReportWidget, TrendChart } from "@reopt-ai/opt-charts";
|
|
5
5
|
export { AppMenubar, BranchSelect, CommandPalette, CommandPaletteTrigger, ContentTabs, DEFAULT_TIME_PRESETS, DashboardGrid, DataTable, DeploymentTimeline, DomainTable, EditorToolbar, EnvPanel, EventSparkline, FailureList, FaqAccordion, FieldSidebar, KeyValueEditor, LogTable, MetricsCard, NotificationToast, ProjectSwitcher, QueryBar, ReportWidget, SearchCombobox, SettingsForm, SidebarNav, StatusSelect, TimeRangeControl, TimeSeriesPanel, ToastProvider, TrendChart, WorkflowCanvas, useToast };
|
|
@@ -361,5 +361,49 @@ interface FieldTokenProps {
|
|
|
361
361
|
*/
|
|
362
362
|
declare function FieldToken({ type, size, fill, shape, title, decorative, className }: FieldTokenProps): import("react").JSX.Element;
|
|
363
363
|
//#endregion
|
|
364
|
-
|
|
365
|
-
|
|
364
|
+
//#region src/core/text-truncate.d.ts
|
|
365
|
+
/** Where the characters are dropped from. */
|
|
366
|
+
type TruncationSide = "end" | "start" | "middle" | "startEnd";
|
|
367
|
+
/** Props for the text truncate component. */
|
|
368
|
+
interface TextTruncateProps {
|
|
369
|
+
text: string;
|
|
370
|
+
/**
|
|
371
|
+
* `end` is the browser default. `start` keeps a filename, `startEnd` keeps
|
|
372
|
+
* both ends of a path or id, `middle` keeps a timestamp buried in a line.
|
|
373
|
+
*/
|
|
374
|
+
truncation?: TruncationSide;
|
|
375
|
+
ellipsis?: string;
|
|
376
|
+
/**
|
|
377
|
+
* Fixed width in pixels. Omit to measure the container, which is what a
|
|
378
|
+
* table cell wants.
|
|
379
|
+
*/
|
|
380
|
+
width?: number;
|
|
381
|
+
/**
|
|
382
|
+
* Render the visible text yourself — to wrap the kept part in a `<mark>`,
|
|
383
|
+
* say. Receives the already-truncated string.
|
|
384
|
+
*/
|
|
385
|
+
children?: (truncated: string) => React.ReactNode;
|
|
386
|
+
className?: string;
|
|
387
|
+
}
|
|
388
|
+
/**
|
|
389
|
+
* TextTruncate — drops characters from the part of a string that identifies it
|
|
390
|
+
* least.
|
|
391
|
+
*
|
|
392
|
+
* CSS can only cut the end. That is the wrong end for the strings analytics
|
|
393
|
+
* shows most: two URLs that differ in their query string, two ids that share a
|
|
394
|
+
* prefix, a stack frame whose filename is at the tail. This measures the real
|
|
395
|
+
* text in the real font against the real available width and cuts where the
|
|
396
|
+
* caller says.
|
|
397
|
+
*
|
|
398
|
+
* The full string stays in the accessibility tree and in `title`, so
|
|
399
|
+
* truncation never costs the reader information — only space.
|
|
400
|
+
*
|
|
401
|
+
* @example
|
|
402
|
+
* ```tsx
|
|
403
|
+
* <TextTruncate text={event.url} truncation="startEnd" />
|
|
404
|
+
* ```
|
|
405
|
+
*/
|
|
406
|
+
declare function TextTruncate({ text, truncation, ellipsis, width, children, className }: TextTruncateProps): import("react").JSX.Element;
|
|
407
|
+
//#endregion
|
|
408
|
+
export { FormFieldDef as A, TableColumn as B, EnvVarDef as C, FaqItem as D, FailureItem as E, ProjectDef as F, ToolbarButtonDef as G, TeamMemberDef as H, QuickActionDef as I, SelectOption as L, MenuItemDef as M, NavItem as N, FilterGroupDef as O, NavItemDef as P, StatCard as R, EnvGroupDef as S, ExportFormat as T, TimePreset as U, TaskDef as V, ToastOptions as W, ChatModelDef as _, FieldDataType as a, DeploymentStep as b, resolveFieldType as c, ChartConfig as d, ChartDataPoint as f, ChatMessageDef as g, ChatConversationDef as h, FIELD_TYPE_TOKENS as i, MenuDef as j, FilterOption as k, ActivityDef as l, ChartSeriesDef as m, TextTruncateProps as n, FieldToken as o, ChartMargin as p, TruncationSide as r, FieldTokenProps as s, TextTruncate as t, BranchDef as u, ChatStylePresetDef as v, ExportColumn as w, DomainDef as x, CommandDef as y, TabDef as z };
|
|
409
|
+
//# sourceMappingURL=text-truncate-BGr7bB_8.d.cts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"text-truncate-BGr7bB_8.d.cts","names":[],"sources":["../src/lib/types.ts","../src/core/field-token.tsx","../src/core/text-truncate.tsx"],"mappings":";;;;UACiB;EACf;EACA;EACA;EACA;EACA;;;UAIe;EACf;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;UAIe;EACf;EACA;EACA;;;UAIe;EACf;EACA;EACA;;;UAIe;EACf;EACA;EACA;;;UAIe;EACf;EACA;EACA;EACA;EACA;EACA;EACA;EACA,YAAY;EACZ;;;UAIe;EACf;EACA;EACA,OAAO;;;UAIQ;EACf;EACA;EACA;EACA;EACA;;;UAIe;EACf;EACA;EACA,MAAM,MAAM;EACZ;;;UAIe;EACf;EACA;EACA,SAAS,MAAM;;;UAIA;EACf;EACA;EACA;EAWA;EACA;EACA;EACA;EACA,YAAY;EACZ;IAAY;IAAe;;;EAE3B;;EAEA;;EAEA;;EAEA;;EAEA,sBAAsB,QAAQ;;;UAMf;EACf;EACA;EACA;EACA;EACA;;;UAIe;EACf;EACA;EACA;EACA;EACA;;;UAIe;EACf;EACA;EACA;;;UAIe;EACf;EACA,MAAM;;;UAIS;EACf;EACA;EACA;EACA;;;UAIe;EACf;EACA;EACA;EACA;EACA;;;UAMe,YAAY;EAC3B;EACA;EACA,gBAAgB,MAAM,KAAK,MAAM,MAAM;EACvC;EACA;;;UAIe;EACf;EACA;EACA;EACA;;;UAMe;EACf;EACA;EACA;EACA;EACA;EACA,WAAW;EACX;EACA;EACA;IAAa;IAAY;IAAe;;;;UAIzB;EACf;EACA;EACA;EACA;EACA;EACA;;;UAIe;EACf;EACA;EAQA;EACA;EACA,OAAO;EACP;EACA,WAAW;EACX;;;UAIe;EACf;EACA;EACA;;;UAIe;EACf;EACA;EACA;EACA,UAAU;EACV;;;UAIe;EACf;EACA;EACA;EACA,OAAO,MAAM;EACb;EACA;EACA;;;UAMe;EACf;EACA;;;KAIU;;UAGK;EACf;EACA;;;UAMe;EACf;EACA;EACA;EACA;EACA;EACA;EACA,WAAW;;;UAMI;EACf;GACC;;;UAIc;EACf;EACA;EACA;EACA;EACA;;;UAIe;EACf,QAAQ;EACR;EACA;EACA;EACA;EACA;;;UAIe;EACf;EACA;EACA;EACA;;;UAMe;EACf;EACA;EACA;EACA;EACA;;;UAIe;EACf;EACA;EACA;EACA;;;UAIe;EACf;EACA;EACA;;;UAIe;EACf;EACA;EACA;;;;;;;;;;KCnUU;UAuBF;EACR,MAAM;;EAEN;;EAEA;;;;;;cAOW,mBAAmB,OAAO,eAAe;;;;;;iBA6BtC,iBACd,iCACC;;UA2Cc;;EAEf,MAAM;EACN;;EAEA;EACA;;;;;;EAMA;;;;;EAKA;EACA;;;;;;;;;;;;;;;;iBAiBc,aACd,MACA,MACA,MACA,OACA,OACA,YACA,aACC,kCAAe,IAAA;;;;KCjLN;;UA8FK;EACf;;;;;EAKA,aAAa;EACb;;;;;EAKA;;;;;EAKA,YAAY,sBAAsB,MAAM;EACxC;;;;;;;;;;;;;;;;;;;;iBAqBc,eACd,MACA,YACA,UACA,OACA,UACA,aACC,oCAAiB,IAAA"}
|
|
@@ -361,5 +361,49 @@ interface FieldTokenProps {
|
|
|
361
361
|
*/
|
|
362
362
|
declare function FieldToken({ type, size, fill, shape, title, decorative, className }: FieldTokenProps): import("react").JSX.Element;
|
|
363
363
|
//#endregion
|
|
364
|
-
|
|
365
|
-
|
|
364
|
+
//#region src/core/text-truncate.d.ts
|
|
365
|
+
/** Where the characters are dropped from. */
|
|
366
|
+
type TruncationSide = "end" | "start" | "middle" | "startEnd";
|
|
367
|
+
/** Props for the text truncate component. */
|
|
368
|
+
interface TextTruncateProps {
|
|
369
|
+
text: string;
|
|
370
|
+
/**
|
|
371
|
+
* `end` is the browser default. `start` keeps a filename, `startEnd` keeps
|
|
372
|
+
* both ends of a path or id, `middle` keeps a timestamp buried in a line.
|
|
373
|
+
*/
|
|
374
|
+
truncation?: TruncationSide;
|
|
375
|
+
ellipsis?: string;
|
|
376
|
+
/**
|
|
377
|
+
* Fixed width in pixels. Omit to measure the container, which is what a
|
|
378
|
+
* table cell wants.
|
|
379
|
+
*/
|
|
380
|
+
width?: number;
|
|
381
|
+
/**
|
|
382
|
+
* Render the visible text yourself — to wrap the kept part in a `<mark>`,
|
|
383
|
+
* say. Receives the already-truncated string.
|
|
384
|
+
*/
|
|
385
|
+
children?: (truncated: string) => React.ReactNode;
|
|
386
|
+
className?: string;
|
|
387
|
+
}
|
|
388
|
+
/**
|
|
389
|
+
* TextTruncate — drops characters from the part of a string that identifies it
|
|
390
|
+
* least.
|
|
391
|
+
*
|
|
392
|
+
* CSS can only cut the end. That is the wrong end for the strings analytics
|
|
393
|
+
* shows most: two URLs that differ in their query string, two ids that share a
|
|
394
|
+
* prefix, a stack frame whose filename is at the tail. This measures the real
|
|
395
|
+
* text in the real font against the real available width and cuts where the
|
|
396
|
+
* caller says.
|
|
397
|
+
*
|
|
398
|
+
* The full string stays in the accessibility tree and in `title`, so
|
|
399
|
+
* truncation never costs the reader information — only space.
|
|
400
|
+
*
|
|
401
|
+
* @example
|
|
402
|
+
* ```tsx
|
|
403
|
+
* <TextTruncate text={event.url} truncation="startEnd" />
|
|
404
|
+
* ```
|
|
405
|
+
*/
|
|
406
|
+
declare function TextTruncate({ text, truncation, ellipsis, width, children, className }: TextTruncateProps): import("react").JSX.Element;
|
|
407
|
+
//#endregion
|
|
408
|
+
export { FormFieldDef as A, TableColumn as B, EnvVarDef as C, FaqItem as D, FailureItem as E, ProjectDef as F, ToolbarButtonDef as G, TeamMemberDef as H, QuickActionDef as I, SelectOption as L, MenuItemDef as M, NavItem as N, FilterGroupDef as O, NavItemDef as P, StatCard as R, EnvGroupDef as S, ExportFormat as T, TimePreset as U, TaskDef as V, ToastOptions as W, ChatModelDef as _, FieldDataType as a, DeploymentStep as b, resolveFieldType as c, ChartConfig as d, ChartDataPoint as f, ChatMessageDef as g, ChatConversationDef as h, FIELD_TYPE_TOKENS as i, MenuDef as j, FilterOption as k, ActivityDef as l, ChartSeriesDef as m, TextTruncateProps as n, FieldToken as o, ChartMargin as p, TruncationSide as r, FieldTokenProps as s, TextTruncate as t, BranchDef as u, ChatStylePresetDef as v, ExportColumn as w, DomainDef as x, CommandDef as y, TabDef as z };
|
|
409
|
+
//# sourceMappingURL=text-truncate-BGr7bB_8.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"text-truncate-BGr7bB_8.d.ts","names":[],"sources":["../src/lib/types.ts","../src/core/field-token.tsx","../src/core/text-truncate.tsx"],"mappings":";;;;UACiB;EACf;EACA;EACA;EACA;EACA;;;UAIe;EACf;EACA;EACA;EACA;EACA;EACA;EACA;EACA;;;UAIe;EACf;EACA;EACA;;;UAIe;EACf;EACA;EACA;;;UAIe;EACf;EACA;EACA;;;UAIe;EACf;EACA;EACA;EACA;EACA;EACA;EACA;EACA,YAAY;EACZ;;;UAIe;EACf;EACA;EACA,OAAO;;;UAIQ;EACf;EACA;EACA;EACA;EACA;;;UAIe;EACf;EACA;EACA,MAAM,MAAM;EACZ;;;UAIe;EACf;EACA;EACA,SAAS,MAAM;;;UAIA;EACf;EACA;EACA;EAWA;EACA;EACA;EACA;EACA,YAAY;EACZ;IAAY;IAAe;;;EAE3B;;EAEA;;EAEA;;EAEA;;EAEA,sBAAsB,QAAQ;;;UAMf;EACf;EACA;EACA;EACA;EACA;;;UAIe;EACf;EACA;EACA;EACA;EACA;;;UAIe;EACf;EACA;EACA;;;UAIe;EACf;EACA,MAAM;;;UAIS;EACf;EACA;EACA;EACA;;;UAIe;EACf;EACA;EACA;EACA;EACA;;;UAMe,YAAY;EAC3B;EACA;EACA,gBAAgB,MAAM,KAAK,MAAM,MAAM;EACvC;EACA;;;UAIe;EACf;EACA;EACA;EACA;;;UAMe;EACf;EACA;EACA;EACA;EACA;EACA,WAAW;EACX;EACA;EACA;IAAa;IAAY;IAAe;;;;UAIzB;EACf;EACA;EACA;EACA;EACA;EACA;;;UAIe;EACf;EACA;EAQA;EACA;EACA,OAAO;EACP;EACA,WAAW;EACX;;;UAIe;EACf;EACA;EACA;;;UAIe;EACf;EACA;EACA;EACA,UAAU;EACV;;;UAIe;EACf;EACA;EACA;EACA,OAAO,MAAM;EACb;EACA;EACA;;;UAMe;EACf;EACA;;;KAIU;;UAGK;EACf;EACA;;;UAMe;EACf;EACA;EACA;EACA;EACA;EACA;EACA,WAAW;;;UAMI;EACf;GACC;;;UAIc;EACf;EACA;EACA;EACA;EACA;;;UAIe;EACf,QAAQ;EACR;EACA;EACA;EACA;EACA;;;UAIe;EACf;EACA;EACA;EACA;;;UAMe;EACf;EACA;EACA;EACA;EACA;;;UAIe;EACf;EACA;EACA;EACA;;;UAIe;EACf;EACA;EACA;;;UAIe;EACf;EACA;EACA;;;;;;;;;;KCnUU;UAuBF;EACR,MAAM;;EAEN;;EAEA;;;;;;cAOW,mBAAmB,OAAO,eAAe;;;;;;iBA6BtC,iBACd,iCACC;;UA2Cc;;EAEf,MAAM;EACN;;EAEA;EACA;;;;;;EAMA;;;;;EAKA;EACA;;;;;;;;;;;;;;;;iBAiBc,aACd,MACA,MACA,MACA,OACA,OACA,YACA,aACC,kCAAe,IAAA;;;;KCjLN;;UA8FK;EACf;;;;;EAKA,aAAa;EACb;;;;;EAKA;;;;;EAKA,YAAY,sBAAsB,MAAM;EACxC;;;;;;;;;;;;;;;;;;;;iBAqBc,eACd,MACA,YACA,UACA,OACA,UACA,aACC,oCAAiB,IAAA"}
|
|
@@ -4119,6 +4119,134 @@ function Highlight({ text, search, caseSensitive = false, firstOnly = false, cla
|
|
|
4119
4119
|
});
|
|
4120
4120
|
}
|
|
4121
4121
|
//#endregion
|
|
4122
|
+
//#region src/core/text-truncate.tsx
|
|
4123
|
+
const useIsomorphicLayoutEffect = typeof window === "undefined" ? react.useEffect : react.useLayoutEffect;
|
|
4124
|
+
/** Measures text in the element's own resolved font, not an assumed one. */
|
|
4125
|
+
function createMeasurer(element) {
|
|
4126
|
+
const context = document.createElement("canvas").getContext("2d");
|
|
4127
|
+
if (!context) return null;
|
|
4128
|
+
const computed = window.getComputedStyle(element);
|
|
4129
|
+
context.font = [
|
|
4130
|
+
computed.fontStyle,
|
|
4131
|
+
computed.fontVariant,
|
|
4132
|
+
computed.fontWeight,
|
|
4133
|
+
`${computed.fontSize}/${computed.lineHeight}`,
|
|
4134
|
+
computed.fontFamily
|
|
4135
|
+
].join(" ");
|
|
4136
|
+
const spacing = Number.parseFloat(computed.letterSpacing) || 0;
|
|
4137
|
+
return (value) => context.measureText(value).width + spacing * value.length;
|
|
4138
|
+
}
|
|
4139
|
+
/** Largest `n` in `[0, max]` for which `fits(n)` holds. */
|
|
4140
|
+
function largestFitting(max, fits) {
|
|
4141
|
+
let low = 0;
|
|
4142
|
+
let high = max;
|
|
4143
|
+
while (low < high) {
|
|
4144
|
+
const mid = Math.ceil((low + high) / 2);
|
|
4145
|
+
if (fits(mid)) low = mid;
|
|
4146
|
+
else high = mid - 1;
|
|
4147
|
+
}
|
|
4148
|
+
return low;
|
|
4149
|
+
}
|
|
4150
|
+
function truncateToWidth(text, side, ellipsis, available, measure) {
|
|
4151
|
+
if (measure(text) <= available) return text;
|
|
4152
|
+
const chars = Array.from(text);
|
|
4153
|
+
if (side === "end") {
|
|
4154
|
+
const keep = largestFitting(chars.length, (n) => measure(chars.slice(0, n).join("") + ellipsis) <= available);
|
|
4155
|
+
return chars.slice(0, keep).join("") + ellipsis;
|
|
4156
|
+
}
|
|
4157
|
+
if (side === "start") {
|
|
4158
|
+
const keep = largestFitting(chars.length, (n) => measure(ellipsis + chars.slice(chars.length - n).join("")) <= available);
|
|
4159
|
+
return ellipsis + chars.slice(chars.length - keep).join("");
|
|
4160
|
+
}
|
|
4161
|
+
if (side === "startEnd") {
|
|
4162
|
+
const keep = largestFitting(Math.floor(chars.length / 2), (n) => {
|
|
4163
|
+
const head = chars.slice(0, n).join("");
|
|
4164
|
+
const tail = chars.slice(chars.length - n).join("");
|
|
4165
|
+
return measure(head + ellipsis + tail) <= available;
|
|
4166
|
+
});
|
|
4167
|
+
if (keep === 0) return ellipsis;
|
|
4168
|
+
return chars.slice(0, keep).join("") + ellipsis + chars.slice(chars.length - keep).join("");
|
|
4169
|
+
}
|
|
4170
|
+
const span = largestFitting(chars.length, (n) => {
|
|
4171
|
+
const start = Math.floor((chars.length - n) / 2);
|
|
4172
|
+
return measure(ellipsis + chars.slice(start, start + n).join("") + ellipsis) <= available;
|
|
4173
|
+
});
|
|
4174
|
+
if (span === 0) return ellipsis;
|
|
4175
|
+
const start = Math.floor((chars.length - span) / 2);
|
|
4176
|
+
return ellipsis + chars.slice(start, start + span).join("") + ellipsis;
|
|
4177
|
+
}
|
|
4178
|
+
/**
|
|
4179
|
+
* TextTruncate — drops characters from the part of a string that identifies it
|
|
4180
|
+
* least.
|
|
4181
|
+
*
|
|
4182
|
+
* CSS can only cut the end. That is the wrong end for the strings analytics
|
|
4183
|
+
* shows most: two URLs that differ in their query string, two ids that share a
|
|
4184
|
+
* prefix, a stack frame whose filename is at the tail. This measures the real
|
|
4185
|
+
* text in the real font against the real available width and cuts where the
|
|
4186
|
+
* caller says.
|
|
4187
|
+
*
|
|
4188
|
+
* The full string stays in the accessibility tree and in `title`, so
|
|
4189
|
+
* truncation never costs the reader information — only space.
|
|
4190
|
+
*
|
|
4191
|
+
* @example
|
|
4192
|
+
* ```tsx
|
|
4193
|
+
* <TextTruncate text={event.url} truncation="startEnd" />
|
|
4194
|
+
* ```
|
|
4195
|
+
*/
|
|
4196
|
+
function TextTruncate({ text, truncation = "startEnd", ellipsis = "…", width, children, className }) {
|
|
4197
|
+
const ref = (0, react.useRef)(null);
|
|
4198
|
+
const [available, setAvailable] = (0, react.useState)(width !== null && width !== void 0 ? width : null);
|
|
4199
|
+
useIsomorphicLayoutEffect(() => {
|
|
4200
|
+
if (width !== void 0) {
|
|
4201
|
+
setAvailable(width);
|
|
4202
|
+
return;
|
|
4203
|
+
}
|
|
4204
|
+
const element = ref.current;
|
|
4205
|
+
if (!element || typeof ResizeObserver === "undefined") return;
|
|
4206
|
+
const observer = new ResizeObserver((entries) => {
|
|
4207
|
+
const entry = entries[0];
|
|
4208
|
+
if (entry) setAvailable(entry.contentRect.width);
|
|
4209
|
+
});
|
|
4210
|
+
observer.observe(element);
|
|
4211
|
+
setAvailable(element.getBoundingClientRect().width);
|
|
4212
|
+
return () => observer.disconnect();
|
|
4213
|
+
}, [width]);
|
|
4214
|
+
const [rendered, setRendered] = (0, react.useState)(text);
|
|
4215
|
+
useIsomorphicLayoutEffect(() => {
|
|
4216
|
+
const element = ref.current;
|
|
4217
|
+
if (!element || available === null || available <= 0) {
|
|
4218
|
+
setRendered(text);
|
|
4219
|
+
return;
|
|
4220
|
+
}
|
|
4221
|
+
const measure = createMeasurer(element);
|
|
4222
|
+
if (!measure) {
|
|
4223
|
+
setRendered(text);
|
|
4224
|
+
return;
|
|
4225
|
+
}
|
|
4226
|
+
setRendered(truncateToWidth(text, truncation, ellipsis, available, measure));
|
|
4227
|
+
}, [
|
|
4228
|
+
text,
|
|
4229
|
+
truncation,
|
|
4230
|
+
ellipsis,
|
|
4231
|
+
available
|
|
4232
|
+
]);
|
|
4233
|
+
const truncated = rendered !== text;
|
|
4234
|
+
return /* @__PURE__ */ (0, react_jsx_runtime.jsxs)("span", {
|
|
4235
|
+
ref,
|
|
4236
|
+
className: cn("block w-full overflow-hidden whitespace-nowrap", className),
|
|
4237
|
+
title: truncated ? text : void 0,
|
|
4238
|
+
"data-opt-id": "Y6BGX",
|
|
4239
|
+
"data-opt-slug": "text-truncate.TextTruncate",
|
|
4240
|
+
children: [/* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
|
|
4241
|
+
"aria-hidden": truncated ? "true" : void 0,
|
|
4242
|
+
children: children ? children(rendered) : rendered
|
|
4243
|
+
}), truncated && /* @__PURE__ */ (0, react_jsx_runtime.jsx)("span", {
|
|
4244
|
+
className: "sr-only",
|
|
4245
|
+
children: text
|
|
4246
|
+
})]
|
|
4247
|
+
});
|
|
4248
|
+
}
|
|
4249
|
+
//#endregion
|
|
4122
4250
|
Object.defineProperty(exports, "Alert", {
|
|
4123
4251
|
enumerable: true,
|
|
4124
4252
|
get: function() {
|
|
@@ -4899,6 +5027,12 @@ Object.defineProperty(exports, "TagInput", {
|
|
|
4899
5027
|
return TagInput;
|
|
4900
5028
|
}
|
|
4901
5029
|
});
|
|
5030
|
+
Object.defineProperty(exports, "TextTruncate", {
|
|
5031
|
+
enumerable: true,
|
|
5032
|
+
get: function() {
|
|
5033
|
+
return TextTruncate;
|
|
5034
|
+
}
|
|
5035
|
+
});
|
|
4902
5036
|
Object.defineProperty(exports, "ToolbarButton", {
|
|
4903
5037
|
enumerable: true,
|
|
4904
5038
|
get: function() {
|
|
@@ -3,7 +3,7 @@ import { clsx } from "clsx";
|
|
|
3
3
|
import { twMerge } from "tailwind-merge";
|
|
4
4
|
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
5
5
|
import * as React from "react";
|
|
6
|
-
import { createContext, forwardRef, useCallback, useContext, useEffect, useId, useMemo, useRef, useState } from "react";
|
|
6
|
+
import { createContext, forwardRef, useCallback, useContext, useEffect, useId, useLayoutEffect, useMemo, useRef, useState } from "react";
|
|
7
7
|
import { AlertDialogPanel, ComboboxGroup, ComboboxGroupLabel, ComboboxInput, ComboboxItem, ComboboxPopover, ComboboxRoot, Composite, CompositeItem, CompositeProvider, CompositeRow, DialogDescription, DialogDisclosure, DialogDismiss, DialogHeading, DialogPanel, DialogRoot, DisclosureContent, DisclosureRoot, DisclosureTrigger, FormCheckbox, FormControl, FormDescription, FormError, FormField, FormGroup, FormGroupLabel, FormInput, FormLabel, FormProvider, FormPush, FormRadio, FormRadioGroup, FormRemove, FormReset, FormRoot, FormSubmit, FormSwitch, MenuButtonArrow, MenuItem, MenuItemCheckbox, MenuItemRadio, MenuPopover, MenuRoot, MenuSeparator, MenuTrigger, MenubarContainer, MenubarRoot, PopoverClose, PopoverContent, PopoverRoot, PopoverTrigger, SelectItem, SelectLabel, SelectPopover, SelectRoot, SelectTrigger, Tab, TabList, TabPanel, TabsRoot, ToolbarButton, ToolbarContainer, ToolbarRoot, ToolbarSeparator, Tooltip, TooltipAnchor, TooltipProvider, useFieldValue, useFormContext, useFormStore } from "@reopt-ai/opt-ui-primitives";
|
|
8
8
|
import { AtSign, Bell, Binary, Braces, Brackets, Calendar, CalendarClock, CalendarDays, ChartColumn, Check, ChevronLeft, ChevronRight, CircleAlert, CircleCheck, CircleDollarSign, CircleHelp, CreditCard, Download, Eye, FileText, Fingerprint, Flag, Folder, Globe, Hash, Heart, Info, Layers, Link2, List, LogIn, Mail, MapPin, MessageCircle, MousePointerClick, Network, Percent, Search, Settings, Share2, ShoppingCart, Sigma, Star, Timer, ToggleLeft, TrendingUp, TriangleAlert, Type, Upload, User, UserPlus, XCircle, Zap } from "lucide-react";
|
|
9
9
|
//#region src/lib/cn.ts
|
|
@@ -4097,6 +4097,134 @@ function Highlight({ text, search, caseSensitive = false, firstOnly = false, cla
|
|
|
4097
4097
|
});
|
|
4098
4098
|
}
|
|
4099
4099
|
//#endregion
|
|
4100
|
-
|
|
4100
|
+
//#region src/core/text-truncate.tsx
|
|
4101
|
+
const useIsomorphicLayoutEffect = typeof window === "undefined" ? useEffect : useLayoutEffect;
|
|
4102
|
+
/** Measures text in the element's own resolved font, not an assumed one. */
|
|
4103
|
+
function createMeasurer(element) {
|
|
4104
|
+
const context = document.createElement("canvas").getContext("2d");
|
|
4105
|
+
if (!context) return null;
|
|
4106
|
+
const computed = window.getComputedStyle(element);
|
|
4107
|
+
context.font = [
|
|
4108
|
+
computed.fontStyle,
|
|
4109
|
+
computed.fontVariant,
|
|
4110
|
+
computed.fontWeight,
|
|
4111
|
+
`${computed.fontSize}/${computed.lineHeight}`,
|
|
4112
|
+
computed.fontFamily
|
|
4113
|
+
].join(" ");
|
|
4114
|
+
const spacing = Number.parseFloat(computed.letterSpacing) || 0;
|
|
4115
|
+
return (value) => context.measureText(value).width + spacing * value.length;
|
|
4116
|
+
}
|
|
4117
|
+
/** Largest `n` in `[0, max]` for which `fits(n)` holds. */
|
|
4118
|
+
function largestFitting(max, fits) {
|
|
4119
|
+
let low = 0;
|
|
4120
|
+
let high = max;
|
|
4121
|
+
while (low < high) {
|
|
4122
|
+
const mid = Math.ceil((low + high) / 2);
|
|
4123
|
+
if (fits(mid)) low = mid;
|
|
4124
|
+
else high = mid - 1;
|
|
4125
|
+
}
|
|
4126
|
+
return low;
|
|
4127
|
+
}
|
|
4128
|
+
function truncateToWidth(text, side, ellipsis, available, measure) {
|
|
4129
|
+
if (measure(text) <= available) return text;
|
|
4130
|
+
const chars = Array.from(text);
|
|
4131
|
+
if (side === "end") {
|
|
4132
|
+
const keep = largestFitting(chars.length, (n) => measure(chars.slice(0, n).join("") + ellipsis) <= available);
|
|
4133
|
+
return chars.slice(0, keep).join("") + ellipsis;
|
|
4134
|
+
}
|
|
4135
|
+
if (side === "start") {
|
|
4136
|
+
const keep = largestFitting(chars.length, (n) => measure(ellipsis + chars.slice(chars.length - n).join("")) <= available);
|
|
4137
|
+
return ellipsis + chars.slice(chars.length - keep).join("");
|
|
4138
|
+
}
|
|
4139
|
+
if (side === "startEnd") {
|
|
4140
|
+
const keep = largestFitting(Math.floor(chars.length / 2), (n) => {
|
|
4141
|
+
const head = chars.slice(0, n).join("");
|
|
4142
|
+
const tail = chars.slice(chars.length - n).join("");
|
|
4143
|
+
return measure(head + ellipsis + tail) <= available;
|
|
4144
|
+
});
|
|
4145
|
+
if (keep === 0) return ellipsis;
|
|
4146
|
+
return chars.slice(0, keep).join("") + ellipsis + chars.slice(chars.length - keep).join("");
|
|
4147
|
+
}
|
|
4148
|
+
const span = largestFitting(chars.length, (n) => {
|
|
4149
|
+
const start = Math.floor((chars.length - n) / 2);
|
|
4150
|
+
return measure(ellipsis + chars.slice(start, start + n).join("") + ellipsis) <= available;
|
|
4151
|
+
});
|
|
4152
|
+
if (span === 0) return ellipsis;
|
|
4153
|
+
const start = Math.floor((chars.length - span) / 2);
|
|
4154
|
+
return ellipsis + chars.slice(start, start + span).join("") + ellipsis;
|
|
4155
|
+
}
|
|
4156
|
+
/**
|
|
4157
|
+
* TextTruncate — drops characters from the part of a string that identifies it
|
|
4158
|
+
* least.
|
|
4159
|
+
*
|
|
4160
|
+
* CSS can only cut the end. That is the wrong end for the strings analytics
|
|
4161
|
+
* shows most: two URLs that differ in their query string, two ids that share a
|
|
4162
|
+
* prefix, a stack frame whose filename is at the tail. This measures the real
|
|
4163
|
+
* text in the real font against the real available width and cuts where the
|
|
4164
|
+
* caller says.
|
|
4165
|
+
*
|
|
4166
|
+
* The full string stays in the accessibility tree and in `title`, so
|
|
4167
|
+
* truncation never costs the reader information — only space.
|
|
4168
|
+
*
|
|
4169
|
+
* @example
|
|
4170
|
+
* ```tsx
|
|
4171
|
+
* <TextTruncate text={event.url} truncation="startEnd" />
|
|
4172
|
+
* ```
|
|
4173
|
+
*/
|
|
4174
|
+
function TextTruncate({ text, truncation = "startEnd", ellipsis = "…", width, children, className }) {
|
|
4175
|
+
const ref = useRef(null);
|
|
4176
|
+
const [available, setAvailable] = useState(width !== null && width !== void 0 ? width : null);
|
|
4177
|
+
useIsomorphicLayoutEffect(() => {
|
|
4178
|
+
if (width !== void 0) {
|
|
4179
|
+
setAvailable(width);
|
|
4180
|
+
return;
|
|
4181
|
+
}
|
|
4182
|
+
const element = ref.current;
|
|
4183
|
+
if (!element || typeof ResizeObserver === "undefined") return;
|
|
4184
|
+
const observer = new ResizeObserver((entries) => {
|
|
4185
|
+
const entry = entries[0];
|
|
4186
|
+
if (entry) setAvailable(entry.contentRect.width);
|
|
4187
|
+
});
|
|
4188
|
+
observer.observe(element);
|
|
4189
|
+
setAvailable(element.getBoundingClientRect().width);
|
|
4190
|
+
return () => observer.disconnect();
|
|
4191
|
+
}, [width]);
|
|
4192
|
+
const [rendered, setRendered] = useState(text);
|
|
4193
|
+
useIsomorphicLayoutEffect(() => {
|
|
4194
|
+
const element = ref.current;
|
|
4195
|
+
if (!element || available === null || available <= 0) {
|
|
4196
|
+
setRendered(text);
|
|
4197
|
+
return;
|
|
4198
|
+
}
|
|
4199
|
+
const measure = createMeasurer(element);
|
|
4200
|
+
if (!measure) {
|
|
4201
|
+
setRendered(text);
|
|
4202
|
+
return;
|
|
4203
|
+
}
|
|
4204
|
+
setRendered(truncateToWidth(text, truncation, ellipsis, available, measure));
|
|
4205
|
+
}, [
|
|
4206
|
+
text,
|
|
4207
|
+
truncation,
|
|
4208
|
+
ellipsis,
|
|
4209
|
+
available
|
|
4210
|
+
]);
|
|
4211
|
+
const truncated = rendered !== text;
|
|
4212
|
+
return /* @__PURE__ */ jsxs("span", {
|
|
4213
|
+
ref,
|
|
4214
|
+
className: cn("block w-full overflow-hidden whitespace-nowrap", className),
|
|
4215
|
+
title: truncated ? text : void 0,
|
|
4216
|
+
"data-opt-id": "Y6BGX",
|
|
4217
|
+
"data-opt-slug": "text-truncate.TextTruncate",
|
|
4218
|
+
children: [/* @__PURE__ */ jsx("span", {
|
|
4219
|
+
"aria-hidden": truncated ? "true" : void 0,
|
|
4220
|
+
children: children ? children(rendered) : rendered
|
|
4221
|
+
}), truncated && /* @__PURE__ */ jsx("span", {
|
|
4222
|
+
className: "sr-only",
|
|
4223
|
+
children: text
|
|
4224
|
+
})]
|
|
4225
|
+
});
|
|
4226
|
+
}
|
|
4227
|
+
//#endregion
|
|
4228
|
+
export { ToolbarButton$1 as $, Alert as $t, FormSelectItem as A, OPT_HOVER_ITEM as An, DialogHeading$1 as At, useFormStore as B, OPT_TEXT_LABEL as Bn, TabPanel$1 as Bt, FormPush$1 as C, OPT_DIVIDER as Cn, AlertDialogPanel$1 as Ct, FormReset$1 as D, OPT_DOT_YELLOW as Dn, DialogDismiss$1 as Dt, FormRemove$1 as E, OPT_DOT_RED as En, DialogDisclosure$1 as Et, FormSwitch$1 as F, OPT_SURFACE_POPOVER as Fn, SelectPopover$1 as Ft, getIconRegistryEntry as G, _objectSpread2 as Gn, Composite as Gt, DateRangePicker as H, OPT_TEXT_SECONDARY as Hn, DisclosureContent$1 as Ht, FormTagInput as I, OPT_TABLE_ROW_ACTIVE as In, SelectRoot$1 as It, PopoverContent$1 as J, cn as Jn, CompositeRow as Jt, ColorPicker as K, _objectWithoutProperties as Kn, CompositeItem as Kt, FormTextarea as L, OPT_TD as Ln, SelectTrigger$1 as Lt, FormSlider as M, OPT_INPUT_ERROR as Mn, DialogRoot$1 as Mt, FormStarRating as N, OPT_ITEM_BASE as Nn, SelectItem$1 as Nt, FormRoot$1 as O, OPT_FOCUS as On, DialogFooter as Ot, FormSubmit$1 as P, OPT_SURFACE as Pn, SelectLabel$1 as Pt, NumberInput as Q, useInputId as Qt, useFieldValue as R, OPT_TD_MUTED as Rn, Tab$1 as Rt, FormProvider$1 as S, OPT_DISCLOSURE_TRIGGER as Sn, ComboboxRoot$1 as St, FormRadioGroup$1 as T, OPT_DOT_GREEN as Tn, DialogDescription$1 as Tt, TagInput as U, OPT_TEXT_TERTIARY as Un, DisclosureRoot$1 as Ut, DEFAULT_PRESETS as V, OPT_TEXT_PRIMARY as Vn, TabsRoot$1 as Vt, IconPicker as W, OPT_TH as Wn, DisclosureTrigger$1 as Wt, PopoverTrigger$1 as X, StarRating as Xt, PopoverRoot$1 as Y, CompositeZone as Yt, Slider as Z, Input as Zt, FormGroupLabel$1 as _, OPT_BADGE_NEUTRAL as _n, ComboboxGroup$1 as _t, resolveFieldType as a, koComboboxLabels as an, TooltipProvider$1 as at, FormLabel$1 as b, OPT_BORDER as bn, ComboboxItem$1 as bt, CheckboxGroup as c, useControlledState as cn, MenuItemCheckbox$1 as ct, FormControl$1 as d, getDescribedBy as dn, MenuRoot$1 as dt, Spinner as en, ToolbarContainer$1 as et, FormDateRangePicker as f, OPT_ACTIVE_ITEM as fn, MenuSeparator$1 as ft, FormGroup$1 as g, OPT_BADGE_GREEN as gn, ComboboxEmpty as gt, FormField$1 as h, OPT_BADGE_BLUE as hn, MenubarRoot$1 as ht, FieldToken as i, koBreadcrumbLabels as in, TooltipAnchor$1 as it, FormSelectPopover as j, OPT_INPUT as jn, DialogPanel$1 as jt, FormSelect as k, OPT_FOCUS_VISIBLE as kn, DialogHeader as kt, FormCheckbox$1 as l, FieldMessages as ln, MenuItemRadio$1 as lt, FormError$1 as m, OPT_ANIMATE_ENTER_EXIT as mn, MenubarContainer$1 as mt, Highlight as n, EmptyState as nn, ToolbarSeparator$1 as nt, Pagination as o, koStarRatingLabels as on, MenuButtonArrow$1 as ot, FormDescription$1 as p, OPT_ANIMATE_DRAWER as pn, MenuTrigger$1 as pt, PopoverClose$1 as q, Kbd as qn, CompositeProvider as qt, FIELD_TYPE_TOKENS as r, Button as rn, Tooltip$1 as rt, Checkbox as s, StatCard as sn, MenuItem$1 as st, TextTruncate as t, Badge as tn, ToolbarRoot$1 as tt, FormColorPicker as u, RequiredMark as un, MenuPopover$1 as ut, FormIconPicker as v, OPT_BADGE_RED as vn, ComboboxGroupLabel$1 as vt, FormRadio$1 as w, OPT_DOT_GRAY as wn, DialogBody as wt, FormNumberInput as x, OPT_DISCLOSURE_CONTENT as xn, ComboboxPopover$1 as xt, FormInput$1 as y, OPT_BADGE_YELLOW as yn, ComboboxInput$1 as yt, useFormContext as z, OPT_TEXTAREA_SIZE as zn, TabList$1 as zt };
|
|
4101
4229
|
|
|
4102
|
-
//# sourceMappingURL=
|
|
4230
|
+
//# sourceMappingURL=text-truncate-j6X3z7Pv.js.map
|