@tetrascience-npm/tetrascience-react-ui 0.5.0-beta.71.1 → 0.5.0-beta.72.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/composed/PlateMapEditor/PlateMapEditor.cjs +1 -1
- package/dist/components/composed/PlateMapEditor/PlateMapEditor.cjs.map +1 -1
- package/dist/components/composed/PlateMapEditor/PlateMapEditor.js +288 -369
- package/dist/components/composed/PlateMapEditor/PlateMapEditor.js.map +1 -1
- package/dist/components/composed/PlateMapEditor/PlateMapForm.cjs +2 -0
- package/dist/components/composed/PlateMapEditor/PlateMapForm.cjs.map +1 -0
- package/dist/components/composed/PlateMapEditor/PlateMapForm.js +43 -0
- package/dist/components/composed/PlateMapEditor/PlateMapForm.js.map +1 -0
- package/dist/components/composed/PlateMapEditor/PlateMapGrid.cjs +2 -0
- package/dist/components/composed/PlateMapEditor/PlateMapGrid.cjs.map +1 -0
- package/dist/components/composed/PlateMapEditor/PlateMapGrid.js +154 -0
- package/dist/components/composed/PlateMapEditor/PlateMapGrid.js.map +1 -0
- package/dist/components/composed/PlateMapEditor/PlateMapManifest.cjs +2 -0
- package/dist/components/composed/PlateMapEditor/PlateMapManifest.cjs.map +1 -0
- package/dist/components/composed/PlateMapEditor/PlateMapManifest.js +44 -0
- package/dist/components/composed/PlateMapEditor/PlateMapManifest.js.map +1 -0
- package/dist/index.cjs +1 -1
- package/dist/index.css +1 -1
- package/dist/index.d.ts +122 -0
- package/dist/index.js +642 -636
- package/dist/index.js.map +1 -1
- package/dist/index.tailwind.css +1 -1
- package/package.json +1 -1
package/dist/index.d.ts
CHANGED
|
@@ -2310,6 +2310,99 @@ export declare interface PlateMapEditorProps<T extends WellRecord = WellRecord>
|
|
|
2310
2310
|
className?: string;
|
|
2311
2311
|
}
|
|
2312
2312
|
|
|
2313
|
+
/**
|
|
2314
|
+
* Card-agnostic metadata form panel. Renders the staged-value form (or a
|
|
2315
|
+
* caller-supplied `formSlot`) plus an optional legend. Bring your own
|
|
2316
|
+
* container — drop it bare into a sidebar, wrap it in a `Card`, or stack it
|
|
2317
|
+
* above the grid.
|
|
2318
|
+
*/
|
|
2319
|
+
export declare function PlateMapForm<T extends WellRecord = WellRecord>({ fields, value, onChange, selectionSize, onApply, onClear, applyLabel, clearLabel, extras, legend, formSlot, className, }: PlateMapFormProps<T>): JSX.Element;
|
|
2320
|
+
|
|
2321
|
+
export declare interface PlateMapFormProps<T extends WellRecord = WellRecord> {
|
|
2322
|
+
fields: WellField<T>[];
|
|
2323
|
+
/** Staged values applied across the current selection on Apply. */
|
|
2324
|
+
value: Partial<T>;
|
|
2325
|
+
onChange: (next: Partial<T>) => void;
|
|
2326
|
+
selectionSize: number;
|
|
2327
|
+
onApply: () => void;
|
|
2328
|
+
onClear: () => void;
|
|
2329
|
+
applyLabel?: string;
|
|
2330
|
+
clearLabel?: string;
|
|
2331
|
+
/** Helper slot rendered between the fields and the action row. */
|
|
2332
|
+
extras?: React_2.ReactNode;
|
|
2333
|
+
/** Legend block rendered beneath the form, separated by a divider. */
|
|
2334
|
+
legend?: React_2.ReactNode;
|
|
2335
|
+
/**
|
|
2336
|
+
* Fully replaces the built-in `WellMetadataForm` — e.g. a drag-and-drop
|
|
2337
|
+
* source palette. The legend slot still renders beneath the replacement.
|
|
2338
|
+
*/
|
|
2339
|
+
formSlot?: React_2.ReactNode;
|
|
2340
|
+
className?: string;
|
|
2341
|
+
}
|
|
2342
|
+
|
|
2343
|
+
/**
|
|
2344
|
+
* Card-agnostic plate grid panel. Renders the selection toolbar, hover
|
|
2345
|
+
* summary, the interactive `PlatePaintGrid`, and optional group shortcuts —
|
|
2346
|
+
* and owns the ephemeral hover state internally. The plate title, plate
|
|
2347
|
+
* selector, and actions menu are intentionally NOT part of this panel; compose
|
|
2348
|
+
* `PlateMapPlateSelector` and `PlateMapActionsMenu` around it for full layout
|
|
2349
|
+
* freedom.
|
|
2350
|
+
*/
|
|
2351
|
+
export declare function PlateMapGrid<T extends WellRecord = WellRecord>({ format, rows, columns, values, selection, onSelectionChange, colorForWell, fields, renderHoverSummary, onHoveredWellChange, hoveredWellId, toolbar, hideSelectionControls, selectAllLabel, deselectAllLabel, emptyWellFillColor, wellShape, framed, wrapWell, highlightedWellIds, onWellDoubleClick, selectionFillMode, flashWellId, flashWellKey, cellSize, autoScale, minCellSize, maxCellSize, groups, activeGroupId, onGroupClick, className, }: PlateMapGridProps<T>): JSX.Element;
|
|
2352
|
+
|
|
2353
|
+
export declare interface PlateMapGridProps<T extends WellRecord = WellRecord> {
|
|
2354
|
+
format: PlateFormat;
|
|
2355
|
+
rows?: number;
|
|
2356
|
+
columns?: number;
|
|
2357
|
+
values: Map<WellId, T>;
|
|
2358
|
+
selection: Set<WellId>;
|
|
2359
|
+
onSelectionChange: (next: Set<WellId>) => void;
|
|
2360
|
+
/** Resolves the SVG fill color for a well. */
|
|
2361
|
+
colorForWell: (well: T | undefined, wellId: WellId) => string;
|
|
2362
|
+
/** Field schema used to build the default hover summary string. */
|
|
2363
|
+
fields?: WellField<T>[];
|
|
2364
|
+
/** Custom hover summary for the strip above the grid. */
|
|
2365
|
+
renderHoverSummary?: (well: T | undefined, wellId: WellId) => React_2.ReactNode;
|
|
2366
|
+
/** Fires whenever the currently hovered well changes (null on leave). */
|
|
2367
|
+
onHoveredWellChange?: (wellId: WellId | null) => void;
|
|
2368
|
+
/**
|
|
2369
|
+
* Controlled hovered well id. When provided, the panel reflects this value
|
|
2370
|
+
* instead of tracking hover internally — useful for syncing the hover
|
|
2371
|
+
* summary with external state (e.g. resetting it on a plate switch).
|
|
2372
|
+
*/
|
|
2373
|
+
hoveredWellId?: WellId | null;
|
|
2374
|
+
/** Controls rendered to the left of the built-in select/deselect links. */
|
|
2375
|
+
toolbar?: React_2.ReactNode;
|
|
2376
|
+
/** Hide the built-in "Select all" / "Deselect all" links. */
|
|
2377
|
+
hideSelectionControls?: boolean;
|
|
2378
|
+
selectAllLabel?: string;
|
|
2379
|
+
deselectAllLabel?: string;
|
|
2380
|
+
/** Fill color for empty wells. Pass `null` to delegate empty wells to `colorForWell`. */
|
|
2381
|
+
emptyWellFillColor?: string | null;
|
|
2382
|
+
/** Well shape forwarded to `PlatePaintGrid`. Defaults to `"rect"`. */
|
|
2383
|
+
wellShape?: WellShape;
|
|
2384
|
+
/** When true, wraps the grid in a card-like plate frame (rounded + border + soft shadow). */
|
|
2385
|
+
framed?: boolean;
|
|
2386
|
+
/** Render-prop that places a node inside each absolute-positioned well cell. */
|
|
2387
|
+
wrapWell?: (wellId: WellId, cellSize: number) => React_2.ReactNode;
|
|
2388
|
+
/** Wells to highlight (e.g. when hovering a legend item externally). */
|
|
2389
|
+
highlightedWellIds?: ReadonlySet<WellId>;
|
|
2390
|
+
onWellDoubleClick?: (wellId: WellId) => void;
|
|
2391
|
+
selectionFillMode?: "selection" | "well";
|
|
2392
|
+
flashWellId?: WellId;
|
|
2393
|
+
flashWellKey?: number;
|
|
2394
|
+
/** Fixed well size. When unset, the grid grows with the available width. */
|
|
2395
|
+
cellSize?: number;
|
|
2396
|
+
autoScale?: boolean;
|
|
2397
|
+
minCellSize?: number;
|
|
2398
|
+
maxCellSize?: number;
|
|
2399
|
+
/** Optional grouped well shortcuts rendered under the grid. */
|
|
2400
|
+
groups?: PlateMapGroupOption[];
|
|
2401
|
+
activeGroupId?: string;
|
|
2402
|
+
onGroupClick?: (group: PlateMapGroupOption) => void;
|
|
2403
|
+
className?: string;
|
|
2404
|
+
}
|
|
2405
|
+
|
|
2313
2406
|
export declare interface PlateMapGroupOption {
|
|
2314
2407
|
id: string;
|
|
2315
2408
|
label: string;
|
|
@@ -2322,6 +2415,35 @@ export declare interface PlateMapGroupOption {
|
|
|
2322
2415
|
disabled?: boolean;
|
|
2323
2416
|
}
|
|
2324
2417
|
|
|
2418
|
+
/**
|
|
2419
|
+
* Card-agnostic sample-manifest panel. A thin wrapper over `WellManifestTable`
|
|
2420
|
+
* with an optional heading and no width constraint of its own, so it can span
|
|
2421
|
+
* the full screen width or sit inside any container the caller chooses.
|
|
2422
|
+
*/
|
|
2423
|
+
export declare function PlateMapManifest<T extends WellRecord = WellRecord>({ values, onChange, columns, fields, selection, onSelectionChange, emptyEntry, isPopulated, filterable, groupable, pageSize, pageSizeOptions, title, className, }: PlateMapManifestProps<T>): JSX.Element;
|
|
2424
|
+
|
|
2425
|
+
export declare interface PlateMapManifestProps<T extends WellRecord = WellRecord> {
|
|
2426
|
+
values: Map<WellId, T>;
|
|
2427
|
+
onChange: (next: Map<WellId, T>) => void;
|
|
2428
|
+
columns: WellColumn<T>[];
|
|
2429
|
+
fields?: WellField<T>[];
|
|
2430
|
+
selection?: Set<WellId>;
|
|
2431
|
+
onSelectionChange?: (next: Set<WellId>) => void;
|
|
2432
|
+
/** Builds an empty record when a manifest row is freshly created. */
|
|
2433
|
+
emptyEntry: (id: WellId) => T;
|
|
2434
|
+
/** Filter for the manifest's "hide empty" mode. */
|
|
2435
|
+
isPopulated?: (row: T) => boolean;
|
|
2436
|
+
/** Enables the filter popover on the manifest table. */
|
|
2437
|
+
filterable?: boolean;
|
|
2438
|
+
/** Enables the group-by selector on the manifest table. */
|
|
2439
|
+
groupable?: boolean;
|
|
2440
|
+
pageSize?: number;
|
|
2441
|
+
pageSizeOptions?: number[];
|
|
2442
|
+
/** Optional heading rendered above the table. Omit for a bare table. */
|
|
2443
|
+
title?: React_2.ReactNode;
|
|
2444
|
+
className?: string;
|
|
2445
|
+
}
|
|
2446
|
+
|
|
2325
2447
|
export declare interface PlateMapPlateOption {
|
|
2326
2448
|
/** Stable plate id. For imported CSVs this should be the user-provided barcode. */
|
|
2327
2449
|
id: string;
|