@tetrascience-npm/tetrascience-react-ui 0.5.0-beta.58.1 → 0.5.0-beta.59.1
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/dist/components/ui/data-table/data-table-filter.cjs +1 -1
- package/dist/components/ui/data-table/data-table-filter.cjs.map +1 -1
- package/dist/components/ui/data-table/data-table-filter.js +139 -124
- package/dist/components/ui/data-table/data-table-filter.js.map +1 -1
- package/dist/components/ui/data-table/data-table.cjs +1 -1
- package/dist/components/ui/data-table/data-table.cjs.map +1 -1
- package/dist/components/ui/data-table/data-table.js +0 -1
- package/dist/components/ui/data-table/data-table.js.map +1 -1
- package/dist/index.cjs +1 -1
- package/dist/index.css +1 -1
- package/dist/index.d.ts +0 -555
- package/dist/index.js +595 -637
- package/dist/index.js.map +1 -1
- package/dist/index.tailwind.css +1 -1
- package/package.json +1 -1
- package/dist/components/composed/PlateMapEditor/ManifestFilterPopover.cjs +0 -2
- package/dist/components/composed/PlateMapEditor/ManifestFilterPopover.cjs.map +0 -1
- package/dist/components/composed/PlateMapEditor/ManifestFilterPopover.js +0 -140
- package/dist/components/composed/PlateMapEditor/ManifestFilterPopover.js.map +0 -1
- package/dist/components/composed/PlateMapEditor/PlateMapActionsMenu.cjs +0 -2
- package/dist/components/composed/PlateMapEditor/PlateMapActionsMenu.cjs.map +0 -1
- package/dist/components/composed/PlateMapEditor/PlateMapActionsMenu.js +0 -126
- package/dist/components/composed/PlateMapEditor/PlateMapActionsMenu.js.map +0 -1
- package/dist/components/composed/PlateMapEditor/PlateMapEditor.cjs +0 -2
- package/dist/components/composed/PlateMapEditor/PlateMapEditor.cjs.map +0 -1
- package/dist/components/composed/PlateMapEditor/PlateMapEditor.js +0 -422
- package/dist/components/composed/PlateMapEditor/PlateMapEditor.js.map +0 -1
- package/dist/components/composed/PlateMapEditor/PlateMapPlateSelector.cjs +0 -2
- package/dist/components/composed/PlateMapEditor/PlateMapPlateSelector.cjs.map +0 -1
- package/dist/components/composed/PlateMapEditor/PlateMapPlateSelector.js +0 -136
- package/dist/components/composed/PlateMapEditor/PlateMapPlateSelector.js.map +0 -1
- package/dist/components/composed/PlateMapEditor/PlatePaintGrid.cjs +0 -2
- package/dist/components/composed/PlateMapEditor/PlatePaintGrid.cjs.map +0 -1
- package/dist/components/composed/PlateMapEditor/PlatePaintGrid.js +0 -389
- package/dist/components/composed/PlateMapEditor/PlatePaintGrid.js.map +0 -1
- package/dist/components/composed/PlateMapEditor/PlateZoomControl.cjs +0 -2
- package/dist/components/composed/PlateMapEditor/PlateZoomControl.cjs.map +0 -1
- package/dist/components/composed/PlateMapEditor/PlateZoomControl.js +0 -54
- package/dist/components/composed/PlateMapEditor/PlateZoomControl.js.map +0 -1
- package/dist/components/composed/PlateMapEditor/TemplateIOPanel.cjs +0 -2
- package/dist/components/composed/PlateMapEditor/TemplateIOPanel.cjs.map +0 -1
- package/dist/components/composed/PlateMapEditor/TemplateIOPanel.js +0 -96
- package/dist/components/composed/PlateMapEditor/TemplateIOPanel.js.map +0 -1
- package/dist/components/composed/PlateMapEditor/WellLegend.cjs +0 -2
- package/dist/components/composed/PlateMapEditor/WellLegend.cjs.map +0 -1
- package/dist/components/composed/PlateMapEditor/WellLegend.js +0 -58
- package/dist/components/composed/PlateMapEditor/WellLegend.js.map +0 -1
- package/dist/components/composed/PlateMapEditor/WellManifestTable.cjs +0 -2
- package/dist/components/composed/PlateMapEditor/WellManifestTable.cjs.map +0 -1
- package/dist/components/composed/PlateMapEditor/WellManifestTable.js +0 -408
- package/dist/components/composed/PlateMapEditor/WellManifestTable.js.map +0 -1
- package/dist/components/composed/PlateMapEditor/WellMetadataForm.cjs +0 -2
- package/dist/components/composed/PlateMapEditor/WellMetadataForm.cjs.map +0 -1
- package/dist/components/composed/PlateMapEditor/WellMetadataForm.js +0 -177
- package/dist/components/composed/PlateMapEditor/WellMetadataForm.js.map +0 -1
- package/dist/components/composed/PlateMapEditor/autoFill.cjs +0 -2
- package/dist/components/composed/PlateMapEditor/autoFill.cjs.map +0 -1
- package/dist/components/composed/PlateMapEditor/autoFill.js +0 -41
- package/dist/components/composed/PlateMapEditor/autoFill.js.map +0 -1
- package/dist/components/composed/PlateMapEditor/csvPlateTriage.cjs +0 -4
- package/dist/components/composed/PlateMapEditor/csvPlateTriage.cjs.map +0 -1
- package/dist/components/composed/PlateMapEditor/csvPlateTriage.js +0 -103
- package/dist/components/composed/PlateMapEditor/csvPlateTriage.js.map +0 -1
- package/dist/components/composed/PlateMapEditor/helpers.cjs +0 -2
- package/dist/components/composed/PlateMapEditor/helpers.cjs.map +0 -1
- package/dist/components/composed/PlateMapEditor/helpers.js +0 -11
- package/dist/components/composed/PlateMapEditor/helpers.js.map +0 -1
- package/dist/components/composed/PlateMapEditor/wellGrid.cjs +0 -2
- package/dist/components/composed/PlateMapEditor/wellGrid.cjs.map +0 -1
- package/dist/components/composed/PlateMapEditor/wellGrid.js +0 -56
- package/dist/components/composed/PlateMapEditor/wellGrid.js.map +0 -1
- package/dist/components/ui/popover.cjs +0 -2
- package/dist/components/ui/popover.cjs.map +0 -1
- package/dist/components/ui/popover.js +0 -45
- package/dist/components/ui/popover.js.map +0 -1
package/dist/index.d.ts
CHANGED
|
@@ -39,7 +39,6 @@ import { NavigationMenu as NavigationMenu_2 } from 'radix-ui';
|
|
|
39
39
|
import { OnChange } from '@monaco-editor/react';
|
|
40
40
|
import { OTPInput } from 'input-otp';
|
|
41
41
|
import { PaginationState } from '@tanstack/react-table';
|
|
42
|
-
import { Popover as Popover_2 } from 'radix-ui';
|
|
43
42
|
import { PropsWithChildren } from 'react';
|
|
44
43
|
import { RadioGroup as RadioGroup_2 } from 'radix-ui';
|
|
45
44
|
import * as React_2 from 'react';
|
|
@@ -116,10 +115,6 @@ declare const alertVariants: (props?: ({
|
|
|
116
115
|
variant?: "default" | "destructive" | "info" | "positive" | "warning" | null | undefined;
|
|
117
116
|
} & ClassProp) | undefined) => string;
|
|
118
117
|
|
|
119
|
-
export declare function allPositions(dims: PlateDimensions): WellId[];
|
|
120
|
-
|
|
121
|
-
export declare function applyFilterCondition(cellValue: string, operator: FilterOperator, filterValue: string): boolean;
|
|
122
|
-
|
|
123
118
|
export declare interface AreaDataSeries {
|
|
124
119
|
x: number[];
|
|
125
120
|
y: number[];
|
|
@@ -225,33 +220,6 @@ export declare type AttachmentsProps = HTMLAttributes<HTMLDivElement> & {
|
|
|
225
220
|
|
|
226
221
|
export declare type AttachmentVariant = "grid" | "inline" | "list";
|
|
227
222
|
|
|
228
|
-
export declare interface AutoFillOptions {
|
|
229
|
-
dims: PlateDimensions;
|
|
230
|
-
/** Number of distinct items to place. Each is repeated `replicates` times. */
|
|
231
|
-
count: number;
|
|
232
|
-
/** First well in fill order. Defaults to position (0,0). */
|
|
233
|
-
startWellId?: WellId;
|
|
234
|
-
/** Traversal strategy. Defaults to `"row-major"`. */
|
|
235
|
-
strategy?: FillStrategy;
|
|
236
|
-
/** Consecutive cells assigned per item. Defaults to 1. */
|
|
237
|
-
replicates?: number;
|
|
238
|
-
}
|
|
239
|
-
|
|
240
|
-
/**
|
|
241
|
-
* Compute the ordered list of well ids to assign to `count` items (each
|
|
242
|
-
* repeated `replicates` times) starting from `startWellId`. Returns at most
|
|
243
|
-
* `dims.rows * dims.columns` ids — overflow is silently truncated so callers
|
|
244
|
-
* can paginate onto multiple plates themselves.
|
|
245
|
-
*/
|
|
246
|
-
export declare function autoFillPositions(options: AutoFillOptions): WellId[];
|
|
247
|
-
|
|
248
|
-
/**
|
|
249
|
-
* Convenience wrapper: assigns each input item to `replicates` consecutive
|
|
250
|
-
* wells, returning a `Map<WellId, T>`. The mapper builds the record stored at
|
|
251
|
-
* each well (e.g. stamp item-specific fields onto a base record).
|
|
252
|
-
*/
|
|
253
|
-
export declare function autoFillRecords<T>(items: T[], buildRecord: (item: T, index: number, wellId: WellId) => T, options: Omit<AutoFillOptions, "count">): Map<WellId, T>;
|
|
254
|
-
|
|
255
223
|
export declare function Avatar({ className, size, ...props }: React_2.ComponentProps<typeof Avatar_2.Root> & {
|
|
256
224
|
size?: "default" | "sm" | "lg";
|
|
257
225
|
}): JSX.Element;
|
|
@@ -1403,8 +1371,6 @@ declare const fieldVariants: (props?: ({
|
|
|
1403
1371
|
orientation?: "horizontal" | "vertical" | "responsive" | null | undefined;
|
|
1404
1372
|
} & ClassProp) | undefined) => string;
|
|
1405
1373
|
|
|
1406
|
-
export declare type FillStrategy = "row-major" | "column-major" | "row-snake" | "column-snake";
|
|
1407
|
-
|
|
1408
1374
|
export declare interface FilterColumnConfig {
|
|
1409
1375
|
columnId: string;
|
|
1410
1376
|
label?: string;
|
|
@@ -1433,8 +1399,6 @@ export declare const getAttachmentLabel: (data: AttachmentData) => string;
|
|
|
1433
1399
|
|
|
1434
1400
|
export declare const getMediaCategory: (data: AttachmentData) => AttachmentMediaCategory;
|
|
1435
1401
|
|
|
1436
|
-
export declare function getPlateMapScopedWellId(plateBarcode: string, wellId: WellId): WellId;
|
|
1437
|
-
|
|
1438
1402
|
export declare const getStatusBadge: (status: ToolPart["state"]) => JSX.Element;
|
|
1439
1403
|
|
|
1440
1404
|
/**
|
|
@@ -1540,13 +1504,6 @@ export declare function HoverCardContent({ className, align, sideOffset, ...prop
|
|
|
1540
1504
|
|
|
1541
1505
|
export declare function HoverCardTrigger({ ...props }: React_2.ComponentProps<typeof HoverCard_2.Trigger>): JSX.Element;
|
|
1542
1506
|
|
|
1543
|
-
export declare interface ImportExportHandlers {
|
|
1544
|
-
onImportCsv?: (file: File, triage?: PlateMapCsvTriage) => void | Promise<void>;
|
|
1545
|
-
onExportCsv?: () => void;
|
|
1546
|
-
onImportTemplate?: (file: File) => void | Promise<void>;
|
|
1547
|
-
onExportTemplate?: () => void;
|
|
1548
|
-
}
|
|
1549
|
-
|
|
1550
1507
|
export declare const InlineCitation: ({ className, ...props }: InlineCitationProps) => JSX.Element;
|
|
1551
1508
|
|
|
1552
1509
|
export declare const InlineCitationCard: (props: InlineCitationCardProps) => JSX.Element;
|
|
@@ -1796,19 +1753,6 @@ export declare type LineGraphVariant = "lines" | "lines+markers" | "lines+marker
|
|
|
1796
1753
|
|
|
1797
1754
|
export declare const LocalReferencedSourcesContext: Context_2<ReferencedSourcesContext | null>;
|
|
1798
1755
|
|
|
1799
|
-
export declare function ManifestFilterPopover({ columns, columnLabel, filters, onFiltersChange, triggerLabel, className, }: ManifestFilterPopoverProps): JSX.Element;
|
|
1800
|
-
|
|
1801
|
-
export declare interface ManifestFilterPopoverProps {
|
|
1802
|
-
/** Filterable columns. Operator subsets can be specified per column. */
|
|
1803
|
-
columns: FilterColumnConfig[];
|
|
1804
|
-
/** Column id → display label resolver. */
|
|
1805
|
-
columnLabel?: (columnId: string) => string;
|
|
1806
|
-
filters: FilterCondition[];
|
|
1807
|
-
onFiltersChange: (next: FilterCondition[]) => void;
|
|
1808
|
-
triggerLabel?: string;
|
|
1809
|
-
className?: string;
|
|
1810
|
-
}
|
|
1811
|
-
|
|
1812
1756
|
export declare type MarkerSymbol = "circle" | "circle-open" | "circle-dot" | "circle-open-dot" | "square" | "square-open" | "square-dot" | "square-open-dot" | "diamond" | "diamond-open" | "diamond-dot" | "diamond-open-dot" | "cross" | "cross-open" | "cross-dot" | "cross-open-dot" | "x" | "x-open" | "x-dot" | "x-open-dot" | "triangle-up" | "triangle-up-open" | "triangle-up-dot" | "triangle-up-open-dot" | "triangle-down" | "triangle-down-open" | "triangle-down-dot" | "triangle-down-open-dot" | "triangle-left" | "triangle-left-open" | "triangle-left-dot" | "triangle-left-open-dot" | "triangle-right" | "triangle-right-open" | "triangle-right-dot" | "triangle-right-open-dot" | "triangle-ne" | "triangle-ne-open" | "triangle-ne-dot" | "triangle-ne-open-dot" | "triangle-se" | "triangle-se-open" | "triangle-se-dot" | "triangle-se-open-dot" | "triangle-sw" | "triangle-sw-open" | "triangle-sw-dot" | "triangle-sw-open-dot" | "triangle-nw" | "triangle-nw-open" | "triangle-nw-dot" | "triangle-nw-open-dot" | "pentagon" | "pentagon-open" | "pentagon-dot" | "pentagon-open-dot" | "hexagon" | "hexagon-open" | "hexagon-dot" | "hexagon-open-dot" | "hexagon2" | "hexagon2-open" | "hexagon2-dot" | "hexagon2-open-dot" | "octagon" | "octagon-open" | "octagon-dot" | "octagon-open-dot" | "star" | "star-open" | "star-dot" | "star-open-dot" | "hexagram" | "hexagram-open" | "hexagram-dot" | "hexagram-open-dot" | "star-triangle-up" | "star-triangle-up-open" | "star-triangle-up-dot" | "star-triangle-up-open-dot" | "star-triangle-down" | "star-triangle-down-open" | "star-triangle-down-dot" | "star-triangle-down-open-dot" | "star-square" | "star-square-open" | "star-square-dot" | "star-square-open-dot" | "star-diamond" | "star-diamond-open" | "star-diamond-dot" | "star-diamond-open-dot" | "diamond-tall" | "diamond-tall-open" | "diamond-tall-dot" | "diamond-tall-open-dot" | "diamond-wide" | "diamond-wide-open" | "diamond-wide-dot" | "diamond-wide-open-dot" | "hourglass" | "hourglass-open" | "bowtie" | "bowtie-open" | "circle-cross" | "circle-cross-open" | "circle-x" | "circle-x-open" | "square-cross" | "square-cross-open" | "square-x" | "square-x-open" | "diamond-cross" | "diamond-cross-open" | "diamond-x" | "diamond-x-open" | "cross-thin" | "cross-thin-open" | "x-thin" | "x-thin-open" | "asterisk" | "asterisk-open" | "hash" | "hash-open" | "hash-dot" | "hash-open-dot" | "y-up" | "y-up-open" | "y-down" | "y-down-open" | "y-left" | "y-left-open" | "y-right" | "y-right-open" | "line-ew" | "line-ew-open" | "line-ns" | "line-ns-open" | "line-ne" | "line-ne-open" | "line-nw" | "line-nw-open" | "arrow" | "arrow-open" | "arrow-wide" | "arrow-wide-open";
|
|
1813
1757
|
|
|
1814
1758
|
declare type MarkerSymbol_2 = "circle" | "square" | "diamond" | "triangle-up" | "triangle-down" | "star";
|
|
@@ -2026,13 +1970,6 @@ export declare interface NavPage {
|
|
|
2026
1970
|
onClick?: () => void;
|
|
2027
1971
|
}
|
|
2028
1972
|
|
|
2029
|
-
export declare function parsePos(id: WellId, dims: PlateDimensions): {
|
|
2030
|
-
row: number;
|
|
2031
|
-
col: number;
|
|
2032
|
-
} | null;
|
|
2033
|
-
|
|
2034
|
-
export declare function parseRowLabel(label: string): number;
|
|
2035
|
-
|
|
2036
1973
|
/**
|
|
2037
1974
|
* Peak annotation for labeling peaks on the chromatogram.
|
|
2038
1975
|
* Used for both user-provided annotations and auto-detected peaks.
|
|
@@ -2116,11 +2053,6 @@ declare const PLATE_FORMAT_96: "96";
|
|
|
2116
2053
|
|
|
2117
2054
|
declare const PLATE_FORMAT_CUSTOM: "custom";
|
|
2118
2055
|
|
|
2119
|
-
export declare interface PlateDimensions {
|
|
2120
|
-
rows: number;
|
|
2121
|
-
columns: number;
|
|
2122
|
-
}
|
|
2123
|
-
|
|
2124
2056
|
/**
|
|
2125
2057
|
* Plate format presets for standard microplate configurations.
|
|
2126
2058
|
* - `"96"`: 8 rows × 12 columns (wells A1-H12)
|
|
@@ -2155,204 +2087,6 @@ export declare type PlateFormat = typeof PLATE_FORMAT_96 | typeof PLATE_FORMAT_3
|
|
|
2155
2087
|
*/
|
|
2156
2088
|
export declare const PlateMap: default_2.FC<PlateMapProps>;
|
|
2157
2089
|
|
|
2158
|
-
export declare function PlateMapActionsMenu({ templates, templateId, onTemplateChange, onClearTemplate, hasEntries, onImportCsv, onExportCsv, onImportTemplate, onExportTemplate, label, align, side, csvAccept, templateAccept, importTemplateLabel, exportTemplateLabel, importCsvLabel, exportCsvLabel, clearLabel, className, }: PlateMapActionsMenuProps): JSX.Element | null;
|
|
2159
|
-
|
|
2160
|
-
export declare interface PlateMapActionsMenuProps extends ImportExportHandlers {
|
|
2161
|
-
templates?: TemplateOption[];
|
|
2162
|
-
templateId?: string;
|
|
2163
|
-
onTemplateChange?: (id: string) => void;
|
|
2164
|
-
onClearTemplate?: () => void;
|
|
2165
|
-
/** Disable export/save actions when there is nothing to export. */
|
|
2166
|
-
hasEntries?: boolean;
|
|
2167
|
-
label?: React_2.ReactNode;
|
|
2168
|
-
align?: "start" | "center" | "end";
|
|
2169
|
-
side?: "top" | "right" | "bottom" | "left";
|
|
2170
|
-
csvAccept?: string;
|
|
2171
|
-
templateAccept?: string;
|
|
2172
|
-
importTemplateLabel?: string;
|
|
2173
|
-
exportTemplateLabel?: string;
|
|
2174
|
-
importCsvLabel?: string;
|
|
2175
|
-
exportCsvLabel?: string;
|
|
2176
|
-
clearLabel?: string;
|
|
2177
|
-
className?: string;
|
|
2178
|
-
}
|
|
2179
|
-
|
|
2180
|
-
export declare interface PlateMapCsvPlate {
|
|
2181
|
-
/** User-provided plate barcode used as the selectable plate id. */
|
|
2182
|
-
id: string;
|
|
2183
|
-
barcode: string;
|
|
2184
|
-
rows: PlateMapCsvRow[];
|
|
2185
|
-
rowCount: number;
|
|
2186
|
-
}
|
|
2187
|
-
|
|
2188
|
-
export declare interface PlateMapCsvRow {
|
|
2189
|
-
/** 1-based CSV line number, including the header line. */
|
|
2190
|
-
line: number;
|
|
2191
|
-
values: Record<string, string>;
|
|
2192
|
-
}
|
|
2193
|
-
|
|
2194
|
-
export declare interface PlateMapCsvTriage {
|
|
2195
|
-
headers: string[];
|
|
2196
|
-
/** Resolved header name for the plate barcode column, when present. */
|
|
2197
|
-
plateBarcodeColumn?: string;
|
|
2198
|
-
rows: PlateMapCsvRow[];
|
|
2199
|
-
plates: PlateMapCsvPlate[];
|
|
2200
|
-
/** Rows missing a barcode. The editor does not create fallback barcodes. */
|
|
2201
|
-
missingBarcodeRows: PlateMapCsvRow[];
|
|
2202
|
-
}
|
|
2203
|
-
|
|
2204
|
-
export declare interface PlateMapCsvTriageOptions {
|
|
2205
|
-
/** Exact column name to use before trying aliases. */
|
|
2206
|
-
plateBarcodeColumn?: string;
|
|
2207
|
-
/** Additional accepted names for the plate barcode column. */
|
|
2208
|
-
plateBarcodeColumnAliases?: readonly string[];
|
|
2209
|
-
}
|
|
2210
|
-
|
|
2211
|
-
export declare function PlateMapEditor<T extends WellRecord = WellRecord>({ format, rows, columns, values, onChange, selection, onSelectionChange, fields, tableColumns, colorForWell, emptyEntry, mergeOnApply, isPopulated, cycleFieldOnWellDoubleClick, title, badges, banner, legend, formExtras, formSlot, footer, plateTitle, plateToolbar, plates, activePlateId, onPlateChange, onAddPlate, onRemovePlate, addPlateLabel, removePlateLabel, plateSelectorLabel, plateSelectorVariant, plateBarcodeField, plateBarcodeColumnHeader, hidePlateBarcodeColumn, groups, activeGroupId, onGroupClick, renderHoverSummary, cellSize, emptyWellFillColor, wellShape, framedPlate, wrapWell, highlightedWellIds, onHoveredWellChange, manifestFilterable, manifestGroupable, autoScaleGrid, minCellSize, maxCellSize, className, templates, templateId, onTemplateChange, onClearTemplate, onImportCsv, onExportCsv, onImportTemplate, onExportTemplate, csvAccept, templateAccept, label, align, side, importTemplateLabel, exportTemplateLabel, importCsvLabel, exportCsvLabel, clearLabel, }: PlateMapEditorProps<T>): JSX.Element;
|
|
2212
|
-
|
|
2213
|
-
export declare interface PlateMapEditorProps<T extends WellRecord = WellRecord> extends Omit<PlateMapActionsMenuProps, "hasEntries" | "className"> {
|
|
2214
|
-
format: PlateFormat;
|
|
2215
|
-
rows?: number;
|
|
2216
|
-
columns?: number;
|
|
2217
|
-
values: Map<WellId, T>;
|
|
2218
|
-
onChange: (next: Map<WellId, T>) => void;
|
|
2219
|
-
selection: Set<WellId>;
|
|
2220
|
-
onSelectionChange: (next: Set<WellId>) => void;
|
|
2221
|
-
fields: WellField<T>[];
|
|
2222
|
-
tableColumns: WellColumn<T>[];
|
|
2223
|
-
/** Resolves the SVG fill color for a well. */
|
|
2224
|
-
colorForWell: (well: T | undefined, wellId: WellId) => string;
|
|
2225
|
-
/** Builds an empty record when a well is freshly created. */
|
|
2226
|
-
emptyEntry: (wellId: WellId) => T;
|
|
2227
|
-
/**
|
|
2228
|
-
* Merges the staged form record onto an existing well record on Apply.
|
|
2229
|
-
* Defaults to a shallow merge (form keys overwrite existing keys when set).
|
|
2230
|
-
*/
|
|
2231
|
-
mergeOnApply?: (existing: T | undefined, staged: Partial<T>, wellId: WellId) => T;
|
|
2232
|
-
/** Filter for the manifest's "hide empty" mode. */
|
|
2233
|
-
isPopulated?: (row: T) => boolean;
|
|
2234
|
-
/** Select field cycled when double-clicking a single well, e.g. role painting. */
|
|
2235
|
-
cycleFieldOnWellDoubleClick?: keyof T & string;
|
|
2236
|
-
/** Optional header title (e.g. plate set name). */
|
|
2237
|
-
title?: string;
|
|
2238
|
-
/** Optional badges shown in the header next to the title. */
|
|
2239
|
-
badges?: React_2.ReactNode;
|
|
2240
|
-
/** Optional banner (e.g. import/error alert) shown above the layout. */
|
|
2241
|
-
banner?: React_2.ReactNode;
|
|
2242
|
-
/** Legend block rendered under the form column. */
|
|
2243
|
-
legend?: React_2.ReactNode;
|
|
2244
|
-
/** Form helper slot rendered between fields and the action row. */
|
|
2245
|
-
formExtras?: React_2.ReactNode;
|
|
2246
|
-
/**
|
|
2247
|
-
* Fully replaces the left column. When set, the built-in `WellMetadataForm`
|
|
2248
|
-
* is omitted — use this for alternative workflows like a drag-and-drop
|
|
2249
|
-
* source palette. The legend slot still renders beneath the replacement.
|
|
2250
|
-
*/
|
|
2251
|
-
formSlot?: React_2.ReactNode;
|
|
2252
|
-
/** Footer actions (e.g. Save, Back). */
|
|
2253
|
-
footer?: React_2.ReactNode;
|
|
2254
|
-
/** Title for the plate grid panel. */
|
|
2255
|
-
plateTitle?: React_2.ReactNode;
|
|
2256
|
-
/** Optional controls shown next to the built-in actions menu. */
|
|
2257
|
-
plateToolbar?: React_2.ReactNode;
|
|
2258
|
-
/** User-provided plates available for this editor. Barcodes are never generated by the editor. */
|
|
2259
|
-
plates?: PlateMapPlateOption[];
|
|
2260
|
-
activePlateId?: string;
|
|
2261
|
-
onPlateChange?: (plateId: string) => void;
|
|
2262
|
-
/** Opens the host app's manual barcode entry flow for creating a plate. */
|
|
2263
|
-
onAddPlate?: () => void;
|
|
2264
|
-
/** Removes a plate (typically when using `plateSelectorVariant="tabs"`). */
|
|
2265
|
-
onRemovePlate?: (plateId: string) => void;
|
|
2266
|
-
addPlateLabel?: string;
|
|
2267
|
-
removePlateLabel?: string;
|
|
2268
|
-
plateSelectorLabel?: string;
|
|
2269
|
-
/** Layout of the plate selector. Defaults to `"dropdown"`. */
|
|
2270
|
-
plateSelectorVariant?: PlateMapPlateSelectorVariant;
|
|
2271
|
-
/** Row field used to stamp the active user-provided barcode onto edited wells. Defaults to `plateBarcode`. */
|
|
2272
|
-
plateBarcodeField?: keyof T & string;
|
|
2273
|
-
/** Header for the automatic manifest barcode column. */
|
|
2274
|
-
plateBarcodeColumnHeader?: string;
|
|
2275
|
-
/** Hide the automatic manifest barcode column when plate-scoped editing is active. */
|
|
2276
|
-
hidePlateBarcodeColumn?: boolean;
|
|
2277
|
-
/** Optional grouped well shortcuts rendered under the grid. */
|
|
2278
|
-
groups?: PlateMapGroupOption[];
|
|
2279
|
-
activeGroupId?: string;
|
|
2280
|
-
onGroupClick?: (group: PlateMapGroupOption) => void;
|
|
2281
|
-
/** Custom hover summary for the strip above the grid. */
|
|
2282
|
-
renderHoverSummary?: (well: T | undefined, wellId: WellId) => React_2.ReactNode;
|
|
2283
|
-
/** Fixed well size. When unset, the grid grows with the available width. */
|
|
2284
|
-
cellSize?: number;
|
|
2285
|
-
/** Fill color for empty wells. Pass `null` to delegate empty wells to `colorForWell`. */
|
|
2286
|
-
emptyWellFillColor?: string | null;
|
|
2287
|
-
/** Well shape forwarded to `PlatePaintGrid`. Defaults to `"rect"`. */
|
|
2288
|
-
wellShape?: WellShape;
|
|
2289
|
-
/** When true, wraps the grid in a card-like plate frame (rounded + border + soft shadow). */
|
|
2290
|
-
framedPlate?: boolean;
|
|
2291
|
-
/**
|
|
2292
|
-
* Forwarded to `PlatePaintGrid`. Render-prop that places a node inside each
|
|
2293
|
-
* absolute-positioned well cell — used to wire drop targets without binding
|
|
2294
|
-
* the kit to a specific DnD library.
|
|
2295
|
-
*/
|
|
2296
|
-
wrapWell?: (wellId: WellId, cellSize: number) => React_2.ReactNode;
|
|
2297
|
-
/** Wells to highlight (e.g. when hovering a legend item externally). */
|
|
2298
|
-
highlightedWellIds?: ReadonlySet<WellId>;
|
|
2299
|
-
/** Fires whenever the currently hovered well changes (null on leave). */
|
|
2300
|
-
onHoveredWellChange?: (wellId: WellId | null) => void;
|
|
2301
|
-
/** Enables the filter popover on the manifest table. */
|
|
2302
|
-
manifestFilterable?: boolean;
|
|
2303
|
-
/** Enables the group-by selector on the manifest table. */
|
|
2304
|
-
manifestGroupable?: boolean;
|
|
2305
|
-
autoScaleGrid?: boolean;
|
|
2306
|
-
minCellSize?: number;
|
|
2307
|
-
maxCellSize?: number;
|
|
2308
|
-
className?: string;
|
|
2309
|
-
}
|
|
2310
|
-
|
|
2311
|
-
export declare interface PlateMapGroupOption {
|
|
2312
|
-
id: string;
|
|
2313
|
-
label: string;
|
|
2314
|
-
/** Well ids in the group; callers can use this to select the group. */
|
|
2315
|
-
wellIds?: WellId[];
|
|
2316
|
-
/** Optional explicit count; defaults to `wellIds.length` when present. */
|
|
2317
|
-
count?: number;
|
|
2318
|
-
color?: string;
|
|
2319
|
-
borderColor?: string;
|
|
2320
|
-
disabled?: boolean;
|
|
2321
|
-
}
|
|
2322
|
-
|
|
2323
|
-
export declare interface PlateMapPlateOption {
|
|
2324
|
-
/** Stable plate id. For imported CSVs this should be the user-provided barcode. */
|
|
2325
|
-
id: string;
|
|
2326
|
-
/** User-provided plate barcode. Barcodes are never generated by the editor. */
|
|
2327
|
-
barcode: string;
|
|
2328
|
-
/** Optional display label when it differs from the barcode. */
|
|
2329
|
-
label?: string;
|
|
2330
|
-
/** Optional count shown beside the plate pill, usually imported row/well count. */
|
|
2331
|
-
count?: number;
|
|
2332
|
-
disabled?: boolean;
|
|
2333
|
-
}
|
|
2334
|
-
|
|
2335
|
-
export declare function PlateMapPlateSelector({ plates, activePlateId, onPlateChange, onAddPlate, onRemovePlate, addPlateLabel, removePlateLabel, label, variant, align, side, className, }: PlateMapPlateSelectorProps): JSX.Element;
|
|
2336
|
-
|
|
2337
|
-
export declare interface PlateMapPlateSelectorProps {
|
|
2338
|
-
plates?: PlateMapPlateOption[];
|
|
2339
|
-
activePlateId?: string;
|
|
2340
|
-
onPlateChange?: (plateId: string) => void;
|
|
2341
|
-
onAddPlate?: () => void;
|
|
2342
|
-
/** When supplied, the tabs variant renders a delete affordance per plate. */
|
|
2343
|
-
onRemovePlate?: (plateId: string) => void;
|
|
2344
|
-
addPlateLabel?: string;
|
|
2345
|
-
removePlateLabel?: string;
|
|
2346
|
-
label?: string;
|
|
2347
|
-
/** Layout. `"dropdown"` is the default single-trigger menu, `"tabs"` is a horizontal tab strip. */
|
|
2348
|
-
variant?: PlateMapPlateSelectorVariant;
|
|
2349
|
-
align?: "start" | "center" | "end";
|
|
2350
|
-
side?: "top" | "right" | "bottom" | "left";
|
|
2351
|
-
className?: string;
|
|
2352
|
-
}
|
|
2353
|
-
|
|
2354
|
-
export declare type PlateMapPlateSelectorVariant = "dropdown" | "tabs";
|
|
2355
|
-
|
|
2356
2090
|
/**
|
|
2357
2091
|
* Props for PlateMap component
|
|
2358
2092
|
*/
|
|
@@ -2454,76 +2188,6 @@ export declare interface PlateMapProps {
|
|
|
2454
2188
|
onWellClick?: (wellData: WellData) => void;
|
|
2455
2189
|
}
|
|
2456
2190
|
|
|
2457
|
-
export declare function plateOptionsFromCsvTriage(triage: PlateMapCsvTriage): PlateMapPlateOption[];
|
|
2458
|
-
|
|
2459
|
-
/**
|
|
2460
|
-
* Interactive plate grid with drag-rectangle selection.
|
|
2461
|
-
* - Click & drag: replace selection
|
|
2462
|
-
* - Shift + drag: add to selection
|
|
2463
|
-
* - Alt + drag: remove from selection
|
|
2464
|
-
*/
|
|
2465
|
-
export declare function PlatePaintGrid<T extends WellRecord = WellRecord>({ format, rows, columns, values, selection, onSelectionChange, colorForWell, emptyWellFillColor, wellShape, framed, cellSize, autoScale, minCellSize, maxCellSize, borderColor, selectedBorderColor, selectedFillColor, selectedFillOpacity, selectionFillMode, flashWellId, flashWellKey, highlightedWellIds, highlightBorderColor, onWellHover, onWellDoubleClick, wrapWell, className, }: PlatePaintGridProps<T>): JSX.Element;
|
|
2466
|
-
|
|
2467
|
-
export declare interface PlatePaintGridProps<T extends WellRecord = WellRecord> {
|
|
2468
|
-
format: PlateFormat;
|
|
2469
|
-
rows?: number;
|
|
2470
|
-
columns?: number;
|
|
2471
|
-
values: Map<WellId, T>;
|
|
2472
|
-
selection: Set<WellId>;
|
|
2473
|
-
onSelectionChange: (next: Set<WellId>) => void;
|
|
2474
|
-
/** Returns the fill color for a given well record (or undefined if empty). */
|
|
2475
|
-
colorForWell: (well: T | undefined, wellId: WellId) => string;
|
|
2476
|
-
/** Fill color for empty wells. Pass `null` to delegate empty wells to `colorForWell`. */
|
|
2477
|
-
emptyWellFillColor?: string | null;
|
|
2478
|
-
/** Geometric shape of each well. `"circle"` matches scientific plate visuals. Defaults to `"rect"`. */
|
|
2479
|
-
wellShape?: WellShape;
|
|
2480
|
-
/**
|
|
2481
|
-
* When true, wraps the grid in a card-like surface (rounded, bordered,
|
|
2482
|
-
* padded, soft shadow) so it reads as a physical plate. Pairs well with
|
|
2483
|
-
* `wellShape="circle"`.
|
|
2484
|
-
*/
|
|
2485
|
-
framed?: boolean;
|
|
2486
|
-
/** Pixel size of each well cell. Defaults to 34 when fixed. */
|
|
2487
|
-
cellSize?: number;
|
|
2488
|
-
/** Resize wells to fill available width when `cellSize` is not fixed. */
|
|
2489
|
-
autoScale?: boolean;
|
|
2490
|
-
minCellSize?: number;
|
|
2491
|
-
/** Defaults to 72 for 96-well style plates and 36 for denser plates. */
|
|
2492
|
-
maxCellSize?: number;
|
|
2493
|
-
/** Stroke color for non-selected wells. Defaults to a light border. */
|
|
2494
|
-
borderColor?: string;
|
|
2495
|
-
/** Stroke color for selected wells. Defaults to the kit primary blue. */
|
|
2496
|
-
selectedBorderColor?: string;
|
|
2497
|
-
/** Fill color for selected wells. Defaults to the kit primary blue. */
|
|
2498
|
-
selectedFillColor?: string;
|
|
2499
|
-
/** Selected fill opacity. */
|
|
2500
|
-
selectedFillOpacity?: number;
|
|
2501
|
-
/** Whether selected wells use the selection fill or keep their assigned well color. */
|
|
2502
|
-
selectionFillMode?: "selection" | "well";
|
|
2503
|
-
/** Well id that should briefly flash, usually after a double-click assignment. */
|
|
2504
|
-
flashWellId?: WellId;
|
|
2505
|
-
/** Changing this value restarts the flash animation for the same well. */
|
|
2506
|
-
flashWellKey?: number;
|
|
2507
|
-
/**
|
|
2508
|
-
* Well ids that should render with a highlight ring. Used for cross-component
|
|
2509
|
-
* hover sync (e.g. hovering a legend item to highlight matching wells).
|
|
2510
|
-
*/
|
|
2511
|
-
highlightedWellIds?: ReadonlySet<WellId>;
|
|
2512
|
-
/** Stroke color for highlighted wells. Defaults to the kit primary blue. */
|
|
2513
|
-
highlightBorderColor?: string;
|
|
2514
|
-
onWellHover?: (wellId: WellId | null) => void;
|
|
2515
|
-
onWellDoubleClick?: (wellId: WellId) => void;
|
|
2516
|
-
/**
|
|
2517
|
-
* Optional render-prop invoked once per well. The returned node is placed
|
|
2518
|
-
* inside an absolutely-positioned cell on top of the SVG, sized to
|
|
2519
|
-
* `cellSize`. The wrapper layer is `pointer-events: none` so the SVG keeps
|
|
2520
|
-
* pointer interaction by default; consumers wiring drop targets are expected
|
|
2521
|
-
* to set `pointer-events: auto` on their own element while a drag is active.
|
|
2522
|
-
*/
|
|
2523
|
-
wrapWell?: (wellId: WellId, cellSize: number) => React_2.ReactNode;
|
|
2524
|
-
className?: string;
|
|
2525
|
-
}
|
|
2526
|
-
|
|
2527
2191
|
/**
|
|
2528
2192
|
* A region to highlight on the plate (e.g., controls, sample areas, empty wells)
|
|
2529
2193
|
*/
|
|
@@ -2545,30 +2209,6 @@ declare interface PlateRegion {
|
|
|
2545
2209
|
fillColor?: string;
|
|
2546
2210
|
}
|
|
2547
2211
|
|
|
2548
|
-
export declare function PlateZoomControl({ zoom, onZoomChange, step, min, max, showReadout, className, }: PlateZoomControlProps): JSX.Element;
|
|
2549
|
-
|
|
2550
|
-
export declare interface PlateZoomControlProps {
|
|
2551
|
-
zoom: number;
|
|
2552
|
-
onZoomChange: (next: number) => void;
|
|
2553
|
-
/** Increment per click. Defaults to 0.1. */
|
|
2554
|
-
step?: number;
|
|
2555
|
-
min?: number;
|
|
2556
|
-
max?: number;
|
|
2557
|
-
/** Render a percentage readout between the buttons. Defaults to true. */
|
|
2558
|
-
showReadout?: boolean;
|
|
2559
|
-
className?: string;
|
|
2560
|
-
}
|
|
2561
|
-
|
|
2562
|
-
export declare function Popover({ ...props }: React_2.ComponentProps<typeof Popover_2.Root>): JSX.Element;
|
|
2563
|
-
|
|
2564
|
-
export declare function PopoverAnchor({ ...props }: React_2.ComponentProps<typeof Popover_2.Anchor>): JSX.Element;
|
|
2565
|
-
|
|
2566
|
-
export declare function PopoverContent({ className, align, sideOffset, ...props }: React_2.ComponentProps<typeof Popover_2.Content>): JSX.Element;
|
|
2567
|
-
|
|
2568
|
-
export declare function PopoverTrigger({ ...props }: React_2.ComponentProps<typeof Popover_2.Trigger>): JSX.Element;
|
|
2569
|
-
|
|
2570
|
-
export declare function pos(row: number, col: number, columns: number): WellId;
|
|
2571
|
-
|
|
2572
2212
|
export declare const PromptInput: ({ className, accept, multiple, globalDrop, syncHiddenInput, maxFiles, maxFileSize, onError, onSubmit, children, ...props }: PromptInputProps) => JSX.Element;
|
|
2573
2213
|
|
|
2574
2214
|
export declare const PromptInputActionAddAttachments: ({ label, ...props }: PromptInputActionAddAttachmentsProps) => JSX.Element;
|
|
@@ -2901,8 +2541,6 @@ export declare type ReasoningTriggerProps = ComponentProps<typeof CollapsibleTri
|
|
|
2901
2541
|
getThinkingMessage?: (isStreaming: boolean, duration?: number) => ReactNode;
|
|
2902
2542
|
};
|
|
2903
2543
|
|
|
2904
|
-
export declare function rectPositions(r0: number, c0: number, r1: number, c1: number, columns: number): WellId[];
|
|
2905
|
-
|
|
2906
2544
|
export declare interface ReferencedSourcesContext {
|
|
2907
2545
|
sources: (SourceDocumentUIPart & {
|
|
2908
2546
|
id: string;
|
|
@@ -2920,8 +2558,6 @@ export declare function ResizablePanel({ ...props }: ResizablePrimitive.PanelPro
|
|
|
2920
2558
|
|
|
2921
2559
|
export declare function ResizablePanelGroup({ className, ...props }: ResizablePrimitive.GroupProps): JSX.Element;
|
|
2922
2560
|
|
|
2923
|
-
export declare function resolveDimensions(format: PlateFormat, rows?: number, columns?: number): PlateDimensions;
|
|
2924
|
-
|
|
2925
2561
|
export declare function RichListItem({ leading, primary, secondary, trailing, actions, className, variant, size, ...props }: RichListItemProps): JSX.Element;
|
|
2926
2562
|
|
|
2927
2563
|
export declare function RichListItemAvatar({ initials, className, fallbackClassName, size, ...props }: RichListItemAvatarProps): JSX.Element;
|
|
@@ -2944,9 +2580,6 @@ export declare interface RichListItemProps extends Omit<React_2.ComponentProps<t
|
|
|
2944
2580
|
actions?: React_2.ReactNode;
|
|
2945
2581
|
}
|
|
2946
2582
|
|
|
2947
|
-
/** Letter for a row index. Supports A-Z then AA-ZZ for 1536-format plates. */
|
|
2948
|
-
export declare function rowLabel(row: number): string;
|
|
2949
|
-
|
|
2950
2583
|
export declare interface ScatterDataPoint {
|
|
2951
2584
|
x: number;
|
|
2952
2585
|
y: number;
|
|
@@ -3510,30 +3143,6 @@ export declare interface TdpSearchSort {
|
|
|
3510
3143
|
order: "asc" | "desc";
|
|
3511
3144
|
}
|
|
3512
3145
|
|
|
3513
|
-
export declare function TemplateIOPanel({ templates, templateId, onTemplateChange, onClearTemplate, hasEntries, onImportCsv, onExportCsv, onImportTemplate, onExportTemplate, className, csvAccept, templateAccept, }: TemplateIOPanelProps): JSX.Element;
|
|
3514
|
-
|
|
3515
|
-
export declare interface TemplateIOPanelProps extends ImportExportHandlers {
|
|
3516
|
-
templates?: TemplateOption[];
|
|
3517
|
-
templateId?: string;
|
|
3518
|
-
onTemplateChange?: (id: string) => void;
|
|
3519
|
-
onClearTemplate?: () => void;
|
|
3520
|
-
/** Disable export buttons when there's nothing to export. */
|
|
3521
|
-
hasEntries?: boolean;
|
|
3522
|
-
className?: string;
|
|
3523
|
-
csvAccept?: string;
|
|
3524
|
-
templateAccept?: string;
|
|
3525
|
-
}
|
|
3526
|
-
|
|
3527
|
-
export declare interface TemplateOption {
|
|
3528
|
-
id: string;
|
|
3529
|
-
label: string;
|
|
3530
|
-
/** Optional group header in the dropdown (e.g. "Built-in", "User"). */
|
|
3531
|
-
group?: string;
|
|
3532
|
-
/** Optional supporting text for richer chooser menus. */
|
|
3533
|
-
description?: string;
|
|
3534
|
-
disabled?: boolean;
|
|
3535
|
-
}
|
|
3536
|
-
|
|
3537
3146
|
export declare const TetraScienceIcon: React_2.ForwardRefExoticComponent<Omit<TetraScienceIconProps, "ref"> & React_2.RefAttributes<SVGSVGElement>>;
|
|
3538
3147
|
|
|
3539
3148
|
export declare interface TetraScienceIconProps extends React_2.SVGProps<SVGSVGElement> {
|
|
@@ -3650,10 +3259,6 @@ declare type ToolUIPartApproval = {
|
|
|
3650
3259
|
reason?: string;
|
|
3651
3260
|
} | undefined;
|
|
3652
3261
|
|
|
3653
|
-
export declare function triagePlateMapCsvByBarcode(text: string, options?: PlateMapCsvTriageOptions): PlateMapCsvTriage;
|
|
3654
|
-
|
|
3655
|
-
export declare function triagePlateMapCsvFile(file: File, options?: PlateMapCsvTriageOptions): Promise<PlateMapCsvTriage | undefined>;
|
|
3656
|
-
|
|
3657
3262
|
/** TetraScience brand gradient — Light Blue 300 → Purple 500 → Violet Marble */
|
|
3658
3263
|
export declare const TS_SHIMMER_GRADIENT = "linear-gradient(90deg, #549DFF, #8243BA, #9665F4)";
|
|
3659
3264
|
|
|
@@ -3754,27 +3359,6 @@ export declare interface UseTdpNavigationReturn {
|
|
|
3754
3359
|
*/
|
|
3755
3360
|
declare type VisualizationMode = "heatmap" | "categorical";
|
|
3756
3361
|
|
|
3757
|
-
export declare interface WellColumn<T extends WellRecord = WellRecord> {
|
|
3758
|
-
/** Stable id; falls back to `field` if omitted. */
|
|
3759
|
-
id?: string;
|
|
3760
|
-
header: string;
|
|
3761
|
-
/** Optional leading icon in the table header. */
|
|
3762
|
-
icon?: React_2.ReactNode;
|
|
3763
|
-
/** Read direct property when `field` is set. */
|
|
3764
|
-
field?: keyof T & string;
|
|
3765
|
-
/** Min width in px (applied via inline style). */
|
|
3766
|
-
minWidth?: number;
|
|
3767
|
-
/**
|
|
3768
|
-
* Cell renderer. If omitted, the cell renders a display value. `select`
|
|
3769
|
-
* fields render as badge-style custom cells using the matching option label.
|
|
3770
|
-
*/
|
|
3771
|
-
render?: (ctx: {
|
|
3772
|
-
row: T;
|
|
3773
|
-
wellId: WellId;
|
|
3774
|
-
update: (patch: Partial<T>) => void;
|
|
3775
|
-
}) => React_2.ReactNode;
|
|
3776
|
-
}
|
|
3777
|
-
|
|
3778
3362
|
/**
|
|
3779
3363
|
* Well data for individual wells.
|
|
3780
3364
|
*
|
|
@@ -3830,145 +3414,6 @@ export declare interface WellData {
|
|
|
3830
3414
|
tooltipData?: Record<string, unknown>;
|
|
3831
3415
|
}
|
|
3832
3416
|
|
|
3833
|
-
export declare interface WellField<T extends WellRecord = WellRecord> {
|
|
3834
|
-
/** Key in the well record this field reads/writes. */
|
|
3835
|
-
key: keyof T & string;
|
|
3836
|
-
label: string;
|
|
3837
|
-
/** Optional leading icon shown in form labels and matching table headers. */
|
|
3838
|
-
icon?: React_2.ReactNode;
|
|
3839
|
-
kind: WellFieldKind;
|
|
3840
|
-
placeholder?: string;
|
|
3841
|
-
/** Required for `kind: "select"` and `kind: "multiselect"`. */
|
|
3842
|
-
options?: WellSelectOption[];
|
|
3843
|
-
/** Visual style for `kind: "boolean"`. Defaults to `"checkbox"`. */
|
|
3844
|
-
boolStyle?: "checkbox" | "switch";
|
|
3845
|
-
/**
|
|
3846
|
-
* When true, matching `WellManifestTable` cells render an inline editor of
|
|
3847
|
-
* this field's `kind` (mirroring the form). Defaults to false — cells stay
|
|
3848
|
-
* read-only unless the developer opts in or supplies `WellColumn.render`.
|
|
3849
|
-
*/
|
|
3850
|
-
editableInTable?: boolean;
|
|
3851
|
-
/**
|
|
3852
|
-
* Custom renderer for the form input. Receives current value and a setter
|
|
3853
|
-
* that patches the field on the staged form record.
|
|
3854
|
-
*/
|
|
3855
|
-
render?: (ctx: {
|
|
3856
|
-
value: unknown;
|
|
3857
|
-
onChange: (next: unknown) => void;
|
|
3858
|
-
selectionSize: number;
|
|
3859
|
-
}) => React_2.ReactNode;
|
|
3860
|
-
}
|
|
3861
|
-
|
|
3862
|
-
/**
|
|
3863
|
-
* Field kinds rendered by `WellMetadataForm` and (when `editableInTable`) by
|
|
3864
|
-
* `WellManifestTable`.
|
|
3865
|
-
*/
|
|
3866
|
-
export declare type WellFieldKind = "text" | "number" | "integer" | "boolean" | "date" | "datetime" | "time" | "select" | "multiselect" | "custom";
|
|
3867
|
-
|
|
3868
|
-
export declare type WellId = string;
|
|
3869
|
-
|
|
3870
|
-
export declare function WellLegend({ items, renderItem, onHoverEnter, onHoverLeave, onRemove, removeLabel, emptyLabel, className, }: WellLegendProps): JSX.Element;
|
|
3871
|
-
|
|
3872
|
-
export declare interface WellLegendItem {
|
|
3873
|
-
id: string;
|
|
3874
|
-
label: React_2.ReactNode;
|
|
3875
|
-
color: string;
|
|
3876
|
-
/** Optional secondary text shown beneath the label. */
|
|
3877
|
-
meta?: React_2.ReactNode;
|
|
3878
|
-
disabled?: boolean;
|
|
3879
|
-
}
|
|
3880
|
-
|
|
3881
|
-
export declare interface WellLegendProps {
|
|
3882
|
-
items: WellLegendItem[];
|
|
3883
|
-
/** Render-prop for fully custom cards. Bypasses the default card layout. */
|
|
3884
|
-
renderItem?: (item: WellLegendItem) => React_2.ReactNode;
|
|
3885
|
-
onHoverEnter?: (id: string) => void;
|
|
3886
|
-
onHoverLeave?: (id: string) => void;
|
|
3887
|
-
onRemove?: (id: string) => void;
|
|
3888
|
-
removeLabel?: string;
|
|
3889
|
-
emptyLabel?: string;
|
|
3890
|
-
className?: string;
|
|
3891
|
-
}
|
|
3892
|
-
|
|
3893
|
-
export declare function WellManifestTable<T extends WellRecord = WellRecord>({ values, columns, fields, selection, onSelectionChange, onChange, emptyEntry, isPopulated, pageSize: initialPageSize, pageSizeOptions, enableFillDown, rowProps, filterable, filterColumns, groupable, className, }: WellManifestTableProps<T>): JSX.Element;
|
|
3894
|
-
|
|
3895
|
-
export declare interface WellManifestTableProps<T extends WellRecord = WellRecord> {
|
|
3896
|
-
values: Map<WellId, T>;
|
|
3897
|
-
columns: WellColumn<T>[];
|
|
3898
|
-
/**
|
|
3899
|
-
* Field schema. If a column has `field` matching a `select`-kind field, a
|
|
3900
|
-
* Select cell renders automatically with that field's options.
|
|
3901
|
-
*/
|
|
3902
|
-
fields?: WellField<T>[];
|
|
3903
|
-
selection?: Set<WellId>;
|
|
3904
|
-
onSelectionChange?: (next: Set<WellId>) => void;
|
|
3905
|
-
onChange: (next: Map<WellId, T>) => void;
|
|
3906
|
-
/** Builds an empty record for a freshly-created row. */
|
|
3907
|
-
emptyEntry: (id: WellId) => T;
|
|
3908
|
-
/** Filter that controls which empty rows surface. Defaults to `false`. */
|
|
3909
|
-
isPopulated?: (row: T) => boolean;
|
|
3910
|
-
pageSize?: number;
|
|
3911
|
-
pageSizeOptions?: number[];
|
|
3912
|
-
/** Adds a column header action that copies the first non-empty value downward. */
|
|
3913
|
-
enableFillDown?: boolean;
|
|
3914
|
-
/**
|
|
3915
|
-
* Extra props spread onto each `<tr>` — typically used to attach a DnD
|
|
3916
|
-
* library's `setNodeRef`, listeners, and data attributes so rows can act as
|
|
3917
|
-
* drag sources. The kit stays DnD-library-agnostic.
|
|
3918
|
-
*/
|
|
3919
|
-
rowProps?: (ctx: WellManifestTableRowContext<T>) => React_2.ComponentProps<"tr"> | undefined;
|
|
3920
|
-
/** Enables an inline filter popover above the table. Defaults to false. */
|
|
3921
|
-
filterable?: boolean;
|
|
3922
|
-
/**
|
|
3923
|
-
* Optional override of filterable column configs. When omitted, every column
|
|
3924
|
-
* with a `field` becomes filterable using the default operator set from the
|
|
3925
|
-
* shared data-table filter system.
|
|
3926
|
-
*/
|
|
3927
|
-
filterColumns?: FilterColumnConfig[];
|
|
3928
|
-
/** Enables an inline group-by selector. Defaults to false. */
|
|
3929
|
-
groupable?: boolean;
|
|
3930
|
-
className?: string;
|
|
3931
|
-
}
|
|
3932
|
-
|
|
3933
|
-
export declare interface WellManifestTableRowContext<T extends WellRecord = WellRecord> {
|
|
3934
|
-
wellId: WellId;
|
|
3935
|
-
row: T;
|
|
3936
|
-
isSelected: boolean;
|
|
3937
|
-
}
|
|
3938
|
-
|
|
3939
|
-
export declare function WellMetadataForm<T extends WellRecord = WellRecord>({ fields, value, onChange, selectionSize, onApply, onClear, applyLabel, clearLabel, extras, className, }: WellMetadataFormProps<T>): JSX.Element;
|
|
3940
|
-
|
|
3941
|
-
export declare interface WellMetadataFormProps<T extends WellRecord = WellRecord> {
|
|
3942
|
-
fields: WellField<T>[];
|
|
3943
|
-
/** Staged values used to apply across the selection. */
|
|
3944
|
-
value: Partial<T>;
|
|
3945
|
-
onChange: (next: Partial<T>) => void;
|
|
3946
|
-
selectionSize: number;
|
|
3947
|
-
onApply: () => void;
|
|
3948
|
-
onClear: () => void;
|
|
3949
|
-
applyLabel?: string;
|
|
3950
|
-
clearLabel?: string;
|
|
3951
|
-
/** Optional extra slot rendered between fields and action row. */
|
|
3952
|
-
extras?: React_2.ReactNode;
|
|
3953
|
-
className?: string;
|
|
3954
|
-
}
|
|
3955
|
-
|
|
3956
|
-
/**
|
|
3957
|
-
* Generic per-well record. Callers supply concrete shape via the `T` generic
|
|
3958
|
-
* on `PlateMapEditor`. Permissive base accepts both interfaces and indexable
|
|
3959
|
-
* record types.
|
|
3960
|
-
*/
|
|
3961
|
-
export declare type WellRecord = NonNullable<unknown>;
|
|
3962
|
-
|
|
3963
|
-
export declare interface WellSelectOption {
|
|
3964
|
-
value: string;
|
|
3965
|
-
label: string;
|
|
3966
|
-
/** Optional swatch color shown next to the label. */
|
|
3967
|
-
swatch?: string;
|
|
3968
|
-
}
|
|
3969
|
-
|
|
3970
|
-
export declare type WellShape = "rect" | "circle";
|
|
3971
|
-
|
|
3972
3417
|
export { }
|
|
3973
3418
|
|
|
3974
3419
|
|